:root{--color-bg:#f5f6f4;--color-surface:#fff;--color-surface-alt:#eef2f0;--color-text:#1f2723;--color-muted:#64706a;--color-border:#d7dfda;--color-accent:#16735f;--color-accent-strong:#105a4a;--color-action:#2454a6;--color-action-strong:#1d3f7e;--color-blue:#2563eb;--color-danger:#b42318;--color-danger-bg:#fff0ed;--color-success:#0f766e;--color-success-bg:#e7f6f2;--shadow-panel:0 16px 36px #1f272314;--radius-panel:8px;--space-page:clamp(16px, 4vw, 40px);color:var(--color-text);background:var(--color-bg);letter-spacing:0;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,Source Han Sans SC,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--color-bg);min-width:320px}body{background:var(--color-bg);min-width:320px;min-height:100vh;margin:0}a{color:inherit}button,input,select{min-width:0;font:inherit;letter-spacing:0}button:disabled{cursor:not-allowed;opacity:.58}.page{min-height:100vh;padding:var(--space-page);place-items:center;display:grid}.login-choice{border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);width:min(100%,520px);box-shadow:var(--shadow-panel);padding:clamp(24px,5vw,40px)}.login-form-panel{width:min(100%,460px)}.login-choice h1,.topbar h1{letter-spacing:0;margin:0;font-size:clamp(1.7rem,4vw,2.35rem);font-weight:700;line-height:1.18}.eyebrow{color:var(--color-accent);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:.76rem;font-weight:700}.choice-row,.toolbar,.form-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.choice-row{margin-top:26px}.button{border:1px solid var(--color-action);background:var(--color-action);color:#fff;cursor:pointer;overflow-wrap:anywhere;text-align:center;border-radius:6px;justify-content:center;align-items:center;min-width:0;max-width:100%;min-height:40px;padding:8px 16px;font-size:.92rem;font-weight:650;line-height:1.3;text-decoration:none;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}.button:hover,.button:focus-visible{border-color:var(--color-action-strong);background:var(--color-action-strong)}.button:focus-visible,.link-button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #16735f38}.button.secondary{border-color:var(--color-border);background:var(--color-surface-alt);color:var(--color-text)}.button.secondary:hover,.button.secondary:focus-visible{color:var(--color-text);background:#e3ebe7;border-color:#b9c5bf}.link-button{color:var(--color-blue);cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;padding:0;font-weight:650}.app-shell{width:min(1440px,100%);min-height:100vh;padding:var(--space-page);margin:0 auto}.topbar{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(180px,1fr) minmax(0,3fr);align-items:end;gap:18px;padding:0 0 18px;display:grid}.topbar>div,.toolbar{min-width:0}.toolbar{justify-content:end}.operator,.unsaved,.muted{min-width:0;color:var(--color-muted);overflow-wrap:anywhere;font-size:.9rem}.section-band{border-bottom:1px solid var(--color-border);padding:22px 0}.section-heading,.team-heading,.form-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.section-heading{margin-bottom:14px}.section-heading h2,.team-heading h3,.form-title h3{letter-spacing:0;overflow-wrap:anywhere;min-width:0;margin:0;font-weight:700}.section-heading h2{font-size:1.12rem}.team-heading{justify-content:flex-start;margin-bottom:8px}.team-heading h3,.form-title h3{font-size:1rem}.team-stack{gap:18px;display:grid}.team-section{min-width:0}.team-swatch{background:var(--team-color,var(--color-accent));border-radius:999px;flex:none;width:12px;height:12px;box-shadow:0 0 0 2px #fff}.team-swatch.mini{vertical-align:-1px;margin-right:8px;display:inline-block}.table-scroll{-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);width:100%;max-width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{border-bottom:1px solid var(--color-border);text-align:left;text-overflow:ellipsis;vertical-align:top;white-space:nowrap;max-width:280px;padding:9px 11px;font-size:.91rem;line-height:1.35;overflow:hidden}th{color:var(--color-muted);background:#f8faf8;font-size:.8rem;font-weight:700}tbody tr:last-child td{border-bottom:0}.strong{font-weight:700}.amount-input{border:1px solid var(--color-border);width:132px;min-height:36px;color:var(--color-text);background:#fff;border-radius:6px;padding:7px 9px}.input-error{border-color:var(--color-danger);background:var(--color-danger-bg);box-shadow:0 0 0 2px #b423181f}.status{min-height:24px;color:var(--color-muted);white-space:normal;align-items:center;font-size:.85rem;font-weight:650;display:inline-flex}.status.pending{color:var(--color-blue)}.status.error{color:var(--color-danger)}.notice{overflow-wrap:anywhere;border-radius:6px;margin:14px 0 0;padding:10px 12px;font-size:.92rem;line-height:1.45}.notice.error{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid #ffcdc5}.notice.success{background:var(--color-success-bg);color:var(--color-success);border:1px solid #bfe6da}.empty-state{color:var(--color-muted);overflow-wrap:anywhere;margin:0;padding:28px 0}.form-grid,.maintenance-form{gap:14px;margin-top:18px;display:grid}.field{gap:6px;min-width:0;display:grid}.field span,.check-field span{color:var(--color-muted);font-size:.82rem;font-weight:700}.inline-field{grid-template-columns:auto minmax(140px,1fr);align-items:center}.field input,.field select{border:1px solid var(--color-border);width:100%;min-width:0;min-height:38px;color:var(--color-text);background:#fff;border-radius:6px;padding:7px 9px}.form-row{grid-template-columns:minmax(100px,1fr) minmax(90px,.65fr);gap:12px;display:grid}.check-field{align-items:center;gap:8px;display:inline-flex}.check-field input{width:16px;height:16px;accent-color:var(--color-accent)}.form-actions{justify-content:space-between;margin-top:4px}.maintenance-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.maintenance-form{border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);margin-top:0;padding:16px}.maintenance-lists{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px;margin-top:18px;display:grid}.manager-controls{padding:18px 0}.manager-range-form,.custom-range,.rank-team,.rank-values,.table-tabs{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.manager-range-form{justify-content:space-between}.segmented{border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.segment,.tab-button{min-height:34px;color:var(--color-muted);cursor:pointer;background:0 0;border:0;border-radius:5px;font-size:.88rem;font-weight:700}.segment{white-space:nowrap;padding:0 13px}.segment.active,.tab-button.active{background:var(--color-action);color:#fff}.custom-range{min-width:min(100%,430px)}.custom-range .inline-field{flex:190px}.range-caption{min-width:0;color:var(--color-muted);overflow-wrap:anywhere;font-size:.9rem;font-weight:650}.summary-strip{border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);grid-template-columns:minmax(180px,1.2fr) repeat(2,minmax(140px,.8fr));display:grid;overflow:hidden}.metric{border-right:1px solid var(--color-border);gap:5px;min-width:0;padding:13px 15px;display:grid}.metric:last-child{border-right:0}.metric span{color:var(--color-muted);font-size:.78rem;font-weight:700}.metric strong{overflow-wrap:anywhere;min-width:0;font-size:1.1rem;line-height:1.25}.rank-stack{border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface);gap:0;margin-top:16px;display:grid}.rank-row{border-bottom:1px solid var(--color-border);box-shadow:inset 4px 0 0 var(--team-color,var(--color-accent));grid-template-columns:minmax(190px,.85fr) minmax(180px,1.3fr) minmax(260px,1fr);align-items:center;gap:14px;padding:11px 13px;display:grid}.rank-row:last-child{border-bottom:0}.rank-number{min-width:38px;color:var(--color-muted);font-size:.82rem;font-weight:800}.rank-bar{background:var(--color-surface-alt);border-radius:999px;height:10px;overflow:hidden}.rank-bar span{width:var(--bar-width,0%);border-radius:inherit;background:var(--team-color,var(--color-accent));height:100%;display:block}.rank-values{min-width:0;color:var(--color-muted);overflow-wrap:anywhere;justify-content:flex-end;font-size:.84rem}.rank-values strong{min-width:0;color:var(--color-text);overflow-wrap:anywhere;font-size:.96rem}.rank-team{min-width:0}.rank-team .strong,.rank-values span{overflow-wrap:anywhere;min-width:0}.table-tabs{margin-bottom:12px}.tab-button{border:1px solid var(--color-border);background:var(--color-surface);padding:0 12px}.tab-button.active{border-color:var(--color-action)}.manager-table-scroll table{min-width:980px}.delta-positive,.delta-negative{font-weight:700}.delta-positive{color:var(--color-success)}.delta-negative{color:var(--color-danger)}.pk-board{color:#f8fbff;background:radial-gradient(circle at 50% 28%,#ffd66633,#0000 22%),linear-gradient(135deg,#071832,#0b2f4d 44%,#151737);min-height:100vh;padding:clamp(18px,3vw,36px);position:relative;overflow:hidden}.pk-board:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff14 1px,#0000 1px),linear-gradient(90deg,#ffffff14 1px,#0000 1px);background-size:54px 54px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000000b3,#0000);mask-image:linear-gradient(#000000b3,#0000)}.pk-header,.pk-stage,.pk-flash{z-index:1;position:relative}.pk-header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:clamp(18px,3vw,34px);display:flex}.pk-header h1{margin:0;font-size:clamp(2rem,5vw,4.4rem);line-height:1}.pk-header h1 span,.pk-vs strong{color:#ffd666}.pk-nav{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.pk-nav a{background:#ffffff1a;border:1px solid #ffffff38;border-radius:6px;padding:8px 12px;text-decoration:none}.pk-stage{grid-template-columns:minmax(0,1fr) minmax(150px,.24fr) minmax(0,1fr);align-items:stretch;gap:clamp(14px,2vw,28px);display:grid}.pk-team{background:linear-gradient(#ffffff24,#ffffff12);border:1px solid #fff3;border-radius:8px;align-content:start;gap:20px;min-height:560px;padding:clamp(18px,3vw,30px);display:grid;box-shadow:inset 0 0 0 1px #ffffff14,0 20px 70px #00000038}.pk-team.left{box-shadow:inset 5px 0 0 var(--team-color), 0 20px 70px #00000038}.pk-team.right{box-shadow:inset -5px 0 0 var(--team-color), 0 20px 70px #00000038}.pk-team-head{align-items:center;gap:12px;display:flex}.pk-team-head h2{margin:0;font-size:clamp(1.7rem,3vw,3rem)}.pk-amount{color:#fff;overflow-wrap:anywhere;font-size:clamp(2.4rem,6vw,6.4rem);font-weight:800;line-height:.95}.pk-bar{background:#ffffff29;border-radius:999px;height:18px;overflow:hidden}.pk-bar span{width:var(--bar-width,0%);border-radius:inherit;background:linear-gradient(90deg, var(--team-color), #ffd666);height:100%;display:block}.pk-meta,.pk-list div,.pk-vs{align-items:center;gap:10px;display:flex}.pk-meta{color:#dce8ff;flex-wrap:wrap;font-weight:700}.pk-list{gap:10px;margin-top:4px;display:grid}.pk-list div{background:#ffffff1f;border-radius:6px;justify-content:space-between;padding:12px 14px}.pk-list p{color:#b9c8df;margin:0}.pk-vs{text-align:center;flex-direction:column;justify-content:center;align-self:center;min-height:260px}.pk-vs strong{text-shadow:0 0 24px #ffd6666b;font-size:clamp(3rem,7vw,7rem);line-height:.9}.pk-vs span,.pk-vs small{color:#dce8ff;font-weight:700}.pk-flash{background:#08162ceb;border:1px solid #ffd666cc;border-radius:8px;justify-items:center;min-width:min(680px,100vw - 32px);padding:16px 20px 54px;animation:4.8s both pk-flash-pop;display:grid;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 18px 70px #0006}.pk-flash strong{color:#fff;font-size:clamp(1.4rem,3vw,2.5rem)}.rocket{background:linear-gradient(#fff,#83b4ff);border-radius:999px 999px 5px 5px;width:18px;height:42px;animation:1.8s ease-in both rocket-rise;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.rocket:after{content:"";background:linear-gradient(#ffd666,#ff6b35,#0000);border-radius:50%;width:14px;height:30px;position:absolute;bottom:-24px;left:50%;transform:translate(-50%)}.firework{opacity:0;background:#ffd666;border-radius:999px;width:8px;height:8px;animation:1.35s ease-out 1.2s both firework-burst;position:absolute;box-shadow:0 -42px #ffd666,30px -30px #ff7a59,42px 0 #83e6d0,30px 30px #fff,0 42px #ff7a59,-30px 30px #ffd666,-42px 0 #83e6d0,-30px -30px #fff}.firework.one{top:58px;left:18%}.firework.two{animation-delay:1.45s;top:74px;right:18%}@keyframes pk-flash-pop{0%{opacity:0;transform:translate(-50%,-18px)scale(.96)}12%,78%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-12px)scale(.98)}}@keyframes rocket-rise{0%{transform:translate(-50%)}to{transform:translate(-50%,-150px)}}@keyframes firework-burst{0%{opacity:0;transform:scale(.2)}25%{opacity:1}to{opacity:0;transform:scale(1.7)}}@media (width<=920px){.topbar,.maintenance-grid,.maintenance-lists{grid-template-columns:1fr}.toolbar{justify-content:start}.manager-range-form{flex-direction:column;align-items:stretch}.summary-strip,.rank-row{grid-template-columns:1fr}.metric{border-right:0;border-bottom:1px solid var(--color-border)}.metric:last-child{border-bottom:0}.rank-values{justify-content:flex-start}.pk-header,.pk-stage{grid-template-columns:1fr}.pk-header{flex-direction:column;align-items:flex-start}.pk-vs{min-height:140px}.pk-team{min-height:auto}}@media (width<=520px){.page{align-items:start}.login-choice{padding:22px}.choice-row,.form-actions,.toolbar{flex-direction:column;align-items:stretch}.button,.toolbar .field,.segmented,.operator,.unsaved{width:100%}.segment{flex:1 0 auto}.inline-field,.form-row{grid-template-columns:1fr}th,td{padding:8px 9px}}
