:root{--brand-primary: #3a332d;--brand-ink: #221e1a;--brand-secondary: #7b6b5e;--brand-accent: #c8bfb4;--bg: #faf8f3;--text: #221e1a;--muted: #7b6b5e;--card-bg: #ffffff;--border: #e6ded2;--input-border: #d8cfc0;--row-hover: rgba(58, 51, 45, .03);--focus-ring: rgba(58, 51, 45, .18);--radius: 12px;--radius-sm: 7px;--shadow-card: 0 1px 2px rgba(34, 30, 26, .04), 0 1px 1px rgba(34, 30, 26, .03);--font-serif: "Playfair Display", Georgia, serif;--font-sans: "Inter", system-ui, sans-serif}:root[data-theme=dark]{--bg: #3a332d;--text: #faf8f3;--muted: #c8bfb4;--card-bg: #221e1a;--border: #4d443a;--input-border: #59503f;--row-hover: rgba(250, 248, 243, .035);--focus-ring: rgba(200, 191, 180, .28);--shadow-card: 0 1px 2px rgba(0, 0, 0, .16), 0 1px 1px rgba(0, 0, 0, .1)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-weight:400;font-size:14px;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;transition:background .15s ease,color .15s ease}h1,h2,h3{letter-spacing:.2px;color:var(--text)}h2{font-family:var(--font-serif);font-weight:500;font-size:25px;letter-spacing:.2px;margin:0}h3{font-family:var(--font-sans);font-weight:600;font-size:14.5px;letter-spacing:.1px;margin:0 0 4px}.page-header{margin-bottom:24px}.page-header p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.6;max-width:640px}.card-hint{margin:-2px 0 14px;color:var(--muted);font-size:12.5px;line-height:1.6;max-width:560px}label{display:block;font-size:12px;font-weight:500;color:var(--muted);letter-spacing:.15px;margin:0 0 6px}.layout{display:flex;min-height:100vh}.sidebar{width:232px;flex-shrink:0;background:var(--brand-primary);color:#faf8f3;padding:24px 14px;display:flex;flex-direction:column}.brand-mark{color:#faf8f3;opacity:.85;margin-bottom:10px;padding-left:4px}.sidebar h1{font-family:var(--font-serif);font-weight:400;font-size:21px;letter-spacing:1px;margin:0 0 2px;padding-left:4px;color:#faf8f3}.sidebar .tagline{font-size:11px;opacity:.7;margin-bottom:3px;padding-left:4px;color:#faf8f3}.sidebar .tagline-caps{font-size:9px;letter-spacing:1.3px;text-transform:uppercase;opacity:.45;margin-bottom:22px;padding-left:4px;color:#faf8f3}.nav-group-label{font-size:10px;letter-spacing:1.1px;text-transform:uppercase;opacity:.4;padding:0 12px;margin:18px 0 6px}.nav-group-label:first-of-type{margin-top:0}.sidebar a{display:flex;align-items:center;gap:9px;color:#faf8f3;text-decoration:none;padding:7px 12px;border-radius:var(--radius-sm);margin-bottom:1px;font-size:13px;font-weight:400;opacity:.72;transition:background .12s ease,opacity .12s ease}.sidebar a svg{flex-shrink:0;opacity:.9}.sidebar a:hover{background:#ffffff14;opacity:.95}.sidebar a.active{background:#ffffff24;opacity:1;font-weight:500}.sidebar-footer{margin-top:auto}.content{flex:1;padding:32px 36px;max-width:1180px}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:22px 24px;box-shadow:var(--shadow-card);margin-bottom:16px}table{width:100%;border-collapse:collapse}thead th{text-align:left;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);padding:0 10px 8px;border-bottom:1px solid var(--border)}td{text-align:left;padding:10px;border-bottom:1px solid var(--border);font-size:13.5px}tbody tr:hover{background:var(--row-hover)}tbody tr:last-child td{border-bottom:none}input,select,textarea{width:100%;padding:9px 11px;border-radius:var(--radius-sm);border:1px solid var(--input-border);margin-bottom:14px;font-size:13.5px;font-family:inherit;background:var(--card-bg);color:var(--text);transition:border-color .12s ease,box-shadow .12s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-secondary);box-shadow:0 0 0 3px var(--focus-ring)}input[readonly]{color:var(--muted);background:var(--row-hover)}input[type=file]{padding:6px 8px;font-size:12.5px}input[type=checkbox]{width:auto;margin:0}button{background:var(--brand-primary);color:#faf8f3;border:1px solid var(--brand-primary);padding:9px 18px;border-radius:var(--radius-sm);cursor:pointer;font-family:inherit;font-weight:500;font-size:13px;letter-spacing:.1px;transition:opacity .12s ease,transform .05s ease}button:hover{opacity:.88}button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:default}button.secondary{background:transparent;color:var(--text);border:1px solid var(--input-border)}button.secondary:hover{background:var(--row-hover);opacity:1;border-color:var(--brand-secondary)}.empty-state{text-align:center;padding:30px 16px;color:var(--muted)}.empty-state-title{font-size:13.5px;font-weight:500;color:var(--text);margin:0 0 4px}.empty-state-description{font-size:12.5px;line-height:1.6;margin:0 auto 14px;max-width:420px}.public-shell{max-width:560px;margin:40px auto;padding:32px}.public-shell h2{font-size:26px;letter-spacing:.4px}.progress-bar{height:5px;background:var(--border);border-radius:4px;overflow:hidden;margin-bottom:24px}.progress-bar div{height:100%;background:var(--brand-secondary)}.scale-row{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:16px 0}.scale-row button{padding:10px 4px;background:var(--card-bg);color:var(--text);border:1px solid var(--input-border)}.scale-row button.selected{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.theme-toggle{display:flex;gap:4px;margin-top:18px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12)}.theme-toggle button{flex:1;background:#ffffff0f;color:#fff;border:1px solid transparent;font-size:11.5px;padding:7px;opacity:.65}.theme-toggle button.active{background:#ffffff29;opacity:1}@media (max-width: 640px){.layout{flex-direction:column}.sidebar{width:100%;padding:12px 16px;flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 8px}.brand-mark{margin:0;padding:0}.sidebar h1{font-size:18px;margin:0;padding:0}.sidebar .tagline,.sidebar .tagline-caps,.nav-group-label{display:none}.sidebar a{padding:6px 10px;margin-bottom:0}.sidebar-footer{margin-top:0}.theme-toggle{margin:0 0 0 auto;padding-top:0;border-top:none;width:auto}.content{padding:16px}.public-shell{padding:20px 16px;margin:16px auto}.public-shell h2{font-size:22px}table{display:block;overflow-x:auto;white-space:nowrap}}@media (max-width: 420px){.scale-row{grid-template-columns:repeat(4,1fr)}}
