:root,[data-theme=dark]{--luna-overlay-2: rgba(255, 255, 255, .02);--luna-overlay-3: rgba(255, 255, 255, .03);--luna-overlay-4: rgba(255, 255, 255, .04);--luna-overlay-5: rgba(255, 255, 255, .05);--luna-overlay-6: rgba(255, 255, 255, .06);--luna-overlay-8: rgba(255, 255, 255, .08);--luna-overlay-10: rgba(255, 255, 255, .1);--luna-overlay-12: rgba(255, 255, 255, .12);--luna-overlay-15: rgba(255, 255, 255, .15);--luna-overlay-20: rgba(255, 255, 255, .2);--luna-fallback-bg: #1a1520;--luna-fallback-text: #f0e4d8;--luna-fallback-muted: #a8899e}[data-theme=light]{--luna-overlay-2: rgba(0, 0, 0, .03);--luna-overlay-3: rgba(0, 0, 0, .04);--luna-overlay-4: rgba(0, 0, 0, .06);--luna-overlay-5: rgba(0, 0, 0, .07);--luna-overlay-6: rgba(0, 0, 0, .08);--luna-overlay-8: rgba(0, 0, 0, .1);--luna-overlay-10: rgba(0, 0, 0, .12);--luna-overlay-12: rgba(0, 0, 0, .15);--luna-overlay-15: rgba(0, 0, 0, .18);--luna-overlay-20: rgba(0, 0, 0, .25);--luna-fallback-bg: #f8f5f2;--luna-fallback-text: #2a2030;--luna-fallback-muted: #6b5f75}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;-webkit-text-size-adjust:100%;color-scheme:dark}body{font-family:DM Sans,sans-serif;line-height:1.5;background:#1a1520;color:#f0e4d8;overflow-x:hidden;min-height:100vh;min-height:100dvh;padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}#root{min-height:100vh;min-height:100dvh}h1,h2,h3,h4,h5,h6{font-family:Cormorant Garamond,serif;font-weight:400;line-height:1.2}button{font-family:inherit;border:none;background:none;cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent}input{font-family:inherit;border:none;background:none;color:inherit;outline:none;-webkit-tap-highlight-color:transparent}input[type=date]{-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.7);cursor:pointer}[data-theme=light] input[type=date]::-webkit-calendar-picker-indicator{filter:none}::selection{background:#c4687a59;color:#f0dde3}[data-theme=light] ::selection{background:#c4687a40;color:#2a2030}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}[data-theme=light] ::-webkit-scrollbar-thumb{background:#0000001a}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#0003}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent}.luna-no-scrollbar::-webkit-scrollbar{display:none}.luna-no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}[data-theme=light] *{scrollbar-color:rgba(0,0,0,.12) transparent}:focus-visible{outline:2px solid currentColor;outline-offset:2px;border-radius:4px}:focus:not(:focus-visible){outline:none}[role=tabpanel]:focus{outline:none}@keyframes luna-slide-left{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes luna-slide-right{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes luna-slide-down{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.luna-phase-header{display:flex;flex-direction:column;align-items:center}.luna-checkin-grid{display:flex;flex-direction:column;gap:16px}.luna-onboarding{width:100%;max-width:380px}@media(min-width:768px){.luna-phase-header{flex-direction:row;justify-content:center;gap:48px;padding:32px 32px 0}.luna-phase-header .luna-ring-col{flex-shrink:0}.luna-phase-header .luna-info-col{text-align:left;padding-top:12px}.luna-onboarding{max-width:480px;margin:0 auto}}@media(min-width:1024px){.luna-phase-header{gap:64px;padding:40px 40px 0}.luna-checkin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.luna-checkin-grid .luna-span-full{grid-column:1 / -1}.luna-content-panel{max-width:900px!important}.luna-onboarding{max-width:540px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.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}.skip-link{position:absolute;top:-100%;left:50%;transform:translate(-50%);padding:8px 16px;background:#f0e4d8;color:#1a1520;border-radius:0 0 8px 8px;font-size:14px;font-weight:600;z-index:1000;text-decoration:none;transition:top .2s ease}.skip-link:focus{top:0}
