@font-face{font-family:Inter;src:url('/assets/Inter.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:'JetBrains Mono';src:url('/assets/JetBrainsMono.ttf') format('truetype');font-weight:100 800;font-display:swap}
:root{color-scheme:dark;--bg:#010103;--ink:#f1f3f5;--muted:#a5adb9;--accent:#00f0ff;--line:rgba(210,230,255,.15);--glass:rgba(25,29,38,.64)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 Inter,system-ui,-apple-system,sans-serif;min-width:320px}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{min-height:44px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:rgba(255,255,255,.05);padding:10px 18px;cursor:pointer;transition:background .2s,transform .2s}button:hover{background:rgba(255,255,255,.1)}button:disabled{opacity:.5;cursor:wait}button.primary{background:var(--accent);color:#001619;border:0;font-weight:650}button.primary:hover{background:#89f9ff}button.quiet{background:none}button.danger{color:#ffb8b8}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(32px,4vw,56px);line-height:1.12;letter-spacing:-1.8px;font-weight:500;margin-bottom:16px}h2{font-size:23px;font-weight:500;letter-spacing:-.5px}h3{font-size:17px;font-weight:500}.eyebrow,.mono,.label{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;letter-spacing:1.8px;color:var(--muted)}.eyebrow{color:var(--accent);margin-bottom:18px}.muted{color:var(--muted)}.small{font-size:13px}.ambient{position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 73% 22%,#0b27343b,transparent 43%),radial-gradient(ellipse at 14% 66%,#30234830,transparent 40%);background-color:#010103}.ambient:after{content:'';position:absolute;inset:0;background-image:radial-gradient(#9fcddd88 .6px,transparent .9px);background-size:97px 113px;opacity:.3}header{height:100px;max-width:1440px;padding:0 48px;margin:auto;display:flex;align-items:center;gap:35px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:23px;letter-spacing:6px;color:white}.brand-orbit{display:inline-block;font-size:35px;transform:rotate(-25deg) scaleX(.65);color:var(--accent)}.brand-dot{font-size:14px;color:var(--accent);margin-left:-5px}.header-note{font-size:10px;letter-spacing:3px;color:var(--muted)}#identity{margin-left:auto;letter-spacing:1px;max-width:220px;overflow-wrap:anywhere}main{max-width:1344px;padding:48px 32px 40px;margin:auto;min-height:72vh}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:28px}.page-heading p{margin-bottom:0}.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--line);border-radius:30px;font-size:12px;color:var(--muted)}.pill:before{content:'';width:5px;height:5px;border-radius:50%;background:var(--accent)}.glass{background:linear-gradient(145deg,rgba(35,39,48,.64),rgba(13,16,24,.55));border:1px solid var(--line);border-radius:24px;backdrop-filter:blur(16px);padding:28px;box-shadow:inset 0 1px 0 #ffffff08}.grid{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;align-items:start}.grid.three{grid-template-columns:1fr 1.3fr 1fr}.stack{display:grid;gap:24px}.wide{grid-column:1/-1}.hero{padding:36px}.hero p{color:var(--muted);max-width:560px}.hero .orbit-art{height:220px;position:relative;display:grid;place-items:center}.orbit-art:before,.orbit-art:after{content:'';position:absolute;width:210px;height:210px;border:1px solid #b4d5e740;border-radius:50%;transform:rotate(-25deg) scaleY(.6);box-shadow:0 0 40px #00f0ff09}.orbit-art:after{width:150px;height:150px;transform:rotate(35deg) scaleY(.7);border-color:#00f0ff55}.orbit-art span{font-size:48px;font-weight:200;color:#b6e6ec}form{display:grid;gap:16px}label{display:grid;gap:7px;font-size:13px;color:#c4cad2}input,select{width:100%;min-width:0;min-height:46px;padding:10px 12px;background:#05090e9c;border:1px solid var(--line);color:var(--ink);border-radius:10px}input::placeholder{color:#737e8d}.row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check{display:flex;align-items:flex-start;gap:10px;line-height:1.5}.check input{width:18px;min-height:20px;margin-top:2px;flex-shrink:0}.divider{height:1px;background:var(--line);margin:22px 0}.error{padding:12px;color:#ffd1d1;background:#5c242440;border:1px solid #d76c6c40;border-radius:10px}.warning{padding:12px 14px;border-left:2px solid #b6b4ff;color:#cbd0dc;background:#8888cc0a;font-size:13px;margin-bottom:10px}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:24px}.tabs button.active{background:#00f0ff16;color:var(--accent);border-color:#00f0ff50}.wheel-wrap{text-align:center;overflow:hidden}.wheel{width:100%;max-width:530px;height:auto;display:block;margin:auto}.wheel text{font-family:system-ui,sans-serif}.wheel .planet{cursor:pointer}.wheel .planet:hover text{fill:white}.wheel-legend{font-size:12px;display:flex;justify-content:center;gap:18px;color:var(--muted)}.wheel-legend i{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:6px}.wheel-legend .second i{background:#c2b4ff}.aspect-list{max-height:460px;overflow:auto;display:grid;gap:8px}.factor{width:100%;text-align:left;display:flex;justify-content:space-between;gap:10px;font-size:13px;padding:12px;border-radius:12px}.factor small{display:block;color:var(--muted)}.factor b{color:var(--accent);font-weight:400;white-space:nowrap}.table-wrap{overflow:auto;max-width:100%}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left}th{color:var(--muted);font-weight:400;font-size:11px}td,th{padding:12px 9px;border-bottom:1px solid #ffffff0b;white-space:nowrap}td:first-child,th:first-child{padding-left:0}.matrix td{text-align:center;padding:7px}.matrix button{padding:4px 7px;min-width:40px}.scales{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.scale{padding:20px}.scale strong{display:block;font-size:34px;font-weight:400;letter-spacing:-1px}.scale .track{height:3px;background:#ffffff17;margin:12px 0}.scale .track i{height:100%;display:block;background:var(--accent)}.scale.conflict .track i{background:#c2b4ff}.empty{padding:55px 20px;text-align:center}.empty p{color:var(--muted)}.results{display:grid;gap:4px;max-height:220px;overflow:auto}.results button{text-align:left}.event{padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.event p{margin:0}.event time{color:var(--accent)}.place-summary{font-size:13px;color:var(--muted)}details{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}summary{cursor:pointer;min-height:44px;color:var(--muted)}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}nav{position:sticky;bottom:22px;margin:10px auto 22px;max-width:530px;width:calc(100% - 32px);padding:8px;border:1px solid var(--line);border-radius:20px;background:#10141ae8;backdrop-filter:blur(24px);display:flex;justify-content:space-around;z-index:10;box-shadow:0 12px 40px #0009}nav button{border:0;background:none;font-size:13px;padding:10px 12px}nav button.active{color:var(--accent);background:#00f0ff0e}footer{max-width:1344px;margin:20px auto;padding:20px 32px 30px;color:#7f8895;font-size:10px;letter-spacing:1.2px;border-top:1px solid #ffffff0c;display:flex;justify-content:space-between;gap:20px}footer span{letter-spacing:0;max-width:500px}#notice{position:fixed;right:24px;top:20px;max-width:min(420px,calc(100% - 48px));background:#202b34;border:1px solid #668a99;padding:18px 22px;border-radius:16px;z-index:40;box-shadow:0 10px 60px #000}dialog{max-width:650px;width:calc(100% - 32px);background:#10151d;border:1px solid #ffffff30;border-radius:24px;color:var(--ink);padding:24px}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog>button{display:block;margin-left:auto;margin-bottom:20px}[hidden]{display:none!important}.loading{padding:60px;text-align:center;color:var(--muted)}.loading:before{content:'◌';display:block;font-size:40px;color:var(--accent)}
@media(max-width:1000px){.grid.three{grid-template-columns:1fr 1fr}.grid.three>.stack:last-child{grid-column:1/-1}.header-note{display:none}.scales{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){header{height:76px;padding:0 20px}.brand{font-size:20px}.brand-orbit{font-size:29px}#identity{font-size:9px;max-width:140px}main{padding:30px 16px 20px}.grid,.grid.three{grid-template-columns:1fr}.glass{padding:22px;border-radius:22px}.hero{padding:26px}.page-heading{align-items:start;flex-direction:column;gap:10px}h1{font-size:36px}.fields{grid-template-columns:1fr 1fr}.scales{gap:10px}.scale{padding:16px}.scale strong{font-size:29px}nav{bottom:12px;gap:2px}nav button{padding:8px 6px;font-size:11px}footer{display:block;padding:20px}footer span{display:block;margin-top:8px}.wheel-wrap{padding:14px}.factor{font-size:12px}.hero .orbit-art{height:180px}}
@media(max-width:370px){.fields{grid-template-columns:1fr}.glass{padding:18px}h1{font-size:31px}.scales{grid-template-columns:1fr 1fr}.scale{padding:13px}.scale h3{font-size:15px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Pure Glass: optical tokens and surfaces from UIreference.html. */
:root{--glass-op:.04;--glass-blur:8px;--color-base:#fff;--color-glass:rgba(255,255,255,var(--glass-op));--color-border:rgba(255,255,255,.12);--color-acc-base:#00f0ff;--color-acc-glass:rgba(0,240,255,.04);--color-acc-border:rgba(0,240,255,.16);--color-acc-glow:rgba(0,240,255,.15);--line:var(--color-border);--glass:var(--color-glass);--ink:#fff}
#starfield{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}header,main,footer{position:relative;z-index:1}header{max-width:1152px;padding:32px 0 16px;height:auto;min-height:100px}main{max-width:1200px;padding:24px 24px 60px}footer{max-width:1152px}.brand{letter-spacing:0;flex-shrink:0}.brand img{display:block;width:74px;height:74px;object-fit:contain}.glass{background:var(--color-glass);border:1px solid var(--color-border);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-radius:24px;padding:24px;position:relative;overflow:hidden;box-shadow:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.glass::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);pointer-events:none}@media(hover:hover){.glass:hover{background:var(--color-acc-glass);border-color:var(--color-acc-border);box-shadow:0 8px 32px var(--color-acc-glow);transform:translateY(-2px)}.glass:hover .eyebrow{color:var(--accent)}}h2{font-size:1.8rem;font-weight:600;letter-spacing:-.5px;margin-bottom:12px}p{color:rgba(255,255,255,.7)}.eyebrow{font-size:.7rem;letter-spacing:2px;color:rgba(255,255,255,.4);font-weight:600;margin-bottom:12px}button,button.primary{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:white;padding:12px 24px;border-radius:12px;font-weight:500;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:all .3s ease}button:hover,button.primary:hover{background:var(--accent);border-color:var(--accent);color:#000;box-shadow:0 0 20px var(--color-acc-glow)}input,select{background:rgba(255,255,255,.03)}select option{background:#101218}nav,dialog,#notice{background:rgba(12,16,22,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-color:var(--color-border)}.hero{padding:40px}.blocked{max-width:760px;margin:8vh auto;text-align:center;padding:48px 40px}.blocked-mark{width:100px;height:100px;margin:12px auto 24px;display:block}.blocked p{font-size:1.05rem;max-width:490px;margin:0 auto 28px}.blocked .row{justify-content:center}.wheel>circle:first-child{fill:rgba(255,255,255,.015)}
@media(max-width:1200px){header{margin:0 24px}footer{margin-left:24px;margin-right:24px}}@media(max-width:700px){header{margin:0 16px;padding:18px 0;gap:12px}.brand img{width:60px;height:60px}.brand{font-size:16px;gap:4px}main{padding:24px 16px 40px}.hero,.glass{padding:24px}.blocked{margin:4vh auto;padding:32px 24px}.wheel-wrap{padding:14px}nav button{padding:8px 6px}.scale{padding:16px}.scale h3{font-size:15px}}@media(prefers-reduced-motion:reduce){.glass:hover{transform:none}}

.brand>span{font-weight:800;letter-spacing:1px}@media(max-width:370px){.brand>span{font-size:13px}#identity{max-width:110px}}
/* Product overview and progressive disclosure. */
#identity{text-align:right;line-height:1.6;letter-spacing:.4px;min-width:0}.tariff{margin:0 0 24px;color:#bce7df;background:rgba(110,200,181,.045);border-color:rgba(110,200,181,.2)}.chart-summary{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;margin-bottom:24px}.chart-summary>div{display:grid;gap:4px}.chart-summary .eyebrow{margin:0}.chart-summary strong{font-size:22px;font-weight:500}.chart-summary .small{max-width:240px}.grid>.wheel-wrap{grid-column:1/-1}.grid.three>.wheel-wrap{grid-row:1}.grid.three{grid-template-columns:1fr}.grid.three>.stack{grid-template-columns:1fr 1fr}.pro-data{margin-top:28px}.pro-data>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--ink);font-size:18px;list-style:none}.pro-data>summary::after{content:'+';color:var(--accent);font-size:24px}.pro-data[open]>summary::after{content:'−'}.pro-content{margin-top:24px}.pro-data>summary .small{margin-left:auto}.element-sector{pointer-events:none}@media(max-width:700px){.grid.three>.stack{grid-template-columns:1fr}.chart-summary{gap:20px}.chart-summary strong{font-size:18px}.pro-data>summary .small{display:none}#identity{max-width:125px;font-size:9px}}@media(max-width:370px){header{flex-wrap:wrap}#identity{max-width:none;flex:1 0 100%;text-align:right}}
#social-profile{display:grid;gap:24px;margin-top:24px}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(195px,1fr));gap:16px}.plan-card{display:flex;flex-direction:column;gap:12px}.plan-card h3{font-size:23px}.plan-card p{flex:1}.plan-card button{padding:12px}.plan-prices{min-height:80px}.plan-original{font-size:25px}.plan-discount{display:block;color:#8fdbc8;font-size:25px;margin-top:8px}.plan-discount small{font-size:13px}.discount-applied .plan-original{text-decoration:line-through;opacity:.5;font-size:17px}.discount-applied .plan-discount,.discount-confirm strong{animation:discount-reveal .55s ease both}.connection{justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0}.connections-panel h3{margin-top:24px}.referral-panel input{margin-bottom:16px}.referral-note{border:1px solid var(--color-acc-border);border-radius:16px;padding:16px}.discount-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.discount-confirm strong{color:#8fdbc8;font-size:28px}@keyframes discount-reveal{from{opacity:0;transform:translateY(12px) scale(.9);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}@media(prefers-reduced-motion:reduce){.plan-discount,.discount-confirm strong{animation:none!important}}@media(max-width:370px){.plan-grid{grid-template-columns:1fr}}

.language-switch{max-width:88px;margin-left:8px}.language-switch select{min-width:68px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:450px){header{flex-wrap:wrap}#identity{max-width:110px}.language-switch{margin-left:auto}}

.plan-card{--plan-color:#a6e6db}.plan-card[data-plan-card="synergy"]{--plan-color:#00f0ff}.plan-card[data-plan-card="singularity"]{--plan-color:#c197ff}.plan-card[data-plan-card="architect"]{--plan-color:#f2ce80}.plan-active{display:flex;align-items:center;justify-content:center;min-height:44px;padding:12px 20px;border:1px solid currentColor;border-radius:12px;color:var(--plan-color);background:color-mix(in srgb,var(--plan-color) 9%,transparent);box-shadow:0 0 22px color-mix(in srgb,var(--plan-color) 20%,transparent),inset 0 0 14px color-mix(in srgb,var(--plan-color) 8%,transparent);letter-spacing:2px;font-size:12px;font-weight:700}

#diary-panel{margin-top:1.5rem}#diary-panel textarea{width:100%;box-sizing:border-box;resize:vertical}#diary-panel .diary-entry{margin-top:1.2rem;overflow-wrap:anywhere}#diary-panel .diary-entry p{white-space:pre-wrap}.premium-prompt{border-color:rgba(119,213,239,.4);margin:1rem 0}#pair-ai{margin-top:1.5rem}

/* Coordinates remain visible beside the calculated wheel. Both columns align left. */
.chart-layout{display:grid;grid-template-columns:minmax(150px,210px) minmax(0,1fr);gap:18px;align-items:center;text-align:left}.chart-layout.double{grid-template-columns:minmax(150px,210px) minmax(0,1fr) minmax(150px,210px)}.chart-coordinates{min-width:0;text-align:left}.chart-coordinates h3{color:var(--accent)}.double .chart-coordinates:last-child h3{color:#c2b4ff}.chart-coordinates dl{font-size:12px;margin:0}.chart-coordinates dl>div{display:flex;justify-content:space-between;gap:8px;padding:4px 0;border-bottom:1px solid var(--line)}.chart-coordinates dt{overflow-wrap:anywhere}.chart-coordinates dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}.chart-coordinates p{margin:10px 0 0;font-size:11px}.chart-circle{min-width:0}.scale-details p{overflow-wrap:anywhere}.contribution{margin:8px 0}.scale-details summary{color:var(--accent)}#syn-form label{text-align:left}
@media(max-width:850px){.chart-layout,.chart-layout.double{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.chart-circle{grid-column:1/-1;grid-row:1}.chart-layout.single .chart-coordinates{grid-column:1/-1}.chart-coordinates dl>div{flex-wrap:wrap;gap:0 8px}.chart-coordinates h3{font-size:14px}.chart-coordinates dl{font-size:11px}}

/* Distinct chart identities; the B coordinate column faces outward. */
.chart-layout .chart-coordinates h3,.wheel-legend>span:first-child{color:#25d9ff}.chart-layout.double .chart-coordinates:last-child h3,.wheel-legend .second{color:#ffad32}.wheel-legend>span:first-child i{background:#25d9ff}.wheel-legend .second i{background:#ffad32;border-radius:1px}.chart-layout.double .chart-coordinates:last-child{text-align:right}.chart-layout.double .chart-coordinates:last-child dl>div{flex-direction:row-reverse}.chart-layout.double .chart-coordinates:last-child dd{text-align:left}.planet-degree{paint-order:stroke;stroke:#080d14;stroke-width:2px;stroke-linejoin:round}.factor-coverage b{color:var(--ink)}

.western-summary{margin-bottom:24px}.western-summary .row{flex-wrap:wrap}.natal-sources figure{margin:16px 0}.natal-sources blockquote{margin:0 0 8px;padding-left:16px;border-left:2px solid var(--accent);overflow-wrap:anywhere}.natal-sources figcaption{font-size:13px;color:var(--muted);overflow-wrap:anywhere}

/* Independent sidereal data and daily reflection card. */
.jyotish-summary,.tarot-section{margin-top:24px;min-width:0}
.jyotish-summary td{vertical-align:top;white-space:normal;min-width:75px}
.jyotish-summary td:nth-child(2){min-width:155px}
.jyotish-meta{display:flex;gap:24px;flex-wrap:wrap}
.tarot-layout{display:grid;grid-template-columns:minmax(160px,230px) minmax(0,1fr);gap:28px;align-items:center}
.tarot-flip{position:relative;display:block;width:100%;height:310px;padding:0;border:0;background:transparent;perspective:1000px;color:inherit}
.tarot-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .65s ease}
.tarot-flip.is-flipped .tarot-inner{transform:rotateY(180deg)}
.tarot-back,.tarot-front{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:20px;border:1px solid #00f0ff66;border-radius:22px;backface-visibility:hidden;background:radial-gradient(ellipse at top,#16424c,#080b15 80%);box-shadow:inset 0 0 30px #00f0ff0d;text-align:center;overflow-wrap:anywhere}
.tarot-back>span:first-child,.tarot-front>span:nth-child(2){font-size:64px;color:#93f2ff}
.tarot-front{transform:rotateY(180deg)}
.tarot-front strong{font-size:22px;line-height:1.2}
.tarot-number{font-size:13px;letter-spacing:.1em;color:#c6cbd4}
.tarot-back b{letter-spacing:.3em}
.tarot-sparkles{position:absolute;inset:20% 0;pointer-events:none;opacity:0;color:#a7f7ff;font-size:32px}
.tarot-flip.is-flipped .tarot-sparkles{animation:tarot-stars .7s ease-out}
.tarot-section a{overflow-wrap:anywhere}
@keyframes tarot-stars{0%{opacity:0;transform:scale(.5)}30%{opacity:1}100%{opacity:0;transform:scale(1.4)}}
@media(max-width:600px){.tarot-layout{grid-template-columns:minmax(0,1fr);gap:20px}.tarot-flip{max-width:210px;height:285px;margin:auto}.jyotish-meta{gap:0}}
@media(prefers-reduced-motion:reduce){.tarot-inner{transition:none}.tarot-flip.is-flipped .tarot-sparkles{animation:none}}

.tarot-section{margin-bottom:28px}
.tarot-flip:hover{color:var(--ink);background:transparent;border:0}
#jyotish summary h2{display:inline;font-size:1.35rem;margin:0}
#jyotish details[open]>summary{margin-bottom:20px}
.tarot-flip.restored .tarot-inner{transition:none}
.tarot-flip.restored .tarot-sparkles{animation:none}
.generation-diagnostics{min-width:0;overflow-wrap:anywhere}
.generation-diagnostics pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}
#story-status{margin-top:24px;overflow-wrap:anywhere}

/* Full scans retain their original aspect ratio, including historical decks. */
.tarot-front{padding:0;overflow:hidden;background:#171b24}
.tarot-front img{width:100%;height:100%;object-fit:contain;border-radius:14px}
.tarot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:24px}
.tarot-grid[hidden]{display:none}
.tarot-grid img{display:block;width:100%;max-height:420px;object-fit:contain;border-radius:10px}
.tarot-grid figure{margin:0}.tarot-grid figcaption{text-align:center;margin:8px}
.tarot-pile{display:flex;gap:6px;flex-wrap:wrap;max-height:240px;overflow:auto;margin:20px 0}
.tarot-pile button{width:42px;height:66px;padding:4px;background:linear-gradient(140deg,#28354b,#161b27);border:1px solid #667893;border-radius:6px}
#nav{flex-wrap:wrap}
@media(max-width:700px){.tarot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media(max-width:360px){.tarot-grid{grid-template-columns:minmax(0,1fr)}}

.wheel-controls {display:grid;gap:12px;margin:16px 0;text-align:left}
.wheel-controls select {width:100%;max-width:100%;min-width:0}
.wheel-controls .check {align-items:flex-start}
.birth-time-chain {overflow-wrap:anywhere}

.tarot-card-image.is-reversed{transform:rotate(180deg)}
.tarot-orientation{margin:8px 0 12px}
