@font-face{font-family:"Mont";src:url(/fonts/montserrat.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{--ink:#0f1330;--ink2:#171c45;--ink3:#232a5e;--paper:#f6f3ec;--text:#eef0ff;--muted:#aab0d6;--tang:#FF8A3D;--rasp:#FF4F86;--teal:#14C2A3;--sun:#FFC23D;--sky:#3FB6FF;--r:18px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--text);font:16px/1.5 "Mont",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;min-height:100vh}
a{color:var(--sun)}a:hover{color:#ffd877}
:focus-visible{outline:3px solid var(--sun);outline-offset:2px;border-radius:6px}
h1,h2,h3{line-height:1.12;letter-spacing:-.02em;margin:0 0 .4em}h1{font-weight:850;font-size:clamp(1.9rem,6vw,3rem)}h2{font-weight:800;font-size:1.35rem;margin-top:1.6em}h3{font-weight:800;font-size:1rem}
.top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;position:sticky;top:0;z-index:5;background:rgba(15,19,48,.92);backdrop-filter:blur(8px);border-bottom:1px solid #ffffff12;flex-wrap:wrap}
.brand{font-weight:900;color:#fff;text-decoration:none;font-size:1.05rem;letter-spacing:-.01em}
.brand::before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--tang);box-shadow:12px 0 var(--rasp),24px 0 var(--teal);margin-right:36px;vertical-align:1px}
nav{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:.92rem;font-weight:650}
nav a{color:var(--text);text-decoration:none}nav a:hover{color:var(--sun)}
.pill{background:var(--tang);color:#1a1020!important;padding:6px 14px;border-radius:999px}
.inline{display:inline;margin:0}.linkbtn{background:none;border:0;color:var(--muted);font:inherit;font-weight:650;cursor:pointer;padding:0}
main{padding-bottom:40px}.wrap{max-width:860px;margin:0 auto;padding:24px 16px}.narrow{max-width:560px}
.flash{background:var(--teal);color:#06231d;font-weight:700;padding:12px 16px;text-align:center}.flash a{color:#06231d}
.hero{position:relative;overflow:hidden;padding:56px 16px 44px;text-align:center;background:radial-gradient(120% 90% at 50% 0%,#2a2f73 0%,var(--ink) 70%)}
.hero h1{font-size:clamp(2.4rem,11vw,4.6rem);font-weight:900;margin:.15em 0 .25em}
.hero .lead{max-width:540px;margin:0 auto 22px;color:#d6daf7;font-size:1.06rem}
.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800;color:var(--sun);margin:0}
.lead{color:var(--muted);font-size:1.02rem}
.stripes{display:flex;height:8px;position:absolute;left:0;right:0;top:0}.stripes i{flex:1}.stripes i:nth-child(1){background:var(--tang)}.stripes i:nth-child(2){background:var(--rasp)}.stripes i:nth-child(3){background:var(--teal)}.stripes i:nth-child(4){background:var(--sun)}
.cta,.share{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:10px 20px;border-radius:999px;font:inherit;font-weight:800;text-decoration:none;cursor:pointer;border:2px solid transparent;font-size:1rem}
.btn.primary{background:var(--tang);color:#1a1020}.btn.primary:hover{background:#ff9d5c;color:#1a1020}
.btn.ghost{background:transparent;color:#fff;border-color:#ffffff40}.btn.ghost:hover{border-color:#fff;color:#fff}
.btn.wa{background:#25D366;color:#062b14}.btn.wa:hover{color:#062b14;background:#3ee07c}
.btn.wide{width:100%}
.sechead{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:8px}.sechead h2{margin-top:.6em}.sechead a{font-weight:700;font-size:.9rem;white-space:nowrap}
.note{color:var(--muted);font-size:.9rem;margin:.6em 0 1.2em}
.board{list-style:none;margin:0;padding:0;border-radius:var(--r);overflow:hidden;background:var(--ink2);border:1px solid #ffffff12}
.board li{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:8px;padding:12px 14px;border-top:1px solid #ffffff0d}
.board li:first-child{border-top:0}.board li:nth-child(1){background:linear-gradient(90deg,#ffc23d22,transparent 70%)}
.rk{font-weight:900;font-size:1.05rem;text-align:center;color:var(--muted)}
.who{color:#fff;font-weight:700;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.who:hover{color:var(--sun)}
.val{font-weight:700;color:var(--c,var(--sun));text-align:right;max-width:52vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.demo{display:inline-block;font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;background:#ffffff1c;color:var(--muted);padding:2px 6px;border-radius:6px;vertical-align:2px;margin-left:4px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:14px;margin-top:22px}
.mini{display:block;text-decoration:none;color:inherit;background:var(--ink2);border-radius:var(--r);padding:16px 14px 6px;border-top:5px solid var(--c)}
.mini h3{color:var(--c)}.mini .board{background:transparent;border:0}.mini .board li{padding:9px 4px}.mini .board li:nth-child(1){background:none}
.mini:hover{background:var(--ink3)}
.cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:10px}
.cats a{display:flex;align-items:center;gap:10px;background:var(--ink2);border-left:5px solid var(--c);border-radius:12px;padding:12px;color:#fff;text-decoration:none;font-weight:700;font-size:.95rem}
.cats a:hover{background:var(--ink3)}.cats span{font-size:1.3rem}
.empty{color:var(--muted);text-align:center;padding:16px}
.center{text-align:center;margin-top:18px}
.hol-k{color:var(--c)}
/* card */
.cardwrap{max-width:520px}
.card{position:relative;overflow:hidden;border-radius:26px;background:radial-gradient(110% 70% at 100% 0%,#3b2a7a 0%,transparent 60%),radial-gradient(90% 60% at 0% 100%,#0e5b5a 0%,transparent 60%),var(--ink2);border:1px solid #ffffff1f;padding:30px 18px 16px;box-shadow:0 20px 60px #0008;margin-bottom:18px}
.chead{text-align:center}.cname{font-size:clamp(1.8rem,8vw,2.4rem);font-weight:900;margin:.2em 0 0;word-break:break-word}.handle{margin:0;color:var(--muted);font-weight:700}
.score{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0;background:#0009;border-radius:16px;padding:12px 6px;text-align:center}
.score .big{display:block;font-size:1.6rem;font-weight:900;color:var(--sun);line-height:1.1}.score div:nth-child(2) .big{color:var(--rasp)}.score div:nth-child(3) .big{color:var(--teal)}
.score .lbl{font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tile{background:#ffffff0b;border-radius:14px;padding:10px 11px;border-top:4px solid var(--c);min-width:0}
.tl{display:flex;align-items:center;gap:6px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--c)}.tl .em{font-size:1rem}.tl .badge{margin-left:auto;font-size:.95rem}
.tv{font-weight:850;font-size:1.12rem;color:#fff;margin:4px 0 2px;line-height:1.2;overflow-wrap:anywhere}
.tk{font-size:.78rem;color:var(--muted);line-height:1.25}
.cfoot{text-align:center;color:var(--muted);font-size:.72rem;margin:14px 0 0;letter-spacing:.06em;text-transform:uppercase;font-weight:700}
/* forms */
.auth form,.editor{display:flex;flex-direction:column;gap:14px}
.field{display:flex;flex-direction:column;gap:6px}.field label{font-weight:750}.field small{color:var(--muted);font-size:.8rem}
input,select{font:inherit;font-size:16px;color:#fff;background:var(--ink2);border:2px solid #ffffff26;border-radius:12px;padding:11px 12px;width:100%;min-height:46px}
input:focus,select:focus{border-color:var(--sun);outline:none}
input[type=time]{color-scheme:dark}select{color-scheme:dark}
.pre{display:flex;align-items:center;background:var(--ink2);border:2px solid #ffffff26;border-radius:12px;padding-left:12px}.pre:focus-within{border-color:var(--sun)}
.pre span{color:var(--muted);font-weight:800}.pre input{border:0;background:transparent;min-width:0}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}
fieldset{border:0;border-left:5px solid var(--c);background:var(--ink2);border-radius:var(--r);padding:14px 14px 16px;margin:0;display:flex;flex-direction:column;gap:14px}
legend{float:left;width:100%;font-weight:900;color:var(--c);font-size:1.1rem;padding:0}
.savebar{position:sticky;bottom:0;display:flex;gap:10px;padding:12px 0;background:linear-gradient(transparent,var(--ink) 30%)}.savebar .btn{flex:1}
.err{background:#ff4f8626;border:1px solid var(--rasp);color:#ffd2e0;padding:10px 12px;border-radius:12px;font-weight:650}
.alt{text-align:center;color:var(--muted)}
.danger{margin-top:28px;color:var(--muted)}.danger summary{cursor:pointer}.danger form{display:flex;flex-direction:column;gap:10px;margin-top:10px}.danger label{display:flex;gap:8px;align-items:center}.danger input[type=checkbox]{width:auto;min-height:0}
footer{text-align:center;color:var(--muted);font-size:.82rem;padding:24px 16px 40px;border-top:1px solid #ffffff12}footer p{margin:.3em 0}
@media (max-width:420px){.tiles{grid-template-columns:1fr 1fr}.tv{font-size:1rem}.pair{grid-template-columns:1fr}nav{gap:10px;font-size:.86rem}.brand{font-size:.98rem}}

.board.stack li,.mini .board li{grid-template-columns:40px minmax(0,1fr);grid-template-areas:"rk who" "rk val";row-gap:2px}
.board.stack .rk,.mini .board .rk{grid-area:rk}.board.stack .who,.mini .board .who{grid-area:who}
.board.stack .val,.mini .board .val{grid-area:val;text-align:left;max-width:none;white-space:normal;font-size:.92rem}
.savebar .btn{white-space:nowrap}

.imgshare{margin:14px 0 4px}
.btn.sun{background:var(--sun);color:#1a1020}
.btn[disabled]{opacity:.7;cursor:progress}
.imgov{position:fixed;inset:0;z-index:50;background:rgba(8,10,30,.88);display:flex;align-items:center;justify-content:center;padding:16px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.imgov-in{max-width:440px;width:100%;text-align:center}
.imgov-in img{width:100%;max-height:70vh;object-fit:contain;border-radius:14px;box-shadow:0 10px 40px rgba(0,0,0,.5);-webkit-touch-callout:default}
.imgov-t{color:#fff;font-weight:800;margin:0 0 12px}
.imgov .share{margin-top:14px}
