:root{--bg:#fff;--ink:#000;--ink-soft:#444;--rule:#000;--banner-h:44px;--font:"Times New Roman", Times, "Nimbus Roman", "Noto Serif", "Noto Naskh Arabic", "Noto Serif Devanagari", "Noto Serif CJK SC", "Noto Serif CJK JP", "Noto Serif KR", serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0}body{min-height:100dvh;overflow-x:hidden}button{font-family:inherit}.banner{height:var(--banner-h);background:var(--bg);border-bottom:1px solid var(--rule);z-index:10;align-items:center;gap:12px;width:100%;max-width:calc(44rem + 32px);margin:0 auto;padding:0 16px;font-size:14px;display:flex;position:fixed;inset:0 0 auto}.banner:after{content:"";border-bottom:1px solid var(--rule);pointer-events:none;width:100vw;position:absolute;bottom:-1px;left:50%;transform:translate(-50%)}.banner-text{appearance:none;text-align:left;min-width:0;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:0;flex:1;padding:0;font-size:15px;overflow:hidden}.banner-text:hover{text-decoration:underline}.banner-cta{appearance:none;background:var(--ink);color:var(--bg);border:1px solid var(--ink);cursor:pointer;white-space:nowrap;border-radius:999px;padding:5px 12px;font-size:13px}.banner-cta:hover{background:var(--bg);color:var(--ink)}@media (max-width:480px){.banner-text{font-size:13px}}.langmenu{position:relative}.langmenu-btn{appearance:none;background:var(--bg);color:var(--ink);border:1px solid var(--ink);cursor:pointer;white-space:nowrap;border-radius:999px;padding:5px 12px;font-size:13px}.langmenu-btn:hover{background:var(--ink);color:var(--bg)}.langmenu-list{background:var(--bg);border:1px solid var(--ink);z-index:20;border-radius:10px;min-width:160px;max-height:min(70vh,480px);margin:0;padding:6px 0;list-style:none;position:absolute;top:calc(100% + 18px);right:0;overflow-y:auto}.langmenu-list button{appearance:none;text-align:start;width:100%;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:8px 16px;font-size:15px}.langmenu-list button:hover,.langmenu-list button.active{background:var(--ink);color:var(--bg)}.stage{min-height:100dvh;padding:calc(var(--banner-h) + 24px) 16px 32px;flex-direction:column;justify-content:center;align-items:center;gap:28px;display:flex}.defs{width:0;height:0;position:absolute;overflow:hidden}.quote-slot{width:100%;max-width:44rem;transition:height .65s cubic-bezier(.3,.7,.2,1);overflow:visible}.today-label{letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);text-align:center;margin:0 0 14px;font-size:12px}.quote{text-align:start;transform-origin:50% 60%;width:100%;margin:0;transition:transform 2.3s cubic-bezier(.16,.7,.2,1);position:relative;transform:scale(.84)translateY(16px)}.quote.phase-in{transform:none}.quote.phase-out{transition-duration:.38s;transform:scale(.97)}.quote-text{text-wrap:pretty;filter:url(#liquid);will-change:filter;max-width:100%;margin:0;font-size:clamp(1.55rem,3.4vw,2rem);line-height:1.3}.quote.settled .quote-text{filter:none;will-change:auto}.mark{vertical-align:baseline;width:0;height:0;display:inline-block}.line{white-space:nowrap;display:block}.line.first{text-align:start}.line.wrapped{text-align:end}.word{opacity:0;filter:blur(8px);transition:opacity 1.2s cubic-bezier(.2,.7,.2,1),filter 1.4s cubic-bezier(.2,.7,.2,1),transform 1.2s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--d,0s) + var(--i) * 34ms);display:inline;transform:translateY(5px)}.quote.phase-in .word{opacity:1;filter:blur();transform:translateY(0)}.quote.phase-out .word{opacity:0;filter:blur(10px);transition-duration:.38s,.38s,.38s;transition-delay:calc(var(--i) * 6ms);transform:translateY(-6px)}.lead-wrap{font-size:clamp(3rem,8vw,4.6rem);line-height:.95}.lead{letter-spacing:-.015em;font-size:1em;font-weight:400;line-height:.95}.rest{font-size:1em}.wash{pointer-events:none;mix-blend-mode:screen;filter:url(#liquid)blur(12px);opacity:.55;background:radial-gradient(closest-side,#fff 0 32%,#0000 70%) 12% 18%/36% 48% no-repeat,radial-gradient(closest-side,#fff 0 28%,#0000 70%) 72% 30%/30% 42% no-repeat,radial-gradient(closest-side,#fff 0 30%,#0000 70%) 40% 78%/42% 46% no-repeat,radial-gradient(closest-side,#fff 0 26%,#0000 70%) 88% 82%/26% 36% no-repeat;animation:2.4s cubic-bezier(.3,.6,.3,1) forwards wash;position:absolute;inset:-10% -6%}.quote.phase-out .wash,.quote.phase-pre .wash{opacity:0;animation:none}@keyframes wash{0%{opacity:.55;transform:translate(-1.5%,1%)scale(1.03)}55%{opacity:.3;transform:translate(1%,-.5%)scale(1)}to{opacity:0;transform:translate(0,0)scale(.98)}}.attribution{color:var(--ink-soft);text-align:start;margin:18px 0 0;font-size:.95rem}.attribution .author{font-variant:small-caps;letter-spacing:.04em;color:var(--ink)}.attribution .work{font-style:italic}.controls{flex-direction:column;align-items:center;gap:10px;display:flex}.reroll{appearance:none;background:var(--bg);color:var(--ink);border:1px solid var(--ink);letter-spacing:.02em;cursor:pointer;border-radius:999px;padding:10px 22px;font-size:15px}.reroll:hover{background:var(--ink);color:var(--bg)}.reroll:disabled{opacity:.5;cursor:default}.error{color:#8a0000;margin:0;font-size:14px}.signup{border:1px solid var(--ink);background:var(--bg);width:min(92vw,420px);color:var(--ink);font-family:var(--font);border-radius:10px;padding:0}.signup::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffffb8}.signup-inner{padding:28px 24px 22px;position:relative}.signup-close{appearance:none;cursor:pointer;color:var(--ink);background:0 0;border:0;font-size:24px;line-height:1;position:absolute;top:8px;right:10px}.signup h2{margin:0 24px 6px 0;font-size:1.5rem;font-weight:400;line-height:1.15}.signup-sub{color:var(--ink-soft);margin:0 0 18px;font-style:italic}.field{margin-bottom:14px;display:block}.field-label{margin-bottom:6px;font-size:14px;display:block}.field-hint{color:var(--ink-soft);margin-left:6px;font-size:13px;font-style:italic}.field input{width:100%;font:inherit;border:1px solid var(--ink);background:var(--bg);color:var(--ink);border-radius:6px;padding:10px 12px;font-size:16px}.field input:focus{outline:2px solid var(--ink);outline-offset:1px}.signup-submit{appearance:none;background:var(--ink);width:100%;color:var(--bg);border:1px solid var(--ink);cursor:pointer;border-radius:999px;margin-top:4px;padding:12px 16px;font-size:16px}.signup-submit:hover{background:var(--bg);color:var(--ink)}.signup-submit:disabled{opacity:.5;cursor:default}.consent{color:var(--ink-soft);margin:12px 0 0;font-size:12.5px}.signup-done{margin:8px 0 4px;font-size:1.1rem}@media (prefers-reduced-motion:reduce){.quote-text,.wash{animation:none;filter:none!important}.wash{display:none}.word{filter:none;transition-duration:.3s;transition-delay:0s;transform:none}}
