@tailwind base;@tailwind components;@tailwind utilities;.skip-links{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;z-index:9999}.skip-link{display:inline-block;padding:8px 16px;color:#fff;text-decoration:none;font-weight:500;border-right:1px solid #333}.skip-link:focus{position:fixed;top:0;left:0;width:auto;height:auto;padding:12px 16px;background:#e1d9a8;color:#050c2d;text-decoration:none;font-weight:600;border-radius:4px;z-index:10000;outline:3px solid #B1A873;outline-offset:2px;box-shadow:0 4px 12px #0000004d}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.live-region{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}body.keyboard-navigation *:focus{outline:3px solid #E1D9A8!important;outline-offset:2px!important;border-radius:4px}body.keyboard-navigation button:focus{outline:3px solid #E1D9A8!important;outline-offset:2px!important;box-shadow:0 0 0 6px #e1d9a84d!important}body.keyboard-navigation select:focus{outline:3px solid #E1D9A8!important;outline-offset:1px!important;box-shadow:0 0 0 4px #e1d9a833!important}.programmatic-focus{outline:3px solid #B1A873!important;outline-offset:2px!important;animation:focusPulse 1s ease-in-out}@keyframes focusPulse{0%,to{box-shadow:0 0 #b1a873b3}50%{box-shadow:0 0 0 8px #b1a87300}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body.reduced-motion *,body.reduced-motion *:before,body.reduced-motion *:after{animation:none!important;transition:none!important}body.high-contrast{filter:contrast(1.5)}body.high-contrast button{border:2px solid #FFFFFF!important}body.high-contrast .btn:hover{background:#fff!important;color:#000!important}button,.btn,select,input,a{min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;position:relative}.time-picker-simple select{min-height:52px;min-width:60px;padding:12px 8px;font-size:18px;text-align:center;border:2px solid rgba(225,217,168,.3);border-radius:8px;background:#0003;color:#e1d9a8;cursor:pointer}.time-picker-simple select:focus{border-color:#e1d9a8;background:#e1d9a81a}.result-btn:focus{transform:scale(1.02);outline:3px solid #E1D9A8;outline-offset:4px}body.screen-reader .result-item:after{content:". Press Enter to add to calendar, or use arrow keys to navigate.";position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}:root{--bg-0: #050C2D;--bg-1: #0F1538;--bg-2: #202646;--bg-gradient: radial-gradient(circle at 85% 15%, rgba(148, 163, 184, .15) 0%, transparent 25%), radial-gradient(ellipse at 20% 80%, rgba(79, 70, 229, .08) 0%, transparent 60%), radial-gradient(ellipse at 90% 70%, rgba(67, 56, 202, .06) 0%, transparent 50%), linear-gradient(160deg, #050C2D 0%, #0f172a 30%, #1e293b 70%, #334155 100%);--fg-0: #FFFFFF;--fg-1: #DDD;--fg-2: #545973;--primary: #E1D9A8;--primary-hover: #ebe5c1;--primary-border: #B1A873;--title-color: #FFDD88;--success: #68A68A;--warning: #B89A5C;--error: #B07070;--border: #1C2248;--shadow: rgba(0,0,0,.3);--radius: 12px;--wheel-bg: #1C1C1E;--wheel-highlight: #313034;--wheel-text-active: #D1D1D6;--wheel-text-muted: #8E8E93;--wheel-item-height: 48px;--wheel-visible-count: 5;--wheel-gap: 18px;--wheel-font-size: 30px;--wheel-radius: 9999px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{height:100%;background-color:var(--bg-0);-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;padding:0;height:100%;font-family:var(--font-family);background:var(--bg-gradient);color:var(--fg-0);line-height:1.5;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;font-display:swap;text-rendering:optimizeSpeed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;top:8%;right:12%;width:80px;height:80px;background-image:url(../../../lun.png);background-size:contain;background-position:center;background-repeat:no-repeat;pointer-events:none;z-index:1;animation:moonGlow 12s ease-in-out infinite alternate;filter:drop-shadow(0 0 30px rgba(255,255,240,.22)) drop-shadow(0 0 60px rgba(255,255,240,.11));will-change:transform,opacity;transform:translateZ(0)}body:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(2px 2px at 15% 25%,rgba(255,255,255,.8),transparent),radial-gradient(1px 1px at 85% 15%,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 25% 40%,rgba(255,255,255,.4),transparent),radial-gradient(2px 2px at 75% 30%,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 60% 80%,rgba(255,255,255,.3),transparent),radial-gradient(1px 1px at 40% 60%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 90% 70%,rgba(255,255,255,.4),transparent),radial-gradient(2px 2px at 30% 70%,rgba(255,255,255,.6),transparent);background-repeat:repeat;background-size:1200px 800px,800px 600px,600px 400px,900px 700px,400px 300px,500px 350px,350px 250px,700px 500px;animation:floatParticles 80s linear infinite;pointer-events:none;z-index:1}@keyframes moonGlow{0%{opacity:.85;transform:scale(1) translateY(0)}to{opacity:1;transform:scale(1.03) translateY(-1px)}}@keyframes floatParticles{0%{transform:translate(0) translateY(0)}25%{transform:translate(-10px) translateY(-5px)}50%{transform:translate(5px) translateY(-10px)}75%{transform:translate(-5px) translateY(-2px)}to{transform:translate(0) translateY(0)}}.selectable,input,textarea,[contenteditable]{-webkit-user-select:text;user-select:text}html,body{overflow:visible!important;overflow-y:auto!important;height:auto!important;max-height:none!important}#app,.app-container{min-height:100dvh!important;height:auto!important;overflow-y:auto!important;overflow:visible!important;position:relative;background:var(--bg-gradient);z-index:10}.brand-header{text-align:center;margin-bottom:2.5rem;animation:fadeInDown .8s ease-out}.logo{display:flex;align-items:center;justify-content:center;gap:.75rem;margin:0 0 .75rem}.moon-icon{font-size:clamp(32px,8vw,48px);line-height:1;filter:drop-shadow(0 0 20px rgba(255,223,128,.6)) drop-shadow(0 0 40px rgba(255,223,128,.3));animation:moonGlow 3s ease-in-out infinite}.logo-text{font-size:clamp(28px,7vw,42px);font-weight:700;margin:0;background:linear-gradient(135deg,#f4d03f,#ffe680,#f8dc5c,#ffe680,#f4d03f);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em;line-height:1;filter:drop-shadow(0 2px 12px rgba(244,208,63,.4)) drop-shadow(0 4px 24px rgba(244,208,63,.2));animation:shimmer 4s ease-in-out infinite}.slogan{font-size:clamp(13px,3.2vw,15px);font-weight:400;color:#9db4ffd9;text-align:center;line-height:1.5;letter-spacing:.3px;font-style:italic;text-shadow:0 2px 8px rgba(0,0,0,.4),0 0 20px rgba(157,180,255,.2);max-width:320px;margin:0 auto}@keyframes moonGlow{0%,to{filter:drop-shadow(0 0 20px rgba(255,223,128,.6)) drop-shadow(0 0 40px rgba(255,223,128,.3));transform:scale(1)}50%{filter:drop-shadow(0 0 30px rgba(255,223,128,.8)) drop-shadow(0 0 60px rgba(255,223,128,.4));transform:scale(1.05)}}@keyframes shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.main-question{font-size:clamp(18px,4.5vw,22px);font-weight:500;color:var(--fg-0);margin:1.5rem 0 1rem;text-align:center;line-height:1.3}h1,.title{font-size:clamp(24px,6vw,36px);font-weight:600;color:var(--title-color);margin:0;text-align:center;line-height:1.2;letter-spacing:-.02em}h2,.subtitle{font-size:clamp(18px,4vw,24px);font-weight:500;color:var(--fg-1);margin:0 0 1rem;text-align:center;line-height:1.3}.description{font-size:16px;color:var(--fg-1);text-align:center;line-height:1.5;margin:0 0 2rem;opacity:.9}.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;background:var(--primary);color:var(--bg-0);border:2px solid var(--primary-border);border-radius:var(--radius);font-size:18px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1);min-height:44px;min-width:44px;touch-action:manipulation;transform:translateZ(0);will-change:transform,background-color}.btn.primary{background:linear-gradient(135deg,#f4d03f,#e8c547);color:#0b1026;border:none;box-shadow:0 4px 20px #f4d03f4d,0 2px 8px #f4d03f33;font-weight:700;letter-spacing:.3px}.btn.primary:hover,.btn.primary:focus{background:linear-gradient(135deg,#f8dc5c,#edd05a);transform:translateY(-3px);box-shadow:0 8px 30px #f4d03f66,0 4px 16px #f4d03f4d,0 0 40px #f4d03f26;outline:none}.btn.primary:active{transform:translateY(-1px);box-shadow:0 4px 20px #f4d03f4d,0 2px 8px #f4d03f33}.btn:hover,.btn:focus{background:var(--primary-hover);border-color:var(--primary);transform:translateY(-2px);box-shadow:0 8px 24px #e1d9a84d;outline:none}.btn:active{transform:translateY(0);box-shadow:0 4px 12px #e1d9a833}.btn.secondary{background:#0f172a99;color:#9db4ff;border:1px solid rgba(157,180,255,.3);backdrop-filter:blur(10px);box-shadow:0 4px 16px #0003,inset 0 1px #ffffff1a}.btn.secondary:hover,.btn.secondary:focus{background:#9db4ff26;color:#b8c9ff;border-color:#9db4ff80;transform:translateY(-2px);box-shadow:0 6px 24px #9db4ff33,0 0 30px #9db4ff1a,inset 0 1px #ffffff26}.btn.secondary:active{transform:translateY(0)}.btn.link{background:transparent;color:#f4d03fcc;border:none;padding:12px 20px;font-size:16px;font-weight:500;text-decoration:underline;text-decoration-color:#f4d03f4d;text-underline-offset:4px;box-shadow:none}.btn.link:hover,.btn.link:focus{color:#f4d03f;text-decoration-color:#f4d03f99;background:#f4d03f14;transform:translateY(0);box-shadow:none}.btn.link:active{color:#f4d03fe6;transform:translateY(0)}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.time-display{font-size:clamp(32px,8vw,48px);font-weight:700;color:var(--primary);text-align:center;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.result-card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:12px;transition:all .15s cubic-bezier(.4,0,.2,1);cursor:pointer;min-height:44px}.result-card:hover{background:#2a3050;border-color:var(--primary-border);transform:translateY(-2px);box-shadow:0 8px 24px var(--shadow)}.result-card.suggested{background:var(--success);color:var(--bg-0);border-color:var(--success);font-weight:600;box-shadow:0 4px 12px #4fd1c74d}.result-card.warning{border-color:var(--warning);box-shadow:0 4px 12px #f6ad5533}.loading{opacity:.6;pointer-events:none}.shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (max-width: 768px){.brand-header{margin-bottom:1.5rem}.logo{font-size:clamp(24px,6vw,32px);gap:.4rem}.slogan{font-size:clamp(12px,2.8vw,14px);padding:0 1rem}.main-question{font-size:clamp(16px,4vw,18px);margin:1rem 0 .75rem}}@media (max-width: 768px){.btn{padding:14px 24px;font-size:16px}.result-card{padding:16px;margin-bottom:8px}body:before{width:60px;height:60px;top:5%;right:8%;background-image:url(../../../lun.png);background-size:contain;background-position:center;background-repeat:no-repeat;filter:drop-shadow(0 0 20px rgba(255,255,240,.17)) drop-shadow(0 0 40px rgba(255,255,240,.09));will-change:transform,opacity;transform:translateZ(0)}body:after{background-size:400px 300px,300px 200px,200px 150px,150px 100px;animation-duration:80s}.home-page{padding:1rem;max-width:100vw}.home-page h1{font-size:1.8rem;margin-bottom:.5rem}.home-page p{font-size:1rem;margin-bottom:1rem}.mode-toggle{margin-bottom:1rem;width:100%;max-width:280px}.mode-btn{flex:1;padding:10px 12px;font-size:14px;min-height:44px}.btn{min-height:48px}}@media (min-width: 769px){.home-page{max-width:520px;margin:0 auto;padding:2rem 1rem}.mode-toggle{margin-bottom:2rem;max-width:320px}.mode-btn{padding:12px 20px;font-size:15px}.home-page h1{font-size:2.2rem;margin-bottom:1rem}.home-page p{font-size:1.1rem;margin-bottom:1.5rem}.time-picker-container{margin:2.25rem 0}.btn.primary{padding:18px 36px;font-size:19px;margin:1.75rem 0 1rem}.btn.secondary,.btn.link{margin-top:.5rem}}@media (prefers-contrast: high){:root{--primary: #ffffff;--bg-2: #000000;--border: #ffffff}.result-card{border-width:2px}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}body:before,body:after{animation:none!important}.btn:hover,.result-card:hover{transform:none}}@media print{.btn{display:none}body{background:#fff;color:#000}}.wheel-timepicker{position:relative;display:grid;grid-template-columns:1fr 1fr .8fr;gap:var(--wheel-gap);width:min(420px,92vw);height:calc(var(--wheel-item-height) * var(--wheel-visible-count));min-height:calc(var(--wheel-item-height) * var(--wheel-visible-count));margin:40px auto;background:transparent;border-radius:12px;padding:0 8px;contain:layout size style;will-change:auto}.wheel-timepicker:has(.wheel-column:nth-child(2):last-of-type){grid-template-columns:1fr 1fr}.wheel-column{position:relative;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;cursor:pointer;user-select:none;height:calc(var(--wheel-item-height) * var(--wheel-visible-count));min-height:calc(var(--wheel-item-height) * var(--wheel-visible-count));contain:layout size style;scroll-behavior:smooth;transition:all .3s cubic-bezier(.25,.8,.25,1)}.wheel-column::-webkit-scrollbar{display:none}.wheel-column{-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,1) 30%,rgba(0,0,0,1) 70%,rgba(0,0,0,0) 100%);mask-image:linear-gradient(to bottom,#0000,#000 30% 70%,#0000)}.wheel-item{height:var(--wheel-item-height);min-height:var(--wheel-item-height);display:flex;align-items:center;justify-content:center;font-size:var(--wheel-font-size);font-weight:500;color:var(--wheel-text-muted);letter-spacing:.5px;scroll-snap-align:center;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;transition:all .15s cubic-bezier(.4,0,.2,1);user-select:none;cursor:default;transform-origin:center;backface-visibility:hidden;contain:layout style;will-change:auto}.wheel-item.selected{color:#e1d9a8;font-weight:700;text-shadow:0 0 4px rgba(225,217,168,.4);transform:scale(1.05)}@media (max-width: 768px){.wheel-timepicker{width:min(300px,88vw);margin:20px auto}.wheel-item{font-size:24px}}@media (max-width: 380px) and (max-height: 800px){.wheel-timepicker{width:min(260px,85vw);margin:10px auto;height:calc(var(--wheel-item-height) * 5)}.wheel-item{font-size:20px;height:36px}.wheel-column{-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,1) 25%,rgba(0,0,0,1) 75%,rgba(0,0,0,0) 100%);mask-image:linear-gradient(to bottom,#0000,#000 25% 75%,#0000)}}@media (prefers-color-scheme: dark){.wheel-item{color:var(--wheel-text-muted)}.wheel-item.selected{color:#e1d9a8;text-shadow:0 0 6px rgba(225,217,168,.6)}}@media (prefers-contrast: high){.wheel-item.selected{color:gold;background:#ffd70033;border-radius:6px;font-weight:800}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.p-4{padding:1rem}.p-8{padding:2rem}.mode-content{opacity:1;transform:translateY(0);transition:opacity .25s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1)}.mode-content.transitioning{opacity:0;transform:translateY(-8px)}.desktop-settings-panel{display:none}@media (min-width: 769px){.desktop-settings-panel{position:fixed;top:50%;right:1.5rem;transform:translateY(-50%);display:flex;flex-direction:column;gap:.75rem;z-index:10}.mode-toggle{display:flex;flex-direction:column;background:#0f172ab3;border-radius:12px;padding:4px;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px);box-shadow:0 8px 32px #0000004d}.personalize-btn-desktop{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.25rem;background:#0f172ab3;border:1px solid rgba(244,208,63,.3);color:#f4d03f;padding:12px;border-radius:12px;font-size:11px;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(20px);box-shadow:0 8px 32px #0000004d;min-width:64px}.personalize-btn-desktop:hover{background:#f4d03f26;border-color:#f4d03f99;transform:scale(1.05);box-shadow:0 12px 40px #f4d03f40}.personalize-btn-desktop:active{transform:scale(.98)}.personalize-btn-desktop .icon{font-size:20px}.personalize-btn-desktop .text{font-size:10px;text-align:center;line-height:1.2}}.mobile-settings-container{position:absolute;top:1rem;left:1rem;z-index:20}@media (min-width: 769px){.mobile-settings-container{display:none}}.mobile-settings-trigger{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:8px;cursor:pointer;transition:all .2s ease}.mobile-settings-trigger:hover{background:#ffffff26}.hamburger-icon{display:flex;flex-direction:column;gap:3px;width:20px;height:16px}.hamburger-icon .bar{width:100%;height:2px;background:#e6e9ff;border-radius:1px;transition:all .3s ease}.mobile-menu-overlay{position:fixed;inset:0;background:#00000080;z-index:30;animation:fadeIn .3s ease}.mobile-menu{position:fixed;top:4rem;left:1rem;width:280px;max-width:calc(100vw - 2rem);max-height:70vh;background:#0f1538f2;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.15);border-radius:12px;box-shadow:0 8px 32px #0000004d;z-index:31;animation:slideDown .3s ease;overflow:hidden}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.mobile-menu-header h3{margin:0;color:#e6e9ff;font-size:16px;font-weight:600}.close-btn{background:none;border:none;color:#9ca3af;font-size:20px;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease}.close-btn:hover{background:#ffffff1a;color:#e6e9ff}.mobile-menu-content{padding:.5rem 0;max-height:calc(70vh - 60px);overflow-y:auto}.menu-section{padding:.5rem 1rem}.menu-section h4{margin:0 0 .5rem;color:#9ca3af;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.menu-section:first-child h4:empty{display:none}.menu-option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem;background:none;border:none;border-radius:8px;color:#e6e9ff;font-size:14px;cursor:pointer;transition:all .2s ease;margin-bottom:.25rem}.menu-option:hover{background:#ffffff14}.menu-option.active{background:#f4d03f26;color:#f4d03f}.menu-option.reset-option{color:#ff6b6b;border-top:1px solid rgba(255,255,255,.1);margin-top:.5rem;padding-top:1rem}.menu-option.reset-option:hover{background:#ff6b6b1a}.option-icon{font-size:16px;width:20px;text-align:center}.option-text{flex:1;text-align:left}.check{color:#10b981;font-weight:600}.arrow{color:#9ca3af;font-size:12px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.desktop-only{display:none}@media (min-width: 769px){.desktop-only{display:block}}.mode-btn{background:transparent;border:none;color:#9ca3af;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.mode-btn:hover{color:#e6e9ff;background:#ffffff14}.mode-btn.active{background:#ffffff26;color:#f4d03f;box-shadow:0 2px 8px #f4d03f26}.mode-btn:focus{outline:2px solid rgba(244,208,63,.5);outline-offset:2px}.mode-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}@media (min-width: 769px){.mode-btn{padding:10px 16px;font-size:12px;text-align:center;min-width:64px;font-weight:600;letter-spacing:.3px}.mode-btn:hover{background:#ffffff1f;color:#fff}.mode-btn.active{background:linear-gradient(135deg,#f4d03f33,#f4d03f1a);color:#f4d03f;box-shadow:0 0 12px #f4d03f4d}.mode-btn:disabled{opacity:.6}}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#050c1deb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .3s cubic-bezier(.4,0,.2,1)}.modal-content{position:relative;background:linear-gradient(145deg,#0b1026,#12182e,#0f1428);border:1px solid rgba(255,223,128,.15);border-radius:20px;box-shadow:0 25px 70px #0009,0 0 80px #ffdf8014,inset 0 1px #ffffff0d;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;animation:modalSlideIn .4s cubic-bezier(.34,1.2,.64,1)}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#ffffff08;border-radius:10px}.modal-content::-webkit-scrollbar-thumb{background:#f4d03f4d;border-radius:10px;transition:background .2s}.modal-content::-webkit-scrollbar-thumb:hover{background:#f4d03f80}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid rgba(255,223,128,.1);background:linear-gradient(180deg,rgba(255,223,128,.03) 0%,transparent 100%)}.modal-title-group{display:flex;align-items:center;gap:.75rem}.modal-icon{font-size:1.5rem;filter:drop-shadow(0 0 10px rgba(255,223,128,.4));animation:iconPulse 3s ease-in-out infinite}@keyframes iconPulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 10px rgba(255,223,128,.4))}50%{transform:scale(1.05);filter:drop-shadow(0 0 15px rgba(255,223,128,.6))}}.modal-header h2{margin:0;font-size:22px;font-weight:700;background:linear-gradient(135deg,#f4d03f,#ffe680,#f8dc5c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.01em;filter:drop-shadow(0 2px 8px rgba(244,208,63,.2))}.modal-close-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#ffffffb3;border-radius:10px;padding:8px 12px;font-size:18px;font-weight:300;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);line-height:1}.modal-close-btn:hover{background:#ffffff1a;border-color:#f4d03f4d;color:#fffffff2;transform:rotate(90deg);box-shadow:0 0 15px #f4d03f26}.modal-close-btn:active{transform:rotate(90deg) scale(.95)}.modal-close-btn:focus{outline:none;box-shadow:0 0 0 3px #f4d03f4d}.modal-body{padding:28px;position:relative}.modal-body:before{content:"";position:absolute;inset:0;background-image:radial-gradient(1px 1px at 20% 30%,rgba(255,255,255,.15),transparent),radial-gradient(1px 1px at 60% 70%,rgba(255,255,255,.1),transparent),radial-gradient(1px 1px at 50% 50%,rgba(255,255,255,.12),transparent),radial-gradient(1px 1px at 80% 10%,rgba(255,255,255,.1),transparent);background-size:200% 200%,180% 180%,220% 220%,190% 190%;background-position:0% 0%,100% 100%,50% 50%,100% 0%;pointer-events:none;opacity:.5}.modal-footer{padding:20px 28px;border-top:1px solid rgba(255,223,128,.1);background:linear-gradient(0deg,rgba(255,223,128,.03) 0%,transparent 100%);display:flex;justify-content:flex-end;gap:12px}.modal-footer .btn.primary{background:linear-gradient(135deg,#f3e6b0,#e1d9a8);color:#1b2037;border:none;padding:12px 28px;font-size:15px;font-weight:700;border-radius:12px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #f3e6b040}.modal-footer .btn.primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #f3e6b059;background:linear-gradient(135deg,#f7eab4,#e5ddac)}.modal-footer .btn.primary:active{transform:translateY(-1px);box-shadow:0 4px 16px #f3e6b040}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.93);filter:blur(4px)}50%{transform:translateY(5px) scale(1.01)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@media (max-width: 768px){.modal-backdrop{padding:10px}.modal-content{border-radius:12px;max-height:95vh}.modal-header{padding:16px 20px}.modal-header h2{font-size:18px}.modal-body{padding:20px}.modal-footer{padding:12px 20px}}@media (max-width: 480px){.modal-backdrop{padding:5px}.modal-header{padding:12px 16px}.modal-body{padding:16px}.modal-footer{padding:10px 16px}}.age-input-group{display:flex;align-items:center;gap:8px;margin-bottom:8px}.age-input{background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:8px 12px;color:#e6e9ff;font-size:14px;width:80px;text-align:center}.age-input:focus{outline:2px solid rgba(244,208,63,.5);outline-offset:1px;border-color:#f4d03f4d}.age-input::-webkit-outer-spin-button,.age-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.age-input[type=number]{-moz-appearance:textfield;appearance:textfield}.age-unit{color:#b8c0e0;font-size:14px}.age-recommendation{background:#8b451326;border:1px solid rgba(139,69,19,.3);border-radius:6px;padding:8px 10px;margin:8px 0 0;font-size:12px;color:#e6e9ff;line-height:1.4}@media (max-width: 480px){.age-input{width:70px;padding:6px 8px;font-size:13px}.age-unit{font-size:13px}.age-recommendation{font-size:11px;padding:6px 8px}}.chronotype-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.chronotype-btn{background:linear-gradient(145deg,#12182e99,#0c1026cc);border:1px solid rgba(255,223,128,.15);color:#b8c0e0;border-radius:12px;padding:12px 16px;font-size:13px;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);flex:1;min-width:100px;text-align:center;box-shadow:0 2px 8px #0003}.chronotype-btn:hover{background:linear-gradient(145deg,#19203ab3,#12182ee6);border-color:#ffdf8040;color:#e6e9ff;transform:translateY(-2px);box-shadow:0 4px 12px #ffdf801a}.chronotype-btn.active{background:linear-gradient(135deg,#f4d03f40,#f4d03f26);border-color:#f4d03f80;color:#f8dc5c;font-weight:600;box-shadow:0 4px 16px #f4d03f40,0 0 20px #f4d03f26,inset 0 1px #ffffff1a;transform:translateY(-1px)}.chronotype-btn:focus{outline:none;box-shadow:0 0 0 3px #f4d03f4d}.chronotype-info{background:linear-gradient(145deg,#0f1428b3,#12182e80);border:1px solid rgba(255,223,128,.12);border-radius:12px;padding:16px;margin-top:14px;box-shadow:inset 0 1px 2px #0003}.chronotype-info p{margin:0 0 6px;font-size:13px;color:#e6e9ff;line-height:1.4}.chronotype-info p:last-child{margin-bottom:0}.chronotype-tips{font-style:italic;color:#b8c0e0!important;font-size:12px!important}@media (max-width: 768px){.chronotype-buttons{gap:6px}.chronotype-btn{padding:8px 10px;font-size:12px;min-width:90px}.chronotype-info{padding:10px}.chronotype-info p{font-size:12px}.chronotype-tips{font-size:11px!important}}@media (max-width: 480px){.chronotype-buttons{flex-direction:column;gap:4px}.chronotype-btn{min-width:unset;padding:8px 12px}}.sleep-tracking{background:#151c3966;border:1px solid rgba(40,49,99,.3);border-radius:8px;padding:16px;margin-top:8px}.target-sleep{margin-bottom:16px}.target-sleep label{display:block;color:#e6e9ff;font-size:13px;font-weight:500;margin-bottom:6px}.sleep-input-group{display:flex;align-items:center;gap:8px}.sleep-input{background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:6px 10px;color:#e6e9ff;font-size:13px;width:60px;text-align:center}.sleep-input.small{width:50px;padding:4px 8px;font-size:12px}.sleep-input:focus{outline:2px solid rgba(244,208,63,.5);outline-offset:1px;border-color:#f4d03f4d}.sleep-unit{color:#b8c0e0;font-size:12px}.recent-sleep label{display:block;color:#e6e9ff;font-size:13px;font-weight:500;margin-bottom:8px}.sleep-inputs{display:grid;gap:6px}.night-input{display:flex;align-items:center;justify-content:space-between;gap:8px}.night-label{color:#b8c0e0;font-size:12px;flex:1;margin:0}.sleep-debt-status{margin-top:12px}.debt-alert{border-radius:12px;padding:14px 16px;font-size:13px;line-height:1.5;box-shadow:0 4px 12px #0003;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.debt-alert.high{background:linear-gradient(135deg,#ef44442e,#dc26261f);border:1px solid rgba(239,68,68,.4);color:#fca5a5;box-shadow:0 4px 16px #ef444426,0 0 20px #ef444414}.debt-alert.moderate{background:linear-gradient(135deg,#f59e0b2e,#d977061f);border:1px solid rgba(245,158,11,.4);color:#fcd34d;box-shadow:0 4px 16px #f59e0b26,0 0 20px #f59e0b14}.debt-alert.low{background:linear-gradient(135deg,#22c55e2e,#16a34a1f);border:1px solid rgba(34,197,94,.4);color:#86efac;box-shadow:0 4px 16px #22c55e26,0 0 20px #22c55e14}.debt-alert p{margin:0 0 4px}.debt-alert p:last-child{margin-bottom:0}.debt-alert strong{color:inherit}.debt-alert em{opacity:.9}@media (max-width: 768px){.sleep-tracking{padding:12px}.target-sleep{margin-bottom:12px}.sleep-input{width:50px;padding:4px 6px;font-size:12px}.sleep-input.small{width:45px}.night-label{font-size:11px}.debt-alert{padding:8px;font-size:11px}}@media (max-width: 480px){.sleep-tracking{padding:10px}.night-input{gap:4px}.sleep-input{width:40px}.sleep-input.small{width:35px}}.circadian-indicator{margin-top:4px}.circadian-phase{display:inline-block;font-size:10px;padding:2px 6px;border-radius:4px;font-weight:500;text-align:center;line-height:1.2}.circadian-phase.phase-optimal{background:#22c55e33;color:#86efac;border:1px solid rgba(34,197,94,.3)}.circadian-phase.phase-moderate{background:#f59e0b33;color:#fcd34d;border:1px solid rgba(245,158,11,.3)}.circadian-phase.phase-suboptimal{background:#f9731633;color:#fdba74;border:1px solid rgba(249,115,22,.3)}.circadian-phase.phase-poor{background:#ef444433;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}@media (max-width: 768px){.circadian-phase{font-size:9px;padding:1px 4px}}@media (max-width: 480px){.circadian-indicator{margin-top:2px}.circadian-phase{font-size:8px;padding:1px 3px}}.personalization-section{margin:1rem 0;width:100%;max-width:500px;margin-left:auto;margin-right:auto}.personalization-section{margin:1rem 0;min-height:48px;transition:all .3s ease}.personalization-section:not(.visible){min-height:0;margin:0;opacity:0;visibility:hidden}.personalization-section.visible{opacity:1;visibility:visible}@media (max-width: 768px){.personalization-section{margin:.5rem 0;min-height:44px}.personalization-section:not(.visible){min-height:0;margin:0}}@media (max-height: 700px) and (max-width: 768px){.personalization-section{margin:.3rem 0}.personalization-panel{max-height:40vh;overflow-y:auto}}.personalization-toggle{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#e6e9ff;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;width:100%;text-align:center;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.personalization-toggle:hover{background:#ffffff26;border-color:#ffffff4d}.personalization-toggle:focus{outline:2px solid rgba(244,208,63,.5);outline-offset:2px}.personalization-panel{background:#151c39cc;border:1px solid rgba(40,49,99,.5);border-radius:12px;padding:20px;margin-top:12px;animation:slideDown .3s ease-out}@media (max-width: 768px){.personalization-panel{padding:12px;border-radius:8px}}.personalization-row{margin-bottom:20px}.personalization-row:last-of-type{margin-bottom:16px}@media (max-width: 768px){.personalization-row{margin-bottom:12px}.personalization-row:last-of-type{margin-bottom:8px}}.personalization-row label{display:block;color:#e6e9ff;font-size:14px;font-weight:500;margin-bottom:8px}@media (max-width: 768px){.personalization-row label{font-size:13px;margin-bottom:6px}}.option-buttons{display:flex;gap:8px;flex-wrap:wrap}@media (max-width: 768px){.option-buttons{gap:6px;justify-content:space-between}}.option-btn{background:linear-gradient(145deg,#12182e99,#0c1026cc);border:1px solid rgba(255,223,128,.15);color:#b8c0e0;padding:10px 14px;border-radius:10px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);min-width:65px;box-shadow:0 2px 6px #00000026}.option-btn:hover{background:linear-gradient(145deg,#19203ab3,#12182ee6);border-color:#ffdf8040;color:#e6e9ff;transform:translateY(-1px);box-shadow:0 3px 10px #ffdf8014}.option-btn.active{background:linear-gradient(135deg,#f4d03f40,#f4d03f26);border-color:#f4d03f80;color:#f8dc5c;font-weight:600;box-shadow:0 3px 12px #f4d03f33,0 0 15px #f4d03f1a,inset 0 1px #ffffff1a}.option-btn:focus{outline:none;box-shadow:0 0 0 3px #f4d03f4d}.personalization-info{background:#8b451326;border:1px solid rgba(139,69,19,.3);border-radius:8px;padding:12px;margin-top:12px}@media (max-width: 768px){.personalization-info{padding:8px;margin-top:8px;border-radius:6px}}@media (max-width: 480px){.personalization-info{padding:6px 8px}.personalization-info p{font-size:12px}}.personalization-info p{margin:0;font-size:13px;color:#e6e9ff;line-height:1.4}.personalization-info strong{color:#f4d03f}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.brand-header{margin-bottom:2rem}.logo{gap:.5rem}.moon-icon{font-size:28px}.logo-text{font-size:24px}.slogan{font-size:13px;max-width:300px;letter-spacing:.25px}.main-question{font-size:18px;margin:1rem 0 .75rem}}@media (max-width: 380px) and (max-height: 800px){.brand-header{margin-bottom:1.5rem}.logo{gap:.4rem;margin-bottom:.5rem}.moon-icon{font-size:24px}.logo-text{font-size:22px}.slogan{font-size:12px;max-width:280px;letter-spacing:.2px}.main-question{font-size:16px;margin:.75rem 0 .5rem}}@media (max-width: 480px){.option-buttons{justify-content:space-between}.option-btn{flex:1;min-width:50px;padding:6px 8px;font-size:12px}.personalization-panel{padding:10px}.personalization-toggle{padding:10px 12px;font-size:13px}}.scientific-disclaimer{background:linear-gradient(135deg,#8b451326,#cd853f1a);border:1px solid rgba(139,69,19,.3);border-radius:12px;padding:16px;margin:16px 0;font-size:14px;line-height:1.5}.scientific-disclaimer p{margin:8px 0;color:#e6e9ff}.scientific-disclaimer strong{color:#f4d03f;font-weight:600}.disclaimer-source{font-size:12px;color:#b8c0e0;font-style:italic;margin-top:12px!important;border-top:1px solid rgba(139,69,19,.2);padding-top:8px}.cookie-banner.svelte-1xfe7yx.svelte-1xfe7yx{position:fixed;bottom:0;left:0;right:0;background:#050c2df5;backdrop-filter:blur(10px);border-top:1px solid rgba(225,217,168,.2);z-index:1000;padding:1rem;transform:translateY(100%);transition:transform .3s ease-out;box-shadow:0 -4px 20px #0000004d}.cookie-banner.visible.svelte-1xfe7yx.svelte-1xfe7yx{transform:translateY(0)}.cookie-content.svelte-1xfe7yx.svelte-1xfe7yx{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.cookie-text.svelte-1xfe7yx h3.svelte-1xfe7yx{color:var(--primary);margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.cookie-text.svelte-1xfe7yx p.svelte-1xfe7yx{color:var(--fg-0);margin:0;font-size:.9rem;line-height:1.4}.cookie-text.svelte-1xfe7yx a.svelte-1xfe7yx{color:var(--primary);text-decoration:underline;text-decoration-color:#e1d9a866}.cookie-text.svelte-1xfe7yx a.svelte-1xfe7yx:hover{text-decoration-color:var(--primary)}.cookie-actions.svelte-1xfe7yx.svelte-1xfe7yx{display:flex;gap:.75rem;flex-shrink:0}.btn-decline.svelte-1xfe7yx.svelte-1xfe7yx,.btn-accept.svelte-1xfe7yx.svelte-1xfe7yx{padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent;white-space:nowrap}.btn-decline.svelte-1xfe7yx.svelte-1xfe7yx{background:transparent;color:var(--fg-1);border-color:#fff3}.btn-decline.svelte-1xfe7yx.svelte-1xfe7yx:hover{background:#ffffff0d;border-color:#ffffff4d}.btn-accept.svelte-1xfe7yx.svelte-1xfe7yx{background:var(--primary);color:var(--bg-0);border-color:var(--primary)}.btn-accept.svelte-1xfe7yx.svelte-1xfe7yx:hover{background:#ebe5c1;border-color:#ebe5c1}@media (max-width: 768px){.cookie-content.svelte-1xfe7yx.svelte-1xfe7yx{flex-direction:column;text-align:center;gap:1rem}.cookie-actions.svelte-1xfe7yx.svelte-1xfe7yx{justify-content:center}.btn-decline.svelte-1xfe7yx.svelte-1xfe7yx,.btn-accept.svelte-1xfe7yx.svelte-1xfe7yx{flex:1;max-width:140px}}@media (prefers-contrast: high){.cookie-banner.svelte-1xfe7yx.svelte-1xfe7yx{background:var(--bg-0);border-top-color:var(--primary)}.btn-decline.svelte-1xfe7yx.svelte-1xfe7yx{border-color:var(--primary)}}@media (prefers-reduced-motion: reduce){.cookie-banner.svelte-1xfe7yx.svelte-1xfe7yx{transition:none}}.app.svelte-d1myg9.svelte-d1myg9{min-height:100vh;height:100vh;overflow:hidden;position:relative;background:var(--bg-gradient);-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-ms-touch-action:manipulation;touch-action:manipulation;transform:translateZ(0);will-change:transform}.main.svelte-d1myg9.svelte-d1myg9{width:100%;min-height:100%;position:relative;z-index:1;overflow-y:auto}.offline-indicator.svelte-d1myg9.svelte-d1myg9{position:fixed;top:.5rem;right:.5rem;background:#ffc107e6;color:var(--bg-0);text-align:center;padding:.25rem .75rem;font-size:12px;font-weight:600;z-index:9999;display:flex;align-items:center;justify-content:center;gap:.25rem;border-radius:16px;border:1px solid rgba(0,0,0,.1);backdrop-filter:blur(4px);animation:svelte-d1myg9-slideInFromTop .3s ease-out;box-shadow:0 2px 8px #00000026;width:auto;min-width:70px}.offline-icon.svelte-d1myg9.svelte-d1myg9{font-size:10px;opacity:.9}@keyframes svelte-d1myg9-slideInFromTop{0%{transform:translateY(-20px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.app.offline.svelte-d1myg9 .main.svelte-d1myg9{padding-top:0}#pwa-install-prompt.svelte-d1myg9.svelte-d1myg9{position:fixed;bottom:-100px;left:0;right:0;z-index:1000;transition:bottom .3s ease-out}@media (max-width: 768px){.app.svelte-d1myg9.svelte-d1myg9{height:100vh;height:-webkit-fill-available;-webkit-text-size-adjust:100%}}@media (max-height: 500px) and (orientation: landscape){.offline-indicator.svelte-d1myg9.svelte-d1myg9{padding:.2rem .5rem;font-size:10px;top:.25rem;right:.25rem;min-width:60px}.app.offline.svelte-d1myg9 .main.svelte-d1myg9{padding-top:0}}@media (prefers-contrast: high){.offline-indicator.svelte-d1myg9.svelte-d1myg9{border-bottom:2px solid var(--bg-0)}}@media (prefers-reduced-motion: reduce){.offline-indicator.svelte-d1myg9.svelte-d1myg9{animation:none}#pwa-install-prompt.svelte-d1myg9.svelte-d1myg9{transition:none}}@media print{.offline-indicator.svelte-d1myg9.svelte-d1myg9,#pwa-install-prompt.svelte-d1myg9.svelte-d1myg9{display:none}.app.svelte-d1myg9.svelte-d1myg9{height:auto;min-height:auto;background:#fff}}.app.svelte-d1myg9.svelte-d1myg9:focus-within{outline-style:none}.i18n-loading.svelte-d1myg9.svelte-d1myg9{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;text-align:center;color:#fff}.i18n-loading.svelte-d1myg9 h1.svelte-d1myg9{font-size:2.5rem;color:#e1d9a8;margin:0 0 1rem}.i18n-loading.svelte-d1myg9 p.svelte-d1myg9{font-size:1.1rem;margin:0 0 2rem;opacity:.8}.loading-spinner.svelte-d1myg9.svelte-d1myg9{width:40px;height:40px;border:3px solid rgba(225,217,168,.3);border-top:3px solid #E1D9A8;border-radius:50%;animation:svelte-d1myg9-spin 1s linear infinite}@keyframes svelte-d1myg9-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
