@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Open+Sans:wght@400;600;700&family=IBM+Plex+Mono:wght@400;600&display=swap";:root{--cream:#f5f1e6;--cream-deep:#efe8d6;--line:#ded2b3;--ink:#1f3b4d;--ink-soft:#647079;--red:#c8313d;--red-deep:#a22530;--olive:#5b6b32;--olive-soft:#eaf0e4;--stone:#8c8474;--terracotta:#b4552e;--terracotta-soft:#f5e8df;--card:#fff}*{box-sizing:border-box}html,body{margin:0}body{background:var(--cream);color:var(--ink);min-height:100vh;font-family:Open Sans,-apple-system,Segoe UI,sans-serif}.display{font-family:Cormorant Garamond,Georgia,serif}.mono{font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace}a{color:var(--red)}a:hover{color:var(--red-deep)}#app{flex-direction:column;min-height:100vh;display:flex}.stage{flex-direction:column;flex:1;width:100%;max-width:420px;margin:0 auto;padding:20px 20px 40px;display:flex}.back-link{cursor:pointer;color:var(--ink-soft);background:0 0;border:none;align-items:center;gap:10px;margin-bottom:18px;padding:0;font-family:inherit;font-size:13px;font-weight:600;display:flex}.card{background:var(--card);border:1px solid var(--line);border-radius:4px;padding:28px 26px;box-shadow:0 1px 2px #1f3b4d0d,0 10px 24px #1f3b4d12}.pill{letter-spacing:.06em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:5px 14px;font-size:11px;font-weight:700;display:inline-flex}.pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.pill-neutral{color:var(--stone);border-color:var(--line);background:#efebe0}.pill-good{background:var(--olive-soft);color:var(--olive);border-color:#d6e0cc}.pill-warn{background:var(--terracotta-soft);color:var(--terracotta);border-color:#e8cfbc}.field{flex-direction:column;gap:6px;margin-top:18px;display:flex}.field label{letter-spacing:.08em;color:var(--stone);text-transform:uppercase;font-size:10.5px;font-weight:700}.input,textarea.input{background:var(--cream);border:1px solid var(--line);color:var(--ink);border-radius:3px;width:100%;padding:10px 12px;font-family:inherit;font-size:15px}.input:focus{outline:2px solid var(--red);outline-offset:1px}.btn{cursor:pointer;letter-spacing:.02em;border:none;border-radius:3px;width:100%;padding:13px 20px;font-family:inherit;font-size:14px;font-weight:700}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--red);color:#fbf7ec}.btn-primary:hover:not(:disabled){background:var(--red-deep)}.btn-ghost{color:var(--ink-soft);border:1px solid var(--line);background:0 0}.btn-ghost:hover:not(:disabled){border-color:var(--red);color:var(--red)}.btn-dark{background:var(--ink);color:#fbf7ec}.error-text{color:var(--red);margin-top:14px;font-size:13.5px}.muted{color:var(--ink-soft);font-size:13px}.candidate-row{border:1.5px solid var(--line);background:var(--card);cursor:pointer;border-radius:4px;align-items:center;gap:14px;padding:15px 16px;display:flex}.candidate-row.selected{border-color:var(--red);background:#fbeeec}.candidate-check{border:1.5px solid var(--line);border-radius:4px;flex:none;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.candidate-row.selected .candidate-check{background:var(--red);border-color:var(--red)}.candidate-name{font-size:14.5px;font-weight:700}.candidate-role{color:var(--ink-soft);margin-top:2px;font-size:12px}.admin-topbar{justify-content:space-between;align-items:center;width:100%;max-width:1100px;margin:0 auto;padding:22px 24px 0;display:flex}.admin-tabs{border-bottom:1px solid var(--line);gap:28px;width:100%;max-width:1100px;margin:18px auto 0;padding:0 24px;display:flex}.admin-tab{cursor:pointer;color:var(--ink-soft);background:0 0;border:none;border-bottom:2px solid #0000;padding-bottom:12px;font-family:inherit;font-size:13.5px;font-weight:600}.admin-tab.active{color:var(--red);border-color:var(--red);font-weight:700}.admin-content{width:100%;max-width:1100px;margin:0 auto;padding:26px 24px 60px}table.data-table{border-collapse:collapse;width:100%}table.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--stone);border-bottom:1px solid var(--line);padding:0 0 8px;font-size:10.5px}table.data-table td{border-bottom:1px solid #eee7d4;padding:10px 0;font-size:13.5px}.num{text-align:right;font-variant-numeric:tabular-nums}
