/* Public Vishakha wears the homepage design. Atlas/admin layout stays independent. */
.vishakha-page { min-height:100vh; display:flex; flex-direction:column; }
.vishakha-page > .brand-header { flex-shrink:0; }
.brand-header .brand { white-space:nowrap; }
.brand-header [aria-current="page"] { text-decoration:underline; text-underline-offset:5px; }
.vishakha-page > .atlas-root {
  --atlas-green:var(--green); --atlas-line:var(--line); --atlas-muted:var(--muted);
  --mono:var(--sans);
  flex:1; max-width:1280px; padding:0 0 80px; color:var(--ink);
}
.vishakha-page > footer { margin-top:0; }
/* home.css styles semantic headers/navs; course headers and topic chips are content. */
.atlas-root header { display:block; min-height:0; position:static; z-index:auto; }
.atlas-root nav { position:static; inset:auto; display:flex; box-shadow:none; border:0; border-radius:0; background:none; }
.atlas-root .atlas-intro { padding:67px 0 56px; gap:64px; align-items:center; }
.atlas-intro > div:first-child { position:relative; max-width:760px; }
.atlas-intro > div:first-child::before {
  content:''; position:absolute; inset:-25px -18px; z-index:-1; pointer-events:none;
  background:radial-gradient(ellipse,#edf0e5ed 20%,#edf0e500 74%);
}
.atlas-intro h1 { font:400 clamp(42px,3.65vw,54px)/1.14 var(--serif); letter-spacing:-1.9px; margin:0; }
.atlas-intro h1 em { display:inline-block; margin-top:10px; color:#3e7151; }
.atlas-intro p:not(.atlas-kicker) { font-size:18px; line-height:1.7; margin-top:26px; max-width:650px; }
.atlas-root .atlas-kicker { font:600 11px/1.5 var(--sans); letter-spacing:1.8px; }
.atlas-intro .atlas-kicker { color:var(--ink); margin-bottom:26px; }
.atlas-intro .atlas-kicker::before { content:''; display:inline-block; width:7px; height:7px; background:#729b56; border-radius:50%; margin-right:9px; }
.atlas-root .atlas-rhythm { flex-shrink:0; max-width:280px; padding:24px; border:1px solid #b6c9b9; border-radius:15px; background:#f8faf3d9; box-shadow:0 24px 60px #38584212; }
.atlas-rhythm .atlas-orbit { display:none; }
.atlas-rhythm p:not(.atlas-kicker) { margin:0; font-size:16px; line-height:1.8; }
.atlas-rhythm strong { font:400 24px/1.3 var(--serif); color:var(--ink); }
.atlas-status { font-size:14px; padding:20px 0; }
.atlas-root .atlas-section-label { margin:28px 0 20px; font:600 11px/1.5 var(--sans); letter-spacing:1.6px; }
.atlas-topics { gap:22px; }
.atlas-root a.atlas-topic { padding:30px; border:1px solid #b6c9b9; border-radius:15px; background:#f8faf3e8; box-shadow:0 12px 36px #3858420a; }
.atlas-root a.atlas-topic:hover { background:#fffef6; border-color:#729b78; }
.atlas-topic-no { font:600 11px/1.5 var(--sans); letter-spacing:1.3px; color:var(--muted); opacity:1; }
.atlas-topic strong { font:400 29px/1.2 var(--serif); letter-spacing:-.5px; margin:34px 0 22px; }
.atlas-topic > span:last-of-type { display:block; padding-right:40px; font-size:14px; line-height:1.5; opacity:1; color:var(--muted); }
.atlas-topic i { display:grid; place-items:center; width:36px; height:36px; border:1px solid #a4b79e; border-radius:50%; bottom:24px; right:24px; }
.atlas-root .atlas-topic-nav { padding:12px 0 22px; margin-top:8px; gap:14px; }
.atlas-root .atlas-topic-chips > *, .atlas-root .atlas-topics-home { font-size:14px; padding:10px 15px; background:#f8faf399; }
.atlas-root .atlas-topic-chips > [aria-current="page"] { background:var(--green); border-color:var(--green); }
.atlas-root .atlas-search { background:#f8faf3c9; border-color:#b6c9b9; padding:26px; border-radius:15px; }
.atlas-root .atlas-search-box { background:#fffef6; border-color:#b6c9b9; }
.atlas-root .atlas-search-summary { font-size:14px; line-height:1.6; }
.atlas-root h2, .atlas-root .atlas-group h3, .atlas-detail h3,
.atlas-topic-count strong, .atlas-exploration-cards strong { font-family:var(--serif); color:var(--ink); }
.atlas-root .atlas-group h3 { font-size:25px; letter-spacing:-.4px; }
.atlas-group header p, .atlas-topic-count span { font-size:14px; line-height:1.7; }
.atlas-group header > span, .atlas-node-meta { font:600 11px/1.5 var(--sans); letter-spacing:.8px; }
.atlas-root .atlas-goal { background:#e4ecdfb3; padding:24px; border-left-color:#729b78; }
.atlas-root .atlas-goal p, .atlas-root .atlas-goal details { font-size:15px; }
.atlas-root .atlas-chapters { gap:12px; }
.atlas-root .atlas-chapters button { background:#f8faf399; padding:18px; border-radius:10px; font-size:15px; }
.atlas-root .atlas-chapters button[aria-pressed="true"] { background:#dce9d6; border-color:#9ab48c; }
.atlas-chapters small { font-size:11px!important; }
.atlas-map-section { background:#f8faf3; border-color:#b6c9b9; border-radius:15px; }
.atlas-map-toolbar { padding:18px 24px; font:600 11px/1.5 var(--sans); letter-spacing:1.2px; }
.atlas-workspace { grid-template-columns:minmax(0,1fr) 290px; }
.atlas-map-scroll { background-image:none; padding:24px; }
.atlas-list .atlas-nodes { grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:16px; margin-bottom:36px; }
.atlas-node { padding:17px; border-color:#c5d3c4; border-radius:10px; box-shadow:none; }
.atlas-node.selected { background:#edf3e6; border-color:var(--green); box-shadow:0 0 0 1px var(--green); }
.atlas-root .atlas-node-title { font-size:16px!important; line-height:1.5!important; color:var(--ink)!important; }
.atlas-root .atlas-node-detail { font-size:12px!important; padding-top:10px; }
.atlas-node-play { width:36px; height:36px; background:var(--green); font-size:12px; }
.atlas-detail { background:#eaf0e4; padding:28px 24px; }
.atlas-detail h3 { font-size:28px; }
.atlas-detail p, .atlas-detail li, .atlas-note { font-size:15px; line-height:1.75; }
.atlas-detail h4, .atlas-check > span { font-size:11px; }
.atlas-root .atlas-ref { font-size:14px!important; }
.atlas-source { font-size:13px; }
.atlas-launch { background:var(--green); padding:14px 18px; border-radius:7px; font-size:16px; }
.atlas-launch:hover { background:#193f2d; }
.atlas-coming { font-size:15px; }
.atlas-coming small { font-size:13px; }
.atlas-root .atlas-search-group, .atlas-static-map .atlas-group { background:#f8faf3; padding:24px; border-radius:12px; }
.atlas-static-nodes li { padding:17px; border-radius:10px; font-size:16px; }
.atlas-static-nodes li small { font-size:14px; }
.atlas-root button:focus-visible, .atlas-root a:focus-visible, .atlas-root input:focus-visible { outline:3px solid #876226; outline-offset:4px; }
@media(max-width:1120px) {
  .atlas-root .atlas-intro { gap:32px; }
  .atlas-root .atlas-rhythm { max-width:245px; }
  .atlas-root a.atlas-topic { padding:24px; }
}
@media(max-width:900px) {
  .atlas-root .atlas-rhythm { display:none; }
  .atlas-topics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .atlas-workspace { grid-template-columns:minmax(0,1fr) 245px; }
}
@media(max-width:760px) {
  .vishakha-page > .atlas-root { padding-bottom:45px; }
  .atlas-root .atlas-intro { padding:42px 0 30px; }
  .atlas-intro h1 { font-size:35px; line-height:1.18; letter-spacing:-1.3px; }
  .atlas-intro h1 em { margin-top:6px; }
  .atlas-intro p:not(.atlas-kicker) { font-size:17px; margin-top:24px; }
  .atlas-intro .atlas-kicker { font-size:10px; letter-spacing:1.4px; margin-bottom:22px; }
  .atlas-topics { grid-template-columns:1fr; gap:16px; }
  .atlas-topic strong { margin:24px 0 18px; }
  .atlas-root .atlas-search { padding:18px; }
  .atlas-root .atlas-search-box input { font-size:16px; }
  .atlas-workspace { display:block; }
  .atlas-root .atlas-topic-nav { gap:12px; flex-direction:column; align-items:center; }
  .atlas-root .atlas-topic-chips { gap:7px; width:100%; justify-content:center; }
  .atlas-root .atlas-topic-chips > * { font-size:13px; text-align:center; }
  .atlas-map-scroll, .atlas-root .atlas-search-group, .atlas-static-map .atlas-group { padding:18px; }
  .atlas-list .atlas-nodes, .atlas-root .atlas-search-group .atlas-nodes, .atlas-static-nodes { grid-template-columns:1fr; }
  .atlas-detail { padding:24px 20px; }
}
