:root{--bg: #0e0b16;--bg-2: #171226;--panel: rgba(255, 255, 255, .045);--panel-2: rgba(255, 255, 255, .08);--border: rgba(255, 255, 255, .1);--text: #f4f1fa;--text-dim: #a89fc0;--pink: #ff4d8d;--violet: #a855f7;--cyan: #22d3ee;--grad: linear-gradient(135deg, var(--pink), var(--violet));--exact: #10b981;--partial: #fbbf24;--wrong: #383246;--radius: 16px;--font-display: "Baloo 2", system-ui, sans-serif;--font-body: "Outfit", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{min-height:100%;background:radial-gradient(1000px 500px at 85% -10%,rgba(168,85,247,.16),transparent 60%),radial-gradient(800px 400px at -10% 20%,rgba(255,77,141,.12),transparent 60%),var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}#app{min-height:100vh;display:flex;flex-direction:column}button{font-family:inherit;cursor:pointer}input,select{font-family:inherit}a{color:inherit;text-decoration:none}img{max-width:100%}.container{width:min(100%,900px);margin:0 auto;padding:0 16px}.container.wide{width:min(100%,1400px)}.header{position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0e0b16bf;border-bottom:1px solid var(--border)}.header-inner{display:flex;align-items:center;gap:16px;padding:10px 16px;width:min(100%,1100px);margin:0 auto}.logo{font-family:var(--font-display);font-weight:800;font-size:24px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:.5px;white-space:nowrap}.logo span{color:var(--text);-webkit-text-fill-color:var(--text)}.mode-nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;flex:1}.mode-nav::-webkit-scrollbar{display:none}.mode-nav a{padding:7px 13px;border-radius:999px;font-size:14px;font-weight:600;color:var(--text-dim);white-space:nowrap;transition:all .15s}.mode-nav a:hover{color:var(--text);background:var(--panel-2)}.mode-nav a.active{color:#fff;background:var(--grad)}.hero{text-align:center;padding:44px 16px 10px}.hero h1{font-family:var(--font-display);font-size:clamp(34px,6vw,54px);font-weight:800;line-height:1.05}.hero h1 em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{color:var(--text-dim);margin-top:10px;font-size:17px}.mode-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;padding:28px 0 48px}.mode-card{position:relative;display:block;padding:20px;border-radius:var(--radius);background:var(--panel);border:1px solid var(--border);transition:transform .15s,border-color .15s,background .15s;overflow:hidden}.mode-card:hover{transform:translateY(-3px);border-color:#ff4d8d73;background:var(--panel-2)}.mode-card .emoji{font-size:30px}.mode-card h3{font-family:var(--font-display);font-size:20px;margin-top:8px}.mode-card p{color:var(--text-dim);font-size:13.5px;margin-top:4px;line-height:1.45}.mode-card .badge{position:absolute;top:14px;right:14px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;letter-spacing:.4px}.mode-card .plays{color:var(--text-dim);font-size:12px;margin-top:8px;opacity:.85}.badge.daily{background:#10b98129;color:#34d399}.badge.party{background:#22d3ee24;color:var(--cyan)}.badge.done{background:var(--grad);color:#fff}.badge.archive{background:#a855f729;color:#c084fc}.game-page{flex:1;padding:26px 0 60px}.game-head{text-align:center;margin-bottom:18px}.game-head h2{font-family:var(--font-display);font-size:30px}.game-head .sub{color:var(--text-dim);font-size:14.5px;margin-top:3px}.game-head .plays{color:var(--text-dim);font-size:12.5px;margin-top:6px;opacity:.85}.pill-row{display:flex;justify-content:center;gap:8px;margin-top:12px;flex-wrap:wrap}.pill{border:1px solid var(--border);background:var(--panel);color:var(--text-dim);padding:6px 14px;border-radius:999px;font-size:13px;font-weight:600}.pill.on{background:var(--grad);color:#fff;border-color:transparent}.pill:hover:not(.on){background:var(--panel-2);color:var(--text)}.pill.off,.pill:disabled{opacity:.35;pointer-events:none}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.search-wrap{position:relative;max-width:460px;margin:0 auto 20px}.search-input{width:100%;padding:13px 18px;border-radius:14px;font-size:16px;background:var(--bg-2);border:1.5px solid var(--border);color:var(--text);outline:none;transition:border-color .15s}.search-input:focus{border-color:var(--violet)}.search-drop{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:40;background:#1a1428;border:1px solid var(--border);border-radius:14px;max-height:320px;overflow-y:auto;box-shadow:0 18px 40px #0000008c}.search-item{display:flex;align-items:center;gap:12px;padding:9px 14px;width:100%;background:none;border:none;color:var(--text);font-size:15px;text-align:left}.search-item:hover,.search-item.hl{background:#a855f72e}.search-item img{width:34px;height:34px;border-radius:50%;object-fit:cover;background:var(--wrong)}.search-item .who{display:flex;flex-direction:column}.search-item .who small{color:var(--text-dim);font-size:12px}.cgrid{overflow-x:auto;padding-bottom:6px}.cgrid-inner{min-width:780px;display:flex;flex-direction:column;gap:7px}.crow{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(5,minmax(0,1fr)) minmax(0,1.5fr) minmax(0,1fr);gap:7px}.crow.head div{font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-dim);text-align:center;padding:4px 0}.cell{border-radius:11px;min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;font-size:13.5px;font-weight:600;padding:6px 4px;line-height:1.2;background:var(--wrong);border:1px solid rgba(255,255,255,.05);animation:flip-in .45s both}.crow .cell:nth-child(2){animation-delay:.5s}.crow .cell:nth-child(3){animation-delay:1s}.crow .cell:nth-child(4){animation-delay:1.5s}.crow .cell:nth-child(5){animation-delay:2s}.crow .cell:nth-child(6){animation-delay:2.5s}.crow .cell:nth-child(7){animation-delay:3s}.crow .cell:nth-child(8){animation-delay:3.5s}@keyframes flip-in{0%{transform:rotateX(90deg);opacity:0}to{transform:rotateX(0);opacity:1}}.cell.exact{background:linear-gradient(150deg,#0d9f74,#10b981);color:#06281d}.cell.partial{background:linear-gradient(150deg,#e3a008,#fbbf24);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.45)}.cell.wrong{background:linear-gradient(150deg,#b91c1c,#ef4444);color:#fff}.cell.unknown{color:var(--text-dim);background:repeating-linear-gradient(45deg,var(--wrong) 0 8px,#2e2940 8px 16px)}.cell .arrow{font-size:15px;opacity:.9}.cell .tok{display:block;white-space:nowrap;font-size:12.5px}.cell.partial .tok.hit{color:#4ade80;font-weight:800}.cell .no-roles{font-size:11.5px;font-style:italic;opacity:.9}.cell .flags{display:flex;gap:4px;justify-content:center;flex-wrap:wrap}.cell .flag{font-size:21px;line-height:1}.cell.partial .flag.miss{opacity:.4}.cell.who{flex-direction:row;gap:9px;justify-content:flex-start;padding:6px 10px;background:var(--bg-2)}.cell.who img{width:40px;height:40px;border-radius:10px;object-fit:cover}.cell.who .who-name{text-align:left;font-size:13.5px}.cell.who .who-name small{display:block;color:var(--text-dim);font-weight:500;font-size:11px}.media-stage{width:min(100%,440px);margin:0 auto 18px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:#000;aspect-ratio:1;display:flex;align-items:center;justify-content:center;position:relative}.media-stage.wide{aspect-ratio:16/10}.media-stage img,.media-stage video{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1),filter .6s}.media-stage img.kface-band{position:absolute;inset:0;animation:kface-band-in .6s ease}@keyframes kface-band-in{0%{opacity:0}to{opacity:1}}.guess-dots{display:flex;justify-content:center;gap:7px;margin-bottom:16px}.dot{width:11px;height:11px;border-radius:50%;background:var(--panel-2);border:1px solid var(--border)}.dot.used{background:#ef4444;border-color:transparent}.dot.win{background:var(--exact);border-color:transparent}.wrong-list{display:flex;flex-direction:column;gap:6px;max-width:460px;margin:0 auto}.wrong-item{display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:12px;background:var(--panel);border:1px solid var(--border);font-size:14.5px;font-weight:600;animation:shake .35s}.wrong-item.hint-group{border-color:#f59e0b80}.wrong-item small{color:var(--text-dim);font-weight:500}.wrong-item .mark{margin-left:auto}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.moji-row{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:6px auto 22px}.moji{width:62px;height:62px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:34px;background:var(--panel);border:1px solid var(--border)}.moji.hidden-moji{color:transparent;text-shadow:0 0 22px rgba(244,241,250,.9)}.moji.locked{background:var(--bg-2);font-size:22px;color:var(--text-dim);text-shadow:none}.moji.locked .twemoji{opacity:.55}.moji.sm{width:46px;height:46px;font-size:24px;border-radius:11px}.moji.sm.locked{font-size:17px}.group-hint{text-align:center;margin:-8px 0 20px}.group-hint-label{font-size:11.5px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:.7px}.moji-row.group{gap:8px;margin:8px auto 0}.twemoji{width:1em;height:1em;vertical-align:-.125em}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#05030ab8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:16px;animation:fade .2s}@keyframes fade{0%{opacity:0}}.modal{width:min(100%,430px);background:#191226;border:1px solid var(--border);border-radius:22px;padding:26px;text-align:center;max-height:90vh;overflow-y:auto;animation:pop .28s cubic-bezier(.34,1.56,.64,1)}@keyframes pop{0%{transform:scale(.85);opacity:0}}.modal h3{font-family:var(--font-display);font-size:26px}.modal .answer-card{display:flex;align-items:center;gap:14px;margin:16px 0;padding:12px;background:var(--panel);border-radius:14px;text-align:left}.modal .answer-card img{width:64px;height:64px;border-radius:12px;object-fit:cover}.modal .answer-card .t{font-weight:700;font-size:17px}.modal .answer-card small{color:var(--text-dim)}.stat-row{display:flex;justify-content:center;gap:22px;margin:14px 0}.stat{display:flex;flex-direction:column}.stat b{font-size:24px;font-family:var(--font-display)}.stat span{font-size:11.5px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.6px}.countdown{color:var(--text-dim);font-size:14px;margin-top:10px}.countdown b{color:var(--text);font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 22px;border-radius:13px;border:none;font-size:15px;font-weight:700;background:var(--grad);color:#fff;transition:filter .15s,transform .1s}.btn:hover{filter:brightness(1.12)}.btn:active{transform:scale(.97)}.btn.ghost{background:var(--panel-2);color:var(--text);border:1px solid var(--border)}.btn.sm{padding:7px 14px;font-size:13.5px;border-radius:10px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-row{display:flex;gap:10px;justify-content:center;margin-top:14px;flex-wrap:wrap}.rank-slots{display:flex;flex-direction:column;gap:8px;max-width:480px;margin:0 auto}.rank-slot{display:flex;align-items:center;gap:12px;padding:8px 12px;min-height:58px;border-radius:13px;background:var(--panel);border:1.5px dashed var(--border);font-weight:600}.rank-slot.filled{border-style:solid;background:var(--bg-2)}.rank-slot.pickable:hover{border-color:var(--pink);background:#ff4d8d1a;cursor:pointer}.rank-slot .rank-n{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--grad);font-family:var(--font-display);font-size:14px;flex-shrink:0}.rank-slot img{width:42px;height:42px;border-radius:10px;object-fit:cover}.reveal-card{text-align:center;margin-bottom:20px}.reveal-card img{width:150px;height:150px;border-radius:20px;object-fit:cover;border:3px solid transparent;background:var(--grad);padding:3px}.reveal-card .t{font-size:21px;font-weight:700;margin-top:10px;font-family:var(--font-display)}.reveal-card small{color:var(--text-dim)}.teams{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.team{padding:14px}.team h4{font-family:var(--font-display);text-align:center;margin-bottom:10px;font-size:18px}.team .rank-slot{min-height:50px}.teams.one-row{display:flex;flex-wrap:nowrap;align-items:flex-start;justify-content:safe center;overflow-x:auto;padding-bottom:6px;gap:10px}.teams.one-row .team{flex:1 1 0;min-width:150px;max-width:320px}.teams.one-row .rank-slots{max-width:none}.teams.one-row .rank-slot{display:block;padding:8px 10px;min-height:0}.teams.one-row .rank-slot .role{display:block;font-size:11.5px;color:var(--text-dim);margin-bottom:4px}.teams.one-row .rank-slot .who{display:flex;align-items:center;gap:8px;min-width:0;font-size:13.5px;line-height:1.3}.teams.one-row .rank-slot .who>div{min-width:0;overflow-wrap:anywhere}.teams.one-row .rank-slot .who small{display:block;color:var(--text-dim);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teams.one-row .rank-slot img{width:38px;height:38px;flex-shrink:0}.role-steppers{display:flex;flex-direction:column;gap:7px;margin:16px 0 4px;text-align:left}.role-steppers>label{font-size:12px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim)}.role-steppers .row{display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:14.5px}.role-steppers .stepper{display:flex;align-items:center;gap:12px}.role-steppers .stepper b{min-width:20px;text-align:center;font-size:15px}.role-steppers .stepper button{width:30px;height:30px;border-radius:9px;border:1.5px solid var(--border);background:var(--panel);color:var(--text);font-size:17px;font-weight:700;cursor:pointer;line-height:1;transition:border-color .15s}.role-steppers .stepper button:hover:not(:disabled){border-color:var(--pink)}.role-steppers .stepper button:disabled{opacity:.35;cursor:default}.role-steppers>small{text-align:center;color:var(--text-dim)}.reveal-media{position:relative;display:inline-block}.skip-btn-side{position:absolute;right:-82px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:64px;height:78px;border-radius:15px;border:1.5px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;font-size:26px;line-height:1;transition:border-color .15s}.skip-btn-side small{font-size:15px;font-weight:700;color:var(--text-dim)}.skip-btn-side:hover:not(:disabled){border-color:var(--pink)}.skip-btn-side:disabled{opacity:.35;cursor:default}.quick-roles{display:flex;justify-content:center;gap:12px;margin-top:12px}.quick-roles button{width:58px;height:58px;border-radius:15px;border:1.5px solid var(--border);background:var(--panel);font-size:27px;cursor:pointer;line-height:1;transition:transform .1s,border-color .15s}.quick-roles button:hover:not(:disabled){border-color:var(--pink);transform:translateY(-2px)}.quick-roles button:disabled{opacity:.3;cursor:default}.choice-row{display:flex;flex-wrap:wrap;gap:18px;justify-content:center}.reveal-card.choice{cursor:pointer;padding:12px 18px;border-radius:20px;border:1.5px solid transparent;transition:transform .1s,border-color .15s}.reveal-card.choice:hover{border-color:var(--pink);background:#ff4d8d1a;transform:translateY(-2px)}.draft-layout{display:grid;grid-template-columns:290px 1fr;gap:20px;align-items:start}@media(max-width:720px){.draft-layout{grid-template-columns:1fr}}.draft-side h4{font-family:var(--font-display);font-size:18px;margin-bottom:2px}.draft-hint{font-size:12px;color:var(--text-dim);min-height:16px;margin-bottom:8px}.draft-side .rank-slots{margin:0}.rank-slot.active{border-color:var(--pink);background:#ff4d8d1a;box-shadow:0 0 0 2px #ff4d8d40}.draft-cat{text-align:center;margin-bottom:14px}.draft-cat h3{font-family:var(--font-display);font-size:26px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.draft-progress{font-size:11.5px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.6px}.idol-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:10px}.idol-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 6px;border-radius:14px;background:var(--panel);border:1.5px solid var(--border);cursor:pointer;color:var(--text);transition:transform .1s,border-color .15s}.idol-card:hover:not(:disabled){border-color:var(--violet);transform:translateY(-2px)}.idol-card img{width:100%;aspect-ratio:1;border-radius:10px;object-fit:cover}.idol-card .nm{font-size:13.5px;font-weight:700;line-height:1.15}.idol-card small{font-size:11px;color:var(--text-dim);line-height:1.1}.idol-card.previewed{border-color:var(--pink);box-shadow:0 0 0 2px #ff4d8d59}.idol-card.taken{opacity:.35;cursor:not-allowed}.idol-card .taken-tag{position:absolute;top:8px;left:50%;transform:translate(-50%) rotate(-8deg);padding:2px 8px;border-radius:999px;background:var(--bg-2);border:1px solid var(--border);font-size:11px;font-weight:700}.draft-pop{margin-top:22px}.draft-pop>h4{font-family:var(--font-display);font-size:19px;text-align:center;margin-bottom:12px}.draft-pop-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.draft-pop-col{padding:12px}.draft-pop-col h5{font-size:13px;margin-bottom:8px;text-align:center}.pct-row{display:grid;grid-template-columns:minmax(58px,auto) 1fr 34px;gap:7px;align-items:center;margin-bottom:6px}.pct-name{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pct-track{height:7px;border-radius:99px;background:var(--bg-2);overflow:hidden}.pct-fill{height:100%;border-radius:99px;background:var(--grad)}.pct-num{font-size:11.5px;color:var(--text-dim);text-align:right;font-variant-numeric:tabular-nums}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:12px;text-align:left}.field label{font-size:12.5px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px}.field input,.field select,.field textarea{padding:10px 13px;border-radius:11px;background:var(--bg-2);border:1.5px solid var(--border);color:var(--text);font-size:14.5px;outline:none}.field input:focus,.field select:focus{border-color:var(--violet)}.emoji-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px}.emoji-chip{width:42px;height:42px;font-size:26px;display:flex;align-items:center;justify-content:center;background:var(--bg-2);border:1.5px solid var(--border);border-radius:10px;cursor:pointer}.emoji-chip:hover{border-color:#ef4444;background:#ef44441f}.emoji-picker{background:var(--bg-2);border:1.5px solid var(--border);border-radius:13px;padding:10px;margin-bottom:8px}.emoji-picker .search{width:100%;margin-bottom:8px}.emoji-picker .cats{display:flex;gap:2px;flex-wrap:wrap;margin-bottom:8px}.emoji-picker .cats button{font-size:17px;padding:6px 9px;border-radius:8px;border:none;background:none;opacity:.55;line-height:1}.emoji-picker .cats button.on{background:var(--panel-2);opacity:1}.emoji-picker .cats button:hover{opacity:1}.emoji-picker .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:2px;max-height:250px;overflow-y:auto}.emoji-picker .grid button{font-size:21px;padding:6px 0;border:none;border-radius:8px;background:none;display:flex;align-items:center;justify-content:center;line-height:1}.emoji-picker .grid button:hover{background:var(--panel-2)}.emoji-picker .none{color:var(--text-dim);font-size:13px;padding:6px}.check-row{display:flex;flex-wrap:wrap;gap:6px}.check-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;border:1px solid var(--border);background:var(--panel-2);font-size:13px;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}.check-pill input{accent-color:var(--violet);cursor:pointer}.check-pill.on{border-color:var(--violet);background:#a855f738}.admin-layout{display:flex;gap:18px;padding:22px 0 60px;align-items:flex-start}.admin-side{width:170px;flex-shrink:0;display:flex;flex-direction:column;gap:4px;position:sticky;top:70px}.admin-side button{text-align:left;padding:9px 14px;border-radius:11px;border:none;background:none;color:var(--text-dim);font-size:14.5px;font-weight:600}.admin-side button.on{background:var(--grad);color:#fff}.admin-side button:hover:not(.on){background:var(--panel-2);color:var(--text)}.admin-main{flex:1;min-width:0}.table-wrap{overflow-x:auto;container-type:inline-size}.edit-inline{width:0;min-width:100cqw;position:sticky;left:0}table.admin{width:100%;border-collapse:collapse;font-size:13.5px}table.admin th{text-align:left;padding:8px 10px;color:var(--text-dim);font-size:11.5px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border)}table.admin td{padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.05)}table.admin tr:hover td{background:#ffffff08}table.admin tr.edit-row td,table.admin tr.edit-row:hover td{background:none;padding:0 0 8px}table.admin img{width:34px;height:34px;border-radius:8px;object-fit:cover}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%);z-index:200;background:#241b38;border:1px solid var(--border);padding:11px 20px;border-radius:13px;font-weight:600;font-size:14.5px;box-shadow:0 12px 30px #00000080;animation:pop .25s}.archive-nav{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;flex-wrap:wrap}.archive-nav .when{font-weight:700;font-size:14.5px;padding:0 4px}.archive-note{color:var(--text-dim);font-size:13.5px;margin:12px 0 2px}.cal-head{display:flex;align-items:center;justify-content:space-between;max-width:460px;margin:16px auto 10px}.cal-head h3{font-family:var(--font-display);font-size:20px}.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;max-width:460px;margin:0 auto}.cal-wd{text-align:center;font-size:11.5px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.6px;padding-bottom:2px}.cal-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;background:var(--panel);border:1px solid var(--border);font-weight:700;font-size:14px;transition:transform .12s,background .12s}a.cal-day:hover{transform:translateY(-2px);background:var(--panel-2)}.cal-day.off{opacity:.25;border-style:dashed;font-weight:500}.cal-day.won{background:#10b9812e;border-color:#10b98180;color:#34d399}.cal-day.lost{background:#ff4d8d24;border-color:#ff4d8d73;color:var(--pink)}.cal-day.started{border-color:#fbbf2480;color:var(--partial)}.cal-day.done{background:var(--grad);color:#fff;border-color:transparent}.cal-day.today{border:2px solid var(--cyan);color:var(--cyan)}.cal-day .cal-mark{font-size:10px;line-height:1;margin-top:3px;opacity:.9}.cal-legend{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:14px;font-size:12.5px;color:var(--text-dim)}.cal-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px;border:1px solid var(--border);background:var(--panel)}.cal-legend i.won{background:#10b98180;border-color:#10b98199}.cal-legend i.lost{background:#ff4d8d73;border-color:#ff4d8d80}.cal-legend i.started{border-color:#fbbf24b3}.cal-legend i.done{background:var(--grad);border-color:transparent}.empty-state{text-align:center;padding:46px 20px;color:var(--text-dim)}.empty-state .big{font-size:42px;margin-bottom:10px}@media(max-width:640px){.admin-layout{flex-direction:column}.admin-side{width:100%;flex-direction:row;overflow-x:auto;position:static}.crow{grid-template-columns:1.4fr repeat(5,minmax(64px,1fr)) minmax(100px,1.5fr) minmax(64px,1fr)}}@keyframes coffin-beat{0%,49.999%{color:#4169e1}50%,to{color:#ff1a1a}}.coffin-msg{font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:clamp(24px,5.2vw,46px);line-height:1.05;letter-spacing:.02em;max-width:720px;margin:0 auto 48px;color:#4169e1;position:relative;z-index:3;animation:coffin-beat .90909s step-end infinite paused}.coffin-msg.beat{animation-play-state:running}@keyframes coffin-flicker{0%,to{opacity:.85;transform:scale(1)}25%{opacity:1;transform:scale(1.05)}50%{opacity:.75;transform:scale(.98)}75%{opacity:.95;transform:scale(1.03)}}@keyframes coffin-lick{0%,to{transform:translateY(0) scaleY(1)}33%{transform:translateY(-5px) scaleY(1.06)}66%{transform:translateY(-2px) scaleY(1.02)}}.coffin-card .reveal-media{isolation:isolate}.coffin-card .quick-roles{position:relative;z-index:2}.coffin-card .reveal-media img{box-shadow:0 0 18px 4px #ff8c00cc,0 0 44px 10px #ff320080}.coffin-fire{position:absolute;inset:-22px -30px -34px;z-index:-1;pointer-events:none}.coffin-fire:before,.coffin-fire:after{content:"";position:absolute;inset:0;border-radius:40px 40px 34px 34px;transform-origin:50% 100%}.coffin-fire:before{background:linear-gradient(to top,#fff6b0,#ffd000 14%,#ff8a00 34%,#ff3d00,#c41000 82%,#7a0500);filter:url(#coffin-flame-a) blur(.8px);animation:coffin-lick .9s ease-in-out infinite}.coffin-fire:after{inset:6px 8px 4px;background:linear-gradient(to top,#fff,#fff2a0 16%,#ffb300 40%,#ff5a00 66%,#ff280000);filter:url(#coffin-flame-b) blur(1.2px) brightness(1.15);mix-blend-mode:screen;animation:coffin-lick .6s ease-in-out infinite reverse}.coffin-halo{position:absolute;inset:-34px -40px -44px;border-radius:50%;z-index:-2;pointer-events:none;background:radial-gradient(closest-side,rgba(255,120,0,.6),rgba(255,40,0,.3) 55%,transparent);filter:blur(14px);animation:coffin-flicker .4545s ease-in-out infinite}.rank-slots.coffin-host{position:relative}.rank-slots.coffin-host .rank-slot{pointer-events:none}.coffin-cover{position:absolute;z-index:2;border-radius:13px;overflow:hidden;background:#000;display:flex;align-items:center;justify-content:center;animation:fade .3s;width:min(760px,94vw);inset:0 0 0 50%;transform:translate(-50%)}.rank-slots.coffin-host{min-height:calc(min(760px,94vw)*.5625)}.coffin-cover video{width:100%;height:100%;object-fit:contain;display:block}.coffin-loading{position:absolute;font-size:42px;animation:pop .4s}.coffin-tap{position:absolute;padding:14px 22px;border-radius:14px;border:2px solid #fff;background:#000000b3;color:#fff;font-family:var(--font-display);font-weight:800;font-size:20px;cursor:pointer}.kp-badge{display:inline-block;padding:1px 7px;border-radius:999px;vertical-align:middle;font-size:10.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;color:#fbbf24;background:#fbbf2424;border:1px solid rgba(251,191,36,.4)}.kp-dot{position:absolute;bottom:3px;left:3px;width:16px;height:16px;border-radius:50%;font-size:10px;font-weight:800;line-height:16px;text-align:center;color:#1a1a1a;background:#fbbf24}.kp-review{font-size:11.5px;color:#fbbf24;margin-top:2px;display:flex;align-items:center;gap:4px}
