@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap');
:root{--bg:#061119;--panel:#0b1c25;--panel2:#102832;--line:#28515a;--cyan:#63dce4;--ice:#d8e9e9;--gold:#b99a62;--muted:#81969b;--red:#e15c5c;--orange:#e39a48;--violet:#a18be0}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% -20%,#17414b 0,#07141c 48%,#040b10 100%);color:var(--ice);font-family:Inter,Arial,sans-serif;min-height:100vh}.ambient{position:fixed;inset:0;pointer-events:none;opacity:.14;background:repeating-linear-gradient(115deg,transparent 0 80px,#4a9ba3 81px,transparent 82px 160px);mask-image:linear-gradient(to bottom,black,transparent 75%)}
.topbar{height:86px;padding:0 clamp(18px,4vw,64px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #31545b;background:#061119eF;position:sticky;top:0;z-index:5;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-mark{font-size:36px;color:var(--cyan);text-shadow:0 0 18px #4ddce6}.brand strong{display:block;font:700 19px Cinzel,serif;letter-spacing:2px}.brand strong span{color:var(--cyan)}.brand small{display:block;color:var(--gold);font-size:8px;letter-spacing:2px;margin-top:4px}.topbar nav{display:flex;gap:30px}.topbar nav a,.admin-open{font-size:10px;letter-spacing:1.5px;text-decoration:none;color:#a9bec0;font-weight:700}.topbar nav a.active,.topbar nav a:hover{color:var(--cyan)}.admin-open{border:1px solid var(--gold);padding:12px 16px;background:#10232b;color:var(--ice);cursor:pointer}.admin-open span{color:var(--cyan);margin-left:8px}
main{max-width:1600px;margin:auto;padding:30px clamp(14px,3vw,42px) 18px}.hero-strip{display:flex;align-items:center;justify-content:space-between;margin:0 0 22px;padding:8px 4px}.eyebrow{font-size:9px;letter-spacing:2.5px;color:var(--gold);font-weight:700}.hero-strip h1{font:600 clamp(26px,3vw,42px) Cinzel,serif;letter-spacing:2px;margin:8px 0 4px}.hero-strip h1 em{font-style:normal;color:var(--cyan)}.hero-strip p{color:var(--muted);font-size:12px;margin:0}.live-state{display:grid;grid-template-columns:10px auto auto;align-items:center;gap:9px;border:1px solid var(--line);padding:12px 16px;background:#0b2029}.live-state i{width:7px;height:7px;background:#68d5b2;border-radius:50%;box-shadow:0 0 12px #68d5b2}.live-state span{font-size:9px;letter-spacing:1.5px;color:#9bb4b5}.live-state b{font:600 22px Cinzel;color:var(--cyan);padding-left:15px;border-left:1px solid var(--line)}.live-state small{grid-column:2/4;color:var(--muted);font-size:8px;letter-spacing:1.5px}
.dashboard-grid{display:grid;grid-template-columns:230px minmax(420px,1fr) 290px;gap:12px}.panel{background:linear-gradient(145deg,#0e242d,#08161e 75%);border:1px solid #315a62;box-shadow:0 12px 35px #0005,inset 0 0 22px #58b9c50a;min-width:0}.panel-heading{height:43px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #284c55;color:var(--gold);font:600 10px Cinzel,serif;letter-spacing:1.3px}.ornament{font-size:18px;color:var(--cyan)}.panel-heading a{color:var(--cyan);font:700 9px Inter;text-decoration:none}.status-visual{display:grid;place-items:center;padding:23px 0 17px}.ring{width:150px;height:150px;border-radius:50%;padding:9px;background:conic-gradient(from 220deg,var(--cyan),#4c9c9d 35%,var(--gold) 62%,var(--orange) 78%,var(--red) 88%,#18343d 88%);box-shadow:0 0 24px #3dd2dc25}.ring-inner{height:100%;border-radius:50%;background:#0b1b23;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #315a62}.ring-inner small{font-size:8px;letter-spacing:1.4px;color:var(--muted)}.ring-inner strong{font:600 38px Cinzel;color:var(--ice)}.status-rows{padding:0 15px}.status-rows div{display:flex;align-items:center;gap:9px;border-top:1px solid #1d3941;padding:10px 0;font-size:10px;color:#c4d4d4}.status-rows b{margin-left:auto;color:var(--cyan)}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex:none}.red{background:var(--red);box-shadow:0 0 8px #e15c5c}.orange{background:var(--orange)}.gold{background:var(--gold)}.cyan{background:var(--cyan);box-shadow:0 0 8px #63dce4}.violet{background:var(--violet)}.panel-note{font-size:9px;line-height:1.5;color:var(--muted);padding:0 15px 13px}
.map-panel{overflow:hidden}.map-tools{font:700 8px Inter;color:var(--muted);letter-spacing:1px}.map-tools b{color:var(--cyan);margin-left:7px}.map-wrap{position:relative;background:#071923}.world{width:100%;height:auto;display:block;min-height:300px}.land{filter:drop-shadow(0 0 4px #54c7d0)}.map-marker{cursor:pointer;filter:url(#glow)}.map-marker circle{stroke:#07141b;stroke-width:2}.map-marker text{font:700 9px Inter;fill:#fff;text-anchor:middle;dominant-baseline:central;pointer-events:none}.map-marker:hover circle{stroke:#fff;stroke-width:3}.map-legend{display:flex;flex-wrap:wrap;gap:13px;padding:10px 14px;border-top:1px solid #21434d;background:#091b23}.map-legend span{font-size:8px;letter-spacing:.7px;color:#9bb1b3;display:flex;align-items:center;gap:6px}.map-caption{position:absolute;right:12px;bottom:48px;font-size:7px;letter-spacing:1px;color:#8ba7a9;background:#06151ccc;padding:5px}
.latest-list{padding:0 14px}.latest-item{display:grid;grid-template-columns:5px 1fr;gap:10px;padding:15px 0;border-bottom:1px solid #1e3b44}.latest-item:last-child{border:0}.latest-item .bar{border-radius:4px}.latest-item small{display:flex;justify-content:space-between;color:var(--muted);font-size:8px;letter-spacing:.8px}.latest-item strong{display:block;font-size:11px;line-height:1.45;margin-top:6px;font-weight:600}.latest-item p{font-size:9px;color:#93a8aa;margin:5px 0 0;line-height:1.4}
.lower-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:12px;margin-top:12px}.counter{color:var(--cyan);font:700 9px Inter}.event-list{padding:0 14px}.event-row{display:grid;grid-template-columns:7px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #1e3b44}.event-row:last-child{border:0}.event-row .bar{height:32px;border-radius:5px}.event-row strong{display:block;font-size:10px}.event-row small{display:block;color:var(--muted);font-size:8px;margin-top:4px}.event-row time{font-size:8px;color:#9db1b2;white-space:nowrap}.empty{padding:25px;color:var(--muted);font-size:11px;text-align:center}.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:17px}.category-grid button{background:#0c2029;border:1px solid #315660;color:#b7c9c9;padding:14px 5px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:8px;transition:.2s}.category-grid button:hover,.category-grid button.selected{border-color:var(--cyan);box-shadow:0 0 15px #5ddce422;color:var(--cyan);transform:translateY(-2px)}.category-grid b{font:26px Cinzel;color:var(--cyan)}.category-grid span{font-size:8px;letter-spacing:1px;font-weight:700}footer{display:flex;justify-content:space-between;color:#647d81;font-size:8px;letter-spacing:1.4px;padding:22px 2px 5px}footer span:first-child{font:600 10px Cinzel;color:var(--gold)}
.modal{position:fixed;inset:0;z-index:10;background:#02080ddc;display:grid;place-items:center;padding:18px;backdrop-filter:blur(8px)}.hidden{display:none!important}.modal-card{width:min(520px,100%);max-height:92vh;overflow:auto;background:linear-gradient(145deg,#112b35,#07151d);border:1px solid #4b8288;box-shadow:0 20px 80px #000b;padding:24px}.modal-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:18px}.modal-head h2{font:600 23px Cinzel;margin:6px 0 0}.close{border:0;background:none;color:var(--ice);font-size:28px;cursor:pointer}.muted,.hint{color:var(--muted);font-size:10px;line-height:1.6}.hint{margin-top:12px}label{display:block;color:#b5c8c8;font-size:9px;letter-spacing:1px;text-transform:uppercase;margin:13px 0}input,select,textarea{display:block;width:100%;margin-top:7px;background:#06151d;border:1px solid #315660;color:var(--ice);padding:12px;font:12px Inter;outline:none;border-radius:0}input:focus,select:focus,textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 2px #63dce41c}textarea{resize:vertical}.primary{width:100%;background:linear-gradient(90deg,#17616a,#247e84);border:1px solid #6edce1;color:#f0ffff;padding:14px;font-size:10px;letter-spacing:1.5px;font-weight:700;cursor:pointer;margin-top:12px}.primary:hover{filter:brightness(1.15)}.editor-title{display:flex;align-items:center;justify-content:space-between}.editor-title h3{font:600 13px Cinzel;color:var(--gold)}.editor-title span{font-size:8px;color:var(--cyan)}.coords{display:grid;grid-template-columns:1fr 1fr;gap:10px}.editor-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:17px;padding-top:12px;color:var(--muted);font-size:8px;letter-spacing:1px}.editor-foot button{background:none;border:0;color:#d98787;font-size:9px;cursor:pointer}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#153a40;border:1px solid var(--cyan);color:#eaffff;padding:12px 18px;font-size:11px;opacity:0;pointer-events:none;transition:.25s;z-index:20}.toast.show{opacity:1}
@media(max-width:1050px){.dashboard-grid{grid-template-columns:200px minmax(350px,1fr)}.latest-panel{grid-column:1/-1}.latest-list{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.latest-item{border-bottom:0;border-right:1px solid #1e3b44;padding:13px 10px 13px 0}.latest-item:last-child{border:0}.topbar nav{gap:14px}}
@media(max-width:720px){.topbar{height:auto;min-height:72px;flex-wrap:wrap;padding:12px 15px;gap:12px}.topbar nav{order:3;width:100%;overflow:auto;padding:8px 0 2px;gap:22px}.topbar nav a{white-space:nowrap;font-size:9px}.brand strong{font-size:16px}.admin-open{padding:9px;font-size:8px}.hero-strip{align-items:flex-start;gap:15px}.live-state{padding:9px;min-width:120px}.live-state span{font-size:7px}.dashboard-grid{grid-template-columns:1fr}.status-panel{display:grid;grid-template-columns:1fr 1fr}.status-panel .panel-heading,.status-panel .panel-note{grid-column:1/-1}.status-visual{padding:12px}.ring{width:115px;height:115px}.ring-inner strong{font-size:28px}.status-rows{align-self:center}.map-panel{grid-row:1}.world{min-height:0}.latest-panel{grid-column:auto}.latest-list{display:block}.latest-item{border-bottom:1px solid #1e3b44;border-right:0}.lower-grid{grid-template-columns:1fr}.hero-strip h1{font-size:24px}footer{gap:10px;flex-wrap:wrap;font-size:7px}}
