@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--navy:#0c2345;--navy2:#13345d;--orange:#ff8b35;--ink:#152943;--muted:#68778a;--line:#e3e9f1;--bg:#f5f7fb;--white:#fff;--green:#16845b;--red:#cc4453}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}.top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px max(22px,calc((100vw - 1180px)/2));background:var(--navy);color:#fff;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff}.brand strong,.brand small{display:block}.brand strong{font:700 19px Outfit}.brand small{font-size:10px;letter-spacing:2px;color:#a8c3df}.brand-mark{display:grid;place-items:center;background:#ff8b35;border-radius:12px;width:42px;height:42px;color:var(--navy);font:800 17px Outfit}.brand-mark span{font-size:12px}nav{display:flex;flex-wrap:wrap;gap:4px}nav button,.top .auth-btn{background:transparent;border:0;color:#dbe7f4;padding:10px 12px;border-radius:9px}nav button.active,nav button:hover{background:#26476e;color:#fff}.top .auth-btn{border:1px solid #607591}main{max-width:1180px;margin:auto;padding:34px 22px 70px;min-height:75vh}.hero{background:radial-gradient(ellipse at 80% 0%,#345f86 0%,transparent 52%),linear-gradient(125deg,#0c2345,#17385f);border-radius:24px;padding:54px 52px;color:white;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;right:-95px;top:-130px;width:430px;height:430px;border-radius:50%;border:65px solid rgba(255,139,53,.22);transform:rotate(25deg)}.hero>*{position:relative;z-index:1}.eyebrow{letter-spacing:2px;color:#ffac63;font-weight:700;font-size:12px}.hero h1{font:800 clamp(38px,6vw,73px)/.99 Outfit;margin:20px 0;max-width:660px}.hero p{font-size:17px;color:#d8e4ef;line-height:1.7;max-width:540px}.buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.btn{background:var(--orange);color:#15283e;padding:12px 18px;border-radius:11px;border:0;font-weight:800}.btn:hover{filter:brightness(.96)}.btn.secondary{background:#fff;color:var(--navy)}.btn.outline{background:transparent;border:1px solid #b9c8da;color:inherit}.btn:disabled{opacity:.45;cursor:not-allowed}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0}.stat,.card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:22px}.stat strong{font:800 35px Outfit;display:block}.stat span{color:var(--muted);font-size:13px}.section-title{font:700 30px Outfit;margin:33px 0 15px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.card h3{font:700 21px Outfit;margin:7px 0}.card p{line-height:1.6;color:var(--muted);margin:5px 0}.number{display:inline-grid;place-items:center;background:#fff0e5;color:#c96412;border-radius:12px;width:36px;height:36px;font-weight:800}.tag{display:inline-block;border-radius:50px;background:#e6eff9;color:#234f79;font-size:12px;font-weight:800;padding:6px 11px}.tag.orange{background:#fff1e3;color:#b9580b}.intro{color:var(--muted);line-height:1.6}.panel{max-width:490px;margin:35px auto}.panel h1,.head h1{font:800 35px Outfit;margin:8px 0}.field{display:block;margin:15px 0;font-weight:700;font-size:13px}.field input,.field select{display:block;width:100%;margin-top:7px;border:1px solid #cbd6e3;padding:12px 13px;border-radius:10px;background:#fff;color:var(--ink)}.field input:focus,.field select:focus{outline:2px solid #ffad6d;border-color:#ffad6d}.notice{padding:13px;border-radius:11px;background:#fff3e7;color:#84470d;font-size:13px;line-height:1.5;margin:15px 0}.danger-notice{background:#fff0f0;color:#962e3c}.muted{color:var(--muted)}.head{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:22px}.candidates{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.candidate{display:flex;gap:12px;align-items:center;text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px;width:100%;color:var(--ink);min-height:77px}.candidate:hover{border-color:#97b0cb}.candidate.selected{background:#e9f1fd;border:2px solid #2d6397;padding:12px}.candidate.jolly{background:#fff1e4;border:2px solid #ff8b35;padding:12px}.avatar{width:42px;height:42px;flex-shrink:0;display:grid;place-items:center;border-radius:12px;background:#e8edf4;color:#41627f;font-weight:800}.candidate small{display:block;color:var(--muted);margin-top:4px}.tabs{display:flex;gap:6px;background:#e8edf4;padding:5px;border-radius:12px;width:max-content;margin-bottom:15px}.tabs button{border:0;background:transparent;padding:11px 20px;border-radius:9px;font-weight:700;color:#586a80}.tabs button.active{background:#fff;color:#16375a;box-shadow:0 1px 5px #bbb6}.summary{margin-top:22px;background:#112c50;color:white;padding:20px;border-radius:15px}.summary h3{margin-top:0}.summary p{color:#e1eaf6;line-height:1.6}.bar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:15px}table{border-collapse:collapse;width:100%}td,th{padding:14px 15px;border-bottom:1px solid #e9edf3;text-align:left}th{background:#edf2f7;font-size:12px;text-transform:uppercase;letter-spacing:.4px}tr:last-child td{border-bottom:0}.positive{color:var(--green);font-weight:800}.negative{color:var(--red);font-weight:800}.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.admin-grid .stat{padding:17px}.admin-tabs{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0}.admin-tabs button{border:1px solid #d0dbe6;background:#fff;border-radius:10px;padding:11px 14px;font-weight:700}.admin-tabs button.active{background:var(--navy);color:#fff}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row input{flex:1;min-width:160px}.mini{font-size:12px}.full{width:100%}.item-row{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;border-bottom:1px solid #edf0f5;padding:11px 0}.item-row:last-child{border:0}.item-row input{width:100%;padding:10px;border:1px solid #cbd6e3;border-radius:9px}.badge{color:#f3a250;font-weight:800}footer{background:var(--navy);color:#d3e0ee;padding:20px max(22px,calc((100vw - 1180px)/2));font-size:12px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}#toast{position:fixed;bottom:25px;right:24px;background:#173a61;color:white;padding:14px 20px;border-radius:11px;box-shadow:0 8px 30px #15294344;opacity:0;pointer-events:none;transition:.2s;z-index:5}#toast.show{opacity:1}@media(max-width:800px){.top{justify-content:center}nav{order:3;width:100%;justify-content:center}.hero{padding:34px 25px}.candidates{grid-template-columns:repeat(2,1fr)}.grid3,.admin-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:530px){main{padding:20px 13px 50px}.top{padding:12px}.brand strong{font-size:16px}nav button{padding:7px 8px;font-size:12px}.hero h1{font-size:42px}.grid2,.grid3,.candidates{grid-template-columns:1fr}.stats{gap:7px}.stat{padding:13px}.stat strong{font-size:28px}.tabs{width:100%}.tabs button{flex:1}.admin-grid{grid-template-columns:repeat(2,1fr)}}

[hidden]{display:none!important}
