.office-responsibilities { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--border); border:1px solid var(--border); margin:0 0 24px; }
.office-responsibilities button { display:flex; align-items:center; gap:12px; min-width:0; padding:17px 18px; text-align:left; background:var(--surface); border:0; color:var(--quiet); cursor:pointer; }
.office-responsibilities button:hover { background:var(--surface-alt); }
.office-responsibilities button:focus-visible { outline:2px solid var(--amber); outline-offset:-3px; }
.office-responsibilities .ui-icon { width:22px; height:22px; flex-shrink:0; }
.office-owner { flex:1; min-width:0; }
.office-owner strong { display:block; color:var(--copy); font:600 18px Rajdhani,sans-serif; }
.office-owner small { display:block; font:12px/1.5 Arial,sans-serif; margin-top:3px; overflow-wrap:anywhere; }
.office-responsibility-status { font:600 12px/1.4 Rajdhani,sans-serif; color:var(--good); text-align:right; max-width:100px; }
.office-responsibilities .needs-review .office-responsibility-status { color:var(--amber); }
@media(max-width:1000px) { .office-responsibilities { grid-template-columns:1fr; } }
.office-tabs { display:flex; gap:6px; margin:0 0 22px; border-bottom:1px solid var(--border); }
.office-tabs button { display:flex; align-items:center; gap:10px; background:transparent; border:0; border-bottom:2px solid transparent; padding:9px 14px 12px; color:var(--quiet); font:600 16px Rajdhani,sans-serif; cursor:pointer; }
.office-tabs button.active { color:var(--copy); border-bottom-color:var(--amber); }
.office-due-dot { width:6px; height:6px; background:var(--amber); border-radius:50%; }
.office-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin:0 0 24px; }
.office-heading h3 { font:600 34px/1.15 Rajdhani,sans-serif; margin:6px 0 10px; color:var(--copy); }
.office-heading p:not(.context) { margin:0; color:var(--quiet); font:14px/1.6 Arial,sans-serif; }
.founder-time { flex-shrink:0; display:grid; grid-template-columns:auto 1fr; align-items:center; gap:4px 12px; padding:14px 18px; border-left:1px solid var(--border); }
.founder-time strong { grid-row:1/3; font:600 29px Rajdhani,sans-serif; color:var(--amber); }
.founder-time>span { font:13px Rajdhani,sans-serif; color:var(--quiet); }
.founder-time>div { display:flex; gap:5px; }
.founder-time i { width:25px; height:4px; background:var(--border); }
.founder-time i.available { background:var(--amber); }
.office-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(250px,.42fr); gap:24px; align-items:start; }
.office-plan { min-width:0; }
.office-brief { margin:0 0 24px; padding:0 0 20px; border-bottom:1px solid var(--border); }
.office-plan .office-brief h4 { color:var(--copy); font:600 21px Rajdhani,sans-serif; margin:5px 0 8px; }
.office-brief>p:not(.context) { color:var(--quiet); font:13px/1.6 Arial,sans-serif; margin:0; }
.office-brief dl { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:14px 0 0; }
.office-brief dt { color:var(--quiet); font:12px/1.5 Arial,sans-serif; }
.office-brief dd { color:var(--copy); font:600 19px/1.6 Rajdhani,sans-serif; margin:0; }
.office-person-duty { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 20px; border-left:2px solid var(--cyan); background:var(--surface-alt); margin:0 0 20px; }
.office-person-duty strong { display:block; font:600 18px Rajdhani,sans-serif; }
.office-person-duty span { display:block; color:var(--quiet); font:12px/1.5 Arial,sans-serif; margin-top:5px; }
@media(max-width:780px) { .office-person-duty { align-items:flex-start; flex-direction:column; gap:8px; } .office-brief dl { gap:12px; } }
.office-plan h4 { display:flex; gap:10px; align-items:center; margin:0 0 14px; color:var(--amber); font:500 13px Rajdhani,sans-serif; }
.office-plan h4>span { color:var(--copy); font-size:19px; font-weight:600; }
.office-policies { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.office-policies button { text-align:left; display:flex; flex-direction:column; gap:10px; padding:18px 14px; background:var(--surface); border:1px solid var(--border); color:var(--copy); cursor:pointer; min-height:170px; transition:border-color .15s,background .15s; }
.office-policies strong { font:600 19px/1.2 Rajdhani,sans-serif; }
.office-policies small { color:var(--quiet); font:13px/1.55 Arial,sans-serif; }
.office-radio { width:13px; height:13px; border:1px solid var(--quiet); border-radius:50%; }
.office-policies .chosen { border-color:var(--amber); background:var(--surface-alt); }
.office-policies .chosen .office-radio { border-color:var(--amber); box-shadow:inset 0 0 0 3px var(--surface-alt); background:var(--amber); }
.office-assignment { margin-top:26px; }
.office-assignees { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.office-assignees button { text-align:left; display:flex; align-items:center; gap:12px; padding:13px; background:var(--surface); border:1px solid var(--border); color:var(--copy); cursor:pointer; min-width:0; }
.office-assignees button.chosen { border-color:var(--amber); box-shadow:inset 3px 0 var(--amber); }
.office-assignees strong { display:block; font:600 17px/1.2 Rajdhani,sans-serif; }
.office-assignees small { display:block; margin-top:5px; color:var(--quiet); font:12px/1.45 Arial,sans-serif; }
.office-person-mark { display:grid; place-items:center; width:38px; height:42px; flex-shrink:0; background:var(--surface-alt); color:var(--amber); font:500 24px Rajdhani,sans-serif; }
.office-assignees .staff-portrait { width:38px; height:42px; flex-shrink:0; }
.office-caption { color:var(--quiet); font:12px/1.65 Arial,sans-serif; margin:14px 0; }
.office-preview { background:var(--surface-alt); border:1px solid var(--border); border-top:2px solid var(--amber); padding:22px; min-width:0; }
.office-preview-label { display:block; font:14px Rajdhani,sans-serif; color:var(--quiet); margin-top:22px; }
.office-cash { font:600 34px/1.3 Rajdhani,sans-serif; color:var(--good); display:block; font-variant-numeric:tabular-nums; }
.office-delta { margin:0 0 20px; font:12px/1.6 Arial,sans-serif; color:var(--quiet); }
.office-submit { width:100%; margin-top:6px; font-size:14px; justify-content:space-between; }
.office-delivery { padding:14px 0; border-top:1px solid var(--border); }
.office-delivery>div:first-child { display:flex; align-items:center; justify-content:space-between; gap:12px; font:14px Rajdhani,sans-serif; }
.office-delivery strong { font-size:20px; color:var(--copy); }
.office-capacity-track { height:5px; background:var(--border); margin:12px 0 8px; overflow:hidden; }
.office-capacity-track>span { display:block; height:100%; background:var(--cyan); transition:width .3s; }
.office-delivery small { color:var(--quiet); font:11px Arial,sans-serif; }
.office-cash-flow { margin:10px 0; }
.office-cash-flow>div { display:grid; grid-template-columns:1fr auto; gap:5px 12px; padding:12px 0; border-top:1px solid var(--border); font:14px Rajdhani,sans-serif; }
.office-cash-flow strong { font-size:18px; font-weight:600; color:var(--copy); }
.office-cash-flow small { grid-column:1/-1; color:var(--quiet); font:11px/1.5 Arial,sans-serif; }
.office-received strong { color:var(--good); }
.office-history { margin-top:24px; }
.office-result>p { font:13px/1.6 Arial,sans-serif; color:var(--quiet); }
.office-result>p strong { color:var(--copy); }
.office-result .terminal-chart { margin-top:20px; }
.office-work-queue { display:flex; justify-content:space-between; gap:20px; padding:16px 20px; border:1px solid var(--border); border-left:3px solid var(--amber); background:var(--surface); margin-bottom:24px; }
.office-work-queue>div:first-child { display:flex; flex-direction:column; gap:5px; }
.office-work-queue strong { font:600 18px Rajdhani,sans-serif; }
.office-work-queue span { color:var(--quiet); font:12px/1.5 Arial,sans-serif; }
.office-work-queue>div:last-child { display:flex; gap:4px 16px; align-items:center; flex-wrap:wrap; }
.office-monthly { margin:22px 0; }
.office-monthly>h3 { font:600 21px Rajdhani,sans-serif; margin-bottom:10px; }
.office-month-record { border-top:1px solid var(--border); padding:14px 0; }
.office-month-record>summary { cursor:pointer; font:600 17px Rajdhani,sans-serif; }
.office-month-record>summary span { display:block; font:12px/1.6 Arial,sans-serif; margin:6px 0 0 16px; color:var(--quiet); }
.office-month-department { padding:8px 16px 14px; }
.office-month-department h4 { margin-bottom:6px; font:600 18px Rajdhani,sans-serif; }
.office-month-department .text-button { padding-left:0; }
.office-tabs button:focus-visible,.office-policies button:focus-visible,.office-assignees button:focus-visible { outline:2px solid var(--amber); outline-offset:4px; }
@media(max-width:1180px) { .office-layout { grid-template-columns:minmax(0,1fr) 260px; gap:18px; } .office-policies { grid-template-columns:1fr; } .office-policies button { min-height:0; display:grid; grid-template-columns:14px 1fr; gap:6px 10px; padding:14px; } .office-radio { margin-top:3px; } .office-policies small { grid-column:2; } .office-assignees { grid-template-columns:1fr; } .office-heading h3 { font-size:30px; } }
@media(max-width:780px) { .office-layout { grid-template-columns:1fr; } .office-heading { align-items:flex-start; flex-direction:column; gap:14px; } .founder-time { border:0; padding:0; } .office-work-queue { flex-direction:column; gap:10px; } .office-tabs button { padding-inline:9px; } .office-cash { font-size:32px; } .office-preview { padding:20px; } }
