.contract-scroll{flex:1;min-height:0;overflow-y:auto;padding-bottom:84px;display:flex;flex-direction:column;gap:12px}.screen[data-view=contracts]{overflow:hidden;padding-bottom:0}.contract-costs h2{font-size:1rem;margin:0 0 10px}.contract-currency{padding:10px 0;border-bottom:1px solid var(--line)}.contract-currency>strong{font-size:1.5rem;display:block}.contract-currency>small{color:var(--muted)}.contract-currency p{font-size:.85rem;margin:6px 0}.contract-costs details{margin-top:12px;font-size:.85rem}.contract-context{font-size:.8rem;color:var(--muted);margin:0}.contract-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:15px;text-align:left;display:grid;gap:8px;color:inherit;font:inherit;flex-shrink:0}.contract-card-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.contract-card-head strong{flex:1;overflow-wrap:anywhere}.contract-card>small{color:var(--muted);font-size:.82rem}.contract-form{display:grid;gap:16px}.contract-form label{display:grid;gap:7px;font-size:.9rem}.contract-form input,.contract-form select,.contract-form textarea{width:100%;min-width:0;box-sizing:border-box;min-height:46px;padding:12px;border:2px solid #879b9d;border-radius:11px;background:var(--surface);color:var(--ink);font:inherit}.contract-form input:focus,.contract-form select:focus,.contract-form textarea:focus{outline:3px solid var(--gold);outline-offset:2px}.contract-form .contract-check{display:flex;align-items:center;gap:10px}.contract-check input{width:23px;min-height:23px;accent-color:var(--ink)}.contract-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contract-payment{display:grid;gap:16px}.contract-form [hidden]{display:none}.contract-form details>label{margin-top:14px}.contract-form [role=alert]{color:#b74737}.contract-dates{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:.9rem}.contract-dates dt{color:var(--muted)}.contract-dates dd{margin:0}.contract-notes{white-space:pre-wrap;overflow-wrap:anywhere}.calendar-event.calendar-contract{border-inline-start:4px solid #ac7627}.item-kind-contract{background:#fff2d7;color:#80540d}[data-theme=fire] .item-kind-contract{background:#49341e;color:#ffdb9b}[data-theme=fire] .contract-form [role=alert]{color:#ffb4a2}.contract-form [data-contract-error]:empty{display:none}

/* Native date controls must not force a grid track wider than the dialog. */
.contract-form,.contract-payment,.contract-form-grid,.contract-form-grid>*,.budget-form,.budget-form>label{min-width:0;max-width:100%}
.contract-form input[type=date],.budget-form input[type=date]{display:block;inline-size:100%;max-inline-size:100%;min-inline-size:0;appearance:none;-webkit-appearance:none}
.contract-form input[type=date]::-webkit-date-and-time-value,.budget-form input[type=date]::-webkit-date-and-time-value{min-width:0;text-align:start}
.contract-form input[type=date]::-webkit-datetime-edit,.budget-form input[type=date]::-webkit-datetime-edit{min-width:0;padding:0}
@media(max-width:600px){.contract-form-grid.contract-date-grid{grid-template-columns:minmax(0,1fr)}}

/* v69: one shared list, aligned columns; no individual contract tiles. */
.contract-items{--contract-columns:minmax(0,2fr) minmax(0,1.2fr) 142px 160px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:0 13px;min-width:0;flex-shrink:0}
.contract-columns,.contract-items .contract-row{display:grid;grid-template-columns:var(--contract-columns);align-items:center;column-gap:14px;min-width:0}
.contract-columns{padding:12px 0;color:var(--muted);font-size:11px;border-bottom:1px solid var(--line)}.contract-columns>span:last-child{text-align:right}
.contract-items .contract-row{width:100%;min-height:56px;margin:0;padding:12px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;text-align:left;color:inherit;row-gap:4px}
.contract-columns+.contract-row{border-top:0}.contract-items .contract-row:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:5px}
.contract-cell-title,.contract-cell-context,.contract-cell-amount{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-cell-title{font-size:14px;font-weight:600}.contract-cell-context{font-size:12px;color:var(--muted)}.contract-cell-date{min-width:0;display:flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap;color:var(--muted)}.contract-cell-date svg{width:14px;height:14px;flex:0 0 14px}.contract-cell-amount{text-align:right;font-size:13px;font-weight:600}.contract-cycle{font-size:11px;font-weight:400;color:var(--muted)}.contract-term-review{color:#a84732}[data-theme=fire] .contract-term-review{color:#ffc18c}
@media(max-width:799px){.contract-items{--contract-columns:minmax(0,1fr) 136px}.contract-columns{display:none}.contract-items .contract-row{grid-template-areas:"name amount" "context date";min-height:64px}.contract-cell-title{grid-area:name}.contract-cell-context{grid-area:context;font-size:11px}.contract-cell-date{grid-area:date;justify-content:flex-end;font-size:11px}.contract-cell-amount{grid-area:amount}.contract-columns+.contract-row{border-top:0}}
@media(max-width:359px){.contract-items{--contract-columns:minmax(0,1fr) 116px;padding:0 10px}.contract-items .contract-row{column-gap:8px}.contract-cell-amount{font-size:12px}.contract-cycle{font-size:10px}}
