@import url("https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,600;0,9..144,800;1,9..144,400&family=JetBrains+Mono:wght@400;500;600;700&family=Inter+Tight:wght@400;500;600;700&display=swap");:root{--bg:#f4f1ea;--bg-2:#ebe6da;--bg-3:#dcd5c2;--ink:#1a1814;--ink-soft:#3d3833;--ink-mute:#75706a;--paper:#ffffff;--line:#1a1814;--line-soft:rgba(26,24,20,0.18);--accent-a:#c84b1a;--accent-b:#3d6b4f;--accent-c:#1f4f8b;--accent-d:#8b5e1f;--accent-e:#7a2342;--accent-f:#3a3960;--hi:#fde8a8;--done:#2d6a3e;--progress:#c2965d;--error:#b3261e;--shadow:4px 4px 0 0 var(--ink);--shadow-sm:2px 2px 0 0 var(--ink)}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--bg);color:var(--ink);font-family:Inter Tight,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh}body{background-image:radial-gradient(circle at 20% 0,rgba(200,75,26,.06) 0,transparent 40%),radial-gradient(circle at 90% 100%,rgba(31,79,139,.06) 0,transparent 40%)}a{color:var(--accent-c);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:14px;padding:10px 12px;background:var(--paper);border:1.5px solid var(--ink);color:var(--ink);outline:none;width:100%}input:focus,select:focus,textarea:focus{box-shadow:var(--shadow-sm)}label{font-size:10px;letter-spacing:.15em;color:var(--ink-soft);display:block;margin-bottom:6px}.btn,label{font-family:JetBrains Mono,monospace;text-transform:uppercase}.btn{display:inline-block;background:var(--ink);color:var(--bg);border:1.5px solid var(--ink);padding:10px 18px;font-size:11px;letter-spacing:.1em;font-weight:600;transition:all .15s}.btn,.btn:hover{text-decoration:none}.btn:hover{background:var(--accent-a);border-color:var(--accent-a);transform:translate(-1px,-1px);box-shadow:var(--shadow-sm)}.btn-outline{background:transparent;color:var(--ink)}.btn-outline:hover{background:var(--accent-a);color:var(--paper)}.btn-danger{background:var(--error);border-color:var(--error)}.btn-danger:hover{background:#d6342a;border-color:#d6342a}.btn-sm{padding:6px 12px;font-size:10px}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:var(--bg-2);border-right:2px solid var(--ink);padding:20px;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.sidebar h1{font-family:Fraunces,serif;font-weight:800;font-size:24px;line-height:1;letter-spacing:-.02em;margin-bottom:4px}.sidebar h1 em{font-style:italic;color:var(--accent-a);font-weight:600}.sidebar .domain{font-family:JetBrains Mono,monospace;font-size:10px;color:var(--ink-soft);letter-spacing:.05em;margin-bottom:24px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.sidebar nav a{display:block;padding:10px 12px;font-size:14px;color:var(--ink);border:1.5px solid transparent;font-weight:500}.sidebar nav a:hover{background:var(--paper);border-color:var(--line-soft);text-decoration:none}.sidebar nav a.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.sidebar .user-block{margin-top:auto;padding-top:20px;border-top:1.5px solid var(--line-soft);font-size:12px}.sidebar .user-block strong{display:block;margin-bottom:2px}.sidebar .role-pill{font-family:JetBrains Mono,monospace;font-size:9px;padding:2px 6px;background:var(--ink);color:var(--bg);letter-spacing:.1em;text-transform:uppercase;display:inline-block;margin-top:4px}main.content{padding:32px 40px 60px;max-width:1400px;width:100%}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:32px;padding-bottom:16px;border-bottom:2px solid var(--ink)}.page-header h2{font-family:Fraunces,serif;font-weight:700;font-size:36px;letter-spacing:-.02em;line-height:1}.page-header h2 em{font-style:italic;color:var(--accent-a);font-weight:600}.page-header .subtitle{font-family:Fraunces,serif;font-style:italic;font-size:16px;color:var(--ink-soft);margin-top:4px}.card{background:var(--paper);border:2px solid var(--ink);box-shadow:var(--shadow);margin-bottom:24px}.card-header{padding:18px 24px;border-bottom:2px solid var(--ink);display:flex;justify-content:space-between;align-items:center;gap:16px}.card-header h3{font-family:Fraunces,serif;font-weight:600;font-size:22px;letter-spacing:-.01em}.card-body{padding:24px}.form-grid{display:grid;grid-gap:16px;gap:16px}.form-grid.cols-2{grid-template-columns:1fr 1fr}.form-grid.cols-3{grid-template-columns:1fr 1fr 1fr}.field-error{color:var(--error);font-size:12px;margin-top:4px;font-family:JetBrains Mono,monospace}.alert{padding:12px 16px;border:1.5px solid var(--ink);background:var(--paper);margin-bottom:16px;font-size:14px}.alert-error{background:rgba(179,38,30,.08);border-color:var(--error);color:var(--error)}.alert-success{background:rgba(45,106,62,.08);border-color:var(--done);color:var(--done)}.alert-info{background:var(--bg-2)}.table-wrap{overflow-x:auto;border:1.5px solid var(--ink);background:var(--paper)}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data thead{background:var(--ink);color:var(--bg)}table.data th{padding:10px 14px;text-align:left;font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:600}table.data td{padding:10px 14px;border-bottom:1px solid var(--line-soft)}table.data tr:hover{background:var(--bg-2)}.pill{display:inline-block;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;border:1.5px solid var(--ink)}.pill.pill-done{background:var(--done);color:var(--paper);border-color:var(--done)}.pill.pill-progress{background:var(--progress);color:var(--ink)}.pill.pill-open{background:var(--paper);color:var(--ink-soft)}.pill.pill-a{background:var(--accent-a);color:var(--paper);border-color:var(--accent-a)}.pill.pill-b{background:var(--accent-b);color:var(--paper);border-color:var(--accent-b)}.pill.pill-c{background:var(--accent-c);color:var(--paper);border-color:var(--accent-c)}.pill.pill-d{background:var(--accent-d);color:var(--paper);border-color:var(--accent-d)}.pill.pill-e{background:var(--accent-e);color:var(--paper);border-color:var(--accent-e)}.pill.pill-f{background:var(--accent-f);color:var(--paper);border-color:var(--accent-f)}.pill.k-pill{padding:2px 6px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{width:100%;max-width:420px;background:var(--paper);border:2px solid var(--ink);box-shadow:var(--shadow);padding:36px}.login-card h1{font-family:Fraunces,serif;font-weight:800;font-size:36px;line-height:1;margin-bottom:4px;letter-spacing:-.02em}.login-card h1 em{color:var(--accent-a);font-style:italic;font-weight:600}.login-card .domain{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--ink-soft);margin-bottom:32px;letter-spacing:.05em}.login-card form{display:flex;flex-direction:column;gap:16px}.login-card .btn{width:100%;padding:14px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:16px;gap:16px;margin-bottom:32px}.stat-tile{background:var(--paper);border:1.5px solid var(--ink);padding:20px}.stat-tile .lab{font-family:JetBrains Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:6px}.stat-tile .val{font-family:Fraunces,serif;font-size:36px;font-weight:700;letter-spacing:-.02em;line-height:1}.stat-tile .val small{font-size:18px;color:var(--ink-soft);font-weight:400}.stat-tile .sub{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--ink-soft);margin-top:4px}.progress-rail{height:8px;background:var(--bg-2);border:1px solid var(--ink);position:relative;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--done) 0,var(--progress) 100%);transition:width .4s}.flex{display:flex}.gap-8{gap:8px}.gap-16{gap:16px}.items-center{align-items:center}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.mt-16{margin-top:16px}.text-soft{color:var(--ink-soft)}.text-mono{font-family:JetBrains Mono,monospace;font-size:11px;letter-spacing:.05em}@media (max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:none;border-bottom:2px solid var(--ink)}main.content{padding:24px 20px}.form-grid.cols-2,.form-grid.cols-3{grid-template-columns:1fr}}