:root{--ink: #f2f2ee;--ink-2: rgba(242, 242, 238, .72);--dim: rgba(242, 242, 238, .7);--line: rgba(242, 242, 238, .28);--glass: rgba(24, 26, 26, .42);--glass-2: rgba(24, 26, 26, .62);--rec: #d8433a;--serif: "Cormorant Garamond", "Iowan Old Style", Georgia, serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--shadow: 0 1px 2px rgba(0, 0, 0, .55), 0 0 6px rgba(0, 0, 0, .35), 0 0 16px rgba(0, 0, 0, .2)}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:#8f918f;color:var(--ink);font-family:var(--mono);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}.hidden{display:none!important}.dim{color:var(--dim)}#game{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:none}#overlay2d{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:4}body.menu #game,body.choosing #game{cursor:default}#hud{position:fixed;inset:0;pointer-events:none;z-index:5;text-shadow:var(--shadow);transition:opacity .6s}#hud.fade{opacity:0}.corner{position:absolute;font-size:11px;letter-spacing:.08em;display:flex;flex-direction:column;gap:6px}.corner.tl{top:max(14px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left))}.corner.tr{top:max(14px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));align-items:flex-end}.corner.bl{bottom:max(16px,env(safe-area-inset-bottom));left:max(16px,env(safe-area-inset-left))}.corner.br{bottom:max(16px,env(safe-area-inset-bottom));right:max(16px,env(safe-area-inset-right));align-items:flex-end}.row{display:flex;align-items:center;gap:8px}.row.small{font-size:10px}.sep{width:1px;height:10px;background:var(--line)}.rec{width:7px;height:7px;border-radius:50%;background:var(--rec);box-shadow:0 0 6px #d8433ab3;animation:blink 2s steps(2,start) infinite}@keyframes blink{to{visibility:hidden}}.latin{font-family:var(--serif);font-style:italic;font-size:24px;font-weight:400;letter-spacing:.01em;line-height:1}.bio{display:flex;align-items:center;gap:10px}.bio-track{position:relative;width:190px;height:3px;background:#ffffff38;border-radius:2px;overflow:visible;box-shadow:0 0 4px #00000040}.bio-fill{position:absolute;left:0;top:0;bottom:0;width:50%;background:var(--ink);border-radius:2px;transition:width .25s linear}.bio-fill.low{background:#f0b9a8}.bio-fill.pulse{animation:bpulse .6s ease-out}@keyframes bpulse{0%{box-shadow:0 0 10px 2px #fffc}to{box-shadow:0 0 #fff0}}.evo .bio-track{height:2px}.evo .bio-fill{background:#bfe3c4}.evo.ready .bio-fill{background:#d8f5dc;animation:evoglow 1.2s ease-in-out infinite alternate}.evo.ready #h-evo-label{color:#d8f5dc}@keyframes evoglow{0%{box-shadow:0 0 2px #d8f5dc66}to{box-shadow:0 0 10px #d8f5dcf2}}.evo.apex{display:none}.ladder{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);display:flex;gap:5px;flex-wrap:wrap;max-width:min(480px,calc(100vw - 32px))}.ladder b{width:6px;height:6px;border-radius:50%;border:1px solid var(--ink-2);display:inline-block;align-self:center}.ladder b.past{background:var(--ink-2)}.ladder b.now{background:var(--ink);border-color:var(--ink);box-shadow:0 0 6px #ffffffb3}.ladder span{margin-left:6px}.ladder span.past{color:var(--ink-2);text-decoration:line-through;text-decoration-color:#f2f2ee59}.ladder span.now{color:var(--ink)}.ladder i{font-style:normal;opacity:.5}#touch-evolve{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(212px,calc(env(safe-area-inset-bottom) + 200px));z-index:6;padding:9px 16px;border-radius:30px;background:#d8f5dceb;color:#1d2a1f;font-size:11px;letter-spacing:.16em;text-transform:uppercase}#choice{position:fixed;left:50%;top:58%;transform:translate(-50%,-50%);z-index:8;width:min(760px,calc(100vw - 32px));text-align:center;text-shadow:var(--shadow)}.choice-title{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-2);margin-bottom:10px}.choice-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.copt{text-align:left;padding:12px 14px;border-radius:4px;background:#1618189e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.14);transition:border-color .15s,transform .15s;text-shadow:none}.copt:hover,.copt:focus-visible{border-color:#f2f2eeb3;transform:translateY(-2px);outline:none}.copt .ck{font-size:9px;color:var(--dim);letter-spacing:.1em}.copt .cn{font-family:var(--serif);font-style:italic;font-size:19px;margin:2px 0 4px}.copt .cd{font-size:10.5px;line-height:1.5;color:var(--ink-2)}.bio-mark{position:absolute;right:-1px;top:-4px;width:1px;height:11px;background:var(--ink-2)}.lineage{display:none}.lineage i{width:6px;height:6px;border-radius:50%;border:1px solid var(--ink-2);display:inline-block}.lineage i.on{background:var(--ink);border-color:var(--ink)}.streak{display:inline-block;font-weight:500;color:var(--ink);letter-spacing:.04em}.streak.pop{animation:pop .5s ease-out}@keyframes pop{0%{transform:scale(1.6);opacity:.4}to{transform:none;opacity:1}}.scalebar{display:flex;flex-direction:column;align-items:flex-end;gap:4px}#h-scale{height:4px;border:1px solid var(--ink);border-top:0;width:100px;box-shadow:0 1px 2px #0000004d}#banner{position:absolute;top:max(54px,calc(env(safe-area-inset-top) + 40px));left:50%;transform:translate(-50%,-6px);font-size:12px;letter-spacing:.1em;text-align:center;opacity:0;transition:opacity .6s,transform .6s;padding:7px 14px;background:var(--glass);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:3px;white-space:nowrap;max-width:calc(100vw - 32px);overflow:hidden;text-overflow:ellipsis}#banner.show{opacity:1;transform:translate(-50%)}#banner .latin-i{font-family:var(--serif);font-style:italic;font-size:16px;letter-spacing:.01em}#capture{position:absolute;left:50%;bottom:22%;transform:translate(-50%);text-align:center;opacity:0;transition:opacity .25s;max-width:calc(100vw - 140px)}body.touch #capture{bottom:max(30%,220px)}#capture.show{opacity:1}.cap-title{font-family:var(--serif);font-style:italic;font-size:30px}.cap-sub{font-size:11px;letter-spacing:.08em;color:var(--ink-2);margin-top:4px}.cap-bar{width:min(200px,100%);height:3px;margin:10px auto 0;background:#fff3;position:relative}#cap-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--ink)}.cap-bar.time{height:1px;margin-top:5px;background:#ffffff1f}#cap-time{position:absolute;left:0;top:0;bottom:0;width:100%;background:#f0a08cd9}#toasts{position:absolute;left:50%;bottom:max(20px,calc(env(safe-area-inset-bottom) + 12px));transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;width:min(380px,calc(100vw - 32px))}.toast{background:none;text-shadow:var(--shadow);padding:2px 6px;border-radius:3px;font-size:11px;letter-spacing:.04em;line-height:1.5;color:var(--ink-2);opacity:0;transform:translateY(6px);transition:opacity .5s,transform .5s;text-align:center;max-width:100%}.toast.show{opacity:1;transform:none}.toast b{color:var(--ink);font-weight:500}.toast .sp{font-family:var(--serif);font-style:italic;font-size:16px;color:var(--ink);letter-spacing:.01em}#coach{position:absolute;left:50%;bottom:max(118px,calc(env(safe-area-inset-bottom) + 104px));transform:translate(-50%,6px);font-size:13px;letter-spacing:.06em;color:var(--ink);text-align:center;opacity:0;transition:opacity .6s,transform .6s;max-width:calc(100vw - 32px);line-height:1.5}#coach.show{opacity:.95;transform:translate(-50%)}body.touch #coach{max-width:calc(100vw - 140px)}#coach kbd{font-family:var(--mono);border:1px solid var(--line);border-radius:3px;padding:1px 5px;font-size:11px}.goals{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.goal{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.04em;color:var(--ink-2);transition:opacity .6s,color .4s}.goal .gp{color:var(--dim);font-variant-numeric:tabular-nums}.goal i{width:7px;height:7px;border:1px solid var(--ink-2);border-radius:1px;display:inline-block}.goal.done{color:var(--ink)}.goal.done i{background:var(--ink);border-color:var(--ink)}.goal.leaving{opacity:0}.goals-head{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim)}.screen{position:fixed;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:20px}#title:not(.white){align-items:flex-end;padding-bottom:max(5vh,24px);background:radial-gradient(ellipse 70% 55% at 50% 72%,#1416166b,#14161600 75%),linear-gradient(to top,#1416164d,#14161600 45%)}.title-wrap{width:min(1080px,100%);text-align:center;text-shadow:var(--shadow)}.wordmark{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(64px,11vw,150px);line-height:.9;letter-spacing:-.01em}.tagline{font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--ink-2);margin:10px 0 30px}.begin{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:3px;padding:14px 44px 12px;border-radius:40px;background:#f2f2eef0;color:#1d1f1f;text-shadow:none;transition:transform .2s,background .2s,box-shadow .2s;box-shadow:0 6px 30px #00000038}.begin:hover,.begin:focus-visible{background:#fff;transform:translateY(-1px);outline:none;box-shadow:0 8px 36px #00000047}.begin-label{font-size:13px;letter-spacing:.3em;text-transform:uppercase;font-weight:500;padding-left:.3em}.begin-as{font-family:var(--serif);font-style:italic;font-size:15px;color:#555a58}.title-foot{display:flex;gap:8px 22px;justify-content:center;align-items:center;margin-top:18px;flex-wrap:wrap}.link{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);display:inline-flex;align-items:center;min-height:24px;padding:4px 2px;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}.link:hover,.link:focus-visible{color:var(--ink);border-color:var(--line);outline:none}.keys{font-size:10px;letter-spacing:.14em;text-transform:uppercase;line-height:1.6;color:var(--dim);margin-top:6px}.keys .k-touch,body.touch .keys .k-desk{display:none}body.touch .keys .k-touch{display:inline}.chip{font-size:11px;letter-spacing:.08em;padding:7px 12px;border-radius:3px;background:var(--glass);border:1px solid transparent}.chip:hover{border-color:var(--line)}#title .title-wrap{transition:opacity .7s,transform .9s}#title.leaving{pointer-events:none;background:transparent;transition:background .8s}#title.leaving .title-wrap{opacity:0;transform:translateY(20px)}.panel{width:min(720px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:26px 28px;border-radius:5px;background:#1618189e;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12)}.panel.small{width:min(400px,100%);text-align:center}.panel h2{font-family:var(--serif);font-weight:400;font-style:italic;font-size:34px;line-height:1.1}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.eyebrow{font-size:10px;letter-spacing:.24em;text-transform:uppercase;margin-bottom:6px}.latin-sub{font-family:var(--serif);font-style:italic;font-size:19px;color:var(--ink-2);margin-top:4px}.stack{display:flex;flex-direction:column;gap:8px;margin-top:20px}.btn{padding:11px 16px;border-radius:3px;background:#f2f2eeeb;color:#1d1f1f;font-size:12px;letter-spacing:.12em;text-transform:uppercase;transition:background .15s}.btn:hover{background:#fff}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.ghost:hover{border-color:var(--ink-2);background:#ffffff0d}.stats{display:grid;grid-template-columns:1fr auto;gap:6px 16px;margin-top:18px;font-size:11px;letter-spacing:.06em;text-align:left}.stats .k{color:var(--dim)}.stats .v{text-align:right}.stats .best{color:var(--ink)}.journal-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.jcard{padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:4px;background:#ffffff08}.jcard .sp{font-family:var(--serif);font-style:italic;font-size:18px}.jcard .c{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin:2px 0 6px}.jcard .n{font-size:11px;line-height:1.5;color:var(--ink-2)}.jcard .e{font-size:10px;color:var(--dim);margin-top:6px}.jcard.unknown .sp{color:var(--dim)}#touch-action{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(120px,calc(env(safe-area-inset-bottom) + 108px));width:80px;height:80px;border-radius:50%;background:#14161638;z-index:6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;text-shadow:var(--shadow)}#touch-action svg{position:absolute;inset:0;transform:rotate(-90deg)}#touch-action .ta-bg{fill:none;stroke:#ffffff4d;stroke-width:2}#touch-action .ta-arc{fill:none;stroke:#ffffffe6;stroke-width:2.5;stroke-dasharray:226.2;stroke-dashoffset:0;stroke-linecap:round}#touch-action span{font-size:10px;letter-spacing:.12em;text-transform:uppercase}#touch-action.on{background:#ffffff4d}#touch-pause{position:fixed;top:max(12px,calc(env(safe-area-inset-top) + 8px));right:max(12px,env(safe-area-inset-right));z-index:6;width:44px;height:44px;border-radius:50%;background:#1416164d;border:1px solid rgba(255,255,255,.4);font-size:11px;letter-spacing:.05em;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.tip{font-size:11px;line-height:1.55;margin-top:16px}#pause,#death,#journal{background:#0e101061}body.touch .corner.tr{top:max(58px,calc(env(safe-area-inset-top) + 54px))}#fallback{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;z-index:20;background:#1b1c1b;color:var(--ink);font-size:13px;line-height:1.6;padding:24px}#noscript{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;z-index:30;background:#1b1c1b;color:var(--ink);font-family:var(--mono);font-size:13px;line-height:1.7;padding:24px}@media(max-width:900px){.tagline{margin-bottom:22px}}@media(max-width:760px){#toasts{bottom:auto;top:max(84px,calc(env(safe-area-inset-top) + 72px));flex-direction:column}}@media(max-width:560px){.latin{font-size:19px}.bio-track{width:130px}.corner,.goal{font-size:10px}#banner{font-size:10px;white-space:normal;text-align:center;width:calc(100vw - 32px)}#toasts{top:max(110px,calc(env(safe-area-inset-top) + 98px))}.corner.tr,body.touch .corner.tr{top:max(232px,calc(env(safe-area-inset-top) + 220px))}}#title.white{background:#f7f7f4;color:#1b1c1b;align-items:center;justify-content:center;padding:24px;cursor:pointer;flex-direction:column}#title.white .title-wrap{text-shadow:none;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}#title.white .wordmark{color:#1b1c1b;font-weight:300;font-size:clamp(84px,15vw,210px);letter-spacing:-.015em;line-height:.95;animation:breathe 9s ease-in-out infinite}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.012)}}#title.white .tagline{color:#555854;margin:14px 0 44px;font-size:11px;letter-spacing:.36em}#title.white .begin{background:none;box-shadow:none;color:#1b1c1b;padding:10px 18px;border-radius:0;font-family:var(--mono);font-size:11px;letter-spacing:.34em;text-transform:uppercase;border-bottom:1px solid rgba(27,28,27,.25);animation:pulse 2.6s ease-in-out infinite}#title.white .begin:hover{transform:none;border-color:#1b1c1b}@keyframes pulse{0%,to{opacity:.55}50%{opacity:1}}#title.white .title-foot{position:absolute;bottom:max(22px,env(safe-area-inset-bottom));left:0;right:0;margin:0}#title.white .title-foot{padding:0 16px;box-sizing:border-box}#title.white .title-foot .keys{flex:1 0 100%;text-align:center;color:#5f625e;margin:0 0 4px}#title.white .link{color:#5f625e}#title.white .link:hover,#title.white .link:focus-visible{color:#1b1c1b;border-color:#1b1c1b4d}body.booting #title.white .begin{animation:none;opacity:.55;pointer-events:none}body.booting #title.white .begin .begin-text{visibility:hidden}body.booting #title.white .begin:after{content:"loading";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-left:.34em;font-size:11px;letter-spacing:.34em;text-transform:uppercase}#title-cell{position:absolute;left:50%;top:50%;width:min(760px,110vw);height:min(760px,110vw);transform:translate(-50%,-52%);pointer-events:none}#title-cell path{fill:#282c2806;stroke:#282c2829;stroke-width:1.1}#title-cell circle{fill:none;stroke:#282c281f;stroke-width:1}@media(prefers-reduced-motion:reduce){#title.white .wordmark,#title.white .begin,.rec,.evo.ready .bio-fill{animation:none}#banner,.toast{transition:none}}#iris{position:fixed;inset:0;z-index:12;pointer-events:none;display:none;background:#f7f7f4;-webkit-mask-image:radial-gradient(circle at 50% 50%,transparent var(--r, 0vmax),#000 calc(var(--r, 0vmax) + 1.5vmax));mask-image:radial-gradient(circle at 50% 50%,transparent var(--r, 0vmax),#000 calc(var(--r, 0vmax) + 1.5vmax))}#iris.on{display:block}
