:root{--bg:#eef0ff;--card:#f7f4ff;--ink:#2d2a4a;--mut:#77739a;--acc:#6c5ce7;--acc2:#00b894;--warn:#e17055;--line:#e2ddff;
--sh:12px 12px 24px rgba(108,92,231,.18),-8px -8px 20px rgba(255,255,255,.9),inset -4px -4px 10px rgba(108,92,231,.10),inset 4px 4px 10px rgba(255,255,255,.9);
--shIn:inset 5px 5px 10px rgba(108,92,231,.18),inset -5px -5px 10px rgba(255,255,255,.95)}
@media (prefers-color-scheme:dark){:root{--bg:#1e1b33;--card:#2a2645;--ink:#f1efff;--mut:#a9a4cf;--acc:#8c7bff;--acc2:#2fd6a8;--warn:#ff8a6b;--line:#3b3660;
--sh:10px 10px 22px rgba(0,0,0,.45),-6px -6px 16px rgba(255,255,255,.04),inset -3px -3px 8px rgba(0,0,0,.35),inset 3px 3px 8px rgba(255,255,255,.06);
--shIn:inset 4px 4px 10px rgba(0,0,0,.45),inset -4px -4px 10px rgba(255,255,255,.05)}}
*{box-sizing:border-box}
body{margin:0;font:16px/1.5 Nunito,system-ui,sans-serif;background:var(--bg);color:var(--ink);
 background-image:radial-gradient(circle at 10% 0%,rgba(162,155,254,.35),transparent 40%),radial-gradient(circle at 100% 30%,rgba(85,239,196,.25),transparent 40%),radial-gradient(circle at 0% 100%,rgba(250,177,160,.3),transparent 45%);background-attachment:fixed;min-height:100vh}
main{max-width:640px;margin:0 auto;padding:20px 16px 40px}
h1{font-size:1.8rem;font-weight:900;margin:.2em 0 .3em;letter-spacing:-.5px}
h1::before{content:"🍀 "}
h2{font-size:1.1rem;font-weight:800;margin:0 0 .7em}
p.sub{color:var(--mut);margin:0 0 1em;font-size:.93rem}
.card{background:var(--card);border-radius:28px;padding:18px;margin-bottom:20px;box-shadow:var(--sh)}
#sem{background:linear-gradient(145deg,#fff6d8,#ffe3c2)}
@media (prefers-color-scheme:dark){#sem{background:linear-gradient(145deg,#3a3352,#463a52)}}
label{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 0;font-size:.95rem;font-weight:700}
input[type=number],input[type=text],select,textarea{font:inherit;font-weight:700;padding:10px 12px;border:0;border-radius:16px;background:var(--bg);color:var(--ink);width:120px;box-shadow:var(--shIn);outline:none}
input:focus,select:focus,textarea:focus{box-shadow:var(--shIn),0 0 0 3px rgba(108,92,231,.35)}
input[type=text]{width:100%}
select{width:170px}
textarea{width:100%;margin-top:6px}
input[type=checkbox]{appearance:none;width:52px;height:30px;border-radius:30px;background:var(--bg);box-shadow:var(--shIn);position:relative;cursor:pointer;transition:.25s;flex:none}
input[type=checkbox]::after{content:"";position:absolute;top:4px;left:4px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:2px 2px 6px rgba(0,0,0,.2);transition:.25s}
input[type=checkbox]:checked{background:var(--acc2)}
input[type=checkbox]:checked::after{left:26px}
button{font:inherit;font-weight:800;border:0;border-radius:20px;padding:14px;background:linear-gradient(145deg,#8e7dff,#6c5ce7);color:#fff;width:100%;margin-top:10px;cursor:pointer;
 box-shadow:6px 8px 16px rgba(108,92,231,.35),inset -3px -4px 8px rgba(0,0,0,.18),inset 3px 4px 8px rgba(255,255,255,.35);transition:transform .12s}
button:active{transform:scale(.96) translateY(2px)}
button.sec{background:var(--card);color:var(--acc);box-shadow:var(--sh)}
.row{display:flex;gap:10px}.row button{flex:1}
.tabs{display:flex;gap:10px;margin:4px 0 18px;padding:6px;border-radius:24px;background:var(--card);box-shadow:var(--shIn)}
.tabs button{margin:0;background:transparent;color:var(--mut);box-shadow:none;padding:11px 8px}
.tabs button.on{background:linear-gradient(145deg,#8e7dff,#6c5ce7);color:#fff;box-shadow:4px 6px 12px rgba(108,92,231,.35),inset 2px 3px 6px rgba(255,255,255,.3)}
.bet{display:flex;align-items:center;gap:7px;padding:10px 12px;margin-top:10px;border-radius:20px;background:var(--bg);box-shadow:var(--shIn);flex-wrap:wrap}
.idx{color:var(--mut);width:22px;font-size:.85rem;font-weight:800}
.ball{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:.95rem;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2);
 box-shadow:3px 4px 8px rgba(0,0,0,.18),inset -3px -4px 6px rgba(0,0,0,.18),inset 3px 3px 6px rgba(255,255,255,.55)}
.ball.d0{background:#ff9ff3}.ball.d1{background:#feca57}.ball.d2{background:#48dbfb}.ball.d3{background:#1dd1a1}.ball.d4{background:#a29bfe}
.ball.miss{filter:grayscale(.85);opacity:.55}
.ball.hit{outline:3px solid var(--acc2);outline-offset:2px}
.ball.comp{outline:3px dashed var(--warn);outline-offset:2px}
.tag{font-size:.82rem;color:var(--mut);margin-left:auto;font-weight:700}
.tag.win{color:#fff;background:var(--acc2);padding:4px 10px;border-radius:12px;box-shadow:inset 2px 2px 4px rgba(255,255,255,.35)}
.note{font-size:.86rem;color:var(--mut)}
.stat{display:grid;grid-template-columns:1fr auto;gap:8px 12px;font-size:.93rem}
.stat b{text-align:right;font-weight:900}
.msg{font-size:.92rem;color:var(--warn);min-height:1.2em;font-weight:800}
#semVer{padding:12px 14px;border-radius:18px;background:var(--card);box-shadow:var(--shIn);text-align:center;font-size:1rem}
details summary{cursor:pointer;font-weight:800;color:var(--acc)}
.dec{font-size:1.25rem;font-weight:900;letter-spacing:4px;padding:6px 14px;border-radius:14px;color:#fff;background:linear-gradient(145deg,#ff9f80,#e17055);
 box-shadow:3px 4px 10px rgba(225,112,85,.35),inset -2px -3px 6px rgba(0,0,0,.15),inset 2px 3px 6px rgba(255,255,255,.4)}
.gauge{height:18px;border-radius:12px;background:var(--bg);box-shadow:var(--shIn);overflow:hidden;margin:4px 0 2px}
.gauge i{display:block;height:100%;border-radius:12px;transition:width .4s;box-shadow:inset 2px 2px 4px rgba(255,255,255,.4)}

#tema{width:auto;margin:0;padding:8px 14px;font-size:.85rem;border-radius:16px}
.top{display:flex;justify-content:space-between;align-items:center;gap:10px}
