:root,[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#060818;--bg-deep:#030510;--surface:#0a1030b8;--surface-2:#10184099;--card:#0c1234c7;--card-line:#788ce621;--card-shadow:inset 0 1px 0 #ffffff0f, 0 0 0 1px #6478ff0f, 0 8px 32px #0000008c, 0 32px 80px #00000059;--popover:#0c1234;--popover-line:#788ce638;--sidebar-bg:#04081ae0;--sidebar-line:#3c50b42e;--fg:#e8ecff;--muted:#6e7a9e;--line:#5064d224;--line-strong:#647de638;--brass:#f2d9a3;--brass-soft:#d8bf86;--accent:#a5b4fc;--accent-strong:#c7d2fe;--accent-fg:#1e1b4b;--nebula-purple:#581c8738;--nebula-blue:#1d378c47;--nebula-teal:#0650822e;--nebula-rose:#7814501a;--fire:#fb923c;--earth:#86efac;--air:#fde68a;--water:#7dd3fc;--aspect-conjunction:#94a3b8;--aspect-harmonious:#7dd3fc;--aspect-tense:#f87171;--retro:#f87171;--radius:14px;--radius-sm:9px;--shadow:0 4px 8px #00000080, 0 20px 60px #00000073;--glass-blur:blur(18px) saturate(1.4);--glow:radial-gradient(130% 80% at 50% -10%, #8296ff21, transparent 60%);--glow-brass:0 0 24px #d4b87a38;--font-display:"Spectral", Georgia, "Times New Roman", serif;--font:"Onest", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "Cascadia Mono", Consolas, monospace}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef3f9;--bg-deep:#e3ebf4;--surface:#ffffffdb;--surface-2:#f7fafdcc;--card:#fffffff0;--card-line:#1e37641f;--card-shadow:inset 0 1px 0 #ffffffe6, 0 1px 2px #1428500d, 0 12px 32px #14285017;--popover:#fff;--popover-line:#1e376429;--sidebar-bg:#f8fbfeeb;--sidebar-line:#1e37641f;--fg:#14181f;--muted:#5b6678;--line:#1e37641a;--line-strong:#1e37642e;--brass:#2f3e5c;--brass-soft:#54658a;--accent:#4f5bd5;--accent-strong:#3a45b0;--accent-fg:#fff;--nebula-purple:#4f5bd50d;--nebula-blue:#1e4e8c0f;--nebula-teal:#2d8caa0d;--nebula-rose:#788cc80d;--fire:#c0392b;--earth:#3f6b2e;--air:#9a7b1f;--water:#1f6fb0;--aspect-conjunction:#64748b;--aspect-harmonious:#1f6fb0;--aspect-tense:#d7263d;--retro:#d7263d;--shadow:0 1px 2px #1428500d, 0 16px 44px #1428501a;--glass-blur:blur(14px) saturate(1.05);--glow:radial-gradient(130% 80% at 50% -8%, #4f5bd50f, transparent 60%);--glow-brass:0 0 18px #2f3e5c1a}*,:before,:after{box-sizing:border-box}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0;display:none}html,body,#root{height:100%}body{color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:var(--glow), radial-gradient(ellipse 70% 55% at 15% 25%, var(--nebula-purple), transparent 55%), radial-gradient(ellipse 55% 45% at 85% 65%, var(--nebula-teal), transparent 50%), radial-gradient(ellipse 80% 50% at 50% 100%, var(--nebula-blue), transparent 55%), radial-gradient(ellipse 40% 35% at 90% 10%, var(--nebula-rose), transparent 45%), linear-gradient(165deg, #0e1132 0%, var(--bg) 45%, var(--bg-deep) 100%);background-attachment:fixed;margin:0;font-size:15px;line-height:1.55}[data-theme=light] body{background:var(--glow), radial-gradient(ellipse 80% 50% at 10% 0%, var(--nebula-rose), transparent 55%), radial-gradient(ellipse 60% 40% at 85% 90%, var(--nebula-purple), transparent 50%), radial-gradient(ellipse 70% 45% at 50% 50%, var(--nebula-teal), transparent 60%), linear-gradient(160deg, #fff 0%, var(--bg) 52%, var(--bg-deep) 100%);background-attachment:fixed}[data-theme=light] body:after{content:"";pointer-events:none;z-index:0;opacity:.04;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:140px 140px;position:fixed;inset:0}[data-theme=light] svg[aria-hidden]>circle{display:none}.nebula{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}[data-theme=light] .nebula{display:none}.neb{filter:blur(70px);mix-blend-mode:screen;will-change:transform;border-radius:50%;position:absolute}.neb.n1{opacity:.46;background:radial-gradient(circle,#5b21b6,#0000 68%);width:46vw;height:46vw;animation:38s ease-in-out infinite nebDrift1;top:-2%;left:45%}.neb.n6{opacity:.36;background:radial-gradient(circle,#86198f,#0000 70%);width:38vw;height:38vw;animation:60s ease-in-out infinite reverse nebDrift2;top:8%;left:52%}.neb.n4{opacity:.32;background:radial-gradient(circle,#9f1239,#0000 68%);width:34vw;height:34vw;animation:50s ease-in-out infinite nebDrift4;top:-6%;left:54%}.neb.n2{opacity:.4;background:radial-gradient(circle,#1e3a8a,#0000 70%);width:44vw;height:44vw;animation:46s ease-in-out infinite nebDrift2;top:42%;left:-4%}.neb.n3{opacity:.34;background:radial-gradient(circle,#0e7490,#0000 70%);width:38vw;height:38vw;animation:42s ease-in-out infinite nebDrift3;top:54%;left:6%}.neb.n5{opacity:.32;background:radial-gradient(circle,#15803d,#0000 70%);width:40vw;height:40vw;animation:54s ease-in-out infinite nebDrift5;top:60%;left:0%}.neb.n7{opacity:.14;background:radial-gradient(circle,#b45309,#0000 66%);width:22vw;height:22vw;animation:48s ease-in-out infinite nebDrift3;top:20%;left:38%}@keyframes nebDrift1{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-4%,5%)scale(1.12)}}@keyframes nebDrift2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(6%,-3%)scale(1.1)}}@keyframes nebDrift3{0%,to{transform:translate(0)scale(1.05)}50%{transform:translate(-5%,-5%)scale(1)}}@keyframes nebDrift4{0%,to{transform:translate(0)scale(1.02)}50%{transform:translate(5%,6%)scale(1.1)}}@keyframes nebDrift5{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-6%,-4%)scale(1.08)}}.nebula-tex{pointer-events:none;mix-blend-mode:overlay;opacity:.6;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1600' height='1600'%3E%3Cfilter id='nb'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.018' numOctaves='6' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23nb)'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:cover;animation:160s ease-in-out infinite alternate nebTex;position:absolute;inset:0;-webkit-mask-image:radial-gradient(42% 46% at 68% 26%,#000 0%,#0000 72%),radial-gradient(40% 44% at 22% 66%,#000 0%,#0000 72%);mask-image:radial-gradient(42% 46% at 68% 26%,#000 0%,#0000 72%),radial-gradient(40% 44% at 22% 66%,#000 0%,#0000 72%)}@keyframes nebTex{0%{transform:translate(0,0)scale(1.08)}to{transform:translate(-4%,-3%)scale(1.12)}}@media (prefers-reduced-motion:reduce){.neb,.nebula-tex{animation:none!important}}button{font:inherit;cursor:pointer}input,select{font:inherit;color:var(--fg)}input[type=date],input[type=time],input[type=datetime-local]{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--fg);padding:8px 11px;transition:border-color .15s}input[type=date]:focus,input[type=time]:focus,input[type=datetime-local]:focus{border-color:var(--brass);outline:none}h1,h2,h3{font-family:var(--font-display);font-weight:500}.num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:-.02em}.app{z-index:1;flex-direction:column;min-height:100%;display:flex;position:relative}.brand{flex-shrink:0;align-items:center;gap:9px;display:flex}.brand-logo{aspect-ratio:1836/1215;background:url(/brand-mark.png) 0/contain no-repeat;height:1.5em;display:inline-block}[data-theme=light] .brand-logo{background-image:url(/brand-mark-light.png)}.brand-btn{cursor:pointer;color:inherit;background:0 0;border:0;padding:0;transition:opacity .2s}.brand-btn:hover{opacity:.78}.brand .mark{font-family:var(--font-display);letter-spacing:.01em;font-size:19px;font-weight:600}.brand .mark em{color:var(--brass);font-style:normal}.subject{background:var(--surface);border:1px solid var(--line);color:var(--fg);border-radius:999px;align-items:center;gap:10px;padding:7px 14px;font-size:13px;display:inline-flex}.subject:hover{border-color:var(--brass-soft)}.subject .dot{background:var(--brass);border-radius:50%;width:6px;height:6px}.subject .sub{color:var(--muted)}.icon-btn{color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:none;padding:7px 10px;font-size:13px;transition:color .15s,background .15s}.icon-btn:hover{color:var(--fg);background:color-mix(in srgb, var(--surface) 70%, transparent)}.hero{place-items:center;height:100%;padding:clamp(24px,6vh,80px) 20px;display:grid;position:relative;overflow-y:auto}.hero-ornament{pointer-events:none;opacity:.55;place-items:center;display:grid;position:absolute;inset:0}.hero-ornament svg{width:min(760px,96vw);height:auto;color:var(--line-strong)}.orn-outer{transform-origin:0 0;animation:100s linear infinite orn-cw}.orn-mid{transform-origin:0 0;animation:70s linear infinite orn-ccw}@keyframes orn-cw{to{transform:rotate(360deg)}}@keyframes orn-ccw{to{transform:rotate(-360deg)}}[data-theme=light] .hero-ornament{opacity:.35}@media (prefers-reduced-motion:reduce){.orn-outer,.orn-mid{animation:none}}.hero-inner{text-align:center;width:min(440px,92vw);animation:.8s cubic-bezier(.16,1,.3,1) both rise;position:relative}.hero-title{letter-spacing:-.02em;margin:0 0 10px;font-size:clamp(32px,5.5vw,50px);line-height:1.08}.hero-title em{color:var(--brass);font-style:italic}.hero-sub{color:var(--muted);letter-spacing:.01em;margin:0 0 28px;font-size:15px}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}.card{background:var(--card);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--card-line);border-top-color:color-mix(in srgb, var(--brass) 28%, var(--card-line));border-radius:var(--radius);box-shadow:var(--card-shadow);padding:20px}.card h2,.section-label{font-family:var(--font);text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin:0 0 16px;font-size:11px;font-weight:600}.section-label.sub{opacity:.85;margin:14px 0 10px;font-size:10px}.field{text-align:left;margin-bottom:14px}.field>label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:7px;font-size:10.5px;display:block}.input{background:color-mix(in srgb, var(--fg) 4%, transparent);border:1px solid var(--line);border-radius:var(--radius-sm);outline:none;width:100%;padding:11px 13px;transition:border-color .15s,background .15s}.input:focus{border-color:var(--brass-soft);background:color-mix(in srgb, var(--fg) 6%, transparent)}.row{gap:10px;display:flex}.row>*{flex:1}.btn-primary{background:var(--brass);color:#15110a;border-radius:var(--radius-sm);letter-spacing:.01em;border:none;width:100%;margin-top:6px;padding:13px;font-weight:600;transition:filter .15s,transform 50ms}.btn-primary:hover:not(:disabled){filter:brightness(1.07)}[data-theme=light] .btn-primary{color:#1a1206;background:#ffc24b;box-shadow:inset 0 1px #ffffff59,0 6px 18px #00000024}[data-theme=light] .btn-primary:hover:not(:disabled){filter:brightness(1.04)}.btn-primary:active:not(:disabled){transform:translateY(1px)}.btn-primary:disabled{opacity:.5;cursor:default}.hint{color:var(--muted);margin-top:6px;font-size:12px}.disclosure{color:var(--accent-strong);background:0 0;border:none;margin-top:8px;padding:0;font-size:12.5px}.combo{position:relative}.menu{z-index:40;background:var(--popover);border:1px solid var(--popover-line);border-radius:var(--radius-sm);box-shadow:var(--shadow);max-height:260px;margin-top:5px;position:absolute;left:0;right:0;overflow:auto}.menu-item{cursor:pointer;justify-content:space-between;gap:8px;padding:10px 13px;font-size:14px;display:flex}.menu-item:hover{background:var(--surface-2)}.menu-item small{color:var(--muted);font-family:var(--mono);font-size:11px}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--surface-2);color:var(--muted);border:none;border-radius:999px;padding:7px 13px;font-size:13px;transition:color .12s,background .12s}.chip[aria-pressed=true]{color:var(--fg);background:color-mix(in srgb, var(--brass) 22%, var(--surface-2))}.chip-group-label{color:var(--muted);letter-spacing:.06em;margin:12px 0 5px;font-size:11px}.wheel-wrap{place-items:center;width:100%;height:100%;min-height:0;display:grid;position:relative}.wheel{aspect-ratio:1;-webkit-user-select:none;user-select:none;touch-action:none;cursor:grab;max-width:100%;height:min(100%,100vh - 140px)}.wheel:active{cursor:grabbing}.wt-glyph{font-size:15px;line-height:1}.wheel-readout{background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--brass-soft);color:var(--fg);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;padding:7px 16px;font-size:14px;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.wheel-readout .glyph{color:var(--brass)}.wheel-hint{color:var(--muted);border-color:var(--line);font-size:13px}.wheel-origin{fill:var(--brass)}.wor-reset{color:var(--brass)}.wcfg-group{flex-direction:column;gap:6px;display:flex}.wcfg-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:11px}.wcfg-seg{flex-wrap:wrap;gap:3px;display:flex}.wcfg-opt{border:1px solid var(--line);min-width:0;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:7px;flex:auto;padding:5px 8px;font-size:12px;transition:color .12s,background .12s,border-color .12s}.wcfg-opt:hover{color:var(--fg)}.wcfg-opt.on{color:var(--bg);background:var(--brass);border-color:var(--brass)}.wcfg-deg{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--fg);text-align:left;border-radius:7px;margin-top:2px;padding:5px 8px;font-size:12px}.wcfg-check{color:var(--fg);cursor:pointer;align-items:center;gap:8px;font-size:12.5px;display:flex}.wcfg-check input{accent-color:var(--brass)}.wheel-dir{background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--brass-soft);border-radius:14px;flex-direction:column;align-items:center;gap:8px;max-width:min(92%,420px);padding:12px 16px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.wd-arc{align-items:center;gap:10px;display:flex}.wd-step{border:1px solid var(--line-strong);background:var(--surface);width:28px;height:28px;color:var(--fg);cursor:pointer;border-radius:8px;font-size:18px;line-height:1}.wd-step:hover{border-color:var(--brass);color:var(--brass)}.wd-label{color:var(--muted);font-size:13px}.wd-input{text-align:center;background:var(--surface);border:1px solid var(--line-strong);width:5.5ch;color:var(--fg);font:inherit;font-variant-numeric:tabular-nums;border-radius:8px;padding:5px 6px;font-size:14px}.wd-input:focus{border-color:var(--brass);outline:none}.wd-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.wd-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.wd-unit{color:var(--muted);font-size:13px}.wd-val{color:var(--fg);white-space:nowrap;font-size:14px}.wd-date{color:var(--muted);font-size:13px}.wd-events{flex-wrap:wrap;justify-content:center;gap:4px 12px;margin:0;padding:0;list-style:none;display:flex}.wd-events li{align-items:center;gap:5px;font-size:13px;display:inline-flex}.wd-events .glyph{color:var(--fg)}.wd-sym{font-size:14px}.wd-orb{color:var(--muted);font-size:12px}.wheel-mode-whatif .wheel-body{cursor:grab}.wheel text{fill:var(--fg)}.wheel-body{cursor:pointer;transition:opacity .15s}.wheel-aspects line{transition:stroke-opacity .12s,stroke-width .12s}.wheel-body-hit{fill:#0000;stroke:none;transition:fill .15s,stroke .15s}.wheel-body:hover .wheel-body-hit{fill:color-mix(in srgb, var(--fg) 7%, transparent)}.wheel-body-hit.sel{fill:color-mix(in srgb, var(--accent) 16%, transparent);stroke:var(--accent);stroke-width:1.5px}.prog-bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;width:100%;display:flex}.seg-group{align-items:center;gap:0;display:inline-flex}.seg{color:var(--muted);white-space:nowrap;background:0 0;border:none;border-radius:7px;padding:5px 11px;font-size:12.5px;transition:color .12s}.seg:hover:not(:disabled){color:var(--fg)}.seg[aria-pressed=true]{color:var(--brass);font-weight:500}.seg:disabled{opacity:.4}.seg-div{background:var(--line);width:1px;height:13px;margin:0 5px}.date-stepper{align-items:center;gap:4px;display:inline-flex}.step{color:var(--muted);background:0 0;border:none;border-radius:7px;min-width:28px;height:30px;padding:0 8px;font-size:14px;transition:background .12s,color .12s}.step:hover{color:var(--fg);background:color-mix(in srgb, var(--surface) 70%, transparent)}.step.today{color:var(--muted);font-size:12.5px}.date-in{width:auto;padding:7px 10px}.spinner{border:2px solid var(--line-strong);border-top-color:var(--brass);border-radius:50%;width:14px;height:14px;margin-left:4px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.prog-info{text-align:center;color:var(--muted);flex-basis:100%;font-size:13px}.syn-panel{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.syn-form{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:10px;display:flex}.syn-form .field{margin:0}.syn-form label{color:var(--muted);margin-bottom:4px;font-size:11.5px;display:block}.syn-city{min-width:240px;position:relative}.syn-when .date-in{width:auto}.syn-go{white-space:nowrap;padding:9px 16px}.syn-result{color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;font-size:13px;display:inline-flex}.syn-chip{color:var(--fg);align-items:center;gap:7px;display:inline-flex}.syn-dot{background:var(--accent);border-radius:50%;width:9px;height:9px}.syn-count{color:var(--muted)}.syn-clear{border:1px solid var(--line);border-radius:7px}.panel{max-height:100%;overflow:auto}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.tabs{flex-wrap:nowrap;gap:2px;display:flex;overflow-x:auto}.tab{color:var(--muted);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 10px;font-size:13px;transition:color .12s}.tab:hover{color:var(--fg)}.tab[aria-selected=true]{color:var(--fg);border-bottom-color:var(--brass)}.collapse-btn{color:var(--muted);background:0 0;border:none;flex-shrink:0;margin-bottom:4px;padding:2px 6px;font-size:18px}.collapse-btn:hover{color:var(--accent-strong)}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line);white-space:nowrap;padding:7px 8px;font-size:10.5px;font-weight:600}td{border-bottom:1px solid var(--line);white-space:nowrap;padding:8px}tr:last-child td{border-bottom:none}.glyph{color:var(--fg);font-size:16px}.retro{color:var(--retro)}tr.active td{background:color-mix(in srgb, var(--brass) 10%, transparent)}.aspect-grid{overflow:auto}.aspect-grid td,.aspect-grid th{text-align:center;padding:4px 6px}.aspect-cell{font-size:14px}.drawer-scrim{z-index:50;background:0 0;position:fixed;inset:0}.drawer{z-index:51;background:var(--popover);border-left:1px solid var(--popover-line);width:min(380px,92vw);box-shadow:var(--shadow);padding:22px;animation:.28s cubic-bezier(.16,1,.3,1) both slide;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.drawer h2{font-family:var(--font-display);justify-content:space-between;align-items:center;margin:0 0 18px;font-size:18px;display:flex}.drawer{padding-bottom:88px}.drawer-section{margin-bottom:24px}.opt-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.opt{background:var(--surface-2);color:var(--muted);border-radius:var(--radius-sm);text-align:left;border:none;padding:11px 13px;font-size:13px;transition:color .12s,background .12s}.opt[aria-pressed=true]{color:var(--fg);background:color-mix(in srgb, var(--brass) 22%, var(--surface-2))}.group-block{margin-bottom:14px}.group-head{justify-content:space-between;align-items:baseline;margin:12px 0 6px;display:flex}.group-head span{color:var(--muted);letter-spacing:.06em;font-size:11px}.mini-link{color:var(--accent-strong);background:0 0;border:none;padding:0;font-size:12px}.mini-link:hover{text-decoration:underline}.presets{gap:14px;margin-bottom:10px;display:flex}.drawer-footer{background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--line);border-left:1px solid var(--line-strong);width:min(380px,92vw);padding:14px 22px;position:fixed;bottom:0;right:0}.drawer-footer .btn-primary{margin-top:0}@keyframes fade{0%{opacity:0}}@keyframes slide{0%{opacity:0;transform:translate(20px)}}.empty{color:var(--muted);text-align:center;padding:64px 16px}.banner{background:color-mix(in srgb, var(--aspect-tense) 12%, var(--surface));border:1px solid color-mix(in srgb, var(--aspect-tense) 38%, var(--line));border-radius:var(--radius-sm);text-align:left;margin-top:12px;padding:12px 14px;font-size:13px}.app-shell{z-index:1;height:100vh;position:relative;overflow:hidden}.shell{height:100%;min-height:0;display:block;position:relative}.edge-hint{background:var(--brass-soft);opacity:.5;pointer-events:none;z-index:50;border-radius:0 6px 6px 0;width:5px;height:72px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.edge-hot{z-index:55;width:12px;position:absolute;top:0;bottom:0;left:0}.sidebar-dock{z-index:60;width:248px;transition:transform .18s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;inset:0 auto 0 0;transform:translate(-100%)}.sidebar-dock.open{transform:translate(0);box-shadow:0 0 40px #0006}.sidebar{z-index:30;background:color-mix(in srgb, var(--bg) 72%, transparent);width:100%;height:100%;min-height:0;-webkit-backdrop-filter:var(--glass-blur);border-right:1px solid var(--sidebar-line);flex-direction:column;padding:14px 10px;display:flex;position:relative;overflow:visible}.side-brand-row{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px 12px;display:flex}.side-scroll{flex:1;min-height:0;overflow:hidden auto}.side-brand-row .mark{font-family:var(--font-display);font-size:18px;font-weight:600}.side-pin{color:var(--muted);cursor:pointer;opacity:.7;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;transition:opacity .12s,color .12s;display:inline-flex}.side-pin:hover{opacity:1;color:var(--fg)}.side-pin[aria-pressed=true]{opacity:1;color:var(--brass)}.side-group{flex-direction:column;display:flex}.side-heading{border:none;border-top:1px solid var(--line);cursor:pointer;text-transform:uppercase;letter-spacing:.16em;width:100%;color:color-mix(in srgb, var(--fg) 55%, var(--muted));text-align:left;background:0 0;align-items:center;gap:8px;margin-top:8px;padding:14px 10px 9px;font-size:11px;font-weight:700;display:flex}.side-heading:hover{color:var(--fg)}.sh-caret{color:var(--brass);text-align:center;width:12px;font-size:12px}.side-group.collapsed .side-items,.side-group.collapsed .side-group-extra{display:none}.side-items{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.side-group .side-items,.side-group-extra{padding-left:10px}.side-group-extra .export-toolbar{width:100%;display:block}.side-node{list-style:none;position:relative}.side-item{width:100%;color:var(--muted);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 11px;font-size:14px;transition:color .12s,background .12s;display:flex}.side-item:hover{color:var(--fg);background:color-mix(in srgb, var(--fg) 7%, transparent)}.side-item[aria-current=true]{color:var(--fg);background:color-mix(in srgb, var(--fg) 8%, transparent)}.si-glyph{text-align:center;width:18px;color:var(--muted);flex-shrink:0;font-size:15px;transition:color .12s}.side-item:hover .si-glyph,.side-item[aria-current=true] .si-glyph{color:var(--fg)}.si-label{white-space:normal;overflow-wrap:break-word;flex:1;min-width:0;line-height:1.2}.si-caret{color:var(--muted);flex-shrink:0;font-size:15px;line-height:1}.side-item[data-locked] .si-glyph,.side-item[data-locked] .si-label{opacity:.5}.si-lock{color:var(--brass);opacity:.8;flex-shrink:0;align-items:center;display:inline-flex}.side-item[data-locked]:hover .si-lock{opacity:1}.side-flyout{z-index:40;background:var(--popover);border:1px solid var(--sidebar-line);min-width:184px;max-height:calc(100vh - 16px);box-shadow:var(--shadow);border-radius:10px;margin:0;padding:5px;list-style:none;display:none;position:absolute;top:-6px;left:100%;overflow-y:auto}.side-flyout:before{content:"";width:10px;position:absolute;top:0;bottom:0;left:-10px}.side-node:hover>.side-flyout,.side-node:focus-within>.side-flyout{display:block}.sidebar-dock:not(.open) .side-flyout{display:none!important}.side-foot{border-top:1px solid var(--line);flex-shrink:0;align-items:center;gap:4px;padding:10px 6px 2px;display:flex}.work{min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.stage{flex-direction:column;justify-content:center;align-items:center;gap:14px;height:100%;min-height:0;padding:clamp(14px,2.4vw,30px);display:flex}.stage-panel{justify-content:flex-start;align-items:center;overflow:hidden auto}.stage-panel>*{width:100%;max-width:980px}.wheel-ws{justify-content:center;align-items:center;height:100%;min-height:0;padding:clamp(8px,1.4vw,18px) clamp(8px,1.4vw,18px) clamp(44px,6vh,72px);display:flex;position:relative;overflow:hidden}.wws-center{aspect-ratio:1;place-items:center;width:min(100vh - 96px,94vw);display:grid}.wws-center .wheel,.wws-center .harm-wheel,.wws-center>svg{width:100%;max-width:100%;height:100%}.wheel-zoom{position:absolute;inset:0;overflow:hidden}.wheel-zoom.is-zoomed{cursor:grab}.wheel-zoom.is-zoomed:active{cursor:grabbing}.wheel-zoom-inner{will-change:transform;position:absolute}.wheel-zoom-inner>svg,.wheel-zoom-inner .wheel,.wheel-zoom-inner .harm-wheel,.wheel-zoom-inner .wheel-placeholder{z-index:1;width:100%;max-width:100%;height:100%;display:block;position:relative}.wheel-backdrop{z-index:0;pointer-events:none;background:radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--bg) 42%, transparent) 0 90%, transparent 96%);-webkit-backdrop-filter:blur(7px);border-radius:50%;position:absolute;inset:0}.wheel-zoom-ctl{z-index:200;flex-direction:column;gap:6px;display:flex;position:fixed;bottom:78px;right:22px}.wz-btn{border:1px solid var(--line-strong);background:var(--popover);width:38px;height:32px;color:var(--fg);cursor:pointer;box-shadow:var(--shadow);border-radius:9px;justify-content:center;align-items:center;font-size:16px;line-height:1;transition:border-color .15s,color .15s;display:inline-flex}.wz-btn:hover:not(:disabled){border-color:var(--brass);color:var(--brass)}.wz-btn.wz-pct{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.wz-btn:disabled{opacity:.5;cursor:default}.wheel-placeholder{width:100%;height:100%;color:var(--muted);text-align:center;place-items:center;padding:24px;display:grid}.composite-controls-drawer,.lr-controls-drawer,.harmonics-controls-drawer{flex-direction:column;gap:12px;display:flex}.comp-drawer-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.comp-drawer-method{color:var(--muted);font-size:12px}.ws-toolbar{z-index:20;align-items:center;gap:8px;display:flex;position:absolute;top:clamp(12px,2vw,20px)}.ws-toolbar-left{transition:transform .18s cubic-bezier(.16,1,.3,1);left:clamp(14px,2.5vw,26px)}.app-shell.sidebar-open .ws-toolbar-left,.app-shell.sidebar-open .bottom-tabs{transform:translate(248px)}.ws-toolbar-right{right:clamp(14px,2.5vw,26px)}.ws-btn{border:1px solid var(--line-strong);background:var(--popover);color:var(--fg);cursor:pointer;box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13px;transition:border-color .15s,color .15s;display:inline-flex}.ws-btn:hover{border-color:var(--brass);color:var(--brass)}.tools-body{flex-direction:column;gap:16px;display:flex}.tr-modes{flex-wrap:wrap;gap:6px;display:flex}.tr-mode{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 50%, transparent);color:var(--muted);cursor:pointer;border-radius:9px;align-items:center;gap:7px;padding:7px 11px;font-size:13px;transition:color .12s,background .12s,border-color .12s;display:inline-flex}.tr-mode:hover{color:var(--fg)}.tr-mode.on{color:var(--bg);background:var(--brass);border-color:var(--brass)}.tr-readout{border:1px solid var(--line-strong);background:var(--popover);color:var(--fg);font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:var(--shadow);cursor:default;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;transition:border-color .15s,color .15s;display:inline-flex}.tr-readout.rotated{cursor:pointer}.tr-readout.rotated:hover{border-color:var(--brass);color:var(--brass)}.tr-readout .glyph{color:var(--brass)}.drawer-left{border-left:none;border-right:1px solid var(--popover-line);animation:.28s cubic-bezier(.16,1,.3,1) both slide-left;left:0;right:auto}@keyframes slide-left{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@media (width<=720px){.wws-center{width:min(100vh - 150px,94vw)}}.bottom-tabs{z-index:45;pointer-events:none;align-items:flex-end;gap:6px;max-width:100vw;padding:0 0 0 16px;transition:transform .18s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;bottom:0;left:0}.bottom-tabs>*{pointer-events:auto}.bk-tab{border:1px solid var(--line-strong);background:var(--popover);max-width:200px;color:var(--muted);cursor:pointer;box-shadow:var(--shadow);border-bottom:none;border-radius:12px 12px 0 0;align-items:center;gap:8px;padding:8px 16px 10px;font-size:13px;transition:transform .16s cubic-bezier(.16,1,.3,1),color .12s;display:inline-flex;transform:translateY(50%)}.bk-tab:hover,.bk-tab[aria-current=true]{color:var(--fg);transform:translateY(0)}.bk-tab[aria-current=true]{color:var(--fg);background:color-mix(in srgb, var(--fg) 6%, var(--popover))}.bk-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bk-close{opacity:.5;flex-shrink:0;font-size:13px}.bk-close:hover{opacity:1;color:var(--aspect-tense)}.bk-add{border:1px solid var(--line-strong);background:var(--popover);width:40px;color:var(--muted);cursor:pointer;box-shadow:var(--shadow);border-bottom:none;border-radius:12px 12px 0 0;justify-content:center;align-self:flex-end;align-items:center;padding:8px 0 10px;font-size:17px;line-height:1;transition:transform .16s cubic-bezier(.16,1,.3,1),color .12s;display:inline-flex;transform:translateY(50%)}.bk-add:hover{color:var(--brass);transform:translateY(0)}[data-theme=light] .bk-tab,[data-theme=light] .bk-add{background:var(--card);border-color:var(--card-line);box-shadow:0 -2px 14px #14285014}[data-theme=light] .bk-tab[aria-current=true]{background:color-mix(in srgb, var(--fg) 7%, var(--card))}.panel-crash{text-align:center;border:1px solid var(--card-line);border-radius:var(--radius);background:var(--card);max-width:460px;margin:auto;padding:32px 28px}.panel-crash h3{font-family:var(--font-display);margin:0 0 10px;font-size:20px}.panel-crash p{color:var(--muted);word-break:break-word;margin:0 0 18px;font-size:14px}.panel-crash .btn-ghost{width:auto;padding:10px 22px}.stage-acg{justify-content:flex-start;align-items:stretch;overflow:auto}.stage-acg>.acg-panel{width:100%;max-width:1100px;margin:0 auto}.stage-note{color:var(--muted);letter-spacing:.02em;flex-shrink:0;font-size:13px}.data-tabs{margin-bottom:10px}.data-empty{color:var(--muted);text-align:center;padding:20px 0}.pos-list,.asp-list{margin:0;padding:0;list-style:none}.pos-row{border-radius:10px;grid-template-columns:1fr auto;align-items:baseline;column-gap:12px;padding:10px 8px;transition:background .1s;display:grid}.pos-row.on{background:color-mix(in srgb, var(--brass) 10%, transparent)}.pos-body{grid-area:1/1;align-items:center;gap:9px;font-size:14px;display:flex}.pos-deg{text-align:right;white-space:nowrap;grid-area:1/2;font-size:13.5px}.pos-sub{color:var(--muted);letter-spacing:0;grid-area:2/1/auto/-1;margin-top:2px;font-size:11.5px}.asp-row{justify-content:space-between;align-items:center;gap:12px;padding:9px 8px;display:flex}.asp-row+.asp-row{border-top:1px solid color-mix(in srgb, var(--line) 60%, transparent)}.asp-pair{align-items:center;gap:9px;min-width:0;display:flex}.asp-sym{font-size:15px}.asp-orb{color:var(--muted);white-space:nowrap;font-size:12.5px}.cross-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.account{place-items:center;height:100%;padding:40px 20px;display:grid;overflow-y:auto}.account-title{text-align:center;margin:0 0 8px;font-size:clamp(26px,4vw,38px)}.account-card{flex-direction:column;gap:14px;width:min(520px,92vw);margin-top:8px;display:flex}.acc-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding-bottom:14px;display:flex}.acc-row:last-child{border-bottom:none;padding-bottom:0}.acc-k{font-weight:500}.settings-panel .btn-primary{margin-top:16px}.stage-dignities{justify-content:flex-start;overflow-y:auto}.dignities-view{width:100%;max-width:560px;margin:0 auto}.dignities-empty{margin-top:12vh}.dig-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.dig-head h2{font-family:var(--font-display);margin:0;font-size:20px;font-weight:500}.dig-sect{color:var(--brass);border:1px solid color-mix(in srgb, var(--brass) 40%, transparent);letter-spacing:.02em;border-radius:999px;padding:2px 10px;font-size:12px}.dig-list{margin:10px 0 0;padding:0;list-style:none}.dig-row{border-radius:10px;grid-template-columns:1fr auto auto;align-items:center;column-gap:12px;padding:9px 8px;display:grid}.dig-row:nth-child(odd){background:color-mix(in srgb, var(--surface-2) 45%, transparent)}.dig-planet{align-items:center;gap:9px;font-size:14px;display:flex}.dig-pos{color:var(--muted);white-space:nowrap;margin-left:2px;font-size:12.5px}.dig-badges{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.dig-badge{border:1px solid #0000;border-radius:6px;padding:3px 6px;font-size:11px;font-weight:600;line-height:1}.dig-badge.good{color:var(--earth);border-color:color-mix(in srgb, var(--earth) 45%, transparent);background:color-mix(in srgb, var(--earth) 12%, transparent)}.dig-badge.bad{color:var(--retro);border-color:color-mix(in srgb, var(--retro) 45%, transparent);background:color-mix(in srgb, var(--retro) 12%, transparent)}.dig-none{color:var(--muted)}.dig-score,.dig-total{text-align:right;min-width:30px;font-size:14px;font-weight:600}.dig-good{color:var(--earth)}.dig-bad{color:var(--retro)}.dig-zero{color:var(--muted)}.dig-foot{text-align:right;color:var(--muted);letter-spacing:.02em;padding:8px 8px 0;font-size:11px;list-style:none}.dig-strow{border-bottom:1px solid var(--line);padding:10px 8px}.dig-strow-head{justify-content:space-between;align-items:center;display:flex}.dig-factors{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.dig-factor{background:color-mix(in srgb, var(--surface-2) 60%, transparent);border:1px solid var(--line);border-radius:6px;padding:2px 7px;font-size:11.5px}.dig-factor .num{margin-left:2px;font-weight:600}.dig-legend{color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin-top:16px;font-size:11.5px;display:flex}.dig-legend b{color:var(--fg);margin-right:3px;font-weight:600}.orb-grid{grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:6px;margin-top:8px;display:grid}.orb-item{border:1px solid var(--line);background:color-mix(in srgb, var(--surface-2) 45%, transparent);border-radius:8px;align-items:center;gap:4px;padding:4px 6px;display:flex}.orb-in{width:100%;min-width:0;color:var(--fg);text-align:right;-moz-appearance:textfield;background:0 0;border:none;padding:0;font-size:13px}.orb-in::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.orb-in::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.orb-in:focus{outline:none}.orb-item:focus-within{border-color:var(--accent)}.orb-deg{color:var(--muted);font-size:12px}.btn-ghost{color:var(--fg);border:1px solid var(--line-strong);letter-spacing:.01em;background:0 0;border-radius:999px;padding:13px 26px;font-weight:600;transition:border-color .2s,color .2s,transform 50ms}.btn-ghost:hover{border-color:var(--brass);color:var(--brass)}.fab-sun{width:20px;height:20px;color:var(--brass);filter:drop-shadow(0 0 6px color-mix(in srgb, var(--brass) 50%, transparent));flex-shrink:0;transition:transform .7s cubic-bezier(.16,1,.3,1)}.body-detail .bd-title{align-items:center;gap:10px;display:inline-flex}.body-detail .bd-title .glyph{color:var(--brass);font-size:22px}.bd-pos{flex-wrap:wrap;align-items:baseline;gap:8px;margin:4px 0 18px;display:flex}.bd-deg{color:var(--fg);font-size:22px}.bd-sign{color:var(--brass);font-size:20px}.bd-sign-name{color:var(--muted);font-size:15px}.bd-retro{color:var(--retro);margin-left:4px;font-size:13px}.bd-facts{flex-direction:column;gap:1px;margin:0 0 16px;display:flex}.bd-facts>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding:9px 2px;display:flex}.bd-facts dt{color:var(--muted);font-size:13.5px}.bd-facts dd{color:var(--fg);margin:0;font-size:14px}.bd-dig-tags{flex-wrap:wrap;gap:6px;margin:0 0 18px;display:flex}.bd-dig-tag{background:color-mix(in srgb, var(--brass) 16%, transparent);color:var(--brass);border:1px solid color-mix(in srgb, var(--brass) 35%, transparent);border-radius:999px;padding:4px 10px;font-size:12px}.bd-dig-tag.weak{background:color-mix(in srgb, var(--aspect-tense) 14%, transparent);color:var(--aspect-tense);border-color:color-mix(in srgb, var(--aspect-tense) 32%, transparent)}.bd-subhead{font-family:var(--font-display);align-items:baseline;gap:6px;margin:0 0 8px;font-size:15px;font-weight:600;display:flex}.bd-count{color:var(--muted);font-size:13px}.bd-asp-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.bd-asp-row{border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:10px;padding:7px 8px;display:flex}.bd-asp-row:hover{background:color-mix(in srgb, var(--accent) 9%, transparent)}.bd-asp-pair{align-items:center;gap:8px;min-width:0;display:flex}.bd-asp-pair .asp-sym{font-size:15px}.bd-asp-name{color:var(--muted);min-width:64px;font-size:13px}.bd-asp-with{color:var(--fg);align-items:center;gap:5px;font-size:14px;display:inline-flex}.bd-asp-with .glyph{color:var(--brass)}.bd-asp-orb{color:var(--muted);flex-shrink:0;font-size:13px}.cosmic-panorama{z-index:0;pointer-events:none;--cp-gold:#ffc24b;--cp-star:#e8ecffeb;--cp-sh-drop:.42;--cp-sh-in:.4;--cp-grain:.05;--cp-mw:#8fa8e8;--cp-mw-core:#ffe3b0;--cp-mw-dust:#080b18;position:fixed;inset:0 0 0 248px;overflow:hidden}@media (width<=860px){.cosmic-panorama{left:0}}.cp-stage{background:linear-gradient(#05060f 0%,#0b1020 16%,#0e0a22 33%,#0b1020 50%,#170c1e 66%,#0a0e20 83%,#070a18 100%);position:absolute;inset:0;overflow:hidden}.cp-layer{will-change:transform;height:0;position:absolute;top:0;left:0;right:0}.cp-far,.cp-galaxy{z-index:1}.cp-neblayer{z-index:2}.cp-mid{z-index:3}.cp-near{z-index:4}.cp-focal{position:absolute;transform:translate(-50%,-50%)}.cp-focal.cp-sun-focal{will-change:transform, opacity;backface-visibility:hidden;transform:translate(-50%,-50%)translateZ(0)}.cp-clay{width:100%;height:100%;position:relative}.cp-sphere{background:radial-gradient(circle at 34% 27%, color-mix(in srgb, var(--c1) 60%, #fff), var(--c1) 40%, var(--c2) 100%);box-shadow:inset -10px -13px 28px rgba(0, 0, 0, var(--cp-sh-in)), inset 9px 11px 22px color-mix(in srgb, var(--c1) 55%, #fff 45%), 0 26px 48px rgba(0, 0, 0, var(--cp-sh-drop));border-radius:50%;overflow:hidden}.cp-sphere:after{content:"";filter:blur(6px);z-index:3;background:#ffffff73;border-radius:50%;width:26%;height:20%;position:absolute;top:16%;left:24%}.cp-sphere .cp-tex,.cp-sphere .cp-bands{pointer-events:none;z-index:2;width:100%;height:100%;transform:rotate(var(--trot,0deg));border-radius:50%;display:block;position:absolute;inset:0}.cp-sphere .cp-tex{mix-blend-mode:overlay;opacity:.45}.cp-sphere .cp-bands{mix-blend-mode:soft-light;opacity:.6}.cp-sphere:before{content:"";pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 1.5px #ffffff1a}.cp-b-sun{--c1:#ffd66e;--c2:#ff8a3d}.cp-b-ring{--c1:#7fa0ea;--c2:#33489e}.cp-b-orange{--c1:#ff9d52;--c2:#cc4c1a}.cp-b-moon{--c1:#f1e4ce;--c2:#c7b496}.cp-b-purple{--c1:#b488ff;--c2:#6a45c4}.cp-b-teal{--c1:#5fe3b0;--c2:#1c97a0}.cp-b-rose{--c1:#ff93b2;--c2:#ce4b72}.cp-b-deep{--c1:#3d4890;--c2:#11163a}.cp-ringed .cp-ring{border:9px solid var(--ring,#a9bef2);width:178%;height:60%;box-shadow:0 8px 16px rgba(0, 0, 0, calc(var(--cp-sh-drop) * .6));--ring:#aabef2;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-22deg)}.cp-ringed .cp-ring--front{clip-path:polygon(0 50%,100% 50%,100% 100%,0 100%);z-index:5}.cp-ringed .cp-planet{z-index:4;width:72%;height:72%;position:absolute;inset:14% 0 0 14%}.cp-with-moon .cp-moon{width:26%;height:26%;position:absolute;top:8%;right:-14%}.cp-milkyway{isolation:isolate;will-change:transform;backface-visibility:hidden;width:100%;height:100%;position:relative;transform:translateZ(0)}.cp-milkyway .cp-glow,.cp-milkyway .cp-core,.cp-milkyway .cp-lane,.cp-milkyway .cp-mw-stars{transform:translate(-50%, -50%) rotate(var(--mw-tilt,-26deg));position:absolute;top:50%;left:50%}.cp-milkyway .cp-glow{background:radial-gradient(ellipse 50% 50% at 50% 50%, var(--cp-mw) 0%, transparent 72%);filter:blur(18px);opacity:.5;width:158%;height:42%}.cp-milkyway .cp-core{background:radial-gradient(ellipse 50% 50% at 50% 50%, var(--cp-mw-core) 0%, transparent 70%);filter:blur(16px);opacity:.62;width:52%;height:30%;left:43%}.cp-milkyway .cp-lane{background:radial-gradient(ellipse 50% 50% at 50% 50%, var(--cp-mw-dust) 0%, transparent 76%);filter:blur(11px);opacity:.55;width:158%;height:8%}.cp-milkyway .cp-mw-stars{width:158%;height:42%}.cp-milkyway .cp-mw-star{background:var(--cp-star);border-radius:50%;position:absolute}.cp-cloud{isolation:isolate;will-change:transform;backface-visibility:hidden;width:100%;height:100%;position:relative;transform:translateZ(0)}.cp-cloud .cp-gas{width:128%;height:128%;transform:rotate(var(--neb-tilt,-22deg));opacity:.85;position:absolute;inset:-14%}.cp-cloud .cp-gas.cp-wisp{opacity:.55}.cp-cloud .cp-cloud-core{background:radial-gradient(closest-side, var(--nc-core) 0%, transparent 76%);filter:blur(18px);opacity:.5;border-radius:50%;width:52%;height:42%;position:absolute}.cp-cloud .cp-cloud-star{background:var(--cp-star);box-shadow:0 0 5px var(--cp-star);border-radius:50%;position:absolute}.cp-cloud--warm{--nc-core:#ffe6c2}.cp-cloud--cool{--nc-core:#dce6ff}.cp-rock{--c1:#73778c;--c2:#3a3d4d;background:radial-gradient(circle at 34% 28%, color-mix(in srgb, var(--c1) 55%, #fff), var(--c1) 45%, var(--c2) 100%);box-shadow:inset -4px -5px 10px #0006, 0 8px 14px rgba(0, 0, 0, calc(var(--cp-sh-drop) * .7));position:absolute}.cp-star{background:var(--cp-star);border-radius:50%;position:absolute}.cp-spark{background:var(--cp-star);clip-path:polygon(50% 0,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 42%);position:absolute}.cp-sphere.cp-b-sun{background:radial-gradient(circle at 50% 46%,#fff6d2 0%,#ffdd7a 32%,#ff9e40 78%,#f4791f 100%);box-shadow:0 0 40px 8px #ffb8546b,inset -7px -9px 22px #c4541057,inset 8px 10px 22px #fff2ce8c}.cp-sphere.cp-b-sun:after{content:"";filter:blur(5px);background:radial-gradient(circle,#fffcebd9,#0000 70%);border-radius:50%;width:40%;height:40%;position:absolute;top:30%;left:30%}.cp-sun-glow{pointer-events:none;background:radial-gradient(circle, color-mix(in srgb, var(--cp-gold) 75%, #fff) 0%, var(--cp-gold) 16%, transparent 60%);opacity:.4;filter:blur(10px);border-radius:50%;position:absolute;inset:-58%}@media (prefers-reduced-motion:no-preference){.cp-float{animation:cp-float var(--dur,9s) ease-in-out infinite}@keyframes cp-float{0%,to{transform:translateY(0) rotate(var(--rot,0deg))}50%{transform:translateY(-12px) rotate(var(--rot,0deg))}}}.landing-stage,.landing-features,.landing-how,.landing-trust,.landing-pricing,.landing-faq,.landing-closing,.landing-footer{z-index:1;position:relative}body.landing-scroll{background:#05060f;background-attachment:initial}body.landing-scroll:after{content:none}.landing{z-index:1;color:var(--fg);--glass-blur:none;--cta:#ffc24b;--cta-ink:#1a1206;position:relative}.landing-rail{z-index:5;background:var(--bg);border-right:1px solid var(--line);width:248px;color:var(--fg);position:fixed;top:0;bottom:0;left:0}.landing-rail,.landing .lf-card,.landing .how-step,.landing .price-card,.landing .faq-item,.landing .trust-inner{-webkit-backdrop-filter:none;color:var(--fg)}.rail-page-nav{padding-left:10px}.landing-rail .side-scroll{flex:auto;overflow:visible}.side-rail-cta{flex-shrink:0;justify-content:center;padding:10px 8px 14px;display:flex}.side-rail-cta .landing-login{justify-content:center;width:auto}.landing-rail .brand-btn .brand-logo{flex-shrink:0;height:24px}.landing-main{z-index:1;flex-direction:column;min-width:0;display:flex;position:fixed;top:0;left:248px;right:0}.landing-track{z-index:0;pointer-events:none;width:1px;position:relative}@media (width<=860px){.landing-rail{display:none}.landing-main{left:0}}.landing-login{border:1px solid var(--brass);background:color-mix(in srgb, var(--brass) 12%, transparent);color:var(--fg);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:7px 16px 7px 9px;font-size:13.5px;font-weight:600;transition:background .2s,box-shadow .2s;display:inline-flex}.landing-login:hover{background:color-mix(in srgb, var(--brass) 20%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--brass) 16%, transparent)}.landing-login .fab-sun{width:20px;height:20px}.landing-login:hover .fab-sun{transform:rotate(45deg)}.landing-stage{grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);align-items:center;gap:clamp(24px,5vw,72px);width:100%;max-width:1180px;min-height:calc(100vh - 72px);margin:0 auto;padding:clamp(16px,5vh,60px) clamp(20px,6vw,80px) clamp(40px,8vh,90px);display:grid;position:relative;overflow:hidden}.landing-stage.landing-stage--solo{text-align:center;grid-template-columns:1fr;justify-items:center}.landing-stage--solo .stage-copy{text-align:center;max-width:660px}.landing-stage--solo .landing-sub{margin-left:auto;margin-right:auto}.landing-stage--solo .landing-cta{justify-content:center}.stage-copy{z-index:2;text-align:left;animation:.9s cubic-bezier(.16,1,.3,1) both rise;position:relative}.landing-title{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:clamp(36px,5.2vw,66px);font-weight:500;line-height:1.05}.landing-title em{color:var(--brass);font-style:italic}.landing-sub{color:color-mix(in srgb, var(--fg) 72%, transparent);max-width:460px;margin:22px 0 0;font-size:clamp(15px,1.5vw,18px)}.landing-cta{flex-wrap:wrap;justify-content:flex-start;gap:14px;margin-top:34px;display:flex}.landing .btn-primary,.landing .btn-ghost,.landing-rail .landing-login{width:auto;font:inherit;letter-spacing:.01em;box-shadow:none;cursor:pointer;background-image:none;background:var(--cta);color:var(--cta-ink);border:1px solid #0000;border-color:var(--cta);border-radius:999px;justify-content:center;align-items:center;gap:8px;margin-top:0;padding:12px 26px;font-size:15px;font-weight:600;transition:transform .15s,background .15s,border-color .15s,color .15s,filter .15s;display:inline-flex}.landing .btn-primary:hover:not(:disabled),.landing .btn-ghost:hover,.landing-rail .landing-login:hover{filter:brightness(1.05);box-shadow:none;transform:translateY(-1px)}.landing .btn-primary:active:not(:disabled),.landing .btn-ghost:active,.landing-rail .landing-login:active{transform:translateY(0)}@media (width<=860px){.landing-stage{text-align:center;grid-template-columns:1fr;min-height:auto;padding-top:clamp(24px,8vh,70px)}.stage-copy{text-align:center}.landing-sub{margin-left:auto;margin-right:auto}.landing-cta{justify-content:center}}.landing-features{width:100%;max-width:1180px;margin:0 auto;padding:clamp(40px,9vh,110px) clamp(20px,6vw,80px)}.lf-head{text-align:center;max-width:640px;margin:0 auto 48px}.lf-head h2{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 14px;font-size:clamp(28px,4vw,46px);font-weight:500}.lf-head p{color:color-mix(in srgb, var(--fg) 70%, transparent);margin:0;font-size:16px}.lf-grid{grid-template-columns:repeat(auto-fit,minmax(238px,1fr));gap:18px;display:grid}.lf-card{background:var(--card);border:1px solid var(--card-line);border-radius:var(--radius);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--card-shadow);padding:26px;transition:transform .25s,border-color .25s}.lf-card:hover{border-color:var(--brass-soft);transform:translateY(-4px)}.lf-glyph{border:1px solid var(--line-strong);width:44px;height:44px;color:var(--brass);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;font-size:20px;display:inline-flex}.lf-card h3{font-family:var(--font-display);margin:0 0 8px;font-size:20px;font-weight:500}.lf-card p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.landing-closing{text-align:center;max-width:640px;margin:0 auto;padding:clamp(40px,8vh,90px) 20px}.landing-closing h2{font-family:var(--font-display);margin:0 0 12px;font-size:clamp(28px,4.5vw,50px);font-weight:500}.landing-closing p{color:color-mix(in srgb, var(--fg) 70%, transparent);margin:0 0 26px;font-size:16px}.landing-footer{background:var(--card);border-top:1px solid var(--card-line);color:var(--fg);margin-top:0}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;max-width:1180px;margin:0 auto;padding:22px clamp(20px,6vw,80px);display:flex}.footer-brand{align-items:baseline;gap:10px;display:flex}.footer-mark{font-family:var(--font-display);letter-spacing:.01em;color:var(--fg);font-size:15px}.footer-mark em{color:var(--brass);font-style:italic}.footer-copy{color:var(--muted);font-size:12.5px}.footer-links{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.footer-link{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:13.5px;transition:color .15s}.footer-link:hover{color:var(--brass);text-decoration:underline}@media (width<=560px){.footer-inner{flex-direction:column;align-items:flex-start}}.landing-how{width:100%;max-width:1100px;margin:0 auto;padding:clamp(30px,6vh,80px) clamp(20px,6vw,80px)}.how-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px;display:grid}.how-step{border:1px solid var(--card-line);border-radius:var(--radius);background:var(--card);-webkit-backdrop-filter:var(--glass-blur);padding:28px 24px 24px;position:relative}.how-num{width:38px;height:38px;font-family:var(--font-display);color:var(--bg);background:var(--brass);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;font-size:18px;display:inline-flex}.how-step h3{font-family:var(--font-display);margin:0 0 8px;font-size:19px;font-weight:500}.how-step p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.landing-trust{width:100%;padding:clamp(30px,6vh,70px) clamp(20px,6vw,80px)}.trust-inner{border:1px solid var(--card-line);border-radius:var(--radius);background:var(--card);max-width:1100px;-webkit-backdrop-filter:var(--glass-blur);text-align:center;margin:0 auto;padding:clamp(28px,4vw,48px)}.trust-head h2{font-family:var(--font-display);margin:0 0 10px;font-size:clamp(24px,3.5vw,38px);font-weight:500}.trust-head p{color:var(--muted);margin:0 0 34px;font-size:15px}.trust-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:24px;display:grid}.trust-item{flex-direction:column;align-items:center;gap:6px;display:flex}.trust-val{font-family:var(--font-display);color:var(--brass);font-size:clamp(28px,4vw,42px);line-height:1}.trust-label{color:var(--muted);letter-spacing:.02em;font-size:13px}.landing-pricing{width:100%;max-width:1180px;margin:0 auto;padding:clamp(40px,8vh,100px) clamp(20px,6vw,80px) clamp(20px,4vh,40px)}.price-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));align-items:stretch;gap:18px;display:grid}.price-card{border:1px solid var(--card-line);border-radius:var(--radius);background:var(--card);-webkit-backdrop-filter:var(--glass-blur);flex-direction:column;padding:30px 24px 26px;transition:transform .25s,border-color .25s;display:flex;position:relative}.price-card:hover{border-color:var(--brass-soft);transform:translateY(-4px)}.price-card-popular{border-color:var(--brass);box-shadow:0 0 0 1px var(--brass), var(--card-shadow)}.price-badge{background:var(--brass);color:var(--bg);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:700;position:absolute;top:-11px;left:50%;transform:translate(-50%)}.price-name{font-family:var(--font-display);margin:0 0 14px;font-size:22px;font-weight:500}.price-amount{align-items:baseline;gap:3px;margin-bottom:4px;display:flex}.price-num{font-family:var(--font-display);color:var(--fg);font-size:40px;line-height:1}.price-unit{color:var(--fg);font-size:20px}.price-period{color:var(--muted);font-size:14px}.price-quota{color:var(--brass);margin-bottom:18px;font-size:13.5px}.price-feats{flex-direction:column;flex:1;gap:10px;margin:0 0 24px;padding:0;list-style:none;display:flex}.price-feats li{color:var(--muted);padding-left:22px;font-size:14px;line-height:1.4;position:relative}.price-feats li:before{content:"✓";color:var(--brass);font-weight:700;position:absolute;left:0}.price-card .btn-primary,.price-card .btn-ghost{width:100%}.price-note{text-align:center;color:color-mix(in srgb, var(--fg) 62%, transparent);margin:26px auto 0;font-size:12.5px}.landing .lf-card p,.landing .how-step p,.landing .price-feats li,.landing .price-period,.landing .trust-head p,.landing .trust-label{color:color-mix(in srgb, var(--fg) 30%, var(--muted))}.landing-faq{width:100%;max-width:760px;margin:0 auto;padding:clamp(40px,8vh,90px) clamp(20px,6vw,40px)}.faq-list{flex-direction:column;gap:12px;display:flex}.faq-item{border:1px solid var(--card-line);border-radius:var(--radius);background:var(--card);-webkit-backdrop-filter:var(--glass-blur);overflow:hidden}.faq-item summary{cursor:pointer;font-family:var(--font-display);color:var(--fg);justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-size:17px;font-weight:600;list-style:none;display:flex}.faq-item summary:hover{color:var(--brass)}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--brass);font-size:22px;line-height:1;transition:transform .2s}.faq-item[open] summary:after{transform:rotate(45deg)}.faq-item p{color:color-mix(in srgb, var(--fg) 78%, var(--muted));margin:0;padding:0 22px 20px;font-size:14.5px;line-height:1.65}.legal-scrim{z-index:320;background:#030510b8;place-items:center;padding:20px;animation:.18s legalFade;display:grid;position:fixed;inset:0}@keyframes legalFade{0%{opacity:0}}.legal-modal{background:var(--popover);border:1px solid var(--popover-line);width:min(640px,100%);max-height:min(86vh,820px);color:var(--fg);border-radius:18px;padding:32px clamp(22px,4vw,40px) 30px;animation:.25s cubic-bezier(.16,1,.3,1) both legalRise;position:relative;overflow-y:auto;box-shadow:0 30px 80px #00000080}@keyframes legalRise{0%{opacity:0;transform:translateY(14px)}}.legal-close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:15px;transition:color .15s,background .15s;position:absolute;top:14px;right:14px}.legal-close:hover{color:var(--fg);background:color-mix(in srgb, var(--fg) 8%, transparent)}.legal-head{margin-bottom:18px;padding-right:28px}.legal-head h2{font-family:var(--font-display);color:var(--fg);margin:0 0 6px;font-size:25px;font-weight:500}.legal-head p{color:var(--muted);margin:0;font-size:13px}.legal-body{flex-direction:column;gap:18px;display:flex}.legal-intro{color:var(--fg);margin:0;font-size:14.5px;line-height:1.6}.legal-section h3{font-family:var(--font-display);color:var(--fg);margin:0 0 6px;font-size:16px;font-weight:600}.legal-section p{color:color-mix(in srgb, var(--fg) 82%, var(--muted));margin:0;font-size:14px;line-height:1.6}.legal-requisites ul{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.legal-requisites li{color:color-mix(in srgb, var(--fg) 82%, var(--muted));font-size:14px;line-height:1.55}.legal-inn{font-family:var(--mono);color:var(--fg)!important}.legal-email{font:inherit;color:var(--fg);cursor:pointer;background:0 0;border:0;margin:0;padding:0;text-decoration:none;transition:color .15s}.legal-email:hover{color:var(--brass)}.legal-copied{color:var(--brass);margin-left:8px;font-size:12.5px}.auth-scrim{z-index:300;background:#030510b8;place-items:center;padding:20px;animation:.18s authFade;display:grid;position:fixed;inset:0}@keyframes authFade{0%{opacity:0}}.auth-modal{background:var(--popover);border:1px solid var(--popover-line);width:min(400px,100%);color:var(--fg);border-radius:18px;padding:30px clamp(22px,5vw,34px) 26px;animation:.25s cubic-bezier(.16,1,.3,1) both authRise;position:relative;box-shadow:0 30px 80px #00000080}@keyframes authRise{0%{opacity:0;transform:translateY(14px)}}.auth-close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:15px;position:absolute;top:12px;right:12px}.auth-close:hover{color:var(--fg);background:color-mix(in srgb, var(--fg) 8%, transparent)}.auth-head{text-align:center;margin-bottom:22px}.auth-head .brand-logo{height:30px;margin:0 auto 12px}.auth-head h2{font-family:var(--font-display);margin:0 0 6px;font-size:24px;font-weight:500}.auth-head p{color:var(--muted);margin:0;font-size:14px}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-field>span{color:var(--muted);font-size:12.5px}.auth-field input{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;color:var(--fg);font:inherit;padding:11px 13px;font-size:15px;transition:border-color .15s,box-shadow .15s}.auth-field input:focus{border-color:var(--brass);box-shadow:0 0 0 3px color-mix(in srgb, var(--brass) 20%, transparent);outline:none}.auth-field input::placeholder{color:color-mix(in srgb, var(--muted) 75%, transparent)}.auth-error{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--aspect-tense) 14%, transparent);border:1px solid color-mix(in srgb, var(--aspect-tense) 34%, transparent);color:var(--aspect-tense);margin:0;padding:9px 12px;font-size:13px}.auth-submit{border-radius:999px;width:100%;margin-top:4px;padding:12px}.auth-swap{text-align:center;color:var(--muted);margin-top:18px;font-size:13.5px}.auth-swap button{color:var(--brass);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:13.5px}.auth-swap button:hover{text-decoration:underline}.acc-v{color:var(--fg);margin-top:2px;font-size:15px}.acc-plan-badge{background:color-mix(in srgb, var(--brass) 16%, transparent);border:1px solid color-mix(in srgb, var(--brass) 36%, transparent);color:var(--brass);white-space:nowrap;border-radius:999px;padding:5px 14px;font-size:13px}.acc-soon{color:var(--muted);font-size:12px;font-style:italic}.account-guest{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.account-guest .btn-primary,.account-guest .btn-ghost{border-radius:999px;width:auto;margin-top:0;padding:11px 24px}.account-logout{border-radius:999px;width:auto;margin:18px auto 0;padding:10px 24px;display:block}.upg-badge{background:color-mix(in srgb, var(--brass) 16%, transparent);border:1px solid color-mix(in srgb, var(--brass) 40%, transparent);color:var(--brass);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;margin:0 auto 12px;padding:4px 14px;font-size:12px;font-weight:600;display:inline-block}.upg-pitch{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--line-strong);color:var(--fg);text-align:center;margin:0 0 20px;padding:12px 14px;font-size:13.5px;line-height:1.5}.upg-dismiss{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;margin:14px auto 0;font-size:13px;display:block}.upg-dismiss:hover{color:var(--fg);text-decoration:underline}.upg-gate{text-align:center;max-width:460px;color:var(--fg);flex-direction:column;align-items:center;gap:14px;margin:clamp(40px,12vh,120px) auto;display:flex}.upg-gate-lock{background:color-mix(in srgb, var(--brass) 12%, transparent);border:1px solid color-mix(in srgb, var(--brass) 32%, transparent);width:56px;height:56px;color:var(--brass);border-radius:50%;place-items:center;display:grid}.upg-gate h2{font-family:var(--font-display);margin:0;font-size:26px;font-weight:500}.upg-gate p{color:var(--muted);margin:0;font-size:15px;line-height:1.55}.upg-gate .btn-primary{border-radius:999px;width:auto;margin-top:6px;padding:12px 28px}.sub-card{margin-top:14px}.sub-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.sub-actions .btn-primary{width:auto;padding:10px 20px}.sub-cancel{color:var(--muted)}.sub-cancel:hover{color:var(--danger,#c0392b)}.sub-refresh{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;margin:14px auto 0;font-size:13px;display:block}.sub-refresh:hover{color:var(--fg);text-decoration:underline}.sub-refresh:disabled{opacity:.5;cursor:default;text-decoration:none}.billing-result{z-index:1;place-items:center;min-height:100vh;padding:24px;display:grid;position:relative}.billing-result-card{text-align:center;flex-direction:column;align-items:center;gap:14px;max-width:460px;padding:36px 32px;display:flex}.billing-result-card h1{font-family:var(--font-display);color:var(--fg);margin:0;font-size:26px;font-weight:500}.billing-result-card .btn-primary{border-radius:999px;width:auto;margin-top:6px;padding:12px 28px}.billing-spinner{border:3px solid color-mix(in srgb, var(--brass) 24%, transparent);border-top-color:var(--brass);border-radius:50%;width:44px;height:44px;animation:.9s linear infinite billing-spin}@keyframes billing-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.billing-spinner{animation-duration:2.4s}}.billing-check{background:color-mix(in srgb, var(--brass) 14%, transparent);border:1px solid color-mix(in srgb, var(--brass) 36%, transparent);width:56px;height:56px;color:var(--brass);border-radius:50%;place-items:center;font-size:28px;display:grid}.export-toolbar{align-items:center;gap:4px;display:inline-flex;position:relative}.export-menu{z-index:60;background:var(--popover);border:1px solid var(--popover-line);border-radius:var(--radius-sm);min-width:280px;box-shadow:var(--shadow);padding:8px;position:absolute;top:calc(100% + 6px);right:0}.export-menu-head{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:6px 8px 4px;font-size:11px}.export-action{text-align:left;width:100%;color:var(--fg);border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:10px;padding:9px 8px;font-size:13.5px;transition:background .12s;display:flex}.export-action:hover:not(:disabled){background:var(--surface-2)}.export-action:disabled{opacity:.4}.export-action .ea-glyph{text-align:center;width:18px;color:var(--muted)}.export-divider{background:var(--line);height:1px;margin:6px 2px}.export-save-row{gap:6px;padding:4px 4px 8px;display:flex}.export-save-row .input{flex:1;min-width:0}.saved-list{max-height:260px;margin:0;padding:0;list-style:none;overflow:auto}.saved-row{border-radius:var(--radius-sm);align-items:center;gap:8px;padding:8px;display:flex}.saved-row:hover{background:var(--surface-2)}.saved-main{min-width:0;color:var(--fg);text-align:left;cursor:pointer;background:0 0;border:none;flex:1;padding:0}.saved-label{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;overflow:hidden}.saved-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.saved-row .input{flex:1;min-width:0}.saved-actions{flex-shrink:0;gap:2px;display:inline-flex}.saved-icon{color:var(--muted);background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:13px;transition:color .12s,background .12s}.saved-icon:hover{color:var(--fg);background:color-mix(in srgb, var(--surface) 70%, transparent)}.saved-icon.danger:hover{color:var(--retro)}.export-empty{color:var(--muted);text-align:center;padding:14px 8px;font-size:12.5px}.export-toast{color:var(--brass);padding:4px 8px 8px;font-size:11.5px}.export-toast.error{color:var(--retro)}@media print{.export-toolbar,.export-menu{display:none!important}svg.wheel{width:100%;max-width:380px;height:auto}table tr{break-inside:avoid;page-break-inside:avoid}}.datefield{display:inline-block;position:relative}.datefield.df-full{width:100%;display:block}.datefield-trigger{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;color:var(--fg);font:inherit;cursor:pointer;align-items:center;gap:8px;padding:8px 12px;font-size:14px;transition:border-color .15s;display:inline-flex}.datefield-trigger:hover{border-color:var(--brass-soft)}.datefield-trigger[aria-expanded=true]{border-color:var(--brass)}.datefield-icon{width:16px;height:16px;color:var(--brass);flex-shrink:0}.datefield-text{font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap}.datefield-pop{z-index:200;background:var(--card);border:1px solid var(--card-line);width:268px;box-shadow:var(--card-shadow), 0 18px 50px #0006;-webkit-backdrop-filter:var(--glass-blur);border-radius:14px;padding:10px;animation:.16s dfPop;position:fixed}@keyframes dfPop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.datefield-nav{align-items:center;gap:4px;margin-bottom:8px;display:flex}.df-nav-btn{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex-shrink:0;place-items:center;font-size:17px;line-height:1;transition:color .12s,background .12s;display:grid}.df-nav-btn:hover{color:var(--fg);background:color-mix(in srgb, var(--fg) 8%, transparent)}.df-title{color:var(--fg);font-family:var(--font-display);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;padding:6px;font-size:15px;transition:background .12s}.df-title:hover{background:color-mix(in srgb, var(--fg) 8%, transparent)}.datefield-grid{grid-template-columns:repeat(7,1fr);grid-auto-rows:34px;gap:2px;display:grid}.df-wd{text-transform:uppercase;letter-spacing:.04em;height:26px;color:var(--muted);place-items:center;font-size:11px;display:grid}.df-day{height:32px;color:var(--fg);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;font-size:13.5px;transition:background .12s,color .12s;display:grid}.df-day.empty{cursor:default}.df-day:not(.empty):not(:disabled):hover{background:color-mix(in srgb, var(--brass) 18%, transparent)}.df-day:disabled{color:color-mix(in srgb, var(--muted) 55%, transparent);cursor:not-allowed}.df-day.today{box-shadow:inset 0 0 0 1px var(--brass-soft)}.df-day.sel{background:var(--brass);color:var(--bg);font-weight:600}.df-day.sel:hover{background:var(--brass)}.datefield-years{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.df-year{height:40px;color:var(--fg);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:14px;transition:background .12s,color .12s}.df-year:hover{background:color-mix(in srgb, var(--brass) 18%, transparent)}.df-year.today{box-shadow:inset 0 0 0 1px var(--brass-soft)}.df-year.sel{background:var(--brass);color:var(--bg);font-weight:600}.timefield{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);align-items:center;gap:4px;padding:8px 12px;transition:border-color .15s;display:inline-flex}.timefield:focus-within{border-color:var(--brass)}.timefield.df-full{justify-content:flex-start;width:100%;display:flex}.timefield-icon{width:16px;height:16px;color:var(--brass);flex-shrink:0;margin-right:4px}.timefield-seg{width:2ch;color:var(--fg);font:inherit;font-variant-numeric:tabular-nums;text-align:center;background:0 0;border:0;outline:none;padding:0;font-size:14px}.timefield-seg::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.timefield-seg::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.timefield-colon{color:var(--muted);font-variant-numeric:tabular-nums}.support-fab{z-index:250;width:44px;height:44px;font-family:var(--font-display);cursor:pointer;color:var(--brass);background:var(--card);border:1px solid var(--line-strong);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--shadow), var(--glow-brass);border-radius:50%;place-items:center;font-size:22px;line-height:1;transition:transform .16s cubic-bezier(.16,1,.3,1),box-shadow .2s,color .16s,border-color .16s;display:grid;position:fixed;bottom:22px;right:22px}.support-fab:hover{color:var(--accent-strong);border-color:color-mix(in srgb, var(--brass) 60%, var(--line-strong));box-shadow:var(--shadow), 0 0 28px #d4b87a66;transform:translateY(-3px)}.support-fab:active{transform:translateY(-1px)}body.landing-scroll .support-fab{color:#1a1206;-webkit-backdrop-filter:none;background:#ffc24b;border:1px solid #ffc24b;bottom:12px;box-shadow:0 6px 18px #00000059}body.landing-scroll .support-fab:hover{filter:brightness(1.05);color:#1a1206;background:#ffc24b;border-color:#ffc24b;transform:translateY(-2px);box-shadow:0 8px 22px #0006}[data-theme=light] .support-fab{color:#1a1206;background:#ffc24b;border-color:#ffc24b}[data-theme=light] .support-fab:hover{color:#1a1206;filter:brightness(1.05);background:#ffc24b;border-color:#ffc24b}@media (width<=640px){.support-fab{width:40px;height:40px;font-size:20px;bottom:16px;right:16px}}.support-scrim{z-index:300;background:#030510b8;place-items:center;padding:20px;animation:.18s supportFade;display:grid;position:fixed;inset:0}@keyframes supportFade{0%{opacity:0}}.support-modal{background:var(--popover);border:1px solid var(--popover-line);width:min(440px,100%);max-height:calc(100vh - 40px);color:var(--fg);border-radius:18px;padding:30px clamp(22px,5vw,34px) 26px;animation:.25s cubic-bezier(.16,1,.3,1) both supportRise;position:relative;overflow-y:auto;box-shadow:0 30px 80px #00000080}@keyframes supportRise{0%{opacity:0;transform:translateY(14px)}}.support-close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:15px;position:absolute;top:12px;right:12px}.support-close:hover{color:var(--fg);background:color-mix(in srgb, var(--fg) 8%, transparent)}.support-head{text-align:center;margin-bottom:22px}.support-head .brand-logo{height:30px;margin:0 auto 12px}.support-head h2{font-family:var(--font-display);margin:0 0 6px;font-size:24px;font-weight:500}.support-head p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.support-form{flex-direction:column;gap:14px;display:flex}.support-field{flex-direction:column;gap:6px;display:flex}.support-field>span{color:var(--muted);font-size:12.5px}.support-field input,.support-field textarea{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:100%;color:var(--fg);font:inherit;padding:11px 13px;font-size:15px;transition:border-color .15s,box-shadow .15s}.support-field textarea{resize:vertical;min-height:116px;line-height:1.5}.support-field input:focus,.support-field textarea:focus{border-color:var(--brass);box-shadow:0 0 0 3px color-mix(in srgb, var(--brass) 20%, transparent);outline:none}.support-field input::placeholder,.support-field textarea::placeholder{color:color-mix(in srgb, var(--muted) 75%, transparent)}.support-error{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--aspect-tense) 14%, transparent);border:1px solid color-mix(in srgb, var(--aspect-tense) 34%, transparent);color:var(--aspect-tense);margin:0;padding:9px 12px;font-size:13px}.support-submit{border-radius:999px;width:100%;margin-top:4px;padding:12px}.support-done{text-align:center;padding:6px 4px 2px}.support-check{width:54px;height:54px;color:var(--brass);border:1px solid color-mix(in srgb, var(--brass) 55%, transparent);box-shadow:var(--glow-brass);border-radius:50%;place-items:center;margin:0 auto 16px;font-size:26px;display:grid}.support-success{color:var(--fg);margin:0 0 20px;font-size:14.5px;line-height:1.55}.composite-view{flex-direction:column;gap:16px;width:100%;max-width:1080px;margin:0 auto;padding:16px;display:flex;overflow-y:auto}.composite-controls{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:12px;display:flex}.composite-controls .field{margin:0}.composite-controls label{color:var(--muted);margin-bottom:4px;font-size:11.5px;display:block}.comp-city{min-width:240px;position:relative}.comp-when .date-in{width:auto}.comp-method{background:color-mix(in srgb, var(--surface) 70%, transparent);border:1px solid var(--line);border-radius:9px;align-self:flex-end;gap:0;padding:2px;display:inline-flex}.comp-go{white-space:nowrap;padding:9px 16px}.comp-body{grid-template-columns:minmax(0,1.25fr) minmax(280px,.9fr);align-items:start;gap:20px;display:grid}@media (width<=860px){.comp-body{grid-template-columns:1fr}}.comp-wheel-col{flex-direction:column;align-items:center;gap:10px;display:flex}.comp-wheel{width:100%;max-width:540px;height:auto}.comp-toolbar{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:inline-flex}.comp-aside{min-width:0}.comp-meta{color:var(--muted);text-align:center;margin-bottom:8px;font-size:12px}.comp-legend{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:inline-flex}.comp-legend .dot{border-radius:50%;width:9px;height:9px}.comp-legend .dot.a{background:var(--accent)}.comp-legend .dot.c{background:var(--fg)}.lr-panel{flex-direction:column;gap:14px;display:flex}.lr-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.lr-head h2{font-family:var(--font-display);margin:0;font-size:20px;font-weight:500}.lr-moment{color:var(--brass);border:1px solid color-mix(in srgb, var(--brass) 40%, transparent);white-space:nowrap;border-radius:999px;padding:3px 12px;font-size:12.5px}.lr-controls{flex-wrap:wrap;align-items:flex-end;gap:10px 14px;display:flex}.lr-when,.lr-coord{min-width:0}.lr-coord .input{width:96px}.lr-today{height:38px}.lr-reloc-toggle{color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:7px;height:38px;font-size:13px;display:inline-flex}.lr-reloc-toggle input{accent-color:var(--accent)}.lr-go{margin-left:auto}.lr-err{color:var(--retro)}.lr-body{grid-template-columns:minmax(0,1.4fr) minmax(240px,.9fr);align-items:start;gap:20px;display:grid}.lr-wheel-wrap{min-width:0}.lr-wheel-wrap .wheel{width:100%;height:auto;display:block}.lr-side{min-width:0}.lr-natal-moon{color:var(--muted);border-bottom:1px solid var(--line);margin:0 0 10px;padding-bottom:10px;font-size:12.5px}.lr-pos{margin:0}@media (width<=880px){.lr-body{grid-template-columns:1fr}}.harmonics-view{flex-direction:column;gap:14px;min-width:0;display:flex}.harm-head h2{font-family:var(--font-display);margin:0;font-size:20px;font-weight:600}.harmonics-empty{margin:24px 0}.harm-error{color:var(--aspect-tense)}.harm-selector{grid-template-columns:auto 64px 1fr;grid-template-areas:"label input range""quick quick quick";align-items:center;gap:8px 10px;display:grid}.harm-n-label{color:var(--muted);letter-spacing:.04em;grid-area:label;font-size:12px}.harm-n-input{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--fg);grid-area:input;width:100%;padding:5px 8px;font-size:14px}.harm-n-range{width:100%;accent-color:var(--accent);grid-area:range}.harm-quick{grid-area:quick;gap:6px;display:flex}.harm-tabs{align-self:flex-start}.harm-wheel-col{flex-direction:column;align-items:center;gap:14px;display:flex}.harm-wheel{aspect-ratio:1;-webkit-user-select:none;user-select:none;width:100%;max-width:520px}.harm-wheel text{fill:var(--fg)}.harm-pos-list{width:100%}.harm-tree{flex-direction:column;gap:12px;display:flex}.harm-orb{align-items:center;gap:10px;display:flex}.harm-orb-label{color:var(--muted);letter-spacing:.04em;font-size:12px}.harm-orb-range{accent-color:var(--accent);flex:1}.harm-orb-val{text-align:right;min-width:48px;color:var(--fg);font-size:13px}.harm-mid-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.harm-mid-row{border-bottom:1px solid var(--line);padding:8px 4px}.harm-mid-row:last-child{border-bottom:none}.harm-mid-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.harm-mid-pair{align-items:center;gap:4px;display:inline-flex}.harm-mid-slash{color:var(--muted)}.harm-mid-names{color:var(--muted);margin-left:6px;font-size:13px}.harm-mid-lon{color:var(--fg);white-space:nowrap;font-size:13px}.harm-mid-hits{flex-wrap:wrap;gap:6px 12px;margin-top:6px;padding-left:4px;display:flex}.harm-hit{align-items:center;gap:3px;font-size:12.5px;display:inline-flex}.harm-hit .asp-sym{font-size:13px}.harm-hit-name{color:var(--muted)}.harm-hit-orb{color:var(--fg);margin-left:2px}.layer-rail{flex-direction:column;gap:8px;display:flex}.layer-rail .lr-date{align-items:center;gap:6px;display:flex}.layer-rail .lr-load,.layer-rail .lr-clear{font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:.85em}.layer-rail .lr-load:hover,.layer-rail .lr-clear:hover{border-color:var(--accent)}.layer-rail .lr-load:disabled{opacity:.5;cursor:default}.layer-rail .lr-ring{align-items:center;gap:6px;display:flex}.layer-rail .lr-ring.off{opacity:.45}.layer-rail .lr-natal{color:var(--muted);padding-left:2px;font-size:.9em}.layer-rail .lr-swatch{border-radius:2px;flex:none;width:10px;height:10px;display:inline-block}.layer-rail .lr-prof{color:var(--accent);padding-left:2px;font-size:.85em}
