/* Workspace chrome uses the same controls and typography as the Gesora library. */
:root { --workspace-sidebar-width: 264px; --workspace-inset: 20px; --workspace-header-height: 88px; --workspace-surface: rgb(255 255 255 / 85%); --workspace-hover: #edf4ff; --workspace-border: #d8e5f5; --workspace-link: #245fd6; }
.production .workspace-shell { min-height: 100vh; isolation: isolate; background: radial-gradient(ellipse at 0 0, color-mix(in srgb, var(--brand) 21%, transparent), transparent 58%), radial-gradient(ellipse at 100% 70%, #e3f1ff80, transparent 55%), linear-gradient(115deg, #eaf4ff, #f4f8fc 72%); background-attachment: fixed; }
.production .workspace-shell::before { content: ''; position: fixed; inset: 0; width: auto; height: auto; z-index: -1; pointer-events: none; border: 0; border-radius: 0; transform: none; background: url('/assets/workspace-contours.svg') center top / 100% 100% no-repeat; }
.production .workspace-shell > .app-sidebar { position: fixed; inset: var(--workspace-inset) auto var(--workspace-inset) var(--workspace-inset); z-index: 60; width: var(--workspace-sidebar-width); padding: 0; border: 1px solid #cfdef1cc; border-radius: 28px; background: linear-gradient(155deg, rgb(247 252 255 / 75%), rgb(233 245 255 / 75%)); box-shadow: 0 18px 50px -20px #285b9840, 0 3px 12px #3765950a, inset 0 1px 1px #fff, inset -1px 0 0 #ffffff85; backdrop-filter: blur(12px) saturate(125%); -webkit-backdrop-filter: blur(12px) saturate(125%); overflow: hidden; transition: transform .2s ease; }
.workspace-sidebar-top { display: flex; align-items: center; justify-content: center; flex: none; height: 108px; min-height: 108px; padding: 22px; gap: 10px; }
.workspace-sidebar-top .sidebar-brand { display: block; min-width: 0; padding: 0; }
.workspace-sidebar-top .sidebar-brand > .tenant-brand { max-width: 100%; margin: 0; gap: 4px; }
.workspace-sidebar-top .logo { gap: 8px; padding: 0; font-size: 29px; letter-spacing: -1.7px; }
.workspace-sidebar-top .logo-mark { width: 34px; height: 34px; border-radius: 11px; }
.workspace-sidebar-top .tenant-brand-image { width: 170px; max-height: 45px; object-position: center; }
.workspace-sidebar-top .powered-by { font-size: 7px; }
.workspace-sidebar-top .gesora-wordmark { font-size: 10px; }
.workspace-sidebar-top .tenant-brand-fallback { gap: 7px; }
.workspace-sidebar-top .tenant-brand-fallback strong { font-size: 15px; letter-spacing: -.4px; }
.workspace-sidebar-top .tenant-brand-monogram { width: 28px; height: 28px; font-size: 9px; border-radius: 8px; }
.workspace-shell .app-sidebar > nav { padding: 4px 16px 24px; flex: 1; min-height: 0; overflow-x: hidden; overflow-y: auto; scrollbar-width: thin; scrollbar-color: var(--line) transparent; }
.workspace-shell .sidebar-label { padding-inline: 12px; margin-top: 21px; margin-bottom: 9px; font-size: 10px; letter-spacing: .5px; }
.workspace-shell .sidebar-label:first-child { margin-top: 8px; }
.workspace-shell :is(.nav-link, .nav-toggle) { min-height: 43px; padding: 11px 13px; margin: 5px 0; gap: 11px; border-radius: 13px; color: #597494; font-size: 12px; line-height: 1.45; transition: color .15s, background .15s, box-shadow .15s; }
.workspace-shell .app-sidebar .nav-toggle { cursor: pointer; }
.workspace-shell :is(.nav-link, .nav-toggle) > svg:first-child { width: 18px; height: 18px; }
.workspace-shell .nav-link.active { color: #fff; background: linear-gradient(115deg, var(--workspace-active-color, #246bfe), color-mix(in srgb, var(--workspace-active-color, #246bfe) 92%, #102b58)); box-shadow: 0 5px 15px -5px color-mix(in srgb, var(--brand) 50%, transparent), inset 0 1px 1px #ffffff75; font-weight: 600; }
.workspace-shell .nav-link.active::before { display: none; }
.workspace-shell .subnav { margin-left: 20px; padding-left: 10px; border-color: var(--workspace-border); }
.workspace-shell .subnav .nav-link { font-size: 10px; padding: 8px 10px; min-height: 34px; }
.workspace-shell .registry-menu > summary > svg:last-child { margin-left: auto; width: 13px; height: 13px; }
.workspace-shell .fiscal-nav-group { margin: 14px 0; padding: 3px; border: 1px solid color-mix(in srgb, var(--brand) 25%, var(--workspace-border)); border-radius: 17px; background: linear-gradient(125deg, color-mix(in srgb, var(--brand) 8%, var(--workspace-surface)), var(--workspace-surface)); }
.workspace-shell .fiscal-nav-group > .nav-toggle { margin: 0; padding-inline: 9px; color: var(--workspace-link); font-weight: 600; }
.workspace-shell .fiscal-nav-group.has-active { border-color: color-mix(in srgb, var(--brand) 50%, var(--workspace-border)); box-shadow: 0 4px 14px -10px color-mix(in srgb, var(--brand) 50%, transparent); }
.workspace-shell .fiscal-nav-group > .subnav { margin: 4px 4px 7px 17px; padding-left: 7px; }
.workspace-shell .fiscal-nav-group .subnav .nav-link { gap: 8px; }
.workspace-shell .fiscal-nav-group > .nav-toggle:focus-visible { outline: 2px solid var(--workspace-link); outline-offset: 3px; }
.production .workspace-shell > .workspace-topbar { position: fixed; inset: 0 0 auto; z-index: 40; width: auto; min-width: 0; max-width: none; height: var(--workspace-header-height); margin: 0; padding: 0 26px 0 calc(var(--workspace-sidebar-width) + var(--workspace-inset) * 2 + 20px); display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid #cfdef1b3; background: rgb(247 251 255 / 85%); box-shadow: 0 8px 30px -12px #41618b26, inset 0 1px 0 #ffffffb3; backdrop-filter: blur(18px) saturate(125%); -webkit-backdrop-filter: blur(18px) saturate(125%); }
.workspace-context-row { min-width: 0; display: flex; align-items: center; gap: 12px; }
.workspace-context { min-width: 70px; max-width: 210px; }
.workspace-context-label { display: block; color: var(--muted); font-size: 9px; line-height: 1.5; white-space: nowrap; }
.workspace-context > strong { display: block; margin-top: 2px; color: var(--ink); font-size: 13px; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.workspace-header-actions { display: flex; align-items: center; gap: 12px; flex: none; }
.workspace-icon-button { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 36px; height: 36px; padding: 0; border: 1px solid transparent; border-radius: 9px; background: transparent; color: #65768c; }
.workspace-sidebar-close { display: none; }
.workspace-topbar .mobile-menu { display: none; }
.workspace-view-as, .workspace-exit-view { display: inline-flex; align-items: center; justify-content: center; flex: none; gap: 7px; min-height: 40px; padding: 9px 12px; background: #ffffff66; color: #596e89; border: 1px solid var(--workspace-border); border-radius: 13px; font-size: 11px; white-space: nowrap; }
.workspace-view-as > svg:last-child { transform: rotate(90deg); }
.workspace-exit-view { border-color: #d8e4f5; color: var(--workspace-link); background: color-mix(in srgb, var(--brand) 5%, transparent); }
.workspace-search-trigger { display: flex; align-items: center; gap: 10px; min-width: 176px; min-height: 44px; padding: 9px 12px; border: 1px solid var(--workspace-border); border-radius: 15px; background: color-mix(in srgb, var(--workspace-surface) 60%, transparent); color: #6b7d96; font-size: 12px; text-align: left; box-shadow: inset 0 1px 0 #ffffff80; }
.workspace-search-trigger kbd { margin-left: auto; padding: 1px 5px; color: #7c8ca3; background: color-mix(in srgb, var(--workspace-hover) 65%, transparent); border: 1px solid var(--workspace-border); border-radius: 4px; font-family: inherit; font-size: 9px; }
.workspace-theme-switch { display: flex; align-items: center; gap: 2px; flex: none; padding: 4px; border: 1px solid var(--workspace-border); border-radius: 14px; background: color-mix(in srgb, var(--workspace-hover) 50%, transparent); }
.workspace-theme-switch > button { display: grid; place-items: center; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 10px; background: transparent; color: #7b8ba1; }
.workspace-theme-switch > button[aria-pressed="true"] { color: var(--ink); background: var(--workspace-surface); box-shadow: 0 1px 4px #172c4914; }
.workspace-notifications-trigger { position: relative; width: 42px; height: 42px; border-radius: 14px; border-color: var(--workspace-border); background: #ffffff70; }
.workspace-unread-count { position: absolute; right: -2px; top: -2px; display: grid; place-items: center; min-width: 17px; height: 17px; padding: 0 4px; border: 2px solid var(--workspace-surface); border-radius: 9px; background: #dc4356; color: #fff; font-size: 8px; font-weight: 700; }
.workspace-user-control { position: relative; min-width: 0; }
.workspace-user-trigger { display: flex; align-items: center; gap: 10px; padding: 7px 11px 7px 7px; min-height: 54px; border: 1px solid #dae5f5; border-radius: 18px; background: rgb(255 255 255 / 60%); box-shadow: inset 0 1px 0 #fff, 0 3px 12px #294d7e04; text-align: left; color: var(--muted); transition: background .15s, border-color .15s, box-shadow .15s; }
.workspace-user-trigger .avatar, .workspace-user-menu-identity .avatar { width: 38px; height: 38px; flex: none; border-radius: 13px; color: color-mix(in srgb, var(--brand) 65%, #183453); background: color-mix(in srgb, var(--brand) 10%, #f0f4fb); font-size: 12px; }
.workspace-avatar { overflow: hidden; }
.workspace-avatar > img { width: 100%; height: 100%; object-fit: cover; }
.workspace-user-copy { display: block; min-width: 0; max-width: 170px; }
.workspace-user-copy strong, .workspace-user-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.workspace-user-copy strong { color: var(--ink); font-size: 12px; font-weight: 600; }
.workspace-user-copy small { color: var(--muted); font-size: 10px; margin-top: 2px; }
.workspace-user-trigger > svg:last-child { transform: rotate(90deg); }
.workspace-user-menu { position: absolute; z-index: 90; top: calc(100% + 13px); right: 0; width: 292px; max-width: calc(100vw - 28px); padding: 10px; border: 1px solid var(--workspace-border); border-radius: 24px; background: rgb(255 255 255 / 96%); color: var(--ink); backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); box-shadow: 0 22px 55px -12px #23365340, inset 0 1px 0 #fff; }
.workspace-user-menu-identity { display: flex; align-items: center; gap: 12px; padding: 13px 12px 18px; margin-bottom: 7px; border-bottom: 1px solid var(--workspace-border); }
.workspace-user-menu-copy { min-width: 0; }
.workspace-user-menu-copy strong, .workspace-user-menu-copy span { display: block; overflow-wrap: anywhere; }
.workspace-user-menu-copy strong { font-size: 12px; }
.workspace-user-menu-copy span { margin-top: 3px; font-size: 10px; color: var(--muted); }
.workspace-user-menu > button { width: 100%; display: flex; align-items: center; gap: 12px; min-height: 44px; padding: 11px 13px; color: var(--ink); background: transparent; border: 0; border-radius: 13px; text-align: left; font-size: 12px; }
.workspace-user-menu > .workspace-menu-logout { color: #b43e52; }
.workspace-menu-separator { height: 1px; margin: 5px 8px; background: var(--workspace-border); }
.production .workspace-shell > .app-content { width: auto; max-width: none; min-height: calc(100vh - 89px); margin-left: calc(var(--workspace-sidebar-width) + var(--workspace-inset) * 2); padding: calc(var(--workspace-header-height) + 32px) 32px 40px; }
.workspace-shell > .platform-footer { position: relative; margin: 0 32px 0 calc(var(--workspace-sidebar-width) + var(--workspace-inset) * 2 + 32px); padding: 22px 0 27px; }
/* Center within the content viewport, not across the fixed sidebar/header. */
.production .workspace-shell > .app-content:has(> .regulation-loading) { display: grid; min-height: 100vh; min-height: 100dvh; padding-block: calc(var(--workspace-header-height) + 24px) 24px; }
.workspace-shell:has(> .app-content > .regulation-loading) > .platform-footer { display: none; }
.workspace-shell .regulation-loading { display: grid; place-items: center; min-width: 0; padding: 24px 0; }
.regulation-loading-content { width: min(100%, 620px); padding: 36px 30px; text-align: center; border: 1px solid rgb(255 255 255 / 80%); border-radius: 26px; background: rgb(255 255 255 / 75%); box-shadow: 0 16px 40px -22px #285b9840, inset 0 1px 0 #fff; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.regulation-loading .loading-ring { width: 36px; height: 36px; margin: 0 auto 22px; }
.regulation-loading-message { margin: 0; color: var(--ink); font-size: 16px; font-weight: 500; line-height: 1.6; text-wrap: balance; }
.regulation-loading-tasks { display: grid; gap: 6px; margin: 14px 0 0; padding: 0; list-style: none; font-size: 12px; line-height: 1.6; color: var(--muted); }
.regulation-loading-tasks[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) { .workspace-shell .regulation-loading .loading-ring { animation: none; } }
.workspace-shell :is(.card, .metric) { background: var(--workspace-surface); border-color: var(--workspace-border); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.workspace-shell .card { box-shadow: 0 3px 18px #243b5806; }
.workspace-shell .page-head { margin-bottom: 26px; }
.workspace-shell .page-head h1 { font-size: 28px; letter-spacing: -.8px; }
.workspace-shell .page-head .kicker { letter-spacing: 1.15px; }
.workspace-shell .page-head p { font-size: 12px; }
@media (hover: hover) and (pointer: fine) {
 .workspace-shell :is(.nav-link:not(.active), .nav-toggle):hover { color: var(--ink); background: var(--workspace-hover); }
 .workspace-icon-button:hover, .workspace-user-trigger:hover, .workspace-user-menu > button:hover, .workspace-theme-switch > button:hover { color: var(--ink); background: var(--workspace-hover); }
 .workspace-search-trigger:hover, .workspace-view-as:hover, .workspace-exit-view:hover { color: var(--ink); background: var(--workspace-hover); border-color: color-mix(in srgb, var(--brand) 25%, var(--workspace-border)); }
}
@media (min-width: 851px) and (max-width: 1450px) {
 .workspace-view-as > span, .workspace-exit-view > span { display: none; }
 .workspace-context { max-width: 175px; }
}
@media (max-width: 1250px) {
 .workspace-user-copy { display: none; }
 .workspace-user-trigger > svg:last-child { display: none; }
 .production .workspace-shell > .workspace-topbar { gap: 18px; padding-right: 22px; padding-left: calc(var(--workspace-sidebar-width) + var(--workspace-inset) * 2 + 20px); }
 .workspace-header-actions { gap: 9px; }
 .workspace-context { max-width: 175px; }
}
@media (min-width: 851px) and (max-width: 1080px) {
 .workspace-search-trigger { min-width: 36px; width: 36px; justify-content: center; padding: 7px; }
 .workspace-search-trigger > span, .workspace-search-trigger kbd, .workspace-view-as > span, .workspace-exit-view > span { display: none; }
 .workspace-context { max-width: 155px; }
 .workspace-context-row { gap: 9px; }
}
@media (max-width: 850px) {
 :root { --workspace-sidebar-width: 256px; --workspace-header-height: 114px; }
 .production .workspace-shell > .workspace-topbar { height: var(--workspace-header-height); display: grid; grid-template-columns: minmax(0, 1fr); align-content: center; gap: 8px; padding: 10px 16px; }
 .workspace-context-row { gap: 9px; }
 .workspace-topbar .mobile-menu { display: inline-flex; width: 32px; height: 32px; }
 .workspace-context { flex: 1; max-width: none; min-width: 0; }
 .workspace-context-label { font-size: 9px; }
 .workspace-context > strong { font-size: 12px; }
 .workspace-view-as, .workspace-exit-view { padding: 7px; min-height: 31px; gap: 5px; }
 .workspace-view-as > span, .workspace-exit-view > span { display: none; }
 .workspace-header-actions { gap: 9px; width: 100%; }
 .workspace-search-trigger { min-width: 0; flex: 1; height: 35px; }
 .workspace-search-trigger kbd { display: none; }
 .workspace-theme-switch { padding: 2px; }
 .workspace-theme-switch > button { width: 27px; height: 27px; }
 .workspace-user-trigger { min-height: 38px; padding: 4px; border-radius: 13px; }
 .workspace-user-trigger .avatar { width: 30px; height: 30px; font-size: 10px; }
 .workspace-header-actions > .workspace-icon-button { width: 32px; height: 34px; }
 .production .workspace-shell > .app-sidebar { inset: 12px auto 12px 12px; width: 280px; max-width: calc(100vw - 42px); transform: translateX(calc(-100% - 24px)); visibility: hidden; }
 .production .workspace-shell > .app-sidebar.open { transform: translateX(0); visibility: visible; }
 .workspace-sidebar-top { height: 90px; min-height: 90px; padding: 16px 18px; justify-content: space-between; }
 .workspace-sidebar-close { display: inline-flex; }
 .production .workspace-shell > .mobile-backdrop.visible { display: block; position: fixed; inset: 0; z-index: 50; background: rgb(12 23 42 / 35%); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }
 .production .workspace-shell > .app-content { margin-left: 0; padding: calc(var(--workspace-header-height) + 24px) 20px 32px; }
 .workspace-shell > .platform-footer { margin: 0 20px; }
 .workspace-shell .page-head h1 { font-size: 26px; }
 .workspace-user-menu { top: calc(100% + 15px); }
}
@media (max-width: 450px) {
 .production .workspace-shell > .app-content { padding-inline: 16px; }
 .workspace-shell .page-head h1 { font-size: 24px; }
 .workspace-shell .page-head p { font-size: 11px; }
}

/* Dark mode overrides fixed light surfaces without changing tenant accents. */
html[data-theme="dark"] { color-scheme: dark; --workspace-surface: rgb(19 29 45 / 85%); --workspace-hover: #223249; --workspace-border: #2b3b52; --workspace-link: #8eb8ff; --bg: #0c1422 !important; --ink: #e2eaf6 !important; --navy: #edf3ff !important; --muted: #a0aec3 !important; --line: #2b3b52 !important; --brand-soft: color-mix(in srgb, var(--brand) 18%, #142033) !important; --surface: rgb(19 29 45 / 85%); --shadow: 0 8px 30px #0003; --danger: #ff9baa; --success: #7cd9b5; --warning: #efc57c; }
html[data-theme="light"] { color-scheme: light; }
html[data-theme="dark"] .production { background: #0c1422; }
html[data-theme="dark"] .production .workspace-shell { background: radial-gradient(ellipse at 0 0, color-mix(in srgb, var(--brand) 22%, transparent), transparent 58%), linear-gradient(120deg, #111f33, #0c1422 75%); background-attachment: fixed; }
html[data-theme="dark"] .production .workspace-shell::before { opacity: .45; }
html[data-theme="dark"] .production .workspace-shell > .app-sidebar { background: linear-gradient(155deg, rgb(25 43 65 / 75%), rgb(17 33 51 / 75%)); border-color: #49658566; box-shadow: 0 20px 50px -18px #0008, inset 0 1px 1px #8da8cf30, inset -1px 0 0 #8da8cf12; }
html[data-theme="dark"] .production .workspace-shell > .workspace-topbar { background: rgb(17 31 49 / 85%); border-color: #3d567866; box-shadow: 0 8px 30px -12px #0005, inset 0 1px 0 #9fb7db12; }
html[data-theme="dark"] :is(.workspace-user-trigger, .workspace-notifications-trigger) { border-color: #3c5270; background: #1c304b80; box-shadow: inset 0 1px 0 #aec8ed12; }
html[data-theme="dark"] .workspace-user-menu { background: rgb(21 35 54 / 96%); box-shadow: 0 22px 55px -12px #0009, inset 0 1px 0 #aec8ed12; }
html[data-theme="dark"] :is(.workspace-view-as, .workspace-exit-view) { background: #1c304b80; }
html[data-theme="dark"] .workspace-shell :is(.nav-link, .nav-toggle) { color: #a4b4ca; }
html[data-theme="dark"] .workspace-shell .fiscal-nav-group > .nav-toggle { color: var(--workspace-link); }
html[data-theme="dark"] .production :is(.metric > .between > span, .metric > small, .sidebar-label) { color: var(--muted); }
html[data-theme="dark"] .workspace-shell .nav-link.active { color: #d9e8ff; background: color-mix(in srgb, var(--brand) 24%, #142033); }
html[data-theme="dark"] :is(.workspace-icon-button, .workspace-view-as, .workspace-search-trigger) { color: #afbed2; }
html[data-theme="dark"] .workspace-user-trigger .avatar { color: #dceaff; background: color-mix(in srgb, var(--brand) 22%, #263952); }
html[data-theme="dark"] .workspace-user-menu > .workspace-menu-logout { color: #ff9aaa; }
html[data-theme="dark"] .production :is(.gesora-signature, .gesora-wordmark) { color: #e5edfa; }
html[data-theme="dark"] .production .gesora-signature { --ink: #e5edfa; }
html[data-theme="dark"] .production .powered-by { color: #99a9c0; }
html[data-theme="dark"] .workspace-sidebar-top .tenant-brand-image { padding: 4px 7px; border-radius: 7px; background: #fff; }
html[data-theme="dark"] .production :is(.kicker, .mini-label) { color: color-mix(in srgb, var(--brand) 45%, #fff); }
html[data-theme="dark"] .production :is(.card, .metric, .auth-card, .repeat-row, .rc-planner, .rc-group, .rc-month-calendar, .regulation-calendar-row, .regulation-receipt-verification, .process-category-preview, .notification-analysis-excerpt) { background: var(--workspace-surface); border-color: var(--line); color: var(--ink); box-shadow: 0 3px 18px #0001; }
html[data-theme="dark"] .production :is(.table-scroll, .regulation-module .table-scroll, .regulation-module .table-scroll th) { background: #142034; border-color: var(--line); }
html[data-theme="dark"] .production :is(.table-scroll td, .table-scroll th) { border-color: var(--line); color: var(--ink); }
html[data-theme="dark"] .production .regulation-module .table-scroll td > strong { color: var(--ink); }
html[data-theme="dark"] .production :is(tbody tr:hover, .regulation-module .table-scroll tbody tr:hover) { background: #1a2940; }
html[data-theme="dark"] .production :is(.field input, .field select, .field textarea, .search-field input, .rc-year-controls input, .selection-trigger, .action-menu-trigger) { background: #142136; color: var(--ink); border-color: var(--line); box-shadow: none; }
html[data-theme="dark"] .production :is(input, textarea)::placeholder { color: #8092ac; }
html[data-theme="dark"] .production :is(.selection-trigger-icon, .control-option-icon, .tenant-icon, .metric-icon) { background: #20344e; color: #aecfff; }
html[data-theme="dark"] .production :is(.btn.secondary, .btn.ghost, .regulation-module .table-scroll .btn.ghost, .regulation-document-list a.btn) { background: #1c2c43; color: #c6daf4; border-color: #354963; }
html[data-theme="dark"] .production .btn.danger { color: #fff; background: #983047; }
html[data-theme="dark"] .production :is(.choice, .live-filter, .regulation-module .live-filter, .document-control, .readonly-section, .client-proposal-summary) { background: #132238; border-color: var(--line); }
html[data-theme="dark"] .production .choice:has(input:checked) { background: #1d3450; border-color: #6b91bc; }
html[data-theme="dark"] .production :is(dialog, .control-popup, .toast) { background: #152237; color: var(--ink); border-color: var(--line); box-shadow: 0 18px 65px #0005; }
html[data-theme="dark"] .production dialog::backdrop { background: #0207119c; backdrop-filter: blur(5px); }
html[data-theme="dark"] .production .modal-header > button[data-action="close-modal"] { color: #bdcde2; background: #26374e; border-color: #3b506c; }
html[data-theme="dark"] .production .control-popup .control-option { color: var(--ink); }
html[data-theme="dark"] .production .control-popup .control-option:is([aria-selected="true"], .is-highlighted, :focus-visible) { background: #233b59; color: #e4efff; }
html[data-theme="dark"] .production .control-popup .control-option[aria-selected="true"] .control-option-icon { background: #29486c; }
html[data-theme="dark"] .production :is(.control-option-copy small, .control-popup-heading, .control-option-group, .regulation-notification-summary, .notification-detail-analysis-note, .notification-analysis-excerpt blockquote, .notification-analysis-excerpt figcaption, .notification-detail-indicator > p, .notification-detail-indicator-label, .notification-detail-toolbar > h3, .notification-detail-information .summary dt) { color: #acbbd0; }
html[data-theme="dark"] .production :is(.notification-detail-information .summary dd, .regulation-receipt-verification .summary dd, .regulation-receipt-verification h3, .regulation-document-list .signed-evidence, .regulation-status-grid > * > strong) { color: var(--ink); }
html[data-theme="dark"] .production .notification-detail-indicator { --indicator-color: #c0d1e8; }
html[data-theme="dark"] .production .notification-detail-indicator.tone-danger { --indicator-color: #ffa3b1; }
html[data-theme="dark"] .production .notification-detail-indicator.tone-warning { --indicator-color: #ebc57e; }
html[data-theme="dark"] .production .notification-detail-indicator.tone-success { --indicator-color: #8bdab8; }
html[data-theme="dark"] .production .notification-detail-indicator.tone-info { --indicator-color: #a2c7fa; }
html[data-theme="dark"] .production :is(.badge, .badge.info) { color: #b6d4fc; background: #223957; border-color: #365173; }
html[data-theme="dark"] .production :is(.badge.success, .alert.success) { color: #98e2bc; background: #193b32; border-color: #31604e; }
html[data-theme="dark"] .production :is(.badge.warning, .alert.warning) { color: #f0ce8e; background: #3c3020; border-color: #655031; }
html[data-theme="dark"] .production :is(.badge.danger, .alert.danger) { color: #ffb0bd; background: #422735; border-color: #703e4e; }
html[data-theme="dark"] .production .alert.info { color: #b7d5ff; background: #1c3451; border-color: #365273; }
html[data-theme="dark"] .production .alert :is(p, strong) { color: inherit; }
html[data-theme="dark"] .production :is(.regulation-response-label.danger, .rc-selected-heading > p > strong) { color: #ffa2ad; }
html[data-theme="dark"] .production .regulation-response-label.success { color: #8ed8b7; }
html[data-theme="dark"] .production :is(.regulation-response-label.warning, .regulation-view-label.unviewed) { color: #e9c27f; }
html[data-theme="dark"] .production .regulation-view-label.viewed { color: #afc9ee; }
html[data-theme="dark"] .production .regulation-notifications-table tr { background: #142034; border-color: var(--line); }
html[data-theme="dark"] .production .rc-planner { --rc-line: #2b3b52; --rc-muted: #a8b7cc; --rc-blue: #aacbff; }
html[data-theme="dark"] .production :is(.rc-month:not(.is-selected), .rc-planning-note, .rc-date, .rc-required-group .rc-group-heading, .rc-required-group .rc-group-description, .rc-obligation:target) { background: #1a2b43; color: var(--ink); border-color: var(--line); }
html[data-theme="dark"] .production .rc-required-group { box-shadow: 0 0 0 3px #1a2b43; }
html[data-theme="dark"] .production .rc-day { color: #b9cde8; }
html[data-theme="dark"] .production .rc-day-due { background: #233e68; color: #cfdefa; }
html[data-theme="dark"] .production :is(.rc-day-forecast, .rc-uncertain-group .rc-group-heading > span) { background: #493922; color: #f0ce8e; }
html[data-theme="dark"] .production .rc-date-overdue { background: #422735; color: #ffb0bd; border-color: #703e4e; }
html[data-theme="dark"] .production .rc-uncertain-group .rc-group-heading { color: #e9c27f; }
html[data-theme="dark"] .production .hero { background: linear-gradient(115deg, #132847, #1e446c); color: #eef5ff; }
html[data-theme="dark"] .production .hero :is(h2, p, .kicker) { color: #e0edff; }
html[data-theme="dark"] .production .hero .btn.primary { color: #142841; background: #d8e8fd; }
@media (hover: hover) and (pointer: fine) {
 html[data-theme="dark"] .production :is(.selection-trigger, .action-menu-trigger):hover { color: #e2eeff; background: #20344f; border-color: #526f97; }
 html[data-theme="dark"] .production .control-popup .control-option:hover { background: #233b59; }
 html[data-theme="dark"] .production .btn:is(.secondary, .ghost, .back):hover { background: #2a4160; color: #edf5ff; border-color: #6586b3; }
 html[data-theme="dark"] .production .modal-header > button[data-action="close-modal"]:hover { color: #ffabba; background: #492b3b; border-color: #784354; }
}
@media (prefers-reduced-motion: reduce) {
 .production .workspace-shell > :is(.app-sidebar, .workspace-topbar, .app-content), .workspace-shell > .platform-footer, .workspace-shell :is(.nav-link, .nav-toggle) { transition: none; }
}

html[data-theme="dark"] .regulation-loading-content { background: rgb(25 43 65 / 75%); border-color: #49658566; box-shadow: 0 16px 40px -22px #0008; }

@media (max-height: 500px) {
 .production .workspace-shell > .app-content:has(> .regulation-loading) { padding-block: calc(var(--workspace-header-height) + 12px) 12px; }
 .workspace-shell .regulation-loading { padding-block: 0; }
 .regulation-loading-content { padding: 18px 20px; }
 .regulation-loading .loading-ring { width: 28px; height: 28px; margin-bottom: 12px; }
}
