:root{--paper: #f6f1e8;--gold: #ffe0a3;--cyan: #48eaff;--serif: "Song Myung", "Noto Serif KR", serif;--sans: "IBM Plex Sans KR", sans-serif;--page-gutter: 7vw;--content-max: 1280px;--content-inset: max(var(--page-gutter), calc((100vw - var(--content-max)) / 2))}*,*:before,*:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}html,body{margin:0;padding:0;width:100%;height:100%;height:100vh;height:100dvh;min-height:100%;min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;overflow:hidden;overflow-x:hidden;overscroll-behavior:none;overscroll-behavior-x:none;background:#07080c;color:var(--paper);touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}html.is-standalone,html.is-standalone body{min-height:100vh;min-height:100dvh}body{font-family:var(--serif);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}button{background:none;border:0;color:inherit;font-family:var(--sans);font-weight:300;font-size:.8rem;letter-spacing:.24em;padding:.4rem .6rem;cursor:pointer;transition:opacity .25s ease,transform .25s ease,color .25s ease}button:hover{opacity:.8;transform:translateY(-1px)}button:focus{outline:none}button:focus-visible{outline:1px solid rgba(246,241,232,.7);outline-offset:4px}#canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;background:#07080c}.stage{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;background:#07080c}.plate{position:absolute;top:-6%;right:-6%;bottom:-6%;left:-6%;width:112%;height:112%;object-fit:cover;object-position:center;opacity:0;scale:1.065;pointer-events:none;-webkit-user-select:none;user-select:none}.plate.is-boot{opacity:0}.plate.is-boot.is-shown{opacity:1;transition:opacity .6s ease}.boot-splash{display:none}html.is-standalone #boot-splash{display:none!important}@media(max-width:768px){html:not(.is-standalone) .boot-splash{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background-color:#07080c;background-position:center;background-size:cover;background-repeat:no-repeat;pointer-events:none;opacity:1;transition:opacity .75s ease}html:not(.is-standalone) .boot-splash.is-done{opacity:0}}.motes,.wash,.scrim,.vignette,.grain,.risers{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.motes{width:100%;height:100%;mix-blend-mode:screen;opacity:0}.stage.is-plate-ready .motes{opacity:1}.stage:not(.is-plate-ready) .motes,.stage:not(.is-plate-ready) .grain,.stage:not(.is-plate-ready) .wash,.stage:not(.is-plate-ready) .risers{visibility:hidden;opacity:0}.wash{mix-blend-mode:soft-light;opacity:.55}.scrim{background:linear-gradient(to top,rgba(0,0,0,.42) 0%,rgba(0,0,0,.14) 20%,transparent 42%)}.vignette{background:radial-gradient(ellipse at center,transparent 52%,rgba(0,0,0,.28) 100%)}.grain{top:-20%;right:-20%;bottom:-20%;left:-20%;opacity:.16;mix-blend-mode:overlay;background-size:180px 180px;animation:grain-shift .85s steps(2) infinite}html.is-render-paused .grain{animation-play-state:paused}@keyframes grain-shift{0%{background-position:0 0}to{background-position:180px 80px}}.riser{position:absolute;bottom:18%;width:7px;height:7px;border-radius:50%;background:#ffe0a8;box-shadow:0 0 18px 8px #ffc4788c;animation:rise 6.5s ease-in forwards}@keyframes rise{0%{transform:translateY(0) scale(1);opacity:0}12%{opacity:.9}to{transform:translateY(-70vh) scale(.4);opacity:0}}@media(prefers-reduced-motion:reduce){.grain{animation:none}.riser{animation-duration:.01s}.plate.is-boot.is-shown,.boot-splash{transition:none}.live-note{transition:none;transform:none}}.sound-btn{position:relative;top:auto;right:auto;flex-shrink:0;z-index:10;font-family:var(--sans);font-size:.75rem;letter-spacing:.15em;padding:.4rem .85rem;border-radius:999px;background:#0f111766;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(246,241,232,.18);opacity:.85;white-space:nowrap;cursor:pointer;margin:0}.sound-btn.is-active{border-color:#ffe0a373;color:var(--gold)}.gate{position:fixed;left:var(--content-inset);right:auto;bottom:max(12vh,8.6rem);z-index:5;width:min(44rem,calc(100% - 2 * var(--content-inset)));max-width:var(--content-max);text-shadow:0 2px 14px rgba(0,0,0,.75),0 8px 32px rgba(0,0,0,.5);transition:opacity .75s cubic-bezier(.16,1,.3,1),transform .75s ease}.gate.is-out{opacity:0;transform:translateY(16px);pointer-events:none}.kicker{margin:0 0 .8rem;font-family:var(--sans);font-weight:300;font-size:.76rem;letter-spacing:.35em;text-transform:uppercase;color:var(--gold);opacity:.88}h1,h2{margin:0;font-weight:400;letter-spacing:-.035em;line-height:1.1}h1{font-size:clamp(2.4rem,5vw,4.4rem)}h2{font-size:clamp(1.6rem,3.2vw,2.4rem)}.line{margin:1.2rem 0 0;font-size:1.12rem;line-height:1.8;opacity:.95;text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 12px rgba(0,0,0,.85)}.gate-live{margin:.45rem 0 0;max-width:28rem;font-family:var(--sans);font-weight:300;font-size:.92rem;line-height:1.7;color:var(--gold);opacity:.92;text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 12px rgba(0,0,0,.85)}.live-note{margin:.55rem 0 0;font-family:var(--sans);font-weight:300;font-size:.78rem;line-height:1.55;letter-spacing:.02em;color:var(--gold);opacity:0;transform:translateY(4px);transition:opacity .45s ease,transform .45s ease}.live-note.is-on{opacity:.92;transform:none}.enter-btn{padding:.6rem 1.4rem;background:#f6f1e81f;border:1px solid rgba(246,241,232,.3);border-radius:2px;color:var(--paper);font-weight:300;letter-spacing:.24em;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.enter-btn:hover{background:#f6f1e838;border-color:#f6f1e899;opacity:1}#enter{margin-top:1.6rem}.gate-footer-bar{position:fixed;right:var(--content-inset);bottom:2rem;z-index:5;display:flex;align-items:center;gap:.65rem;font-family:var(--sans);font-size:.76rem;transition:opacity .6s ease,transform .6s ease}.gate-footer-bar.is-out{opacity:0;transform:translateY(12px);pointer-events:none}.journey{position:relative;z-index:5}.mark{position:fixed;top:calc(1.6rem + env(safe-area-inset-top,0px));left:var(--content-inset);z-index:5;margin:0;font-family:var(--sans);font-weight:400;font-size:.74rem;letter-spacing:.32em;opacity:.92;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.9),0 2px 8px rgba(0,0,0,.7)}.dock{position:fixed;left:var(--content-inset);right:var(--content-inset);bottom:8.5vh;z-index:5;width:auto;max-width:var(--content-max);transform:none;display:flex;flex-direction:column;padding:1.6rem 0 1.4rem;background:none;border:0;box-shadow:none;pointer-events:auto}.copy{width:100%;max-width:none;display:flex;flex-direction:column;min-height:0;transition:opacity .5s ease,transform .5s ease}.copy .kicker{text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 18px rgba(0,0,0,.75),0 4px 28px rgba(0,0,0,.55)}.copy h1{text-shadow:0 1px 1px rgba(0,0,0,.95),0 2px 14px rgba(0,0,0,.88),0 0 32px rgba(0,0,0,.7),0 12px 48px rgba(0,0,0,.45)}.copy .line{text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 16px rgba(0,0,0,.8),0 6px 28px rgba(0,0,0,.5)}.copy.is-out{opacity:0;transform:translateY(12px)}.bottom-dock{position:fixed;bottom:2.4rem;left:var(--content-inset);right:var(--content-inset);width:auto;max-width:var(--content-max);transform:none;display:flex;align-items:center;justify-content:space-between;z-index:10;pointer-events:none}.seasons,.dock-actions{display:flex;align-items:center;pointer-events:auto}.seasons{gap:.85rem}.seasons button{position:relative;letter-spacing:.1em;opacity:.55;padding:.2rem .12rem .42rem;border-bottom:0;font-family:var(--sans);font-size:.88rem;cursor:pointer;transition:color .3s ease,opacity .3s ease}.seasons button.is-on{opacity:1;color:var(--gold)}.season-flow{position:absolute;left:.08rem;right:.08rem;bottom:0;height:2px;background:#ffe0a338;overflow:hidden;pointer-events:none;opacity:.72;border-radius:1px}.seasons button.is-on .season-flow,.seasons button.is-passed .season-flow{opacity:1}.seasons button.is-passed:not(.is-on) .season-flow{opacity:.55;background:#ffe0a338}.seasons button.is-on .season-flow{background:#ffe0a347}.season-flow i{display:block;width:var(--flow, 0%);height:100%;background:linear-gradient(90deg,rgba(255,206,138,.5),#ffffff,var(--gold));box-shadow:0 0 8px #ffe0a3a6;border-radius:1px;transition:width .1s linear}.seasons button.is-dwelling .season-flow i{background:linear-gradient(90deg,var(--gold),#ffffff,var(--gold));box-shadow:0 0 10px #ffe0a3e6}.season-dot{opacity:.25;color:var(--paper);font-size:.75rem;-webkit-user-select:none;user-select:none}.dock-actions{gap:.95rem}.dock-actions-end{display:inline-flex;align-items:center;gap:.55rem;flex-shrink:0}.dock-actions-sep{color:#f6f1e859;font-size:.75rem;line-height:1;-webkit-user-select:none;user-select:none}.sound-control{display:inline-flex;align-items:center;gap:.15rem;border:1px solid rgba(255,206,138,.25);border-radius:999px;padding:.16rem .7rem .16rem .2rem;background:#101218a6;color:var(--paper);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .3s ease,border-color .3s ease,box-shadow .3s ease,color .3s ease}.sound-control.is-active{border-color:#ffce8aa6;background:#ffce8a1f;color:var(--gold);box-shadow:0 0 12px #ffce8a33}.sound-toggle{border:0;background:transparent;color:inherit;font-size:.82rem;letter-spacing:0;line-height:1;padding:.28rem;cursor:pointer}.sound-toggle:hover{opacity:1;color:var(--gold)}.sound-control:not(.is-active) .sound-glyph{opacity:.72}.sound-volume{--vol: 25%;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:4.6rem;height:1.7rem;margin:0;background:transparent;cursor:pointer;touch-action:none}.sound-volume::-webkit-slider-runnable-track{height:2px;border-radius:999px;background:linear-gradient(to right,var(--gold) var(--vol),rgba(255,206,138,.28) var(--vol))}.sound-control:not(.is-active) .sound-volume::-webkit-slider-runnable-track{background:#ffce8a47}.sound-volume::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;margin-top:-5px;border:0;border-radius:50%;background:var(--gold);box-shadow:0 0 8px #ffce8ab3}.sound-volume::-moz-range-track{height:2px;border:0;border-radius:999px;background:#ffce8a47}.sound-volume::-moz-range-progress{height:2px;border-radius:999px;background:var(--gold)}.sound-volume::-moz-range-thumb{width:12px;height:12px;border:0;border-radius:50%;background:var(--gold);box-shadow:0 0 8px #ffce8ab3}.sound-pill-btn{border:1px solid rgba(255,206,138,.25);border-radius:999px;padding:.38rem .95rem;background:#101218a6;color:var(--paper);font-family:var(--sans);font-size:.82rem;letter-spacing:.08em;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .3s ease;white-space:nowrap}.sound-pill-btn:hover{background:#ffce8a29;border-color:#ffce8a8c;color:var(--gold)}.sound-pill-btn.is-active{border-color:#ffce8aa6;background:#ffce8a1f;color:var(--gold);box-shadow:0 0 12px #ffce8a33}.sound-glyph{position:relative;font-size:.88rem;display:inline-block;transition:color .3s ease}.sound-control:not(.is-active) .sound-glyph:after{content:"";position:absolute;left:-.12rem;right:-.12rem;top:50%;height:1px;background:currentColor;transform:rotate(-32deg)}.sound-pill-btn.is-active .sound-glyph{color:var(--gold);text-shadow:0 0 6px rgba(255,206,138,.6)}.flow-pill-btn{border:1px solid rgba(255,206,138,.3);border-radius:999px;padding:.38rem 1.05rem;background:#101218a6;color:var(--paper);font-family:var(--sans);font-size:.82rem;letter-spacing:.08em;cursor:pointer;display:inline-flex;align-items:center;gap:.45rem;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .3s ease}.flow-pill-btn:hover{background:#ffce8a2e;border-color:var(--gold);box-shadow:0 0 14px #ffc47840}@keyframes waveFlowMotion{0%,to{transform:translateY(0) scaleY(1)}50%{transform:translateY(-2.5px) scaleY(1.35)}}.flow-glyph.is-waving{display:inline-block;animation:waveFlowMotion 1.5s ease-in-out infinite;color:var(--gold);filter:drop-shadow(0 0 6px rgba(255,206,138,.85))}@keyframes flowPulseGlow{0%,to{border-color:#ffce8a61;box-shadow:0 0 10px #ffce8a2e}50%{border-color:#ffce8ad9;box-shadow:0 0 20px #ffce8a6b}}.flow-pill-btn.is-flowing{background:#ffce8a26;animation:flowPulseGlow 2.5s ease-in-out infinite;color:var(--paper)}.flow-glyph{color:var(--gold);font-size:.95rem}.tea-pill-btn{border:1px solid rgba(255,206,138,.35);border-radius:999px;padding:.38rem .95rem;background:#ffce8a1f;color:var(--gold);font-family:var(--sans);font-size:.82rem;letter-spacing:.06em;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .3s ease;white-space:nowrap}.tea-pill-btn:hover{background:#ffce8a3d;border-color:var(--gold);box-shadow:0 0 14px #ffc4784d;transform:translateY(-1px)}.kept{list-style:none;margin:.65rem 0 0;padding:0;font-family:var(--sans);font-weight:300;font-size:.98rem;line-height:1.5;max-height:none;overflow:visible;transition:opacity .32s ease,transform .32s ease}.kept.is-shifting{opacity:0;transform:translateY(6px)}.kept-nav{margin-top:.55rem;flex-shrink:0;align-self:flex-start;display:inline-flex;align-items:center;gap:.45rem;position:relative;z-index:2}.kept-nav-btn{background:none;border:0;border-radius:0;color:var(--gold);font-family:var(--sans);font-size:.78rem;font-weight:300;letter-spacing:.08em;padding:.12rem .2rem;cursor:pointer;display:inline-flex;align-items:center;gap:.3rem;text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 14px rgba(0,0,0,.88),0 4px 22px rgba(0,0,0,.65);opacity:.88;transition:opacity .2s ease,filter .2s ease,transform .2s ease}.kept-nav-btn:hover:not(:disabled){opacity:1;color:var(--gold);filter:brightness(1.15);transform:translateY(-1px)}.kept-nav-btn:disabled{opacity:.25;cursor:not-allowed;pointer-events:none;filter:grayscale(.5)}.kept-nav-glyph{color:var(--gold);font-size:.82rem;line-height:1}.kept-nav-sep{color:var(--gold);opacity:.35;font-size:.72rem;-webkit-user-select:none;user-select:none;line-height:1}.kept-flow-btn{margin-top:.55rem;flex-shrink:0;align-self:flex-start;background:none;border:0;border-radius:0;color:var(--gold);font-family:var(--sans);font-size:.78rem;font-weight:300;letter-spacing:.08em;padding:.12rem 0;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 14px rgba(0,0,0,.88),0 4px 22px rgba(0,0,0,.65);position:relative;z-index:2;opacity:.96;transition:opacity .25s ease,filter .25s ease}.kept-flow-btn:hover{opacity:1;color:var(--gold);filter:brightness(1.08);transform:none;background:none;border:0}.kept-flow-glyph{color:var(--gold);font-size:.85rem}.kept li{margin-bottom:.42rem;padding:.08rem 0 .08rem .75rem;background:none;border-left:2px solid rgba(255,224,163,.7);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:1rem;transition:border-color .25s ease,opacity .25s ease}.kept li[data-kept-index]{cursor:pointer}.kept li[data-glow]{position:relative}.kept li[data-glow]:before{content:"";position:absolute;left:-2px;top:0;bottom:0;width:2px;border-radius:2px;pointer-events:none}.kept li[data-glow="1"]:before{background:#ffe3b0;box-shadow:0 0 4px 1px #ffce8ab3}.kept li[data-glow="2"]:before{background:#fff0d2;box-shadow:0 0 7px 2px #ffce8acc}.kept li[data-glow="3"]:before{background:#fffaf0;box-shadow:0 0 10px 3px #ffd696f2,0 0 22px 4px #ffc47873}.kept li:focus-visible{outline:1px solid rgba(255,224,163,.55);outline-offset:2px}.kept li.is-open{align-items:start}.kept li:hover{border-left-color:var(--gold)}.kept li:last-child{margin-bottom:0}.kept-text{min-width:0;color:#fff;font-weight:400;word-break:keep-all;overflow-wrap:break-word;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1;overflow:hidden;text-shadow:0 1px 2px rgba(0,0,0,.95),0 0 12px rgba(0,0,0,.85),0 4px 18px rgba(0,0,0,.55)}.kept li.is-open .kept-text{display:block;-webkit-line-clamp:unset;line-clamp:unset;overflow:visible}.kept-meta{justify-self:end;display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}.kept-time{font-family:var(--sans);font-size:.68rem;font-weight:300;letter-spacing:.02em;color:#f6f1e873;text-shadow:0 1px 2px rgba(0,0,0,.85);-webkit-user-select:none;user-select:none}.kept-author{font-family:var(--sans);font-size:.74rem;font-weight:300;letter-spacing:.02em;line-height:1.3;color:#f6f1e8eb;white-space:nowrap;padding:.08rem .38rem;border:0;border-radius:4px;background:#0a0c108c;box-shadow:none;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.65)}.kept-author.is-clickable{cursor:pointer;pointer-events:auto;transition:color .2s ease,background .2s ease,transform .2s ease}.kept-author.is-clickable:hover{color:var(--gold);background:#ffe0a324;transform:translateY(-1px)}.kept-meta .lantern-share-btn{margin-left:0;background:#0a0c108c;opacity:.85}.kept-author.is-active{color:#111;background:var(--gold);box-shadow:0 0 10px #ffe0a399;font-weight:400}.kept-filter-tag{display:inline-flex;align-items:center;gap:.45rem}.kept-filter-reset-btn{background:#ffe0a326;border:1px solid rgba(255,224,163,.4);border-radius:9999px;color:var(--gold);font-family:var(--sans);font-size:.74rem;letter-spacing:.04em;padding:.12rem .6rem;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;transition:all .2s ease}.kept-filter-reset-btn:hover{background:var(--gold);color:#111;box-shadow:0 0 10px #ffe0a380;transform:translateY(-1px)}.kept-filter-close{font-size:.7rem;opacity:.8}.leave-modal{width:min(34rem,92vw);max-width:min(34rem,92vw);margin:auto;touch-action:manipulation;user-select:auto;-webkit-user-select:auto}.leave-modal-box{width:100%;box-sizing:border-box;text-align:left;padding:2.2rem;touch-action:manipulation;user-select:auto;-webkit-user-select:auto}.leave-modal-form{touch-action:manipulation;user-select:auto;-webkit-user-select:auto}.leave-modal-box h2{font-family:var(--serif);font-size:1.45rem;font-weight:400;margin:.3rem 0 .55rem;color:var(--paper);text-align:left}.leave-live{margin:0 0 .85rem;font-family:var(--sans);font-size:.98rem;line-height:1.5;font-weight:400;color:var(--gold);text-align:left}.leave-desc{font-family:var(--sans);font-size:.86rem;line-height:1.7;color:#f6f1e8b8;margin:0 0 1.5rem;font-weight:300;text-align:left}.leave-field{display:block;margin-bottom:.55rem}.leave-limit-note{margin:0;font-family:var(--sans);font-weight:300;font-size:.74rem;line-height:1.6;letter-spacing:.02em;text-align:center;color:#f6f1e875}.leave-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:.45rem}.leave-label{display:block;font-family:var(--sans);font-weight:300;font-size:.74rem;letter-spacing:.14em;color:var(--gold);margin-bottom:.45rem}.leave-label-row .leave-label{margin-bottom:0}.leave-count{font-family:var(--sans);font-weight:300;font-size:.68rem;letter-spacing:.08em;color:#ffce8a7a;flex-shrink:0}.leave-field textarea,.leave-field input{display:block;width:100%;box-sizing:border-box;background:#0a0c12a6;border:1px solid rgba(255,206,138,.25);border-radius:4px;padding:.75rem .95rem;color:var(--paper);font-family:var(--serif);font-size:16px;line-height:1.6;transition:all .25s ease;resize:none}.leave-field textarea{min-height:6.2rem}.leave-field textarea:focus,.leave-field input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 14px #ffce8a38;background:#0a0c12e6}.leave-field textarea::placeholder,.leave-field input::placeholder{color:#f6f1e859;font-family:var(--sans);font-size:.85rem}.leave-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:.85rem;margin-top:1.6rem}.leave-cancel-btn{background:transparent;border:none;color:#f6f1e880;font-family:var(--sans);font-size:.82rem;letter-spacing:.08em;cursor:pointer;padding:.5rem .8rem;touch-action:manipulation;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:color .2s ease}.leave-cancel-btn:hover{color:var(--paper)}.leave-submit-btn{background:#ffce8a2e;border:1px solid var(--gold);color:var(--gold);padding:.58rem 1.4rem;border-radius:4px;font-family:var(--sans);font-size:.86rem;font-weight:400;letter-spacing:.08em;cursor:pointer;touch-action:manipulation;-webkit-appearance:none;-moz-appearance:none;appearance:none;user-select:none;-webkit-user-select:none;transition:all .3s ease}.leave-submit-btn:hover{background:var(--gold);color:#111;box-shadow:0 0 16px #ffce8a66}.dock-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;flex-wrap:wrap}.dock-header h1{margin:0;line-height:1.1;min-width:0}#leave{margin-left:auto;flex-shrink:0;padding:.38rem .95rem;font-size:.82rem;letter-spacing:.06em}.tea-modal{margin:auto;padding:0;background:transparent;border:none;max-width:min(30rem,90vw)}.tea-modal:focus{outline:none}.tea-modal::backdrop{background:#05070cbf;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.tea-modal-box{background:#10121aeb;border:1px solid rgba(255,218,140,.25);border-radius:6px;padding:2.2rem 2rem;text-align:center;box-shadow:0 20px 50px #0009,0 0 30px #ffc47826;max-height:85vh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.tea-modal-box h2{font-family:var(--serif);font-size:1.5rem;font-weight:400;margin:.4rem 0 1rem;color:var(--paper)}.tea-desc{font-family:var(--sans);font-size:.92rem;line-height:1.8;color:#f6f1e8cc;font-weight:300;margin-bottom:1.8rem}.tea-links{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.tea-link{display:block;padding:.75rem 1rem;border-radius:4px;text-decoration:none;font-family:var(--sans);font-size:.88rem;font-weight:400;letter-spacing:.05em;transition:all .3s ease}.tea-link.copy-btn{background:#ffce8a29;color:var(--paper);border:1px solid rgba(255,206,138,.4);cursor:pointer}.tea-link.copy-btn:hover{background:#ffce8a47;border-color:var(--gold);box-shadow:0 0 16px #ffc47859}.tea-link.bmc{background:#fd0;color:#000}.tea-link.bmc:hover{background:#e6c700;box-shadow:0 0 16px #fd06}.copy-toast{font-family:var(--sans);font-size:.82rem;color:var(--gold);background:#ffce8a1a;border:1px solid rgba(255,206,138,.25);padding:.55rem .8rem;border-radius:4px;margin:.8rem 0 1.2rem;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.memory-modal-text{margin:.9rem 0 .8rem;font-family:var(--serif);font-size:1.12rem;line-height:1.75;color:var(--paper);word-break:keep-all;overflow-wrap:break-word;white-space:pre-line}.memory-modal-meta{display:flex;justify-content:center;gap:.6rem;margin:0 0 1.4rem;font-family:var(--sans);font-size:.78rem;color:#f6f1e8b3}.memory-modal-time{color:#f6f1e86b}.memory-modal-actions{display:flex;justify-content:center;align-items:center;gap:.7rem}.memory-lantern-btn{background:transparent;border:1px solid rgba(255,206,138,.5);color:var(--gold);padding:.55rem 1.3rem;border-radius:4px;font-family:var(--sans);font-size:.86rem;letter-spacing:.08em;cursor:pointer;touch-action:manipulation;-webkit-appearance:none;-moz-appearance:none;appearance:none;user-select:none;-webkit-user-select:none;transition:background .3s ease,color .3s ease,box-shadow .4s ease}.memory-lantern-btn:hover{background:#ffce8a1f}.memory-lantern-btn.is-lit{background:#ffce8a33;border-color:var(--gold);color:#fff4dc;box-shadow:0 0 18px #ffce8a73}.memory-lantern-btn:disabled{opacity:.55;cursor:default}.lantern-count{font-family:var(--sans);font-size:.72rem;font-weight:400;letter-spacing:.02em;color:var(--gold);white-space:nowrap;text-shadow:0 0 8px rgba(255,206,138,.55),0 1px 2px rgba(0,0,0,.85);-webkit-user-select:none;user-select:none}.lantern-count[hidden]{display:none}.lantern-star{display:inline-block}.lantern-count[data-glow="1"] .lantern-star{color:#ffe3b0;text-shadow:0 0 4px rgba(255,206,138,.7)}.lantern-count[data-glow="2"] .lantern-star{color:#fff0d2;text-shadow:0 0 6px rgba(255,206,138,.9),0 0 12px rgba(255,196,120,.45)}.lantern-count[data-glow="3"] .lantern-star{color:#fffaf0;text-shadow:0 0 6px rgba(255,214,150,1),0 0 14px rgba(255,196,120,.8),0 0 24px rgba(255,180,100,.45)}.memory-lantern-count{font-size:.86rem}.memory-share-slot .lantern-share-btn{width:30px;height:30px;margin-left:0;opacity:.85}.memory-modal-note{margin:1rem 0 0;font-family:var(--sans);font-size:.8rem;line-height:1.6;color:#f6f1e899}.tea-close{display:block;margin:1.4rem auto 0;text-align:center;background:transparent;border:none;color:#f6f1e88c;font-family:var(--sans);font-size:.85rem;letter-spacing:.08em;cursor:pointer;padding:.5rem 1.4rem;border-radius:9999px;transition:all .2s ease}.tea-close:hover{color:var(--paper);background:#ffffff0d}.biz-reply-notice{font-family:var(--sans);font-size:.72rem;color:#f6f1e873;text-align:center;margin-top:.5rem}.info-modal-box{max-width:min(37.5rem,92vw);text-align:center;padding:2.2rem 2.4rem}.info-modal-box h2{text-align:center;margin-bottom:1.4rem}.info-content-wrap{margin-bottom:1.4rem}.info-service-desc{font-family:var(--serif);font-size:.94rem;line-height:1.95;color:#f6f1e8e0;margin:0 0 1.2rem;text-align:center;word-break:keep-all}.info-contact-card{background:#0a0c128c;border:1px solid rgba(255,206,138,.15);border-radius:6px;padding:.9rem 1.2rem;display:flex;flex-direction:column;align-items:center;gap:.35rem}.info-contact-row{display:flex;align-items:center;gap:.75rem;font-family:var(--sans);font-size:.84rem}.info-contact-label{color:#f6f1e880;font-weight:300;letter-spacing:.04em}.info-contact-mail{color:var(--gold);text-decoration:underline;text-underline-offset:3px;letter-spacing:.02em;transition:opacity .2s ease}.info-contact-mail:hover{opacity:.8}.biz-info-list{background:#0a0c1299;border:1px solid rgba(255,206,138,.15);border-radius:4px;padding:1rem 1.25rem;margin-bottom:1.2rem}.biz-row{display:flex;justify-content:space-between;align-items:baseline;gap:1.25rem;padding:.42rem 0;border-bottom:1px dashed rgba(246,241,232,.08);font-family:var(--sans);font-size:.82rem}.biz-row:last-child{border-bottom:none}.biz-label{color:#f6f1e880;font-weight:300;letter-spacing:.04em;flex-shrink:0;white-space:nowrap}.biz-val{color:var(--paper);font-weight:400;letter-spacing:.02em;text-align:right;word-break:keep-all;overflow-wrap:break-word;line-height:1.4}.legal-nav-tabs{display:flex;align-items:center;justify-content:center;gap:.9rem;margin:1.2rem 0}.legal-tab{background:transparent;border:none;border-bottom:1px solid transparent;color:#f6f1e8a6;font-family:var(--sans);font-size:.82rem;letter-spacing:.06em;padding:.25rem .4rem;cursor:pointer;transition:all .25s ease}.legal-tab:hover{color:var(--gold)}.legal-tab.is-active{color:var(--gold);border-bottom-color:var(--gold)}.legal-sep{color:#f6f1e840;font-size:.75rem;-webkit-user-select:none;user-select:none}.legal-viewer{background:#080a0fd9;border:1px solid rgba(255,206,138,.2);border-radius:4px;padding:1rem 1.2rem;margin-bottom:1.4rem;animation:fadeIn .25s ease}.legal-viewer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,206,138,.15)}.legal-viewer-header h3{margin:0;font-family:var(--serif);font-size:.96rem;font-weight:400;color:var(--gold);letter-spacing:.05em}.legal-v-close{background:transparent;border:none;font-family:var(--sans);font-size:.76rem;color:#f6f1e880;cursor:pointer;padding:.2rem .5rem;transition:color .2s ease}.legal-v-close:hover{color:var(--paper)}.legal-text-body{max-height:230px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;font-family:var(--sans);font-size:.78rem;line-height:1.7;color:#f6f1e8c7;font-weight:300;padding-right:.5rem;text-align:left}.legal-text-body h4{margin:1rem 0 .35rem;font-size:.82rem;color:var(--paper);font-weight:500}.legal-text-body h4:first-child{margin-top:0}.legal-text-body p{margin:.35rem 0}.legal-text-body ul,.legal-text-body ol{margin:.35rem 0 .6rem 1.1rem;padding:0}.legal-text-body li{margin-bottom:.25rem}.legal-text-body strong{color:var(--paper);font-weight:500}.legal-date-tag{display:inline-block;font-size:.72rem;color:var(--gold);margin-bottom:.6rem;opacity:.85}.legal-text-body::-webkit-scrollbar{width:5px}.legal-text-body::-webkit-scrollbar-track{background:#ffffff0a;border-radius:3px}.legal-text-body::-webkit-scrollbar-thumb{background:#ffce8a66;border-radius:3px}.legal-text-body::-webkit-scrollbar-thumb:hover{background:#ffce8ab3}.river-stream{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:4;overflow:hidden;opacity:0;transition:opacity .8s ease}.river-stream.is-visible{opacity:1;transition:opacity .45s ease}.river-stream.is-stream-out{opacity:0;transition:opacity .42s ease}.river-stream.is-switching{opacity:0;transition:opacity .3s ease}.lantern-node{position:absolute;left:0;top:0;pointer-events:auto;cursor:pointer;display:flex;flex-direction:column;align-items:center;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;outline:none;will-change:transform,opacity;transform-origin:center top;transition:filter .35s ease}.lantern-lamp{position:relative;width:20px;height:20px;border-radius:50%;background:radial-gradient(circle,#fffdf2 15%,#fc6 55%,#e88628 90%);box-shadow:0 0 22px 9px #ffb95a99,0 0 48px 20px #ff822847;animation:lampFlicker 3.2s ease-in-out infinite alternate;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.lantern-lamp:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:44px;height:12px;border-radius:50%;background:radial-gradient(ellipse,rgba(255,190,100,.4) 0%,transparent 75%)}.lantern-card{margin-top:8px;padding:.5rem .85rem;background:#0a0c12d9;border:1px solid rgba(255,218,140,.4);border-radius:8px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 6px 26px #000c,0 0 16px #ffc47840;text-align:center;width:max-content;max-width:220px;box-sizing:border-box;opacity:.92;transform:translateY(0);pointer-events:auto;cursor:pointer;transition:box-shadow .35s ease,background .35s ease,max-width .3s ease,border-color .3s ease;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;outline:none}.lantern-card p{margin:0;font-family:var(--serif);font-size:.9rem;font-weight:400;line-height:1.45;color:var(--paper);letter-spacing:.02em;white-space:normal;word-break:keep-all;overflow-wrap:break-word;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-shadow:0 1px 4px rgba(0,0,0,.95),0 0 12px rgba(0,0,0,.85);-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.lantern-card.is-open{max-width:min(280px,85vw);background:#0c0f18f5;border-color:#ffda8ca6;box-shadow:0 8px 32px #000000e0,0 0 24px #ffc47859;z-index:25}.lantern-card.is-open p{display:block;-webkit-line-clamp:unset;line-clamp:unset;overflow:visible}.lantern-card span{display:block;margin-top:6px;font-family:var(--sans);font-size:.82rem;color:var(--gold);opacity:.95;text-shadow:0 1px 3px rgba(0,0,0,.9);cursor:pointer;pointer-events:auto;transition:opacity .2s ease,text-decoration .2s ease;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.lantern-card span:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}.lantern-card-meta{display:flex;align-items:center;justify-content:flex-end;gap:.35rem;margin-top:5px}.lantern-card-meta span{margin-top:0}.lantern-share-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;margin-left:.15rem;background:transparent;border:none;color:var(--gold);cursor:pointer;pointer-events:auto;opacity:.6;border-radius:999px;transition:opacity .2s ease,transform .2s ease,background .2s ease,color .2s ease;flex-shrink:0;-webkit-tap-highlight-color:transparent;outline:none;z-index:2}.lantern-share-btn:before{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border-radius:999px}.lantern-share-btn:hover{opacity:1;color:#fff8eb;background:#ffffff24;transform:scale(1.15);filter:drop-shadow(0 0 5px currentColor)}.lantern-share-btn:active{transform:scale(.92)}.lantern-share-btn .lantern-icon-share{display:inline-block;pointer-events:none}.lantern-share-btn .lantern-icon-check{display:none;pointer-events:none}.lantern-share-btn.is-copied{opacity:1;background:#86efac29}.lantern-share-btn.is-copied .lantern-icon-share{display:none}.lantern-share-btn.is-copied .lantern-icon-check{display:inline-block;color:#86efac;filter:drop-shadow(0 0 6px rgba(134,239,172,.85));animation:lanternSharePop .25s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes lanternSharePop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.lantern-node:hover{z-index:15;filter:brightness(1.25)}.lantern-node:hover .lantern-lamp{box-shadow:0 0 35px 15px #ffd278e6,0 0 80px 35px #ff963280}.lantern-node:hover .lantern-card{opacity:1;border-color:var(--gold);background:#10121af2;box-shadow:0 10px 28px #000c,0 0 24px #ffc47866}.lantern-node[data-season="0"] .lantern-lamp{background:radial-gradient(circle,#fff5f8 15%,#fbcfe8 55%,#f472b6 90%);box-shadow:0 0 20px 8px #f472b68c,0 0 45px 18px #db277740}.lantern-node[data-season="0"] .lantern-card{border-color:#fbcfe866}.lantern-node[data-season="0"] .lantern-card span,.lantern-node[data-season="0"] .lantern-card .lantern-share-btn{color:#fbcfe8}.lantern-node[data-season="1"] .lantern-lamp{background:radial-gradient(circle,#f0fdf4 15%,#a7f3d0 55%,#10b981 90%);box-shadow:0 0 20px 8px #34d3998c,0 0 45px 18px #05966940}.lantern-node[data-season="1"] .lantern-card{border-color:#a7f3d066}.lantern-node[data-season="1"] .lantern-card span,.lantern-node[data-season="1"] .lantern-card .lantern-share-btn{color:#a7f3d0}.lantern-node[data-season="2"] .lantern-lamp{background:radial-gradient(circle,#fff7ed 15%,#fdba74 55%,#ea580c 90%);box-shadow:0 0 20px 8px #fb923c8c,0 0 45px 18px #c2410c40}.lantern-node[data-season="2"] .lantern-card{border-color:#fed7aa66}.lantern-node[data-season="2"] .lantern-card span,.lantern-node[data-season="2"] .lantern-card .lantern-share-btn{color:#fed7aa}.lantern-node[data-season="3"] .lantern-lamp{background:radial-gradient(circle,#f8fafc 15%,#bae6fd 55%,#38bdf8 90%);box-shadow:0 0 20px 8px #38bdf88c,0 0 45px 18px #0284c740}.lantern-node[data-season="3"] .lantern-card{border-color:#bae6fd66}.lantern-node[data-season="3"] .lantern-card span,.lantern-node[data-season="3"] .lantern-card .lantern-share-btn{color:#bae6fd}.lantern-node[data-season="4"] .lantern-lamp{background:radial-gradient(circle,#fffdf2 15%,#fc6 55%,#e88628 90%);box-shadow:0 0 20px 8px #ffb95a8c,0 0 45px 18px #ff822840}.lantern-node[data-season="4"] .lantern-card{border-color:#ffda8c59}.lantern-node[data-season="4"] .lantern-card span,.lantern-node[data-season="4"] .lantern-card .lantern-share-btn{color:var(--gold)}.lantern-node[data-season="5"] .lantern-lamp{background:radial-gradient(circle,#fff 15%,#ffd166 50%,#f59e0b 90%);box-shadow:0 0 24px 10px #ffd166a6,0 0 55px 22px #f59e0b4d}.lantern-node[data-season="5"] .lantern-card{border-color:#ffd16673}.lantern-node[data-season="5"] .lantern-card span,.lantern-node[data-season="5"] .lantern-card .lantern-share-btn{color:#ffd166}.lantern-node[data-season="6"] .lantern-lamp{background:radial-gradient(circle,#fff 15%,#93c5fd 50%,#3b82f6 90%);box-shadow:0 0 24px 10px #93c5fd99,0 0 55px 22px #3b82f64d}.lantern-node[data-season="6"] .lantern-card{border-color:#93c5fd73;background:#0a101ae0}.lantern-node[data-season="6"] .lantern-card span,.lantern-node[data-season="6"] .lantern-card .lantern-share-btn{color:#93c5fd}.lantern-node.is-fresh{animation:freshBirthGlow 2.8s cubic-bezier(.16,1,.3,1) forwards}@keyframes freshBirthGlow{0%{opacity:0;filter:brightness(3.2)}25%{opacity:1;filter:brightness(2)}to{opacity:.92;filter:brightness(1)}}.lantern-node.is-fresh .lantern-lamp{animation:freshBirthLamp 2.8s cubic-bezier(.16,1,.3,1) forwards}@keyframes freshBirthLamp{0%{transform:scale(.5);box-shadow:0 0 50px 25px #ffe6a0f2}35%{transform:scale(1.3);box-shadow:0 0 40px 18px #ffc878cc}to{transform:scale(1)}}.lantern-node.is-fresh .lantern-card{animation:freshBirthCard 2.8s cubic-bezier(.16,1,.3,1) forwards}@keyframes freshBirthCard{0%{transform:scale(.85);opacity:0}30%{transform:scale(1.04);opacity:1}to{transform:scale(1);opacity:.92}}@keyframes lampFlicker{0%{transform:scale(.96);opacity:.88}50%{transform:scale(1.04);opacity:1}to{transform:scale(.98);opacity:.92}}.cycle-veil{position:fixed;top:0;right:0;bottom:0;left:0;background:#06070a;z-index:60;pointer-events:none;opacity:0;transition:opacity 1.3s cubic-bezier(.4,0,.2,1)}.cycle-veil.is-active{opacity:1;pointer-events:auto}.burning-letter-portal{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:25;display:flex;align-items:center;justify-content:center}.burning-letter{position:relative;max-width:min(34rem,88vw);padding:2.2rem 2.6rem;background:radial-gradient(ellipse at center,#1a1612eb,#0c0c10f2);border:1px solid rgba(255,206,138,.5);border-radius:4px;text-align:center;box-shadow:0 16px 50px #000c,0 0 30px #ffc4784d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);animation:burnDissolve 8.8s cubic-bezier(.25,1,.35,1) forwards;will-change:transform,opacity,filter}.burning-letter:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:5px;background:linear-gradient(135deg,#ffdc96cc,#ff8228e6,#ffd26e99);opacity:0;z-index:-1;animation:borderIgnite 8.8s forwards}.burning-letter p{font-family:var(--serif);font-size:1.25rem;font-weight:300;line-height:1.85;letter-spacing:.06em;color:#fffaf0;margin:0 0 1rem;text-shadow:0 0 14px rgba(255,220,150,.45)}.burning-letter span{display:block;font-family:var(--sans);font-size:.84rem;font-weight:300;color:var(--gold);letter-spacing:.12em;opacity:.9}@keyframes burnDissolve{0%{opacity:0;transform:translateY(24px) scale(.92);filter:blur(4px) brightness(1.2)}14%{opacity:1;transform:translateY(0) scale(1);filter:blur(0px) brightness(1)}42%{opacity:1;transform:translateY(0) scale(1);filter:blur(0px) brightness(1.05)}58%{opacity:.95;transform:translateY(-8px) scale(1.02);filter:blur(.5px) brightness(1.7) drop-shadow(0 -8px 25px rgba(255,140,40,.85))}78%{opacity:.45;transform:translateY(-30px) scale(.98);filter:blur(6px) brightness(2.2)}to{opacity:0;transform:translateY(-65px) scale(.93);filter:blur(16px) brightness(3)}}@keyframes borderIgnite{0%,35%{opacity:0}50%,65%{opacity:1}to{opacity:0}}@media(max-width:768px){html,body{background:#0c0e14}:root{--page-gutter: .85rem}.grain{animation:none;opacity:.1}.motes{mix-blend-mode:normal}.wash{mix-blend-mode:normal;opacity:.4}.lantern-card{backdrop-filter:none;-webkit-backdrop-filter:none}.stage:before{content:"";position:absolute;top:0;left:0;right:0;height:7rem;background:linear-gradient(to bottom,#0c0e14 0%,rgba(12,14,20,.85) 30%,rgba(12,14,20,.45) 65%,transparent 100%);pointer-events:none;z-index:3}.gate,.dock,.mark{left:var(--page-gutter);right:var(--page-gutter)}.mark{top:calc(1.05rem + env(safe-area-inset-top,0px));font-size:.78rem;font-weight:500;color:#fff;opacity:.95;text-shadow:0 1px 4px rgba(0,0,0,.95),0 2px 10px rgba(0,0,0,.85)}.top-controls{top:calc(1.05rem + env(safe-area-inset-top,0px));left:var(--content-inset);right:var(--content-inset);gap:.45rem}.top-controls .sound-btn{top:auto;right:auto;font-size:.72rem;padding:.32rem .62rem;letter-spacing:.1em}.login-pill-btn{font-size:.72rem;padding:.32rem .75rem;box-shadow:0 2px 10px #0009}.top-account{font-size:.82rem;gap:.45rem;color:#f6f1e8eb;text-shadow:none}.top-account .user-name{color:inherit;font-weight:400;text-shadow:0 1px 4px rgba(0,0,0,.95),0 2px 10px rgba(0,0,0,.85)}.top-account-bar{background:#ffe0a3cc;box-shadow:0 0 4px #000c}.top-logout-btn{color:#f6f1e8eb;font-weight:400;text-shadow:0 1px 4px rgba(0,0,0,.95),0 2px 10px rgba(0,0,0,.85)}.user-pill-btn{font-size:.72rem;padding:.32rem .68rem}.dock{left:var(--page-gutter);right:var(--page-gutter);width:auto;max-width:none;transform:none;bottom:6.1rem;max-height:calc(100vh - 13rem);overflow-y:auto;padding:.85rem 0 .6rem}.copy{width:100%;max-width:none}.gate{bottom:6.1rem;max-width:none}h1{font-size:clamp(1.8rem,6.5vw,2.6rem)}.line{font-size:.96rem;margin-top:.8rem;line-height:1.65}.gate-live{font-size:.84rem;line-height:1.6}.kept{margin-top:.55rem;max-height:none;font-size:.9rem;line-height:1.48}.dock-header{gap:.65rem;justify-content:space-between}.bottom-dock{left:0;right:0;width:100%;max-width:none;transform:none;bottom:0;display:flex;flex-direction:column;align-items:stretch;gap:.28rem;padding:.38rem .85rem max(calc(env(safe-area-inset-bottom,0px)/2),1.3rem);background:#0c0e14;backdrop-filter:none;-webkit-backdrop-filter:none;border:0;border-top:1px solid rgba(255,206,138,.22);border-radius:16px 16px 0 0;box-shadow:0 100px #0c0e14;pointer-events:auto;overflow:visible;touch-action:none}html.is-standalone .bottom-dock,html.is-ios-standalone .bottom-dock{transform:none;padding-bottom:1.3rem}html.is-standalone .dock,html.is-standalone .gate,html.is-ios-standalone .dock,html.is-ios-standalone .gate{transform:none}html.is-standalone .gate.is-out,html.is-ios-standalone .gate.is-out{transform:translateY(16px)}@media(display-mode:standalone){.bottom-dock{transform:none;padding-bottom:1.3rem}.dock,.gate{transform:none}.gate.is-out{transform:translateY(16px)}}.bottom-dock:after{content:"";position:absolute;left:0;right:0;top:100%;height:140px;background:#0c0e14;pointer-events:none}.seasons{width:100%;display:flex;justify-content:space-between;align-items:center;gap:0}.seasons button{font-size:.78rem;padding:.15rem .1rem .28rem;white-space:nowrap;letter-spacing:.02em;flex:1;text-align:center}.season-flow{left:12%;right:12%}.season-dot{font-size:.65rem;opacity:.25;flex-shrink:0}.dock-actions{width:100%;display:flex;justify-content:space-between;align-items:center;padding-top:.22rem;border-top:1px solid rgba(255,206,138,.1);gap:.45rem}.dock-actions-end{gap:.4rem}.dock-actions-sep{font-size:.7rem;opacity:.45}.gate-footer-bar{bottom:1.2rem;right:var(--content-inset)}.sound-control{flex-shrink:1;min-width:0;gap:.1rem;padding:0;border:0;border-radius:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.sound-control.is-active{border:0;background:transparent;box-shadow:none}.sound-toggle{padding:.1rem .15rem;font-size:.88rem}.sound-volume{width:3.6rem;touch-action:none}.sound-pill-btn,.flow-pill-btn,.tea-pill-btn{padding:.1rem .15rem;font-size:.72rem;letter-spacing:.04em;white-space:nowrap;flex-shrink:0;border:0;border-radius:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.sound-pill-btn:hover,.flow-pill-btn:hover,.tea-pill-btn:hover,.sound-pill-btn.is-active,.flow-pill-btn.is-flowing{background:transparent;border:0;box-shadow:none;transform:none;animation:none}.dock-actions .sound-pill-btn:focus,.dock-actions .sound-pill-btn:focus-visible,.dock-actions .sound-pill-btn:active,.dock-actions .flow-pill-btn:focus,.dock-actions .flow-pill-btn:focus-visible,.dock-actions .flow-pill-btn:active{outline:none;background:transparent;box-shadow:none}.tea-modal-box,.info-modal-box,.leave-modal-box{padding:1.8rem 1.35rem;max-width:92vw;border-radius:8px}.leave-live{font-size:.86rem}.biz-info-list{padding:.8rem .9rem}.biz-row{font-size:.78rem;gap:.8rem;align-items:baseline}.biz-val{max-width:68%;word-break:keep-all;overflow-wrap:break-word;text-align:right}.lantern-lamp{width:18px;height:18px}.lantern-lamp:after{width:28px;height:8px}.lantern-card{margin-top:6px;padding:.5rem .8rem;max-width:min(196px,40vw);border-radius:6px;box-shadow:0 4px 18px #000000bf,0 0 10px #ffc47833}.lantern-card.is-open{max-width:min(260px,80vw)}.lantern-card p{font-size:.92rem;line-height:1.5;letter-spacing:.01em}.lantern-card span{font-size:.76rem;margin-top:.22rem}}.top-controls{position:fixed;top:calc(1.5rem + env(safe-area-inset-top,0px));left:var(--content-inset);right:var(--content-inset);z-index:100;display:flex;align-items:center;justify-content:flex-end;gap:.75rem;min-width:0;pointer-events:none}.top-controls>*{pointer-events:auto;min-width:0;max-width:100%}.top-account{display:flex;align-items:center;gap:.5rem;min-width:0;color:var(--gold);font-family:var(--sans);font-size:.86rem;font-weight:400;letter-spacing:.02em;text-shadow:0 1px 8px rgba(0,0,0,.75)}.top-account-name{display:inline-flex;align-items:center;min-width:0;flex-shrink:1;overflow:hidden;margin:0;padding:0;background:transparent;background-color:transparent;box-shadow:none;border:0;border-radius:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer}.top-account-name:hover .user-name{color:#fff6df}.top-account-bar{width:1px;height:.85em;flex-shrink:0;background:#ffe0a38c}.top-logout-form{display:flex;margin:0;flex-shrink:0}.top-logout-btn{margin:0;padding:0;background:none;border:0;border-radius:0;color:#ffe0a3d1;font:inherit;letter-spacing:.02em;white-space:nowrap;cursor:pointer;transition:color .2s ease,opacity .2s ease}.top-logout-btn:hover{color:#fff6df;opacity:1}.user-pill-btn{display:inline-flex;align-items:center;gap:.45rem;min-width:0;flex-shrink:1;padding:.42rem .95rem;background:#10141ec7;border:1px solid rgba(255,218,140,.35);border-radius:9999px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--gold);font-family:var(--sans);font-size:.82rem;font-weight:400;cursor:pointer;letter-spacing:.04em;transition:all .25s cubic-bezier(.16,1,.3,1)}.user-pill-btn:hover{background:#1c2434e6;border-color:#ffe0a3bf;box-shadow:0 0 16px #ffe0a34d;transform:translateY(-1px)}.user-name{color:inherit;font-weight:400;background:transparent;max-width:min(7.5rem,100%);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-pill-btn{padding:.45rem 1rem;background:#10141ed9;border:1px solid var(--gold);color:var(--gold);border-radius:9999px;font-family:var(--sans);font-size:.82rem;letter-spacing:.05em;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:all .3s ease}.login-pill-btn:hover{background:var(--gold);color:#111;box-shadow:0 0 14px #ffce8a66}.social-login-actions{display:flex;flex-direction:column;gap:.85rem;margin-bottom:1.5rem}.social-btn{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.8rem 1.2rem;border-radius:6px;font-family:var(--sans);font-size:.92rem;font-weight:500;text-decoration:none;transition:all .25s ease}.naver-btn{background:#03c75a;color:#fff;border:1px solid #03c75a}.naver-btn:hover{background:#02b350;box-shadow:0 4px 16px #03c75a59}.google-btn{background:#fff;color:#3c4043;border:1px solid #dadce0}.google-btn:hover{background:#f8f9fa;box-shadow:0 4px 16px #ffffff40}.social-icon{font-weight:700;font-size:1.05rem}.login-terms-notice{font-family:var(--sans);font-size:.78rem;line-height:1.5;color:#dce0e8a6;text-align:center;margin:0 0 1.25rem;word-break:keep-all}.legal-link-btn{background:none;border:none;padding:0 2px;margin:0;font-family:inherit;font-size:inherit;color:#ffda8c;text-decoration:underline;text-underline-offset:3px;cursor:pointer;opacity:.88;transition:opacity .2s ease,color .2s ease}.legal-link-btn:hover{opacity:1;color:#fff2b8}.user-drawer-modal{width:min(32rem,92vw);max-width:min(32rem,92vw);height:min(40rem,calc(100dvh - 2rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)));max-height:calc(100dvh - 2rem - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));margin:auto;overflow:hidden}.user-drawer-modal[open]{display:flex;flex-direction:column}.user-drawer-box{position:relative;display:flex;flex-direction:column;box-sizing:border-box;width:auto;max-width:none;flex:1 1 auto;height:100%;min-height:0;max-height:100%;overflow:hidden;overflow-y:hidden;overscroll-behavior:contain;text-align:left}.drawer-close{position:absolute;top:.85rem;right:.85rem;z-index:2;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:0;border-radius:999px;background:#ffffff0f;color:#f6f1e8b8;cursor:pointer}.drawer-close:hover{opacity:1;transform:none;color:var(--paper);background:#ffffff1a}.drawer-close-x{position:relative;width:.72rem;height:.72rem}.drawer-close-x:before,.drawer-close-x:after{content:"";position:absolute;left:0;top:50%;width:100%;height:1px;background:currentColor}.drawer-close-x:before{transform:translateY(-50%) rotate(45deg)}.drawer-close-x:after{transform:translateY(-50%) rotate(-45deg)}.user-drawer-box .kicker{text-align:center;flex-shrink:0}.user-drawer-box h2{text-align:center;margin-bottom:.4rem;flex-shrink:0}.user-drawer-box .tea-desc{text-align:center;margin-bottom:1.5rem;flex-shrink:0}.drawer-section{margin-bottom:1.4rem;padding-bottom:1.2rem;border-bottom:1px solid rgba(246,241,232,.08);flex-shrink:0}.drawer-section:last-of-type{margin-bottom:.8rem;border-bottom:none;padding-bottom:0}.drawer-label{display:block;font-family:var(--sans);font-size:.82rem;letter-spacing:.08em;color:#f6f1e8a6;margin-bottom:.45rem}.drawer-name-row{display:flex;gap:.5rem;align-items:center}.drawer-input{flex:1;min-width:0;user-select:text;-webkit-user-select:text;background:#0a0e16a6;border:1px solid rgba(246,241,232,.16);border-radius:8px;color:var(--paper);font-family:var(--sans);font-size:16px;padding:.55rem .85rem;outline:none;transition:all .2s ease}.drawer-input:focus{border-color:#ffe0a399;box-shadow:0 0 10px #ffe0a326}.drawer-save-btn{flex-shrink:0;letter-spacing:.06em;padding:.55rem 1.1rem;background:#ffe0a31f;border:1px solid rgba(255,224,163,.35);color:#ffe0a3;border-radius:8px;font-family:var(--sans);font-size:.82rem;cursor:pointer;transition:all .2s ease;white-space:nowrap}.drawer-save-btn:hover{background:#ffe0a3;color:#111;box-shadow:0 0 12px #ffe0a34d}.drawer-msg{font-size:.8rem;margin-top:.4rem;transition:all .2s ease}.drawer-msg.is-success{color:#86efac}.drawer-msg.is-error{color:#fca5a5}.drawer-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}.drawer-tabs{justify-content:flex-start;gap:1.1rem;border-bottom:1px solid rgba(255,224,163,.12)}.drawer-tab{position:relative;background:transparent;border:0;padding:.35rem 0 .55rem;font-family:var(--sans);font-size:.86rem;letter-spacing:.06em;color:#f6f1e880;cursor:pointer;touch-action:manipulation;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;transition:color .2s ease}.drawer-tab:hover{color:#f6f1e8cc}.drawer-tab.is-active{color:var(--paper)}.drawer-tab.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--gold);box-shadow:0 0 6px #ffce8a99}.drawer-tab-count{margin-left:.2rem;font-size:.74rem;color:#ffe0a3bf}.drawer-card-author{font-size:.72rem;color:#f6f1e899;white-space:nowrap}.drawer-badge{font-family:var(--sans);font-size:.75rem;color:#ffe0a3d9;background:#ffe0a31a;padding:.15rem .55rem;border-radius:9999px;border:1px solid rgba(255,224,163,.2)}.drawer-memories-section{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;flex-shrink:1;margin-bottom:.8rem;padding-bottom:0;border-bottom:none}.drawer-memories-scroll{flex:1 1 auto;min-height:0;max-height:none;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-right:.35rem;scrollbar-width:thin;scrollbar-color:rgba(255,224,163,.25) transparent}.drawer-memories-scroll::-webkit-scrollbar{width:4px}.drawer-memories-scroll::-webkit-scrollbar-thumb{background:#ffe0a340;border-radius:4px}.drawer-loading,.drawer-empty{text-align:center;font-family:var(--sans);font-size:.85rem;color:#f6f1e880;padding:1.8rem 1rem;line-height:1.6}.drawer-memories-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}.drawer-memory-card{display:flex;align-items:center;justify-content:space-between;gap:.65rem;padding:.42rem .75rem;min-height:38px;background:#ffffff09;border:1px solid rgba(246,241,232,.08);border-radius:6px;cursor:pointer;transition:opacity .22s ease,transform .22s ease,background .2s ease,border-color .2s ease}.drawer-memory-card.is-leaving{opacity:0;transform:translateY(6px);pointer-events:none}.drawer-memory-card:hover{background:#ffffff0f;border-color:#ffe0a338}.drawer-card-main{display:flex;align-items:baseline;gap:.5rem;min-width:0;flex:1}.drawer-season-tag{font-size:.72rem;color:#ffe0a3;letter-spacing:.06em;font-weight:500;flex-shrink:0}.drawer-card-text{font-family:var(--serif);font-size:.88rem;color:var(--paper);line-height:1.4;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-break:keep-all;flex:1;min-width:0}.drawer-memory-card.is-open{align-items:flex-start}.drawer-memory-card.is-open .drawer-card-main{flex-direction:column;align-items:flex-start;gap:.25rem}.drawer-memory-card.is-open .drawer-card-text{white-space:normal;overflow:visible;line-height:1.55;margin-top:.1rem}.drawer-card-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.drawer-card-date{font-size:.7rem;color:#f6f1e866;white-space:nowrap}.drawer-card-lanterns{font-size:.7rem;color:var(--gold);white-space:nowrap;text-shadow:0 0 8px rgba(255,206,138,.45)}.drawer-retract-btn{background:transparent;border:1px solid rgba(255,224,163,.18);letter-spacing:.04em;color:#f6f1e8a6;font-family:var(--sans);font-size:.72rem;cursor:pointer;padding:.15rem .42rem;border-radius:4px;white-space:nowrap;transition:all .2s ease}.drawer-retract-btn:hover{color:#fca5a5;border-color:#fca5a566;background:#fca5a51a}.drawer-retract-btn[data-armed="1"]{color:#fca5a5;border-color:#fca5a5;background:#fca5a52e;font-weight:500}.drawer-share-btn{background:transparent;border:1px solid rgba(255,206,138,.25);letter-spacing:.04em;color:var(--gold);font-family:var(--sans);font-size:.72rem;cursor:pointer;padding:.15rem .42rem;border-radius:4px;white-space:nowrap;transition:all .2s ease}.drawer-share-btn:hover{background:#ffce8a26;border-color:var(--gold)}.drawer-footer-actions{flex-shrink:0;margin-top:.2rem}.drawer-account-actions{align-self:stretch;display:flex;justify-content:space-between;align-items:center;width:100%;padding-top:.15rem}.drawer-logout-form{display:block;margin:0;padding:0}.drawer-leave-river-btn{background:transparent;border:none;color:#f6f1e852;font-family:var(--sans);font-size:.74rem;letter-spacing:.08em;cursor:pointer;padding:.2rem .6rem;transition:all .2s ease;text-decoration:underline;text-underline-offset:3px}.drawer-leave-river-btn:hover{color:#ffe0a3d9}.drawer-withdraw-btn{background:transparent;border:none;color:#fca5a58c;font-family:var(--sans);font-size:.74rem;letter-spacing:.08em;cursor:pointer;padding:.2rem .6rem;transition:color .2s ease;text-decoration:underline;text-underline-offset:3px}.drawer-withdraw-btn:hover,.drawer-withdraw-btn[data-armed="1"]{color:#fca5a5}.pwa-sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;display:flex;align-items:flex-end;justify-content:center;pointer-events:none}.pwa-sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;letter-spacing:0;background:#05070c75;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;pointer-events:auto;cursor:pointer;transition:opacity .45s ease}.pwa-sheet-backdrop:hover{opacity:0;transform:none}.pwa-sheet.is-open .pwa-sheet-backdrop,.pwa-sheet.is-open .pwa-sheet-backdrop:hover{opacity:1}.pwa-sheet-card{position:relative;width:min(28rem,100%);max-height:min(86vh,40rem);overflow-y:auto;margin-bottom:env(safe-area-inset-bottom,0px);padding:.7rem 1.45rem 1.25rem;background:#10121af0;border:1px solid rgba(255,218,140,.28);border-bottom:0;border-radius:18px 18px 0 0;box-shadow:0 -18px 48px #0000008c,0 0 28px #ffc47814;transform:translateY(110%);pointer-events:auto;text-align:center;user-select:text;-webkit-user-select:text;transition:transform .55s cubic-bezier(.16,1,.3,1)}.pwa-sheet.is-open .pwa-sheet-card{transform:translateY(0)}.pwa-sheet-handle{display:block;width:2.4rem;height:2px;margin:.15rem auto .85rem;border-radius:999px;background:#ffe0a373}.pwa-sheet-card h2{font-family:var(--serif);font-size:1.45rem;font-weight:400;letter-spacing:.02em;margin:.35rem 0 .55rem}.pwa-sheet-lead{margin:0;font-family:var(--sans);font-weight:300;font-size:.9rem;line-height:1.65;color:#f6f1e8c7}.pwa-tabs{display:grid;grid-template-columns:1fr 1fr;margin:.95rem 0 .85rem;border-bottom:1px solid rgba(255,218,140,.22)}.pwa-tabs button{letter-spacing:.08em;font-size:.84rem;padding:.5rem .3rem .65rem;color:#f6f1e86b;border-bottom:1px solid transparent;margin-bottom:-1px;border-radius:0;outline:none}.pwa-tabs button:focus,.pwa-tabs button:focus-visible{outline:none}.pwa-tabs button[aria-selected=true]{color:var(--gold);border-bottom-color:var(--gold)}.pwa-tabs button:hover{opacity:1;transform:none;color:var(--paper)}.pwa-sheet-note,.pwa-native-note{margin:0 0 .65rem;font-family:var(--sans);font-weight:300;font-size:.78rem;line-height:1.5;color:#f6f1e89e}.pwa-sheet-steps{margin:0;padding:.85rem .95rem .85rem 2.05rem;text-align:left;list-style:decimal;border:1px solid rgba(255,218,140,.16);border-radius:8px;background:#ffe0a30a;font-family:var(--sans);font-weight:300;font-size:.86rem;line-height:1.6;letter-spacing:0;color:#f6f1e8e6}.pwa-sheet-steps b{color:var(--gold);font-weight:400}.pwa-sheet-steps li+li{margin-top:.4rem}.pwa-sheet-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1.15rem}.pwa-sheet-actions button{letter-spacing:.06em;touch-action:manipulation}#pwa-install-week{color:#f6f1e87a;font-size:.78rem}#pwa-install-week:hover{color:var(--paper);opacity:1}#pwa-install-go{background:#ffce8a29;border:1px solid var(--gold);color:var(--gold);border-radius:4px;padding:.55rem 1.15rem;font-size:.86rem}#pwa-install-go:hover{background:var(--gold);color:#111;opacity:1}#pwa-install-go:disabled{opacity:.55;cursor:wait}@media(min-width:720px){.pwa-sheet{padding:0 1.25rem 1.35rem}.pwa-sheet-card{border-bottom:1px solid rgba(255,218,140,.28);border-radius:16px;margin-bottom:.4rem}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.shared-memory-modal{max-width:min(32rem,92vw)}.shared-memory-box{border-color:#ffda8c73;box-shadow:0 25px 60px #000000bf,0 0 35px #ffce8a33;padding:2.4rem 2rem 2rem}.shared-memory-quote{font-family:var(--serif);font-size:1.28rem;line-height:1.85;color:var(--gold-light, #fff3dc);margin:1.5rem 0 1.2rem;padding:0 .8rem;word-break:keep-all;overflow-wrap:break-word}.shared-memory-author{display:flex;align-items:center;justify-content:center;gap:.8rem;font-family:var(--sans);font-size:.88rem;color:#f6f1e8b8;margin-bottom:2rem}.shared-author-date{font-size:.78rem;color:#f6f1e873}.shared-memory-actions{display:flex;align-items:center;justify-content:center;gap:.85rem}.shared-memory-actions button{min-width:7.5rem}
