@font-face{font-family:Bloom;src:url("./fonts/inter-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Bloom;src:url("./fonts/inter-700.woff2") format("woff2");font-weight:700 950;font-display:swap}
:root{font-family:Bloom,"Avenir Next","Trebuchet MS",Arial,sans-serif;color:#f6efd9;background:#24172e;font-synthesis:none;--ink:#30213e;--lime:#d9e777;--paper:#f4efd9;--pink:#f398a8}
*{box-sizing:border-box}body{margin:0;overscroll-behavior:none}button,a,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,a{min-height:44px;min-width:44px;border:1px solid #66556d;border-radius:14px;background:#34243f;color:inherit;font-size:12px;font-weight:800;letter-spacing:.04em;padding:12px 15px;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:12px}button:disabled{opacity:.5;cursor:default}button:active,a:active{transform:translateY(1px)}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid #f8c579;outline-offset:3px}[hidden]{display:none!important}.quiet{background:transparent;border-color:transparent;font-size:11px}.primary{background:var(--lime);color:var(--ink);border:0;box-shadow:0 4px 0 #7f854e;font-size:13px;justify-content:space-between;padding:16px 20px}.primary span{font-size:22px;line-height:1}h1,h2,h3,p{margin:0}h1{font-size:clamp(17px,4.7vw,23px);letter-spacing:-.07em;line-height:1.05;font-weight:950}h2{font-size:clamp(26px,7.6vw,38px);font-weight:900;letter-spacing:-.055em;line-height:1.08}h3{font-size:25px;letter-spacing:-.04em}.eyebrow{display:block;font-size:10px;letter-spacing:.14em;font-weight:800;color:#c1acbe}.small{font-size:12px;line-height:1.5;color:#cbb8cb}
#app{max-width:620px;min-height:100svh;margin:0 auto;padding:max(8px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));display:flex;flex-direction:column;background:radial-gradient(ellipse at 50% 25%,#49304c00,#24172e 77%);position:relative}header{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:0 8px;flex:none}.wordmark{grid-row:2;grid-column:1/-1;text-align:center;padding:7px 0 15px}.wordmark .eyebrow{font-size:8px;margin-bottom:5px;color:#b8a1b9}#arcade{justify-self:start;padding-left:0}#mute{grid-column:2;grid-row:1;justify-self:end;padding-right:0}#daily-strip{border-top:1px solid #675267;border-bottom:1px solid #675267;padding:9px 0;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:9px;letter-spacing:.12em;color:#d1bed0;min-height:32px}#mode{color:var(--lime);font-weight:800}#today{min-height:44px;padding:8px}main{flex:1;display:flex;flex-direction:column;min-height:0}#play-view{flex:1;display:flex;flex-direction:column;min-height:0}#hud{display:flex;justify-content:space-between;gap:5px;padding:17px 1px 3px;font-size:10px;letter-spacing:.07em;font-weight:800;color:#ceb7ca}#chances{color:#f8c579;white-space:nowrap}#stage{position:relative;flex:1;min-height:190px;max-height:330px;display:flex;align-items:center;justify-content:center}#scene{width:100%;height:100%;position:absolute;inset:0}#specimen{position:absolute;left:2px;top:20px;font-size:8px;writing-mode:vertical-rl;letter-spacing:.13em;color:#ad91a9}#speech{position:absolute;right:12px;top:15px;max-width:48%;font-size:12px;line-height:1.4;font-style:italic;color:#ead5d8;transform:rotate(4deg)}#identity{text-align:center;padding:0 0 20px}#form-label{font-size:8px;color:var(--lime);margin-bottom:8px}#name{font-size:clamp(29px,8vw,40px)}#tagline{color:#bca4bd;font-size:12px;margin-top:7px}#controls{padding:0 0 13px;flex:none}#feedback{font-size:13px;color:#f5d7a6;font-weight:800;min-height:20px;text-align:center}#hint{font-size:12px;line-height:1.45;color:#cbb8cb;text-align:center;margin:6px 0 15px;min-height:34px}#action{width:100%;min-height:56px}#timing{position:relative;height:38px;margin:0 15px 26px;border-radius:20px;background:#644d69;border:2px solid #998099;overflow:visible}#good-zone{position:absolute;left:63%;width:16%;height:100%;background:#aeaa7d80;border-radius:6px}#notch{position:absolute;left:71%;width:5px;height:48px;top:-7px;background:#edf6b3;transform:translateX(-50%);border-radius:3px}#seed-marker{position:absolute;left:0;top:4px;width:25px;height:25px;border-radius:50% 50% 50% 0;background:#f8b98e;border:3px solid #30213e;transform:translateX(-50%) rotate(-45deg);box-shadow:0 0 0 2px #f5ead3}#track-label{position:absolute;top:41px;left:71%;transform:translateX(-50%);font-size:8px;white-space:nowrap;letter-spacing:.1em;color:#d9e777}#toolbar{display:flex;gap:10px;justify-content:space-between;border-top:1px solid #675267;padding-top:10px;flex:none}#garden,#back{background:none;border:0;padding-left:2px}#garden-count{font-weight:400;color:#b9a3bb;font-size:11px}#vibe{background:transparent;border:1px solid #725771;padding:10px 15px;font-size:11px}body.vibe{background:#443044}body.vibe #app{background:radial-gradient(ellipse at 50% 25%,#624665,#24172e 80%)}#target{text-align:center;color:#f5d7a6;font-size:11px;padding:4px}#target:empty,#storage-status:empty{display:none}#storage-status{font-size:11px;color:#ffcaa7;padding:8px}
#result-view{text-align:center;flex:1;padding:24px 0 12px;display:flex;flex-direction:column;align-items:center;justify-content:center}#result-title{margin:8px 0 12px;font-size:clamp(25px,6vw,35px)}#result-detail{color:#e0cadc;font-size:14px}#result-art{width:100%;max-height:235px;object-fit:contain;margin-top:4px}#result-phrase{font-size:14px;font-style:italic;color:#dcc2d0;max-width:90%;line-height:1.5;margin:8px 0}#best-line{font-size:12px;color:var(--lime);margin:10px 0 18px}.result-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:9px}#again{grid-column:1/-1}#result-arcade{border:1px solid #66556d}#garden-view{padding:25px 0 16px}#garden-view h2{margin:10px 0 15px}.garden-stats{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0;font-size:11px;color:#e7d6dd}.garden-stats span{border:1px solid #6c5169;border-radius:20px;padding:8px 10px}#welcome{color:var(--lime);font-size:13px;line-height:1.6}#collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}#collection button{position:relative;display:flex;flex-direction:column;justify-content:start;gap:0;padding:6px 4px 12px;border-radius:15px;min-width:0;background:#392940;border:1px solid #6b5166;overflow:visible;text-align:center;letter-spacing:0;font-size:10px;line-height:1.3;min-height:131px}#collection button::after{content:"";position:absolute;inset:0}#collection button.unknown{background:#2c2035;border-style:dashed;color:#b8a2bb}#collection canvas{width:100%;height:80px;max-width:110px;flex:none}#collection .stage{font-size:7px;color:var(--lime);letter-spacing:.1em;margin-bottom:4px}#history{margin:24px 0;font-size:12px;line-height:1.9;color:#cbb8cb}#card-view{padding:26px 0;text-align:center;flex:1}#card-view h2{margin:10px 0}#card-art{width:100%;max-height:310px;object-fit:contain}#creature-phrase{font-size:18px;font-style:italic;line-height:1.5;margin:0 10px 20px;color:#f4d1ca}.card-actions{display:flex;flex-direction:column;gap:12px;margin:18px 0}#evolution{color:var(--lime);font-size:13px;min-height:20px}#share-sheet{position:fixed;inset:0;z-index:10;background:#150d22c9;display:flex;align-items:center;justify-content:center;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));overflow:auto}#share-sheet section{background:var(--paper);color:var(--ink);width:100%;max-width:440px;padding:16px;border-radius:22px;box-shadow:0 20px 80px #0005;max-height:100%;overflow:auto}#share-sheet h2{font-size:25px}.share-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}#share-sheet button,#share-sheet a{background:#ded9c2;border-color:#b9b49f;color:var(--ink);font-size:10px;padding:10px}#share-image{display:block;width:100%;aspect-ratio:1200/630;border-radius:12px;background:#30213e}#share-text{width:100%;height:110px;resize:none;border:1px solid #c9c1a7;background:#fff9e5;border-radius:9px;padding:10px;margin:12px 0 8px;color:var(--ink);font-size:12px;line-height:1.5}.share-actions{display:flex;gap:8px}.share-actions>*{flex:1}#share-status{font-size:12px;margin:12px 0 0;line-height:1.4}
@media(min-height:850px) and (orientation:portrait){#stage{min-height:260px}#identity{padding-bottom:27px}#hud{padding-top:24px}.wordmark{padding-bottom:22px}}
@media(max-height:700px) and (orientation:portrait){#app{padding-top:2px;padding-bottom:4px}.wordmark{padding:1px 0 8px}.wordmark .eyebrow{display:none}#hud{padding-top:10px}#stage{min-height:140px;max-height:180px}#identity{padding-bottom:12px}#name{font-size:28px}#hint{margin:3px 0 8px;min-height:28px}#controls{padding-bottom:10px}#result-art{max-height:155px}#result-view{padding-top:14px}#result-title{font-size:25px}#result-phrase{margin:4px 0}#best-line{margin:5px 0 12px}}
@media(orientation:landscape) and (min-width:650px){#app{max-width:1040px;min-height:100svh;padding:8px 25px}header{display:flex;justify-content:space-between}.wordmark{padding:0}.wordmark .eyebrow{display:none}h1{font-size:22px}#daily-strip{padding:6px 0;min-height:26px}#play-view{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:28px 1fr auto;gap:0 28px}#hud{grid-column:1/-1;padding:8px 0 0}#stage{grid-column:1;grid-row:2/4;min-height:190px;max-height:450px}#identity{grid-column:2;grid-row:2;padding:15px 0 8px;align-self:end}#controls{grid-column:2;grid-row:3;padding:0 0 10px}#hint{min-height:0;margin:4px 0 10px}#name{font-size:30px}#toolbar{padding-top:4px}#result-view{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;padding:12px 0}#result-art{grid-column:1;grid-row:1/5;max-height:245px}.result-top,#result-name,#result-phrase,#best-line,.result-actions{grid-column:2}#result-title{font-size:25px}#result-phrase{max-width:100%}#best-line{margin:5px 0 10px}#collection{grid-template-columns:repeat(6,minmax(0,1fr))}#card-view{display:grid;grid-template-columns:1fr 1fr;column-gap:25px;padding:15px 0}#card-art{grid-column:1;grid-row:1/7;max-height:250px}#card-view>*:not(canvas){grid-column:2}#creature-phrase{font-size:15px;margin:0}#card-view h2{font-size:26px}.card-actions{margin:10px 0;gap:8px}#share-sheet section{max-width:600px}#share-image{width:42%;float:left;margin-right:15px}#share-text{width:54%;height:100px}#share-status{clear:both}}
@media(prefers-reduced-motion:reduce){button:active,a:active{transform:none}}

/* Keep navigation in the safe frame while the specimen index scrolls independently. */
#app{height:100svh;min-height:0}main{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#71546c transparent}#toolbar{position:relative;background:#24172e}#result-view,#garden-view,#card-view{flex-shrink:0}
@media(max-height:600px) and (orientation:portrait){#result-art{max-height:110px}#result-view{padding:10px 0}#result-title{font-size:22px}#result-name{font-size:22px}#result-phrase{font-size:12px}#best-line{font-size:10px;margin:5px 0 9px}#result-detail{font-size:12px}.result-actions button,.result-actions a{font-size:10px;padding:10px}#stage{min-height:110px}#hint{font-size:11px}#timing{height:32px;margin-bottom:23px}#action{min-height:48px;padding:12px 15px}}

@media(max-height:700px) and (orientation:portrait){#card-view{padding:15px 0}#card-art{max-height:160px}#creature-phrase{font-size:15px;margin:0 5px 8px}#card-view h2{font-size:27px}.card-actions{margin:10px 0;gap:8px}#card-view .small{font-size:10px}#evolution{font-size:11px;min-height:15px}}
@media(orientation:landscape) and (max-height:500px){#result-view{padding:8px 0;align-items:center;grid-template-rows:auto auto 1fr auto auto}#result-art{grid-column:1;grid-row:1/4;max-height:145px;margin:0}.result-top{grid-column:2;grid-row:1}#result-name{grid-column:1;grid-row:4;font-size:22px}#result-phrase{grid-column:1;grid-row:5;font-size:12px;line-height:1.35;margin:4px 0}#result-title{font-size:23px;margin:5px 0 7px}#result-detail{font-size:11px}#best-line{grid-column:2;grid-row:2;font-size:10px;margin:8px 0}.result-actions{grid-column:2;grid-row:3/6;gap:8px}.result-actions button,.result-actions a{font-size:10px;padding:10px 12px}#result-view .primary{min-height:48px}}

#collection .unknown canvas{opacity:.24}
