*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #f0f4f8;--color-surface: #ffffff;--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-text: #1e293b;--color-text-muted: #64748b;--color-border: #e2e8f0;--color-correct: #22c55e;--color-wrong: #ef4444;--radius: 10px;--shadow: 0 2px 8px rgba(0, 0, 0, .08)}html,body{height:100%;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--color-bg);color:var(--color-text);font-size:16px;line-height:1.5}#app{min-height:100vh;display:flex;flex-direction:column}button{cursor:pointer;font-family:inherit;border:none;border-radius:var(--radius);transition:background .15s,transform .1s,opacity .15s}button:active{transform:scale(.97)}button:disabled{opacity:.6;cursor:default}.back-btn{background:transparent;color:var(--color-text-muted);font-size:.9rem;padding:6px 12px;border:1px solid var(--color-border);border-radius:var(--radius)}.back-btn:hover{background:var(--color-border)}.math-game{flex:1;display:flex;flex-direction:column;align-items:center;padding:1.5rem;gap:2rem;max-width:520px;margin:0 auto;width:100%}.math-header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem}.math-stats{display:flex;gap:1.25rem;font-size:1rem;font-weight:600;color:var(--color-text)}.math-stats .stat-label{color:var(--color-text-muted);font-weight:400;font-size:.85rem}.problem-card{background:var(--color-surface);border-radius:20px;box-shadow:var(--shadow);padding:2.5rem 3rem;display:flex;align-items:center;justify-content:center;gap:.75rem;font-size:3rem;font-weight:800;width:100%;letter-spacing:-1px;color:var(--color-text)}.problem-card .question-mark{color:var(--color-primary)}.choices-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;width:100%}.choice-btn{position:relative;font-size:1.75rem;font-weight:700;padding:1.25rem;background:var(--color-surface);color:var(--color-text);border-radius:14px;box-shadow:var(--shadow);border:2px solid transparent;transition:background .12s,border-color .12s,transform .1s}.choice-btn[data-hint]:before{content:attr(data-hint);position:absolute;top:.3rem;left:.4rem;font-size:.65rem;font-weight:500;color:var(--color-text-muted);line-height:1;opacity:.6}.choice-btn:hover:not(:disabled){border-color:var(--color-primary);background:#eff6ff}.choice-btn.correct{background:#dcfce7;border-color:var(--color-correct);color:#15803d}.choice-btn.wrong{background:#fee2e2;border-color:var(--color-wrong);color:#b91c1c}.high-score-bar{font-size:.85rem;color:var(--color-text-muted)}@keyframes pop-in{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.problem-card{animation:pop-in .2s ease-out}.periodic-game{flex:1;display:flex;flex-direction:column;padding:1rem 1.25rem;gap:1rem;min-width:0}.periodic-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.periodic-progress{font-size:1rem;font-weight:600;color:var(--color-text)}.periodic-progress .prog-muted{color:var(--color-text-muted);font-weight:400}.prefill-btn{padding:6px 14px;background:#f0fdf4;color:#16a34a;font-size:.85rem;font-weight:600;border:1px solid #bbf7d0;border-radius:var(--radius);white-space:nowrap}.prefill-btn:hover:not(:disabled){background:#dcfce7;border-color:#86efac}.prefill-btn:disabled{opacity:.4;cursor:default}.card-area{display:flex;justify-content:center;min-height:80px;align-items:center}.draggable-card{display:flex;flex-direction:column;align-items:center;padding:.6rem 1.2rem;background:var(--color-surface);border:2px solid var(--color-primary);border-radius:12px;box-shadow:0 4px 16px #3b82f640;cursor:grab;-webkit-user-select:none;user-select:none;min-width:80px;transition:box-shadow .15s,transform .15s}.draggable-card:active{cursor:grabbing;transform:scale(1.05)}.draggable-card .el-symbol{font-size:1.8rem;font-weight:800;line-height:1.1;color:var(--color-text)}.draggable-card .el-name{font-size:.75rem;color:var(--color-text-muted)}.card-area{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.skip-btn{padding:8px 16px;background:var(--color-surface);color:var(--color-text-muted);font-size:.875rem;font-weight:500;border:1px solid var(--color-border);border-radius:var(--radius)}.skip-btn:hover{background:var(--color-border);color:var(--color-text)}.periodic-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.5rem}.periodic-grid{display:grid;grid-template-columns:repeat(18,minmax(48px,1fr));grid-template-rows:repeat(9,auto);gap:2px;min-width:900px}.cell{position:relative;aspect-ratio:1 / 1.1;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.75rem;text-align:center;padding:2px;border:1px solid transparent;transition:border-color .12s,background .12s}.cell-placeholder{background:#e5e7eb;opacity:.4;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.55rem;color:#9ca3af}.cell[data-category=nonmetal]{background:#d1fae5}.cell[data-category=noble-gas]{background:#cffafe}.cell[data-category=alkali-metal]{background:#fef3c7}.cell[data-category=alkaline-earth-metal]{background:#fed7aa}.cell[data-category=transition-metal]{background:#e0e7ff}.cell[data-category=post-transition-metal]{background:#dbeafe}.cell[data-category=metalloid]{background:#f0fdf4}.cell[data-category=halogen]{background:#fce7f3}.cell[data-category=lanthanide]{background:#fdf4ff}.cell[data-category=actinide]{background:#fef9c3}.cell:not(.cell--placed){opacity:.25}.cell--placed{opacity:1;border-color:#00000047;box-shadow:0 1px 4px #0000002e}.cell--hinted{opacity:1!important;background:#1e3a8a!important;border:2px solid #60a5fa!important;border-style:solid!important;z-index:5;position:relative}.cell--wrong{opacity:1!important;background:#fca5a5!important;animation:shake .4s ease}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(5px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes cell-placed{0%{transform:scale(1);box-shadow:none;z-index:10}40%{transform:scale(1.25);box-shadow:0 0 18px 5px #ffd228cc}to{transform:scale(1);box-shadow:0 1px 4px #0000002e}}.cell--placed.cell--just-placed{animation:cell-placed .4s ease-out forwards;z-index:10;position:relative}.cell-symbol{font-size:1em;font-weight:700;line-height:1}.cell-name{font-size:.85em;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.cell-z{font-size:.6em;color:#00000080;line-height:1}.cell--placed .cell-symbol{font-size:1.1em;font-weight:800;line-height:1.1;color:#000000e6}.cell--placed .cell-name{font-size:.85em;font-weight:600;color:#000000d9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.cell--placed .cell-z{font-size:.5em;color:#00000080}.cell-hint{display:none;position:absolute;top:0;right:0;bottom:0;left:0;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;background:transparent;border-radius:3px}.cell--hinted .cell-hint{display:flex;background:transparent}.cell-hint .cell-symbol{font-size:1.2em;font-weight:800;color:#fff;line-height:1}.cell-hint .cell-name{font-size:.75em;color:#fffffff2;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:90%}.f-block-spacer{grid-column:1 / -1;grid-row:8;height:6px}.win-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100}.win-box{background:var(--color-surface);border-radius:20px;padding:2.5rem 3rem;text-align:center;box-shadow:0 8px 40px #00000040;display:flex;flex-direction:column;gap:1rem;align-items:center}.win-box h2{font-size:2rem;font-weight:800}.win-box p{color:var(--color-text-muted)}.win-btn{padding:.75rem 2rem;background:var(--color-primary);color:#fff;font-size:1rem;font-weight:600;border-radius:10px;margin-top:.5rem}.win-btn:hover{background:var(--color-primary-hover)}.hangman-game{display:flex;flex-direction:column;align-items:center;max-width:520px;margin:0 auto;padding:1.5rem 1rem;gap:1.25rem}.hangman-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%}.hangman-header .back-btn{background:var(--color-surface);border:1px solid var(--color-border, #e5e7eb);border-radius:8px;padding:.4rem .9rem;font-size:.9rem;cursor:pointer;color:var(--color-text);transition:background .15s}.hangman-header .back-btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.hangman-score{font-size:.95rem;color:var(--color-text-muted)}.hangman-score strong{color:var(--color-primary);font-weight:700}.hangman-svg{height:200px;display:flex;align-items:center;justify-content:center}.hangman-svg svg{display:block}.wrong-count{font-size:.9rem;color:var(--color-text-muted);text-align:center}.wrong-count span{color:#ef4444;font-weight:700}.word-display{display:flex;flex-direction:row;align-items:flex-end;justify-content:center;gap:6px;flex-wrap:wrap}.letter-slot{width:36px;height:44px;display:flex;align-items:center;justify-content:center;border-bottom:3px solid var(--color-text, #374151);font-weight:700;font-size:1.5rem;text-align:center;color:transparent;-webkit-user-select:none;user-select:none;transition:color .15s}.letter-slot.revealed{color:var(--color-text, #374151)}.keyboard{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;max-width:460px}.key-btn{width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:var(--color-surface);border:1px solid var(--color-border, #e5e7eb);border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;color:var(--color-text);transition:background .1s,border-color .1s,opacity .1s}.key-btn:hover:not(:disabled){background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.key-btn.used-correct{background:#d1fae5;border-color:#10b981;color:#065f46}.key-btn.used-wrong{background:#fee2e2;border-color:#ef4444;color:#991b1b;opacity:.4}.key-btn:disabled{cursor:default;opacity:.5}.result-msg{font-size:1.4rem;font-weight:800;text-align:center;padding:.5rem 1rem;border-radius:10px}.result-msg.win{color:#065f46;background:#d1fae5}.result-msg.lose{color:#991b1b;background:#fee2e2}.next-btn{background:var(--color-primary);color:#fff;border:none;border-radius:8px;padding:.6rem 1.6rem;font-size:1rem;font-weight:700;cursor:pointer;transition:opacity .15s}.next-btn:hover{opacity:.85}.catcher-game{display:flex;flex-direction:column;height:100vh;background:#0f172a;overflow:hidden}.catcher-header{display:flex;align-items:center;gap:1rem;padding:.6rem 1rem;background:#1e293b;border-bottom:1px solid #334155;flex-shrink:0}.catcher-header .back-btn{background:none;border:1px solid #475569;color:#94a3b8;padding:.3rem .75rem;border-radius:6px;cursor:pointer;font-size:.875rem;transition:background .15s,color .15s}.catcher-header .back-btn:hover{background:#334155;color:#f1f5f9}.catch-divisor-label{font-size:.95rem;color:#94a3b8;margin-right:auto}.catch-stat{font-size:.95rem;color:#94a3b8}.catch-stat strong{color:#f1f5f9;font-weight:700}.catch-power{color:#fbbf24;font-weight:700;font-variant-numeric:tabular-nums;min-width:5.5rem;text-align:right}.catcher-canvas{flex:1;display:block;width:100%}.divisor-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172aeb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;z-index:100}.divisor-screen h2{font-size:2rem;font-weight:800;color:#f1f5f9;letter-spacing:-.5px}.divisor-screen p{color:#94a3b8;font-size:1rem;margin-top:-1.25rem}.divisor-hint{max-width:30rem;text-align:center;line-height:1.6;margin-top:-1.5rem!important;font-size:.9rem!important}.divisor-hint .hint-turbo{color:#fbbf24;font-weight:700}.divisor-hint .hint-bred{color:#c084fc;font-weight:700}.divisor-buttons{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.divisor-btn{width:72px;height:72px;border-radius:16px;border:2px solid #334155;background:#1e293b;color:#f1f5f9;font-size:1.75rem;font-weight:800;cursor:pointer;transition:border-color .15s,background .15s,transform .1s}.divisor-btn:hover{border-color:#f59e0b;background:#292524;transform:translateY(-2px)}.game-over-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172aeb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;z-index:100}.game-over-screen h2{font-size:2.25rem;font-weight:800;color:#f1f5f9}.game-over-screen .go-score{font-size:1.25rem;color:#94a3b8}.game-over-screen .go-score strong{color:#f59e0b;font-weight:800}.game-over-screen .go-divisor{font-size:.95rem;color:#64748b}.game-over-actions{display:flex;gap:1rem;margin-top:.5rem}.go-restart-btn{padding:.65rem 1.75rem;border-radius:10px;border:none;background:#f59e0b;color:#0f172a;font-size:1rem;font-weight:700;cursor:pointer;transition:background .15s,transform .1s}.go-restart-btn:hover{background:#fbbf24;transform:translateY(-1px)}.go-home-btn{padding:.65rem 1.75rem;border-radius:10px;border:1px solid #475569;background:#1e293b;color:#94a3b8;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.go-home-btn:hover{background:#334155;color:#f1f5f9}.store-game{flex:1;display:flex;flex-direction:column;align-items:center;padding:1.5rem;gap:1.25rem;max-width:720px;margin:0 auto;width:100%}.store-header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem;flex-wrap:wrap}.store-stats{display:flex;gap:1.25rem;font-size:1rem;font-weight:600;color:var(--color-text);flex-wrap:wrap}.store-stats .stat-label{color:var(--color-text-muted);font-weight:400;font-size:.85rem}.store-panels{display:grid;grid-template-columns:1fr;gap:1rem;width:100%}@media (min-width: 640px){.store-panels{grid-template-columns:1fr 1fr}}.store-panel{background:var(--color-surface);border-radius:16px;box-shadow:var(--shadow);padding:1rem 1.1rem 1.1rem}.panel-title{font-size:1rem;font-weight:700;color:var(--color-text);margin-bottom:.6rem}.panel-title small{font-size:.75rem;font-weight:400;color:var(--color-text-muted);margin-left:.4rem}.panel-rows{display:flex;flex-direction:column;gap:.35rem}.market-row,.shop-row{display:flex;align-items:center;gap:.5rem;padding:.35rem .4rem;border-radius:10px;border:1px solid transparent}.market-row:hover,.shop-row:hover{border-color:var(--color-border)}.shop-row--tom{opacity:.55}.market-row--laast{opacity:.5}.market-row--laast .row-name{font-weight:400}.laast-maerke{font-size:.9rem;min-width:4.5rem;text-align:center}.row-icon{font-size:1.35rem;line-height:1;width:1.6rem;text-align:center}.row-name{flex:1;display:flex;flex-direction:column;font-size:.9rem;font-weight:600;color:var(--color-text);line-height:1.25;min-width:0}.row-name small{font-size:.7rem;font-weight:400;color:var(--color-text-muted)}.buy-btn{display:flex;flex-direction:column;align-items:center;line-height:1.2;font-size:.8rem;font-weight:600;padding:.3rem .6rem;min-width:4.5rem;background:var(--color-primary);color:#fff}.buy-btn small{font-size:.7rem;font-weight:400;opacity:.85}.buy-btn:hover:not(:disabled){background:var(--color-primary-hover)}.price-ctrl{display:flex;align-items:center;gap:.25rem}.price-ctrl button{width:1.6rem;height:1.6rem;font-size:1rem;font-weight:700;line-height:1;background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border)}.price-ctrl button:hover:not(:disabled){background:var(--color-border)}.price-val{min-width:3.2rem;text-align:center;font-size:.85rem;font-weight:700;color:var(--color-text)}.demand{font-size:.7rem;letter-spacing:1px;color:var(--color-primary);width:3.8rem;text-align:right}.alder{color:var(--color-correct);font-weight:600}.alder.gammel{color:var(--color-wrong)}.udloeber{color:var(--color-wrong);font-weight:600;white-space:nowrap}.haendelser{list-style:none;margin-top:.4rem;display:flex;flex-direction:column;gap:.15rem;font-size:.8rem}.haendelser .kasseret{color:var(--color-wrong)}.haendelser .tyveri{color:#b45309}.expand-bar{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.55rem .9rem;border-radius:12px;background:var(--color-surface);box-shadow:var(--shadow);font-size:.85rem;color:var(--color-text-muted)}.expand-bar.bygger{background:#fff7ed;color:#9a3412}.expand-bar.bygger strong{color:#9a3412}.expand-btn{display:flex;flex-direction:column;align-items:center;line-height:1.3;padding:.4rem .9rem;font-size:.8rem;font-weight:600;background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border)}.expand-btn small{font-size:.7rem;font-weight:400;color:var(--color-wrong)}.expand-btn:hover:not(:disabled) small{color:#fecaca}.expand-btn:hover:not(:disabled){background:var(--color-primary);border-color:var(--color-primary);color:#fff}.result-nyt{display:block;margin-top:.25rem;color:var(--color-primary);font-weight:600}.day-result{width:100%;text-align:center;padding:.6rem .9rem;border-radius:12px;background:var(--color-surface);box-shadow:var(--shadow);font-size:.85rem;color:var(--color-text-muted);animation:result-pop .2s ease-out}.day-result.plus strong{color:var(--color-correct)}.day-result.minus strong{color:var(--color-wrong)}.next-day-btn{padding:.75rem 2rem;font-size:1.05rem;font-weight:700;background:var(--color-primary);color:#fff;box-shadow:var(--shadow)}.next-day-btn:hover{background:var(--color-primary-hover)}.fallit-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:100}.fallit-box{background:var(--color-surface);border-radius:20px;box-shadow:0 8px 40px #00000040;padding:2rem 2.5rem;text-align:center;max-width:340px;animation:result-pop .2s ease-out}.fallit-box h2{font-size:1.75rem;font-weight:800;color:var(--color-wrong);margin-bottom:.75rem}.fallit-box p{color:var(--color-text-muted);font-size:.95rem}.fallit-points{margin-top:.35rem;color:var(--color-text)!important;font-weight:600}.fallit-btns{display:flex;gap:.6rem;justify-content:center;margin-top:1.5rem}.fallit-btn{padding:.6rem 1.2rem;font-size:.95rem;font-weight:600;background:var(--color-primary);color:#fff}.fallit-btn:hover{background:var(--color-primary-hover)}.fallit-btn.secondary{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border)}.fallit-btn.secondary:hover{background:var(--color-border)}@keyframes result-pop{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.animals-game{flex:1;display:flex;flex-direction:column;align-items:center;padding:1.5rem;gap:1.25rem;max-width:560px;margin:0 auto;width:100%}.animals-header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem}.animals-stats{display:flex;align-items:center;gap:1.25rem;font-size:1rem;font-weight:600;color:var(--color-text)}.animals-stats .stat-label{color:var(--color-text-muted);font-weight:400;font-size:.85rem}.an-reset{background:none;color:var(--color-text-muted);font-size:1rem;line-height:1;padding:.2rem .3rem;transition:color .15s}.an-reset:hover{color:var(--color-primary)}.progress-track{width:100%;height:6px;border-radius:999px;background:var(--color-border);overflow:hidden}.progress-fill{height:100%;width:0;border-radius:999px;background:var(--color-correct);transition:width .3s ease-out}.question-card{background:var(--color-surface);border-radius:16px;box-shadow:var(--shadow);padding:1.25rem 1.5rem;width:100%;text-align:center;animation:question-pop .22s ease-out}.question-text{font-size:1.15rem;font-weight:700;color:var(--color-text);line-height:1.4}.question-tag{display:block;margin-top:.4rem;font-size:.75rem;font-weight:500;color:var(--color-text-muted)}.animal-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;width:100%}.animal-card{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.75rem .5rem .6rem;background:var(--color-surface);border-radius:16px;box-shadow:var(--shadow);border:2px solid transparent;transition:border-color .12s,background .12s,transform .1s}.animal-card:hover:not(:disabled){border-color:var(--color-primary);background:#eff6ff;transform:translateY(-2px)}.animal-art{width:100%;max-width:118px;height:auto;aspect-ratio:1;display:block}.animal-name{font-size:1rem;font-weight:700;color:var(--color-text)}.animal-card.correct{background:#dcfce7;border-color:var(--color-correct);animation:card-pop .3s ease-out}.animal-card.wrong{background:#fee2e2;border-color:var(--color-wrong);animation:card-shake .35s ease-out;opacity:.75}.animals-feedback{min-height:1.5rem;font-size:.95rem;font-weight:600;text-align:center;color:var(--color-text-muted)}.animals-feedback.plus{color:var(--color-correct)}.animals-feedback.minus{color:var(--color-wrong)}@keyframes question-pop{0%{transform:translateY(-6px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes card-pop{0%{transform:scale(1)}50%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes card-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media (max-width: 420px){.question-text{font-size:1rem}.animal-name{font-size:.9rem}}.shark-game{display:flex;flex-direction:column;height:100vh;background:#082f49;overflow:hidden}.shark-header{display:flex;align-items:center;gap:1rem;padding:.6rem 1rem;background:#0f172a;border-bottom:1px solid #1e3a5f;flex-shrink:0}.shark-header .back-btn{background:none;border:1px solid #475569;color:#94a3b8;padding:.3rem .75rem;border-radius:6px;font-size:.875rem;transition:background .15s,color .15s}.shark-header .back-btn:hover{background:#334155;color:#f1f5f9}.sh-level{font-size:.95rem;color:#94a3b8;margin-right:auto}.sh-pause{background:none;border:1px solid #475569;color:#94a3b8;padding:.2rem .6rem;border-radius:6px;font-size:.9rem}.sh-pause:hover{background:#334155;color:#f1f5f9}.sh-pause[hidden]{display:none}.sh-stat{font-size:.95rem;color:#94a3b8}.sh-stat strong{color:#f1f5f9;font-weight:700;font-variant-numeric:tabular-nums}.sh-lives{min-width:4.5rem;text-align:right}.shark-stage{position:relative;flex:1;min-height:0}.shark-canvas{display:block;width:100%;height:100%}.sh-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#082f49b8;overflow-y:auto}.sh-overlay[hidden]{display:none}.sh-panel{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:44rem;width:100%;margin:auto;padding:2rem;background:#0f172aeb;border:1px solid #1e3a5f;border-radius:18px;color:#e2e8f0;text-align:center}.sh-panel h2{font-size:2rem;font-weight:800;color:#f1f5f9;letter-spacing:-.5px}.sh-panel h3{align-self:flex-start;margin-top:.5rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#7dd3fc}.sh-intro{color:#94a3b8;max-width:34rem;line-height:1.6}.sh-intro b,.sh-tip b{color:#f1f5f9}.sh-tip{font-size:.85rem;color:#64748b;margin-top:.5rem}.sh-levels{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.75rem;width:100%}.sh-level-btn{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;padding:.9rem 1rem;background:#1e293b;border:2px solid #334155;border-radius:12px;color:#f1f5f9;text-align:left;transition:border-color .15s,background .15s,transform .1s}.sh-level-btn:hover{border-color:#38bdf8;background:#1e3a5f;transform:translateY(-2px)}.sh-key{position:absolute;top:.6rem;right:.7rem;min-width:1.5rem;padding:0 .3rem;border:1px solid #475569;border-bottom-width:3px;border-radius:5px;font-size:.75rem;font-weight:700;color:#94a3b8;text-align:center}.sh-level-name{font-weight:700;font-size:1.05rem}.sh-level-desc{font-size:.8rem;color:#94a3b8}.sh-level-example{margin-top:.35rem;padding:.1rem .5rem;background:#f8fafc;border-radius:6px;color:#0f172a;font-family:ui-monospace,Cascadia Mono,Menlo,Consolas,monospace;font-weight:700}.sh-level-best{font-size:.75rem;color:#fbbf24;font-weight:600}.sh-final{font-size:2.5rem;font-weight:800;color:#38bdf8;line-height:1.1}.sh-record{color:#fbbf24;font-weight:700;margin-top:-.5rem}.sh-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;width:100%;max-width:28rem}.sh-stats div{display:flex;flex-direction:column;padding:.6rem .25rem;background:#1e293b;border-radius:10px;font-size:.8rem;color:#94a3b8}.sh-stats span{font-size:1.35rem;font-weight:800;color:#f1f5f9}.sh-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.5rem}.sh-primary{padding:.65rem 1.75rem;background:#0ea5e9;color:#0f172a;font-size:1rem;font-weight:700}.sh-primary:hover{background:#38bdf8}.sh-primary small{font-weight:500;opacity:.7}.sh-secondary{padding:.65rem 1.75rem;border:1px solid #475569;background:#1e293b;color:#94a3b8;font-size:1rem;font-weight:600}.sh-secondary:hover{background:#334155;color:#f1f5f9}@media (max-width: 520px){.sh-stats{grid-template-columns:repeat(2,1fr)}.shark-header{gap:.6rem;flex-wrap:wrap}}.sums-game{--sums-cell: #edeef6;--sums-grid-line: .5px solid #cbd5e1;--sums-region-line: 1.5px solid #475569;--sums-ring: #3949ab;flex:1;display:flex;flex-direction:column;align-items:center;padding:1.5rem;gap:1rem;max-width:640px;margin:0 auto;width:100%}.sums-header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem}.sums-stats{display:flex;align-items:center;gap:1.25rem;font-size:1rem;font-weight:600;color:var(--color-text)}.sums-stats .stat-label{color:var(--color-text-muted);font-weight:400;font-size:.85rem}.sums-lives{letter-spacing:1px}.sums-levels{display:flex;gap:.25rem;padding:.25rem;background:var(--color-surface);border-radius:999px;box-shadow:var(--shadow);flex-wrap:wrap;justify-content:center}.sums-level{padding:.4rem .9rem;border-radius:999px;background:transparent;color:var(--color-text-muted);font-size:.9rem;font-weight:600}.sums-level small{font-weight:400;opacity:.75}.sums-level:hover{background:var(--color-border)}.sums-level.active{background:var(--color-primary);color:#fff}.sums-rules{font-size:.9rem;color:var(--color-text-muted);text-align:center;max-width:30rem}.sums-board-wrap{display:flex;justify-content:center;width:100%;overflow-x:auto}.sums-board{--cell: max(32px, min(56px, calc((100vw - 3rem) / (var(--n) + 1)), calc((100vh - 400px) / (var(--n) + 1))));display:grid;grid-auto-rows:var(--cell)}.sums-corner{visibility:hidden}.sums-target{display:flex;align-items:center;justify-content:center;font-size:calc(var(--cell) * .38);font-weight:800;color:var(--color-primary);transition:color .2s}.sums-target.done{color:#cbd5e1}.sums-cell{position:relative;display:flex;align-items:center;justify-content:center;border-radius:0;color:var(--color-text);font-size:calc(var(--cell) * .4);font-weight:500;transition:none}.sums-cell:active{transform:none}.sums-cell:disabled{opacity:1}.sums-cell:not(:disabled):hover{filter:brightness(.94)}.sums-cell:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:transparent;transition:background .25s;pointer-events:none}.sums-cell.flash-fejl:after{background:#ef444473}.sums-cell.flash-tip:after{background:#ffb30073}.sums-num{display:flex;align-items:center;justify-content:center;width:64%;height:64%;border-radius:50%;border:2px solid transparent}.sums-cell.kept .sums-num{border-color:var(--sums-ring);font-weight:800}.sums-cell.erased .sums-num{visibility:hidden}.sums-region-target{position:absolute;top:1px;left:3px;font-size:calc(var(--cell) * .19);font-weight:800;line-height:1.1;color:#1e293bcc}.sums-region-target.done{color:#1e293b40}.sums-tools,.sums-actions{display:flex;gap:.5rem;width:100%;max-width:28rem}.sums-tool{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;height:52px;background:var(--color-border);color:var(--color-text);font-size:1.05rem;font-weight:700}.sums-tool.active{background:var(--color-primary);color:#fff}.tool-x{font-size:1.1rem}.tool-ring{display:inline-block;width:18px;height:18px;border:2px solid currentColor;border-radius:50%}.sums-btn{flex:1;padding:.6rem 1rem;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-primary);font-size:.95rem;font-weight:600}.sums-btn:not(:disabled):hover{background:#eff6ff}.sums-btn.primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.sums-btn.primary:hover{background:var(--color-primary-hover)}.sums-tip{font-size:.8rem;color:var(--color-text-muted);text-align:center}.sums-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172a73;z-index:100}.sums-overlay[hidden]{display:none}.sums-dialog{display:flex;flex-direction:column;align-items:center;gap:.75rem;max-width:24rem;width:100%;padding:1.75rem;background:var(--color-surface);border-radius:16px;box-shadow:0 10px 40px #0003;text-align:center}.sums-dialog h2{font-size:1.6rem;font-weight:800}.sums-dialog p{color:var(--color-text-muted)}.sums-dialog .sums-gain{font-size:1.25rem;font-weight:800;color:var(--color-correct)}.sums-overlay-actions{display:flex;gap:.5rem;width:100%;margin-top:.5rem}@media (max-width: 480px){.sums-game{padding:1rem}.sums-levels{flex-wrap:nowrap}.sums-level{padding:.35rem .55rem;font-size:.8rem}}
