:root{--bg:#faf7f2;--fg:#231d30;--muted:#696275;--accent:#6b3fa0;--gold:#c9962b;--card:#fff;--line:#ebe4d8;--night:#1c1430}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:18px/1.75 Georgia,'Times New Roman',serif}
a{color:var(--accent)}img{max-width:100%}
.wrap{max-width:1140px;margin:0 auto;padding:0 16px}
.ui,header.site,footer.site,.chip,.meta,.crumbs,.toc summary,.cookie,.side,.ad-label{font-family:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
header.site{background:var(--night);position:sticky;top:0;z-index:10;box-shadow:0 2px 12px rgba(0,0,0,.15)}
.top{display:flex;align-items:center;justify-content:space-between;min-height:62px;gap:12px}
.logo{font:700 24px/1 Georgia,serif;color:#fff;text-decoration:none;white-space:nowrap}.logo b{color:var(--gold)}.logo span{color:#b9a6d9;font-weight:400}
nav.main a{color:#ddd3f0;text-decoration:none;margin-left:18px;font-size:15px}nav.main a:hover{color:#fff}
.menu{display:none;background:none;border:0;color:#fff;font-size:26px;cursor:pointer}
main{padding:20px 16px 48px}
.crumbs{font-size:14px;color:var(--muted);margin:4px 0 14px}.crumbs a{text-decoration:none}
h1{line-height:1.2;font-size:40px;margin:.25em 0}h2{line-height:1.3;font-size:26px;margin:1.7em 0 .5em}h3{line-height:1.35}
.chip{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);background:#efe7f8;border-radius:99px;padding:3px 10px;text-decoration:none}
.chip.big{font-size:14px;text-transform:none;padding:8px 16px;background:#fff;border:1px solid var(--line);margin:4px}.chip.big:hover{border-color:var(--accent)}
.meta{font-size:14px;color:var(--muted)}
.hero{text-align:center;padding:40px 0 24px;max-width:780px;margin:0 auto}.hero p{color:var(--muted);font-size:19px}
.eyebrow{text-transform:uppercase;letter-spacing:.15em;font:600 13px system-ui,sans-serif;color:var(--gold)!important}
.chips{margin-top:18px}
.thumb{display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;color:rgba(255,255,255,.92);font-size:56px}
.t-basics{background:linear-gradient(135deg,#3b2a6b,#8a5fc7)}.t-zodiac{background:linear-gradient(135deg,#7a2e4f,#d7835b)}
.t-planets{background:linear-gradient(135deg,#14324f,#3f8fc0)}.t-vedic{background:linear-gradient(135deg,#7a4a0e,#e0a83a)}
.t-transits{background:linear-gradient(135deg,#1d1d3f,#5a5aa8)}.t-relationships{background:linear-gradient(135deg,#8a2846,#e27a95)}
.feature{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;margin:12px 0 8px}
.feature .thumb{height:100%;font-size:90px}.feature>div:last-child{padding:24px 28px 24px 0}.feature h2{margin:.4em 0;font-size:30px}.feature p{color:var(--muted)}
.sec{font-size:28px;border-bottom:2px solid var(--line);padding-bottom:8px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(40,20,70,.1)}
.cbody{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}.cbody h3{font-size:20px;margin:10px 0 6px}.cbody p{font-size:16px;color:var(--muted);margin:0 0 12px;flex:1}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px}
.post{max-width:740px}.post.narrow{margin:0 auto}.lead{font-size:21px;color:var(--muted)}
.post ul,.post ol{padding-left:1.3em}.post li{margin:.3em 0}
.toc{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 18px;margin:20px 0;font-size:16px}.toc summary{font-weight:600;cursor:pointer}
.note{background:#fff8e8;border-left:4px solid var(--gold);padding:14px 18px;border-radius:8px;font-size:15px;margin:32px 0}
table{border-collapse:collapse;width:100%;font-size:16px;display:block;overflow-x:auto;margin:1em 0}td,th{border:1px solid var(--line);padding:8px 12px;text-align:left}th{background:#f2ecfa}
.side .box{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin-bottom:22px;font-size:15px;line-height:1.5}
.side{position:sticky;top:80px;align-self:start}.side h4{margin:0 0 10px}.side ul{list-style:none;padding:0;margin:0}.side li{padding:7px 0;border-top:1px solid var(--line)}.side li:first-child{border:0}.side a{text-decoration:none;color:var(--fg)}.side a:hover{color:var(--accent)}
.phead{text-align:center;padding:16px 0 8px}.phead p{color:var(--muted)}
.ad{margin:28px 0;text-align:center}.ad-label{display:block;font-size:11px;color:#aaa;text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px}
.ad:has(ins[data-ad-status="unfilled"]){display:none}ins.adsbygoogle[data-ad-status="unfilled"]{display:none!important}
.rel{margin-top:40px}
footer.site{background:var(--night);color:#bdb3cf;font-size:15px;padding:40px 0 20px}footer.site .logo{font-size:22px}
.cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px}footer h4{color:#fff;margin:0 0 10px}footer .cols a:not(.logo){display:block;color:#bdb3cf;text-decoration:none;padding:3px 0}footer a:hover{color:#fff}
.legal{border-top:1px solid #33294a;margin-top:28px;padding-top:16px;font-size:13px}
.cookie{position:fixed;left:12px;right:12px;bottom:12px;max-width:620px;margin:auto;background:var(--night);color:#eee;padding:12px 16px;border-radius:12px;font-size:14px;z-index:20;box-shadow:0 6px 24px rgba(0,0,0,.3)}.cookie a{color:#d7c3ff}.cookie button{margin-left:8px;background:var(--gold);border:0;border-radius:6px;padding:6px 14px;font-weight:600;cursor:pointer}
@media(max-width:960px){.layout{grid-template-columns:1fr}.side{position:static}.post{max-width:none}}
@media(max-width:760px){body{font-size:17px}h1{font-size:30px}.feature{grid-template-columns:1fr}.feature>div:last-child{padding:0 18px 20px}.feature h2{font-size:24px}
.menu{display:block}nav.main{display:none;position:absolute;top:62px;left:0;right:0;background:var(--night);padding:8px 16px 16px}body.open nav.main{display:block}nav.main a{display:block;margin:0;padding:10px 0;border-top:1px solid #33294a}
.cols{grid-template-columns:1fr 1fr}.cols>div:first-child{grid-column:1/-1}.grid{grid-template-columns:1fr}}
