/* DOGGS materials and existing domain layouts. Shared controls live in components.css.
   See evidence/prerelease-design-primitives-a01/REFERENCES.md for approved sources. */
:root {
  --world-light: radial-gradient(ellipse at 24% 0%,#62242d19,transparent 54%);
  --world-panel: linear-gradient(145deg,#ffffff04,transparent 42%);
  --world-paper: repeating-linear-gradient(0deg,transparent 0 0.1875rem,#cfb78302 0.1875rem 0.25rem);
  --world-shadow: var(--shadow-soft);
  --chart-line: #c5a171; --chart-fill:#b7925722; --chart-grid:#eee8dc12;
  --world-selected: linear-gradient(95deg,#672630,#361b22);
  --world-edge: #8f6d49;
  --sidebar-width: 14.875rem;
}
:root[data-theme='light'] {
  --world-light: radial-gradient(ellipse at 22% 0%,#fffdf7bd,transparent 62%);
  --world-panel: linear-gradient(145deg,#fffdf48f,transparent 62%);
  --world-paper: repeating-linear-gradient(90deg,transparent 0 0.1875rem,#75521e03 0.1875rem 0.25rem);
  --world-shadow: var(--shadow-soft);
  --chart-line:#795029; --chart-fill:#8d66231c; --chart-grid:#49371e19;
  --world-selected: linear-gradient(95deg,#62242d,#7b3540);
  --world-edge:#a08863;
}
html {background-image:var(--world-light),var(--world-paper);background-attachment:fixed;}
body {font-size:0.875rem;}
.sidebar {background-image:var(--world-panel);box-shadow:0.3125rem 0 1.5rem #00000009;}
.topbar {background-image:var(--world-panel);box-shadow:none;}
.branding {padding-block:1.5rem;}
.brand-mark {width:1.875rem;height:2.25rem;}
.brand-name {font-size:1.34rem;}
.nav-link {min-height:2.75rem;padding-block:0.5625rem;}
.nav-link[aria-current='page'] {background:var(--world-selected);box-shadow:inset 0.1875rem 0 var(--accent-primary),0 0.1875rem 0.75rem #00000012;}
.nav-group-title {font-size:0.625rem;letter-spacing:0.06875rem;}
.page {padding-top:1.8125rem;}
.page-heading {gap:0.75rem;margin-bottom:1.5625rem;padding-bottom:1.3125rem;}
.page-sigil {height:2.1875rem;width:1.8125rem;opacity:.85;}
.page-heading p {max-width:75ch;line-height:1.6;}
.page-heading::after {width:3rem;background:var(--accent-primary);}





.card,.music-panel,.directory-pane,.identity-pane,.chart-panel,.dashboard-panel,.volume-panel {background-color:var(--bg-surface);background-image:var(--world-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--world-shadow);}
.notice-band {border-left:3px solid var(--accent-primary);padding:0.75rem 0.9375rem;background:var(--bg-elevated);color:var(--text-secondary);font-size:0.8125rem;line-height:1.6;}
.workspace-tabs {display:flex;gap:0.1875rem;border-bottom:1px solid var(--border-subtle);padding:0 0 0.5625rem;overflow-x:auto;scrollbar-width:thin;}
.workspace-tabs .btn {flex-shrink:0;border-color:transparent;background:transparent;color:var(--text-secondary);padding:0.6875rem 0.9375rem;white-space:nowrap;}
.workspace-tabs [aria-selected='true'] {background:var(--accent-wash);color:var(--text-primary);border-color:var(--accent-edge);box-shadow:inset 0 -0.125rem var(--accent-primary);}
.users-workspace {display:grid;grid-template-columns:minmax(16.25rem,.72fr) minmax(0,1.6fr);gap:1.375rem;align-items:start;}
.directory-pane {overflow:hidden;}
.directory-pane>.section-header {padding:1.375rem 1.25rem 1.125rem;align-items:flex-start;flex-wrap:wrap;gap:0.9375rem;}
.directory-pane h2 {font-size:1.24rem;}
.directory-pane>.section-header .btn {width:100%;}
.directory-filters {display:grid;gap:0.75rem;padding:0 1.25rem 1.25rem;}
.directory-list {border-top:1px solid var(--border-subtle);}
.directory-person {display:flex;width:100%;align-items:center;justify-content:flex-start;gap:0.8125rem;padding:1.125rem 1.25rem;border:0;border-bottom:1px solid var(--border-subtle);border-radius:0;text-align:left;white-space:normal;}@media (hover: hover) and (pointer: fine){
.directory-person:hover {background:var(--bg-elevated);}}
.directory-person[aria-pressed='true'] {background:var(--accent-wash);box-shadow:inset 0.1875rem 0 var(--accent-primary);}
.directory-person-copy {display:flex;flex-direction:column;gap:0.25rem;flex:1;min-width:0;overflow-wrap:anywhere;}
.directory-person-copy strong {font-weight:600;}
.directory-person-status {font-size:0.6875rem;color:var(--accent-primary);margin-top:0.1875rem;}
.directory-person>.icon {width:0.875rem;opacity:.55;}
.directory-pagination {padding:0.9375rem;}
.directory-pagination .pagination {display:block;}
.directory-pagination .pagination>.inline {margin-top:0.625rem;gap:0.3125rem;}
.directory-pagination .btn {padding:0.5rem;font-size:0.6875rem;}
.identity-pane {min-height:39.375rem;overflow:hidden;}
.identity-heading {display:flex;align-items:start;justify-content:space-between;gap:0.9375rem;padding:1.5rem 1.5rem 1.375rem;}
.identity-heading h2 {font-size:1.65rem;overflow-wrap:anywhere;}
.identity-pane>.workspace-tabs {margin-inline:1.25rem;}
.identity-content {padding:1.5rem;display:flex;flex-direction:column;gap:1.375rem;min-width:0;}
.mobile-detail-back {display:none;}
.identity-content>.stack,.governance-workspace {gap:1.125rem;}
.profile-editor {padding-bottom:1.125rem;border-bottom:1px solid var(--border-subtle);}
.profile-editor>summary {min-height:2.75rem;display:flex;align-items:center;color:var(--text-secondary);cursor:pointer;font-weight:600;}
.profile-editor[open]>summary {margin-bottom:1.125rem;}
.permission-list {border:1px solid var(--border-subtle);border-radius:0.25rem;}
.permission-list-bounded {max-height:26.25rem;overflow:auto;}
.permission-row {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0.625rem 0.9375rem;padding:1.0625rem;border-bottom:1px solid var(--border-subtle);}
.permission-row:last-child {border-bottom:0;}
.permission-row>.stack-tight {grid-column:1;}
.permission-modes {grid-row:2;grid-column:1;display:flex;flex-wrap:wrap;gap:0.375rem 0.9375rem;}
.permission-value {font-size:0.6875rem;color:var(--text-muted);}
.permission-row>.btn {grid-column:2;grid-row:1 / 3;align-self:center;}
.governance-workspace .toolbar {align-items:end;gap:0.625rem;}
.governance-workspace .toolbar .field {flex:1 1 12.5rem;}
.governance-workspace table {font-size:0.75rem;min-width:0;}
.governance-workspace th,.governance-workspace td {padding:0.75rem 0.625rem;overflow-wrap:anywhere;}
.governance-workspace .table-wrap {max-height:34.375rem;overflow:auto;}
.profile-assignment {min-width:0;padding-bottom:1.5rem;border-bottom:1px solid var(--border-subtle);}
.profile-assignment .section-header {flex-wrap:wrap;gap:0.75rem;}
.profile-choices,.profile-room-choices {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0.625rem;}
.profile-choice.btn {min-height:6.75rem;min-width:0;padding:1rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0.5rem;text-align:left;white-space:normal;overflow-wrap:anywhere;}
.profile-choice strong {font-size:0.875rem;line-height:1.45;}
.profile-choice span,.profile-choice small {font-size:0.75rem;line-height:1.55;}
.profile-choice[aria-pressed='true'] {border-color:var(--accent-primary);background:var(--accent-wash);box-shadow:inset 0.1875rem 0 var(--accent-primary);}
.profile-choice.btn:disabled {opacity:.7;}
.profile-rooms {min-width:0;margin:0.375rem 0 0;padding:1rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);}
.profile-rooms legend {padding:0 0.375rem;font-size:0.875rem;font-weight:600;}
.profile-rooms>.field-hint {margin:0 0 0.875rem;}
.profile-room-choice {min-width:0;margin:0;padding:0.625rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);}
.profile-room-choice .stack-tight {min-width:0;overflow-wrap:anywhere;}
.profile-room-choice input {width:1.375rem;height:1.375rem;flex-basis:1.375rem;}
.profile-impact {min-width:0;padding:1.25rem;background:var(--bg-inset);border:1px solid var(--border-strong);border-radius:var(--radius-md);}
.profile-impact h4 {font-size:1rem;line-height:1.5;overflow-wrap:anywhere;}
.profile-impact h5 {font-size:0.8125rem;line-height:1.5;margin:0;overflow-wrap:anywhere;}
.profile-impact-scope {padding-top:0.875rem;border-top:1px solid var(--border-subtle);}
.profile-impact-action {display:grid;grid-template-columns:minmax(0,1fr) minmax(7.5rem,auto);gap:0.375rem 0.9375rem;padding:0.5rem 0;font-size:0.75rem;line-height:1.6;overflow-wrap:anywhere;}
.profile-removals {padding:0.875rem;border:1px solid var(--status-error);border-radius:var(--radius-md);}
.profile-removals p,.profile-preview-grants p {font-size:0.75rem;line-height:1.6;overflow-wrap:anywhere;margin:0;padding:0.4375rem 0;}
.profile-preview-grants {max-height:17.5rem;overflow:auto;}
.profile-preview-grants p+p {border-top:1px solid var(--border-subtle);}
.profile-confirmation {align-items:flex-start;}
.profile-confirmation input {margin-top:0.25rem;}
.profile-assignment>.btn,.profile-impact>.btn {align-self:flex-start;min-height:2.75rem;white-space:normal;}
@media(max-width:600px){.profile-choices,.profile-room-choices{grid-template-columns:1fr;}.profile-choice.btn{min-height:5.5rem;}.profile-impact{padding:0.875rem;}.profile-rooms{padding:0.75rem;}.profile-impact-action{grid-template-columns:minmax(0,1fr);}.profile-assignment>.btn,.profile-impact>.btn{width:100%;}.profile-assignment .section-header>.btn{min-height:2.75rem;}.profile-confirmation{gap:0.5rem;}.profile-confirmation input{flex-basis:1.5rem;}}
.grant-record,.session-row,.identity-record {padding:1.0625rem 0;border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;}
.grant-record>.stack-tight {flex:1 1 15.625rem;}
.identity-record.stack {display:flex;flex-direction:column;}
.identity-record .detail-list {grid-template-columns:9.375rem 1fr;}
.credential-panel {padding-top:1.375rem;border-top:1px solid var(--border-subtle);}
.checkbox-field {display:flex;min-height:2.75rem;align-items:center;gap:0.75rem;line-height:1.55;font-size:0.8125rem;}
.checkbox-field input {margin:0;flex:0 0 2.75rem;}
.impact-preview {background:var(--bg-inset);padding:1.25rem;border:1px solid var(--border-strong);border-radius:0.25rem;margin-top:1.25rem;}
.compact-dialog.drawer {width:min(35rem,100vw);}
.governance-drawer.drawer,.create-user-dialog.drawer {width:min(51.25rem,100vw);}
.dashboard-workspace {display:flex;flex-direction:column;gap:1.375rem;}
.dashboard-toolbar {display:flex;justify-content:space-between;align-items:center;gap:1rem;}
.dashboard-toolbar .field {width:10.625rem;}
.dashboard-toolbar .field label {font-size:0.6875rem;}
.metric-band {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-block:1px solid var(--border-strong);background:var(--bg-surface);background-image:var(--world-panel);box-shadow:var(--world-shadow);}
.metric-item {padding:1.3125rem 1.125rem;border-right:1px solid var(--border-subtle);min-width:0;}
.metric-item:last-child {border-right:0;}
.metric-item dt {font-size:0.75rem;color:var(--text-secondary);margin-bottom:0.6875rem;}
.metric-item dd {margin:0;font:400 1.65rem/1.15 var(--font-title);font-variant-numeric:tabular-nums;color:var(--text-primary);overflow-wrap:anywhere;}
.metric-item dd.collecting {font:500 0.8125rem/1.6 var(--font-ui);color:var(--text-muted);}
.metric-item small {display:block;margin-top:0.5625rem;font-size:0.625rem;color:var(--text-muted);line-height:1.5;}
.dashboard-columns {display:grid;grid-template-columns:minmax(0,1.65fr) minmax(18.125rem,1fr);gap:1.375rem;align-items:stretch;}
.dashboard-panel,.chart-panel {padding:1.375rem;min-width:0;}
.dashboard-panel h2,.chart-panel h2 {font-size:1.2rem;margin-bottom:1.0625rem;}
.dashboard-panel .section-header {align-items:start;gap:0.75rem;}
.chart-frame {min-height:14.375rem;position:relative;background:var(--bg-inset);border:1px solid var(--border-subtle);border-radius:0.25rem;overflow:hidden;}
.chart-frame .empty-state {min-height:14.0625rem;}
.history-chart {display:block;width:100%;height:auto;min-height:11.875rem;}
.chart-grid-line {stroke:var(--chart-grid);stroke-width:1;}
.chart-series-line {stroke:var(--chart-line);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.chart-dot {fill:var(--chart-line);}
.chart-label {fill:var(--text-muted);font:0.625rem var(--font-ui);}
.chart-caption {display:flex;justify-content:space-between;gap:0.9375rem;margin-top:0.625rem;font-size:0.6875rem;color:var(--text-muted);}
.service-summary-row {padding:0.9375rem 0;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;gap:0.75rem;}
.service-summary-row:first-of-type {padding-top:0.25rem;}
.service-summary-row:last-child {border-bottom:0;}
.service-summary-row .status-badge {font-size:0.625rem;}
.observation-metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.9375rem;margin-top:1.125rem;}
.observation-metrics dt {font-size:0.6875rem;color:var(--text-muted);}
.observation-metrics dd {margin:0.5rem 0 0;font:400 1.4rem var(--font-title);}
.distribution-row {display:grid;grid-template-columns:5.9375rem minmax(0,1fr) 2.1875rem;align-items:center;gap:0.75rem;padding:0.75rem 0;font-size:0.75rem;}
.distribution-track {height:0.375rem;background:var(--bg-inset);border:1px solid var(--border-subtle);}
.distribution-fill {height:100%;background:var(--accent-primary);}
.music-container {gap:1.25rem;}
.music-destination {display:flex;gap:1.25rem;align-items:end;}
.music-destination .field {width:min(100%,35rem);}
.music-destination-meta {font-size:0.75rem;color:var(--text-muted);padding-bottom:0.75rem;}
.music-tab-content {min-width:0;}
.music-stage {display:grid;grid-template-columns:minmax(0,2.2fr) minmax(16.875rem,1fr);gap:1.375rem;align-items:start;}
.music-panel {padding:1.4375rem;}
.music-panel>h2,.volume-panel>h2 {font-size:1.23rem;text-transform:none;letter-spacing:0;margin-bottom:1.25rem;}
.now-playing-main {min-height:15rem;display:flex;flex-direction:column;justify-content:center;gap:0.875rem;padding:1.25rem 0;}
.now-playing-main h3 {font:400 1.55rem/1.3 var(--font-title);max-width:40ch;}
.music-transport {display:flex;gap:0.5625rem;flex-wrap:wrap;padding-top:1.25rem;border-top:1px solid var(--border-subtle);justify-content:flex-start;}
.music-transport .btn {min-width:4.625rem;}
.music-transport .music-repeat-control {flex:1;align-items:flex-end;}
.volume-panel {padding:1.4375rem;}
.volume-section {padding:1.25rem 0;border-bottom:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:0.75rem;}
.volume-section:last-child {border-bottom:0;padding-bottom:0;}
.volume-section:first-of-type {padding-top:0;}
.volume-title {display:flex;gap:0.75rem;align-items:center;}
.volume-title>.icon {color:var(--accent-primary);width:1.5rem;height:1.5rem;}
.volume-title h3 {font-size:0.875rem;}
.volume-title small {color:var(--text-muted);}
.volume-readout {display:flex;justify-content:space-between;gap:0.75rem;font-size:0.75rem;color:var(--text-secondary);}
.volume-section input[type=range] {width:100%;accent-color:var(--accent-primary);min-height:2.75rem;}
.music-secondary-actions {display:flex;justify-content:space-between;gap:0.75rem;padding:1.125rem 0;}
.music-youtube {background:var(--bg-inset)!important;color:var(--text-primary)!important;border-color:var(--border-strong)!important;}
.music-progress {margin-top:0.625rem;}
.music-library-scope {display:flex;gap:0.625rem;flex-wrap:wrap;margin-bottom:1.25rem;}
.music-playlist-row {border-bottom:1px solid var(--border-subtle);padding:0.875rem 0;display:flex;justify-content:space-between;gap:0.9375rem;}
.music-playlist-row .btn {text-align:left;justify-content:flex-start;}
.music-track {gap:0.9375rem;padding-block:1.0625rem;}
.music-track .actions {gap:0.5rem;}
.music-track .actions .btn {font-size:0.75rem;padding-inline:0.75rem;}
.music-save-dialog.drawer {width:min(30rem,100vw);}
.smtp-secret-status {font-size:0.75rem;color:var(--text-muted);}
@media(min-width:1550px){.users-workspace{grid-template-columns:minmax(19.375rem,.7fr) minmax(0,1.8fr);}.identity-content{padding:1.75rem;}}
@media(max-width:1250px){.metric-item{padding:1.125rem 0.8125rem;}.metric-item dd{font-size:1.4rem;}.users-workspace{grid-template-columns:minmax(14.375rem,.65fr) minmax(0,1.6fr);gap:1rem;}.identity-content{padding:1.125rem;}.identity-heading{padding:1.25rem 1.125rem;}.directory-pane>.section-header{padding-inline:1rem;}.directory-person{padding-inline:1rem;}.music-stage{grid-template-columns:minmax(0,1.8fr) minmax(14.6875rem,1fr);}.dashboard-columns{grid-template-columns:minmax(0,1.5fr) minmax(15.3125rem,1fr);}}
@media(max-width:1050px){.users-workspace{grid-template-columns:1fr;}.identity-pane{display:none;}.users-workspace.has-selection .identity-pane{display:block;}.users-workspace.has-selection .directory-pane{display:none;}.mobile-detail-back{display:inline-flex;margin:0.9375rem 0.9375rem 0;}.directory-pane>.section-header .btn{width:auto;}.directory-filters{grid-template-columns:1.5fr 1fr;}.directory-pagination .pagination{display:flex;}.directory-pagination .pagination>.inline{margin-top:0;}.music-stage{grid-template-columns:minmax(0,1.6fr) minmax(15.625rem,1fr);}}
@media(max-width:760px){.metric-band{grid-template-columns:repeat(2,minmax(0,1fr));}.metric-item{border-bottom:1px solid var(--border-subtle);}.metric-item:nth-child(even){border-right:0;}.metric-item:last-child{grid-column:1/-1;border-bottom:0;}.dashboard-columns,.music-stage{grid-template-columns:1fr;}.dashboard-panel,.chart-panel,.volume-panel{padding:1.1875rem;}.music-stage .volume-panel{display:grid;grid-template-columns:1fr 1fr;gap:1.125rem;}.volume-panel>h2{grid-column:1/-1;margin:0;}.volume-section{border-bottom:0;padding:0;}.volume-section:first-of-type{border-right:1px solid var(--border-subtle);padding-right:1.125rem;}.music-destination{display:block;}.music-destination-meta{padding-top:0.5rem;}.music-panel{padding:1.25rem;}.now-playing-main{min-height:11.25rem;}.governance-workspace .toolbar>.btn{flex:1;}.identity-heading{flex-direction:column;gap:0.75rem;}.identity-pane>.workspace-tabs{margin-inline:0.9375rem;}.workspace-tabs .btn{padding:0.6875rem 0.75rem;}.dashboard-toolbar{align-items:end;}.dashboard-toolbar .field{width:9.375rem;}.chart-caption{flex-direction:column;gap:0.25rem;}}
@media(max-width:540px){.btn{min-height:2.75rem;}.page{padding-top:1.375rem;}.page-heading{margin-bottom:1.375rem;}.directory-filters{grid-template-columns:1fr;}.identity-content{padding:1.0625rem 0.9375rem;}.identity-heading h2{font-size:1.5rem;}.identity-pane{border-inline:0;border-radius:0;box-shadow:none;}.users-workspace.has-selection{margin-inline:-0.875rem;}.users-workspace .directory-pagination .pagination{display:block;}.directory-pagination .pagination>.inline{margin-top:0.625rem;}.permission-row{grid-template-columns:1fr;padding:0.9375rem;}.permission-row>.btn{grid-column:1;grid-row:3;}.permission-modes{flex-direction:column;}.music-container>.workspace-tabs{display:grid;grid-template-columns:1fr 1fr;overflow:visible;}.music-container>.workspace-tabs .btn{white-space:normal;}.music-stage .volume-panel{display:block;}.volume-panel>h2{margin-bottom:1.25rem;}.volume-section:first-of-type{border-right:0;padding:0 0 1.25rem;border-bottom:1px solid var(--border-subtle);}.volume-section:last-child{padding-top:1.25rem;}.music-transport{display:grid;grid-template-columns:repeat(3,1fr);}.music-transport .music-repeat-control{grid-column:1/-1;align-items:stretch;}.music-panel{padding:1.125rem;}.now-playing-main h3{font-size:1.3rem;}.observation-metrics{grid-template-columns:1fr;gap:0.75rem;}.observation-metrics>div{display:flex;justify-content:space-between;gap:0.75rem;align-items:center;border-bottom:1px solid var(--border-subtle);padding-bottom:0.625rem;}.observation-metrics dd{margin:0;}.dashboard-toolbar{align-items:start;}.dashboard-toolbar>.muted{max-width:55%;font-size:0.75rem;}.metric-item dd{font-size:1.55rem;}.metric-item small{font-size:0.625rem;}.impact-preview{padding:1rem;}.identity-record .detail-list{grid-template-columns:1fr;}.session-row{display:block;}.session-row .btn{margin-top:0.75rem;}}
@media(prefers-reduced-motion:reduce){.btn{transition:none;}}
/* Golden Sample: shared product grammar, Sanctuary carried by material and light. */
.page-heading h1 {font-size:1.85rem;font-weight:500;line-height:1.18;}
.page-heading {padding-bottom:1rem;margin-bottom:1.375rem;}
.page-sigil {display:none;}
.dashboard-panel h2,.music-panel h2,.identity-content h3,.directory-pane h2,.volume-panel h2 {font-family:var(--font-ui);font-size:0.9375rem;font-weight:600;letter-spacing:0;}
.topbar {gap:1.25rem;padding-block:0.875rem;min-height:4.5rem;}
.global-search {margin-left:auto;min-width:13.75rem;justify-content:flex-start;color:var(--text-muted);border:1px solid var(--border-subtle);background:var(--bg-inset);}
.global-search kbd {margin-left:auto;font:0.625rem var(--font-ui);color:var(--text-muted);border:1px solid var(--border-subtle);border-radius:0.1875rem;padding:0.1875rem 0.3125rem;}
.topbar-actions {margin-left:0;}
.search-results {display:flex;flex-direction:column;padding-top:0.75rem;}
.search-result {display:flex;align-items:center;gap:0.8125rem;padding:1.0625rem 0;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);text-decoration:none;}
.search-result small {margin-left:auto;}
.nav-disclosure>summary {cursor:pointer;list-style:none;display:flex;justify-content:space-between;}
.nav-disclosure>summary::after {content:'+';font-size:0.875rem;opacity:.6;}
.nav-disclosure[open]>summary::after {content:'−';}
.nav-group {margin-bottom:0.9375rem;}
.nav-group-title {margin-bottom:0.5rem;}
.sidebar-nav {padding-top:1.25rem;}
.dashboard-workspace {gap:1.125rem;}
.dashboard-toolbar {gap:1.125rem;min-height:2.8125rem;}
.dashboard-toolbar>.muted {font-size:0.75rem;max-width:70ch;}
.dashboard-toolbar .field {width:10.625rem;}
.metric-band-home {grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;}
.metric-item {padding:1.25rem;}
.metric-item dd {font-family:var(--font-ui);font-size:1.8rem;font-weight:600;}
.metric-item dt {font-size:0.75rem;margin-bottom:0.625rem;}
.metric-item small {font-size:0.6875rem;line-height:1.5;}
.attention-summary {display:flex;align-items:center;gap:0.875rem;padding:0.9375rem 1.125rem;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--bg-elevated);}
.attention-summary>.icon {color:var(--accent-primary);width:1.25rem;flex-shrink:0;}
.attention-summary .stack-tight {flex:1;}
.attention-summary strong {font-size:0.8125rem;font-weight:500;}
.attention-summary .muted {font-size:0.6875rem;}
.dashboard-columns {gap:1.125rem;}
.dashboard-panel {padding:1.375rem;}
.dashboard-panel h2 {margin-bottom:1rem;}
.chart-frame {min-height:12.5rem;}
.chart-frame .empty-state {min-height:12.1875rem;}
.history-chart {min-height:11.25rem;}
.service-summary-row {padding:0.6875rem 0;}
.service-summary-row strong {font-size:0.75rem;font-weight:500;}
.service-summary-row small {font-size:0.625rem;}
.dashboard-panel>.field-hint {display:block;margin-top:0.9375rem;}
.console-columns {grid-template-columns:1fr 1.15fr;}
.console-shortcuts {display:flex;flex-direction:column;margin:0.9375rem 0 1.25rem;}
.console-shortcut {display:flex;gap:0.75rem;align-items:center;padding:0.8125rem 0;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);text-decoration:none;font-size:0.8125rem;}
.console-shortcut>.icon:first-child {color:var(--accent-primary);}
.console-shortcut>.icon:last-child {margin-left:auto;width:0.8125rem;opacity:.5;}@media (hover: hover) and (pointer: fine){
.console-shortcut:hover {color:var(--accent-primary);}}
.console-restarts {display:flex;flex-wrap:wrap;gap:0.5625rem;margin-top:1.125rem;}
.operation-state-row {display:flex;flex-wrap:wrap;align-items:center;gap:0.75rem;padding-top:0.9375rem;}
.activity-row {display:flex;width:100%;align-items:center;gap:0.75rem;text-align:left;border:0;border-bottom:1px solid var(--border-subtle);padding:0.875rem 0;white-space:normal;}
.activity-row>.icon {color:var(--accent-primary);flex-shrink:0;width:1.0625rem;}
.activity-row .stack-tight {flex:1;min-width:0;}
.activity-row strong {font-size:0.75rem;font-weight:500;overflow-wrap:anywhere;}
.activity-row .muted,.activity-row time {font-size:0.625rem;}
.activity-row time {white-space:normal;max-width:6.875rem;color:var(--text-muted);}
.eyebrow {font:600 0.625rem/1.5 var(--font-ui);letter-spacing:0.0875rem;color:var(--accent-primary);text-transform:uppercase;}
.effective-summary h4 {font-size:0.9375rem;font-weight:600;}
.effective-domain {border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-inset);}
.effective-domain>summary {padding:0.9375rem 1.0625rem;cursor:pointer;font-size:0.8125rem;font-weight:500;}
.effective-action {display:flex;gap:0.75rem;align-items:center;padding:0.9375rem 1.0625rem;border-top:1px solid var(--border-subtle);}
.effective-action>.stack-tight {flex:1;min-width:0;}
.effective-action strong {font-size:0.75rem;font-weight:500;}
.effective-action small {font-size:0.6875rem;}
.effective-action .badge {font-size:0.625rem;flex-shrink:0;}
.identity-overview .detail-list {padding:1.125rem;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-inset);}
.identity-overview .detail-list dt,.identity-overview .detail-list dd {padding-block:0.4375rem;}
.identity-pane .workspace-tabs .btn {font-size:0.75rem;}
.wizard-steps {display:grid;grid-template-columns:repeat(6,1fr);gap:0.625rem;padding:0;list-style:none;margin:0 0 1.75rem;}
.wizard-steps li {display:flex;flex-direction:column;gap:0.5rem;align-items:center;text-align:center;color:var(--text-muted);font-size:0.625rem;}
.wizard-number {display:grid;place-items:center;width:1.875rem;height:1.875rem;border-radius:50%;border:1px solid var(--border-subtle);background:var(--bg-inset);font-size:0.75rem;}
.wizard-steps [aria-current] {color:var(--text-primary);}
.wizard-steps [aria-current] .wizard-number {background:var(--accent-fill);border-color:var(--accent-edge);color:#f4ead7;box-shadow:0 0 0 0.25rem var(--accent-wash);}
.wizard-steps .is-complete .wizard-number {border-color:var(--accent-primary);color:var(--accent-primary);}
.wizard-body {min-height:20rem;}
.wizard-body>h3 {font:600 1.25rem var(--font-ui);}
.wizard-actions {display:flex;flex-wrap:wrap;justify-content:flex-end;gap:0.75rem;margin-top:1.5625rem;border-top:1px solid var(--border-subtle);padding-top:1.25rem;}
.wizard-actions .btn:first-child {margin-right:auto;}
.review-grants {max-height:13.75rem;overflow:auto;border:1px solid var(--border-subtle);padding:0.9375rem;}
.review-grants p {font-size:0.75rem;line-height:1.7;border-bottom:1px solid var(--border-subtle);padding-block:0.5rem;}
.preset-description {padding:1.25rem;background:var(--bg-inset);border:1px solid var(--border-subtle);border-radius:var(--radius-md);line-height:1.7;}
.now-playing-main {display:grid;grid-template-columns:10.625rem minmax(0,1fr);gap:1.5rem;min-height:15.625rem;padding:0.75rem 0 1.5625rem;}
.now-playing-copy {display:flex;flex-direction:column;align-items:flex-start;gap:0.75rem;min-width:0;}
.now-playing-copy h3 {font-family:var(--font-ui);font-size:1.45rem;font-weight:600;overflow-wrap:anywhere;}
.now-playing-copy .muted {font-size:0.75rem;}
.music-artwork {aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;border:1px solid #856d504d;border-radius:0.5625rem;background:radial-gradient(ellipse at 25% 8%,#ad845b18,transparent 60%),linear-gradient(135deg,#36232c,#16171c 70%);box-shadow:0 0.75rem 1.5625rem #0003,inset 0 1px #dec6a310;color:#bd9a6d;}
.music-artwork .icon {width:3.25rem;height:3.25rem;stroke-width:1;}
.music-artwork>span {font-size:0.5625rem;text-transform:uppercase;letter-spacing:.8px;color:#b3a795;}
:root[data-theme='light'] .music-artwork {background:radial-gradient(ellipse at 25% 0%,#fff9e9,transparent 65%),linear-gradient(135deg,#ddd2be,#b8ac95);box-shadow:0 0.5625rem 1.125rem #5747301c,inset 0 1px #fffff880;color:#754d34;}
:root[data-theme='light'] .music-artwork>span {color:#635642;}
.music-transport {justify-content:center;align-items:center;gap:1rem;}
.music-transport>.btn {min-width:2.75rem;min-height:2.75rem;width:2.75rem;height:2.75rem;padding:0.625rem;border:0;background:transparent;border-radius:50%;color:var(--text-primary);}
.music-transport>.btn .icon {width:1.375rem;height:1.375rem;}
.music-transport>.transport-resume,.music-transport>.transport-pause {width:3.375rem;height:3.375rem;background:var(--accent-fill);border:1px solid var(--accent-edge);color:#f3e9d9;}
.music-transport>.transport-stop {order:5;}
.music-transport .music-repeat-control {flex-basis:100%;align-items:center;padding-top:0.5rem;}
.music-repeat-control .btn {font-size:0.6875rem;min-height:2.75rem;}
.music-progress {gap:0.75rem;font-size:0.6875rem;}
.music-progress .music-seek {min-height:2.75rem;}
.music-next,.music-track {display:flex;align-items:center;gap:1.0625rem;border-bottom:1px solid var(--border-subtle);padding:1.25rem 0;}
.music-track>.stack-tight,.music-next>.stack-tight {flex:1;min-width:0;}
.music-track strong,.music-next strong {font-size:0.8125rem;font-weight:500;overflow-wrap:anywhere;}
.music-track small,.music-next small {font-size:0.6875rem;}
.queue-position {font:500 0.75rem var(--font-ui);color:var(--text-muted);min-width:1.25rem;}
.music-playlist-row {display:grid;grid-template-columns:3.5rem minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.125rem 0;}
.playlist-cover {display:grid;place-items:center;aspect-ratio:1;border-radius:0.375rem;border:1px solid var(--border-subtle);background:var(--world-selected);color:#ccb28d;}
.playlist-cover .icon {width:1.5625rem;height:1.5625rem;}
.music-playlist-row>.stack-tight>.btn {padding:0.25rem 0;min-height:2.75rem;border:0;background:none;font-weight:600;}
.music-library-scope .btn[aria-pressed='true'] {background:var(--accent-wash);border-color:var(--accent-edge);}
:root[data-theme='light'] .dashboard-panel,:root[data-theme='light'] .identity-pane,:root[data-theme='light'] .music-panel {border-color:#b7ab973f;}
:root[data-theme='light'] .topbar {background-color:#f0ebdf;box-shadow:0 1px 0 #fff9ee;}
:root[data-theme='light'] .sidebar {background-color:#e8e0d2;background-image:linear-gradient(150deg,#fff6e855,transparent 55%);}
@media(max-width:1200px){.global-search{min-width:10.625rem;}.global-search kbd{display:none;}.topbar{gap:0.8125rem;}.breadcrumb{display:none;}.now-playing-main{grid-template-columns:8.4375rem minmax(0,1fr);gap:1.25rem;}.now-playing-copy h3{font-size:1.3rem;}}
@media(max-width:850px){.music-stage{grid-template-columns:1fr;}.music-stage .volume-panel{display:grid;grid-template-columns:1fr 1fr;gap:1.375rem;}.volume-panel>h2{grid-column:1/-1;}.volume-section{border:0;padding-top:0;}.volume-section:first-of-type{border-right:1px solid var(--border-subtle);padding-right:1.25rem;}.volume-section:last-child{padding-top:0;}.console-columns{grid-template-columns:1fr;}}
@media(max-width:760px){.metric-band-home{grid-template-columns:1fr 1fr;}.metric-item:last-child{grid-column:auto;}.metric-item:nth-last-child(-n+2){border-bottom:0;}.global-search{min-width:0;font-size:0;padding:0.625rem;}.global-search .icon{margin:0;width:1.1875rem;}.global-search kbd{display:none;}.topbar{gap:0.625rem;min-height:4.125rem;}.global-search{margin-left:auto;}.attention-summary{padding:0.8125rem;align-items:flex-start;}.attention-summary .card-link{font-size:0.6875rem;}.dashboard-toolbar>.muted{max-width:55%;}.page-heading h1{font-size:1.65rem;}.music-next,.music-track{flex-wrap:wrap;}.music-track>.actions,.music-next>.actions{padding-left:2.3125rem;flex-basis:100%;}.effective-action{flex-wrap:wrap;}.effective-action>.stack-tight{flex-basis:65%;}.effective-action .btn{margin-left:auto;}}
@media(max-width:540px){.wizard-steps{gap:0.25rem;margin-bottom:1.5rem;}.wizard-steps li{font-size:0.5625rem;gap:0.5rem;}.wizard-number{width:1.625rem;height:1.625rem;font-size:0.625rem;}.wizard-body{min-height:20rem;}.wizard-body .detail-list{grid-template-columns:1fr;}.wizard-body .detail-list dd{margin-bottom:0.8125rem;}.now-playing-main{grid-template-columns:1fr;text-align:center;gap:1.5625rem;padding-top:0;}.music-artwork{width:11.875rem;margin:auto;}.now-playing-copy{align-items:center;}.music-transport{display:flex;gap:0.6875rem;}.music-stage .volume-panel{display:block;}.volume-section:first-of-type{border-right:0;border-bottom:1px solid var(--border-subtle);padding:0 0 1.25rem;}.volume-section:last-child{padding-top:1.25rem;}.music-destination .field{width:100%;}.music-secondary-actions{flex-wrap:wrap;}.music-secondary-actions>.muted{flex-basis:100%;}.metric-item{padding:1.125rem 0.875rem;}.metric-item small{font-size:0.625rem;}.metric-item dd.collecting{font-size:0.75rem;}.music-playlist-row{grid-template-columns:2.8125rem minmax(0,1fr);gap:0.75rem;}.music-playlist-row>.btn{grid-column:2;justify-self:start;min-height:2.75rem;}.activity-row time{max-width:4.5rem;font-size:0.5625rem;}.dashboard-panel,.music-panel{padding:1.125rem;}.observation-metrics{margin-top:0.9375rem;}.directory-pane>.section-header{padding:1.25rem;}.identity-pane>.workspace-tabs{display:grid;grid-template-columns:1fr 1fr;overflow:visible;}.identity-pane>.workspace-tabs .btn{white-space:normal;min-height:2.75rem;text-align:left;justify-content:flex-start;}.identity-content{padding-top:1.4375rem;}}
.identity-pane>.workspace-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;}.identity-pane>.workspace-tabs .btn{white-space:normal;justify-content:flex-start;text-align:left;}.identity-pane{scroll-margin-top:1.25rem;}@media(max-width:540px){.identity-pane>.workspace-tabs{grid-template-columns:repeat(2,minmax(0,1fr));}}
.effective-highlights{list-style:none;padding:0;margin:0;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-inset);}.effective-highlights li{padding:0.8125rem 1.0625rem;border-bottom:1px solid var(--border-subtle);font-size:0.8125rem;}.effective-highlights li:last-child{border-bottom:0;}.effective-domains>.effective-domain{margin-top:0.75rem;}.effective-action .badge{max-width:6.25rem;white-space:normal;}

/* The person editor needs reading width after the shell and directory columns.
   These state selectors also survive users-workspace.css loading afterwards. */
.users-workspace.has-selection {grid-template-columns:minmax(20rem,.8fr) minmax(0,1.6fr);}
.users-workspace.has-selection>.identity-pane {padding:0;}
.users-workspace .governance-workspace {container-type:inline-size;container-name:governance-editor;}
@media(max-width:1439px){
  .users-workspace.has-selection,.users-workspace:not(.has-selection) {grid-template-columns:minmax(0,1fr);}
  .users-workspace.has-selection>.directory-pane,.users-workspace:not(.has-selection)>.identity-pane {display:none;}
  .users-workspace.has-selection>.identity-pane {display:block;}
  .users-workspace.has-selection .mobile-detail-back {display:inline-flex;min-height:2.75rem;}
}
@container governance-editor (max-width:560px){
  .profile-choices,.profile-room-choices {grid-template-columns:minmax(0,1fr);}
  .profile-impact-action {grid-template-columns:minmax(0,1fr);}
  .profile-impact {padding:0.875rem;}
  .profile-assignment>.btn,.profile-impact>.btn {width:100%;}
}
.nav-group{padding:0.375rem 0;margin-bottom:0.5rem;}.nav-group-title{padding-bottom:0.25rem;margin-bottom:0.25rem;}.nav-disclosure>summary::after{height:auto;flex:0;background:none;}.sidebar-nav{padding-top:0.75rem;}.now-playing-main{min-height:12.8125rem;padding-top:0.75rem;padding-bottom:1.25rem;}@media(max-width:540px){.music-container{gap:0.9375rem;}.music-destination-meta{font-size:0.625rem;padding-bottom:0;}.now-playing-main{display:grid;grid-template-columns:6rem minmax(0,1fr);min-height:9.125rem;gap:1rem;text-align:left;padding:0.625rem 0 1.25rem;}.music-artwork{width:6rem;gap:0.625rem;}.music-artwork .icon{width:2.125rem;height:2.125rem;}.music-artwork>span{font-size:0.375rem;letter-spacing:.4px;}.now-playing-copy{align-items:flex-start;gap:0.5rem;}.now-playing-copy>.eyebrow{display:none;}.now-playing-copy h3{font-size:0.9375rem;line-height:1.35;}.now-playing-copy .muted{font-size:0.6875rem;}.music-transport{padding-top:0.875rem;}.music-repeat-control{padding-top:0!important;}.music-panel>.field-hint{font-size:0.625rem;}.page-heading{margin-bottom:1.0625rem;padding-bottom:0.875rem;}}
.topbar{position:relative;}.environment-badge{font-size:0.5625rem;white-space:nowrap;color:var(--text-muted);padding:0.25rem 0.4375rem;border:1px solid var(--border-subtle);border-radius:0.1875rem;}.environment-short{display:none;}@media(max-width:760px){.environment-badge{position:absolute;left:3.875rem;top:50%;transform:translateY(-50%);font-size:0.5rem;padding:0.1875rem 0.3125rem;}.environment-full{display:none;}.environment-short{display:inline;}}

/* Public sign-in uses the same safe-area and editable-field rules as the app. */
@media(max-width:1199px){
 .login-page{padding-top:max(1.5rem,env(safe-area-inset-top,0px));padding-right:max(1rem,env(safe-area-inset-right,0px));padding-bottom:max(1.5rem,env(safe-area-inset-bottom,0px));padding-left:max(1rem,env(safe-area-inset-left,0px))}
 .login-page :is(input,select,textarea){font-size:1rem}
 .login-page .login-theme{top:max(1rem,env(safe-area-inset-top,0px));right:max(1rem,env(safe-area-inset-right,0px))}
}
