:root{--sea:#8fd3f4;--sea2:#5bb8e8;--sand:#ffe9a8;--grass:#8fd37a;--ink:#2b3a55;--muted:#66728a;--bg:#f3f6fb;--card:#fff;--line:#e3e8f0;--soft:#eef1f7;--accent:#ff8a3d;--accent-d:#d66a20;--ok:#3fbf7f;--bad:#ef5b5b;--violet:#7c6cf0;--violet-d:#5e4fc9;--star:#ffc93c;--oyka:#4a7de0;--fantik:#ff8a3d;--bor:#3f7f5f;--radius:20px;--font:"Nunito","Avenir Next","Segoe UI",system-ui,sans-serif}:root[data-track=senior]{--bg:#1b2238;--ink:#e9edf7;--muted:#aab2c9;--card:#242d47;--line:#334066;--soft:#2d3858;--accent:#ffb547;--accent-d:#c98522;--sea:#243a66;--sea2:#1b2b50;--grass:#3f7f5f;--sand:#5c6b8f}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font);overscroll-behavior:none;font-size:16px;line-height:1.35}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default}#app{justify-content:center;min-height:100%;display:flex}.screen{width:100%;max-width:520px;min-height:100dvh;padding-bottom:env(safe-area-inset-bottom);flex-direction:column;display:flex;position:relative}.top{justify-content:space-between;align-items:center;gap:10px;padding:14px 16px 8px;font-size:15px;font-weight:800;display:flex}.top .rank{color:var(--muted);font-size:12px;font-weight:700;display:block}.top-right{align-items:center;gap:6px;display:flex}.total{color:var(--star);font-weight:900}.counter{color:var(--muted);font-weight:800}.icon-btn{background:var(--card);border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;font-weight:900;display:flex;box-shadow:0 2px 8px #2b3a551a}.btn{text-align:center;border-radius:var(--radius);width:100%;margin-top:10px;padding:15px 16px;font-size:17px;font-weight:900;transition:transform 80ms;display:block}.btn:active{transform:translateY(2px)}.btn.primary{background:var(--accent);color:#fff;box-shadow:0 5px 0 var(--accent-d)}.btn.primary:disabled{opacity:.45;box-shadow:none}.btn.ghost{background:var(--card);color:var(--ink);box-shadow:0 5px 0 var(--line)}.btn.ghost:disabled{opacity:.45;box-shadow:none}.btn.danger{background:var(--bad);color:#fff}.link{color:var(--muted);font-weight:700;text-decoration:underline}.row-btns{gap:10px;margin-top:auto;padding:8px 16px 16px;display:flex}.row-btns .btn{margin:0}.onboarding{justify-content:center;padding:28px 20px 24px}.onb-heroes{justify-content:center;align-items:flex-end;gap:4px;margin-bottom:8px;display:flex}.onboarding h1{text-align:center;margin:6px 0 4px;font-size:28px}.lead{text-align:center;color:var(--muted);margin:0 0 18px;font-weight:700}.field{margin:10px 0 6px;font-weight:800;display:block}.field span{color:var(--muted);margin-bottom:6px;font-size:14px;display:block}.field input{width:100%;font:inherit;border:3px solid var(--line);background:var(--card);color:var(--ink);border-radius:14px;outline:none;padding:12px 14px;font-size:18px;font-weight:800}.field input:focus{border-color:var(--violet)}.track-pick{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;display:grid}.track-card{text-align:left;background:var(--card);border:3px solid var(--line);border-radius:18px;padding:14px}.track-card b{margin-bottom:4px;font-size:22px;display:block}.track-card small{color:var(--muted);font-weight:700;line-height:1.3;display:block}.track-card.sel{border-color:var(--violet);background:color-mix(in srgb,var(--violet) 10%,var(--card))}.danger-zone{text-align:center;color:var(--muted);margin-top:28px;font-size:14px}.map-screen .sea{background:radial-gradient(ellipse at 30% 20%,color-mix(in srgb,var(--sea) 70%,#fff) ,var(--sea) 55%,var(--sea2));flex:1;min-height:560px;position:relative;overflow:hidden}:root[data-track=senior] .map-screen .sea{background:radial-gradient(ellipse at 30% 20%,#2f4a7d,var(--sea) 55%,var(--sea2))}.wave{border:2px solid #ffffff8c;border-top:0;border-radius:0 0 20px 20px;width:40px;height:6px;position:absolute}.island{width:170px;position:absolute;transform:translate(-50%,-50%)}.island .land{background:var(--isl);width:160px;height:112px;box-shadow:inset 0 -16px 0 #00000024,0 0 0 10px var(--sand),0 10px 0 10px color-mix(in srgb,var(--sand) 80%,#000);border-radius:50% 45% 55% 50%/55% 50% 50% 45%;position:relative}.island.locked .land{filter:grayscale(.75)brightness(1.05);opacity:.8}.island .lv{color:#2b3a55;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:15px;font-weight:900;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 3px #c9b26a}.island .lv.done{background:var(--star)}.island .lv.lock{color:#99a;box-shadow:none;background:#dfe5ee;font-size:13px}.island .soon{color:#ffffffe6;justify-content:center;align-items:center;font-weight:900;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.isl-name{text-align:center;background:var(--card);border-radius:14px;margin:16px 10px 0;padding:6px 8px;box-shadow:0 4px 12px #0000001f}.isl-name b{font-size:14px;display:block}.isl-name small{color:var(--muted);font-size:12px;font-weight:700}.bor-tip{pointer-events:none;align-items:flex-end;gap:6px;display:flex;position:absolute;bottom:14px;left:12px;right:12px}.bubble{background:var(--card);border-radius:18px;flex:1;padding:10px 14px;font-size:14px;font-weight:700;position:relative;box-shadow:0 6px 16px #00000026}.bubble:after{content:"";border:9px solid #0000;border-left-color:var(--card);border-right:0;position:absolute;bottom:16px;right:-9px}.stars{align-items:center;gap:4px;display:inline-flex}.star{background:var(--star);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);width:22px;height:22px;display:block}.star.off{background:#d9dee8}.stars.small .star{width:10px;height:10px}.stars.small{gap:1px}.prog{background:var(--line);border-radius:10px;height:10px;margin:0 16px;overflow:hidden}.prog i{background:linear-gradient(90deg,var(--ok),#8be0b2);border-radius:10px;height:100%;transition:width .4s;display:block}.intro{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:30px 20px;display:flex}.task-area{flex-direction:column;flex:1;padding-bottom:12px;display:flex}.scene{background:var(--card);border-radius:22px;margin:16px 16px 0;padding:14px;box-shadow:0 8px 24px #2b3a5514}.who{align-items:flex-start;gap:12px;display:flex}.hero{object-fit:contain;flex:none;display:block}.hero-placeholder{color:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:1.2em;font-weight:900;display:flex}.hero-placeholder.hero-bor{background:var(--bor)}.hero-placeholder.hero-oyka{background:var(--oyka)}.hero-placeholder.hero-fantik{background:var(--fantik)}.say{background:var(--soft);border-radius:16px;flex:1;padding:10px 14px;font-size:16px;font-weight:600}.say small{color:var(--muted);margin-bottom:2px;font-size:12px;font-weight:900;display:block}.say.big{padding:14px 18px;font-size:17px}.hint{background:color-mix(in srgb,var(--star) 22%,var(--card));border:2px dashed var(--star);border-radius:16px;align-items:center;gap:10px;margin:12px 16px 0;padding:10px 12px;font-size:14px;font-weight:700;animation:.25s pop;display:flex}@keyframes pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}.q{margin:16px 16px 6px;font-size:18px;font-weight:900}.statement{background:var(--card);border-left:5px solid var(--violet);border-radius:14px;margin:16px 16px 0;padding:14px 16px;font-size:17px;font-weight:800}.premises{flex-direction:column;gap:6px;margin:14px 16px 0;display:flex}.premise{background:var(--card);border:2px solid var(--line);border-radius:14px;padding:10px 14px;font-weight:700}.premise.arrow{text-align:center;color:var(--muted);background:0 0;border:0;font-weight:900}.options{flex-direction:column;gap:8px;padding:0 16px;display:flex}.opt{text-align:left;background:var(--card);border:3px solid var(--line);border-radius:18px;align-items:center;gap:12px;padding:13px 14px;font-size:16px;font-weight:700;transition:transform 80ms;display:flex}.opt:not(:disabled):active{transform:scale(.98)}.opt span{background:var(--soft);border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-weight:900;display:flex}.opt.ok{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,var(--card))}.opt.ok span{background:var(--ok);color:#fff}.opt.bad{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--card));opacity:.8}.opt.bad span{background:var(--bad);color:#fff}.opt:disabled:not(.ok):not(.bad){opacity:.6}.lines{flex-direction:column;gap:8px;padding:0 16px;display:flex}.line{text-align:left;background:var(--card);border:3px solid var(--line);border-radius:18px;align-items:flex-start;gap:10px;padding:10px 12px;font-size:15px;font-weight:600;display:flex}.line small{color:var(--muted);font-size:12px;font-weight:900;display:block}.line.ok{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,var(--card))}.line.bad{border-color:var(--line);opacity:.55}.line:disabled:not(.ok):not(.bad){opacity:.7}.pool{flex-wrap:wrap;align-items:center;gap:8px;min-height:52px;padding:0 16px;display:flex}.pool-empty{color:var(--muted);font-size:14px;font-weight:700}.card{background:var(--card);border:3px solid var(--line);border-radius:14px;padding:9px 12px;font-size:15px;font-weight:800}.card.sel{border-color:var(--violet);background:color-mix(in srgb,var(--violet) 12%,var(--card));transform:translateY(-2px)}.card.in{background:var(--soft);border-color:#0000;padding:7px 10px;font-size:14px}.shake{animation:.4s shake}@keyframes shake{0%,to{transform:none}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.buckets{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;padding:12px 16px 0;display:grid}.bucket{background:var(--card);border:3px dashed var(--line);border-radius:18px;min-height:120px;padding:10px}.bucket.target{border-color:var(--violet);cursor:pointer}.bucket b{margin-bottom:8px;font-size:15px;display:block}.bucket-cards{flex-wrap:wrap;gap:6px;display:flex}.order{flex-direction:column;gap:6px;padding:0 16px;display:flex}.order-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:4px 6px;font-size:12px;font-weight:900}.order-item{background:var(--card);border:3px solid var(--line);border-radius:16px;align-items:center;gap:10px;padding:8px 8px 8px 12px;display:flex}.order-item.ok{border-color:var(--ok)}.order-item.bad{border-color:var(--bad)}.order-item .num{background:var(--soft);border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:900;display:flex}.order-item .txt{flex:1;font-weight:800}.arrows{gap:4px;display:flex}.arrows button{background:var(--soft);border-radius:12px;width:38px;height:38px;font-weight:900}.arrows button:disabled{opacity:.3}.dialog{flex-direction:column;gap:8px;padding:14px 16px 0;display:flex}.dline{align-items:flex-start;gap:10px;display:flex}.dline>div{background:var(--card);border-radius:16px;max-width:85%;padding:9px 12px;font-size:15px;font-weight:600}.dline small{color:var(--muted);font-size:12px;font-weight:900;display:block}.dline.me{flex-direction:row-reverse}.dline.me>div{background:color-mix(in srgb,var(--ok) 16%,var(--card))}.dline.current>div{border:3px solid var(--line);font-size:16px}.sheet{background:var(--card);border-radius:28px 28px 0 0;margin-top:auto;padding:18px;animation:.3s up;position:sticky;bottom:0;box-shadow:0 -10px 40px #2b3a552e}@keyframes up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}.sheet-head{align-items:center;gap:12px;margin-bottom:10px;font-size:17px;display:flex}.badge{border:2px dashed;border-radius:16px;align-items:center;gap:12px;margin-bottom:10px;padding:10px 12px;display:flex}.badge .ic{color:#fff;border-radius:12px;flex:none;justify-content:center;align-items:center;width:46px;height:46px;font-size:22px;font-weight:900;display:flex}.badge b{font-size:15px;display:block}.badge small{color:var(--muted);font-weight:700}.owner-oyka{border-color:var(--oyka)}.owner-oyka .ic{background:var(--oyka)}.owner-fantik{border-color:var(--fantik)}.owner-fantik .ic{background:var(--fantik)}.owner-bor{border-color:var(--bor)}.owner-bor .ic{background:var(--bor)}.expl{margin:6px 0;font-size:15px;font-weight:600;line-height:1.45}.expl.detail{color:var(--muted);font-size:14px}.expl.detail small{margin-top:4px;font-size:12px;display:block}.result{justify-content:center;padding:20px}.result-card{background:var(--card);text-align:center;border-radius:28px;flex-direction:column;align-items:center;gap:8px;padding:24px 20px;display:flex;box-shadow:0 10px 40px #2b3a551f}.result-card h2{margin:4px 0 0;font-size:24px}.result-card p{color:var(--muted);margin:4px 0;font-weight:700}.caught{text-align:left;background:var(--soft);border-radius:16px;width:100%;padding:10px 14px}.caught small{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.caught ul{flex-wrap:wrap;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.caught li{border:2px solid;border-radius:10px;padding:4px 8px;font-size:13px;font-weight:800}.result-card .btn{width:100%}.cards{flex-direction:column;gap:10px;padding:8px 16px 24px;display:flex}.ecard{background:var(--card);border:2px solid;border-radius:18px;align-items:flex-start;gap:12px;padding:12px;display:flex}.ecard.unknown{border-color:var(--line);opacity:.75}.ecard-ic{color:#fff;border-radius:12px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;font-weight:900;display:flex}.ecard.unknown .ecard-ic{background:var(--line);color:var(--muted)}.ecard.owner-oyka .ecard-ic{background:var(--oyka)}.ecard.owner-fantik .ecard-ic{background:var(--fantik)}.ecard.owner-bor .ecard-ic{background:var(--bor)}.ecard-body b{font-size:15px;display:block}.ecard-body p{margin:4px 0;font-size:14px;font-weight:600;line-height:1.4}.ecard-body small{color:var(--muted);font-size:12px;font-weight:700;display:block}.ecard-body .nick{margin-top:2px}
