:root{color-scheme:dark;--color-background: #061224;--color-background-end: #122f57;--color-surface: rgba(14, 31, 56, .92);--color-surface-strong: #0e1f38;--color-surface-soft: rgba(14, 31, 56, .78);--color-surface-hover: rgba(189, 232, 245, .14);--color-border: rgba(134, 178, 236, .34);--color-border-strong: rgba(182, 216, 255, .55);--color-text: #dceaff;--color-text-muted: #a8bdd8;--color-primary: #9bc6ff;--color-primary-end: #4988c4;--color-on-primary: #061224;--color-focus: #bde8f5;--color-danger: #ff7b86;--color-danger-soft: rgba(239, 68, 68, .14);--color-warning: #ffc15a;--color-warning-soft: rgba(245, 158, 11, .16);--color-success: #65dc91;--color-success-soft: rgba(34, 197, 94, .13);--app-background: linear-gradient(90deg, var(--color-background), var(--color-background-end));--radius-small: 10px;--radius-medium: 12px;--radius-large: 18px;--shadow-card: 0 10px 24px rgba(0, 0, 0, .24);--shadow-panel: 0 24px 52px rgba(0, 0, 0, .42);--shell-header-background: color-mix(in srgb, var(--color-background) 72%, transparent);--sidebar-width: 286px;font-family:Inter,Roboto,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{min-width:320px;color:var(--color-text);background:var(--app-background)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{color-scheme:light;--color-background: #edf5f3;--color-background-end: #f8fbfa;--color-surface: rgba(255, 255, 255, .96);--color-surface-strong: #ffffff;--color-surface-soft: rgba(244, 249, 248, .96);--color-surface-hover: rgba(0, 109, 119, .09);--color-border: rgba(24, 78, 82, .22);--color-border-strong: rgba(0, 95, 102, .46);--color-text: #17383a;--color-text-muted: #526d6f;--color-primary: #006d77;--color-primary-end: #005f66;--color-on-primary: #ffffff;--color-focus: #007f7a;--color-danger: #b42318;--color-danger-soft: rgba(180, 35, 24, .09);--color-warning: #8a4b08;--color-warning-soft: rgba(138, 75, 8, .1);--color-success: #18794e;--color-success-soft: rgba(24, 121, 78, .1);--app-background: radial-gradient(1100px 660px at 63% -28%, rgba(0, 127, 122, .1), transparent 58%), linear-gradient(90deg, var(--color-background), var(--color-background-end));--shadow-card: 0 8px 24px rgba(23, 56, 58, .1);--shadow-panel: 0 24px 52px rgba(23, 56, 58, .16);--shell-header-background: rgba(255, 255, 255, .88)}:root .admin-sidebar{background:transparent}.route-loading,.login-page,.status-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-page{position:relative}.language-picker{position:absolute;inset-block-start:18px;inset-inline-end:24px;z-index:2;display:flex;align-items:center;gap:9px;color:var(--color-text-muted);font-size:.875rem}.language-select{width:auto;min-width:170px}.login-layout{width:min(920px,100%);display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,390px);overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-large);background:var(--color-surface-strong);box-shadow:var(--shadow-panel)}.login-visual{min-height:520px;position:relative;display:flex;align-items:flex-end;padding:36px;overflow:hidden;background:var(--color-surface-soft)}.login-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,var(--color-background) 115%)}.login-visual-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.6}.login-visual-copy{position:relative;z-index:1}.login-visual-copy h2{max-width:15ch;margin:0 0 10px;font-size:clamp(26px,4vw,44px);line-height:1.05}.login-visual-copy p{max-width:42ch;margin:0;color:var(--color-text-muted)}.login-box{display:grid;align-content:center;gap:18px;padding:42px 34px}.login-brand{display:grid;justify-items:center;gap:12px;text-align:center}.login-logo{width:58px;height:62px;object-fit:contain}.login-brand h1,.login-brand p{margin:0}.login-brand p,.muted{color:var(--color-text-muted)}.form-stack,.form-grid{display:grid;gap:14px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:grid;gap:7px;min-width:0;color:var(--color-text-muted);font-size:.875rem}.field-wide{grid-column:1 / -1}.input{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--color-border);border-radius:var(--radius-medium);color:var(--color-text);background:var(--color-surface-soft)}.input:hover{border-color:var(--color-border-strong)}.button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;border:1px solid var(--color-border);border-radius:var(--radius-medium);color:var(--color-text);background:transparent;cursor:pointer}.button:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-hover)}.button.primary:hover:not(:disabled){color:var(--color-text)}.button.primary{border-color:var(--color-primary);color:var(--color-on-primary);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-end))}.button.danger{color:var(--color-danger)}.button:disabled,.input:disabled{cursor:not-allowed;opacity:.58}.button-icon{width:18px;height:18px;flex:none;fill:currentColor}.markdown-content{min-width:0;white-space:normal}.markdown-content>:first-child{margin-top:0}.markdown-content>:last-child{margin-bottom:0}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:1.1em 0 .45em;color:var(--color-text);font-size:1rem;line-height:1.3}.markdown-content p,.markdown-content blockquote,.markdown-content ul,.markdown-content ol,.markdown-content pre,.markdown-content table{margin:.7em 0}.markdown-content blockquote{padding-left:12px;border-left:3px solid var(--color-border-strong);color:var(--color-text-muted)}.markdown-content code{padding:.12em .32em;border-radius:4px;background:var(--color-surface-soft);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.9em}.markdown-content pre{max-width:100%;overflow-x:auto;padding:11px 13px;border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface-soft);white-space:pre}.markdown-content pre code{padding:0;background:transparent}.markdown-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.markdown-content th,.markdown-content td{padding:7px 9px;border:1px solid var(--color-border);text-align:left;vertical-align:top}.markdown-content th{background:var(--color-surface-soft)}.markdown-content a{color:var(--color-primary)}.structured-data{min-width:0}.structured-data-node{max-width:100%;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface-soft)}.structured-data-node summary{padding:9px 11px;cursor:pointer;overflow-wrap:anywhere;font-weight:700}.structured-data-node[open]>summary{border-bottom:1px solid var(--color-border)}.structured-data-list{display:grid;gap:8px;margin:0;padding:10px 12px 10px 32px}.structured-data-list li,.structured-data-value{min-width:0;white-space:pre-wrap;overflow-wrap:anywhere}.structured-data-list .structured-data-node{margin-top:2px;background:var(--color-surface)}.message{padding:11px 13px;border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface-soft)}.message.error{border-color:var(--color-danger);background:var(--color-danger-soft)}.message.success{border-color:var(--color-success);background:var(--color-success-soft)}.admin-shell{height:100vh;height:100dvh;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);overflow:hidden}.admin-sidebar{min-height:0;display:flex;flex-direction:column;gap:22px;padding:18px 14px;border-right:1px solid var(--color-border);background:var(--shell-header-background)}.sidebar-brand,.workspace-brand{display:flex;align-items:center;gap:11px;min-height:46px;color:var(--color-text);text-decoration:none}.sidebar-brand img,.workspace-brand img{width:42px;height:45px;object-fit:contain}.sidebar-brand strong,.workspace-brand strong{font-weight:700;line-height:1.15}.sidebar-mobile-header,.sidebar-collapsible{display:contents}.sidebar-menu-toggle{display:none}.admin-nav{display:grid;gap:8px}.sidebar-nav-link,.workspace-footer-link{min-height:42px;display:flex;align-items:center;gap:10px;width:100%;padding:0 12px;border:1px solid var(--color-border);border-radius:var(--radius-medium);color:var(--color-text);background:var(--color-surface-soft);font:inherit;text-align:left;text-decoration:none;cursor:pointer}.sidebar-nav-link:hover,.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page],.workspace-footer-link:hover,.workspace-footer-link.active,.workspace-footer-link[aria-current=page]{border-color:var(--color-border-strong);background:var(--color-surface-hover)}.sidebar-nav-link.active,.sidebar-nav-link[aria-current=page]{border-color:var(--color-border-strong)}.admin-sidebar .button-icon,.workspace-sidebar .button-icon{color:var(--color-focus)}.admin-sidebar :is(a,button):hover .button-icon,.admin-sidebar :is(a,button).active .button-icon,.admin-sidebar [aria-current=page] .button-icon,.workspace-sidebar :is(a,button):hover .button-icon,.workspace-sidebar :is(a,button).active .button-icon,.workspace-sidebar [aria-current=page] .button-icon{color:inherit}.sidebar-session{display:grid;gap:8px;margin-top:auto}.sidebar-session p{margin:0;overflow-wrap:anywhere}.admin-main{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.admin-topbar,.workspace-header{position:sticky;top:0;z-index:1;min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;border-bottom:1px solid var(--color-border);background:var(--shell-header-background)}.admin-topbar h1,.admin-topbar p,.workspace-header h1,.workspace-header p{margin:0}.admin-topbar h1,.workspace-header h1{font-size:2rem;line-height:1.2}.admin-topbar p,.workspace-header p{margin-top:3px;color:var(--color-text-muted);font-size:.82rem}.admin-content{min-height:0;padding:24px;overflow-y:auto}.workspace-shell{height:100vh;min-height:640px;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);overflow:hidden;background:var(--color-background)}.workspace-sidebar{min-height:0;display:flex;flex-direction:column;gap:22px;padding:18px 14px;border-right:1px solid var(--color-border);background:var(--color-surface-strong)}.workspace-refresh{width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:var(--radius-small);color:var(--color-text-muted);background:transparent;cursor:pointer}.workspace-refresh:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-hover)}.workspace-refresh .button-icon{width:16px;height:16px}.workspace-sidebar-footer{display:grid;gap:8px;margin-top:auto}.workspace-sidebar-footer p{margin:0;padding-inline:10px;overflow-wrap:anywhere;color:var(--color-text-muted);font-size:.78rem}.workspace-main{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.users-page{display:grid;gap:18px}.page-header,.page-actions,.toolbar,.dialog-heading,.dialog-heading-actions,.pagination,.form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.page-header h2,.page-header p,.surface h3,.dialog-heading h3,.dialog-heading p{margin:0}.page-header p,.dialog-heading p{margin-top:5px}.surface{min-width:0;display:grid;gap:15px;align-content:start;padding:18px;border:1px solid var(--color-border);border-radius:var(--radius-large);background:var(--color-surface);box-shadow:var(--shadow-card)}.toolbar h3{margin-right:auto}.toolbar .input{max-width:280px}.table-region{overflow-x:auto}.users-table{width:100%;min-width:620px;border-collapse:collapse}.users-table th,.users-table td{padding:11px 9px;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle;overflow-wrap:anywhere}.users-table th{color:var(--color-text-muted);font-size:.76rem}.users-table tbody tr{cursor:pointer}.users-table tbody tr:hover,.users-table tbody tr:focus-visible{background:var(--color-surface-hover)}.users-table tbody tr:focus-visible{outline-offset:-3px}.status-pill{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border:1px solid currentColor;border-radius:999px;font-size:.78rem}.status-pill.active{color:var(--color-success);background:var(--color-success-soft)}.status-pill.inactive{color:var(--color-warning);background:var(--color-warning-soft)}.checkbox-field{min-height:42px;display:flex;align-items:center;gap:9px;align-self:end;color:var(--color-text-muted)}.pagination p{margin:0}.status-card{width:min(520px,100%);text-align:center}.user-dialog{width:min(760px,calc(100% - 32px));max-height:calc(100vh - 32px);padding:20px;overflow:auto;border:1px solid var(--color-border);border-radius:var(--radius-large);color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-panel)}.user-dialog::backdrop{background:color-mix(in srgb,var(--color-background) 76%,transparent)}.user-dialog[open]{display:grid;gap:18px}.user-dialog>.form-stack+.form-stack{padding-top:18px;border-top:1px solid var(--color-border)}.user-role-editor,.user-role-unavailable{min-width:0}.user-role-unavailable{display:grid;gap:10px}.user-role-unavailable h3,.user-role-unavailable p{margin:0}.user-role-fieldset{min-width:0;margin:0;padding:14px;border:1px solid var(--color-border);border-radius:var(--radius-medium)}.user-role-fieldset legend{padding-inline:6px;font-weight:700}.user-role-fieldset .field-help{margin-block:0 10px}.user-role-checklist{max-height:18rem;display:grid;gap:8px;overflow:auto}.user-role-choice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;padding:7px 9px;border-radius:var(--radius-medium);background:var(--color-surface-soft);overflow-wrap:anywhere}.user-role-choice input{width:1.15rem;height:1.15rem;margin:.1rem 0 0;accent-color:var(--color-primary)}.user-assignment-id-list{margin:0;padding-inline-start:1.25rem;overflow-wrap:anywhere}.dialog-close{min-height:34px}@media(max-width:760px){.login-layout{grid-template-columns:1fr}.login-visual{min-height:210px;padding:24px}.login-box{padding:30px 22px}.admin-shell,.workspace-shell{height:auto;min-height:100vh;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);overflow:visible}.admin-sidebar,.workspace-sidebar{min-height:auto;padding-block:10px;border-right:0;border-bottom:1px solid var(--color-border)}.sidebar-mobile-header{min-width:0;display:flex;align-items:center;gap:10px}.sidebar-mobile-header .sidebar-brand,.sidebar-mobile-header .workspace-brand{min-width:0;flex:1 1 auto}.sidebar-mobile-header strong{overflow-wrap:anywhere}.sidebar-menu-toggle{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-medium);color:var(--color-text);background:var(--color-surface-soft);cursor:pointer}.sidebar-menu-toggle:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover)}.sidebar-menu-icon{position:relative;width:20px;height:14px;border-block:2px solid currentColor}.sidebar-menu-icon:after{content:"";position:absolute;inset:4px 0 auto;border-top:2px solid currentColor}.sidebar-collapsible{display:none}.sidebar-expanded .sidebar-collapsible{min-width:0;display:flex;flex-direction:column;gap:inherit}.admin-main,.workspace-main{display:block}.workspace-header{align-items:stretch;flex-direction:column}.workspace-header .landing-language-picker{width:100%;justify-content:space-between}.workspace-header .landing-language-select{width:min(240px,65%)}.admin-nav{grid-template-columns:1fr}.sidebar-session{margin-top:0}.admin-content,.admin-topbar{padding:16px}.admin-content{overflow:visible}.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}}@media(max-width:430px){.login-page{padding:0}.login-layout{min-height:100vh;border:0;border-radius:0}.language-picker{inset-block-start:12px;inset-inline-end:12px}.language-picker>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.login-visual{display:none}.page-header .button,.form-actions .button,.page-actions{width:100%}}
