:root{color-scheme:light;--bg-canvas: #f6f8fb;--bg-shell: #eef2f6;--surface: #ffffff;--surface-soft: #f7f3ee;--surface-muted: #eef3f8;--text-primary: #203246;--text-secondary: #5f6c7b;--text-muted: #8b96a5;--accent-strong: #1e3a5f;--accent-soft: #dde7f2;--success-bg: #e6f4eb;--success-text: #2f6b4d;--warning-bg: #fdead7;--warning-text: #c97712;--danger-bg: #f8e7e7;--danger-text: #b85c5c;--border: #dde5ee;--shadow-soft: 0 18px 48px rgba(30, 58, 95, .08)}body{margin:0;font-family:Noto Sans SC,PingFang SC,sans-serif;background:radial-gradient(circle at top left,#fbf6ef 0,var(--bg-canvas) 42%);color:var(--text-primary)}*{box-sizing:border-box}a{color:inherit;text-decoration:none}input,select,button,textarea{font:inherit}.layout{display:grid;grid-template-columns:256px 1fr;min-height:100vh;background:var(--bg-canvas)}.sidebar{display:flex;flex-direction:column;gap:18px;padding:28px 20px 24px;background:linear-gradient(180deg,#1e3a5f,#15314b);color:#eef4fa}.sidebar h1{margin:0;font-size:24px;font-weight:600}.sidebar-eyebrow{color:#d5e2efdb}.session-card{display:grid;gap:10px;padding:16px;border-radius:18px;background:#ffffff14}.session-card label{display:grid;gap:6px;font-size:13px;color:#d5e2ef}.session-card input{background:#fffffff5;border:1px solid rgba(255,255,255,.2)}.session-meta,.session-error{margin:0;font-size:13px}.session-meta{color:#d5e2ef}.session-error{color:#ffd7d7}.nav-link{display:block;padding:11px 12px;border-radius:12px;color:#d5e2ef;transition:background-color .12s ease,color .12s ease}.nav-link.active{background:#ffffff24;color:#fff}.main{display:flex;flex-direction:column;gap:16px;padding:24px 28px 32px}.panel,.workbench-shell,.workbench-card{background:var(--surface);border:1px solid rgba(221,229,238,.75);border-radius:24px;box-shadow:var(--shadow-soft)}.panel{padding:20px}.compact-panel{padding:16px 18px}.page-header,.section-header-row,.workbench-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.page-header h2,.workbench-header h2,.section-header-row h3,.panel h2{margin:0}.page-header p,.workbench-header p,.section-header-row p,.panel p{margin:6px 0 0;color:var(--text-secondary)}.eyebrow{margin:0 0 8px;color:var(--text-muted);font-size:13px;letter-spacing:.08em;text-transform:uppercase}.grid{display:grid;gap:16px}.grid.two,.metric-grid.metric-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-page-stack{display:grid;gap:18px}.workbench-shell,.workbench-card{padding:24px}.workbench-split{display:grid;grid-template-columns:.92fr 1.08fr;gap:18px}.workbench-list-card,.workbench-detail-card{min-height:520px}.metric-grid{display:grid;gap:16px;margin-top:20px}.metric-card{display:grid;gap:8px;padding:20px;border-radius:20px;background:var(--surface-muted)}.metric-card-neutral{background:linear-gradient(135deg,#fff,#f5f8fc)}.metric-card-warning{background:linear-gradient(135deg,#fff8f0,#fdead7)}.metric-card-danger{background:linear-gradient(135deg,#fff7f7,#f8e7e7)}.metric-label{font-size:14px;color:var(--text-secondary)}.metric-value{font-size:36px;line-height:1}.metric-caption{font-size:13px;color:var(--text-muted)}.filter-chip-button,.badge-pill{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);font-size:14px;font-weight:500}.filter-chip-button.static,.badge-pill.subtle{background:var(--surface-soft)}.badge-pill.danger{background:var(--danger-bg);color:var(--danger-text)}.badge-pill{min-height:32px;padding:0 14px;font-size:12px}.chip-group{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.helper-text{margin:14px 0 0;color:var(--text-secondary)}.error-text{margin:12px 0 0;color:var(--danger-text)}.selectable-list{display:grid;gap:12px;margin-top:12px}.selectable-row{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;width:100%;padding:16px;border:1px solid var(--border);border-radius:18px;background:var(--surface);color:var(--text-primary);text-align:left}.selectable-row.active{border-color:#1e3a5f4d;background:#f7f9fc}.selectable-row strong{display:block;margin-bottom:6px;font-size:15px}.selectable-row p{margin:0;font-size:13px;color:var(--text-secondary)}.detail-stack{display:grid;gap:12px}.detail-highlight{display:grid;gap:6px;padding:16px 18px;border-radius:18px;background:var(--surface-soft)}.detail-highlight p,.detail-highlight strong{margin:0}.detail-label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.detail-actions{margin-top:18px}.empty-card{display:grid;gap:8px;padding:20px;border-radius:18px;background:var(--surface-soft);color:var(--text-secondary)}.empty-card strong{color:var(--text-primary)}.data-table{width:100%;border-collapse:collapse}.modern-table{margin-top:18px;overflow:hidden;border-radius:18px}.table-scroll-shell{width:100%;overflow-x:auto}.data-table th,.data-table td{text-align:left;padding:12px 14px;border-bottom:1px solid #edf2f7;vertical-align:top}.data-table th{color:var(--text-secondary);font-size:13px;font-weight:600}.cell-subtext{margin-top:4px;color:var(--text-secondary);font-size:12px}input,select,textarea{width:100%;margin-top:6px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--text-primary)}button{border:none;border-radius:12px;padding:11px 16px;background:var(--accent-strong);color:#fff;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.ghost-button{background:var(--surface-soft);color:var(--text-primary)}.ghost-button.ghost-danger{background:var(--danger-bg);color:var(--danger-text)}.button-group{display:flex;gap:10px;flex-wrap:wrap}.button-group.end{justify-content:flex-end}.inline-form{display:grid;gap:12px;margin-top:16px}.inline-form.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.inline-form.four-columns{grid-template-columns:repeat(4,minmax(0,1fr))}.inline-form.compact{align-items:end}.admin-filter-grid{margin-top:18px}.tabs{display:flex;gap:10px}.tab-button{background:#e8eef5;color:var(--text-primary)}.tab-button.active{background:var(--accent-strong);color:#fff}.status-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600}.status-badge.success{background:var(--success-bg);color:var(--success-text)}.status-badge.warning{background:var(--warning-bg);color:var(--warning-text)}.status-badge.danger{background:var(--danger-bg);color:var(--danger-text)}.pagination-row{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:18px}.task-list{margin:16px 0 0;padding-left:20px;display:grid;gap:10px;color:var(--text-primary)}.task-list li{line-height:1.6}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#15314b5c;display:flex;justify-content:flex-end;z-index:20}.drawer{width:min(720px,100%);height:100%;background:#f9fcff;padding:20px;overflow-y:auto;box-shadow:-16px 0 48px #1e3a5f33}.drawer-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.drawer-header h3{margin:0}.drawer-header p{margin:6px 0 0;color:var(--text-secondary)}.drawer-body{display:grid;gap:16px;margin-top:20px}.detail-block{background:#fff;border-radius:16px;padding:14px;border:1px solid var(--border)}.detail-block h4{margin:0 0 10px}.detail-block pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:SFMono-Regular,Menlo,monospace;font-size:13px}.auth-shell,.state-shell{min-height:100vh;padding:40px 28px;display:grid;align-items:center;gap:24px;grid-template-columns:1.05fr .95fr}.auth-hero,.state-card{padding:28px}.auth-hero h1,.state-card h2{margin:0}.auth-hero p,.state-card p{color:var(--text-secondary)}.auth-feature-list,.dialog-impact-list{display:grid;gap:14px;margin-top:22px}.auth-card{max-width:520px}.link-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;border-radius:12px;background:var(--accent-strong);color:#fff}.role-grid{align-items:stretch;grid-template-columns:repeat(2,minmax(0,1fr))}.role-card{min-height:220px}.role-grid-responsive{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.system-domain-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.request-review-shell{overflow:hidden}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#15314b6b;display:flex;justify-content:center;align-items:center;padding:24px;z-index:30}.dialog-card{width:min(760px,100%);max-height:min(90vh,880px);overflow-y:auto;background:#fff;border-radius:24px;padding:24px;box-shadow:var(--shadow-soft)}.dialog-header,.dialog-footer{display:grid;gap:14px}.dialog-header{grid-template-columns:1fr auto;align-items:start}.dialog-header h3{margin:0}.dialog-header p{margin:6px 0 0}.dialog-footer{margin-top:20px}@media(max-width:1200px){.workbench-split,.metric-grid.metric-grid-four,.grid.two,.inline-form.four-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:960px){.layout{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:10}.main{padding:18px}.workbench-split,.metric-grid.metric-grid-four,.grid.two,.auth-shell,.state-shell,.inline-form.three-columns,.inline-form.four-columns,.page-header,.workbench-header,.section-header-row,.pagination-row{grid-template-columns:1fr;display:grid}.dialog-header{grid-template-columns:1fr}}
