@font-face{font-family:Bebas Neue;src:url(/fonts/bebas-neue.woff2) format("woff2");font-weight:400;font-display:swap}:root{--bg: #0b1710;--bg-2: #12261a;--panel: #16301f;--line: rgba(242, 231, 205, .16);--text: #f0f5ee;--dim: #9db0a2;--gold: #e8b451;--gold-2: #ffd27d;--green: #46b96a;--red: #e05555;--blue: #5aa9f0;--orange: #f0873d;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--display: "Bebas Neue", var(--font);--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-user-select:none;user-select:none}input,textarea{-webkit-user-select:text;user-select:text}button,input,textarea,select{font-family:inherit;font-size:16px}h1,h2,h3,p{margin:0}.screen{min-height:100dvh;display:flex;flex-direction:column;padding:calc(14px + var(--safe-t)) 16px calc(16px + var(--safe-b))}.scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.row{display:flex;align-items:center;gap:10px}.row.wrap{flex-wrap:wrap}.col{display:flex;flex-direction:column;gap:10px}.grow,.spacer{flex:1}.center{text-align:center}.dim{color:var(--dim)}.small{font-size:13.5px}.tiny{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);font-weight:700}.mono{font-variant-numeric:tabular-nums}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:#ffffff12;color:var(--text);padding:14px 18px;border-radius:12px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;line-height:1.2;transition:transform .08s,filter .15s}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.4}.btn.block{width:100%}.btn.big{min-height:66px;font-size:19px;letter-spacing:.02em}.btn.primary{background:linear-gradient(180deg,var(--gold-2),var(--gold));color:#2a1c05;border-color:#b8862c;font-weight:900}.btn.green{background:linear-gradient(180deg,#5ed184,#35a05a);color:#04180b;border-color:#2a7a45;font-weight:900}.btn.danger{background:#e0555529;border-color:#e0555580;color:#ffb0b0}.btn.ghost{background:transparent}.btn.sm{min-height:40px;padding:8px 13px;font-size:14px;border-radius:9px}.btn.xs{min-height:32px;padding:5px 10px;font-size:12.5px;border-radius:7px}.field{display:flex;flex-direction:column;gap:6px}.field>label{font-size:11.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--dim);font-weight:700}input[type=text],input[type=number],input[type=password],textarea,select{background:#00000052;border:1px solid var(--line);color:var(--text);padding:13px 14px;border-radius:11px;width:100%;min-height:50px}textarea{min-height:90px;line-height:1.5;resize:vertical}input:focus,textarea:focus,select:focus{outline:2px solid var(--gold);border-color:transparent}.check{display:flex;align-items:center;gap:10px;padding:8px 0}input[type=checkbox]{width:22px;height:22px;min-height:0;accent-color:var(--green)}.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:15px}.card h3{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:800;background:#ffffff17;border:1px solid var(--line);white-space:nowrap}.badge.gold{background:#e8b4512e;border-color:#e8b45180;color:var(--gold-2)}.badge.green{background:#46b96a2e;border-color:#46b96a80;color:#97e8b0}.badge.red{background:#e055552e;border-color:#e0555580;color:#ffb0b0}.title{font-family:var(--display);letter-spacing:.06em;line-height:.92;color:#f6ecd2;text-shadow:0 4px 22px rgba(0,0,0,.6)}.home-title{font-size:clamp(44px,13vw,68px)}.team-row{display:flex;align-items:center;gap:13px;width:100%;padding:15px;border-radius:15px;border:2px solid var(--line);background:var(--panel);margin-bottom:11px;text-align:left;color:var(--text);cursor:pointer;font-family:inherit}.team-row:active{transform:scale(.99)}.team-row .dot{width:30px;height:30px;border-radius:50%;flex-shrink:0}.team-row .nm{font-size:19px;font-weight:800}.team-row.done{opacity:.72}.team-row .score{font-family:var(--display);font-size:30px;letter-spacing:.03em}.handover{min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:calc(24px + var(--safe-t)) 20px calc(24px + var(--safe-b));text-align:center}.handover .big-dot{width:110px;height:110px;border-radius:50%;margin:0 auto 18px;box-shadow:0 0 0 8px #ffffff14,0 14px 40px #00000080;display:flex;align-items:center;justify-content:center;font-size:52px}.handover .tname{font-family:var(--display);font-size:clamp(46px,15vw,78px);letter-spacing:.05em}.play{min-height:100dvh;display:flex;flex-direction:column;background:var(--bg)}.play-top{display:flex;align-items:center;gap:10px;padding:calc(9px + var(--safe-t)) 14px 9px;background:var(--bg-2);border-bottom:1px solid var(--line);flex-shrink:0}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-weight:800;font-size:14px;color:#07160d}.mini{display:flex;flex-direction:column;align-items:center;line-height:1.05}.mini b{font-family:var(--display);font-size:22px;letter-spacing:.04em}.mini span{font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--dim);font-weight:700}.mini.warn b{color:var(--gold-2)}.mini.crit b{color:#ff8a8a;animation:blink 1s infinite}@keyframes blink{50%{opacity:.4}}.play-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 18px calc(18px + var(--safe-b));text-align:center;gap:4px;min-height:0}.cp-label{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-weight:800}.cp-title{font-family:var(--display);font-size:34px;letter-spacing:.05em;color:var(--gold-2);margin-top:2px}.dist-wrap{margin:8px 0 4px}.dist{font-family:var(--display);font-size:clamp(96px,34vw,190px);line-height:.84;letter-spacing:.01em;font-variant-numeric:tabular-nums;transition:color .4s}.dist-unit{font-size:15px;letter-spacing:.22em;text-transform:uppercase;color:var(--dim);font-weight:800;margin-top:4px}.d-far{color:#7fb3e0}.d-mid{color:var(--gold-2)}.d-near{color:var(--orange)}.d-arrive{color:var(--green)}.heat{font-size:15px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-top:8px}.arrow-ring{width:132px;height:132px;border-radius:50%;margin:14px auto 6px;border:2px solid var(--line);background:#ffffff0a;display:flex;align-items:center;justify-content:center;position:relative}.arrow-ring .arw{font-size:60px;line-height:1;transition:transform .35s ease-out;color:var(--gold-2)}.arrow-ring .n-mark{position:absolute;top:5px;font-size:10px;font-weight:900;color:var(--dim);letter-spacing:.1em}.acc-line{font-size:12.5px;color:var(--dim);margin-top:10px}.acc-line.bad{color:var(--orange)}.play-foot{padding:0 16px calc(14px + var(--safe-b));display:flex;flex-direction:column;gap:9px;flex-shrink:0}.arrived-flash{font-family:var(--display);font-size:clamp(40px,13vw,66px);letter-spacing:.06em;color:var(--green);line-height:1}.question-box{background:linear-gradient(180deg,#f4e9cf,#e6d5ab);color:#241b10;border-radius:15px;padding:18px 17px;font-size:18px;line-height:1.5;font-weight:600;text-align:left;border:1px solid #c8b487}.answer-in{text-transform:uppercase;letter-spacing:.14em;font-weight:900;font-size:25px!important;text-align:center;min-height:66px!important}.hint-box{background:#e8b45121;border:1px dashed rgba(232,180,81,.55);color:var(--gold-2);padding:13px;border-radius:12px;font-size:15px;line-height:1.5;text-align:left}.msg{padding:14px;border-radius:12px;font-weight:700;line-height:1.4}.msg.ok{background:#46b96a2e;border:1px solid rgba(70,185,106,.55);color:#a9edbf}.msg.err{background:#e0555529;border:1px solid rgba(224,85,85,.55);color:#ffb0b0}.msg.warn{background:#e8b45124;border:1px solid rgba(232,180,81,.5);color:var(--gold-2)}.shake{animation:shake .4s}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-9px)}40%{transform:translate(9px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}.win{font-family:var(--display);font-size:clamp(52px,17vw,88px);letter-spacing:.05em;color:var(--green);line-height:1}.pts-gain{font-family:var(--display);font-size:60px;color:var(--gold-2);letter-spacing:.04em;line-height:1}.tbl{width:100%;border-collapse:collapse;font-size:14.5px}.tbl th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.09em;color:var(--dim);padding:8px 7px;border-bottom:1px solid var(--line);font-weight:800}.tbl td{padding:11px 7px;border-bottom:1px solid rgba(255,255,255,.06)}.tbl .rk{font-family:var(--display);font-size:22px;color:var(--dim);width:30px}.tbl tr:first-child .rk{color:var(--gold-2)}.tbl .pt{font-family:var(--display);font-size:24px;letter-spacing:.03em}.tbl .num{text-align:right;font-variant-numeric:tabular-nums}.dot-sm{width:12px;height:12px;border-radius:50%;display:inline-block;flex-shrink:0}.cp-line{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid var(--line);border-radius:12px;margin-bottom:8px;background:var(--panel);width:100%;text-align:left;color:var(--text);font-family:inherit;cursor:pointer}.cp-badge{width:38px;height:38px;border-radius:50%;flex-shrink:0;border:3px solid var(--red);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:17px;letter-spacing:.03em}.cp-badge.ok{border-color:var(--green);background:#46b96a33}.cp-badge.skip{border-color:#7a7a7a;color:var(--dim)}.tabbar{display:flex;gap:4px;margin-bottom:14px;overflow-x:auto}.tabbar button{background:#ffffff0f;border:1px solid var(--line);color:var(--dim);padding:9px 14px;border-radius:999px;font-size:13.5px;font-weight:700;white-space:nowrap;cursor:pointer}.tabbar button.active{background:var(--gold);border-color:var(--gold);color:#2a1c05}.safety{background:#e055551c;border:1px solid rgba(224,85,85,.35);border-radius:12px;padding:12px 14px;font-size:13.5px;line-height:1.6}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(26px + var(--safe-b));z-index:900;background:#1d4029;border:1px solid var(--line);padding:12px 18px;border-radius:999px;font-weight:700;font-size:14.5px;max-width:90vw;text-align:center;box-shadow:0 10px 30px #00000080}.toast.err{background:#7d2f2f}.sheet-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#040a06cc;z-index:800;display:flex;align-items:flex-end;justify-content:center}.sheet{background:var(--panel);border-radius:20px 20px 0 0;width:100%;max-width:560px;padding:16px 16px calc(20px + var(--safe-b));max-height:92dvh;overflow-y:auto;border:1px solid var(--line);border-bottom:none}.grip{width:42px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 14px}@media (min-width: 620px){.screen,.handover{max-width:620px;margin:0 auto;width:100%}.sheet-back{align-items:center;padding:20px}.sheet{border-radius:18px;border-bottom:1px solid var(--line)}}.offline-badge{margin-top:14px;padding:10px 13px;border-radius:11px;font-size:12.5px;line-height:1.5;font-weight:600}.offline-badge.ok{background:#46b96a24;border:1px solid rgba(70,185,106,.4);color:#97e8b0}.offline-badge.warn{background:#e8b45121;border:1px solid rgba(232,180,81,.42);color:var(--gold-2)}.cp-block{border:1px solid var(--line);border-radius:13px;background:var(--panel);padding:11px;margin-bottom:10px}.cp-block-head{display:flex;align-items:center;gap:11px;width:100%;background:none;border:none;color:var(--text);font-family:inherit;text-align:left;padding:0;cursor:pointer}.coord-line{font-size:12px;color:var(--dim);margin-top:7px}.coord-line.bad{color:var(--orange)}a.btn{text-decoration:none}.cp-block-del{position:absolute;top:9px;right:9px}.cp-block-head{padding-right:42px}.storage-alarm{background:#e055552e;border:2px solid var(--red);color:#ffcaca;border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.55;margin-top:14px}.storage-alarm b{color:#fff;letter-spacing:.04em}.save-line{font-size:12px;color:var(--green);margin-bottom:10px;font-weight:700}.storage-alarm-fixed{position:fixed;top:0;left:0;right:0;z-index:9999;background:#8c1f1f;border-bottom:2px solid #ff6b6b;color:#ffe4e4;padding:calc(9px + var(--safe-t)) 14px 10px;font-size:12.5px;line-height:1.5;box-shadow:0 6px 20px #00000080}.storage-alarm-fixed b{color:#fff;letter-spacing:.05em;font-size:13px}
