.wheel{width:100%;max-width:640px;margin:0 auto;position:relative}.wheel svg{touch-action:none;cursor:grab;width:100%;height:auto;display:block}.wheel text{text-anchor:middle;dominant-baseline:central;fill:var(--text);pointer-events:none;font-size:18px}.sign path{stroke:var(--line);stroke-width:1px;fill-opacity:.18;cursor:pointer}.sign.fire path{fill:var(--fire)}.sign.earth path{fill:var(--earth)}.sign.air path{fill:var(--air)}.sign.water path{fill:var(--water)}.sign.on path,.sign:hover path{fill-opacity:.45}.aspect-ring{fill:none;stroke:var(--line)}.house line{stroke:var(--line);stroke-width:1px}.house line.angle{stroke:var(--gold);stroke-width:2px}.house text{fill:var(--muted);font-size:11px}.house{cursor:pointer}.house.on text{fill:var(--gold);font-weight:700}.aspect{stroke-width:1.4px;cursor:pointer;opacity:.75}.aspect.harmony{stroke:var(--harmony)}.aspect.tension{stroke:var(--tension)}.aspect.blend{stroke:var(--blend)}.aspect.on{stroke-width:3.5px;opacity:1}.body{cursor:pointer}.body circle{fill:var(--panel);stroke:var(--muted)}.body.outer circle{stroke:var(--gold);stroke-dasharray:3 2}.body.on circle,.body:hover circle{stroke:var(--gold);stroke-width:2.5px}.body .tick{stroke:var(--muted);stroke-width:.8px}.body .retro{fill:var(--tension);font-size:9px}.wheel-reset{background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:6px;padding:4px 10px;position:absolute;top:8px;right:8px}.house .hit{fill:#0000;stroke:none;pointer-events:all}.axis{pointer-events:none}.axis line{stroke:var(--gold);stroke-width:2.2px}.axis text{fill:var(--gold);font-size:10px;font-weight:700}.wheel [role=button]:focus{outline:none}.wheel [role=button]:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.wheel .sign:focus-visible path{fill-opacity:.45;stroke:var(--gold);stroke-width:2px}.wheel .house:focus-visible text{fill:var(--gold);font-weight:700}.wheel .body:focus-visible circle{stroke:var(--gold);stroke-width:2.5px}.wheel .aspect:focus-visible{stroke-width:3.5px;opacity:1}.app{max-width:1200px;margin:0 auto;padding:0 16px}.top{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.brand{color:var(--gold);font-weight:700;text-decoration:none}.top nav{flex-wrap:wrap;gap:14px;display:flex}.top nav a{color:var(--muted);text-decoration:none}.top nav a.active{color:var(--text);border-bottom:2px solid var(--gold)}.foot{color:var(--muted);border-top:1px solid var(--line);margin-top:32px;padding:24px 0;font-size:13px}h1{margin:20px 0 8px;font-size:1.6rem}.split{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}@media (width<=900px){.split{grid-template-columns:minmax(0,1fr)}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px 18px;position:sticky;top:12px}@media (width<=900px){.panel{position:static}}.panel h2{margin-top:0;font-size:1.2rem}.panel small{color:var(--muted);margin-left:6px;font-weight:400}.keywords{color:var(--gold)}.muted{color:var(--muted)}.small{font-size:13px}.warn{border-left:3px solid var(--gold);background:#3a2a14;border-radius:4px;padding:6px 10px}.birth-form{gap:10px;max-width:420px;display:grid}.birth-form label,.birth-form .field{gap:4px;display:grid}.birth-form label.check{align-items:center;gap:8px;display:flex}.birth-form input,.system select,.city-search input{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:8px 10px}.birth-form button[type=submit]{background:var(--gold);color:#1a1a1a;cursor:pointer;border:0;border-radius:6px;padding:10px;font-weight:700}.birth-form button:disabled{opacity:.45;cursor:default}.city-search ul{border:1px solid var(--line);border-radius:6px;margin:4px 0 0;padding:0;list-style:none}.city-search li button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:8px 10px}.city-search li button:hover{background:var(--panel)}.picked{color:var(--gold);margin:4px 0 0}.saved{flex-wrap:wrap;align-items:center;gap:8px;margin-top:20px;display:flex}.saved h3{width:100%;margin:0;font-size:1rem}.saved button,.cards .card{background:var(--panel);border:1px solid var(--line);cursor:pointer;color:var(--text);border-radius:6px;padding:6px 12px;text-decoration:none}.cards{flex-wrap:wrap;gap:8px;display:flex}.balance{grid-template-columns:1fr 1fr;gap:16px;margin:16px 0;display:grid}.balance h3{margin:0 0 6px;font-size:1rem}.bar-row{grid-template-columns:3em 1fr 1.5em;align-items:center;gap:6px;font-size:14px;display:grid}.bar{background:var(--muted);border-radius:4px;height:8px}.bar.fire{background:var(--fire)}.bar.earth{background:var(--earth)}.bar.air{background:var(--air)}.bar.water{background:var(--water)}.placements{border-collapse:collapse;width:100%;font-size:14px}.placements th,.placements td{text-align:left;border-bottom:1px solid var(--line);padding:5px 6px}.placements tbody tr.pick{cursor:pointer}.placements tbody tr.pick:hover{background:var(--panel)}.aspect-list{padding-left:18px}.system{align-items:center;gap:8px;margin:8px 0;display:flex}.learn{max-width:760px}button.link{text-align:left;cursor:pointer;color:var(--text);background:0 0;border:0;padding:0}button.link:hover{color:var(--gold)}button.link:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.split.stack{grid-template-rows:auto 1fr;grid-template-areas:"main panel""rest panel";row-gap:0}.split.stack>.stack-main{grid-area:main}.split.stack>.stack-rest{grid-area:rest}.split.stack>.panel-slot{grid-area:panel;align-self:start;position:sticky;top:12px}.panel-slot>.panel{position:static}@media (width<=900px){.split.stack{grid-template-rows:auto;grid-template-areas:"main""panel""rest";row-gap:16px}.split.stack>.panel-slot{position:static}}.saved-item{gap:2px;display:inline-flex}.saved .saved-item .del{color:var(--muted);font-size:13px}.error-page{padding:24px 0}.error-page button{background:var(--gold);color:#1a1a1a;cursor:pointer;border:0;border-radius:6px;padding:8px 14px;font-weight:700}.pickers{flex-wrap:wrap;align-items:end;gap:12px;margin:8px 0 16px;display:flex}.pickers label{gap:4px;display:grid}.pickers select,.pickers button{background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:6px 10px}:root{--bg:#0b0e1a;--panel:#141a2e;--line:#2a3352;--text:#e8e6f0;--muted:#9aa0bb;--gold:#e8c46a;--fire:#e8744f;--earth:#8fb36b;--air:#d9c25a;--water:#5aa0d9;--harmony:#5aa0d9;--tension:#e0605a;--blend:#e8c46a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,Malgun Gothic,Apple SD Gothic Neo,sans-serif;line-height:1.6}a{color:var(--gold)}button,input,select{font:inherit;color:inherit}
