@font-face{font-family:Montech;src:url(/fonts/montech-400.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Montech;src:url(/fonts/montech-500.ttf)format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Montech;src:url(/fonts/montech-700.ttf)format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Archivo;src:url(/fonts/archivo-100-900.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{--navy:#0d2242;--deep:#091a33;--bar:#162f55;--teal:#53c9d0;--green:#35af6f;--sky:#b7d9ff;--white:#fff;--muted:#b8c8dd;--line:#b7d9ff30;--danger:#ff8a80;--radius:10px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--deep);color:var(--white);-webkit-font-smoothing:antialiased;font:15px/1.55 Archivo,Arial,sans-serif}a{color:var(--teal)}h1,h2,h3,.display{letter-spacing:.01em;margin:0;font-family:Montech,Arial,sans-serif;font-weight:500}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--teal);font-size:11px;font-weight:700}.muted{color:var(--muted)}.error{color:var(--danger);min-height:1.4em}button,.button{font:inherit;cursor:pointer;background:var(--teal);color:#06162c;border:1px solid #0000;border-radius:999px;padding:11px 22px;font-weight:600}button.secondary{color:var(--white);border-color:var(--line);background:0 0}button.danger{color:var(--danger);background:0 0;border-color:#ff8a8066}button.link{color:var(--teal);background:0 0;border:0;padding:0;font-weight:500;text-decoration:underline}button:disabled{opacity:.5;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--teal);outline-offset:2px}input,select{font:inherit;color:var(--white);border:1px solid var(--line);background:#b7d9ff12;border-radius:8px;width:100%;padding:11px 13px}label{margin:14px 0 6px;font-size:13px;font-weight:600;display:block}.admin{min-height:100vh}.admin-bar{background:var(--navy);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:24px;padding:14px 28px;display:flex}.admin-bar .brand{letter-spacing:.06em;font-family:Montech,Arial,sans-serif;font-size:18px}.admin-bar nav{flex-wrap:wrap;gap:6px;display:flex}.admin-bar nav button{color:var(--muted);background:0 0;border:0;border-radius:8px;padding:8px 12px;font-weight:500}.admin-bar nav button[aria-current=page]{color:var(--white);background:#b7d9ff1a}.admin-bar .who{color:var(--muted);align-items:center;gap:12px;margin-left:auto;font-size:13px;display:flex}.admin-main{max-width:1280px;margin:0 auto;padding:28px}.admin-login{background:var(--navy);border:1px solid var(--line);border-radius:14px;max-width:420px;margin:10vh auto;padding:36px}.admin-login h1{margin:8px 0 6px;font-size:28px}.admin-login button{width:100%;margin-top:18px}.admin-login .qr{background:#fff;border-radius:8px;width:200px;margin:14px auto;padding:12px}.admin-login code{word-break:break-all;background:#b7d9ff14;border-radius:6px;padding:8px;font-size:12px;display:block}.tiles{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:26px;display:grid}.tile{background:var(--navy);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px}.tile .label{letter-spacing:.14em;text-transform:uppercase;color:var(--teal);font-size:11px;font-weight:700}.tile .value{font-variant-numeric:tabular-nums;margin-top:6px;font-family:Montech,Arial,sans-serif;font-size:34px}.tile .sub{color:var(--muted);font-size:12px}.meter{background:#b7d9ff1f;border-radius:3px;height:6px;margin-top:10px;overflow:hidden}.meter span{background:var(--teal);height:100%;display:block}.panels{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:14px;display:grid}.panel{background:var(--navy);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.panel h2{letter-spacing:.04em;margin-bottom:14px;font-size:16px}.bars{gap:8px;display:grid}.bar-row{grid-template-columns:200px 1fr 40px;align-items:center;gap:10px;font-size:13px;display:grid}.bar-row .track{background:#b7d9ff1a;border-radius:4px;height:8px;overflow:hidden}.bar-row .track span{background:var(--teal);height:100%;display:block}.bar-row .n{text-align:right;font-variant-numeric:tabular-nums}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.toolbar input{max-width:340px}.toolbar select{width:auto}.table-wrap{border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--navy);font-size:11px;font-weight:600}th,td{border-bottom:1px solid var(--line);vertical-align:top;padding:10px 12px}tr:last-child td{border-bottom:0}td .actions{gap:8px;display:flex}td button{padding:5px 10px;font-size:12px}.pill{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;display:inline-block}.pill.ok{color:var(--green);border-color:#35af6f80}.pill.warn{color:#ffcf70;border-color:#ffcf7080}.pill.bad{color:var(--danger);border-color:#ff8a8080}.notice{border-radius:var(--radius);background:#53c9d01a;border:1px solid #53c9d066;margin-bottom:18px;padding:14px 16px}.notice code{letter-spacing:.12em;font-size:22px}.error-notice{color:#ffd0cb;background:#ff8a801a;border-color:#ff8a8080}.toast-ok{z-index:50;color:#fff;border:1px solid var(--green);background:#1f7a4d;border-radius:10px;max-width:440px;padding:14px 18px;font-weight:600;animation:.2s ease-out toast-in;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 32px #0006}.toast-ok span{margin-right:6px}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.edit-panel{margin-bottom:18px}.edit-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 16px;display:grid}.edit-interests{flex-wrap:wrap;gap:2px 18px;display:flex}label.check{align-items:center;gap:8px;margin:6px 0;font-weight:400;display:flex}label.check input{width:auto}.doc{max-width:760px;margin:0 auto;padding:48px 24px 80px}.doc h1{margin:10px 0 24px;font-size:34px}.doc h2{margin:30px 0 8px;font-size:18px}.doc p,.doc li{color:#d8e3f0}@media (max-width:700px){.admin-main{padding:18px 14px}.bar-row{grid-template-columns:120px 1fr 32px}}
