.officeNav, .officePanelHead, .officeTodayHead, .officeFilters, .officeForm footer {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .65rem;
}
.officeNav { margin-bottom: 1.2rem; }
.officeTodayHead, .officePanelHead { justify-content: space-between; margin-bottom: .9rem; }
.officeTodayHead h2, .officePanelHead h2 { font-size: 1.15rem; margin: 0; }
.officeTodayHead time, .officeDate { color: var(--muted); font-size: .85rem; }
.officeGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; align-items: start; }
.officePanel { padding: 1.1rem; background: white; border: 1px solid var(--line); border-radius: var(--radius); }
.officePanel .muted { margin: .7rem 0; }
.officeFilters { align-items: end; margin-bottom: 1rem; }
.officeFilters label { display: grid; gap: .25rem; }
.officeFilters label:first-child { flex: 1; min-width: 10rem; }
.officeList, .officeDecisions { list-style: none; margin: 0; padding: 0; }
.officeItem + .officeItem, .officeDecisions li + li { border-top: 1px solid var(--line); }
.officeRecord { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: .8rem; padding: .7rem .15rem; background: transparent; border: 0; color: inherit; text-align: start; }
.officeRecord:hover, .officeRecord:focus-visible { background: var(--bg); }
.officeRecord span:first-child { display: grid; gap: .15rem; overflow-wrap: anywhere; }
.officeRecord small { color: var(--muted); }
.officeDate { flex-shrink: 0; }
.officeDialog { width: min(700px, 94vw); max-height: 90vh; border: 1px solid var(--line); border-radius: var(--radius); padding: 0; color: var(--text); }
.officeDialog::backdrop { background: #102d43a6; }
.officeForm { padding: 1.25rem; }
.officeForm .officePanelHead { border-bottom: 1px solid var(--line); padding-bottom: .75rem; }
.officeForm footer { justify-content: end; }
.officeForm .field { min-width: 0; }
.officeForm input, .officeForm select, .officeForm textarea { max-width: 100%; }
.officeError { color: var(--danger); }
.officeFile { overflow-wrap: anywhere; }
.officeDecisions li { display: flex; justify-content: space-between; align-items: center; gap: .5rem; padding: .5rem 0; }
@media (max-width: 800px) {
    .officeGrid { grid-template-columns: 1fr; }
    .officeRecord { flex-wrap: wrap; }
}
