.admin-gate{display:grid;place-items:center;min-height:100vh}.admin-login-card{width:min(420px,92vw);padding:28px 26px;border-radius:18px;border:1px solid rgba(124,140,255,.22);background:#0e1224eb;box-shadow:0 24px 60px #00000059}.admin-login-card h1{margin:8px 0 6px;font-size:26px}.admin-login-card>p{margin:0 0 18px;color:#bec6e6bf;font-size:13px}.admin-login-hint{margin:-10px 0 16px!important;font-size:12px!important;color:#2de2c5d9!important}.admin-login-field{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;font-size:12px;color:#bec6e6cc}.admin-login-field input{border-radius:10px;border:1px solid rgba(124,140,255,.28);background:#080c1cd9;color:#eef1ff;padding:12px 14px;font-size:15px}.admin-login-error{margin-bottom:12px;color:#ff8fa3;font-size:13px}.admin-login-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.admin-page{height:100%;max-height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:24px;color:#eef1ff;background:radial-gradient(900px 500px at 10% -10%,rgba(79,140,255,.2),transparent 55%),radial-gradient(700px 420px at 90% 0%,rgba(139,123,255,.16),transparent 50%),#0b0f1f;font-family:Noto Sans SC,Segoe UI,sans-serif}.admin-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.admin-kicker{letter-spacing:.22em;font-size:12px;color:#2de2c5}.admin-header h1{margin:6px 0;font-size:28px}.admin-header p{margin:0;max-width:720px;color:#bec6e6c7;font-size:13px;line-height:1.6}.admin-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.admin-tabs.tabs-5{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-tabs button{text-align:left;border:1px solid rgba(124,140,255,.18);background:#121830d9;color:#eef1ff;border-radius:14px;padding:12px 14px;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.admin-tabs button strong{display:block;font-size:14px;margin-bottom:4px}.admin-tabs button span{display:block;font-size:11px;color:#bec6e69e}.admin-tabs button:hover{border-color:#2de2c559}.admin-tabs button.active{background:linear-gradient(135deg,#2de2c529,#4f8cff1f);border-color:#2de2c566;box-shadow:0 0 0 1px #2de2c51f}.tab-panel{max-width:920px}.tab-panel .settings-form.stacked,.tab-panel .settings-form.feishu-ids.stacked{grid-template-columns:1fr;max-width:640px}.tab-panel .settings-form.stacked-dates{grid-template-columns:200px 200px 1fr;max-width:720px}.tab-note{margin:14px 0 0;color:#bec6e6a6;font-size:12px;line-height:1.55}.contacts-panel{max-width:none}.contacts-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}.contacts-toolbar .search{flex:1 1 200px;min-width:160px}.contacts-toolbar .search{margin-bottom:0}.filter-pills{display:flex;gap:6px}.filter-pills button{border:1px solid rgba(124,140,255,.2);background:#080c1c8c;color:#dce2ffcc;border-radius:999px;padding:8px 12px;font-size:12px;cursor:pointer}.filter-pills button.active{background:#2de2c52e;border-color:#2de2c566;color:#b8fff0}.assign-to{display:flex;align-items:center;gap:8px;font-size:12px;color:#bec6e6bf;white-space:nowrap}.assign-to select{border-radius:8px;border:1px solid rgba(124,140,255,.22);background:#0a0e1ed9;color:#eef1ff;padding:8px 10px}.contacts-list{max-height:calc(100vh - 290px);overflow:auto;display:flex;flex-direction:column;gap:8px}.teams-only .team-panel{margin-top:0;display:flex;flex-direction:column;min-height:0}.teams-only .empty{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bg-preview{position:relative;height:280px;border-radius:16px;background-size:cover;background-position:center;overflow:hidden;border:1px solid rgba(255,255,255,.12);margin-bottom:14px}.bg-preview-glass{position:absolute;left:24px;right:24px;bottom:24px;height:88px;border-radius:18px;display:grid;place-items:center;font-weight:700;letter-spacing:.06em;color:#fff;background:linear-gradient(155deg,#ffffff38,#ffffff14 40%,#0c122829);border:1px solid rgba(255,255,255,.28);box-shadow:inset 0 1px #ffffff73,0 12px 30px #0000004d;backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%)}.bg-actions{display:flex;gap:10px;flex-wrap:wrap}.file-btn{display:inline-flex;align-items:center;cursor:pointer}.tab-note code{display:inline-block;margin:0 4px;padding:1px 6px;border-radius:6px;background:#ffffff0f;font-size:11px}@media(max-width:980px){.admin-tabs,.admin-tabs.tabs-5{grid-template-columns:1fr 1fr}.contacts-toolbar{flex-direction:column;align-items:stretch}.tab-panel .settings-form.stacked-dates{grid-template-columns:1fr 1fr}}.btn{border:1px solid rgba(124,140,255,.28);background:#1c2342e6;color:#eef1ff;border-radius:10px;padding:10px 14px;cursor:pointer;text-decoration:none;font-size:13px}.btn.primary{background:linear-gradient(90deg,#4f8cff,#2de2c5);color:#081018;border:none;font-weight:700}.btn.ghost{background:transparent}.btn:disabled{opacity:.6;cursor:not-allowed}.admin-banner{margin-bottom:14px;padding:10px 14px;border-radius:10px;background:#2de2c51f;border:1px solid rgba(45,226,197,.28);color:#b8fff0;font-size:13px}.admin-banner.warn{background:#ffc45c1f;border-color:#ffc45c59;color:#ffe2a3;white-space:pre-wrap;font-family:inherit;line-height:1.55}.tag-order{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;font-style:normal;font-size:10px;font-weight:700;color:#061018;background:linear-gradient(90deg,#2de2c5,#7cc8ff);vertical-align:middle}.settings-bar{margin-bottom:16px}.settings-form{display:grid;grid-template-columns:200px 200px 1fr;gap:16px;align-items:end}.settings-form.feishu-ids{grid-template-columns:1fr 1fr 1fr}.settings-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#bec6e6bf}.settings-form input[type=date],.settings-form input[type=text]{border-radius:8px;border:1px solid rgba(124,140,255,.22);background:#0a0e1ed9;color:#eef1ff;padding:10px 12px;font-size:14px;color-scheme:dark;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.settings-form input[type=date]{font-family:inherit}.check-label{flex-direction:row!important;align-items:center;gap:10px!important;padding-bottom:8px;cursor:pointer}.check-label input{width:16px;height:16px}.check-label span{color:#eef1ff;font-size:13px}@media(max-width:900px){.settings-form{grid-template-columns:1fr 1fr}}.admin-msg{padding:80px;text-align:center;color:#bec6e6bf}.admin-grid{display:grid;grid-template-columns:340px 1fr;gap:16px;align-items:start}.admin-card{background:#161c34e0;border:1px solid rgba(124,140,255,.16);border-radius:16px;padding:14px}.card-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.card-head h2{margin:0;font-size:16px}.card-head span{color:#bec6e6a6;font-size:12px}.search{width:100%;margin-bottom:10px;border-radius:10px;border:1px solid rgba(124,140,255,.2);background:#080c1cb3;color:#fff;padding:10px 12px}.pool-list{max-height:calc(100vh - 220px);overflow:auto;display:flex;flex-direction:column;gap:8px}.person-chip{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:8px;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.05)}.mini-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}.chip-meta{min-width:0}.chip-meta strong{display:block;font-size:13px}.chip-meta span{display:block;color:#bec6e6a6;font-size:11px;margin-top:2px}.chip-actions{display:flex;flex-direction:column;gap:4px}.chip-actions button,.member-row select,.team-form input,.team-form select{border-radius:8px;border:1px solid rgba(124,140,255,.22);background:#0a0e1ed9;color:#eef1ff;padding:6px 8px;font-size:12px}.chip-actions button{cursor:pointer}.chip-actions button.soft{opacity:.85}.team-tabs{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.team-tabs button{border:1px solid rgba(124,140,255,.2);background:#161c34cc;color:#cfd6ff;border-radius:999px;padding:8px 14px;cursor:pointer;display:inline-flex;gap:8px;align-items:center}.team-tabs button.active{background:linear-gradient(90deg,#4f8cff59,#2de2c540);border-color:#2de2c573;color:#fff}.team-tabs em{font-style:normal;background:#ffffff1f;border-radius:999px;padding:1px 7px;font-size:11px}.team-form{display:grid;grid-template-columns:1.2fr 1fr 1fr .7fr;gap:12px;margin-bottom:16px}.team-form label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#bec6e6bf}.field-hint{font-style:normal;font-size:11px;color:#2de2c5bf}.member-table{display:flex;flex-direction:column;gap:6px;max-height:calc(100vh - 300px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;scrollbar-width:thin;scrollbar-color:rgba(124,140,255,.45) rgba(255,255,255,.06)}.member-table::-webkit-scrollbar{width:8px}.member-table::-webkit-scrollbar-thumb{background:#7c8cff73;border-radius:999px}.member-row{display:grid;grid-template-columns:minmax(88px,1.1fr) minmax(110px,1.2fr) minmax(64px,.7fr) minmax(72px,.7fr) auto;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;background:#ffffff08}.member-row.head{position:sticky;top:0;z-index:1;background:#161c34f5;color:#bec6e699;font-size:12px;padding-bottom:8px;border-bottom:1px solid rgba(124,140,255,.12)}.member-row .name{font-weight:700}.member-row .title.cap{color:#ffc45c;font-weight:700}.link{background:none;border:none;color:#7aa7ff;cursor:pointer;font-size:12px}.link.danger{color:#ff7a8a}.empty{padding:24px;text-align:center;color:#bec6e68c;font-size:13px}@media(max-width:1100px){.admin-grid{grid-template-columns:1fr}.pool-list{max-height:360px}.team-form{grid-template-columns:1fr 1fr}}:root{--bg: #070b18;--line: rgba(170, 190, 255, .22);--text: #eef1ff;--muted: rgba(190, 198, 230, .72);--blue: #4f8cff;--cyan: #2de2c5;--violet: #8b7bff;--pink: #ff6bb5;--green: #3dffa8;--amber: #ffc45c;--danger: #ff6b81;--font-num: "Google Sans Flex", "Noto Sans SC", sans-serif;--radius: 15px;--shadow: 0 10px 40px rgba(0, 0, 0, .45), 0 0 0 1px rgba(140, 160, 255, .12);--gap: clamp(12px, 1.15vmin, 20px);--gap-x: var(--gap);--gap-y: var(--gap);--pad: var(--gap);--cols: 1.85fr 1.05fr .8fr .8fr;--glow-blue: 0 0 14px rgba(79, 140, 255, .75), 0 0 28px rgba(79, 140, 255, .35);--glow-cyan: 0 0 14px rgba(45, 226, 197, .7), 0 0 28px rgba(45, 226, 197, .32)}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden;color:var(--text);font-family:Noto Sans SC,Segoe UI,sans-serif;background:#050814}body{background:#050814}.screen{position:relative;isolation:isolate;height:100vh;width:100vw;padding:var(--gap);display:grid;grid-template-rows:auto minmax(0,.74fr) minmax(0,1.65fr) minmax(0,1.36fr);gap:var(--gap);overflow:hidden}.screen-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background-color:#07101f;background-position:center;background-size:cover;background-repeat:no-repeat;transform:scale(1.04);filter:saturate(1.15) contrast(1.05);pointer-events:none}.screen-bg-dim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(90% 70% at 50% 40%,#050a1847,#050a188c 70%),linear-gradient(180deg,#060a1640,#060a1673)}.screen>:not(.screen-bg):not(.screen-bg-dim){position:relative;z-index:1}.glass{position:relative;isolation:isolate;border-radius:var(--radius);box-shadow:0 18px 50px #00000059,0 2px 8px #0003,inset 0 1px #ffffff73,inset 0 -1px #0000002e,inset 1px 0 #ffffff1f,inset -1px 0 #ffffff0a;backdrop-filter:blur(36px) saturate(185%) brightness(1.05);-webkit-backdrop-filter:blur(36px) saturate(185%) brightness(1.05);overflow:hidden}.glass:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;z-index:0;mix-blend-mode:soft-light}.glass:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;pointer-events:none;z-index:2;opacity:.9}.glass>*{position:relative;z-index:1}.header{display:grid;grid-template-columns:1.2fr auto 1fr;align-items:center;min-height:0;padding:.55vh var(--pad)}.brand-kicker{font-family:var(--font-num);letter-spacing:.2em;text-transform:uppercase;color:var(--cyan);font-size:1vh;font-weight:600;line-height:1.1}.brand-title{margin-top:.1vh;font-size:2.05vh;font-weight:900;letter-spacing:.04em;line-height:1.15;background:linear-gradient(90deg,#fff,#b7c5ff 55%,#7cc8ff);-webkit-background-clip:text;background-clip:text;color:transparent}.brand-sub{margin-top:.1vh;color:var(--muted);font-size:1vh;line-height:1.2}.header-right{justify-self:end;text-align:right;color:var(--muted);font-size:1vh;line-height:1.35;display:flex;flex-direction:column;align-items:flex-end;gap:.25vh}.header-right a.feishu-link-btn{display:inline-flex;align-items:center;justify-content:center;margin-bottom:.2vh;padding:.35vh 1.1vh;border-radius:.55vh;font-size:1.15vh;font-weight:700;letter-spacing:.04em;color:#061018;text-decoration:none;background:linear-gradient(135deg,#2de2c5,#7cc8ff 70%);border:1px solid rgba(255,255,255,.28);box-shadow:0 0 12px #2de2c547;transition:filter .15s ease,transform .15s ease}.header-right a.feishu-link-btn:hover{filter:brightness(1.08);transform:translateY(-1px);color:#061018}.header-right a.admin-link{color:var(--cyan);text-decoration:none;border-bottom:1px solid rgba(45,226,197,.35)}.header-right a.admin-link:hover{color:#fff}.pulse-dot{display:inline-block;width:.75vh;height:.75vh;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);margin-right:.4vw;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.kpi-row{display:grid;grid-template-columns:var(--cols);gap:var(--gap-x);min-height:0}.kpi{padding:calc(var(--pad) * 1.25);display:flex;flex-direction:column;justify-content:space-between;gap:.4vh}.kpi-goal{gap:.5vh;background:linear-gradient(135deg,rgba(45,226,197,.12),rgba(79,140,255,.06) 45%,transparent 70%),linear-gradient(155deg,#ffffff2e,#ffffff0f 28%,#0c122824)}.goal-main{display:grid;grid-template-columns:1.2fr .85fr .75fr;align-items:end;gap:var(--gap-x)}.goal-caption{color:var(--muted);font-size:1.05vh;margin-bottom:.15vh}.goal-amount{font-size:3.1vh;color:#fff}.goal-tickets-wrap{text-align:left}.goal-tickets{font-size:3.1vh;color:#ffe7a8;text-shadow:0 0 14px rgba(255,196,92,.35)}.goal-pct-wrap{text-align:right}.goal-pct{font-size:3.3vh;color:var(--cyan);text-shadow:0 0 18px rgba(45,226,197,.45)}.goal-foot{flex-wrap:wrap;font-size:1.05vh}.goal-foot b{color:var(--text);font-weight:700}.goal-foot .dot{opacity:.45}.kpi-top{display:flex;justify-content:space-between;align-items:flex-start}.kpi-label{color:var(--muted);font-size:1.1vh}.kpi-icon{width:2.5vh;height:2.5vh;border-radius:8px;display:grid;place-items:center;font-size:1.2vh;background:#4f8cff2e;color:var(--blue);border:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px #ffffff47,0 0 16px #4f8cff47}.kpi-icon.cyan{background:#2de2c529;color:var(--cyan);box-shadow:inset 0 1px #ffffff47,0 0 16px #2de2c547}.kpi-icon.violet{background:#8b7bff2e;color:var(--violet);box-shadow:inset 0 1px #ffffff47,0 0 16px #8b7bff47}.kpi-icon.amber{background:#ffc45c29;color:var(--amber);box-shadow:inset 0 1px #ffffff47,0 0 16px #ffc45c47}.kpi-value{font-family:var(--font-num);font-size:2.5vh;font-weight:700;font-variation-settings:"wdth" 100,"opsz" 36;letter-spacing:.01em;line-height:1}.kpi-foot{color:var(--muted);font-size:1.05vh;display:flex;align-items:center;gap:.45vw}.kpi-foot .up{color:var(--green);font-weight:700}.mvp-hero{position:relative;overflow:hidden;gap:.35vh;background:radial-gradient(120% 90% at 80% 0%,rgba(255,140,40,.18),transparent 50%),linear-gradient(155deg,#ffffff29,#ffffff0d 35%,#0c122829)}.mvp-hero.mvp-tickets{background:radial-gradient(120% 90% at 80% 0%,rgba(45,226,197,.2),transparent 50%),linear-gradient(155deg,#ffffff29,#ffffff0d 35%,#0c122829)}.mvp-hero.mvp-team{background:radial-gradient(120% 90% at 80% 0%,rgba(139,123,255,.22),transparent 50%),linear-gradient(155deg,#ffffff29,#ffffff0d 35%,#0c122829)}.mvp-hero.has-mvp{box-shadow:0 18px 40px #00000052,inset 0 1px #fff6,0 0 28px #ff8c282e;animation:mvp-pulse 2.4s ease-in-out infinite}.mvp-hero.mvp-tickets.has-mvp{box-shadow:0 18px 40px #00000052,inset 0 1px #fff6,0 0 28px #2de2c533}.mvp-hero.mvp-team.has-mvp{box-shadow:0 18px 40px #00000052,inset 0 1px #fff6,0 0 28px #8b7bff47}.mvp-shine{position:absolute;top:-40%;right:-30%;bottom:-40%;left:-30%;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.08) 45%,rgba(255,255,255,.35) 50%,rgba(255,255,255,.08) 55%,transparent 65%);animation:mvp-shine 3.2s linear infinite;pointer-events:none;mix-blend-mode:screen}.mvp-kicker{font-family:var(--font-num);font-size:1vh;letter-spacing:.16em;color:#ffb020;text-shadow:0 0 12px rgba(255,176,32,.55);margin-bottom:.15vh}.mvp-tickets .mvp-kicker{color:var(--cyan);text-shadow:0 0 12px rgba(45,226,197,.5)}.mvp-team .mvp-kicker{color:#b7a8ff;text-shadow:0 0 12px rgba(139,123,255,.55)}.mvp-body{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.7vw;align-items:center;flex:1;min-height:0}.mvp-body-empty{grid-template-columns:minmax(0,1fr) auto}.mvp-trophy{position:relative;width:7.2vh;height:8.6vh;display:grid;place-items:center;justify-self:end;flex-shrink:0}.mvp-trophy-svg{width:100%;height:100%;display:block}.mvp-diamond{position:relative;width:7vh;height:7.8vh;display:grid;place-items:center;justify-self:end;flex-shrink:0}.mvp-diamond-svg{width:100%;height:100%;display:block;animation:dia-pulse 2.6s ease-in-out infinite}.mvp-diamond-flare{position:absolute;top:18%;right:22%;bottom:18%;left:22%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.55) 0%,rgba(180,200,255,.15) 45%,transparent 70%);mix-blend-mode:screen;pointer-events:none;animation:dia-flare 2.2s ease-in-out infinite}.mvp-diamond-spark{position:absolute;width:.9vh;height:.9vh;pointer-events:none;background:linear-gradient(45deg,transparent 42%,#fff 48%,#fff 52%,transparent 58%),linear-gradient(-45deg,transparent 42%,#dce6ff 48%,#fff 52%,transparent 58%);filter:drop-shadow(0 0 .35vh rgba(255,255,255,.9));opacity:0;animation:dia-spark 1.8s ease-in-out infinite}.mvp-diamond-spark.s1{top:8%;right:10%;animation-delay:0s}.mvp-diamond-spark.s2{top:28%;left:4%;width:.7vh;height:.7vh;animation-delay:.45s}.mvp-diamond-spark.s3{bottom:22%;right:6%;width:1.05vh;height:1.05vh;animation-delay:.9s}.mvp-diamond-spark.s4{top:48%;right:2%;width:.55vh;height:.55vh;animation-delay:1.25s}@keyframes dia-pulse{0%,to{filter:brightness(1) saturate(1.05);transform:scale(1)}50%{filter:brightness(1.18) saturate(1.2);transform:scale(1.03)}}@keyframes dia-flare{0%,to{opacity:.35;transform:scale(.92)}50%{opacity:.85;transform:scale(1.08)}}@keyframes dia-spark{0%,to{opacity:0;transform:scale(.4) rotate(0)}40%{opacity:1;transform:scale(1) rotate(20deg)}70%{opacity:.2;transform:scale(.7) rotate(40deg)}}.mvp-avatar-wrap{position:relative;width:7.2vh;height:7.2vh;display:grid;place-items:center}.mvp-avatar-ring{position:relative;z-index:2;width:5.6vh;height:5.6vh;border-radius:50%;padding:.18vh;background:linear-gradient(145deg,#ffe7a8,#ff7a18 45%,#ff3d00 85%);box-shadow:0 0 16px #ff7814bf,0 0 32px #ff500059;animation:mvp-ring 1.8s ease-in-out infinite}.mvp-tickets .mvp-avatar-ring{background:linear-gradient(145deg,#b8ffe0,#2de2c5 45%,#2b6fff 85%);box-shadow:0 0 16px #2de2c5b3,0 0 32px #4f8cff59}.mvp-team .mvp-avatar-ring{background:linear-gradient(145deg,#ddd6ff,#8b7bff 45%,#5b4dff 85%);box-shadow:0 0 16px #8b7bffb3,0 0 32px #5b4dff59}.mvp-avatar,.mvp-avatar.avatar,.mvp-avatar.avatar-fallback{width:100%;height:100%;border-radius:50%;object-fit:cover;font-size:2.2vh}.mvp-crown{position:absolute;top:-.35vh;left:50%;transform:translate(-50%);z-index:3;font-family:var(--font-num);font-size:.85vh;font-weight:700;letter-spacing:.08em;padding:.15vh .45vw;border-radius:999px;color:#2a1400;background:linear-gradient(90deg,#ffe7a8,#ffb020);box-shadow:0 0 12px #ffb020a6;white-space:nowrap}.mvp-flame{position:absolute;top:18%;bottom:8%;width:1.6vh;z-index:1;pointer-events:none}.mvp-flame.left{left:-.15vh}.mvp-flame.right{right:-.15vh;transform:scaleX(-1)}.mvp-flame i{position:absolute;bottom:0;left:50%;width:1.1vh;height:2.4vh;margin-left:-.55vh;border-radius:50% 50% 40% 40%;background:radial-gradient(circle at 50% 75%,#fff6a8 0%,#ff9a1a 35%,#ff3b00 70%,transparent 100%);filter:blur(.3px);transform-origin:50% 100%;animation:flame-flicker .55s ease-in-out infinite alternate;opacity:.95}.mvp-flame i:nth-child(2){width:.85vh;height:1.9vh;margin-left:-.9vh;animation-duration:.42s;animation-delay:.08s;opacity:.8}.mvp-flame i:nth-child(3){width:.7vh;height:1.55vh;margin-left:.15vh;animation-duration:.48s;animation-delay:.14s;opacity:.75}.mvp-tickets .mvp-flame i{background:radial-gradient(circle at 50% 75%,#eafffe 0%,#2de2c5 40%,#2b6fff 75%,transparent 100%)}.mvp-team .mvp-flame i{background:radial-gradient(circle at 50% 75%,#f0ecff 0%,#8b7bff 40%,#5b4dff 75%,transparent 100%)}.mvp-meta{min-width:0}.mvp-name{font-size:1.85vh;font-weight:800;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 0 14px rgba(255,200,80,.35)}.mvp-dept{margin-top:.15vh;font-size:1.1vh;font-weight:700;opacity:.9}.mvp-score{margin-top:.35vh;font-family:var(--font-num);font-size:2.35vh;font-weight:800;line-height:1;color:#ffc45c;text-shadow:0 0 16px rgba(255,160,40,.45);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.mvp-score.tickets{color:var(--cyan);text-shadow:0 0 16px rgba(45,226,197,.45)}.mvp-score.team{color:#b7a8ff;text-shadow:0 0 16px rgba(139,123,255,.45)}.mvp-empty{flex:1;display:grid;place-items:center;color:var(--muted);font-size:1.2vh}@keyframes mvp-shine{0%{transform:translate(-40%)}to{transform:translate(40%)}}@keyframes mvp-pulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.08)}}@keyframes mvp-ring{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes flame-flicker{0%{transform:scaleY(.88) scaleX(1) translateY(0);opacity:.75}to{transform:scaleY(1.12) scaleX(.9) translateY(-8%);opacity:1}}@media(prefers-reduced-motion:reduce){.mvp-shine,.mvp-hero.has-mvp,.mvp-avatar-ring,.mvp-flame i,.mvp-diamond-svg,.mvp-diamond-flare,.mvp-diamond-spark{animation:none}}.progress-hero{--pct: 0%;position:relative;height:4vh;border-radius:999px;padding:.2vh;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 40%),#040816b8;border:1px solid rgba(120,200,255,.22);box-shadow:inset 0 1px 2px #0000008c,0 0 0 1px #ffffff0a,0 0 24px #2de2c51f;overflow:visible}.progress-track{position:relative;height:100%;border-radius:inherit;overflow:hidden;background:repeating-linear-gradient(90deg,transparent 0,transparent 1.4vw,rgba(255,255,255,.035) 1.4vw,rgba(255,255,255,.035) calc(1.4vw + 1px)),#080c1c8c}.progress-liquid{position:absolute;inset:0 auto 0 0;width:var(--pct);border-radius:inherit;overflow:hidden;transition:width 1.1s cubic-bezier(.22,1,.36,1);filter:drop-shadow(0 0 10px rgba(45,226,197,.45))}.liquid-base{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#1a4fd6,#2b6fff 18%,#2aa8ff 38%,#2de2c5 68%,#7cffb2 92%,#b8ffe0)}.liquid-flow{position:absolute;top:-20%;right:-40%;bottom:-20%;left:-40%;background:linear-gradient(115deg,transparent 0%,transparent 38%,rgba(255,255,255,.08) 45%,rgba(255,255,255,.55) 50%,rgba(180,255,255,.28) 54%,transparent 62%,transparent 100%);mix-blend-mode:screen;animation:liquid-flow 2.4s linear infinite}.liquid-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(255,255,255,.42) 0%,rgba(255,255,255,.08) 32%,transparent 58%),radial-gradient(120% 80% at 85% 50%,rgba(124,255,178,.55),transparent 55%);pointer-events:none}.liquid-wave{position:absolute;top:-55%;right:-2%;width:2.4vh;height:210%;border-radius:40%;background:#ffffff2e;filter:blur(.5px);animation:liquid-wave 1.8s ease-in-out infinite;pointer-events:none}.liquid-wave.w2{width:1.8vh;right:2%;opacity:.55;animation-duration:2.4s;animation-delay:-.7s;background:#7cffdc38}.liquid-bubbles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.liquid-bubbles i{position:absolute;bottom:-20%;width:.55vh;height:.55vh;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff,#b4ffff26);opacity:.55;animation:liquid-bubble 3.2s ease-in infinite}.liquid-bubbles i:nth-child(1){left:12%;animation-delay:0s;width:.45vh;height:.45vh}.liquid-bubbles i:nth-child(2){left:28%;animation-delay:.6s;animation-duration:2.7s}.liquid-bubbles i:nth-child(3){left:45%;animation-delay:1.1s;width:.7vh;height:.7vh}.liquid-bubbles i:nth-child(4){left:62%;animation-delay:.3s;animation-duration:3.6s}.liquid-bubbles i:nth-child(5){left:78%;animation-delay:1.5s;width:.4vh;height:.4vh}.liquid-bubbles i:nth-child(6){left:88%;animation-delay:.9s;animation-duration:2.9s}.progress-tip{position:absolute;top:50%;left:var(--pct);width:1.35vh;height:1.35vh;margin-left:-.65vh;margin-top:-.65vh;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#b8ffe0 28%,#2de2c5 58%,#2b6fff);box-shadow:0 0 8px 2px #7cffb2f2,0 0 22px 6px #2de2c58c,0 0 36px 10px #4f8cff59;transition:left 1.1s cubic-bezier(.22,1,.36,1),opacity .3s;animation:tip-pulse 1.6s ease-in-out infinite;z-index:2;pointer-events:none;opacity:0}.progress-hero.has-fill .progress-tip{opacity:1}.progress-tip:before{content:"";position:absolute;top:-.55vh;right:-.55vh;bottom:-.55vh;left:-.55vh;border-radius:50%;border:1px solid rgba(180,255,230,.55);animation:tip-ring 1.6s ease-out infinite}.progress-tip:after{content:"";position:absolute;top:50%;right:100%;width:3.5vh;height:.35vh;margin-top:-.18vh;border-radius:999px;background:linear-gradient(90deg,transparent,rgba(180,255,230,.85));filter:blur(.5px);opacity:.9;animation:tip-trail 1.2s linear infinite}.progress-hero-label{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--font-num);font-size:1.45vh;font-weight:700;letter-spacing:.04em;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.75),0 0 12px rgba(45,226,197,.45);pointer-events:none;z-index:3}@keyframes liquid-flow{0%{transform:translate(-35%)}to{transform:translate(35%)}}@keyframes liquid-wave{0%,to{transform:translateY(0) scaleY(1)}50%{transform:translateY(8%) scaleY(1.12)}}@keyframes liquid-bubble{0%{transform:translateY(0) scale(.6);opacity:0}15%{opacity:.7}to{transform:translateY(-140%) translate(.4vh) scale(1);opacity:0}}@keyframes tip-pulse{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.12);filter:brightness(1.25)}}@keyframes tip-ring{0%{transform:scale(.7);opacity:.9}to{transform:scale(1.8);opacity:0}}@keyframes tip-trail{0%{opacity:.25;transform:scaleX(.6)}50%{opacity:1;transform:scaleX(1)}to{opacity:.35;transform:scaleX(.85)}}@media(prefers-reduced-motion:reduce){.liquid-flow,.liquid-wave,.liquid-bubbles i,.progress-tip,.progress-tip:before,.progress-tip:after{animation:none}}.reward-kpi{background:linear-gradient(135deg,rgba(139,123,255,.14),rgba(79,140,255,.06) 50%,transparent 75%),linear-gradient(155deg,#ffffff2e,#ffffff0f 28%,#0c122824)}.reward-kpi.unlocked{background:linear-gradient(135deg,rgba(61,255,168,.14),rgba(45,226,197,.06) 50%,transparent 75%),linear-gradient(155deg,#ffffff2e,#ffffff0f 28%,#0c122824)}.section-featured.team-scoreboard{box-shadow:0 18px 50px #00000059,inset 0 1px #fff6,0 0 0 1px #2de2c52e,0 0 36px #2de2c51a}.mid{display:grid;grid-template-columns:var(--cols);gap:var(--gap-x);min-height:0}.section{min-height:0;display:flex;flex-direction:column;padding:var(--pad)}.section-title{display:flex;align-items:baseline;justify-content:space-between;gap:.6vw;margin-bottom:.8vh;min-height:2.2vh}.section-title h3{margin:0;font-size:1.65vh;font-weight:800;letter-spacing:.04em}.section-title span{color:var(--muted);font-size:1.05vh;white-space:nowrap}.section-title>span.title-sub-hide,.section-title .score-formula.title-sub-hide{display:none!important}.rank-list,.week-rank-list{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:space-evenly;gap:.45vh}.panel-scroll,.person-list,.featured-rank,.week-table-wrap,.week-table-scroll,.week-combined-table-wrap{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(124,140,255,.45) rgba(255,255,255,.06)}.panel-scroll::-webkit-scrollbar,.person-list::-webkit-scrollbar,.featured-rank::-webkit-scrollbar,.week-table-wrap::-webkit-scrollbar,.week-table-scroll::-webkit-scrollbar,.week-combined-table-wrap::-webkit-scrollbar{width:6px;height:6px}.panel-scroll::-webkit-scrollbar-track,.person-list::-webkit-scrollbar-track,.featured-rank::-webkit-scrollbar-track,.week-table-wrap::-webkit-scrollbar-track,.week-table-scroll::-webkit-scrollbar-track,.week-combined-table-wrap::-webkit-scrollbar-track{background:#ffffff0f;border-radius:999px}.panel-scroll::-webkit-scrollbar-thumb,.person-list::-webkit-scrollbar-thumb,.featured-rank::-webkit-scrollbar-thumb,.week-table-wrap::-webkit-scrollbar-thumb,.week-table-scroll::-webkit-scrollbar-thumb,.week-combined-table-wrap::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#4f8cffb3,#2de2c58c);border-radius:999px}.panel-scroll::-webkit-scrollbar-corner,.person-list::-webkit-scrollbar-corner,.featured-rank::-webkit-scrollbar-corner,.week-table-wrap::-webkit-scrollbar-corner,.week-table-scroll::-webkit-scrollbar-corner,.week-combined-table-wrap::-webkit-scrollbar-corner{background:transparent}.person-list{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;justify-content:flex-start;gap:.55vh}.rank-row{display:grid;grid-template-columns:2.6vh 7vw 1fr auto;gap:.5vw;align-items:center}.badge{width:2.5vh;height:2.5vh;border-radius:8px;display:grid;place-items:center;font-family:var(--font-num);font-size:1.1vh;background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.badge.top1{background:linear-gradient(180deg,#ffe7a8,#ffb020);color:#2a1800;border:none}.badge.top2{background:linear-gradient(180deg,#e9eef8,#9eb0c8);color:#1b2430;border:none}.badge.top3{background:linear-gradient(180deg,#ffd0a8,#d97840);color:#2a1400;border:none}.dept-name{font-size:1.4vh;font-weight:700}.bar-track{height:1.25vh;border-radius:999px;background:#080c1c80;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px 2px #0006;overflow:visible}.bar-fill{height:100%;border-radius:inherit;transition:width .8s ease;box-shadow:0 0 10px #4f8cffa6,0 0 22px #4f8cff59,inset 0 1px #fff6;position:relative}.bar-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.8),transparent 70%);pointer-events:none}.points-num{font-family:var(--font-num);font-size:1.8vh;font-weight:700;color:#c9d4ff;min-width:4vw;text-align:right}.featured-title{align-items:flex-end;margin-bottom:1vh;padding-bottom:.7vh;border-bottom:1px solid rgba(124,200,255,.14)}.featured-title-left{min-width:0;flex:1}.featured-title-row{display:flex;align-items:baseline;gap:.7vw;flex-wrap:wrap}.featured-kicker{font-family:var(--font-num);font-size:.95vh;letter-spacing:.18em;color:var(--cyan);margin-bottom:.25vh;text-shadow:0 0 12px rgba(45,226,197,.35)}.score-formula{margin:0;font-size:1.05vh;color:#bed2ffb3;letter-spacing:.02em;white-space:nowrap}.section-featured .section-title h3{font-size:2.15vh;letter-spacing:.06em}.section-featured .section-title>span{font-size:1.2vh;color:#c8dcffb8;padding:.35vh .7vw;border-radius:999px;border:1px solid rgba(124,200,255,.2);background:#2de2c50f}.featured-rank{gap:.65vh;justify-content:flex-start;overflow-y:auto;overflow-x:hidden;padding-right:.25vw}.featured-rank .featured-row{flex-shrink:0}.featured-row{--team: #2de2c5;grid-template-columns:3vh 8.5vw minmax(0,1fr) auto;gap:.65vw;padding:.25vh .55vw;border-radius:12px;transition:background .25s ease,box-shadow .25s ease}.featured-row.top-1,.featured-row.is-leader{background:linear-gradient(90deg,color-mix(in srgb,var(--team) 22%,transparent),color-mix(in srgb,var(--team) 6%,transparent) 55%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--team) 35%,transparent),0 0 22px color-mix(in srgb,var(--team) 18%,transparent)}.featured-row.top-2,.featured-row.top-3{background:linear-gradient(90deg,color-mix(in srgb,var(--team) 10%,transparent),transparent 70%)}.featured-row .badge{width:3vh;height:3vh;font-size:1.25vh;border-radius:10px}.dept-block{min-width:0}.featured-row .dept-name{font-size:1.65vh;display:flex;align-items:center;gap:.35vw;white-space:nowrap}.leader-tag{font-style:normal;font-size:1vh;font-weight:800;letter-spacing:.06em;padding:.15vh .45vw;border-radius:999px;color:#061018;background:linear-gradient(90deg,#ffe7a8,#ffb020);box-shadow:0 0 12px #ffb02073}.dept-sub{margin-top:.2vh;font-size:1.05vh;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.featured-bar{height:1.7vh}.points-block{display:flex;align-items:baseline;justify-content:flex-end;gap:.2vw;min-width:5.2vw}.featured-row .points-num{font-size:2.6vh;font-weight:800;color:#f2f6ff;text-shadow:0 0 14px color-mix(in srgb,var(--team) 55%,transparent);min-width:0;line-height:1}.featured-row.is-leader .points-num{font-size:3vh;color:#fff}.points-unit{font-size:1.15vh;color:var(--muted);font-weight:700}.week-table-wrap{flex:1;min-height:0;overflow:auto;padding-right:.15vw;display:flex;flex-direction:column}.week-table-wrap.week-table-frozen{flex-direction:row;align-items:stretch;overflow:hidden;padding-right:0;gap:0}.week-table-fixed{flex:0 0 auto;width:auto;min-width:0;height:100%;z-index:2}.week-table-scroll{flex:1;min-width:0;min-height:0;overflow:auto;padding-right:.15vw}.week-table-main{width:max-content;min-width:100%;height:100%}table.week-table{width:max-content;min-width:100%;height:100%;border-collapse:separate;border-spacing:0;font-size:1.2vh;table-layout:auto}.week-table-fixed.week-table{width:auto;min-width:0}.week-table tbody{height:100%}.week-table tbody tr{height:1%}.week-table th,.week-table td{white-space:nowrap}.week-table th{color:var(--muted);font-weight:500;text-align:left;padding:.4vh .55vw;border-bottom:1px solid rgba(255,255,255,.08)}.week-table td{padding:.55vh .35vw;border-bottom:1px solid rgba(255,255,255,.04);font-size:1.5vh;vertical-align:middle}.week-table .sticky-col-rank{min-width:2.6vw;width:2.6vw}.week-table .sticky-col-dept{min-width:2.5vw;padding-right:.9vw}.week-table .num{font-family:var(--font-num);font-size:1.55vh;font-weight:700}.week-table .cyan{color:var(--cyan)}.week-table .amber{color:var(--amber)}.person-row{display:grid;grid-template-columns:2.5vh auto minmax(0,1fr) auto;gap:.5vw;align-items:center;padding:.25vh .45vw;border-radius:10px}.person-row.top{background:linear-gradient(90deg,#4f8cff24,#ffffff08);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px #ffffff1f}.person-row.is-supervisor{opacity:.92}.person-avatar-wrap{display:flex;align-items:center;min-width:0}.person-name-row{display:flex;align-items:center;gap:.4vw;min-width:0}.supervisor-tag{flex-shrink:0;padding:.12vh .4vw;border-radius:999px;font-size:.95vh;font-weight:700;letter-spacing:.02em;line-height:1.2;color:#ffd7a8;background:#ffb02024;border:1px solid rgba(255,176,32,.35);white-space:nowrap}.avatar,.avatar-fallback{width:3.6vh;height:3.6vh;border-radius:50%;flex-shrink:0;border:2px solid rgba(255,255,255,.28);box-shadow:0 0 14px #4f8cff73,inset 0 1px #ffffff59}.avatar{object-fit:cover;background:linear-gradient(135deg,#4f8cff,#8b7bff)}.avatar-fallback{display:grid;place-items:center;font-size:1.4vh;font-weight:800;color:#fff}.person-meta{min-width:0}.person-name{font-size:1.35vh;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-dept{color:var(--muted);font-size:1vh;margin-top:.1vh}.person-score{font-family:var(--font-num);font-size:1.7vh;font-weight:700;color:var(--cyan);text-align:right}.person-score.amount{color:var(--amber)}.bottom-stack{min-height:0;display:flex;flex-direction:column}.week-hover-zone{position:relative;isolation:isolate;min-height:0;height:100%;align-self:stretch;grid-column:1 / 3;display:flex;flex-direction:column}.week-hover-main{min-height:0;flex:1;height:100%;display:grid;grid-template-columns:1.85fr 1.05fr;gap:var(--gap-x);align-items:stretch}.week-hover-main>.section,.week-hover-main>.bottom-week-wrap{min-height:0;height:100%}.week-switcher-float{position:absolute;left:0;right:0;bottom:.45vh;top:auto;z-index:30;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(1.4vh);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}.week-hover-zone:hover .week-switcher-float,.week-hover-zone:focus-within .week-switcher-float{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.bottom-row{min-height:0;display:grid;grid-template-columns:1.85fr 1.05fr 1.6fr;gap:var(--gap-x)}.bottom-week-wrap{min-height:0;height:100%;align-self:stretch;display:flex;flex-direction:column}.week-split{min-height:0;flex:1;height:100%;display:flex;flex-direction:column;gap:.55vh}.week-switcher-bar{display:flex;align-items:center;justify-content:space-between;gap:.8vw;padding:.55vh .8vw;border-radius:14px;box-shadow:0 10px 28px #00000059,0 0 0 1px #8ca0ff29}.week-split-grid{flex:1;min-height:0;height:100%;display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-x);align-items:stretch}.week-metric-board{min-height:0;height:100%;display:flex;flex-direction:column}.week-metric-list{flex:1;min-height:0;display:flex;flex-direction:column;gap:.25vh;overflow:hidden}.week-metric-row{flex:1 1 0;min-height:0;display:grid;grid-template-columns:3vh minmax(0,.65fr) minmax(0,.5fr) minmax(0,1fr) minmax(0,.65fr);gap:.4vw;align-items:center;padding:0 .45vw;border-radius:10px;background:#ffffff08}.week-metric-row>*{min-width:0}.week-metric-row>:nth-child(1){justify-self:center;text-align:center}.week-metric-row>:nth-child(2){justify-self:start;text-align:left}.week-metric-row>:nth-child(n+3){justify-self:stretch;text-align:right;font-variant-numeric:tabular-nums}.week-metric-row.head{flex:0 0 auto;min-height:2vh;background:transparent;color:var(--muted);font-size:1.15vh;font-weight:500;padding-bottom:.15vh}.week-metric-row .dept{font-weight:700;font-size:1.45vh;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-metric-row .num{font-family:var(--font-num);font-size:1.5vh;font-weight:700;text-align:right;font-variant-numeric:tabular-nums}.week-metric-row .num.cyan{color:var(--cyan)}.week-metric-row .num.points{color:#ffe7a8}.week-metric-row .badge{width:2.4vh;height:2.4vh;margin:0 auto;font-size:1.15vh}.bottom-row>.section,.bottom-row>.week-combined{min-height:0}.trend-board{min-height:0;display:flex;flex-direction:column}.trend-board .section-title{align-items:center}.trend-tabs{display:inline-flex;gap:4px;padding:2px;border-radius:999px;background:#080c1c73;border:1px solid rgba(255,255,255,.1)}.trend-tabs button{border:none;background:transparent;color:#c8d2f0b3;font-size:1.05vh;font-weight:700;padding:.35vh .7vw;border-radius:999px;cursor:pointer}.trend-tabs button.active{color:#061018;background:linear-gradient(90deg,#2de2c5,#7cc8ff)}.trend-chart{flex:1;min-height:16vh;width:100%}.week-combined{flex:1;min-height:0}.week-switcher-inner{display:grid;grid-template-columns:1fr auto;gap:var(--gap);align-items:center;margin-bottom:.8vh}.week-combined-table-wrap{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding-right:.15vw}table.week-combined-table{width:100%;height:auto;border-collapse:collapse;font-size:1.35vh}.week-combined-table th{color:var(--muted);font-weight:500;text-align:left;padding:.55vh .5vw;border-bottom:1px solid rgba(255,255,255,.1)}.week-combined-table td{padding:.5vh .5vw;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:middle}.week-combined-table tr:last-child td{border-bottom:none}.week-combined-table .num{font-family:var(--font-num);font-size:1.7vh;font-weight:700}.week-combined-table .points{color:var(--cyan)}.week-combined-table .total{color:var(--amber);font-size:1.9vh}.week-combined-table .preview{color:#ffc45c8c}.week-combined-table .badge{margin:0 auto}.week-tabs{display:flex;gap:.45vw;flex-wrap:wrap;overflow:visible}.week-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg,#ffffff1a,#ffffff08);color:var(--muted);border-radius:999px;padding:.55vh .85vw;font-size:1.15vh;cursor:pointer;transition:.15s ease;white-space:nowrap;box-shadow:inset 0 1px #ffffff2e}.week-tab:hover{color:var(--text);border-color:#b4d2ff66;box-shadow:inset 0 1px #ffffff38,0 0 12px #4f8cff33}.week-tab.active{color:#061018;background:linear-gradient(90deg,var(--cyan),#7cc8ff);border-color:transparent;font-weight:700;box-shadow:0 0 16px #2de2c573,inset 0 1px #ffffff59}.week-tab.current:not(.active){border-color:#2de2c573;color:var(--cyan)}.week-switcher-meta{color:var(--muted);font-size:1.1vh;text-align:right;white-space:nowrap}.loading,.error{height:100%;display:grid;place-items:center;font-size:2vh;color:var(--muted)}.error{color:var(--danger)}.game-board .game-rank-list{gap:.55vh;justify-content:space-evenly;overflow:hidden;padding-right:0}.game-rank-row{grid-template-columns:2.6vh 2.5vw 1fr auto}.game-score{color:#ffe7a8;min-width:3.2vw}@media(max-width:1480px){.mvp-trophy,.mvp-diamond{display:none!important}.mvp-body{grid-template-columns:auto minmax(0,1fr);gap:.55vw}.mvp-body-empty{grid-template-columns:minmax(0,1fr)}.mvp-score{font-size:2.1vh;letter-spacing:0}.supervisor-tag{display:none!important}.week-metric-amount .week-metric-row{grid-template-columns:3vh minmax(0,.9fr) minmax(0,1fr) minmax(0,.95fr)}.week-metric-amount .week-metric-row>:nth-child(3){display:none!important}}@media(max-width:1100px){.mvp-score{font-size:1.85vh}.mvp-name{font-size:1.55vh}}html.is-mobile,html.is-mobile body,html.is-mobile #root{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}html.is-mobile .screen{width:100%;min-height:100vh;height:auto;overflow:visible;grid-template-rows:auto;gap:10px;padding:10px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}html.is-mobile .header{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:10px 12px;text-align:center}html.is-mobile .header>div:first-child{width:100%;text-align:center}html.is-mobile .brand-sub{display:none!important}html.is-mobile .countdown{justify-self:center;width:100%;display:flex;flex-direction:column;align-items:center}html.is-mobile .header-right{display:none!important}html.is-mobile .kpi-row{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"goal goal goal" "team amount tickets";gap:8px}html.is-mobile .kpi-row>.kpi-goal{grid-area:goal}html.is-mobile .kpi-row>.mvp-team{grid-area:team}html.is-mobile .kpi-row>.mvp-amount{grid-area:amount}html.is-mobile .kpi-row>.mvp-tickets{grid-area:tickets}html.is-mobile .kpi-goal .goal-main{grid-template-columns:1fr 1fr 1fr;gap:8px}html.is-mobile .mvp-trophy,html.is-mobile .mvp-diamond{display:none!important}html.is-mobile .mvp-hero{min-height:0;padding:8px 6px}html.is-mobile .mvp-hero .kpi-top{justify-content:center;text-align:center}html.is-mobile .mvp-hero .kpi-top>div:first-child{width:100%}html.is-mobile .mvp-hero .kpi-icon{display:none}html.is-mobile .mvp-body{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px}html.is-mobile .mvp-body-empty{display:flex;align-items:center;justify-content:center;text-align:center}html.is-mobile .mvp-meta{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0;width:100%}html.is-mobile .mvp-score{font-size:12px;letter-spacing:0}html.is-mobile .mvp-name{font-size:12px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}html.is-mobile .mvp-dept,html.is-mobile .kpi-label,html.is-mobile .mvp-kicker{font-size:10px}html.is-mobile .mvp-avatar-wrap{margin:0 auto}html.is-mobile .mid,html.is-mobile .bottom-row{grid-template-columns:1fr;gap:10px}html.is-mobile .featured-row{grid-template-columns:28px minmax(3.6em,max-content) minmax(56px,1fr) auto;gap:6px;align-items:center;padding:6px 4px}html.is-mobile .featured-row .badge{grid-column:1;grid-row:1}html.is-mobile .featured-row .dept-block{display:block;min-width:0}html.is-mobile .featured-row .dept-name{grid-column:auto;grid-row:auto;font-size:13px;max-width:5.2em;overflow:hidden;text-overflow:ellipsis}html.is-mobile .featured-row .dept-sub{display:none!important}html.is-mobile .featured-row .featured-bar{grid-column:auto;grid-row:auto;height:12px;align-self:center}html.is-mobile .featured-row .points-block{grid-column:auto;min-width:0}html.is-mobile .featured-row .points-num{font-size:16px}html.is-mobile .featured-row.is-leader .points-num{font-size:17px}html.is-mobile .week-hover-zone{grid-column:auto;height:auto;min-height:0}html.is-mobile .week-hover-main{grid-template-columns:1fr;gap:10px;height:auto}html.is-mobile .week-hover-main>.section,html.is-mobile .week-hover-main>.bottom-week-wrap{height:auto;min-height:240px}html.is-mobile .week-split-grid{grid-template-columns:1fr;gap:10px}html.is-mobile .week-metric-list{overflow:visible;gap:4px}html.is-mobile .week-metric-row{grid-template-columns:22px max-content max-content max-content;justify-content:start;column-gap:12px;row-gap:0;padding:4px 2px;flex:0 0 auto;min-height:32px}html.is-mobile .week-metric-row>:nth-child(3){display:none!important}html.is-mobile .week-metric-row>:nth-child(n+3){justify-self:start;text-align:right}html.is-mobile .week-metric-row .dept{font-size:12px;max-width:none;width:auto}html.is-mobile .week-metric-row .num{font-size:12px;min-width:3.6em;text-align:right}html.is-mobile .week-metric-row.head{font-size:10px;min-height:20px}html.is-mobile .week-metric-row.head>:nth-child(n+3){text-align:right}html.is-mobile .week-metric-row .badge{width:20px;height:20px;font-size:10px}html.is-mobile .game-rank-row{grid-template-columns:24px minmax(3.2em,max-content) minmax(72px,1fr) auto;gap:6px;align-items:center}html.is-mobile .game-rank-row .dept-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:4.8em;font-size:13px}html.is-mobile .game-rank-row .bar-track{min-width:0;height:10px}html.is-mobile .game-score{min-width:0;font-size:13px}html.is-mobile .bottom-row>.section,html.is-mobile .trend-board{min-height:260px;height:auto}html.is-mobile .section,html.is-mobile .kpi{padding:10px 12px}html.is-mobile .featured-rank,html.is-mobile .person-list,html.is-mobile .rank-list{max-height:none;overflow:visible}html.is-mobile .supervisor-tag{font-size:9px;padding:1px 4px}.clock-time{font-family:var(--font-num);font-size:2.2vh;letter-spacing:.08em;text-align:center;line-height:1.1}.clock-date{text-align:center;color:var(--muted);font-size:1vh;margin-top:.1vh;line-height:1.2}.countdown{position:relative;justify-self:center;text-align:center;padding:0;background:none;border:none;box-shadow:none;overflow:visible}.countdown-kicker{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.35vw;font-family:var(--font-num);font-size:1.05vh;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#ffb08a}.countdown-pulse{width:.75vh;height:.75vh;border-radius:50%;background:#ff4d3a;box-shadow:0 0 8px #ff4d3a,0 0 16px #ff46288c;animation:countdown-beat 1s ease-in-out infinite}.countdown-digits{position:relative;z-index:1;margin-top:.15vh;display:flex;align-items:flex-start;justify-content:center;gap:.35vw}.countdown-unit{min-width:4.2vw}.countdown-num{font-family:var(--font-num);font-size:3.6vh;font-weight:800;font-variation-settings:"wdth" 95,"opsz" 48;letter-spacing:.02em;line-height:1;text-shadow:0 0 16px rgba(255,90,50,.65),0 0 32px rgba(255,60,30,.35);background:linear-gradient(180deg,#fff 10%,#ffd0b8,#ff7a4d);-webkit-background-clip:text;background-clip:text;color:transparent}.countdown-num.sec{color:#ff6b4a;background:none;-webkit-background-clip:unset;background-clip:unset;text-shadow:0 0 18px rgba(255,70,40,.85)}.countdown-label{margin-top:.2vh;font-size:.95vh;letter-spacing:.14em;color:#ffbea0cc}.countdown-sep{font-family:var(--font-num);font-size:3vh;font-weight:800;color:#ff8a60;line-height:1.05;padding-top:.15vh;text-shadow:0 0 12px rgba(255,90,50,.55)}.countdown-sep.blink{animation:countdown-colon 1s steps(1) infinite}.countdown-foot{position:relative;z-index:1;margin-top:.15vh;font-size:.9vh;color:#ffb496b3;letter-spacing:.06em}.countdown-done-text{position:relative;z-index:1;margin-top:.2vh;font-family:var(--font-num);font-size:3vh;font-weight:800;letter-spacing:.12em;color:#2de2c5;text-shadow:0 0 16px rgba(45,226,197,.45)}.countdown-hot .countdown-num{background:linear-gradient(180deg,#fff 5%,#ffc0a0 40%,#ff5530);-webkit-background-clip:text;background-clip:text;text-shadow:0 0 18px rgba(255,70,40,.7),0 0 36px rgba(255,40,20,.35)}.countdown-hot .countdown-kicker{color:#ff9a78}.countdown-critical .countdown-kicker{color:#ff8a7a}.countdown-critical .countdown-num{background:linear-gradient(180deg,#fff,#ffb0a0 35%,#ff2a2a);-webkit-background-clip:text;background-clip:text;animation:countdown-tick 1s steps(1) infinite;text-shadow:0 0 20px rgba(255,40,30,.8),0 0 40px rgba(255,20,20,.4)}.countdown-critical .countdown-num.sec{color:#ff3b3b;background:none;-webkit-background-clip:unset;background-clip:unset}.countdown-critical .countdown-pulse{background:#ff1f1f;box-shadow:0 0 10px #ff1f1f,0 0 20px #ff1e1eb3;animation:countdown-beat .55s ease-in-out infinite}.countdown.countdown-ended{animation:none}.countdown.countdown-ended .countdown-kicker{color:#7dffe0}.countdown.countdown-ended .countdown-pulse{background:#2de2c5;box-shadow:0 0 8px #2de2c5;animation:none}@keyframes countdown-beat{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.7);opacity:.55}}@keyframes countdown-colon{0%,49%{opacity:1}50%,to{opacity:.2}}@keyframes countdown-tick{0%,90%{opacity:1}91%,to{opacity:.72}}@media(prefers-reduced-motion:reduce){.countdown-pulse,.countdown-sep.blink,.countdown-critical .countdown-num,.countdown-critical .countdown-pulse{animation:none}}
