:root{color-scheme:dark;--bg:#21182e;--surface:#30243f;--ink:#fff5e7;--muted:#d6c5df;--gold:#e8bd73;--lilac:#cbb2ec;--border:#685676}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 system-ui,-apple-system,sans-serif}a{color:var(--gold);text-underline-offset:4px}a:hover{color:var(--ink)}h1,h2,h3,h4{font-family:Georgia,serif;line-height:1.14;letter-spacing:-.025em}h1{font-size:clamp(2.8rem,6vw,5.7rem);font-weight:400;margin:.22em 0 .45em}h2{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:400}h3{font-size:1.55rem}h4{font-size:1.18rem}p{max-width:75ch}small,.subtle{color:var(--muted)}small{font-size:.84rem;display:block}button,input,select{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px;border:1px solid var(--gold);border-radius:10px;background:var(--gold);color:var(--bg);padding:12px 22px;font-weight:650;cursor:pointer;text-decoration:none}button:hover,.button:hover{background:var(--ink);color:var(--bg)}.secondary,.quiet{background:transparent;color:var(--gold)}.quiet{padding:6px 12px;font-size:.85rem;min-height:44px;border-color:var(--border)}input:not([type=radio]),select{display:block;width:100%;background:#21182e;border:1px solid #a28bb3;border-radius:9px;color:var(--ink);min-height:48px;padding:12px;margin:7px 0 12px}input::placeholder{color:#baa8c7}input[type=radio]{accent-color:var(--gold);width:18px;height:18px}label{display:block}select{max-width:100%}form{max-width:100%;margin:24px 0}form>button{margin-top:12px}fieldset{min-width:0;border:1px solid var(--border);border-radius:12px;padding:20px}legend{padding:0 8px;color:var(--gold)}:focus-visible,#reading-results-heading:focus{outline:3px solid var(--gold);outline-offset:4px}button:disabled{opacity:.6;cursor:default}.skip{position:absolute;top:-80px;left:16px;background:var(--gold);color:var(--bg);padding:14px;z-index:20}.skip:focus{top:10px}.site-header{max-width:1320px;margin:auto;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--border)}.brand{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;white-space:nowrap;font-family:Georgia,serif;font-size:1.3rem}.brand small{font-family:system-ui,sans-serif;font-size:.66rem;letter-spacing:.3em;color:var(--gold)}nav{display:flex;gap:22px;flex-wrap:wrap}nav a{font-size:.85rem;text-decoration:none;color:var(--muted)}nav a[aria-current]{color:var(--gold);text-decoration:underline}.compact-nav{display:none}main{max-width:1180px;margin:auto;padding:64px 32px 80px;min-height:70vh}section{margin-bottom:60px}.hero{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:45px}.hero-copy{font-size:1.18rem;color:var(--muted);max-width:50ch}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:.73rem;font-weight:700;color:var(--gold);margin:0 0 14px}.hero-tags{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:.8rem}.hero-tags span{border:1px solid var(--border);border-radius:100px;padding:6px 12px}.orbit{width:100%;max-width:400px;aspect-ratio:1;position:relative;margin:auto}.orbit-ring{position:absolute;inset:10%;border:1px solid var(--border);border-radius:50%;transform:rotate(-25deg)}.orbit-ring:before{content:'';position:absolute;inset:15%;border:1px dashed var(--border);border-radius:50%}.orbit:after{content:'';position:absolute;inset:18%;background:radial-gradient(circle,#e8bd731c,transparent 70%);border-radius:50%;z-index:-1}.orb{position:absolute;font-family:Georgia,serif;font-size:2.8rem;color:var(--gold);background:var(--bg);padding:0 10px}.o1{top:2%;left:42%}.o2{top:40%;right:2%}.o3{bottom:5%;left:40%}.o4{top:40%;left:1%}.orbit-center{position:absolute;inset:35% 10%;text-align:center;font-family:Georgia,serif;font-size:2rem;line-height:1.3}.orbit-center em{color:var(--lilac)}.entry-panel,.daily-invite{background:var(--surface);border:1px solid var(--border);padding:clamp(22px,4vw,45px);border-radius:20px}.entry-panel h2{margin-top:0}.input-grid,.comparison-inputs{display:grid;grid-template-columns:1fr 1fr;gap:24px}.comparison-inputs{grid-template-columns:repeat(3,1fr);margin-top:20px}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:22px}.privacy{font-size:.83rem;color:var(--muted)}.destination-grid,.result-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:20px}.destination{display:block;padding:28px;background:var(--surface);border:1px solid var(--border);border-radius:16px;text-decoration:none;color:var(--ink)}.destination:hover{border-color:var(--gold)}.destination p{color:var(--muted)}.destination span:last-child{color:var(--gold);font-size:.85rem}.intro{font-size:1.2rem;color:var(--muted);max-width:65ch}.reading-card{padding:26px;background:var(--surface);border:1px solid var(--border);border-radius:16px;min-width:0;overflow-wrap:anywhere}.reading-card h3{margin:.4em 0}.number{font-family:Georgia,serif;font-size:4.5rem;color:var(--gold);line-height:1.1}.number small{display:inline;font-size:1.2rem}.lead{color:var(--lilac)}details{border-top:1px solid var(--border);padding:16px 0;margin-top:12px}summary{cursor:pointer;color:var(--gold);min-height:32px}.math{font-variant-numeric:tabular-nums;font-size:1.2rem}.reflection{margin-top:24px;padding:12px;font-size:.85rem}.reflection label{display:inline-flex;gap:5px;align-items:center;min-height:44px;margin-right:8px}.reflection small{font-size:.72rem;margin-top:8px}.letter-row{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.letter{padding:10px 12px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;min-width:60px}.letter strong{font-size:1.4rem}.letter small{font-size:.67rem}.letter.vowel{border-color:var(--lilac)}.y-controls{margin:20px 0}.y-controls label{display:inline-block;margin-right:20px}table{width:100%;border-collapse:collapse;table-layout:fixed}th,td{padding:10px;border-bottom:1px solid var(--border);text-align:left}th:first-child{width:25%}td:nth-child(2){width:20%}.bar{display:block;height:10px;background:var(--lilac);border-radius:5px}.fortune{background:linear-gradient(120deg,#3e2e4e,#30243f);padding:30px;border-radius:18px;border:1px solid var(--gold)}.fortune-extra{border-top:1px solid var(--border);padding-top:16px}.fortune-extra strong{font-size:1.8rem;color:var(--gold)}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:24px 0}.month{display:flex;flex-direction:column;background:var(--surface);color:var(--ink);padding:12px;gap:4px;border-color:var(--border)}.month strong{font-family:Georgia,serif;font-size:2rem;color:var(--gold)}.month span,.month small{font-size:.75rem}.month[aria-pressed=true]{border-color:var(--gold)}.sequence-picker{display:flex;gap:8px;flex-wrap:wrap}.status:not(:empty){border-left:3px solid var(--gold);padding:10px 16px;background:var(--surface)}.error{color:#ffb5b5}.output:empty{display:none}.output{margin-top:35px}.confirmation{padding:20px;border:1px solid var(--gold);border-radius:12px;margin:20px 0}.back{display:inline-block;margin-bottom:24px}.in-page{margin:28px 0}.in-page a{font-size:1rem}.question{border-left:2px solid var(--lilac);padding-left:14px;font-style:italic}footer{max-width:1180px;margin:auto;border-top:1px solid var(--border);padding:32px}.footer-brand{font-family:Georgia,serif;font-size:1.2rem}.footer-brand span{color:var(--gold)}.footer-links{display:flex;gap:24px;flex-wrap:wrap;font-size:.85rem}.reveal{animation:reveal .18s ease-out}@keyframes reveal{from{opacity:0}to{opacity:1}}@media(max-width:1150px){.wide-nav{display:none}.compact-nav{display:block;position:relative;border:0;margin:0;padding:0}.compact-nav nav{position:absolute;right:0;top:48px;background:var(--surface);padding:20px;border:1px solid var(--border);border-radius:12px;min-width:230px;z-index:10;flex-direction:column}}@media(max-width:720px){main{padding:36px 20px 60px}.site-header{padding:18px 20px;gap:12px}.brand{font-size:1.03rem}.brand svg{width:30px}.hero{grid-template-columns:1fr;gap:18px}.orbit{max-width:240px}.orbit-center{font-size:1.4rem}.orb{font-size:2rem}.input-grid,.comparison-inputs{grid-template-columns:1fr}.timeline{grid-template-columns:repeat(3,1fr)}.entry-panel{padding:22px}.reading-card{padding:22px}.actions button{width:100%}}@media(max-width:360px){.timeline{grid-template-columns:repeat(2,1fr)}.brand{font-size:.95rem}.site-header{padding:16px 12px}.brand svg{display:none}main{padding-left:16px;padding-right:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Clue Cube: native sticker geometry, exact integer model underneath. */
.numerology [hidden]{display:none!important}.cube-hero{max-width:850px}.cube-stage{display:grid;grid-template-columns:minmax(260px,1fr) minmax(280px,1fr);align-items:center;gap:2rem;margin:2rem 0}.cube-viewport{height:360px;perspective:900px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at center,#49325580,transparent 66%);border:1px solid #bca67730;border-radius:24px}.cube-viewport #cube-camera,.cube-viewport #cube-scene,.cube-layer{position:relative;width:0;height:0;transform-style:preserve-3d}.cube-viewport #cube-camera{transition:transform .25s ease}.cube-sticker{position:absolute;width:50px;height:50px;left:-25px;top:-25px;border:2px solid #17191e;border-radius:4px;backface-visibility:hidden;box-sizing:border-box;box-shadow:inset 0 0 0 1px #ffffff30}.color-U{background:#f5f5f2}.color-D{background:#ffd83d}.color-R{background:#d93a36}.color-L{background:#f28c28}.color-F{background:#26985d}.color-B{background:#286bd1}.cube-layer{animation:cube-turn .44s linear forwards}@keyframes cube-turn{from{transform:rotateX(0deg)}to{transform:var(--turn)}}.cube-controls progress{display:block;width:100%;height:12px;accent-color:#d5b879}.cube-controls .actions{flex-wrap:wrap}.camera-controls{display:flex;gap:.5rem;flex-wrap:wrap;border:0;padding:0;margin-top:1rem}.camera-controls legend{margin-bottom:.5rem}.cube-reading-face{align-self:start;padding:1.5rem}.cube-reading-face summary{display:flex;flex-direction:column;gap:.5rem;cursor:pointer;min-height:90px;font-size:1.25rem;list-style:none}.cube-reading-face summary:after{content:'Open this face +';font-size:.8rem;color:#d5b879}.cube-reading-face[open] summary:after{content:'Close this face −'}.cube-reading-face .number{font-size:2.5rem;margin:1rem 0}.reflection-steps{display:flex;gap:.5rem;flex-wrap:wrap;margin:1.5rem 0}.reflection-steps [aria-pressed=true]{background:#d5b879;color:#21182e}.cube-controls button{min-height:44px}.numerology #cube-mode,.numerology #cube-lens,.numerology #cube-topic{max-width:100%}.numerology #cube-result{scroll-margin-top:2rem}
@media(max-width:720px){.cube-stage{grid-template-columns:1fr;gap:1rem}.cube-viewport{height:300px}.cube-controls{min-width:0}.cube-reading-face{padding:1rem}.cube-reading-face summary{min-height:75px}.numerology .input-grid>*{min-width:0}}
@media(prefers-reduced-motion:reduce){.cube-layer{animation:none}.cube-viewport #cube-camera{transition:none}.numerology .reveal{animation:none}}

/* Opaque 54px cubies fill the 4px sticker gutters; closed cut faces rotate with their layer. */
.cube-body{position:absolute;width:0;height:0;transform-style:preserve-3d}.cube-body-face{position:absolute;width:54px;height:54px;left:-27px;top:-27px;background:#17191e;backface-visibility:hidden;box-sizing:border-box;box-shadow:inset 0 0 8px #0003}.cube-sticker{box-shadow:inset 0 1px 2px #ffffff30,inset 0 -2px 3px #0002}

/* M4: overview hierarchy; accepted Cube geometry above remains intact. */
.reading-overview{background:#fff5e7;color:#21182e;border-radius:20px;padding:clamp(20px,4vw,42px);margin:30px 0;overflow-wrap:anywhere}
.overview-heading{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:25px}.reading-inputs{font-size:.85rem;margin:0;color:#615369}
.reading-overview a,.reading-overview summary,.reading-overview legend,.reading-overview .eyebrow{color:#614313}.reading-overview a:hover{color:#21182e}
.reading-overview .overview-edit{display:inline-flex;align-items:center;min-height:44px;font-size:.9rem;white-space:nowrap}
.overview-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:34px}.overview-layout>*{min-width:0}
.reading-overview .reading-card{background:transparent;border:0;padding:0}.reading-overview .number{color:#21182e;font-size:clamp(4rem,8vw,6rem)}
.reading-overview .lead,.reading-overview small{color:#615369}.reading-overview details,.reading-overview fieldset{border-color:#c8b8cb}.reading-overview details{margin:14px 0}
.reading-overview .quiet{color:#614313;border-color:#8c7694}.reading-overview :focus-visible{outline-color:#614313}.reading-overview input[type=radio]{accent-color:#614313}
.overview-secondary{border-left:1px solid #c8b8cb;padding-left:30px}.overview-metrics{display:grid;gap:12px;margin:24px 0}.overview-metric{display:block;text-decoration:none;border:1px solid #c8b8cb;border-radius:12px;padding:18px;min-height:44px}.overview-metric:hover{border-color:#614313}.overview-metric>span{font-size:.85rem;color:#21182e}.overview-metric strong{font:2.4rem Georgia,serif;display:block;color:#21182e}.overview-metric strong small{display:inline;font:1rem system-ui}.overview-basis{font-size:.85rem;color:#615369}
nav a,summary{min-height:44px;display:inline-flex;align-items:center}details>summary{display:list-item;padding:9px 0}.wide-nav{gap:12px}.compact-nav nav a{min-height:44px;padding:8px}
#reading-name-details,#reading-method{scroll-margin-top:25px}.reading-overview .reflection label{min-height:44px}
@media(max-width:800px){.overview-layout{grid-template-columns:1fr}.overview-secondary{border-left:0;border-top:1px solid #c8b8cb;padding:25px 0 0}.overview-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-metric{padding:14px}}
@media(max-width:520px){.overview-heading{flex-direction:column;gap:6px}.overview-metrics{grid-template-columns:1fr}.overview-metric{display:grid;grid-template-columns:1fr auto;column-gap:12px}.overview-metric strong{grid-column:2;grid-row:1 / span 2;align-self:center}.overview-edit{white-space:normal}.reading-overview .number{font-size:4.5rem}}

/* Local core-number summary and adjacent native disclosures. */
.core-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.core-summary{border:1px solid #c8b8cb;border-radius:14px;padding:20px;min-width:0}.core-summary h3{font-size:1.2rem;margin:0 0 12px}.core-number{font:3rem/1.15 Georgia,serif;color:#21182e}.core-number small{display:inline;font-size:1rem}.core-summary p{font-size:1rem}.core-summary summary{min-height:44px;display:list-item;padding:8px 0}.core-summary details{margin-bottom:0}.core-summary .math{overflow-wrap:anywhere}@media(max-width:600px){.core-summary-grid{grid-template-columns:1fr}.core-summary{padding:16px}}

/* Allow accepted long names to wrap in reading headings and normalized spelling. */
#reading-output{overflow-wrap:anywhere}

.reading-results-navigation{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.reading-results-navigation h2{min-width:0}.reading-results-navigation .overview-edit{display:inline-flex;align-items:center;min-height:44px;font-size:.9rem}
.reading-results-navigation .overview-edit:focus{outline:3px solid var(--gold);outline-offset:4px}

/* Personal reading only: browser Print, no screen or export-service change. */
@media print{
 body:has(#reading-output>section){color-scheme:light;background:#fff!important;color:#111!important;font-size:11pt;line-height:1.4}
 body:has(#reading-output>section) *{color:#111!important;background:transparent!important;box-shadow:none!important;text-shadow:none!important;animation:none!important;overflow-wrap:anywhere}
 body:has(#reading-output>section) .site-header,body:has(#reading-output>section) footer,body:has(#reading-output>section) .skip,body:has(#reading-output>section) nav{display:none!important}
 body:has(#reading-output>section) main{max-width:none;margin:0;padding:0}
 body:has(#reading-output>section) main>:not(#reading-output):not(#reading-form):not(:has(#reading-output)){display:none!important}
 body:has(#reading-output>section) .entry-panel{border:0;padding:0;margin:0}
 body:has(#reading-output>section) .entry-panel>h2,body:has(#reading-output>section) .entry-panel>.eyebrow{display:none}
 body:has(#reading-output>section) #reading-form{display:contents}body:has(#reading-output>section) #reading-form>:not(.subtle){display:none!important}
 body:has(#reading-output>section) #reading-status,body:has(#reading-output>section) #reading-confirm,body:has(#reading-output>section) .reflection,body:has(#reading-output>section) button,body:has(#reading-output>section) input,body:has(#reading-output>section) select,body:has(#reading-output>section) [data-edit-reading]{display:none!important}
 body:has(#reading-output>section) h2{font-size:20pt}body:has(#reading-output>section) h3{font-size:14pt}body:has(#reading-output>section) h4{font-size:12pt}
 #reading-output .reading-overview{padding:12pt;margin:12pt 0;border:1px solid #999;border-radius:0}
 #reading-output .result-grid,#reading-output .core-summary-grid{display:block}
 #reading-output .reading-card,#reading-output .core-summary{padding:10pt;margin:10pt 0;border:1px solid #999;border-radius:0;break-inside:avoid;page-break-inside:avoid}
 #reading-output .number{font-size:32pt}#reading-output .core-number{font-size:26pt}
 #reading-output h2,#reading-output h3,#reading-output h4,#reading-output summary{break-after:avoid}
 #reading-output .calculation{break-inside:avoid}#reading-output .calculation::details-content{content-visibility:visible;display:block}
 #reading-output .letter-row{flex-wrap:wrap}#reading-output .letter{min-width:0}
 #reading-stale-notice:not(:empty){border:1px solid #111;padding:8pt;font-weight:600}
 #reading-output p{orphans:3;widows:3}#reading-output a{text-decoration:underline}
}

@media print{html:has(#reading-output>section){color-scheme:light;background:#fff!important}body:has(#reading-output>section) *{outline:none!important}#reading-output .calculation>summary{list-style:none}#reading-output .calculation>summary::marker{content:""}}

/* Match existing non-color current-page styling for the home link. */
.brand[aria-current="page"]{text-decoration:underline}

.month:hover small{color:var(--bg)}

@media(forced-colors:active){.month[aria-pressed="true"]{border:3px double ButtonText}}
