:root{--text:#59625b;--text-h:#173521;--bg:#fbfff6;--border:#dce9d4;--card-bg:#ffffffd1;--accent:#218a49;--shadow:#275c3714 0 18px 35px, #275c3714 0 4px 12px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;font:18px/145% var(--sans);letter-spacing:0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#c1cbbb;--text-h:#f0ffe9;--bg:#111911;--border:#2d3b2d;--card-bg:#192419db;--accent:#82e48f;--shadow:#00000042 0 18px 35px, #0003 0 4px 12px}}#root{min-height:100svh}body{background:radial-gradient(circle at 10% 10%, #82e48f38, transparent 28rem), radial-gradient(circle at 90% 0%, #ffe7a83d, transparent 24rem), var(--bg);min-width:320px;margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{margin:0;font-size:4rem;line-height:1}@media (width<=1024px){h1{font-size:3rem}}h2{font-size:1.1rem;line-height:1.2}@media (width<=1024px){h2{font-size:1rem}}:root{--stat-strength:#a32132;--stat-agility:#176a37;--stat-intelligence:#7337a8;--stat-wisdom:#205ea8;--stat-endurance:#806000}@media (prefers-color-scheme:dark){:root{--stat-strength:#ff929e;--stat-agility:#8be5a0;--stat-intelligence:#d0a3ff;--stat-wisdom:#92c5ff;--stat-endurance:#f2ce6b}}.stat-strength{color:var(--stat-strength)}.stat-agility{color:var(--stat-agility)}.stat-intelligence{color:var(--stat-intelligence)}.stat-wisdom{color:var(--stat-wisdom)}.stat-endurance{color:var(--stat-endurance)}.landing{box-sizing:border-box;width:min(100%,1120px);margin:0 auto;padding:28px 18px}.landing-enter{animation:.2s ease-out landing-enter}@keyframes landing-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.hero{align-items:center;gap:32px;min-height:68svh;padding:52px 0 34px;display:grid}.hero-copy{justify-items:center;gap:18px;display:grid}.subtitle{max-width:520px;color:var(--text);margin:0;font-size:1.2rem}.start-button{color:#063319;cursor:pointer;min-height:56px;font:700 1rem/1 var(--sans);background:#62d66f;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0 28px;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex;box-shadow:0 14px 30px #19763438}.start-button:hover{background:#74e481;transform:translateY(-2px);box-shadow:0 18px 36px #19763447}.start-button:focus-visible{outline-offset:4px;outline:3px solid #1b6f3559}.button-note{color:var(--text);margin:-6px 0 0;font-size:.9rem}.companion-preview{aspect-ratio:1;width:min(76vw,320px);margin:0 auto;position:relative}.saved-companion-note{color:var(--accent);font:700 1rem/1.3 var(--sans);margin:0}.companion-preview svg{filter:drop-shadow(0 24px 20px #29764833);width:100%;height:100%;display:block}.features{gap:14px;padding-bottom:28px;display:grid}.feature-card{border:1px solid var(--border);background:var(--card-bg);box-shadow:var(--shadow);border-radius:8px;justify-items:start;gap:14px;padding:22px;display:grid}.feature-icon{aspect-ratio:1;background:#62d66f29;border-radius:8px;width:38px;display:inline-block;position:relative}.feature-icon-companion:before,.feature-icon-companion:after{content:"";background:var(--accent);border-radius:50%;position:absolute}.feature-icon-companion:before{inset:9px}.feature-icon-companion:after{width:4px;height:4px;box-shadow:10px 0 0 var(--accent);background:var(--text-h);top:18px;left:12px}.feature-icon-habits:before{content:"";border-left:4px solid var(--accent);border-bottom:4px solid var(--accent);width:15px;height:8px;position:absolute;top:16px;left:11px;transform:rotate(-45deg)}.feature-icon-rewards:before{content:"";background:var(--accent);clip-path:polygon(50% 0,62% 34%,98% 35%,69% 56%,79% 91%,50% 70%,21% 91%,31% 56%,2% 35%,38% 34%);position:absolute;inset:9px}.feature-card h2{margin:0}@media (width>=720px){.landing{padding:36px 28px}.hero{text-align:left;grid-template-columns:minmax(0,1fr) minmax(220px,.72fr);gap:44px}.hero-copy{justify-items:start}.companion-preview{width:min(100%,380px)}.features{grid-template-columns:repeat(3,1fr);gap:18px}}@media (width>=1040px){.hero{min-height:72svh}.companion-preview{width:min(100%,380px)}}.character-lab{box-sizing:border-box;width:min(100%,1180px);margin:0 auto;padding:28px 18px 48px}.character-lab-header{text-align:center;margin-bottom:24px}.character-lab-header p{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin:0 0 5px;font-size:.78rem;font-weight:800}.character-lab-header h1{margin:0}.character-lab-header span,.lock-help{color:var(--text);font-size:.86rem}.character-lab-workspace{align-items:start;gap:20px;display:grid}.character-preview,.character-controls{border:1px solid var(--border);background:var(--card-bg);box-shadow:var(--shadow);border-radius:18px}.character-preview{background:radial-gradient(circle at 50% 48%, #ffe7a8b3, transparent 31%), var(--card-bg);align-content:center;justify-items:center;gap:14px;min-height:360px;padding:20px;display:grid;position:sticky;top:20px}.character-preview>svg{filter:drop-shadow(0 18px 16px #29764833);width:min(100%,420px)}.seed-card{box-sizing:border-box;background:#ffffff73;border-radius:10px;gap:6px;width:100%;padding:11px;display:grid}.seed-card span{color:var(--text);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800}.seed-card code{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.seed-card button,.preview-actions button,.grid-toggle,.refresh-grid{border:1px solid var(--border);min-height:35px;color:var(--text-h);background:var(--bg);cursor:pointer;font:700 .8rem/1 var(--sans);border-radius:7px}.seed-load{gap:6px;display:flex}.seed-load input{border:1px solid var(--border);min-width:0;color:var(--text-h);background:var(--bg);font:.72rem/1 var(--sans);border-radius:7px;flex:1;padding:0 7px}.seed-load button{flex:none;padding:0 9px}.preview-actions{gap:8px;width:100%;display:flex}.preview-actions button{flex:1}.preview-actions button:first-child,.character-lab-actions button:first-child{color:#063319;background:#62d66f;border-color:#62d66f}.character-controls{gap:10px;padding:16px;display:grid}.mode-switch{background:#2976481a;border-radius:9px;grid-template-columns:1fr 1fr;padding:3px;display:grid}.mode-switch button{min-height:36px;color:var(--text);cursor:pointer;font:800 .85rem/1 var(--sans);background:0 0;border:0;border-radius:7px}.mode-switch .is-active{color:#063319;background:#b9f5c0}.lock-help{margin:1px 4px 8px}.layer-section{border:1px solid var(--border);background:#ffffff38;border-radius:10px;overflow:hidden}.layer-section summary{color:var(--text-h);cursor:pointer;padding:13px 15px;font-weight:800}.layer-section[open] summary{border-bottom:1px solid var(--border)}.layer-fields{gap:12px;padding:14px;display:grid}.lab-field{color:var(--text-h);gap:6px;font-size:.86rem;font-weight:700;display:grid}.lab-field>span{justify-content:space-between;align-items:center;gap:8px;display:flex}.field-lock{border:1px solid var(--border);min-height:25px;color:var(--text);cursor:pointer;font:700 .7rem/1 var(--sans);background:0 0;border-radius:5px;padding:0 7px}.field-lock.is-locked{border-color:var(--accent);color:#063319;background:#b9f5c0}.field-note{color:var(--text);margin:0;font-size:.8rem;font-weight:500}.slider-value{color:var(--text);font-size:.75rem;font-weight:700}.slider-value output{color:var(--text-h);font-variant-numeric:tabular-nums}.range-limits{color:var(--text);grid-template-columns:1fr 1fr;gap:8px;font-size:.72rem;font-weight:700;display:grid}.range-limits label{gap:3px;display:grid}.range-limits input{border:1px solid var(--border);min-height:31px;color:var(--text-h);background:var(--bg);font:inherit;border-radius:5px;padding:3px 6px}.biome-swatches{align-items:center;gap:7px;display:flex}.biome-swatches span{border:2px solid #31382829;border-radius:50%;width:23px;height:23px;box-shadow:inset 0 1px 1px #ffffff73}.character-controls input,.character-controls select{box-sizing:border-box;width:100%;accent-color:var(--accent)}.character-controls select{border:1px solid var(--border);min-height:38px;color:var(--text-h);background:var(--bg);font:inherit;border-radius:6px;padding:0 9px}.character-controls input[type=color]{border:1px solid var(--border);background:var(--bg);cursor:pointer;border-radius:6px;height:38px;padding:2px}.grid-toggle,.refresh-grid{width:100%}.preview-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.preview-grid button,.favorites button{border:1px solid var(--border);background:radial-gradient(circle, #ffe7a88c, transparent 64%), var(--bg);cursor:pointer;border-radius:8px;padding:4px}.preview-grid svg,.favorites svg{width:100%;display:block}.favorites{padding:6px 2px}.favorites h2{color:var(--text-h);margin:0 0 8px;font-size:.9rem}.favorites>div{gap:8px;display:grid}.favorite-card{border:1px solid var(--border);background:#fff3;border-radius:8px;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:7px;padding:7px;display:grid}.favorite-preview{border:1px solid var(--border);background:radial-gradient(circle, #ffe7a88c, transparent 64%), var(--bg);cursor:pointer;border-radius:6px;grid-row:span 2;padding:3px}.favorite-card svg{width:100%;display:block}.favorite-card code{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;overflow:hidden}.copy-favorite-seed{border:1px solid var(--border);min-height:27px;color:var(--text-h);background:var(--bg);cursor:pointer;font:700 .7rem/1 var(--sans);border-radius:5px;justify-self:start;padding:0 7px}.character-lab-actions{gap:10px;padding-top:4px;display:flex}.character-lab-actions button{border:1px solid var(--accent);min-height:44px;color:var(--text-h);cursor:pointer;font:700 .92rem/1 var(--sans);background:0 0;border-radius:8px;flex:1}.reset-species-rules,.reset-player-save{color:#7d2828;cursor:pointer;min-height:38px;font:700 .8rem/1 var(--sans);background:0 0;border:1px solid #c77373;border-radius:8px}.character-controls button:hover{transform:translateY(-1px)}.character-controls :is(input,select,button,summary):focus-visible,.character-preview button:focus-visible{outline-offset:3px;outline:3px solid #1b6f3559}@media (width>=760px){.character-lab{padding:40px 28px 56px}.character-lab-workspace{grid-template-columns:minmax(400px,1.1fr) minmax(370px,.9fr)}.character-preview{min-height:520px}.character-controls{max-height:calc(100svh - 64px);overflow:auto}}.menu-dialog{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:min(720px,100% - 20px);max-height:calc(100dvh - 20px);color:var(--text);box-shadow:var(--shadow);font:.9rem/1.3 var(--sans);border-radius:20px;padding:14px;overflow:hidden}.menu-dialog::backdrop{background:#0c18118c}body:has(.menu-dialog[open]){overflow:hidden}.menu-dialog *,.collection *{box-sizing:border-box}.menu-dialog-heading,.collection-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.menu-dialog-heading h2,.collection-heading h1{margin:0;font-size:1.25rem}.menu-dialog button,.collection button,.collection select{border:1px solid var(--border);min-height:44px;font:inherit;color:var(--text-h);background:var(--bg);cursor:pointer;border-radius:10px;padding:6px 10px;line-height:1.2}.menu-dialog button:disabled,.collection button:disabled{opacity:.45;cursor:default}.menu-dialog button:focus-visible,.collection button:focus-visible,.collection select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.collection{width:100%;min-width:0;font-size:.85rem;position:relative}.collection-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:8px 0;padding:0;list-style:none;display:grid}.collection-grid li{min-width:0}.collection .collection-tile{background:var(--card-bg);flex-direction:column;justify-content:center;align-items:center;gap:2px;width:100%;height:88px;padding:4px;display:flex;position:relative}.collection-tile>svg,.collection-tile .item-icon{width:100%;height:58px;min-height:0}.collection-tile .item-rarity{padding:1px 4px;font-size:.6rem;line-height:1.2}.collection-tile strong{font-size:.7rem}.collection-quantity,.collection-equipped{background:var(--bg);border-radius:4px;padding:1px 3px;font-size:.65rem;position:absolute;top:3px;right:3px}.collection-equipped{left:3px;right:auto}.collection-pagination{justify-content:space-between;align-items:center;gap:8px;margin-top:8px;display:flex}.collection-pagination span{white-space:nowrap;font-size:.75rem}.collection-hint{margin:4px 0;font-size:.72rem}.collection-tooltip{z-index:3;border:1px solid var(--accent);background:var(--bg);width:90%;box-shadow:var(--shadow);pointer-events:none;border-radius:12px;padding:10px;font-size:.75rem;position:absolute;bottom:52px;left:5%}.collection-tooltip p{margin:4px 0}.item-icon{place-items:center;font-size:2rem;display:inline-grid}.item-icon svg{width:100%;height:100%;display:block}@media (width<=540px),(height<=560px){.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.collection .collection-tile{height:76px}.collection-tile>svg,.collection-tile .item-icon{height:48px}}@media (height<=420px) and (width>=541px){.menu-dialog{padding:8px 12px}.collection-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.collection .collection-tile{height:72px}}.focus-timer{border:1px solid var(--border);background:var(--card-bg);box-shadow:var(--shadow);border-radius:16px;gap:28px;margin:10px 0 48px;padding:28px;display:grid}.timer-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.timer-kicker,.timer-status{margin:0}.timer-kicker{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:700}.timer-heading h2{margin:4px 0 0;font-size:clamp(1.35rem,3vw,2rem)}.debug-toggle{border:1px dashed var(--accent);color:var(--text);cursor:pointer;letter-spacing:.03em;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:5px 7px;font-size:.7rem;font-weight:700;display:flex}.debug-toggle input{width:14px;height:14px;accent-color:var(--accent);margin:0}.timer-content{justify-items:center;gap:26px;display:grid}.timer-progress{aspect-ratio:1;background:conic-gradient(var(--accent) var(--progress), #62d66f26 0);text-align:center;border-radius:50%;place-content:center;width:min(68vw,250px);display:grid;position:relative;box-shadow:0 12px 28px #275c371f}.timer-progress:before{content:"";aspect-ratio:1;background:var(--card-bg);border-radius:50%;width:min(58vw,214px);position:absolute}.timer-display,.timer-status{position:relative}.timer-display{color:var(--text-h);font-family:var(--heading);font-variant-numeric:tabular-nums;letter-spacing:.04em;margin:0;font-size:clamp(2.7rem,11vw,4.25rem);font-weight:600;line-height:1}.timer-status{margin-top:8px;font-size:.9rem}.timer-controls{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.timer-button{border:1px solid var(--border);min-width:116px;min-height:48px;color:var(--text-h);background:var(--card-bg);cursor:pointer;font:700 .95rem/1 var(--sans);border-radius:8px;padding:0 20px}.timer-button-primary{color:#063319;background:#62d66f;border-color:#0000}.timer-button-secondary{border-color:var(--accent);color:var(--text-h);background:var(--bg)}.timer-button:hover{filter:brightness(.97);transform:translateY(-1px)}.timer-button:focus-visible{outline-offset:3px;outline:3px solid #1b6f3559}.debug-toggle:has(input:focus-visible){outline-offset:3px;outline:3px solid #1b6f3559}@media (width>=720px){.focus-timer{padding:36px}.timer-content{grid-template-columns:1fr auto;align-items:center}.timer-controls{display:grid}}.profile-navigation{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:1064px;margin:auto;padding:12px 18px 0;display:flex}.profile-button{border:1px solid var(--border);background:var(--bg);min-height:44px;color:var(--text-h);font:600 .95rem/1.4 var(--sans);cursor:pointer;border-radius:24px;padding:10px 18px}.profile-button:hover{background:var(--border)}.profile-button:focus-visible,.pokodoro-profile summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.profile-dialog{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:min(600px,100% - 20px);max-height:calc(100dvh - 24px);color:var(--text);box-shadow:var(--shadow);overscroll-behavior:contain;border-radius:24px;padding:0 20px 24px}.profile-dialog::backdrop{background:#1123187a}body:has(.profile-dialog[open]){overflow:hidden}.profile-back{z-index:1;background:var(--bg);padding:12px 0;position:sticky;top:0}.pokodoro-profile{text-align:left;overflow-wrap:anywhere;width:100%;max-width:540px;margin:auto}.profile-header{text-align:center;padding-bottom:8px}.profile-companion{width:min(220px,100%);margin:auto}.profile-companion svg{width:100%;height:auto;display:block}.pokodoro-profile .profile-header h1{font-size:clamp(1.5rem,6vw,2rem);line-height:1.2}.profile-header p{margin:10px 0}.profile-kicker{color:var(--accent);font-size:.8rem;font-weight:600}.profile-section{border-top:1px solid var(--border);padding:22px 0}.profile-section h2{margin:0 0 8px;font-size:1.15rem;font-weight:650}.profile-note{margin:0 0 12px;font-size:.9rem}.profile-stat{margin-top:10px}.pokodoro-profile summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:44px;list-style:none;display:flex}.pokodoro-profile summary::-webkit-details-marker{display:none}.pokodoro-profile summary strong{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--text-h)}.profile-info{color:var(--accent);font-size:.8rem}.pokodoro-profile details p{margin:0 0 12px;font-size:.9rem}.profile-stat meter{background:var(--border);border:0;border-radius:8px;width:100%;height:12px;display:block}.profile-stat meter::-webkit-meter-bar{background:var(--border);border:0;border-radius:8px}.profile-stat meter::-webkit-meter-optimum-value{background:var(--accent);border-radius:8px}.profile-stat meter::-moz-meter-bar{background:var(--accent);border-radius:8px}.profile-behavior{padding:3px 0}.profile-work{margin:0}.profile-work div{justify-content:space-between;gap:16px;padding:10px 0;display:flex}.profile-work dd{margin:0;font-weight:600}.profile-effects{margin:0;padding:0;list-style:none}.profile-effects li+li{margin-top:16px}.profile-effects p{margin:4px 0 0}.collection-dialog{width:min(740px,100% - 20px);padding:0 14px 14px;overflow:hidden}.collection-dialog .profile-back{padding:8px 0}.profile-compact{max-width:none;font-size:.8rem;position:relative}.profile-compact .profile-header{text-align:left;align-items:center;gap:10px;padding:0;display:flex}.profile-compact .profile-companion{flex-shrink:0;width:48px;height:48px;margin:0}.profile-compact .profile-companion svg{height:100%}.profile-compact .profile-header h1{font-size:1rem}.profile-view-selector{align-items:center;gap:10px;margin:6px 0;display:flex}.profile-view-selector select{border:1px solid var(--border);background:var(--bg);max-width:100%;min-height:44px;color:var(--text-h);font:inherit;border-radius:10px;flex:1;padding:4px}.profile-compact .profile-section{padding:6px 0}.profile-compact .profile-section h2{margin:0 0 4px;font-size:.95rem}.profile-compact .profile-note{margin-bottom:4px;font-size:.7rem}.profile-compact .profile-stat{margin-top:3px}.profile-compact summary{gap:6px;min-height:36px}.profile-compact .profile-stat meter{height:5px}.profile-compact details p{z-index:2;border:1px solid var(--accent);background:var(--bg);border-radius:8px;margin:0;padding:8px;font-size:.7rem;position:absolute;bottom:0;left:0;right:0}.profile-compact .profile-core-stats{grid-template-columns:1fr 1fr;align-content:start;gap:0 10px;display:grid}.profile-compact .profile-core-stats>h2,.profile-compact .profile-core-stats>p{grid-column:1/-1}.profile-compact .profile-stat summary{flex-wrap:wrap;gap:2px 6px}.profile-compact .equipment-slot{grid-template-columns:1fr auto;gap:4px;padding:6px 0}.profile-compact .equipment-slot>small,.profile-compact .equipment-controls,.profile-compact .equipment-slot>.item-rarity{grid-column:1/-1}.profile-compact .equipment-slot small{font-size:.7rem}.equipment-slot-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;display:grid}.equipment-slot-tabs button{padding:3px;font-size:.7rem}.equipment-slot-tabs button[aria-pressed=true]{border-color:var(--accent)}.profile-compact .equipment-controls select{flex-basis:130px;font-size:.75rem}.profile-compact .equipment-controls button{padding:4px 8px;font-size:.75rem}.profile-compact .equipment-panel>p[role=status]{margin:4px 0 0;font-size:.7rem}.profile-compact .profile-effects p{font-size:.75rem}@media (height<=560px) and (width>=541px){.profile-compact{grid-template-columns:130px minmax(0,1fr);column-gap:12px;display:grid}.profile-compact .profile-header{text-align:center;flex-direction:column;grid-column:1;gap:0}.profile-view-selector{flex-direction:column;grid-column:1;align-items:stretch;gap:2px}.profile-compact>.profile-section{border:0;grid-area:1/2/3;padding:0}.profile-compact .profile-core-stats{grid-template-columns:1fr 1fr;align-content:start;gap:0 10px;display:grid}.profile-compact .profile-core-stats>h2,.profile-compact .profile-core-stats>p{grid-column:1/-1}.profile-compact .profile-work div{padding:4px 0}.collection-dialog .profile-back,.collection-heading{margin:0;padding:4px 0}.collection-dialog .profile-back button,.collection-heading button{min-height:36px}}.equipment-slot{border-bottom:1px solid var(--border);gap:6px;min-width:0;padding:14px 0;display:grid}.equipment-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.equipment-controls select,.equipment-controls button,.inventory-equip{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);max-width:100%;min-height:44px;color:var(--text-h);font:inherit;border-radius:12px;padding:8px 12px}.equipment-controls select{flex:180px;min-width:0}.equipment-controls button,.inventory-equip{cursor:pointer}.equipment-controls :focus-visible,.inventory-equip:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.item-rarity{background:var(--bg);border:1px solid;border-radius:20px;width:fit-content;padding:2px 8px;font-size:.75rem;font-weight:700;line-height:1.5;display:inline-block}:root{--rarity-common:#536153;--rarity-rare:#205ea8;--rarity-legendary:#806000;--rarity-unique:#7337a8}@media (prefers-color-scheme:dark){:root{--rarity-common:#c1cbbb;--rarity-rare:#92c5ff;--rarity-legendary:#f2ce6b;--rarity-unique:#d0a3ff}}.item-rarity-common{color:var(--rarity-common)}.item-rarity-rare{color:var(--rarity-rare)}.item-rarity-legendary{color:var(--rarity-legendary)}.item-rarity-unique{color:var(--rarity-unique)}.inventory-dialog{width:min(740px,100% - 20px);padding:0 14px 14px;overflow:hidden}.inventory-dialog .profile-back{justify-content:space-between;gap:6px;padding:8px 0;display:flex}.inventory-dialog .profile-back button{padding:6px 10px;font-size:.75rem}.inventory-content{overflow-wrap:anywhere;text-align:left}.inventory-content select{max-width:55%}.inventory-empty{text-align:center;padding:24px 0}.inventory-item-detail{grid-template-columns:90px minmax(0,1fr);gap:12px;font-size:.85rem;display:grid}.inventory-detail-art{flex-direction:column;align-items:center;gap:8px;display:flex}.inventory-detail-art .item-icon{width:80px;height:80px;font-size:3rem}.inventory-item-detail p{margin:0 0 10px}.inventory-equip{margin:3px}.inventory-dev h2{display:none}.inventory-dev>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.inventory-dev p{margin:6px 0;font-size:.75rem}.invitation-map{overflow-wrap:anywhere}.invitation-map h2{margin:4px 0;font-size:1.2rem}.invitation-map p{margin:8px 0;font-size:.85rem}.invitation-map ol{flex-wrap:wrap;gap:8px 22px;padding-left:24px;display:flex}.invitation-map li{padding:4px;font-size:.75rem;font-weight:700}@media (height<=420px) and (width>=541px){.inventory-dev>div{grid-template-columns:repeat(3,minmax(0,1fr))}.inventory-item-detail{grid-template-columns:80px minmax(0,1fr);font-size:.75rem}.inventory-item-detail p{margin-bottom:5px}.invitation-map ol{flex-wrap:nowrap;gap:8px 20px}.invitation-map li{padding:0;font-size:.65rem}}.game-header{text-align:left;flex-wrap:nowrap;align-items:center;gap:8px;width:100%;min-width:0;min-height:44px;display:flex}.game-header-title{overflow-wrap:anywhere;min-width:0;font-size:clamp(.75rem,1.6vw,1rem);line-height:1.1}.game-header-cycle{white-space:nowrap;flex-shrink:0;font-size:.7rem}.game-header nav{flex-shrink:0;gap:6px;margin-left:auto;display:flex}.game-header .profile-button{border-radius:12px;min-height:44px;padding:5px 10px;font-size:.8rem}.game-header .sound-toggle{min-width:44px;padding:4px;font-size:1rem}.game-header .keyboard-help{min-width:30px}.keyboard-help-content{font-size:.85rem;line-height:1.35}.keyboard-help-content p{margin:8px 0}@media (width<=400px){.game-header-title{display:none}.game-header nav{gap:2px}}.game-header .exploration-timer{letter-spacing:0;flex-shrink:0;padding:5px 8px}.game-header .exploration-timer>span{display:none}@media (width<=540px){.game-header{gap:4px}.game-header-title{font-size:.7rem}.game-header-cycle{font-size:.6rem}.game-header nav{gap:3px}.game-header .profile-button{padding:4px;font-size:.68rem}.game-header .exploration-timer{padding:4px}.game-header .exploration-timer time{font-size:.8rem}}.onboarding-shell:has(.long-break-session){height:100dvh;min-height:0;padding:8px}.long-break-session{grid-template-rows:44px minmax(0,1fr) auto;gap:8px;width:min(100%,940px);height:100%;min-height:0;display:grid}.long-break-hub{border:1px solid var(--border);background:var(--card-bg);border-radius:20px;grid-template-rows:auto minmax(0,1fr);gap:10px;min-height:0;padding:12px;display:grid}.long-break-hub h1{margin:0;font-size:clamp(1rem,3vw,1.5rem)}.long-break-destinations{grid-template-rows:repeat(3,minmax(44px,1fr));grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-height:0;display:grid}.long-break-destinations button{border:1px solid var(--border);background:var(--card-bg);min-width:0;min-height:44px;color:var(--text-h);cursor:pointer;border-radius:14px;place-content:center;gap:4px;padding:6px;display:grid;position:relative}.long-break-destinations button[data-selected=true],.long-break-destinations button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:color-mix(in srgb, var(--accent) 14%, var(--card-bg))}.long-break-destinations small{color:var(--text);position:absolute;top:5px;left:7px}.long-break-destinations span{color:var(--accent);font-size:clamp(1rem,4vh,2rem)}.long-break-destinations strong{font-size:clamp(.75rem,2vw,1rem)}.long-break-placeholder{text-align:center;padding:16px}.long-break-expired{justify-content:space-between;align-items:center;gap:8px;font-size:.85rem;display:flex}.long-break-expired .onboarding-button{min-height:44px;padding:6px 14px}@media (height<=430px){.long-break-hub{gap:4px;padding:6px}.long-break-destinations{gap:4px}.long-break-destinations button{align-items:center;display:flex}.long-break-destinations span{font-size:1rem}.long-break-destinations small{position:static}}body:has(.battle-session){overflow:hidden}.onboarding-shell:has(.battle-session){height:100dvh;min-height:0;padding:max(4px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom));animation:none;position:fixed;inset:0}.exploration-session:has(.battle-session){grid-template-rows:minmax(0,1fr);gap:0;width:min(100%,960px);height:100%;min-height:0}:is(.exploration-session:has(.battle-session)>.exploration-autonomy,.exploration-session:has(.battle-session)>.event-debug-info){display:none}.battle-session{box-sizing:border-box;border:1px solid var(--border);background:var(--card-bg);text-align:center;border-radius:20px;grid-template-rows:auto minmax(0,1fr) auto auto;gap:8px;width:100%;height:100%;min-height:0;max-height:100dvh;padding:clamp(8px,1.5vw,18px);font-size:.9rem;line-height:1.3;display:grid}.battle-session *,.battle-overlay *{box-sizing:border-box}.battle-session button,.battle-overlay button{border:1px solid var(--border);min-width:44px;min-height:44px;font:inherit;background:var(--bg);color:var(--text-h);cursor:pointer;touch-action:manipulation;border-radius:12px;padding:6px 10px;line-height:1.2}.battle-session button:hover,.battle-overlay button:hover{border-color:var(--accent)}.battle-session button:disabled,.battle-overlay button:disabled{opacity:.45;cursor:default}.battle-session button:focus-visible,.battle-overlay button:focus-visible,.battle-input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.battle-session button.battle-primary,.battle-overlay button.battle-primary{border:2px solid var(--accent);font-weight:700}.battle-arena{grid-template-columns:1fr 1fr;gap:12px;min-height:0;padding-top:48px;display:grid;position:relative}.battle-fighter{--crest-color:#7fbe87;grid-template-rows:minmax(0,1fr) auto 10px auto auto;justify-items:center;gap:3px;min-width:0;min-height:0;display:grid}.battle-fighter[data-crest=flame]{--crest-color:#eb8059}.battle-fighter[data-crest=waterdrop]{--crest-color:#65b8eb}.battle-fighter[data-crest=horn]{--crest-color:#d6b877}.battle-fighter[data-crest=tornado]{--crest-color:#a4a7d7}.battle-portrait{place-items:center;width:100%;height:100%;min-height:0;padding-top:30px;display:grid;position:relative}.battle-creature{transform-origin:50%;border-radius:50%;width:100%;max-width:320px;height:100%;max-height:320px}.battle-creature svg{width:100%;height:100%;display:block}.battle-fighter progress{width:100%;max-width:240px;height:10px;accent-color:var(--accent)}.battle-fighter>span{font-variant-numeric:tabular-nums;font-size:.75rem}.battle-fighter-name{font-size:.85rem}.battle-statuses{flex-wrap:wrap;justify-content:center;gap:3px;display:flex}.battle-status{border:1px solid var(--border);color:var(--text-h);background:var(--bg);border-radius:6px;padding:2px 4px;font-size:.65rem}.battle-feedback{overflow-wrap:anywhere;align-content:center;min-height:44px;font-size:.85rem;font-weight:600;display:grid}.battle-feedback small{color:var(--accent);font-size:.7rem;display:block}.battle-controls{min-width:0}.battle-controls p{margin:4px 0 8px}.battle-actions{grid-template-rows:repeat(3,44px);grid-template-columns:minmax(0,1fr) minmax(72px,.8fr) minmax(0,1fr);gap:4px;width:min(100%,400px);margin:auto;display:grid}.battle-actions .action-up{grid-area:1/2}.battle-actions .action-left{grid-area:2/1}.battle-actions .action-right{grid-area:2/3}.battle-actions .action-down{grid-area:3/2}.battle-actions button{justify-content:center;align-items:center;gap:4px;padding:3px;font-size:.75rem;display:flex}.battle-actions button span{font-size:1rem}.battle-actions button[data-selected=true],.battle-flee-choices button[aria-pressed=true]{border:2px solid var(--accent);background:var(--border);box-shadow:0 0 0 1px var(--accent)}.battle-flee-confirmation{text-align:center}.battle-flee-choices{grid-template-columns:1fr 1fr;gap:12px;margin:12px 0;display:grid}.battle-flee-confirmation small{font-size:.7rem}.battle-input{gap:6px;display:grid}.battle-sequence{overflow-wrap:anywhere;min-height:24px;margin:0;font-size:1rem;display:block}.battle-hint{margin:0;font-size:.75rem}.battle-input p{margin:0}.battle-pad button{padding:2px;font-size:1.5rem}.battle-result{border:1px solid var(--border);background:var(--bg);border-radius:14px;padding:6px}.battle-result h2{margin:0}.battle-result p{font-size:.8rem}.battle-ability-callout,.battle-hit-callout,.battle-turn-total{z-index:1;pointer-events:none;background:var(--bg);border:1px solid var(--crest-color);color:var(--text-h);box-shadow:var(--shadow);border-radius:12px;padding:7px 9px;font-size:.75rem;position:absolute}.battle-ability-callout{text-align:left;max-width:100%;animation:battle-callout var(--battle-info-duration,1.7s) both;top:0;left:-4px;transform:translateY(-40%)}.battle-fighter:last-child .battle-ability-callout{text-align:right;left:auto;right:-4px}.battle-ability-callout strong,.battle-ability-callout span{display:block}.battle-hit-callout{animation:battle-hit-label var(--battle-hit-duration,.4s) both;font-weight:800;bottom:0}.battle-turn-total{font-weight:600;bottom:10%}.battle-turn-total strong{font-size:1.5rem;display:block}.battle-up{animation:battle-flash var(--battle-motion-duration,.18s) ease-out}.battle-left{animation:battle-left var(--battle-motion-duration,.18s) ease-out}.battle-right{animation:battle-right var(--battle-motion-duration,.18s) ease-out}.battle-down{animation:battle-down var(--battle-motion-duration,.18s) ease-out}.battle-receive{animation:battle-hit var(--battle-motion-duration,.18s) ease-out}.battle-ability{animation:battle-special var(--battle-ability-duration,.75s) ease-out}.battle-ability-appendage{animation-name:battle-sweep}.battle-ability-mobility{animation-name:battle-step}.battle-ability-body{animation-name:battle-center}@keyframes battle-flash{45%{box-shadow:0 0 18px 5px var(--crest-color);transform:scale(1.03)}}@keyframes battle-left{45%{transform:translate(-7px)rotate(-4deg)}}@keyframes battle-right{45%{transform:translate(7px)rotate(4deg)}}@keyframes battle-down{45%{transform:translateY(6px)scaleY(.96)}}@keyframes battle-hit{45%{opacity:.6}}@keyframes battle-special{35%{box-shadow:0 0 25px 6px var(--crest-color);transform:scale(1.06)}}@keyframes battle-sweep{30%{box-shadow:0 0 22px var(--crest-color);transform:rotate(-6deg)}65%{transform:rotate(6deg)}}@keyframes battle-step{25%{transform:translateY(-7px)}50%{box-shadow:0 10px 20px var(--crest-color);transform:translateY(4px)}}@keyframes battle-center{40%{box-shadow:inset 0 0 30px var(--crest-color);transform:scale(1.05)}}@keyframes battle-callout{0%{opacity:0}8%,90%{opacity:1}to{opacity:0}}@keyframes battle-hit-label{0%{opacity:0;transform:translateY(4px)}20%,85%{opacity:1;transform:translateY(0)}to{opacity:0}}.battle-overlay{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:min(560px,100% - 20px);max-height:calc(100dvh - 20px);color:var(--text);box-shadow:var(--shadow);font:.85rem/1.3 var(--sans);border-radius:20px;padding:14px;overflow:hidden}.battle-overlay::backdrop{background:#0c18118c}.battle-overlay header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.battle-overlay h2,.battle-reference h3{margin:0}.battle-items{gap:8px;display:grid}.battle-item-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.battle-overlay .battle-item-tile{background:var(--card-bg);min-width:0;height:68px;padding:4px;position:relative}.battle-item-tile[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:1px}.battle-item-tile[data-unusable=true] .battle-item-icon{opacity:.5}.battle-item-icon{width:100%;height:100%;display:block}.battle-item-quantity{background:var(--bg);border-radius:4px;padding:1px 3px;font-size:.7rem;font-weight:700;position:absolute;bottom:2px;right:3px}.battle-item-unavailable{font-weight:900;position:absolute;top:2px;right:4px}.battle-item-info{border:1px solid var(--border);border-radius:10px;min-height:106px;padding:8px;font-size:.75rem}.battle-item-info p{margin:5px 0}.battle-item-info small{font-weight:600;display:block}.battle-panel-footer{justify-content:space-between;align-items:center;gap:6px;display:flex}.battle-panel-footer>span{white-space:nowrap;font-size:.7rem}.battle-panel-footer .battle-primary{flex:1}.battle-reference article{overflow-wrap:anywhere;min-height:150px;padding:8px 0}.battle-reference pre{white-space:pre-wrap;font:.7rem/1.25 monospace}.battle-reference+button{margin-top:8px}@media (width<=540px){.battle-session{gap:5px;padding:8px}.battle-arena{gap:6px}.battle-item-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.battle-overlay .battle-item-tile{height:56px}.battle-item-info{min-height:130px}}@media (height<=500px) and (width>=541px){.exploration-session:has(.battle-session){grid-template-rows:minmax(0,1fr)}.battle-session{grid-template-rows:44px minmax(0,1fr) auto;grid-template-columns:1fr 1fr;gap:4px 12px;padding:6px 10px}.battle-arena{grid-area:2/1/4}.battle-feedback{grid-area:2/2;font-size:.75rem}.battle-controls{grid-area:3/2}.battle-input{gap:3px}.battle-overlay{width:min(720px,100% - 20px);padding:8px 12px}.battle-items{grid-template-columns:1fr 1fr;gap:5px 12px}.battle-items>.battle-hint,.battle-items>footer{grid-column:1/-1}.battle-item-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.battle-overlay .battle-item-tile{height:44px}.battle-item-info{min-height:0;padding:5px;font-size:.7rem}.battle-reference article{min-height:80px;padding:0}.battle-reference pre{columns:2}}@media (prefers-reduced-motion:reduce){.battle-creature,.battle-ability-callout,.battle-hit-callout{animation:none}}.battle-input{grid-template-columns:minmax(0,1fr);align-items:center;gap:4px}.battle-pad{grid-template-rows:repeat(3,44px);grid-template-columns:minmax(80px,1fr) 44px minmax(80px,1fr);justify-self:center;gap:4px;width:min(100%,360px);display:grid}.battle-pad .pad-up{grid-area:1/2}.battle-pad .pad-left{grid-area:2/1;justify-self:end;width:44px}.battle-pad .pad-right{grid-area:2/3;justify-self:start;width:44px}.battle-pad .pad-down{grid-area:3/2}.battle-pad .pad-abilities{grid-area:1/1}.battle-pad .pad-clear{grid-area:1/3}.battle-pad .pad-back{grid-area:3/1}.battle-pad .pad-submit{grid-area:3/3}.battle-pad .pad-abilities,.battle-pad .pad-clear,.battle-pad .pad-back,.battle-pad .pad-submit{padding:4px;font-size:.78rem}.battle-arena-tools{justify-content:flex-end;align-items:center;gap:5px;font-size:.7rem;display:flex;position:absolute;inset:0 0 auto}.battle-arena-tools>span{text-align:left;margin-right:auto}.battle-arena-tools button{padding:4px 6px;font-size:.7rem}.battle-arena-tools button[aria-pressed=true]{border-color:var(--accent);background:var(--border)}.battle-creature-stage{width:100%;max-width:320px;height:100%;min-height:0;max-height:320px;position:relative}.battle-session>.game-header{grid-column:1/-1}.battle-items .battle-panel-footer{flex-wrap:wrap}.battle-items .battle-panel-footer .battle-primary{min-width:120px}.battle-abilities-overlay{width:min(720px,100% - 20px)}.known-abilities ul{margin:8px 0;padding:0;list-style:none}.known-ability-choice,.known-ability-details{border-bottom:1px solid var(--border);grid-template-columns:1fr auto;gap:3px 8px;padding:8px 0;font-size:.85rem;display:grid}.known-ability-choice p,.known-ability-details p{grid-column:1/-1;margin:0;font-size:.75rem}.known-ability-sequence{white-space:nowrap;font-weight:700}@media (width<=540px){.battle-input{gap:4px}.battle-overlay{padding:10px}.battle-overlay .battle-item-tile{height:52px}.battle-item-info{min-height:110px}.known-ability-choice,.known-ability-details{padding:5px 0;font-size:.78rem}.known-ability-choice p,.known-ability-details p{font-size:.7rem}.known-ability-sequence{font-size:.8rem}.battle-items .battle-primary{flex-basis:100%}}@media (height<=560px) and (width>=541px){.battle-abilities-overlay{width:min(980px,100% - 16px);padding:6px 10px}.known-ability-choice,.known-ability-details{grid-template-columns:minmax(120px,1fr) 90px minmax(200px,3fr);align-items:center;padding:4px 0;font-size:.7rem}.known-ability-choice p,.known-ability-details p{grid-column:auto;font-size:.65rem}.known-abilities ul{margin:3px 0}.battle-input{gap:2px}.battle-input>.battle-sequence{min-height:18px;font-size:.85rem}.battle-input>.battle-hint{font-size:.65rem}.battle-feedback{min-height:28px;font-size:.7rem}}.known-abilities li{margin:0;padding:0}.battle-overlay .known-ability-choice{text-align:left;background:var(--card-bg);border-radius:8px;width:100%;margin-bottom:3px;padding:6px}.known-ability-choice small{font-weight:600;display:block}@media (height<=560px) and (width>=541px){.battle-overlay .known-ability-choice{min-height:44px;padding:3px 6px}.battle-arena{padding-top:46px}.battle-ability-callout{padding:4px;font-size:.65rem}}@media (height<=420px) and (width>=541px){.battle-abilities-overlay .menu-dialog-heading{margin-bottom:2px}.battle-abilities-overlay .menu-dialog-heading h2{max-width:calc(100% - 310px);font-size:.85rem}.battle-abilities-overlay .collection-pagination{width:244px;margin:0;position:absolute;top:6px;right:64px}.battle-abilities-overlay .known-abilities>.battle-hint{margin:0;font-size:.65rem}.battle-abilities-overlay .known-abilities ul{margin:1px 0 0}.battle-overlay .known-ability-choice{margin:0;padding:2px 6px}}.onboarding-shell{box-sizing:border-box;place-items:center;min-height:100svh;padding:28px 18px;animation:.2s ease-out onboarding-enter;display:grid}.onboarding-shell-exit{animation:.18s ease-in forwards onboarding-exit}.egg-selection,.confirmation-dialog,.egg-hatching{border:1px solid var(--border);background:var(--card-bg);width:min(100%,920px);box-shadow:var(--shadow);text-align:center;border-radius:18px;padding:clamp(28px,6vw,60px);position:relative}.companion-reveal{border:1px solid var(--border);background:var(--card-bg);width:min(100%,620px);min-height:440px;box-shadow:var(--shadow);border-radius:18px;place-items:center;gap:24px;padding:clamp(28px,6vw,60px);display:grid}.door-choice{border:1px solid var(--border);background:var(--card-bg);width:min(100%,780px);box-shadow:var(--shadow);text-align:center;border-radius:18px;gap:clamp(24px,5vw,42px);padding:clamp(28px,6vw,56px);animation:.45s ease-out door-choice-enter;display:grid}.door-choice h1{color:var(--text-h);margin:0;font-size:clamp(2rem,6vw,3.25rem)}.door-choice-scene{grid-template-columns:minmax(150px,.7fr) minmax(0,1.3fr);align-items:center;gap:clamp(20px,5vw,54px);display:grid}.door-choice-companion{filter:drop-shadow(0 16px 22px #0a2b1733);justify-self:center;width:min(100%,230px);animation:3.4s ease-in-out infinite door-companion-bob}.door-choice-companion svg{width:100%;height:auto;display:block}.door-choice-options{grid-template-columns:repeat(2,minmax(118px,1fr));gap:clamp(14px,3vw,28px);display:grid}.exploration-door{min-height:clamp(190px,29vw,250px);color:var(--text-h);cursor:pointer;font:700 .8rem/1 var(--sans);isolation:isolate;background:#0a2f1b5c;border:0;border-radius:13px;padding:16px 10px 12px;transition:transform .2s,box-shadow .2s,opacity .2s;display:grid;position:relative}.exploration-door:before{z-index:-2;content:"";transform-origin:0;background:linear-gradient(145deg,#3b7e54,#183c29 72%);border-radius:10px;transition:transform .55s,filter .2s;position:absolute;inset:8px;box-shadow:inset 2px 2px #ffffff2e,inset -4px -5px #05190d59}.exploration-door-gift:before{background:linear-gradient(145deg,#966348,#4f2f30 72%)}.exploration-door-symbol{color:#fff7d0;background:#082615b3;border:1px solid #ffffff6b;border-radius:50%;place-self:start center;min-width:42px;padding:5px 8px;font-size:1.55rem;line-height:1;box-shadow:0 5px 10px #04170c47}.exploration-door-gift .exploration-door-symbol{color:#fff0b4;background:#4d261fb8}.exploration-door-panel{z-index:-1;border:1px solid #ffffff2e;border-radius:4px;position:absolute;inset:19% 20% 22%;box-shadow:inset 0 0 0 4px #113e222b}.exploration-door-gift .exploration-door-panel{box-shadow:inset 0 0 0 4px #5d2e2633}.exploration-door-knob{aspect-ratio:1;background:#ffe5a5;border-radius:50%;width:8px;position:absolute;top:53%;right:12%;box-shadow:0 1px #ffffff8c}.exploration-door-label{color:#ffffffdb;text-shadow:0 2px 4px #04180c99;place-self:end center}.exploration-door:hover:not(:disabled),.exploration-door:focus-visible:not(:disabled){transform:translateY(-4px);box-shadow:0 0 0 1px #89ef8f73,0 10px 22px #116a303d}.exploration-door:hover:not(:disabled):before,.exploration-door:focus-visible:not(:disabled):before{filter:brightness(1.12)}.exploration-door:active:not(:disabled){transform:translateY(1px)scale(.98)}.exploration-door:focus-visible{outline-offset:4px;outline:3px solid #89ef8fa6}.exploration-door:disabled{cursor:default}.exploration-door:disabled:not(.is-selected){opacity:.45}.exploration-door.is-selected{box-shadow:0 0 0 2px #ffefa1cc,0 12px 28px #3287474d}.exploration-door.is-selected:before{filter:brightness(1.13);transform:perspective(280px)rotateY(-25deg)scaleX(.86)}.door-choice-placeholder{color:var(--text-h);margin:0;font-weight:700;animation:.3s ease-out door-placeholder-enter}.exploration-session{gap:12px;width:min(100%,780px);display:grid}.pokodoro-cycle-progress{color:var(--text);font:700 .76rem/1 var(--sans);letter-spacing:.06em;text-align:center;text-transform:uppercase;margin:0}.exploration-session-header{justify-content:flex-end;align-items:center;gap:10px;min-height:34px;display:flex}.exploration-timer{border:1px solid var(--border);color:var(--text);font:700 .72rem/1 var(--sans);letter-spacing:.05em;text-transform:uppercase;background:#0c341e6b;border-radius:999px;align-items:baseline;gap:7px;padding:7px 11px;display:inline-flex}.exploration-timer time{color:var(--text-h);letter-spacing:0;font-size:.95rem}.exploration-timer.is-complete{animation:2.6s ease-in-out infinite exploration-time-complete}.exploration-debug-toggle{min-height:34px;color:var(--text);cursor:pointer;font:700 .72rem/1 var(--sans);background:#0c341e47;border:1px dashed #ffffff6b;border-radius:999px;padding:0 10px}.exploration-debug-toggle[aria-pressed=true]{color:#173e24;background:#b5eaa5;border-style:solid}.exploration-panel{border:1px solid var(--border);background:var(--card-bg);width:min(100%,780px);min-height:360px;box-shadow:var(--shadow);text-align:center;border-radius:18px;align-content:center;place-items:center;gap:22px;padding:clamp(28px,6vw,56px);animation:.35s ease-out door-choice-enter;display:grid}.exploration-event-companion,.exploration-complete-companion{width:min(40vw,180px);animation:3.4s ease-in-out infinite door-companion-bob}.exploration-event-companion svg,.exploration-complete-companion svg{width:100%;height:auto;display:block}.exploration-event-symbol{aspect-ratio:1;color:#fff7d0;background:#114928b3;border-radius:50%;place-items:center;width:54px;font-size:1.8rem;display:grid;box-shadow:0 8px 18px #092a1833}.exploration-event p,.exploration-focus-placeholder{color:var(--text-h);margin:0;font-size:clamp(1.2rem,3vw,1.55rem);font-weight:700}.event-engine{gap:18px;padding-block:clamp(24px,5vw,42px)}.event-engine .exploration-event-companion{width:min(30vw,140px)}.event-scenario-copy{gap:8px;max-width:600px;display:grid}.event-scenario-copy h1{color:var(--text-h);margin:0;font-size:clamp(1.45rem,4vw,2.15rem)}.event-scenario-copy p{color:var(--text);font-size:clamp(.95rem,2.4vw,1.08rem);font-weight:500;line-height:1.55}.event-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(100%,640px);display:grid}.onboarding-button.event-choice-button{white-space:normal;border:1px solid var(--accent);min-height:100px;color:var(--text-h);background:var(--bg);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:16px;line-height:1.4;display:flex}.event-choice-button small{color:var(--text);font-size:.78rem;font-weight:500}.event-choice-button:disabled{cursor:default}.event-help-button{border:1px solid var(--border);min-width:44px;min-height:44px;color:var(--text-h);background:var(--bg);font:700 1rem var(--sans);cursor:pointer;border-radius:50%}.event-help-dialog{box-sizing:border-box;border:1px solid var(--border);width:min(560px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text);background:var(--bg);border-radius:18px;padding:24px;line-height:1.6;overflow-y:auto}.event-help-dialog::backdrop{background:#0009}.event-help-dialog form{justify-content:flex-end;display:flex}.event-help-dialog h2{font-size:1.5rem}.event-help-dialog h3{color:var(--text-h);margin-bottom:6px;font-size:1rem}.event-help-dialog p{margin-top:0;font-size:.9rem}.exploration-autonomy{z-index:5;border:1px solid var(--border);width:fit-content;max-width:100%;color:var(--text-h);background:var(--bg);box-sizing:border-box;border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:12px auto;padding:12px;display:flex;position:sticky;top:8px}.exploration-autonomy button{white-space:normal}.exploration-autonomy span{font-size:.9rem}.exploration-autonomy button:focus-visible,.event-choice-button:focus-visible,.event-help-button:focus-visible,.event-help-dialog button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.break-results{flex-wrap:wrap;justify-content:center;gap:32px;margin:12px 0 24px;display:flex}.break-results dt{color:var(--text);font-size:1rem}.break-results dd{color:var(--text-h);margin:12px 0 0;font-size:2rem;font-weight:700}@media (width<=560px){.event-choice-grid{grid-template-columns:1fr}}.event-choice-button:hover{background:#62d66f29}.event-obedience-control{width:min(100%,420px);color:var(--text);font:700 .76rem/1.3 var(--sans);text-align:left;background:#0c341e38;border:1px dashed #ffffff6b;border-radius:10px;gap:7px;padding:10px 13px;display:grid}.event-obedience-control span{justify-content:space-between;gap:12px;display:flex}.event-obedience-control output{color:var(--text-h)}.event-obedience-control input{accent-color:#62d66f;width:100%}.event-obedience-control small{font-weight:500}.event-result{gap:8px;max-width:620px;display:grid}.event-result>span{color:var(--accent);font:800 .74rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase}.event-result p{font-size:clamp(1.05rem,2.8vw,1.35rem);line-height:1.5}.event-result .event-autonomy-message{color:var(--text);font-size:.95rem;font-weight:700}.event-feedback{background:#0c341e2e;border:1px solid #62d66f61;border-radius:14px;gap:10px;width:min(100%,540px);padding:14px;display:grid}.exploration-event .event-feedback>p{color:var(--text);font-size:.92rem;font-weight:700}.event-feedback-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.event-feedback-button{min-height:40px;color:var(--text-h);cursor:pointer;background:#ffffff12;border:1px solid #62d66fb8;padding:9px 12px}.event-feedback-button:hover{background:#62d66f29}.event-feedback-complete{justify-items:center;padding-block:11px}.event-feedback-reaction{font-size:1.4rem;line-height:1}.event-feedback-stat-changes{flex-wrap:wrap;justify-content:center;gap:7px;display:flex}.event-feedback-stat-changes span{color:#eaffdf;font:700 .76rem/1 var(--sans);background:#173e24ad;border-radius:999px;padding:4px 8px}.exploration-event .event-feedback-error{color:#ffe5dc;font-size:.78rem;font-weight:600}.event-debug-info{color:#173e24;width:min(100%,540px);font:700 .74rem/1.35 var(--sans);text-align:left;background:#b5eaa559;border:1px dashed #173e2459;border-radius:10px;gap:8px;padding:12px 14px;display:grid}.event-debug-info dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 16px;margin:0;display:grid}.event-debug-info dl>div{justify-content:space-between;gap:10px;display:flex}.event-debug-info dt{font-weight:500}.event-debug-info dd{margin:0}.event-debug-info>span{font-weight:500}.focus-introduction-companion{width:min(42vw,190px);animation:3.4s ease-in-out infinite door-companion-bob}.focus-introduction-companion svg{width:100%;height:auto;display:block}.focus-introduction h1{color:var(--text-h);margin:0 0 10px;font-size:clamp(2rem,6vw,3.1rem)}.focus-introduction p{color:var(--text);margin:0}.focus-introduction-debug{color:var(--text);align-items:center;gap:7px;font-size:.78rem;font-weight:700;display:flex}.focus-introduction-debug input{width:15px;height:15px;accent-color:var(--accent);margin:0}.focus-session{border:1px solid var(--border);background:var(--card-bg);width:min(100%,820px);box-shadow:var(--shadow);border-radius:18px;justify-items:center;gap:clamp(18px,4vw,36px);padding:clamp(28px,6vw,56px);animation:.35s ease-out door-choice-enter;display:grid}.focus-session .focus-timer{background:#0b331d2e;width:min(100%,620px);margin:0}.onboarding-shell:has(.focus-session){height:100dvh;min-height:0;padding:8px}.exploration-session:has(.focus-session){grid-template-rows:minmax(0,1fr);width:min(100%,960px);height:100%;min-height:0}.exploration-session .focus-session{box-sizing:border-box;grid-template-rows:44px minmax(0,1fr) auto;grid-template-columns:1fr 1fr;align-items:center;gap:10px;width:100%;height:100%;min-height:0;padding:10px}.focus-session>.game-header{grid-column:1/-1}.focus-session>.focus-companion-area{width:min(100%,300px);max-height:100%}.focus-session>.focus-timer{box-sizing:border-box;min-width:0;padding:10px}.focus-session .timer-content{gap:10px}.focus-session .timer-progress{width:clamp(100px,28dvh,240px)}.focus-session .timer-progress:before{width:86%}.focus-session .timer-display{font-size:clamp(1.8rem,6dvh,3.5rem)}.focus-session .timer-button{min-height:44px}.focus-session>.focus-review-button{grid-column:1/-1}@media (width<=540px){.exploration-session .focus-session{grid-template-rows:44px minmax(60px,1fr) auto auto;grid-template-columns:minmax(0,1fr);gap:6px;padding:6px}.focus-session>.focus-companion-area{width:min(100%,230px);height:100%}.focus-session .timer-progress{width:clamp(110px,25dvh,190px)}}.focus-companion-area{aspect-ratio:1.1;width:min(64vw,300px);position:relative}.focus-companion{z-index:2;cursor:pointer;filter:drop-shadow(0 16px 20px #092a182e);background:0 0;border:0;width:auto;padding:0;animation:3.2s ease-in-out infinite focus-companion-work;position:absolute;inset:4% 9% 3% 3%}.focus-companion svg{width:100%;height:100%;display:block}.focus-companion:focus-visible,.focus-thought:focus-visible{outline-offset:4px;outline:3px solid #89ef8fbf}.focus-introduction-debug:has(input:focus-visible){outline-offset:4px;outline:3px solid #89ef8fbf}.focus-paper{z-index:1;aspect-ratio:.78;background:repeating-linear-gradient(#fffef6 0 9px,#dcebd4 10px 11px);border:1px solid #1b4a2b33;border-radius:4px;width:30%;position:absolute;bottom:14%;right:1%;transform:rotate(8deg);box-shadow:0 8px 14px #103b2129}.focus-pencil{z-index:3;transform-origin:100%;background:linear-gradient(90deg,#efbc4a 0 83%,#f4d7ad 83% 94%,#443426 94%);border-radius:999px;width:35%;height:8px;position:absolute;bottom:18%;right:3%;transform:rotate(-35deg);box-shadow:0 3px 5px #11351d2e}.focus-thought{z-index:4;aspect-ratio:1;cursor:pointer;background:#ffffffd6;border:1px solid #ffffff94;border-radius:50%;place-items:center;width:42px;padding:0;font-size:1.25rem;animation:2.8s ease-in-out infinite focus-thought-float;display:grid;position:absolute;top:0;right:2%;box-shadow:0 7px 14px #123f2424}.focus-thought.is-excited{color:#f0ab34;background:#fff4bf;animation:1.6s ease-in-out infinite focus-thought-excited}.focus-speech{z-index:5;border:1px solid var(--border);color:#173521;text-align:left;background:#fffffff0;border-radius:12px;width:min(170px,58%);margin:0;padding:10px 12px;font-size:.73rem;font-weight:700;line-height:1.35;animation:.22s ease-out door-placeholder-enter;position:absolute;top:7%;left:61%;box-shadow:0 8px 16px #123f2424}.focus-review-button{margin-top:-6px}.work-review{border:1px solid var(--border);background:var(--card-bg);width:min(100%,860px);box-shadow:var(--shadow);text-align:center;border-radius:18px;justify-items:center;gap:clamp(20px,4vw,32px);padding:clamp(28px,6vw,52px);animation:.4s ease-out door-choice-enter;display:grid}.work-review-intro{justify-items:center;gap:8px;display:grid;position:relative}.work-review-companion{width:min(36vw,160px);animation:3.1s ease-in-out infinite door-companion-bob}.work-review-companion svg{width:100%;height:auto;display:block}.work-review-intro h1{color:var(--text-h);margin:0;font-size:clamp(1.8rem,5vw,2.7rem)}.work-review-reaction{aspect-ratio:1;color:#f0ad34;background:#fff9d6e0;border-radius:50%;place-items:center;width:34px;font-size:1.1rem;animation:2.8s ease-in-out infinite focus-thought-float;display:grid;position:absolute;top:1%;right:-28px;box-shadow:0 5px 12px #123f241f}.work-drawing{background:#fffde7;border:1px solid #d8c98f;border-radius:5px;width:min(100%,520px);margin:0;padding:9px;transform:rotate(-1.2deg);box-shadow:0 12px 24px #1d412626}.work-drawing svg{background:#fffef6;width:100%;height:auto;display:block}.work-drawing figcaption{color:#4c684e;margin-top:4px;font-family:cursive;font-size:.76rem}.work-drawing svg>*{fill:none;stroke:#376e65;stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.work-drawing .drawing-border{stroke:#e49c6a;stroke-width:3px}.work-drawing .drawing-title{fill:#d77c62;stroke:none;font-family:cursive;font-size:20px;font-weight:700;transform:rotate(-3deg)}.work-drawing .drawing-player{stroke:#5c78a8}.work-drawing .drawing-pokodoro{stroke:#4b9a65}.work-drawing .drawing-crest{stroke:#ee9b59}.work-drawing .drawing-smile{stroke-width:3px}.work-drawing .drawing-hearts{stroke:#da7692;stroke-width:3px}.work-drawing .drawing-ground{stroke:#82a264;stroke-width:3px}.work-review-responses,.work-review-navigation{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.work-review-acknowledgement{color:var(--text-h);margin:-4px 0 0;font-weight:700;animation:.25s ease-out door-placeholder-enter}.exploration-complete h1{color:var(--text-h);margin:0;font-size:clamp(2rem,6vw,3.1rem)}.exploration-focus-placeholder{border:1px solid var(--border);background:var(--card-bg);box-shadow:var(--shadow);text-align:center;border-radius:14px;padding:22px;animation:.3s ease-out door-placeholder-enter}.companion-reveal-stage{aspect-ratio:1;place-items:center;width:min(52vw,250px);min-width:180px;display:grid;position:relative}.companion-reveal-arrival{aspect-ratio:1;opacity:0;place-items:center;width:76%;animation:1s ease-out forwards companion-arrive;display:grid;position:relative}.companion-dna-visual{width:100%;animation:1.5s ease-in-out .85s forwards companion-aware;display:block}.companion-dna-visual svg{width:100%;height:auto;display:block}.placeholder-pokodoro{aspect-ratio:1;background:radial-gradient(circle at 50% 65%,#ffe7a8 0 18%,#0000 19%),linear-gradient(145deg,#b9f5c0,#78dc88 70%);border-radius:50%;width:100%;animation:1.5s ease-in-out .85s forwards companion-aware;display:block;position:relative;box-shadow:inset 0 -18px 36px #1c783824,0 20px 40px #29764833}.placeholder-leaf{aspect-ratio:1.6;transform-origin:0 100%;background:#3fbf65;border-radius:80% 0;width:36%;position:absolute;top:-9%;left:50%;transform:translate(-8%)rotate(-28deg)}.placeholder-face{justify-content:center;gap:20%;width:100%;animation:1.2s ease-out 1.15s forwards companion-attention;display:flex;position:absolute;top:39%;left:0}.placeholder-eye{aspect-ratio:1;transform-origin:50%;background:#26362a;border-radius:50%;width:9%;animation:.22s ease-in-out 1.25s companion-blink;box-shadow:0 14px 0 -6px #f28c91}.companion-reaction{aspect-ratio:1;opacity:0;background:#ffffffc7;border-radius:50%;place-items:center;width:38px;font-size:1.25rem;animation:.45s ease-out 1.9s forwards reaction-pop;display:grid;position:absolute;top:11%;right:2%;transform:scale(.65);box-shadow:0 6px 14px #275c371f}.onboarding-back{min-height:36px;color:var(--text);cursor:pointer;font:700 .85rem/1 var(--sans);background:0 0;border:0;border-radius:6px;padding:0 10px;position:absolute;top:16px;left:16px}.onboarding-back:hover{color:var(--text-h);background:#62d66f1f}.onboarding-intro{max-width:540px;margin:0 auto 38px}.onboarding-intro h1,.confirmation-dialog h2,.egg-hatching h1{margin:6px 0 10px;font-size:clamp(2rem,7vw,3.7rem)}.confirmation-dialog h2{font-size:clamp(1.65rem,5vw,2.6rem)}.egg-hatching h1{font-size:clamp(1.7rem,5vw,2.8rem)}.onboarding-intro p:not(.onboarding-kicker),.confirmation-dialog p:not(.onboarding-kicker),.egg-hatching p:not(.onboarding-kicker){margin:0}.onboarding-kicker{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:700}.egg-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,3vw,28px);display:grid}.egg-option{color:var(--text-h);cursor:pointer;font:700 .9rem/1.2 var(--sans);background:0 0;border:1px solid #0000;border-radius:14px;justify-items:center;gap:16px;padding:20px 10px;transition:background .2s,border-color .2s,transform .2s;display:grid}.egg-option:hover{border-color:var(--border);background:#62d66f1a;transform:translateY(-5px)}.egg-option:active{transform:translateY(1px)scale(.96)}.egg-option:focus-visible,.onboarding-button:focus-visible,.onboarding-back:focus-visible{outline-offset:4px;outline:3px solid #1b6f3559}.egg-visual{aspect-ratio:.74;border:4px solid #ffffff80;border-radius:52% 48% 46% 54%/60% 58% 42% 40%;display:inline-block;box-shadow:inset -12px -13px 16px #144c2b2e}.egg-visual-moss{background:radial-gradient(circle at 38% 30%,#e4ffd3 0 5%,#0000 6%),linear-gradient(145deg,#8ee3a1,#3a9c63)}.egg-visual-moon{background:radial-gradient(circle at 62% 29%,#fff5cb 0 5%,#0000 6%),linear-gradient(145deg,#d4c7ff,#7866c3)}.egg-visual-sun{background:radial-gradient(circle at 38% 28%,#fffbd7 0 5%,#0000 6%),linear-gradient(145deg,#ffe4a3,#e89647)}.egg-art{width:min(20vw,150px);min-width:76px;animation:3.2s ease-in-out infinite egg-float;box-shadow:inset -12px -13px 16px #144c2b2e,0 14px 22px #1e5b302b}.egg-option-moon .egg-art{animation-delay:-1s}.egg-option-sun .egg-art{animation-delay:-2s}.egg-name{font-size:clamp(.76rem,2.3vw,1rem)}.confirmation-dialog{width:min(100%,580px)}.confirmation-egg{width:96px;margin:18px auto 12px;box-shadow:inset -9px -10px 13px #144c2b2e,0 10px 18px #1e5b3024}.confirmation-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px;display:flex}.onboarding-button{cursor:pointer;min-height:50px;font:700 .95rem/1 var(--sans);border-radius:8px;padding:0 20px}.onboarding-button-primary{color:#063319;background:#62d66f;border:0;box-shadow:0 10px 20px #1976342e}.onboarding-button-secondary{border:1px solid var(--accent);color:var(--text-h);background:var(--bg)}.onboarding-confirmed{border:1px solid var(--border);width:min(100%,580px);color:var(--text-h);background:var(--card-bg);text-align:center;border-radius:8px;margin:18px 0 0;padding:12px 16px}.egg-hatching{justify-items:center;gap:20px;width:min(100%,620px);display:grid}.hatching-egg{aspect-ratio:.74;filter:drop-shadow(0 18px 20px #1e5b302e);width:min(44vw,220px);min-width:150px;margin:14px 0 8px;animation:3s cubic-bezier(.45,0,.55,1) hatch-wobble;position:relative}.hatching-whole-shell{z-index:1;width:100%;height:100%;transition:opacity .35s;position:absolute;inset:0;box-shadow:inset -12px -13px 16px #144c2b2e}.hatching-crack{z-index:3;fill:none;stroke:#fffffff0;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;stroke-dasharray:150;stroke-dashoffset:150px;filter:drop-shadow(0 0 2px #fff8c0a6);width:100%;height:100%;animation:1.05s ease-in-out 2.45s forwards crack-draw;position:absolute;inset:0}.hatching-shell-piece{z-index:2;opacity:0;width:100%;height:100%;transition:transform .9s ease-in-out,opacity .35s ease-in-out;position:absolute;inset:0;box-shadow:inset -12px -13px 16px #144c2b2e}.hatching-shell-left{clip-path:polygon(0 0,56% 0,56% 12%,48% 24%,58% 34%,46% 46%,54% 57%,43% 71%,50% 92%,0 100%)}.hatching-shell-right{clip-path:polygon(56% 0,100% 0,100% 100%,50% 92%,43% 71%,54% 57%,46% 46%,58% 34%,48% 24%,56% 12%)}.hatching-inner-glow{z-index:2;aspect-ratio:1;filter:blur(5px);mix-blend-mode:screen;opacity:0;background:radial-gradient(circle,#fffddceb 0,#ffeb9461 42%,#0000 70%);border-radius:50%;width:54%;animation:1.7s ease-in-out 2.55s forwards inner-glow-pulse;position:absolute;bottom:17%;left:23%;transform:scale(.7)}.hatching-silhouette{z-index:1;aspect-ratio:.7;opacity:0;background:#fffde6;border-radius:50% 50% 42% 42%;width:45%;transition:opacity .8s ease-in,transform .8s ease-out;position:absolute;bottom:17%;left:50%;transform:translate(-50%)scale(.7);box-shadow:0 0 26px 12px #fffcc4d9}.hatching-egg-open{animation:none}.hatching-egg-open .hatching-whole-shell{opacity:0}.hatching-egg-open .hatching-shell-piece{opacity:1}.hatching-egg-open .hatching-shell-left{transform:translate(-5px)rotate(-.8deg)}.hatching-egg-open .hatching-shell-right{transform:translate(5px)rotate(.8deg)}.hatching-egg-open .hatching-inner-glow{opacity:.78;transform:scale(1)}.hatching-egg-open .hatching-silhouette{opacity:1;transform:translate(-50%)scale(1)}.hatching-message{min-height:24px;color:var(--text)}@keyframes egg-float{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-9px)rotate(2deg)}}@keyframes hatch-wobble{0%,15%,38%,61%,to{transform:rotate(0)}7%{transform:rotate(-1.3deg)}26%{transform:rotate(1.6deg)}50%{transform:rotate(-1.1deg)}}@keyframes crack-draw{to{stroke-dashoffset:0}}@keyframes inner-glow-pulse{0%{opacity:0;transform:scale(.72)}28%{opacity:.55;transform:scale(.92)}48%{opacity:.28;transform:scale(.84)}72%{opacity:.76;transform:scale(1)}to{opacity:.78;transform:scale(1)}}@keyframes companion-arrive{0%{opacity:0;transform:translateY(10px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes door-choice-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes door-companion-bob{0%,to{transform:translateY(0)rotate(-1deg)}50%{transform:translateY(-7px)rotate(1deg)}}@keyframes door-placeholder-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes exploration-time-complete{0%,to{transform:scale(1);box-shadow:0 0 #baeeb100}50%{transform:scale(1.02);box-shadow:0 0 0 6px #baeeb129}}@keyframes focus-companion-work{0%,to{transform:translateY(0)rotate(-.8deg)}50%{transform:translateY(-4px)rotate(.8deg)}}@keyframes focus-thought-float{0%,to{transform:translateY(0)rotate(-4deg)}50%{transform:translateY(-6px)rotate(4deg)}}@keyframes focus-thought-excited{0%,to{transform:scale(1)rotate(0)}50%{transform:scale(1.12)rotate(8deg)}}@keyframes companion-aware{0%{transform:rotate(-2deg)translateY(0)}52%{transform:rotate(1.5deg)translateY(-5px)}to{transform:rotate(.8deg)translateY(-2px)}}@keyframes companion-attention{to{transform:translate(4px)}}@keyframes companion-blink{50%{transform:scaleY(.12)}}@keyframes reaction-pop{0%{opacity:0;transform:scale(.65)}70%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes onboarding-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes onboarding-exit{to{opacity:0;transform:translateY(-6px)}}@media (width<=440px){.exploration-session-header{justify-content:center}.exploration-panel{min-height:330px;padding:28px 18px}.event-choice-grid,.event-feedback-choices,.event-debug-info dl{grid-template-columns:1fr}.event-engine .exploration-event-companion{width:min(42vw,135px)}.focus-session{padding:28px 18px}.focus-companion-area{width:min(78vw,280px)}.work-review{padding:28px 18px}.work-review-companion{width:min(48vw,150px)}.work-review-reaction{right:-16px}.door-choice{gap:22px;padding:26px 18px}.door-choice-scene{grid-template-columns:1fr;gap:20px}.door-choice-companion{width:min(54vw,205px)}.exploration-door{min-height:192px}.egg-options{gap:6px}.egg-option{padding:14px 4px}}.dev-tools{text-align:left;max-width:1000px;margin:auto;padding:24px}.dev-tools nav,.dev-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.dev-tools a{color:var(--accent)}.reward-editor{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px;margin:20px 0;display:grid}.dev-tools fieldset{border:1px solid var(--border);border-radius:12px;min-width:0}.dev-tools label{text-transform:capitalize;justify-content:space-between;align-items:center;gap:12px;margin:8px 0;display:flex}.dev-tools input{width:90px}.dev-tools input,.dev-tools select,.dev-tools button{border:1px solid var(--border);background:var(--card-bg);min-height:44px;color:var(--text-h);border-radius:8px;padding:8px}.dev-tools select{max-width:65%}.dev-tools button:disabled{opacity:.5}.dev-tools [role=alert]{color:#efad8e}.dev-tools [role=alertdialog],.special-reward{border:1px solid var(--border);border-radius:12px;margin:8px 0;padding:12px}
