.aic-office, .aic-office-roster { color: var(--aic-sem-fg-default); background: var(--aic-sem-bg-surface); font-family: var(--aic-sem-font-family-sans); }
.aic-office-toolbar { display: flex; flex-wrap: wrap; gap: var(--aic-sem-space-sm); margin-block: var(--aic-sem-space-sm); }
.aic-office-viewport { max-width: 100%; overflow: auto; padding: var(--aic-sem-space-xs); }
.aic-office-canvas { display: block; image-rendering: pixelated; }
.aic-office-roster ul { list-style: none; padding: 0; display: grid; gap: var(--aic-sem-space-sm); }
.aic-office-roster button { width: 100%; text-align: start; min-height: 24px; }
.aic-office-roster button[aria-pressed="true"] { outline: 2px solid var(--aic-sem-focus-ring); outline-offset: 2px; }
.aic-office-canvas:focus-visible { outline: 2px solid var(--aic-sem-focus-ring); outline-offset: 2px; }
.aic-office button, .aic-office input { min-width: 24px; min-height: 32px; font: inherit; }
.aic-office-toolbar button, .aic-office input { color: var(--aic-sem-fg-default); background: var(--aic-sem-bg-surface); border: 1px solid var(--aic-sem-border-control); }
.aic-office button:focus-visible, .aic-office input:focus-visible, .aic-office-roster button:focus-visible { outline: 2px solid var(--aic-sem-focus-ring); outline-offset: 2px; }
.aic-office-toolbar label { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aic-sem-space-xs); }
.aic-office-toolbar input { max-width: 100%; min-width: 0; }
.aic-office-toolbar button[aria-pressed="true"] { border: 2px solid var(--aic-sem-focus-ring); }
.aic-office-roster button { display: flex; align-items: baseline; gap: var(--aic-sem-space-xs); overflow-wrap: anywhere; }
.aic-office-roster [hidden] { display: none; }
.aic-office-hud { overflow-wrap: anywhere; }
@media (prefers-reduced-motion: reduce) { .aic-office *, .aic-office-roster * { animation: none; transition: none; scroll-behavior: auto; } }
