:root{--page:#1e2a21;--card:#2b3a2e;--ink:#f0eadb;--soft:#a9b09d;--line:#3a4b3c;--accent:#e7b48a;--on-accent:#26291f;--glass:#1e2a21d6;--field:#2f4a35;--sky:#3b4a38;--glow:#e7b48a66;--ad:60px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{padding-bottom:var(--ad);background:var(--page);color:var(--ink);overflow-wrap:anywhere;-webkit-text-size-adjust:100%;font:16px/1.3 system-ui,-apple-system,Segoe UI,sans-serif}p,ul,h1,h2{margin:0}h1{font-size:1.4rem}h2{font-size:1rem}a{color:inherit}fieldset{border:0;min-width:0;margin:0;padding:0}button{color:inherit;font:inherit;overflow-wrap:normal;touch-action:manipulation;cursor:pointer;background:0 0;border:0;padding:0}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.hidden{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.soft{color:var(--soft)}.loading{color:var(--soft);text-align:center;padding:32px 16px}.notice{background:var(--card);border-radius:12px;padding:8px 12px;font-size:.85rem}.ad-slot{z-index:5;height:var(--ad);background:var(--page);position:fixed;bottom:0;left:0;right:0}.app{width:100%;max-width:430px;min-height:calc(100dvh - var(--ad));margin:0 auto;animation:.22s ease-out fade;overflow-x:clip}.app.drive{flex-direction:column;display:flex}.stage{background:var(--field);flex:1 0 auto;position:relative;overflow:hidden}.field{background:var(--field);border:0;width:100%;padding:0;display:block}.field canvas{width:100%;aspect-ratio:360 / var(--view-height);display:block}.board{background:var(--glass);text-align:left;border-radius:16px;justify-content:space-between;align-items:center;gap:8px;height:46px;padding:0 14px;line-height:1.15;display:flex;position:absolute;top:10px;left:10px;right:10px}.board b{font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:600;display:block}.board small{color:var(--soft);font-size:.72rem;display:block}.board-time{text-align:right}.board-tag{background:var(--card);color:var(--soft);border-radius:8px;padding:2px 8px;font-size:.68rem}.dots{vertical-align:1px;gap:3px;display:inline-flex}.dots i{opacity:.25;background:currentColor;border-radius:50%;width:6px;height:6px}.dots i.on{opacity:1}.lower{background:var(--glass);pointer-events:none;border-radius:14px;gap:3px;padding:8px 14px;font-size:.84rem;line-height:1.25;animation:.26s ease-out drift;display:grid;position:absolute;bottom:10px;left:10px;right:40px}.lower b{font-weight:600}.dock{flex-direction:column;flex:0 0 238px;gap:6px;padding:8px;display:flex}.strip{flex:0 0 44px;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;display:grid}.strip button{background:var(--card);width:100%;height:100%;color:var(--soft);border-radius:12px;padding:0 1px;font-size:.68rem;font-weight:500;line-height:1.05}.strip button.on{background:var(--accent);color:var(--on-accent)}.strip button.armed{color:var(--accent)}.strip button:disabled{opacity:.45}.snap{background:var(--accent);color:var(--on-accent);text-overflow:ellipsis;white-space:nowrap;border-radius:16px;flex:0 0 52px;padding:0 10px;font-weight:600;transition:background-color .2s;overflow:hidden}.snap:disabled{background:var(--card);color:var(--soft);font-weight:500}.chip-tabs{flex:0 0 30px;gap:4px;display:flex}.chip-tabs button{color:var(--soft);border-radius:10px;flex:1 1 0;font-size:.78rem}.chip-tabs button.on{background:var(--card);color:var(--ink)}.chips{flex:0 0 114px;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:54px;gap:6px;display:grid}.chips.pro{flex:1 1 0;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:44px;min-height:0;overflow-y:auto}.chips.waiting{opacity:.55}.chip{background:var(--card);text-align:center;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;padding:0 3px;transition:box-shadow .16s;display:flex;overflow:hidden}.chip:disabled{opacity:.45}.chip b{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.8rem;font-weight:500;line-height:1.1;overflow:hidden}.chip small{max-width:100%;color:var(--soft);text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;line-height:1.1;overflow:hidden}.chip.on{box-shadow:inset 0 0 0 2px var(--accent)}.chip.on b{color:var(--accent)}.app.start{flex-direction:column;gap:10px;padding:12px 16px 8px;display:flex}.head{color:var(--soft);justify-content:space-between;gap:12px;font-size:.82rem;display:flex}.scene{background:linear-gradient(var(--sky), var(--field) 26%, var(--field));flex-direction:column;flex:auto;justify-content:center;gap:8px;margin:0 -16px;padding:14px 16px;display:flex}.unit{border-radius:18px;padding:14px 16px;font-size:.84rem;line-height:1.25;animation:.32s ease-out backwards drift}.scene .unit:last-child{animation-delay:90ms}.unit strong{font-size:1.32rem;font-weight:650;line-height:1.12;display:block}.unit summary span{opacity:.75;font-size:.84rem}.unit p{margin-top:6px}.unit.offence{color:#38372f;background:#fbf4e4}.unit.offence .soft{color:#6c6a5b}.unit.defence{color:#f1ebdf;background:#333a33}.vs{align-self:center;font-size:.8rem}.pitch{text-align:center;font-size:1.02rem}.theme{color:var(--soft);text-align:center;font-size:.85rem}.level{background:var(--line);border-radius:12px;align-self:center;gap:2px;padding:2px;display:flex}.level button{min-width:66px;height:32px;color:var(--soft);border-radius:10px;font-size:.8rem}.level button.on{background:var(--card);color:var(--ink)}.cta{background:var(--accent);width:100%;height:56px;color:var(--on-accent);border-radius:18px;flex:none;justify-content:center;align-items:center;font-size:1.1rem;font-weight:600;text-decoration:none;display:flex}.links{flex-wrap:wrap;justify-content:center;gap:2px 18px;display:flex}.link,.links button{min-height:34px;color:var(--soft);align-items:center;font-size:.8rem;text-decoration:none;display:inline-flex}.sheet-wrap{inset:0 0 var(--ad);z-index:6;flex-direction:column;justify-content:flex-end;display:flex;position:fixed}.scrim{background:#0a100c73;width:100%;animation:.2s ease-out fade;position:absolute;inset:0}.sheet{background:var(--page);border-radius:22px 22px 0 0;flex-direction:column;gap:10px;width:100%;max-width:430px;max-height:88%;margin:0 auto;padding:14px 16px 16px;font-size:.9rem;animation:.24s ease-out drift;display:flex;position:relative;overflow-y:auto}.sheet header{justify-content:space-between;align-items:center;gap:12px;display:flex}.sheet ul{padding-left:18px}.sheet .vs{display:none}.picker{grid-template-columns:1fr 1fr;gap:10px;display:grid}.picker fieldset{gap:6px;display:grid}.picker legend{color:var(--soft);padding-bottom:4px;font-size:.8rem}.picker select{background:var(--card);width:100%;min-height:44px;color:var(--ink);font:inherit;border:0;border-radius:12px;padding:0 8px}.log{font-size:.8rem}.log .grid{display:none}.log ol{gap:5px;margin:0;padding:0;list-style:none;display:grid}.log li small{color:var(--soft);display:block}.log .undone{opacity:.55;text-decoration:line-through}.drive-log summary{color:var(--soft);text-align:center;font-size:.8rem}.debug{font-size:.7rem;overflow-x:auto}.debug table{border-collapse:collapse}.debug th,.debug td{text-align:left;white-space:nowrap;padding:2px 5px}.app.results,.app.message{flex-direction:column;gap:12px;padding:16px 16px 8px;display:flex}.app.message{text-align:center;justify-content:center}.final{background:var(--card);text-align:center;border-radius:24px;flex-direction:column;flex:auto;justify-content:center;align-items:center;gap:6px;width:100%;padding:20px 16px;animation:.3s ease-out drift;display:flex;position:relative;overflow:hidden}.eyebrow{color:var(--soft);font-size:.86rem}.score{font-variant-numeric:tabular-nums;font-size:6.4rem;font-weight:650;line-height:1}.score.word{font-size:2.2rem;line-height:1.1}.par-words{font-size:1.15rem;font-weight:500}.streak{color:var(--soft);font-size:.9rem}.final .grid{white-space:pre-line;margin-top:14px;font:1.05rem/1.4 ui-monospace,Menlo,monospace}.final.td:before{content:"";background:radial-gradient(var(--glow), transparent 68%);pointer-events:none;border-radius:50%;width:340px;height:340px;margin:-170px 0 0 -170px;animation:.55s ease-out both bloom;position:absolute;top:42%;left:50%}.final.td .score{color:var(--accent);animation:.5s cubic-bezier(.2,.9,.3,1) settle;position:relative}.final.td>:not(.score){position:relative}@keyframes bloom{0%{opacity:0;transform:scale(.35)}}@keyframes settle{0%{opacity:.2;transform:scale(.9)}}@keyframes fade{0%{opacity:0}}@keyframes drift{0%{opacity:0;transform:translateY(8px)}}@media (height>=760px){.unit{padding:20px 18px}.unit strong{font-size:1.5rem}.score{font-size:8rem}}@media (width<=350px){.chip{padding:0 1px}.chip b{font-size:.66rem}.chip small{font-size:.56rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.skipped,.skipped *,.skipped:before{animation:none!important}
