:root{color-scheme:dark;--bg:#102e35;--cream:#fff4dc;--muted:#b9c9c7;--gold:#e8bd71;--line:#ffffff20}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#23484e 0,var(--bg) 55%);color:var(--cream);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100dvh}a{color:inherit}button,input{font:inherit}button,a,input{touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #fff4dc;outline-offset:5px}h1{font:500 clamp(2.2rem,4vw,3.6rem)/1.12 Georgia,serif;letter-spacing:-.035em;margin:.4em 0}.gold{color:var(--gold)}.eyebrow{font-size:.65rem;font-weight:650;letter-spacing:.23em;color:var(--gold)}.calendar-shell{max-width:1700px;margin:auto;padding:0 30px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:500 1.3rem Georgia,serif}.brand img{border-radius:11px}.brand small{display:block;font:9px/1.5 -apple-system,sans-serif;letter-spacing:.15em;color:var(--muted);margin-top:4px}.topbar form{margin:0}.quiet{background:none;border:0;color:var(--muted);font-size:.8rem;text-decoration:none;cursor:pointer;padding:12px}.quiet:hover{color:var(--cream)}.heading{text-align:center;padding:20px 0 16px}.heading h1{margin:7px 0 11px}.heading>p:last-child{color:var(--muted);font-size:.85rem;margin:0}.mobile-break{display:none}.scene-section{border:1px solid #e8bd7155;border-radius:16px;overflow:hidden;box-shadow:0 22px 80px #0005}.scene{position:relative;width:100%;line-height:0}.scene-art{display:block;width:100%;height:auto}.door-hit{position:absolute;border:0;border-radius:25% 25% 7% 7%;display:block;background:transparent;transition:box-shadow .2s,background .2s;cursor:pointer;line-height:normal}.door-hit:hover,.door-hit:focus-visible{background:#fff1b526;box-shadow:0 0 0 2px #ffe4a5,0 0 22px #ffcf71cc;outline:none}.door-hit.available{box-shadow:0 0 0 2px #ffe1a0,0 0 16px #ffcf7199}.door-hit.visited:after{content:'✓';position:absolute;right:-5px;top:-5px;background:#173d35;border:1px solid var(--gold);color:var(--cream);border-radius:50%;width:20px;height:20px;text-align:center;font:13px/18px sans-serif}.calendar-help{display:flex;justify-content:space-between;gap:15px;padding:15px 3px;font-size:.72rem;color:var(--muted)}.calendar-help>span:first-child{display:flex;align-items:center;gap:8px}.status-dot{height:6px;width:6px;background:var(--gold);border-radius:50%}.door-list{border-top:1px solid var(--line);padding:10px 0;color:var(--muted);font-size:.8rem}.door-list summary{cursor:pointer;padding:10px 0}#day-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:8px;padding:12px 0}#day-grid a{display:grid;place-items:center;min-height:44px;border:1px solid var(--line);border-radius:8px;text-decoration:none}#day-grid a.available{border-color:var(--gold);color:var(--gold)}footer{text-align:center;color:var(--muted);font-size:.7rem;padding:20px 0 30px}footer span{color:var(--gold);padding-left:5px}.welcome{min-height:100dvh;display:grid;place-items:center;padding:30px 20px}.card{background:linear-gradient(145deg,#23474df5,#123038fa);border:1px solid #e8bd7140;border-radius:22px;box-shadow:0 25px 80px #0003;text-align:center;padding:45px 38px}.login-card{width:min(100%,460px)}.welcome-icon{border-radius:23px;margin-bottom:12px}.intro{color:var(--muted);font-size:1rem}.login-card form{text-align:left;margin-top:30px}.login-card label{display:block;font-size:.8rem;margin-bottom:8px;color:var(--cream)}input{width:100%;background:#0c262e;border:1px solid #ffffff38;border-radius:10px;padding:14px;color:var(--cream);font-size:16px}input:focus{border-color:var(--gold);outline:2px solid #e8bd7133}.button{display:block;width:100%;border:0;border-radius:10px;background:var(--gold);color:#173239;text-decoration:none;padding:14px 20px;font-size:.9rem;font-weight:650;cursor:pointer;text-align:center;margin-top:16px}.button:hover{background:#f3d294}.button span{margin-left:10px}.fine{font-size:.73rem;color:var(--muted);margin:26px 0 0}.error{font-size:.8rem;color:#ffb4a3}.surprise-card{max-width:610px}.surprise-card>p:not(.eyebrow):not(.big-symbol){color:var(--muted)}.big-symbol{font-size:3.2rem;margin:0 0 10px}.day-shell{max-width:850px;margin:auto;padding:30px 24px}.back-link{display:inline-block;font-size:.85rem;color:var(--muted);text-decoration:none;margin-bottom:24px}.day-card{padding:38px}.day-medallion{font:2.7rem Georgia,serif;color:var(--gold);border:1px solid #e8bd7155;border-radius:50%;width:80px;height:80px;display:grid;place-items:center;margin:20px auto}.day-content{color:var(--cream);font-size:1.05rem;line-height:1.8}.day-content figure{margin:25px 0}.day-content img,.day-content video{display:block;max-width:100%;max-height:75vh;margin:auto;border-radius:12px}.day-content audio{width:100%}.day-content figcaption{font-size:.8rem;color:var(--muted);margin:8px 0}.signature{font:italic 1.2rem Georgia,serif;color:var(--gold);margin-top:32px}.day-nav{display:flex;justify-content:space-between;margin-top:15px}@media(min-width:1000px) and (max-height:850px){.heading{padding:10px 0 12px}.heading h1{font-size:2.3rem}.calendar-shell{max-width:min(1700px,calc((100dvh - 255px)*1.777 + 60px))}}@media(max-width:700px){.calendar-shell{padding:0 12px}.topbar{padding:12px 0}.brand{font-size:1.1rem}.brand small{font-size:7px}.brand img{width:36px;height:36px}.heading{padding:20px 6px}.heading h1{font-size:2.3rem}.heading>p:last-child{font-size:.75rem}.calendar-help{font-size:.65rem;flex-wrap:wrap;gap:4px}.scene-section{border-radius:10px}#day-grid{grid-template-columns:repeat(6,1fr)}.card{padding:30px 23px}.day-shell{padding:20px 15px}.door-hit.visited:after{width:14px;height:14px;font:10px/12px sans-serif}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
