:root{--ink:#f8fafc;--muted:#a8b3c4;--gold:#d8ad63;--cyan:#69d5ff;--violet:#b59cff;--panel:#11182a;--line:rgba(148,163,184,.2);--bg:#070a12;--surface:rgba(15,23,42,.86)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background-color:var(--bg);background-image:radial-gradient(circle at 18px 26px,rgba(255,255,255,.48) 0 1px,transparent 1.3px),radial-gradient(circle at 72px 64px,rgba(105,213,255,.24) 0 .9px,transparent 1.3px),radial-gradient(circle at 128px 38px,rgba(216,173,99,.18) 0 .8px,transparent 1.3px),radial-gradient(ellipse at 10% 0,rgba(105,213,255,.09),transparent 34%),radial-gradient(ellipse at 90% 20%,rgba(181,156,255,.08),transparent 38%),linear-gradient(180deg,#070a12 0%,#080c17 52%,#070a12 100%);background-size:97px 97px,151px 151px,193px 193px,100% 100%,100% 100%,100% 100%;background-attachment:fixed;color:var(--ink);font-family:'AstrologIA Sans','Plus Jakarta Sans',Inter,system-ui,sans-serif;line-height:1.65}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:10;padding:.7rem 1rem;background:var(--gold);color:#17110a;border-radius:999px}.skip-link:focus{top:1rem}.seo-header{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1rem clamp(1rem,5vw,5rem);border-bottom:1px solid var(--line);background:rgba(7,10,18,.86);position:sticky;top:0;z-index:2;backdrop-filter:blur(16px)}.brand{font-family:'AstrologIA Display','Cielo Cormorant',Cinzel,serif;font-size:1.595rem;color:var(--ink);text-decoration:none;letter-spacing:.01em}.brand span,.eyebrow{color:var(--cyan)}.seo-header nav,.related,footer{display:flex;gap:.65rem;flex-wrap:wrap}.seo-header nav a{padding:.45rem .7rem;border:1px solid transparent;border-radius:999px;color:#cbd5e1;text-decoration:none;transition:background .2s,border-color .2s,color .2s}.seo-header nav a:hover,.seo-header nav a:focus-visible{color:var(--ink);border-color:rgba(105,213,255,.32);background:rgba(105,213,255,.09)}.seo-header a,footer a,.related a,.breadcrumbs a,.sources a{color:var(--cyan)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,.calendar-scroll:focus-visible{outline:3px solid var(--gold);outline-offset:3px}main{max-width:960px;margin:auto;padding:clamp(2rem,5vw,4rem) 1.2rem 5rem}.breadcrumbs{display:flex;gap:.6rem;color:var(--muted);font-size:0.99rem}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:0.858rem;margin-top:2rem}h1,h2,h3{font-family:'AstrologIA Display','Cielo Cormorant',Cinzel,serif;font-weight:500}h1{font-size:clamp(2.75rem,7.7vw,5.72rem);line-height:.98;max-width:900px;margin:.3rem 0 1.2rem}.lead{font-size:1.298rem;color:#cbd5e1;max-width:800px}.tool-card,.content-section,.editorial-card{background:linear-gradient(145deg,rgba(17,24,42,.94),rgba(10,15,28,.94));border:1px solid var(--line);border-radius:20px;padding:clamp(1.1rem,3vw,2rem);margin:2rem 0;box-shadow:0 18px 50px rgba(0,0,0,.2)}.tool-card{position:relative;overflow:hidden}.tool-card::before{content:'';position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--gold),var(--violet),var(--cyan));opacity:.8}.tool-card form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.tool-card fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;grid-column:1/-1;border:1px solid var(--line);border-radius:14px;padding:1rem}.tool-card legend{color:var(--gold);font-weight:700;padding:0 .4rem}.tool-card label{display:grid;gap:.35rem;color:var(--muted);font-size:0.99rem}.tool-card input,.tool-card select,.tool-card button{width:100%;border-radius:11px;border:1px solid var(--line);padding:.8rem;background:rgba(3,7,18,.72);color:var(--ink)}.tool-card input:focus,.tool-card select:focus{border-color:var(--cyan)}.tool-card button{background:var(--gold);color:#17110a;font-weight:800;cursor:pointer;transition:transform .2s,filter .2s}.tool-card button:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.07)}.tool-card button:disabled{cursor:not-allowed;opacity:.55}.field-help,.privacy-note,.calculation-meta{color:var(--muted)}.field-help{font-size:0.902rem;grid-column:1/-1;margin:0}.tool-result{margin-top:1.2rem;min-height:2rem}.result-highlight{font-size:1.65rem;color:var(--gold)}.tool-error{color:#ffd4d4;border-left:3px solid #ff8d8d;padding-left:.8rem}.calendar-scroll{overflow-x:auto;margin-top:1rem;border-radius:14px}.calendar-table{border-collapse:separate;border-spacing:.35rem;min-width:760px;width:100%}.calendar-table caption{text-align:left;color:var(--gold);font-weight:700;padding:.5rem}.calendar-table th{text-align:center;color:var(--muted)}.calendar-table td{width:14.285%;vertical-align:top}.calendar-day{display:grid;gap:.1rem;padding:.55rem;border:1px solid var(--line);border-radius:10px;min-height:118px;font-size:0.858rem;background:rgba(255,255,255,.015)}.calendar-day time{font-size:1.1rem;font-weight:700;color:var(--gold)}.calendar-day strong{margin-top:.25rem;color:var(--cyan)}.calendar-empty{background:rgba(255,255,255,.02);border-radius:10px}.month-controls{display:flex;gap:.7rem;align-items:end}.month-controls label{flex:1}.content-section h2{color:var(--gold);font-size:clamp(1.815rem,3.3vw,2.53rem)}details{border-top:1px solid var(--line);padding:.8rem 0}summary{cursor:pointer;font-weight:700}.editorial-card{font-size:0.968rem;color:var(--muted)}.related{margin:2rem 0}.related a{padding:.5rem .8rem;border:1px solid rgba(105,213,255,.3);border-radius:999px;text-decoration:none;background:rgba(105,213,255,.05)}footer{padding:2rem clamp(1rem,5vw,5rem);border-top:1px solid var(--line);color:var(--muted);background:rgba(7,10,18,.72)}footer p{flex-basis:100%;margin:0}@media(max-width:680px){.seo-header{position:relative;align-items:flex-start;flex-direction:column}.seo-header nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;font-size:0.902rem}.seo-header nav a{text-align:center}.tool-card form,.tool-card fieldset{grid-template-columns:1fr}.month-controls{align-items:stretch;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tool-card button{transition:none}}
/* Explicitly scale controls that previously used the browser's 13⅓px default. */
.tool-card input,.tool-card select,.tool-card button { font-size: 14.6667px; }
