:root{--midnight:#0B0B12;--ink:#15151F;--ink2:#1D1D2B;--gold:#C9A24A;--gold-soft:#E3C98A;--burgundy:#6E1F2E;--burgundy-2:#8E2C3F;--indigo:#2B2F6B;--parchment:#EFE6D0;--muted:#B9B2A0;--ok:#7FB77E;--warn:#E0B15A}
*{box-sizing:border-box}html,body{margin:0;background:var(--midnight);color:var(--parchment);font:16px/1.55 Georgia,"Times New Roman",serif}
a{color:var(--gold-soft)}button,.btn{font:inherit;cursor:pointer;border-radius:6px;border:1px solid var(--gold);background:transparent;color:var(--gold-soft);padding:.55rem 1rem;text-decoration:none;display:inline-block}
.btn.primary{background:var(--gold);color:var(--midnight);border-color:var(--gold);font-weight:bold}.btn.small{padding:.3rem .6rem;font-size:.85rem}
.btn:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold-soft);outline-offset:2px}
header.top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1.4rem;border-bottom:1px solid #2a2a3a;background:var(--ink);position:sticky;top:0;z-index:5}
.brand{letter-spacing:.22em;font-size:.95rem;color:var(--gold);text-decoration:none;font-weight:bold}
nav.main a{color:var(--parchment);text-decoration:none;margin-left:1.1rem;font-size:.92rem;font-family:system-ui,sans-serif}nav.main a.on{color:var(--gold)}
.banner{background:var(--burgundy);color:var(--parchment);text-align:center;font:600 .82rem system-ui,sans-serif;padding:.35rem;letter-spacing:.04em}
main{max-width:1120px;margin:0 auto;padding:1.6rem 1.2rem 6rem}
h1,h2,h3{color:var(--gold);font-weight:normal;letter-spacing:.02em}h1{font-size:2.3rem;margin:.2rem 0}
.hero{text-align:center;padding:3rem 1rem 2rem;background:radial-gradient(ellipse at top,#1f2150 0%,transparent 60%)}
.tag{color:var(--muted);font-style:italic;font-size:1.15rem}
.card{background:var(--ink2);border:1px solid #33334a;border-radius:10px;padding:1.1rem 1.2rem}
.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.tcard{display:flex;flex-direction:column;gap:.35rem;border-top:3px solid var(--indigo);text-decoration:none;color:inherit}.tcard:hover{border-color:var(--gold)}
.tcard .val{font-size:1.35rem;color:var(--parchment)}.tcard .none{color:var(--muted);font-style:italic}
.badge{font:600 .7rem system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:.15rem .45rem;border-radius:4px;display:inline-block}
.b-ver{background:#1f3a24;color:#bfe6bd}.b-pre{background:#4a3a12;color:#f3dca0}.b-not{background:#33334a;color:#c9c6d6}.b-sample{background:var(--burgundy-2);color:#fff}
.sample{position:relative}
form.profile{display:grid;gap:1rem;grid-template-columns:1fr 1fr}form.profile .full{grid-column:1/-1}
label{display:block;font:600 .85rem system-ui,sans-serif;color:var(--gold-soft);margin-bottom:.25rem}
input,select{width:100%;padding:.6rem;border-radius:6px;border:1px solid #44445c;background:#0f0f18;color:var(--parchment);font:inherit}
.check{display:flex;gap:.5rem;align-items:center}.check input{width:auto}
.muted{color:var(--muted)}.small{font-size:.86rem}.mono{font-family:ui-monospace,Menlo,monospace;font-size:.86rem}
.row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}
.layer{border-left:3px solid var(--gold);padding-left:.8rem;margin:.8rem 0}.layer.hist{border-color:var(--indigo)}.layer.syn{border-color:var(--burgundy-2)}.layer.ref{border-color:var(--muted)}
details{background:#12121c;border:1px solid #2c2c40;border-radius:8px;padding:.6rem .9rem;margin:.6rem 0}summary{cursor:pointer;color:var(--gold-soft)}
.wheel{width:100%;max-width:300px;aspect-ratio:1;display:block;margin:auto}
.tarot{display:flex;gap:1rem;flex-wrap:wrap}.tcardx{width:150px;min-height:230px;background:linear-gradient(160deg,var(--indigo),#151738);border:2px solid var(--gold);border-radius:10px;padding:.7rem;text-align:center}
.tcardx.rev .nm{transform:rotate(180deg)}
table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid #2c2c40;padding:.4rem;text-align:left;vertical-align:top;font-size:.9rem}
.tabbar{display:none}
@media (max-width:760px){nav.main{display:none}h1{font-size:1.7rem}form.profile{grid-template-columns:1fr}
 .tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--ink);border-top:1px solid #333;justify-content:space-around;padding:.45rem 0;z-index:9}
 .tabbar a{color:var(--parchment);text-decoration:none;font:600 .72rem system-ui,sans-serif;text-align:center}.tabbar a.on{color:var(--gold)}}

/* Local owner-supplied artwork. */
.art{display:block;overflow:hidden;border-radius:10px}.art img{display:block;width:100%;height:auto;object-fit:cover}.art-card{margin:0 0 .8rem;aspect-ratio:16/9}.art-card img{height:100%}.art-header{max-height:330px;margin:1rem 0}.art-header img{max-height:330px;object-fit:contain;background:#0b0b12}.art-mosaic{max-width:950px;margin:1rem auto}.art-hero{position:relative;isolation:isolate;overflow:hidden;border-radius:14px;padding:5rem 1.5rem!important}.hero-image{position:absolute;inset:0;z-index:-2;border-radius:0}.hero-image img{height:100%;object-fit:cover}.art-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,5,14,.35),rgba(5,5,14,.84) 65%,#0b0b12)}.art-hero h1,.art-hero p{text-shadow:0 2px 8px #000}.art-hero .muted{color:#eee6d5}@media(max-width:640px){.art-hero{padding:3rem 1rem!important}.art-header{max-height:230px}}

/* Immersive offline home; motion is ornamental and optional. */
.home-page{margin:-1rem;--home-plum:#281326}.home-hero{position:relative;isolation:isolate;min-height:650px;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding:5rem 1.3rem 7rem;background:#080c1b}.home-hero-art{position:absolute;inset:-3%;z-index:-3;border-radius:0;animation:observatory-drift 30s ease-in-out infinite alternate}.home-hero-art img{width:100%;height:100%;object-fit:cover}.home-hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#080b1980,#080b1938 30%,#080b19b8 60%,#080b19)}.star-veil{position:absolute;inset:0;pointer-events:none;z-index:-1;background-image:radial-gradient(1px 1px at 13% 16%,#fff8 80%,transparent),radial-gradient(2px 2px at 76% 23%,#e3c98aaa 60%,transparent),radial-gradient(1px 1px at 57% 48%,#fff9 80%,transparent),radial-gradient(2px 2px at 31% 35%,#fff8 70%,transparent);background-size:330px 270px;animation:star-breathe 5s ease-in-out infinite alternate}.hero-copy{max-width:820px;text-shadow:0 3px 16px #000}.eyebrow{font-family:system-ui,sans-serif;font-size:.68rem;letter-spacing:.2em;color:#e3c98a;font-weight:600}.home-hero h1{font-size:clamp(2.5rem,6vw,5rem);letter-spacing:.06em;line-height:1.12;margin:1.3rem 0 .5rem;color:#f3dfac}.find-yourself{font-size:clamp(1rem,2.5vw,1.6rem);letter-spacing:.4em;color:#f4e9cf}.hero-intro{font-size:1.1rem;max-width:430px;margin:1.5rem auto;color:#f4eddf}.home-hero .primary{padding:1rem 1.5rem;margin:.5rem 0}.hero-note{color:#e3dccc}.hero-scroll{position:absolute;bottom:2.5rem;color:#e3c98a;font-size:.85rem}.home-section{padding:3.5rem 1.3rem}.home-section h2{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:400;line-height:1.2;margin:.7rem 0 1rem;color:#f0ddb4}.section-intro{max-width:620px;color:#c6c0b5;line-height:1.7}.tradition-showcase{display:grid;grid-template-columns:1fr;gap:1.1rem;margin-top:2rem}.showcase-card,.discovery-card{display:block;overflow:hidden;border:1px solid #54442e;border-radius:12px;background:linear-gradient(150deg,#161a29,#211321);text-decoration:none;color:#f0e8d7;transition:transform .25s,border-color .25s,box-shadow .25s}.showcase-card:hover,.discovery-card:hover{transform:translateY(-4px);border-color:#c9a24a;box-shadow:0 10px 30px #c9a24a20}.showcase-art{aspect-ratio:16/9;border-radius:0}.showcase-art img{height:100%;object-fit:cover}.showcase-copy{padding:1.1rem}.showcase-copy h3,.discovery-card h3{color:#ead29a;font-size:1.25rem;margin:0 0 .6rem}.showcase-copy p,.discovery-card p{font-size:.9rem;line-height:1.6;color:#d3ccbe}.explore-label{display:block;color:#efd395;font-size:.8rem;margin-top:1rem}.showcase-copy .small{display:block;margin-top:.6rem}.how-strip{background:linear-gradient(120deg,#17162a,#271323);border-block:1px solid #5c3b42}.how-strip ol{display:grid;gap:2rem;list-style:none;padding:0;margin:2rem 0 0}.how-strip li>span{color:#c9a24a;font-size:1.8rem}.how-strip h3{color:#f1dfbb;margin:.5rem 0}.how-strip p{color:#d3ccbe;font-size:.9rem;line-height:1.6}.discovery-grid{display:grid;gap:1.5rem;margin-top:2rem}.discovery-art{aspect-ratio:16/9;border-radius:0}.discovery-art img{height:100%;object-fit:cover}.discovery-card>div{padding:1.3rem}.trust-band{background:#101522;border-block:1px solid #3a3540}.trust-band>div{display:grid;gap:.7rem}.trust-band p{font-size:.9rem;line-height:1.8;color:#d2cbbb}.trust-band b{color:#f3dfb3}.home-footer{padding:2rem;text-align:center;color:#c8bda8;font-size:.85rem;letter-spacing:.1em}.home-page a:focus-visible{outline:3px solid #ffe5a1;outline-offset:5px}@keyframes observatory-drift{from{transform:scale(1)}to{transform:scale(1.05) translateY(1%)}}@keyframes star-breathe{from{opacity:.35}to{opacity:.9}}@media(min-width:600px){.tradition-showcase{grid-template-columns:repeat(2,1fr)}.discovery-grid{grid-template-columns:repeat(2,1fr)}.how-strip ol{grid-template-columns:repeat(3,1fr)}.home-section{padding:4rem 2rem}.trust-band>div{grid-template-columns:repeat(2,1fr)}}@media(min-width:1000px){.tradition-showcase{grid-template-columns:repeat(4,1fr)}.home-hero{min-height:700px}.home-section{padding:4rem 3rem}}@media(prefers-reduced-motion:reduce){.home-hero-art,.star-veil{animation:none}.showcase-card,.discovery-card{transition:none}.showcase-card:hover,.discovery-card:hover{transform:none}}

main.home-shell{max-width:none;padding:0}.home-shell .home-page{margin:0}.home-shell .home-section{padding-left:max(1.3rem,calc((100% - 1100px)/2));padding-right:max(1.3rem,calc((100% - 1100px)/2))}

#artbg,#cardsize{display:block;width:100%;margin:.4rem 0 1rem;padding:.65rem;background:#101522;color:#f2e7cc;border:1px solid #9b8043;border-radius:6px;font:inherit}#poster{display:block;height:auto;margin:1rem auto}#artbg:focus-visible,#cardsize:focus-visible{outline:3px solid #ffe5a1;outline-offset:3px}


/* Home-only credit: keep it readable above the fixed mobile navigation. */
@media(max-width:760px){.home-footer{padding-bottom:5rem}}

/* Phase 1: extend the observatory baseline with a calmer, focused working journey. */
body{background:radial-gradient(ellipse at 50% 0,#17152a 0,transparent 650px),#0b0b12}
button:disabled{opacity:.5;cursor:wait}button,a,input,select,textarea{touch-action:manipulation}
.skip-link{position:fixed;top:-100px;left:1rem;z-index:100;background:#efe6d0;color:#15151f;padding:.6rem}.skip-link:focus{top:0}
.page-heading{max-width:760px;margin:1.5rem 0 2rem}.page-heading h1{font-size:clamp(2rem,4vw,3rem);line-height:1.18;color:#efdbaf}.page-heading>p:not(.eyebrow){color:#c8c1b4;max-width:660px;font-size:1.02rem;line-height:1.8}
.steps{list-style:none;display:flex;gap:1.5rem;border-bottom:1px solid #49402f;padding:0 0 1rem;font:500 .72rem system-ui,sans-serif;letter-spacing:.06em;color:#aaa393}.steps .active{color:#f0d291}
.profile-layout{display:grid;grid-template-columns:280px 1fr;gap:1.5rem;align-items:start}.profile-aside{background:linear-gradient(140deg,#1c1a2b,#231620)}.profile-aside h2{margin-top:0;color:#e6d0a0}.sample-buttons{display:grid;gap:.65rem}.sample-buttons button{text-align:left;line-height:1.5;padding:.6rem .7rem!important}
form.profile{padding:1.5rem;border-color:#665331;background:linear-gradient(160deg,#1a1b2c,#19141e)}form.profile label{line-height:1.5}form.profile p{margin:.35rem 0}form.profile input:disabled{color:#aaa;background:#24232d}.check{align-items:flex-start;line-height:1.6}.check input{flex-shrink:0;margin-top:.35rem;width:18px;height:18px;accent-color:#c9a24a}.check label{margin:0}.privacy-box{border-top:1px solid #4d4231;padding-top:1.2rem}.privacy-box>.check{margin:.6rem 0}
fieldset{border:1px solid #4b4351;border-radius:8px;padding:1rem;margin:0;min-width:0}legend{font:600 .78rem system-ui,sans-serif;letter-spacing:.05em;color:#d9c398;padding:0 .4rem}.place-option{display:flex;gap:.7rem;align-items:flex-start;margin:.5rem 0;padding:.6rem;border-radius:5px;background:#10121e;color:#eee3ca;font-weight:400;cursor:pointer}.place-option input{width:18px;height:18px;flex-shrink:0;margin:.2rem 0;accent-color:#c9a24a}.place-option small{display:block;font-size:.73rem;color:#bdb6aa;margin-top:.25rem;overflow-wrap:anywhere}.confirmation{max-width:820px;padding:1.8rem;background:linear-gradient(135deg,#1b1b2a,#201521);border-color:#675234}.confirmation fieldset{margin:1.5rem 0}.confirmation .row{margin-top:1rem}.zone-id{font:500 1.05rem ui-monospace,monospace;color:#edd7a3;overflow-wrap:anywhere}.warning,.error{color:#ffdaa0}.error:empty{display:none}.warning{border-left:3px solid #c9a24a;padding-left:.8rem}
.result-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:2rem}.result-grid .tcard{border-top:1px solid #665331;background:linear-gradient(150deg,#1a1d2e,#231521);padding:1.1rem}.result-grid h2{font-size:1.4rem;line-height:1.4;color:#f2e5c8;margin:.35rem 0}.result-grid .art-card{margin:-.1rem -.1rem .6rem}.text-art{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:radial-gradient(ellipse at center,#30234b,#0f1122);aspect-ratio:16/9;color:#e6d1a7;border-radius:8px;letter-spacing:.12em;font-size:1.1rem}.text-art span{font:400 .7rem system-ui,sans-serif;letter-spacing:.04em;margin:.5rem}.reflection-strip{border-top:1px solid #5b4835;border-bottom:1px solid #3b3043;margin:2rem 0;padding:1.3rem 0;color:#ccc4b6}.reflection-strip .row{margin:.8rem 0}.source-panel{margin:1.6rem 0}.source-panel li{margin:.7rem 0;overflow-wrap:anywhere}.source-panel h2{font-size:1.25rem}.roadmap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roadmap-grid h2{font-size:1.4rem}
.share-layout{grid-template-columns:minmax(270px,.9fr) minmax(300px,1.1fr);align-items:start}.share-layout label{margin-top:1rem}#poster{width:100%;max-width:420px;height:auto;margin:0 auto;border-radius:8px}.poster-shell{background:#10111c;padding:1rem}.share-layout textarea{width:100%;background:#10111c;color:#e8dfcc;border:1px solid #675636;border-radius:6px;padding:.7rem;font:inherit;font-size:.88rem;resize:vertical}#share-system{margin-bottom:1rem}.home-footer{font-size:.72rem;letter-spacing:.02em;color:#b9b2a0}.home-hero{min-height:650px}.home-hero .hero-intro{max-width:550px}.home-hero .hero-copy{padding:1rem 0}.tradition-showcase{grid-template-columns:repeat(3,minmax(0,1fr))}#lib{overflow-x:auto}
@media(max-width:1000px){header.top{gap:.6rem;padding:.7rem 1rem}.brand{letter-spacing:.12em}nav.main a{margin-left:.7rem;font-size:.8rem}.profile-layout{grid-template-columns:220px 1fr}}
@media(max-width:760px){main{padding:1.1rem 1.1rem 6rem}.brand{font-size:.73rem;letter-spacing:.12em}#clear-data{font-size:.7rem;padding:.5rem .65rem;min-height:44px}.banner{font-size:.62rem;padding:.45rem .6rem;line-height:1.6}.profile-layout,.share-layout,.result-grid,.roadmap-grid{grid-template-columns:1fr}.profile-aside{padding:1rem}.sample-buttons{grid-template-columns:1fr 1fr}.sample-buttons .btn{font-size:.72rem}.profile-layout{gap:1rem}form.profile,.confirmation{padding:1.15rem}.steps{gap:.6rem;font-size:.58rem;justify-content:space-between}.page-heading{margin:1rem 0 1.4rem}.page-heading h1{font-size:1.95rem}.page-heading>p:not(.eyebrow){font-size:.94rem}.confirmation .row>*{max-width:100%}.row .btn{white-space:normal}.tradition-showcase{grid-template-columns:1fr}.home-hero{min-height:640px;padding-top:3rem;padding-bottom:6rem}.home-hero h1{font-size:2.7rem}.home-hero .eyebrow{letter-spacing:.12em}.find-yourself{letter-spacing:.32em}.tabbar{padding:.6rem 0 calc(.6rem + env(safe-area-inset-bottom))}.tabbar a{min-width:44px;min-height:44px}.home-footer{padding-bottom:6rem}.source-panel{padding:1rem}.source-panel ul{padding-left:1.1rem}.art-header{margin:1rem 0}.result-grid{margin-top:1.3rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Offline Tarot reading and Western learning reference. No remote fonts or imagery. */
.tarot-controls{display:flex;align-items:end;gap:1rem;flex-wrap:wrap;margin:1.5rem 0}.tarot-controls>div{flex:1;min-width:220px}.tarot-controls select{width:100%}.tarot-controls>p{width:100%;margin:.2rem 0}.tarot-controls .check{padding:.8rem 0}.tarot-reading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin:1.5rem 0}.tarot-reading-grid.single-reading{grid-template-columns:minmax(0,760px);justify-content:center}.tarot-reading p,.spread-summary p,.card-detail p,.house-reference p,.house-conventions p{line-height:1.8}.typographic-card{min-height:260px;padding:1.6rem;text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center;border:1px solid #c9a24a;border-radius:10px;background:radial-gradient(ellipse at top,#3b1830,#101425 80%);box-shadow:inset 0 0 0 6px #101425,inset 0 0 0 7px #796139;margin:1rem 0}.typographic-card h3{font:1.65rem Georgia,serif;color:#f3deb0}.tarot-ornament{font-size:3.8rem;color:#c9a24a}.tarot-reading .eyebrow{min-height:2.5em}.tarot-reading details{margin-top:1.4rem}.tarot-reading a,.card-detail a,.house-reference a{overflow-wrap:anywhere}.spread-summary{border-color:#967740}.spread-summary p{max-width:85ch}.reading-empty{margin:2rem 0;text-align:center}.card-detail{max-width:850px;margin:auto}.card-detail h2{margin-top:2rem}.card-detail h2:first-of-type{margin-top:0}.house-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin:1.5rem 0}.house-areas{color:#e3c785;font-size:.9rem}.house-conventions h3{margin-top:1.5rem}.tarot-invitation .btn{margin:.4rem .5rem .4rem 0}summary{cursor:pointer;color:#e3c785;padding:.7rem 0;line-height:1.5}summary:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid #f3deb0;outline-offset:4px}#tarot-library{display:block;width:100%;max-width:600px;margin:1rem 0}
@media(max-width:800px){.tarot-reading-grid,.house-grid{grid-template-columns:minmax(0,1fr)}.tarot-controls{align-items:stretch;flex-direction:column}.tarot-controls>div{min-width:0;width:100%}.typographic-card{min-height:220px}.tarot-reading .eyebrow{min-height:0}.top nav.main{gap:.55rem}.card-detail{padding:1.25rem}}

/* Long-form readings: native accessible disclosure controls, same-origin scripts only. */
.result-reading,.dashboard-synthesis{margin:1.5rem 0;padding:clamp(1.1rem,3vw,2.3rem)}
.full-reading{max-width:75ch;margin:1.6rem auto 2rem;line-height:1.8}
.full-reading h3{font-size:clamp(1.25rem,3vw,1.8rem);line-height:1.4;color:var(--gold)}
.reading-section{border-top:1px solid #514733;padding:.9rem 0;overflow-wrap:anywhere}
.reading-section summary,.reading-component>summary{cursor:pointer;min-height:44px;padding:.55rem .3rem;font-weight:600;color:#f1ddb2;line-height:1.5}
.reading-section summary:focus-visible,.reading-component>summary:focus-visible{outline:2px solid #ead7a9;outline-offset:3px}
.reading-section p,.reading-context p,.dashboard-synthesis>p{font-size:1rem;line-height:1.85;max-width:75ch}
.reading-component{border:1px solid #514733;border-radius:10px;margin:1rem 0;padding:.4rem 1rem;background:#111624}
.reading-citations{padding-left:1.3rem;overflow-wrap:anywhere;line-height:1.6}
.reading-citations li{margin:.9rem 0}.reading-citations p{margin:.3rem 0}
.reading-context{padding:1.2rem;border-left:3px solid #b39854;margin:1rem 0;background:#141a28}
.reading-notice{border-left:3px solid #b39854;padding:.7rem 1rem;background:#1c2030;line-height:1.7}
.dashboard-synthesis .row{gap:.7rem;margin:1.2rem 0}.result-summary{line-height:1.6;color:#e4d3b4}
@media(max-width:640px){.reading-component{padding:.3rem .7rem}.reading-section summary{font-size:1rem}.full-reading{margin:1rem 0}.dashboard-synthesis .row .btn{width:100%;white-space:normal}}

/* Launch candidate: hidden manual-location controls stay out of keyboard navigation. */
[hidden]{display:none!important}#manual-fields{margin-top:1rem}#manual-fields input{margin-bottom:.8rem}

@media(max-width:760px){.profile-aside{order:2}}

/* Western & Vedic (Nov 9, 2026) */
.coords{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.5rem}
.astro-table{overflow-x:auto}.astro-table td,.astro-table th{word-break:normal}
@media (max-width:640px){.coords{grid-template-columns:1fr}.astro-table td,.astro-table th{font-size:.78rem;padding:.3rem .25rem}}

/* Identity Mosaic, Ancient Library, Learning Academy, Celestial Almanac (Nov 10, 2026). Local assets only. */
.mosaic-hello{font-size:1.15rem;color:#f2e2bb;margin:.2rem 0 1rem}
.mosaic-grid,.almanac-grid{display:grid;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr));margin:1rem 0 2rem}
.mosaic-tile{display:flex;flex-direction:column;overflow:hidden;border:1px solid #6a5430;border-radius:12px;background:linear-gradient(150deg,#1a1d2e,#241321);text-decoration:none;color:inherit;transition:transform .2s,border-color .2s}
.mosaic-tile:hover{transform:translateY(-3px);border-color:#c9a24a}.mosaic-art{aspect-ratio:16/9;border-radius:0}.mosaic-art img{height:100%;object-fit:cover}
.mosaic-copy{padding:.9rem 1rem 1rem}.mosaic-copy h2,.almanac-card h2{font-size:1.2rem;line-height:1.35;color:#f6e7c6;margin:.3rem 0 .4rem}
.mosaic-label{font:600 .66rem system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#e3c98a}
.mosaic-share{margin:1.5rem 0;max-width:820px}.mosaic-share fieldset{margin:1rem 0}.mosaic-share .check{margin:.45rem 0;font-weight:400;color:#eee3ca}.mosaic-share select{margin:.3rem 0 1rem}
.mosaic-share textarea{width:100%;background:#10111c;color:#e8dfcc;border:1px solid #675636;border-radius:6px;padding:.7rem;font:inherit;font-size:.88rem}
#mosaic-poster{display:block;width:100%;max-width:420px;height:auto;margin:1rem auto;border-radius:8px}
.mosaic-empty{max-width:720px}.mosaic-empty .btn{margin:.4rem .4rem 0 0}
.library-stats{font-size:1.05rem;color:#efdcae}.shelf-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0 1.3rem}.shelf-chips .btn{font-size:.78rem}
.shelf{margin:2rem 0}.shelf h2{border-bottom:1px solid #4d4231;padding-bottom:.4rem}.shelf-list{list-style:none;padding:0;display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.source-card{background:var(--ink2);border:1px solid #33334a;border-radius:10px;padding:.9rem 1rem;overflow-wrap:anywhere}.source-card h3{font-size:1rem;line-height:1.45;margin:0 0 .4rem;color:#f0ddb4}.source-card p{margin:.3rem 0;line-height:1.6}
.lesson-list{display:grid;gap:1.3rem;grid-template-columns:repeat(2,minmax(0,1fr))}.lesson{background:linear-gradient(150deg,#1a1d2e,#211521)}.lesson h2{margin:.2rem 0 .5rem;color:#f2dfb5}
.lesson-art{aspect-ratio:16/9;margin:-.2rem -.2rem .8rem}.lesson-art img{height:100%;object-fit:cover}.lesson-lead{font-size:1.04rem;line-height:1.75}.lesson details p{line-height:1.8}
.almanac-controls{max-width:520px}.almanac-controls input{max-width:220px}.almanac-day{color:#f3dfb0;margin:1.4rem 0 .2rem}
.almanac-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.almanac-card{display:flex;flex-direction:column;gap:.15rem;background:linear-gradient(150deg,#1a1d2e,#22142a)}.almanac-card p{margin:.3rem 0;line-height:1.6}
.almanac-art{aspect-ratio:16/9;margin:-.2rem -.2rem .6rem}.almanac-art img{height:100%;object-fit:cover}.almanac-highlight{color:#ffe3a3;font-weight:bold}
@media(max-width:1000px){.mosaic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.almanac-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.almanac-grid,.lesson-list,.shelf-list{grid-template-columns:1fr}.mosaic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.mosaic-copy{padding:.6rem .65rem .75rem}.mosaic-copy h2{font-size:.98rem;line-height:1.3}.mosaic-copy .small{font-size:.72rem;line-height:1.4}.mosaic-label{font-size:.56rem;letter-spacing:.08em}.mosaic-tile .explore-label{font-size:.7rem;margin-top:.5rem}.mosaic-art{aspect-ratio:4/3}}
@media(prefers-reduced-motion:reduce){.mosaic-tile{transition:none}.mosaic-tile:hover{transform:none}}
/* Nov 10, 2026 usability fixes */
#app:focus,#app:focus-visible{outline:none}
.tab-more{background:none;border:0;color:var(--parchment);font:600 .72rem system-ui,sans-serif;text-align:center;min-width:44px;min-height:44px;padding:0;cursor:pointer}
.tab-more.on,.tab-more[aria-expanded=true]{color:var(--gold)}
.more-menu{position:fixed;right:.6rem;bottom:calc(4.4rem + env(safe-area-inset-bottom));z-index:20;display:flex;flex-direction:column;min-width:13rem;background:#15151f;border:1px solid #9b8043;border-radius:10px;padding:.35rem;box-shadow:0 10px 30px rgba(0,0,0,.55)}
.more-menu[hidden]{display:none}
.more-menu a{color:var(--parchment);text-decoration:none;font:600 .95rem system-ui,sans-serif;padding:.75rem .85rem;border-radius:6px;text-align:left}
.more-menu a.on,.more-menu a:hover{color:var(--gold);background:#22202c}
.delete-dialog{max-width:26rem;background:#15151f;color:var(--parchment);border:1px solid #9b8043;border-radius:12px;padding:1.3rem 1.4rem}
.delete-dialog::backdrop{background:rgba(5,5,12,.72)}
.save-image-dialog{max-width:min(26rem,calc(100vw - 1.5rem));width:100%;background:#15151f;color:var(--parchment);border:1px solid #9b8043;border-radius:12px;padding:1.3rem 1.4rem}
.save-image-dialog::backdrop{background:rgba(5,5,12,.72)}
.save-image-dialog h2{margin-top:0;color:#e6d0a0}
.save-image-dialog img{display:block;width:100%;height:auto;border-radius:8px;margin:1rem 0;background:#090d19;-webkit-touch-callout:default;-webkit-user-select:auto;user-select:auto;pointer-events:auto}
.save-image-dialog form{margin:0}

.delete-dialog h2{margin-top:0;color:#e6d0a0}
.success-note{background:#1d3a2a;border:1px solid #5fa67a;color:#e9f6ec;border-radius:8px;padding:.8rem 1rem}
.more-samples{margin-top:.8rem}.more-samples summary{cursor:pointer;color:#e6d0a0;font-weight:600}.more-samples .sample-buttons{margin-top:.6rem}
.empty-state h2{margin-top:0}.empty-state .row{gap:.6rem;flex-wrap:wrap}
.share-how{border-left:3px solid #9b8043;padding-left:.7rem}
@media(min-width:761px){.more-menu{display:none!important}}

/* Polish 10 Nov 2026: wrap share labels, 44px targets, profile scroll room. */
#clear-data{min-height:44px;padding:.55rem .7rem;display:inline-flex;align-items:center;box-sizing:border-box}
.tabbar a,.tab-more{min-width:44px;min-height:44px;display:flex;flex-direction:column;justify-content:center;align-items:center;box-sizing:border-box}
.share-include{border:0;padding:0;margin:0 0 1rem;min-width:0}
.share-include legend{margin:0 0 .45rem;padding:0;font:600 .85rem system-ui,sans-serif;letter-spacing:0;color:var(--gold-soft)}
.share-option{display:flex;gap:.65rem;align-items:flex-start;margin:.4rem 0;padding:.55rem .7rem;border:1px solid #44445c;border-radius:6px;background:#0f0f18;color:var(--parchment);font-weight:400;cursor:pointer;min-height:44px;box-sizing:border-box}
.share-option input{width:18px;height:18px;flex-shrink:0;margin:.2rem 0;accent-color:#c9a24a}
.share-option span{flex:1;min-width:0;overflow-wrap:anywhere;line-height:1.4}
.share-option:has(input:checked){border-color:var(--gold);background:#16141f}
.place-option,#cands,#place-note{scroll-margin-bottom:calc(5.75rem + env(safe-area-inset-bottom, 0px));scroll-margin-top:5.25rem}
.method-line{font-size:.78rem;line-height:1.45;color:#b8b1a4}
@media(max-width:760px){form.profile{padding-bottom:4.5rem}#clear-data{min-height:44px}}
