:root{--bg: #10111a;--surface: #171926;--surface-soft: #1f2333;--surface-muted: #262b3d;--border: #32384f;--text: #f2f3ff;--muted: #a5abc5;--accent-mint: #90d8c2;--accent-lilac: #c1a8ff;--accent-peach: #f0b29a;--accent-blue: #98b7ff;color:var(--text);background:var(--bg);font-family:Outfit,Segoe UI,sans-serif;line-height:1.4;font-weight:400;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{min-height:100vh;background:var(--bg)}button,kbd{font:inherit}button{border:0;cursor:pointer}.app-shell{min-height:100vh;padding:24px;display:grid;place-items:center;background:var(--bg)}.menu-shell{width:min(920px,100%);display:grid;gap:20px;justify-items:center}.menu-brand{display:grid;gap:8px;justify-items:center;text-align:center}.menu-brand h1,.game-header h1,.stage-modal h2,.mode-card strong{margin:0;font-family:Cinzel,serif}.menu-brand h1{font-size:clamp(40px,9vw,104px);line-height:.9;letter-spacing:-.02em}.menu-subtitle{margin:0;color:var(--muted);font-size:14px;max-width:29rem}.menu-reward-btn{display:grid;gap:2px;margin-top:8px;padding:12px 14px;border-radius:18px;border:1px solid var(--border);background:var(--surface-soft);color:inherit;text-align:center;transition:transform .18s ease,border-color .18s ease}.menu-reward-btn:hover{transform:translateY(-1px);border-color:var(--accent-peach)}.menu-reward-btn span{color:var(--accent-peach);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.menu-reward-btn strong{font-size:13px}.menu-reward-btn em{color:var(--muted);font-size:11px;font-style:normal}.eyebrow{margin:0;color:var(--accent-mint);font-size:11px;letter-spacing:.22em;text-transform:uppercase}.mode-grid{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2vw,18px)}.mode-card{aspect-ratio:1;min-height:0;border-radius:20px;border:1px solid var(--border);background:var(--surface);padding:14px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:8px;color:inherit;text-align:left;position:relative;overflow:hidden}.mode-card-active{background:var(--surface-soft);transition:transform .18s ease,border-color .18s ease,background .18s ease}.mode-card-active:hover{transform:translateY(-2px);border-color:var(--accent-mint)}.mode-card-disabled{opacity:.78}.mode-card-completed{border-color:var(--accent-mint)}.mode-card-badge{justify-self:start;display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:var(--surface-muted);color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.mode-card-mark,.mode-card-empty{border-radius:16px;border:1px solid var(--border);background:#1b2030;width:100%;height:100%;min-height:0;align-self:stretch;position:relative;overflow:hidden}.mode-card-mark{display:grid;place-items:center;padding:10px}.mode-card-preview-image{display:block;width:100%;height:100%;max-width:172px;max-height:172px;object-fit:contain}@media (min-width: 1280px){.menu-shell{width:min(1040px,100%)}.mode-card{padding:16px}.mode-card-preview-image{max-width:184px;max-height:184px}}.mode-card-empty:before,.mode-card-empty:after{content:"";position:absolute;top:20%;right:20%;bottom:20%;left:20%;border:1px dashed #454d68;border-radius:14px}.mode-card-empty:after{top:32%;right:32%;bottom:32%;left:32%}.mode-card-copy{display:grid;gap:4px;align-content:end}.mode-card-copy strong{font-size:clamp(16px,1.8vw,20px);line-height:1}.mode-card-copy span{color:var(--muted);font-size:11px}.mode-card-copy em{color:var(--accent-mint);font-style:normal;font-weight:600;font-size:11px}.mode-card-status-dot{position:absolute;right:12px;top:12px;width:10px;height:10px;border-radius:50%;background:var(--border)}.mode-card-status-dot-complete{background:var(--accent-mint);box-shadow:0 0 0 3px #90d8c224}.game-shell{width:min(1040px,100%);display:grid;gap:14px}.game-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.game-header-main{display:flex;gap:14px;align-items:flex-start;min-width:0}.game-header h1{font-size:clamp(42px,7vw,72px);line-height:.9}.header-seed,.muted-text,.result-caption{margin:0;color:var(--muted)}.menu-toolbar{display:flex;justify-content:center;align-items:center;width:100%}.menu-toolbar-controls{display:inline-flex;align-items:center;gap:10px}.calendar-picker,.language-picker{position:relative}.calendar-trigger{display:grid;place-items:center;width:40px;height:40px;border-radius:14px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.calendar-trigger svg{width:18px;height:18px;fill:currentColor}.calendar-popover,.language-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:4;padding:12px;border-radius:18px;border:1px solid var(--border);background:var(--surface);box-shadow:0 16px 40px #00000047}.calendar-popover{width:min(252px,calc(100vw - 32px))}.language-popover{width:168px;display:grid;gap:6px}.language-option{display:grid;gap:2px;padding:10px 12px;border-radius:12px;background:var(--surface-soft);color:var(--text);text-align:left}.language-option strong{font-size:12px;letter-spacing:.12em;text-transform:uppercase}.language-option span{color:var(--muted);font-size:12px}.language-option-active{border:1px solid rgba(144,216,194,.42);background:#90d8c21f}.calendar-header,.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-header{grid-template-columns:32px 1fr 32px;align-items:center;margin-bottom:10px}.calendar-header button{height:32px;border-radius:10px;background:var(--surface-soft);color:var(--text)}.calendar-header button:disabled{opacity:.4;cursor:default}.calendar-header strong{text-align:center;text-transform:capitalize;font-size:13px}.calendar-weekdays{margin-bottom:8px}.calendar-weekdays span{text-align:center;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.calendar-grid{grid-template-columns:repeat(7,1fr)}.calendar-cell,.calendar-cell-empty{aspect-ratio:1}.calendar-cell{border-radius:10px;background:var(--surface-soft);color:var(--text);font-size:12px;transition:background .16s ease,color .16s ease,border-color .16s ease}.calendar-cell:disabled{opacity:.28;cursor:default}.calendar-cell-selected{background:var(--accent-mint);color:#10111a;font-weight:700}.calendar-cell-completed{background:#90d8c22e;color:var(--accent-mint);border:1px solid rgba(144,216,194,.28)}.calendar-cell-selected-completed{background:var(--accent-mint);color:#10111a;border:1px solid var(--accent-mint)}.back-button{padding:10px 14px;border-radius:16px;background:var(--surface-soft);color:var(--text)}.hud-stats,.result-grid{display:flex;gap:10px;flex-wrap:wrap}.hud-stats{justify-content:flex-end}.stat{min-width:92px;padding:10px 12px;border-radius:18px;background:var(--surface);border:1px solid var(--border)}.stat span{display:block;color:var(--muted);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.stat strong{display:block;margin-top:6px;font-size:26px;line-height:1}.board-stage{position:relative;height:min(74vh,680px);min-height:430px;border-radius:28px;overflow:hidden;background:var(--surface);border:1px solid var(--border)}.game-canvas{position:absolute;top:0;right:0;bottom:0;left:0}.stage-modal{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(380px,calc(100% - 28px));padding:22px;border-radius:26px;background:#171926f0;border:1px solid var(--border);display:grid;gap:14px}.stage-modal h2{font-size:clamp(32px,4vw,46px);line-height:.96}.seed-reward-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:24px;background:#080a12ad}.seed-reward-modal{width:min(460px,calc(100vw - 24px));padding:24px;border-radius:28px;background:#171926fa;border:1px solid var(--border);display:grid;gap:12px;max-height:min(720px,calc(100vh - 48px));overflow-y:auto;box-shadow:0 24px 72px #0000005c}.seed-reward-modal h2{font-size:clamp(28px,4vw,42px);line-height:.98}.seed-reward-header,.seed-reward-intro,.seed-reward-stats{display:grid}.seed-reward-header{gap:6px}.seed-reward-intro,.seed-reward-stats{gap:10px}.seed-reward-date,.seed-reward-subheadline,.seed-reward-summary p{margin:0}.seed-reward-subheadline{color:var(--accent-peach);font-size:14px}.seed-reward-date{color:var(--muted);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.seed-reward-meta{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr);gap:8px}.seed-reward-summary{display:grid;gap:8px}.seed-reward-summary p{color:var(--text);font-size:14px;line-height:1.45}.seed-reward-summary-lead{color:#fff;font-weight:600}.seed-reward-score{display:grid;gap:3px;padding:10px 12px;border-radius:16px;background:var(--surface-soft);border:1px solid var(--border)}.seed-reward-score span{color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.seed-reward-score strong{font-size:24px;line-height:1}.seed-reward-score-compact strong{font-size:20px}.seed-reward-breakdown{display:grid;gap:8px}.seed-reward-section-label{color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.seed-reward-breakdown-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.seed-reward-breakdown-card{padding:8px 10px;border-radius:14px;border:1px solid var(--border);background:var(--surface-soft)}.seed-reward-breakdown-card span{display:block;color:var(--muted);font-size:9px;letter-spacing:.04em;text-transform:uppercase}.seed-reward-breakdown-card strong{display:block;margin-top:4px;font-size:17px;line-height:1}.seed-reward-actions{display:flex;justify-content:flex-start}.intro-panel p,.result-panel p{margin:0}.intro-grid{display:grid;gap:10px}.panel-label{display:inline-block;margin-bottom:4px;color:var(--accent-lilac);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.primary-btn{justify-self:start;min-width:140px;padding:12px 14px;border-radius:16px;background:var(--accent-mint);color:#10111a;font-weight:700}.result-caption{display:flex;gap:12px;font-size:12px}kbd{padding:1px 6px;border-radius:8px;border:1px solid var(--border);background:var(--surface-muted)}@media (max-width: 800px){.app-shell{padding:18px}.menu-shell{gap:18px}.menu-brand{gap:10px}.menu-brand h1{font-size:clamp(34px,13vw,72px)}.menu-subtitle{font-size:14px;line-height:1.5;max-width:25rem}.menu-reward-btn{margin-top:6px}.menu-reward-btn em{font-size:10px}.game-header{flex-direction:column;gap:18px}.game-header-main{width:100%;gap:16px}.hud-stats{justify-content:flex-start}.game-header h1{font-size:clamp(34px,9vw,56px)}.stat{min-width:84px;padding:9px 11px}.stat span{font-size:11px}.stat strong{font-size:23px}.board-stage{height:min(70vh,600px);min-height:400px}.stage-modal{width:min(340px,calc(100% - 24px));padding:18px;gap:12px}.intro-panel p,.result-panel p,.seed-reward-summary p{font-size:15px;line-height:1.5}.seed-reward-modal{gap:10px}}@media (max-width: 560px){.mode-grid{width:min(100%,340px);grid-template-columns:1fr;gap:14px}.mode-card{border-radius:20px;padding:12px;gap:10px}.mode-card-copy strong{font-size:16px}.mode-card-copy span,.mode-card-copy em{font-size:11px}.menu-brand h1{font-size:clamp(30px,13vw,46px)}.menu-subtitle{font-size:14px;line-height:1.5}.menu-reward-btn{padding:11px 12px}.board-stage{height:min(67vh,548px);min-height:372px}.back-button{padding:9px 13px}.game-header-main{flex-wrap:wrap;gap:12px}.hud-stats{gap:10px}.stat{min-width:82px;padding:9px 11px}.stat span{font-size:10px}.stat strong{font-size:21px}.header-seed{font-size:13px;line-height:1.45}.calendar-trigger{width:36px;height:36px}.calendar-popover{position:fixed;top:70px;left:50%;right:auto;transform:translate(-50%);width:min(252px,calc(100vw - 20px));max-height:calc(100vh - 88px);overflow-y:auto}.language-popover{position:fixed;top:70px;left:50%;right:auto;transform:translate(-50%);width:min(168px,calc(100vw - 20px))}.stage-modal{width:min(310px,calc(100% - 20px));padding:16px}.seed-reward-backdrop{padding:16px}.seed-reward-modal{width:min(340px,calc(100vw - 20px));padding:18px;max-height:calc(100vh - 32px)}.stage-modal h2{font-size:22px}.seed-reward-modal h2{font-size:24px}.seed-reward-subheadline{font-size:13px}.intro-grid{gap:8px}.panel-label{font-size:11px}.primary-btn{min-width:128px;padding:12px 14px}}@media (max-width: 420px){.app-shell{padding:14px}.menu-toolbar{gap:10px}.mode-grid{width:min(100%,300px);gap:12px}.mode-card{padding:12px}.mode-card-copy strong{font-size:15px}.mode-card-mark{padding:9px}.mode-card-preview-image{width:min(100%,104px);height:min(100%,104px)}.mode-card-copy span,.mode-card-copy em,.menu-subtitle,.intro-panel p,.result-panel p,.seed-reward-summary p,.seed-reward-subheadline,.header-seed{font-size:12px}.seed-reward-meta{grid-template-columns:minmax(0,1fr) minmax(0,auto)}.seed-reward-score{padding:9px 10px}.seed-reward-score strong{font-size:20px}.seed-reward-score-compact strong{font-size:17px}.seed-reward-breakdown-grid{gap:5px}.seed-reward-breakdown-card{padding:7px 8px}.seed-reward-breakdown-card strong{font-size:15px}.calendar-popover{width:calc(100vw - 20px);padding:10px;border-radius:16px}.calendar-header,.calendar-weekdays,.calendar-grid{gap:4px}.calendar-header{grid-template-columns:28px 1fr 28px;margin-bottom:8px}.calendar-header button{height:28px;border-radius:9px}.calendar-weekdays{margin-bottom:6px}.calendar-weekdays span{font-size:9px;letter-spacing:.08em}.calendar-cell{font-size:11px}.stage-modal,.seed-reward-modal{padding:14px;gap:10px}.stage-modal h2{font-size:19px}.seed-reward-modal h2{font-size:20px}.seed-reward-summary p{font-size:12px}.seed-reward-breakdown-card strong{font-size:14px}}
