.landing{flex-direction:column;min-height:100dvh;display:flex}.landing-main{text-align:center;padding:var(--s-10) var(--gutter) calc(var(--s-16) + env(safe-area-inset-bottom));flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.landing-title{letter-spacing:-.03em;margin-top:var(--s-2);font-size:clamp(44px,12vw,64px)}.landing-pitch{margin-top:var(--s-4);color:var(--text-2);font-size:18px;line-height:1.6}.landing-pitch span{display:block}.landing-theme{margin-bottom:var(--s-4)}.landing-action{margin-top:var(--s-8);gap:var(--s-3);width:100%;max-width:340px;display:grid}.landing-btn{min-height:56px;font-size:17px}.landing-btn:disabled{opacity:.6;cursor:default}.landing-note{color:var(--text-2);padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--navy-2)}#landing-backdrop.landing-backdrop{z-index:0;opacity:0;pointer-events:none;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle,#000 30%,#0000 72%);mask-image:radial-gradient(circle,#000 30%,#0000 72%)}.landing-still{z-index:-1;opacity:.32;pointer-events:none;background:url(/globe.webp) 50%/100vmin 100vmin no-repeat;transition:none;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle,#000 30%,#0000 72%);mask-image:radial-gradient(circle,#000 30%,#0000 72%)}@media (width<=600px){.landing-still{background-image:url(/globe-sm.webp)}}#landing-backdrop.is-ready+.landing-still{visibility:hidden;opacity:0}#landing-backdrop.is-ready{opacity:.32}.landing-backdrop canvas{width:100%;height:100%;display:block}#screen-landing{z-index:1;position:relative}.landing-streak{margin-top:var(--s-5);font-size:14px;font-weight:var(--weight-bold);color:var(--text)}.landing-streak+.landing-action{margin-top:var(--s-3)}.yday{margin-top:var(--s-4);width:100%;max-width:340px}.yday-toggle{font-size:14px}.yday-panel{margin-top:var(--s-3);padding:var(--s-2) var(--s-4);border:1px solid var(--border);border-radius:var(--r-lg);text-align:left;background:#0f2a47eb}.yday-list{margin:0;padding:0;list-style:none}.yday-list li{align-items:flex-start;gap:var(--s-3);padding:var(--s-3) 0;display:flex}.yday-list li+li{border-top:1px solid var(--border)}.yday-num{width:20px;color:var(--text-muted);flex:none;font-size:14px}.yday-body{flex:1;min-width:0}.yday-body strong{font-size:14px;display:block}.yday-body span{color:var(--text-2);margin-top:2px;font-size:12px;line-height:1.4;display:block}.yday-points{flex:none;align-items:center;gap:6px;font-size:14px;display:flex}
