:root{color-scheme:dark;--bg:#030713;--ink:#f2e9d8;--muted:#aaa59e;--gold:#ecc99a;--line:rgba(238,204,151,.24);--glass:rgba(8,12,25,.76)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;width:100%}body{overflow:hidden;background:var(--bg);color:var(--ink);font-family:'Noto Serif KR','Apple SD Gothic Neo','Malgun Gothic',Georgia,serif;font-weight:300;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}button:focus-visible,canvas:focus-visible{outline:2px solid #f7dba8;outline-offset:4px}::selection{background:#a97e50;color:#fff}
#garden{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:manipulation;cursor:crosshair}#vignette,#film{position:fixed;inset:0;pointer-events:none}#vignette{background:radial-gradient(ellipse at 50% 52%,transparent 38%,rgba(1,3,9,.65) 100%)}#film{opacity:.065;background-image:radial-gradient(#f4d7a5 .55px,transparent .75px);background-size:7px 7px;mix-blend-mode:screen}
.hidden{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.overlay{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:22px;background:radial-gradient(ellipse at 50% 45%,rgba(13,20,36,.97),rgba(2,4,12,.98));overflow:auto;overscroll-behavior:contain;transition:opacity .5s}.intro-inner{text-align:center;max-width:590px;padding:clamp(18px,3vw,45px) 12px}.intro-mark{display:flex;justify-content:center;gap:16px;margin-bottom:33px}.intro-mark span{width:3px;height:3px;background:var(--gold);border-radius:50%;box-shadow:0 0 15px 3px #dba87188;animation:twinkle 4s infinite}.intro-mark span:nth-child(2){animation-delay:.65s}.intro-mark span:nth-child(3){animation-delay:1.3s}@keyframes twinkle{50%{transform:scale(2.5);opacity:.4}}.eyebrow{font-family:Georgia,serif;font-size:.66rem;letter-spacing:.35em;color:#b69f80;text-transform:uppercase}.intro-inner h1{font-size:clamp(4rem,13vw,7.5rem);font-weight:200;letter-spacing:.32em;margin:8px 0 0;text-indent:.32em;text-shadow:0 0 70px #dfaf7b77}.latin{font-family:Georgia,serif;font-style:italic;letter-spacing:.5em;font-size:1rem;color:#bcb0a0;margin:0}.intro-rule{height:1px;background:linear-gradient(to right,transparent,#b59369 50%,transparent);width:95px;margin:44px auto 36px}.lede{font-size:clamp(1rem,2vw,1.18rem);line-height:2.2;letter-spacing:.06em}.intro-desc{font-size:.86rem;line-height:2.25;color:#b5b0a5;margin:18px 0 36px}.primary,.secondary,.danger{border:1px solid var(--line);background:rgba(255,221,179,.05);color:var(--ink);border-radius:50px;padding:12px 24px;transition:background .25s,border-color .25s}.primary{padding:16px 35px;font-size:.95rem;letter-spacing:.13em}.primary span{padding-left:18px;color:var(--gold)}.primary:hover,.secondary:hover{background:rgba(255,221,179,.14);border-color:var(--gold)}.fine{margin:22px 0 0;font-size:.69rem;color:#969391;letter-spacing:.04em}
#hud{position:fixed;inset:0;z-index:10;pointer-events:none;transition:opacity .6s,visibility .6s}#hud-top{position:absolute;top:max(20px,env(safe-area-inset-top));left:clamp(20px,3vw,45px);right:clamp(20px,3vw,45px);display:flex;align-items:center;justify-content:space-between;gap:10px}.brand-small{font-size:1.18rem;letter-spacing:.18em;color:#f1dbc1;white-space:nowrap}.brand-symbol{font-family:Georgia,serif;color:#eed0a5;margin-right:9px}.brand-sub{font:italic .67rem Georgia,serif;letter-spacing:.3em;opacity:.55;margin-left:7px}#controls{display:flex;gap:9px;pointer-events:auto}#controls button{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:rgba(5,9,19,.52);border:1px solid var(--line);border-radius:50%;color:#ead6bb;font-size:1.2rem;transition:background .2s,transform .2s}#controls button:hover{background:#826b5030;transform:translateY(-2px)}#controls button.on{background:#5f543e77;border-color:#e5c18c}#controls button svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linejoin:round;stroke-linecap:round}#visit-info{position:absolute;left:clamp(20px,3vw,45px);top:clamp(80px,11vh,112px);font-size:.75rem;letter-spacing:.08em;color:#b0aca4;line-height:2}#garden-meta{position:absolute;bottom:clamp(75px,12vh,110px);left:50%;transform:translateX(-50%);white-space:nowrap;font-size:.72rem;color:#c3b8ab;letter-spacing:.08em;text-align:center}.meta-sep{margin:0 13px;color:#97795d}#poem{position:absolute;bottom:clamp(148px,27vh,240px);left:50%;transform:translateX(-50%);max-width:min(680px,88vw);text-align:center;white-space:pre-line;color:#f9e8cb;font-size:clamp(.95rem,2vw,1.18rem);line-height:2.2;letter-spacing:.1em;text-shadow:0 0 35px #cf975d80;opacity:0;transition:opacity .9s}.bottom-help{position:absolute;bottom:max(24px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);font-size:.68rem;letter-spacing:.05em;color:#9c988f;white-space:nowrap}.bottom-help span{padding:0 8px;color:#97795d}#hint-plant{position:absolute;left:50%;top:57%;transform:translate(-50%,-50%);font-size:.88rem;text-align:center;color:#dcc2a3;letter-spacing:.12em;transition:opacity .4s;white-space:nowrap}#hint-plant span{margin-left:10px;color:#e3bb83}
#prompt{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(580px,92vw);padding:28px 20px 22px;border:1px solid var(--line);border-radius:22px;background:rgba(4,8,18,.91);text-align:center;box-shadow:0 15px 100px #0008;backdrop-filter:blur(15px);pointer-events:auto;transition:opacity .35s,visibility .35s}#prompt-q{font-size:1rem;line-height:1.9;margin:0 0 23px}#prompt-choices{display:flex;gap:9px;justify-content:center;flex-wrap:wrap}.choice{border:1px solid #c99e6e66;background:#aa80501c;color:#f0deca;padding:10px 17px;border-radius:40px;font-size:.78rem}.choice:hover{border-color:#ebc69b;background:#aa805044}.prompt-skip{border:0;background:none;color:#acaaa1;font-size:.7rem;margin-top:19px;text-decoration:underline}
.panel{width:min(680px,100%);max-height:min(92dvh,920px);overflow:auto;overscroll-behavior:contain;padding:clamp(24px,5vw,47px);border:1px solid #dec29a40;border-radius:25px;background:linear-gradient(150deg,rgba(22,29,43,.96),rgba(6,10,20,.97));box-shadow:0 20px 120px #000a}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel h2{font-weight:300;font-size:clamp(1.55rem,4vw,2.2rem);letter-spacing:.03em;margin:15px 0 20px}.panel p{line-height:2.05;font-size:.9rem;color:#d5cdc1}.panel-note{margin:20px 0 0;color:#aba69e!important;font-size:.78rem!important}.close-btn{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:transparent;color:#e5d4bd;font-size:1.5rem}.timeline{margin:24px 0;padding-left:20px;border-left:1px solid #d4aa7755}.timeline-item{display:flex;gap:20px;justify-content:space-between;align-items:baseline;padding:7px 0;font-size:.79rem;color:#dcd2c3}.timeline-item span:first-child{color:#bd945d}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0 26px}.stats div{border:1px solid var(--line);border-radius:15px;padding:20px 9px;text-align:center}.stats strong{display:block;font:2.1rem Georgia,serif;color:#e9c18c;font-weight:400}.stats span{display:block;color:#bcb2a7;font-size:.73rem;margin-top:5px}.record-info{margin:8px 0!important;font-size:.82rem!important}.data-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:29px}.secondary,.danger{font-size:.8rem;padding:10px 16px}.danger{color:#eab4b0;border-color:#b9797355}.danger:hover{background:#b9797333}#toast{position:fixed;left:50%;bottom:75px;transform:translateX(-50%) translateY(10px);background:#1b2431;border:1px solid #d2b18460;color:#f5e8d0;border-radius:25px;padding:12px 23px;font-size:.8rem;opacity:0;transition:opacity .25s,transform .25s;pointer-events:none;z-index:100;text-align:center;max-width:90vw}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:620px){#hud-top{left:17px;right:17px;top:max(14px,env(safe-area-inset-top))}.brand-small{font-size:.95rem}.brand-sub{display:none}#controls{gap:6px}#controls button{width:38px;height:38px}#visit-info{left:17px;top:70px;font-size:.65rem;max-width:57vw}#garden-meta{bottom:105px;width:92%;white-space:normal;line-height:1.8;font-size:.67rem}#poem{bottom:160px;font-size:.86rem;max-width:90vw}.bottom-help{bottom:max(18px,env(safe-area-inset-bottom));font-size:.59rem;white-space:normal;text-align:center;width:90%}#hint-plant{top:59%;font-size:.77rem}.stats strong{font-size:1.7rem}.panel{max-height:calc(100dvh - 22px)}.data-actions button{flex:1;min-width:125px}}
@media(max-height:570px){#poem{bottom:27%}#garden-meta{bottom:13%}.bottom-help{bottom:2%}.intro-rule{margin:15px auto}.intro-desc{margin:10px 0}.intro-inner{padding:6px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
