:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--velvet: #14060b;--curtain: #240912;--carmine: #5c111d;--wine: #782034;--gold: #d79b30;--shimmer: #f1d887;--bone: #fff1d5;--text-main: #eadbc5;--text-soft: #b9a393;--text-dim: #7e6a61;--line: rgba(241, 216, 135, .2);--line-soft: rgba(241, 216, 135, .1);--panel: rgba(26, 7, 12, .76);--panel-strong: rgba(37, 10, 17, .9);--shadow: 0 18px 42px rgba(0, 0, 0, .34)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;background:linear-gradient(180deg,#2a0a14 0%,var(--velvet) 38%,#0d0306 100%),var(--velvet);color:var(--text-main)}body:before{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;content:"";background:linear-gradient(115deg,rgba(215,155,48,.08),transparent 36%),repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0,rgba(255,255,255,.018) 1px,transparent 1px,transparent 54px);opacity:.88}button,input{font:inherit}button{cursor:pointer}button:disabled,input:disabled{cursor:not-allowed;opacity:.58}.app-shell{width:100%;min-height:100dvh;margin:0 auto;padding:0 0 calc(78px + env(safe-area-inset-bottom))}.app-frame{width:min(100%,430px);min-height:100dvh;margin:0 auto;overflow:hidden;border-inline:1px solid rgba(241,216,135,.08);background:linear-gradient(180deg,#2409129e,#14060be0);box-shadow:0 0 54px #00000057}.screen{min-height:100dvh;padding:calc(34px + env(safe-area-inset-top)) 18px 24px;animation:fade-up .34s ease}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero,.form-top,.result-top{text-align:center}.hero{padding:14px 10px 6px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:78px;height:78px;margin:0 auto 18px;border:1px solid rgba(241,216,135,.42);border-radius:50%;background:linear-gradient(135deg,#f1d8871f,#5c111d2e),#14060bb8;color:var(--shimmer);box-shadow:inset 0 0 26px #f1d88714,0 18px 42px #00000052}.brand,.result-who,.section-kicker,.section-title strong,.mode-tile small,.field label,.form-step label,.int-num,.zero-label,.anchor-badge{letter-spacing:0;text-transform:uppercase}.brand{margin:0 0 10px;color:var(--gold);font-size:12px;font-weight:800}h1,h2,p{margin-top:0}h1{margin-bottom:0;color:var(--bone);font-family:Georgia,Times New Roman,serif;font-size:34px;font-weight:400;line-height:1.12}.form-top h1{font-size:30px}.divider{width:100%;height:1px;margin:24px 0;background:linear-gradient(90deg,transparent,var(--carmine),var(--gold),transparent)}.divider.thin{margin:18px 0 24px;opacity:.7}.lead{margin:0 6px 22px;color:var(--text-soft);font-family:Georgia,Times New Roman,serif;font-size:18px;line-height:1.55;text-align:center}.mode-list{display:grid;gap:12px}.mode-tile,.intention-list article,.intention-zero,.insight,.timer-block,.calc-panel,.practice-list article,.empty-state,.city-results button{border:1px solid var(--line);border-radius:8px;background:linear-gradient(140deg,#5c111d57,#0e0407b8);box-shadow:var(--shadow)}.mode-tile{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:102px;padding:18px;color:var(--text-main);text-align:left;transition:border-color .18s ease,transform .18s ease,background .18s ease}.mode-tile:before{position:absolute;top:20%;bottom:20%;left:0;width:2px;content:"";background:linear-gradient(180deg,transparent,var(--gold),transparent);opacity:.72}.mode-tile:hover,.mode-tile.active{border-color:#f1d88773;background:linear-gradient(140deg,#78203473,#14060bcc);transform:translateY(-1px)}.mode-tile span{display:grid;min-width:0;gap:5px}.mode-tile small{color:var(--gold);font-size:11px;font-style:normal;font-weight:900}.mode-tile strong{color:var(--bone);font-size:20px;line-height:1.15}.mode-tile em{color:var(--text-soft);font-size:13px;font-style:normal;line-height:1.35}.mode-tile svg{flex:0 0 auto;color:var(--shimmer)}.ornament{padding:28px 0 6px;color:var(--gold);font-size:13px;text-align:center}.alert{width:min(100% - 28px,402px);margin:14px auto -8px;padding:11px 13px;border:1px solid rgba(241,216,135,.24);border-radius:8px;background:#5c111dd1;color:var(--bone);font-size:13px;line-height:1.45}.step-form{display:grid;gap:20px}.step-track{display:flex;justify-content:center;gap:8px;margin-bottom:4px}.pip{width:30px;height:4px;border-radius:999px;background:#f1d8872e;transition:width .18s ease,background .18s ease}.pip.active{width:44px;background:var(--shimmer)}.pip.done{background:var(--gold)}.form-step{animation:fade-up .24s ease}.form-step h2{margin-bottom:8px;color:var(--bone);font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:400;line-height:1.22;text-align:center}.form-step p{margin-bottom:24px;color:var(--text-soft);font-size:13px;line-height:1.55;text-align:center}.form-step label{display:grid;gap:8px;margin-bottom:14px;color:var(--gold);font-size:11px;font-weight:900}.field{width:100%;min-height:54px;border:1px solid rgba(241,216,135,.24);border-radius:8px;outline:none;background:#5c111d29;color:var(--bone);padding:0 16px;font-size:17px;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.field-lg{min-height:64px;font-size:22px}.field:focus{border-color:var(--shimmer);background:#78203440;box-shadow:0 0 0 4px #f1d88714}.field::placeholder{color:var(--text-dim)}.check-row{display:flex!important;align-items:center;gap:10px!important;min-height:38px;color:var(--text-soft)!important;text-transform:none!important}.check-row input{width:18px;height:18px;accent-color:var(--gold)}.search-field{display:grid;grid-template-columns:minmax(0,1fr) 54px;gap:8px}.coord-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.city-results{display:grid;gap:8px;margin-bottom:14px}.city-results button{display:grid;gap:3px;width:100%;padding:11px 12px;color:var(--text-main);text-align:left}.city-results small{color:var(--text-soft)}.form-actions{display:grid;gap:10px}.btn-gold,.btn-ghost,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;border-radius:8px;font-weight:900;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.btn-gold{width:100%;border:0;background:linear-gradient(135deg,var(--shimmer),var(--gold) 60%,#b87420);color:var(--velvet);box-shadow:0 16px 34px #b974203d}.btn-ghost{width:100%;border:1px solid rgba(241,216,135,.2);background:transparent;color:var(--text-soft)}.icon-button{width:52px;border:1px solid rgba(241,216,135,.24);background:#14060b94;color:var(--bone)}.icon-button.bright{flex:0 0 auto;color:var(--shimmer)}.btn-gold:hover,.btn-ghost:hover,.icon-button:hover{transform:translateY(-1px)}.result-screen{padding-inline:16px}.result-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;text-align:left}.result-top h1{margin-bottom:8px;font-size:32px}.result-top span{color:var(--text-soft);font-size:12px}.result-who{margin:0 0 10px;color:var(--gold);font-size:11px;font-weight:900}.insight,.intention-zero,.timer-block,.calc-panel,.empty-state{padding:18px}.insight{position:relative;overflow:hidden}.section-kicker{margin-bottom:10px;color:var(--shimmer);font-size:11px;font-weight:900}.insight p,.intention-zero p,.intention-list p,.timer-block p,.practice-list p,.empty-state p{margin-bottom:0;color:var(--text-main);font-family:Georgia,Times New Roman,serif;font-size:16px;line-height:1.6}.soft-badge{display:inline-flex;align-items:center;min-height:26px;margin-top:14px;padding:0 10px;border-radius:999px;background:#d79b3029;color:var(--shimmer);font-size:11px;font-weight:900}.astro-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}.astro-strip article{min-height:118px;padding:12px 10px;border:1px solid var(--line-soft);border-radius:8px;background:#0e040794}.astro-strip svg{color:var(--gold)}.astro-strip small{display:block;margin-top:8px;color:var(--text-soft);font-size:11px;font-weight:900;text-transform:uppercase}.astro-strip strong{display:block;margin:5px 0 3px;color:var(--bone);font-size:19px;line-height:1.1}.astro-strip span{color:var(--text-soft);font-size:12px}.section-title{display:grid;grid-template-columns:minmax(22px,.6fr) auto minmax(22px,1fr);gap:10px;align-items:center;margin:20px 0 14px}.section-title span{height:1px;background:linear-gradient(90deg,transparent,rgba(241,216,135,.42))}.section-title span:last-child{background:linear-gradient(90deg,rgba(241,216,135,.42),transparent)}.section-title strong{color:var(--gold);font-size:11px;font-weight:900;white-space:nowrap}.intention-zero{margin-top:14px;text-align:center}.zero-label,.int-num,.anchor-badge{color:var(--gold);font-size:11px;font-weight:900}.zero-label{margin-bottom:10px}.intention-list{display:grid;gap:10px}.intention-list article{position:relative;padding:15px;border-left:3px solid rgba(215,155,48,.58)}.intention-list article.anchor{border-color:#f1d8876b;background:linear-gradient(140deg,#78203466,#0e0407c7)}.int-num{margin-bottom:8px}.anchor-badge{display:inline-flex;min-height:22px;margin-bottom:8px;padding:4px 8px;border-radius:999px;background:linear-gradient(135deg,var(--shimmer),var(--gold));color:var(--velvet)}.practice-list{display:grid;gap:10px}.practice-list article{padding:15px}.practice-list strong{color:var(--bone)}.practice-list span{display:inline-flex;margin-top:10px;color:var(--gold);font-size:12px;font-weight:800}.calc-panel{margin-top:18px}.calc-panel .section-title{margin-top:0}.element-bars{display:grid;gap:10px;margin-bottom:16px}.bar-row{display:grid;grid-template-columns:76px minmax(0,1fr) 22px;gap:8px;align-items:center;color:var(--text-soft);font-size:13px}.bar-row div{height:7px;overflow:hidden;border-radius:999px;background:#f1d8871f}.bar-row i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--wine),var(--gold),var(--shimmer))}.bar-row b{color:var(--bone)}dl{display:grid;grid-template-columns:112px minmax(0,1fr);gap:8px 10px;margin:0;font-size:12px}dt{color:var(--text-soft)}dd{min-width:0;margin:0;overflow-wrap:anywhere;color:var(--bone);font-weight:800}.timer-block{margin-top:18px;text-align:center}.timer-title{margin-bottom:8px;color:var(--bone);font-family:Georgia,Times New Roman,serif;font-size:24px;line-height:1.2}.timer-block p{color:var(--text-soft);font-size:14px}.day-dots{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:18px 0}.day-dot{display:inline-flex;align-items:center;justify-content:center;aspect-ratio:1;border:1px solid rgba(241,216,135,.18);border-radius:50%;color:var(--text-soft);font-size:12px;font-weight:900}.day-dot.done{border-color:var(--gold);background:var(--gold);color:var(--velvet)}.day-dot.today{border-color:var(--shimmer);color:var(--shimmer);box-shadow:0 0 0 3px #f1d88714}.empty-state{display:grid;justify-items:center;gap:12px;text-align:center}.empty-state svg{color:var(--shimmer)}.empty-state h2{margin:0;color:var(--bone);font-family:Georgia,Times New Roman,serif;font-size:25px;font-weight:400}.loading-screen{display:grid;place-items:center;align-content:center;gap:16px;text-align:center}.loading-screen h1{font-size:30px}.loading-screen p{margin-bottom:0;color:var(--text-soft)}.spin{animation:spin .82s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.bottom-nav{position:fixed;z-index:20;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);width:min(100%,430px);margin:0 auto;padding:8px 8px calc(8px + env(safe-area-inset-bottom));border:1px solid rgba(241,216,135,.14);border-bottom:0;border-radius:8px 8px 0 0;background:#0c0306f5;box-shadow:0 -12px 32px #00000059;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:58px;padding:7px 4px 8px;border:0;border-radius:8px;background:transparent;color:var(--text-dim);font-size:10px;font-weight:900;line-height:1}.bottom-nav button.active{color:var(--gold);background:#f1d8870f}.bottom-nav button:focus{outline:none}.bottom-nav button:focus-visible{outline:1px solid rgba(241,216,135,.34);outline-offset:-2px}.bottom-nav svg{display:block;flex:0 0 auto}.bottom-nav span{display:block;line-height:1}.scroll-pad{height:20px}@media(min-width:560px){.app-shell{padding-top:18px}.app-frame{min-height:calc(100dvh - 18px);border-radius:18px 18px 0 0}}@media(max-width:360px){.screen{padding-inline:14px}h1{font-size:30px}.astro-strip,.coord-grid{grid-template-columns:1fr}.bottom-nav{padding-inline:5px}}
