:root {
  color-scheme:light;
  --bg-primary:#f7f8ff;
  --bg-secondary:#eef1ff;
  --surface:#ffffff;
  --surface-elevated:#ffffff;
  --surface-soft:#f2f3ff;
  --text-primary:#16164b;
  --text-secondary:#53547f;
  --text-muted:#76779c;
  --accent-primary:#e92c99;
  --accent-secondary:#7052c9;
  --accent-gold:#a96332;
  --accent-soft:#fde7f5;
  --border-soft:rgb(53 57 137 / .13);
  --border-highlight:rgb(105 83 191 / .3);
  --success:#087647;
  --warning:#8a5700;
  --danger:#a62f2a;
  --danger-soft:#fff0ef;
  --shadow-soft:0 8px 24px rgb(42 45 122 / .07);
  --shadow-card:0 16px 42px rgb(42 45 122 / .1),0 1px 2px rgb(42 45 122 / .04);
  --shadow-lift:0 26px 70px rgb(42 45 122 / .16),0 4px 14px rgb(42 45 122 / .08);
  --glow-accent:0 0 48px rgb(233 44 153 / .16);
  --radius-xs:8px;
  --radius-sm:12px;
  --radius-md:16px;
  --radius-lg:22px;
  --radius-xl:32px;
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:20px;
  --space-6:24px;
  --space-8:32px;
  --space-10:40px;
  --space-12:48px;
  --font-display:Georgia,"Times New Roman",serif;
  --font-body:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --motion-fast:140ms ease;
  --motion-normal:320ms cubic-bezier(.2,.8,.2,1);
  --motion-slow:720ms cubic-bezier(.2,.8,.2,1);
  --control-height:46px;
  --control-height-sm:38px;
  --content-gutter:clamp(14px,2.4vw,30px);
  --topbar:70px;
  --left:232px;
  --right:300px;
  --content:1280px;
  --bg:var(--bg-primary);
  --bg-soft:var(--bg-secondary);
  --surface-2:var(--surface-soft);
  --surface-raised:var(--surface-elevated);
  --surface-muted:var(--surface-soft);
  --surface-hover:var(--surface-soft);
  --text:var(--text-primary);
  --muted:var(--text-secondary);
  --faint:var(--text-muted);
  --border:var(--border-soft);
  --accent:var(--accent-primary);
  --accent-2:var(--accent-gold);
  --shadow:var(--shadow-card);
  --radius:var(--radius-lg);
  --focus-ring:color-mix(in srgb,var(--accent-primary) 24%,transparent);
  --transition:var(--motion-fast);
}


:root[data-theme=dark] {
  color-scheme:dark;
  --bg-primary:#050b18;
  --bg-secondary:#081225;
  --surface:#0b1628;
  --surface-elevated:#101e34;
  --surface-soft:#111f36;
  --text-primary:#f7f4ff;
  --text-secondary:#c0c7db;
  --text-muted:#8f99b4;
  --accent-primary:#ff3fa9;
  --accent-secondary:#8167de;
  --accent-gold:#e3b46d;
  --accent-soft:#251b3a;
  --border-soft:rgb(157 174 222 / .16);
  --border-highlight:rgb(208 177 255 / .32);
  --success:#4fca91;
  --warning:#f2b84b;
  --danger:#f0756c;
  --danger-soft:#321f22;
  --shadow-soft:0 10px 28px rgb(0 0 0 / .24);
  --shadow-card:0 18px 50px rgb(0 0 0 / .36),0 1px 0 rgb(255 255 255 / .035);
  --shadow-lift:0 30px 80px rgb(0 0 0 / .5),0 4px 18px rgb(0 0 0 / .28);
  --glow-accent:0 0 54px rgb(255 63 169 / .18)
}


* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth
}

body {
  margin:0;
  min-height:100vh;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  background:radial-gradient(circle at 20% 0,rgb(217 95 42/.13),transparent 28rem),linear-gradient(180deg,var(--bg-soft),var(--bg));
  color:var(--text)
}

a {
  color:inherit;
  text-decoration:none
}

img {
  max-width:100%;
  display:block
}

button,input,select,textarea {
  font:inherit
}

:focus-visible {
  outline:3px solid color-mix(in srgb,var(--accent) 35%,transparent);
  outline-offset:2px
}

.app-topbar {
  position:sticky;
  top:0;
  z-index:50;
  height:var(--topbar);
  display:flex;
  align-items:center;
  gap:var(--space-4);
  padding:0 max(18px,calc((100vw - 1500px)/2));
  background:color-mix(in srgb,var(--surface) 88%,transparent);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border-soft)
}

.brand {
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:850;
  letter-spacing:-.03em;
  white-space:nowrap
}

.brand-mark {
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:12px;
  background:var(--accent);
  color:#fff;
  font-size:.78rem;
  box-shadow:var(--shadow-soft)
}

.search-box {
  flex:1;
  max-width:620px;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:10px;
  height:42px;
  padding:0 14px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface-2);
  color:var(--muted)
}

.search-box input {
  width:100%;
  border:0;
  outline:0;
  background:transparent;
  color:var(--text)
}

.top-actions {
  display:flex;
  align-items:center;
  gap:10px
}

.button,.icon-button,.theme-toggle {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid transparent;
  border-radius:999px;
  font-weight:800;
  transition:background var(--transition),border-color var(--transition),transform var(--transition),color var(--transition);
  cursor:pointer
}

.button {
  min-height:42px;
  padding:0 18px
}

.button-primary {
  background:var(--accent);
  color:#fff;
  box-shadow:0 12px 24px color-mix(in srgb,var(--accent) 28%,transparent)
}

.button-primary:hover {
  transform:translateY(-1px)
}

.button-secondary,.button-ghost {
  border-color:var(--border);
  background:var(--surface);
  color:var(--text)
}

.button-ghost {
  min-height:38px
}

.icon-button,.theme-toggle {
  width:40px;
  height:40px;
  background:var(--surface);
  border-color:var(--border);
  color:var(--muted)
}

.app-shell {
  width:min(1500px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:var(--left) minmax(0,var(--content)) var(--right);
  gap:24px;
  padding:24px 18px 72px
}

.left-sidebar,.right-rail {
  position:sticky;
  top:calc(var(--topbar) + 18px);
  align-self:start
}

.left-sidebar {
  height:calc(100vh - var(--topbar) - 36px);
  overflow:auto;
  padding-right:8px
}

.sidebar-section {
  padding:10px 0 16px;
  border-bottom:1px solid var(--border-soft)
}

.sidebar-label,.eyebrow {
  margin:0 0 10px;
  color:var(--faint);
  font-size:.75rem;
  font-weight:850;
  letter-spacing:.12em;
  text-transform:uppercase
}

.sidebar-link {
  display:flex;
  align-items:center;
  gap:10px;
  min-height:40px;
  padding:0 12px;
  border-radius:12px;
  color:var(--muted);
  font-weight:750
}

.sidebar-link:hover,.sidebar-link.is-active {
  background:var(--surface);
  color:var(--text);
  box-shadow:var(--shadow-soft)
}

.sidebar-subheading {
  display:block;
  margin:12px 0 4px;
  padding:0 12px;
  color:var(--faint);
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.04em
}

.sidebar-link-nested {
  min-height:34px;
  padding-left:18px;
  font-size:.92rem
}

.sidebar-card,.rail-widget,.card,.empty-state {
  border:1px solid var(--border);
  background:color-mix(in srgb,var(--surface) 92%,transparent);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-soft)
}

.sidebar-card {
  margin-top:16px;
  padding:16px
}

.sidebar-card p {
  margin:8px 0 0;
  color:var(--muted);
  line-height:1.5;
  font-size:.92rem
}

.content-column {
  min-width:0
}

.right-rail {
  display:grid;
  gap:16px
}

.rail-widget {
  padding:16px
}

.widget-head,.section-head,.meta-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px
}

.widget-head h2 {
  margin:0;
  font-size:1rem
}

.widget-head a,.text-link,.section-head a {
  color:var(--accent);
  font-weight:850
}

.compact-list,.rail-news,.stack-list {
  display:grid;
  gap:10px
}

.compact-list a,.list-card {
  display:flex;
  gap:12px;
  padding:12px;
  border-radius:14px;
  background:var(--surface-2);
  border:1px solid var(--border-soft)
}

.compact-list a {
  display:grid
}

.compact-list span,.list-card small,time,.muted {
  color:var(--muted)
}

.rail-news article {
  position:relative;
  padding:0 0 12px;
  border-bottom:1px solid var(--border-soft)
}

.rail-news__item{color:inherit;border-radius:10px;transition:color .18s ease,background .18s ease}.rail-news__item article{padding:8px 28px 12px 8px}.rail-news__item article>span{position:absolute;right:8px;top:50%;color:var(--accent-primary);font-size:.82rem;transform:translateY(-65%);transition:transform .18s ease}.rail-news__item:hover,.rail-news__item:focus-visible{color:var(--accent-primary);background:color-mix(in srgb,var(--accent-primary) 7%,transparent);outline:none}.rail-news__item:hover article>span,.rail-news__item:focus-visible article>span{transform:translate(3px,-65%)}

.rail-news h3 {
  margin:4px 0 0;
  font-size:.95rem
}

.hero-card {
  display:grid;
  grid-template-columns:minmax(0,1fr) 280px;
  gap:24px;
  padding:28px;
  border:1px solid var(--border);
  border-radius:var(--radius-xl);
  background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 95%,transparent),color-mix(in srgb,var(--accent-soft) 55%,var(--surface)));
  box-shadow:var(--shadow)
}

h1 {
  margin:0;
  font-size:clamp(2.1rem,5vw,4.4rem);
  line-height:1;
  letter-spacing:-.06em
}

h2 {
  margin:0;
  font-size:clamp(1.35rem,3vw,2rem);
  letter-spacing:-.04em
}

h3 {
  margin:0;
  letter-spacing:-.02em
}

.lead,.hero-text {
  color:var(--muted);
  font-size:1.05rem;
  line-height:1.7
}

.hero-actions,.badge-row,.chip-row {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px
}

.hero-feature {
  display:grid;
  align-content:center;
  gap:10px;
  padding:20px;
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  background:var(--surface)
}

.feature-icon {
  font-size:3rem
}

.hero-feature p,.hero-feature h2 {
  margin:0
}

.hero-feature>span:not(.feature-icon) {
  color:var(--muted)
}

.section-block,.page-heading {
  margin-top:24px
}

.section-block {
  padding:22px;
  border:1px solid var(--border);
  border-radius:var(--radius-xl);
  background:color-mix(in srgb,var(--surface) 80%,transparent)
}

.section-block.compact {
  margin-top:0
}

.section-head {
  margin-bottom:18px
}

.game-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px
}

.catalog-grid {
  grid-template-columns:repeat(2,minmax(0,1fr))
}

.game-card {
  position:relative;
  overflow:hidden;
  transition:transform var(--transition),border-color var(--transition),box-shadow var(--transition)
}

.game-card:hover {
  transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--accent) 45%,var(--border));
  box-shadow:var(--shadow)
}

.card-link {
  position:absolute;
  inset:0;
  z-index:1
}

.app-card .card-body {
  position:relative;
  z-index:2;
}

.app-card .button {
  position:relative;
  z-index:3;
}

.game-cover,.fun-thumb,.post-media,.game-frame-placeholder {
  display:grid;
  place-items:center;
  border-radius:18px;
  background:linear-gradient(135deg,var(--surface-2),var(--accent-soft));
  border:1px solid var(--border-soft);
  color:var(--accent);
  font-size:2.8rem;
  overflow:hidden
}

.game-cover {
  height:150px;
  margin:12px
}

.game-cover img,.fun-thumb img,.post-media img {
  width:100%;
  height:100%;
  object-fit:cover
}

.card-body {
  position:relative;
  z-index:2;
  display:grid;
  gap:12px;
  padding:4px 16px 18px
}

.card-body p,.fun-card p,.news-card p,.instruction-box p {
  margin:0;
  color:var(--muted);
  line-height:1.55
}

.chip,.badge {
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid var(--border);
  background:var(--surface-2);
  color:var(--muted);
  font-size:.82rem;
  font-weight:800
}

.chip.is-active,.badge.accent {
  background:var(--accent-soft);
  color:var(--accent);
  border-color:color-mix(in srgb,var(--accent) 30%,var(--border))
}

.two-column-section {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:18px;
  margin-top:24px
}

.fun-feed,.news-list {
  display:grid;
  gap:14px
}

.fun-card a {
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:16px;
  padding:14px
}

.compact-feed .fun-card a {
  grid-template-columns:82px 1fr;
  padding:10px
}

.fun-thumb {
  min-height:112px;
  font-size:2rem
}

.compact-feed .fun-thumb {
  min-height:74px
}

.fun-card h2,.fun-card h3 {
  margin:0 0 8px
}

.news-card {
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:14px;
  padding:16px
}

.news-icon {
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:16px;
  background:var(--accent-soft)
}

.empty-state {
  display:grid;
  place-items:center;
  text-align:center;
  gap:8px;
  padding:34px;
  color:var(--muted)
}

.empty-state span {
  font-size:2rem
}

.empty-state h2,.empty-state h3,.empty-state p {
  margin:0
}

.empty-state.small {
  padding:18px
}

.not-found {
  min-height:420px
}

.game-detail {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,48%);
  gap:24px;
  padding:24px
}

.back-link {
  display:inline-flex;
  margin-bottom:18px;
  color:var(--muted);
  font-weight:800
}

.instruction-box {
  margin:22px 0;
  padding:18px;
  border:1px solid var(--border-soft);
  border-radius:18px;
  background:var(--surface-2)
}

.instruction-box h2 {
  font-size:1.1rem;
  margin-bottom:8px
}

.game-stage {
  min-width:0
}

.game-frame-placeholder {
  height:300px;
  min-height:0;
  padding:14px;
  position:relative
}

.game-frame-placeholder>span {
  font-size:4rem
}

.game-frame {
  position:absolute;
  inset:14px;
  width:calc(100% - 28px);
  height:calc(100% - 28px);
  min-height:0;
  max-height:none;
  border:0;
  border-radius:16px;
  background:#fff
}

.post-detail {
  padding:24px
}

.post-media {
  min-height:380px;
  margin:22px 0;
  font-size:5rem
}

.alert {
  margin:16px 0;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid var(--border);
  font-weight:750
}

.alert-error {
  background:color-mix(in srgb,var(--danger) 12%,var(--surface));
  color:var(--danger);
  border-color:color-mix(in srgb,var(--danger) 35%,var(--border))
}

.alert-warning {
  background:color-mix(in srgb,var(--warning) 12%,var(--surface));
  color:var(--warning)
}

.auth-layout {
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px
}

.auth-card {
  width:min(480px,100%);
  padding:32px
}

.auth-card h1 {
  font-size:clamp(2rem,8vw,3.6rem)
}

.login-form {
  display:grid;
  gap:16px;
  margin-top:24px
}

label {
  display:grid;
  gap:8px;
  font-weight:800
}

input,textarea,select {
  width:100%;
  min-height:46px;
  border:1px solid var(--border);
  border-radius:14px;
  padding:0 14px;
  background:var(--surface);
  color:var(--text)
}

textarea {
  padding:12px;
  min-height:110px
}

.mobile-menu-button {
  display:none
}

.drawer-backdrop {
  display:none
}

.admin-shell {
  width:min(1120px,calc(100% - 32px));
  margin:0 auto;
  padding:36px 0 72px
}

.admin-header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:36px
}

.admin-header h1 {
  font-size:clamp(2.5rem,8vw,5.4rem)
}

.admin-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px
}

.table-wrap {
  overflow-x:auto
}

.admin-table {
  width:100%;
  border-collapse:collapse;
  background:var(--surface);
  border-radius:18px;
  overflow:hidden
}

.admin-table th,.admin-table td {
  padding:.75rem;
  border-bottom:1px solid var(--border-soft);
  text-align:left;
  vertical-align:top
}


@media (max-width:1180px) {
  .app-shell {
    grid-template-columns:220px minmax(0,1fr)
  }
.right-rail {
    grid-column:2;
    position:static;
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
.game-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}

@media (max-width:860px) {
  .mobile-menu-button {
    display:inline-flex
  }
.search-box {
    max-width:none
  }
.app-shell {
    display:block;
    padding:18px 14px 56px
  }
.left-sidebar {
    position:fixed;
    z-index:70;
    top:var(--topbar);
    left:0;
    bottom:0;
    width:min(82vw,310px);
    height:auto;
    padding:16px;
    background:var(--bg);
    border-right:1px solid var(--border);
    transform:translateX(-105%);
    transition:transform var(--transition)
  }
.drawer-open .left-sidebar {
    transform:translateX(0)
  }
.drawer-backdrop {
    position:fixed;
    inset:var(--topbar) 0 0;
    background:rgb(0 0 0/.42);
    z-index:60
  }
.drawer-open .drawer-backdrop {
    display:block
  }
.right-rail {
    display:grid;
    grid-template-columns:1fr;
    margin-top:18px
  }
.hero-card,.game-detail,.two-column-section {
    grid-template-columns:1fr
  }
.catalog-grid {
    grid-template-columns:1fr
  }
.game-frame-placeholder {
    min-height:0
  }
.post-media {
    min-height:280px
  }
.admin-header,.topbar {
    flex-direction:column
  }
.admin-grid {
    grid-template-columns:1fr
  }
}


@media (max-width:620px) {
  .app-topbar {
    gap:8px;
    padding:0 10px
  }
.brand span:last-child {
    display:none
  }
.search-box {
    height:38px;
    font-size:.9rem
  }
.top-actions {
    gap:6px
  }
.theme-toggle,.icon-button {
    width:36px;
    height:36px
  }
.hero-card,.section-block,.game-detail,.post-detail {
    padding:18px;
    border-radius:22px
  }
.game-grid {
    grid-template-columns:1fr
  }
.fun-card a,.news-card {
    grid-template-columns:1fr
  }
.fun-thumb {
    min-height:160px
  }
h1 {
    font-size:clamp(2rem,12vw,3rem)
  }
}



.article-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px
}

.article-card {
  position:relative;
  overflow:hidden
}

.article-cover {
  display:grid;
  place-items:center;
  min-height:160px;
  margin:12px;
  border:1px solid var(--border-soft);
  border-radius:18px;
  background:linear-gradient(135deg,var(--surface-2),var(--accent-soft));
  color:var(--accent);
  font-size:2.4rem;
  overflow:hidden
}

.article-cover img {
  width:100%;
  height:100%;
  object-fit:cover
}

.article-content {
  color:var(--text);
  line-height:1.75;
  font-size:1.04rem
}

.article-content p {
  margin:0 0 1rem
}

.comments-panel {
  margin-top:18px;
  padding:20px
}

.comment-author,.comment-actions,.reply-target {
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--muted);
  font-size:.94rem
}

.comment-form {
  display:grid;
  gap:10px;
  margin:14px 0 8px
}

.comment-form textarea {
  min-height:86px;
  resize:vertical
}

.comment-rename-form {
  display:flex;
  align-items:flex-end;
  flex-wrap:wrap;
  gap:10px;
  width:min(100%,520px)
}

.comment-rename-form label {
  display:grid;
  flex:1 1 220px;
  gap:5px;
  color:var(--text);
  font-weight:700
}

.comment-rename-form input {
  width:100%
}

.comment-rename-actions {
  display:flex;
  gap:8px
}

.hp-field {
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px
}

.comments-list {
  display:grid
}

.comment-row {
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:10px;
  padding:14px 0;
  border-bottom:1px solid var(--border-soft)
}

.comment-row:hover {
  background:color-mix(in srgb,var(--surface-2) 55%,transparent)
}

.comment-row.is-highlighted {
  background:var(--accent-soft)
}

.comment-avatar {
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:50%;
  background:var(--surface-2);
  border:1px solid var(--border);
  color:var(--accent);
  font-weight:850
}

.comment-meta {
  color:var(--muted);
  font-size:.86rem
}

.comment-author-with-badge { display:inline-flex; align-items:center; gap:.35rem; white-space:nowrap }
.comment-author-badge {
  display:inline-flex; align-items:center; justify-content:center;
  width:1.35rem; height:1.35rem; box-sizing:border-box; flex:0 0 1.35rem;
  border:1px solid var(--comment-badge-border); border-radius:50%;
  background:var(--comment-badge-background); color:#111827;
  font-size:.7rem; font-weight:850; line-height:1
}

.comment-toast-host {
  position:fixed;
  z-index:1200;
  left:50%;
  bottom:max(20px,env(safe-area-inset-bottom));
  width:min(92vw,560px);
  transform:translateX(-50%);
  pointer-events:none
}

.comment-toast {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  border:1px solid var(--border);
  border-radius:var(--radius);
  background:var(--surface);
  color:var(--text);
  box-shadow:var(--shadow-lg,var(--shadow));
  font-weight:700;
  pointer-events:auto
}

.comment-toast-error { border-color:color-mix(in srgb,var(--danger) 45%,var(--border)); background:color-mix(in srgb,var(--danger) 12%,var(--surface)); }
.comment-toast-success { border-color:color-mix(in srgb,var(--success) 45%,var(--border)); background:color-mix(in srgb,var(--success) 12%,var(--surface)); }
.comment-toast-close { flex:0 0 auto; width:28px; height:28px; padding:0; border:0; border-radius:50%; background:transparent; color:inherit; font:inherit; font-size:22px; line-height:1; cursor:pointer; }
.comment-toast-close:hover,.comment-toast-close:focus-visible { background:var(--surface-2); outline:2px solid var(--accent); outline-offset:1px; }

.comment-row p {
  margin:.45rem 0;
  line-height:1.55;
  white-space:pre-wrap
}

.comment-action,.comment-reply-ref {
  border:0;
  background:transparent;
  color:var(--muted);
  padding:0;
  font-weight:800;
  cursor:pointer
}

.comment-identity-options {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px 9px;
  min-width:0;
  margin:0;
  padding:0;
  border:0
}

.comment-identity-options legend {
  float:left;
  width:auto;
  margin:0 3px 0 0;
  padding:0;
  color:var(--muted);
  font-size:.86rem;
  font-weight:750
}

.comment-identity-option {
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  padding:6px 11px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface-2);
  color:var(--text);
  font-size:.86rem;
  font-weight:750;
  cursor:pointer
}

.comment-identity-option:hover { border-color:color-mix(in srgb,var(--accent) 38%,var(--border)); background:var(--accent-soft) }
.comment-identity-option:has(input:checked) { border-color:color-mix(in srgb,var(--accent) 65%,var(--border)); background:var(--accent-soft); color:var(--accent) }
.comment-identity-option:has(input:focus-visible) { outline:3px solid var(--focus-ring); outline-offset:2px }

.comment-action-row { display:flex; align-items:center; flex-wrap:wrap; gap:5px; margin-top:2px }
.comment-action-row .comment-action { min-height:34px; padding:5px 9px; border-radius:9px }
.comment-action--icon { display:inline-flex; align-items:center; justify-content:center; gap:5px; min-width:34px }
.comment-action--icon svg { width:17px; height:17px; flex:0 0 17px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round }
.comment-action--icon[aria-pressed="true"] { background:var(--accent-soft); color:var(--accent) }
.comment-action--icon:hover { background:var(--surface-2) }
.comment-action--icon:focus-visible { outline:3px solid var(--focus-ring); outline-offset:1px }
.comment-action--icon[aria-busy="true"],.comment-action--icon:disabled { opacity:.58; cursor:wait }
.comment-action__count { min-width:1ch; font-variant-numeric:tabular-nums }

.comments-sentinel { min-height:32px; padding:8px; color:var(--muted); text-align:center; font-size:.86rem }

@media (max-width:520px) {
  .comment-identity-options legend { flex-basis:100%; float:none }
  .comment-identity-option { min-width:0; padding-inline:10px }
}

.comment-action:hover,.comment-reply-ref:hover {
  color:var(--accent)
}

.comment-reply-ref {
  display:inline-flex;
  margin-top:6px;
  font-size:.86rem
}

.comment-reply-prefix {
  color:var(--accent-2);
  font-weight:700
}

@media (max-width:860px) {
  .article-grid {
    grid-template-columns:1fr
  }
}

.auth-area { position:relative; display:flex; align-items:center; }
.auth-menu { position:relative; }
.auth-dropdown {
  position:absolute;
  right:0;
  top:calc(100% + 8px);
  z-index:90;
  display:grid;
  min-width:190px;
  padding:8px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:16px;
  box-shadow:var(--shadow);
}
.auth-dropdown a,.auth-dropdown button {
  display:flex;
  width:100%;
  align-items:center;
  min-height:36px;
  padding:8px 10px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--text);
  font:inherit;
  font-weight:750;
  text-align:left;
  text-decoration:none;
  cursor:pointer;
}
.auth-dropdown a:hover,.auth-dropdown button:hover { background:var(--surface-2); color:var(--accent); }
.auth-dropdown .auth-logout-status {
  max-width:240px;
  margin:6px 4px 2px;
  color:var(--danger,#b42318);
  font-size:.78rem;
  line-height:1.35;
}
.auth-dropdown .auth-logout-status[hidden] { display:none; }
.auth-modal[hidden] { display:none; }
.auth-modal { position:fixed; inset:0; z-index:120; display:grid; place-items:center; padding:20px; }
.auth-modal-backdrop { position:absolute; inset:0; background:rgb(0 0 0/.52); }
.auth-modal-card {
  position:relative;
  z-index:1;
  width:min(440px,100%);
  padding:24px;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:24px;
  box-shadow:var(--shadow);
}
.auth-modal-card h2 { margin:0 0 8px; font-size:1.8rem; letter-spacing:-.03em; }
.auth-modal-close { position:absolute; right:14px; top:14px; }
.modal-open { overflow:hidden; }
.auth-user { max-width:220px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
@media (max-width:620px) {
  .auth-user { max-width:118px; }
  .auth-modal-card { padding:20px; border-radius:20px; }
}
.breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0 0 14px; color:var(--muted); font-size:.9rem; }
.breadcrumbs a { color:var(--muted); text-decoration:none; font-weight:750; }
.breadcrumbs a:hover { color:var(--accent); }

/* Vedmali cinematic surfaces. */
body {
  background:
    radial-gradient(circle at 15% 10%, rgba(185, 150, 255, 0.24), transparent 32rem),
    radial-gradient(circle at 88% 2%, rgba(217, 164, 65, 0.16), transparent 26rem),
    linear-gradient(180deg, var(--bg), var(--bg));
}
.brand-mark { background: linear-gradient(135deg, #7b3ff2, #d9a441); color: #fff; }
.magic-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: 1.25rem;
  padding: clamp(1.4rem, 4vw, 2.6rem);
  border: 1px solid var(--border);
  border-radius: calc(var(--radius) + 10px);
  background:
    linear-gradient(135deg, rgba(123, 63, 242, .14), rgba(217, 164, 65, .10)),
    var(--surface);
  box-shadow: var(--shadow);
}
.magic-hero::before { content: "✦  ·  ☾  ·  ✧  ·  ☽"; position: absolute; top: 1rem; right: 1.2rem; color: var(--accent-2); opacity: .55; letter-spacing: .5rem; }
.magic-hero h1 { max-width: 100%; font-size: clamp(var(--magic-title-min, 2.1rem), var(--magic-title-fluid, 6vw), var(--magic-title-max, 4.2rem)); line-height: .98; overflow-wrap: anywhere; hyphens: auto; }
.magic-hero-copy { position: relative; z-index: 1; min-width: 0; max-width: 100%; container-type: inline-size; }
.magic-oracle-card, .tarot-stage {
  min-height: 320px;
  border-radius: 30px;
  border: 1px solid rgba(217, 164, 65, .32);
  background: radial-gradient(circle at 50% 20%, rgba(240,198,109,.22), transparent 42%), linear-gradient(160deg, #2b1745, #130c21 70%);
  color: #fff8e8;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 22px 60px rgba(60, 28, 90, .24);
}
.ritual-grid, .tarot-meaning-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.ritual-card {
  display: block;
  min-height: 170px;
  padding: 1.1rem;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(123,63,242,.06)), var(--surface);
  color: var(--text);
  text-decoration: none;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.ritual-card:hover, .ritual-card:focus-visible { transform: translateY(-3px); border-color: rgba(123,63,242,.45); box-shadow: var(--shadow); outline: none; }
.ritual-card > span { display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: 999px; background: var(--surface-hover); margin-bottom: .8rem; }
.ritual-card h3 { margin: 0 0 .45rem; font-size: 1.12rem; }
.ritual-card p { margin: 0; color: var(--text-muted); }
.ritual-card.is-primary { border-color: rgba(217,164,65,.55); }
.tarot-stage { display: grid; place-items: center; perspective: 1200px; }
.tarot-flip-card { width: min(230px, 70vw); aspect-ratio: 2 / 3.2; position: relative; transform-style: preserve-3d; transition: transform .8s cubic-bezier(.2,.7,.15,1); }
.tarot-face { position: absolute; inset: 0; display: grid; place-items: center; text-align: center; padding: 1.4rem; backface-visibility: hidden; border-radius: 24px; border: 1px solid rgba(240,198,109,.5); box-shadow: 0 18px 50px rgba(0,0,0,.28); }
.tarot-back { background: radial-gradient(circle, rgba(240,198,109,.22), transparent 48%), linear-gradient(150deg, #4a2369, #161026); }
.tarot-front { transform: rotateY(180deg); background: radial-gradient(circle at 50% 38%, rgba(255,255,255,.16), transparent 35%), linear-gradient(160deg, #f7ead2, #d9c0ff); color: #27152f; }
.moon-mark, .tarot-symbol { font-size: 4rem; color: var(--accent-2); text-shadow: 0 0 20px rgba(240,198,109,.55); }
[data-tarot-card].is-revealed .tarot-flip-card { transform: rotateY(180deg); }
.tarot-result { scroll-margin-top: 6rem; }
.tarot-disclaimer { padding: 1rem; border-radius: var(--radius); background: var(--surface-hover); color: var(--text-muted); }
@media (max-width: 900px) {
  .magic-hero { grid-template-columns: 1fr; }
  .ritual-grid, .tarot-meaning-grid { grid-template-columns: 1fr; }
}
.auth-tabs { display:flex; gap:8px; padding:4px; margin:14px 0; border:1px solid var(--border); border-radius:999px; background:var(--surface-hover); }
.auth-tab { flex:1; border:0; border-radius:999px; padding:10px 12px; background:transparent; color:var(--text-muted); font-weight:800; cursor:pointer; }
.auth-tab.is-active { background:var(--surface); color:var(--text); box-shadow:var(--shadow); }
.auth-tab:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.zip-app-host,
.magic-widget-container,
.magic-widget-column,
.magic-widget-page,
.game-stage {
  min-width:0;
  max-width:100%;
}

iframe[data-zip-app-frame] {
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  height:300px;
  border:0;
  border-radius:0;
  background:var(--surface);
  overflow:hidden;
}

.zip-frame-shell {
  position:relative;
  width:100%;
  max-width:100%;
  min-width:0;
  border:1px solid var(--border);
  border-radius:24px;
  background:var(--surface);
  box-shadow:var(--shadow-card,var(--shadow-soft));
  overflow:hidden;
  overflow:clip;
  isolation:isolate;
}

/* Auth visibility must beat component display rules, otherwise hidden dropdown/forms remain visible. */
.auth-dropdown[hidden],
[data-auth-panel][hidden],
.login-form[hidden] {
  display: none !important;
}

.magic-widget-page .lead {
  max-width: 760px;
}

.magic-widget-frame {
  display: block;
  width: 100%;
  min-height:0;
  max-height:none;
  border:0;
  border-radius:0;
  background:var(--surface);
  box-shadow:none;
}

.magic-widget-page.is-instant-launch {
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}

.magic-result-host{margin-top:20px}.result-document{display:grid;gap:18px;padding:clamp(18px,3vw,32px);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.result-document h1,.result-document h2,.result-document h3{margin:0}.result-text{white-space:pre-wrap;line-height:1.75}.result-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:0}.result-facts div{padding:14px;border-radius:14px;background:var(--surface-2)}.result-facts dt{font-size:12px;color:var(--muted);font-weight:800;text-transform:uppercase}.result-facts dd{margin:6px 0 0;font-weight:800}.result-document blockquote{margin:0;padding:16px 18px;border-inline-start:4px solid var(--accent);background:var(--surface-2);border-radius:10px}.result-history-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.result-history-card{display:grid;gap:12px}.result-filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:20px}.result-filters label{display:grid;gap:6px;min-width:190px}@media(max-width:640px){.result-filters{display:grid}.result-filters label{min-width:0}.result-document{padding:18px}.result-history-grid{grid-template-columns:1fr}}

@media (max-width: 720px) {
  .magic-widget-frame {
    min-height:0;
    border-radius:0;
  }
}

.application-landing-intro{padding:clamp(18px,3vw,30px);margin-bottom:18px;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(135deg,var(--surface),var(--surface-2))}.application-breadcrumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:20px 0;color:var(--muted);font-size:.9rem}.application-breadcrumbs a{color:inherit}.application-breadcrumbs a[aria-current="page"]{color:var(--text);font-weight:700}.application-benefits,.application-social-proof,.application-related{margin:clamp(22px,4vw,42px) 0;padding:clamp(18px,3vw,28px);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.application-benefits{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:24px;align-items:start}.application-benefits ul{margin:0;display:grid;gap:12px;padding-left:22px}.application-social-proof-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px}.application-proof-card{display:grid;gap:10px;min-width:0;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface-2)}.application-proof-card p{margin:0;line-height:1.6}.application-proof-card small{color:var(--muted)}.application-proof-meta{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.application-proof-meta time{color:var(--muted);font-size:.82rem;white-space:nowrap}.application-related-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px}.application-related-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;padding:16px;border:1px solid var(--border);border-radius:18px;background:var(--surface-2);color:var(--text)}.application-related-card>span{font-size:1.6rem}.application-related-card div{display:grid;gap:5px;min-width:0}.application-related-card small{color:var(--muted);line-height:1.35}.magic-widget-page.is-instant-launch .application-landing-intro{margin-inline:0}

@media (max-width:640px){.application-benefits{grid-template-columns:1fr}.application-proof-meta{align-items:flex-start;flex-direction:column;gap:4px}.application-related-grid{grid-template-columns:1fr}.application-social-proof,.application-benefits,.application-related{padding:16px}}

.hero-feature.is-embed {
  position: relative;
  padding: 0;
  overflow: hidden;
  height:300px;
  min-height:0;
}

.magic-widget-home-frame {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  border: 0;
  border-radius: inherit;
  background:var(--surface);
}

.magic-oracle-card.is-image { position:relative; padding:0; overflow:hidden; }
.magic-widget-home-image { position:absolute; inset:0; display:block; }
.magic-widget-home-image img { display:block; width:100%; height:100%; object-fit:cover; }
.magic-oracle-card.is-video { position:relative; padding:0; overflow:hidden; }
.magic-oracle-card.is-video .decorative-video-frame { position:absolute; inset:0; width:100%; height:100%; pointer-events:auto; }
.magic-oracle-card.is-video .decorative-video { width:100%; height:100%; }

.magic-hero.is-widget-full {
  position: relative;
  height:300px;
  min-height:0;
  padding: 0;
  overflow: hidden;
}

.magic-widget-full-frame {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  border: 0;
  border-radius: inherit;
  background:var(--surface);
}

.magic-hero:not(.is-widget-full) {
  grid-template-columns: minmax(0, var(--magic-copy, 62fr)) minmax(260px, var(--magic-widget, 38fr));
}

@container (max-width: 420px) {
  .magic-hero h1 {
    font-size: clamp(1.45rem, 15cqw, var(--magic-title-max, 3rem));
    line-height: 1.02;
  }
  .magic-hero .lead {
    font-size: clamp(.88rem, 4.8cqw, 1.02rem);
    line-height: 1.55;
  }
}
@container (max-width: 320px) {
  .magic-hero h1 {
    font-size: clamp(1.25rem, 17cqw, 2.35rem);
  }
}

.magic-hero-rich {
  display: grid;
  gap: .65rem;
}
.magic-hero-rich p,
.magic-hero-rich small {
  margin: 0;
}
.magic-bb-accent {
  color: var(--accent-2);
  font-weight: 900;
  text-shadow: 0 0 20px rgba(240,198,109,.24);
}
.macro-help-list {
  margin: .7rem 0 0;
  padding-left: 1.1rem;
  color: var(--muted);
}
.macro-help-list li {
  margin: .35rem 0;
}
@media (max-width: 900px) {
  .magic-hero:not(.is-widget-full) { grid-template-columns: 1fr; }
}
.decorative-video-frame{position:relative;overflow:hidden;aspect-ratio:16/9;background:var(--surface-2);border-radius:18px;max-width:100%}.decorative-video{width:100%;height:100%;display:block;object-fit:cover;object-position:center;border:0;background:transparent;pointer-events:none}.decorative-video-frame.is-paused:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(0,0,0,.04))}@media (prefers-reduced-motion:reduce){.decorative-video{visibility:hidden}.decorative-video-frame{background:var(--surface-2)}}
.game-detail{grid-template-columns:1fr}.game-detail-info{order:2}.game-stage{order:1;width:100%;min-width:0}.game-stage.is-running{order:0}.game-stage.is-running+.game-detail-info{margin-top:12px}.game-stage.is-running .game-frame-placeholder{height:300px;padding:0}.game-stage.is-running .game-frame-placeholder>span{display:none}.game-stage.is-running .game-frame{position:relative;inset:auto;width:100%;height:300px;border-radius:0}.game-detail.is-game-running .game-detail-info{display:none}.game-detail.is-game-running{padding:16px}.game-detail.is-game-running .game-stage{order:0}.game-detail.is-game-running .game-frame-placeholder{min-height:0}


.game-detail.is-game-running {
  display:block;
  grid-template-columns:minmax(0, 1fr);
  padding:16px;
}
.game-detail.is-game-running .game-detail-info,
.game-detail.is-game-running .game-detail-info[hidden] {
  display:none !important;
}
.game-detail.is-game-running .game-stage {
  width:100%;
  max-width:100%;
  min-width:0;
}
.game-detail.is-game-running .game-frame-placeholder {
  height:auto;
  min-height:0;
  padding:0;
  background:var(--surface);
  overflow:hidden;
  overflow:clip;
}
.game-detail.is-game-running .game-frame-placeholder>span {
  display:none;
}
.game-detail.is-game-running .game-frame {
  position:relative;
  inset:auto;
  display:block;
  width:100%;
  min-height:0;
  border-radius:0;
  background:var(--surface);
}

.app-stats {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  color: var(--muted);
  font-size: .86rem;
  margin: .6rem 0;
}
.rating-stars {
  display: inline-flex;
  gap: .15rem;
  position: relative;
  z-index: 2;
}
.rating-stars button {
  border: 0;
  background: transparent;
  color: #f4b400;
  cursor: pointer;
  font-size: 1.25rem;
  line-height: 1;
  padding: .1rem;
}

.catalog-heading {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px 18px;
  align-items:end;
  margin-top:10px;
  padding:18px 20px;
  border:1px solid var(--border);
  border-radius:var(--radius-xl);
  background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 92%,transparent),color-mix(in srgb,var(--accent-soft) 36%,transparent));
  box-shadow:var(--shadow-soft)
}

.catalog-heading-main h1 {
  margin:.15em 0 .08em;
  font-size:clamp(2.4rem,6vw,4.4rem);
  line-height:.95
}

.catalog-heading-main .lead {
  max-width:62ch;
  margin:0;
  font-size:1rem;
  line-height:1.55
}

.catalog-summary {
  display:grid;
  min-width:118px;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:18px;
  background:var(--surface);
  text-align:center
}

.catalog-summary span {
  color:var(--accent);
  font-size:2rem;
  font-weight:900;
  line-height:1
}

.catalog-summary small {
  color:var(--muted);
  font-weight:800
}

.catalog-filters {
  grid-column:1/-1;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding-top:4px
}

.catalog-filters .chip {
  min-height:34px;
  padding:0 14px;
  background:color-mix(in srgb,var(--surface) 88%,transparent);
  box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--border) 80%,transparent)
}

.catalog-filters .chip.is-active {
  background:var(--accent);
  color:white;
  border-color:var(--accent);
  box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 22%,transparent)
}

.catalog-grid {
  gap:14px;
  margin-top:14px
}

.catalog-grid .app-card {
  display:grid;
  grid-template-columns:116px minmax(0,1fr);
  gap:0;
  min-height:0;
  padding:10px
}

.catalog-grid .game-cover {
  width:104px;
  height:104px;
  margin:0;
  border-radius:16px;
  font-size:2.25rem
}

.catalog-grid .card-body {
  gap:8px;
  padding:0 4px 0 12px
}

.catalog-grid .card-body h2 {
  margin:0;
  font-size:clamp(1.35rem,2.3vw,1.9rem);
  line-height:1.05
}

.catalog-grid .card-body p {
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden
}

.catalog-grid .meta-row {
  gap:6px
}

.catalog-grid .chip,.catalog-grid .badge {
  min-height:24px;
  padding:0 8px;
  font-size:.76rem
}

.catalog-grid .app-stats {
  margin:0;
  gap:6px;
  font-size:.78rem
}

.catalog-grid .app-stats span {
  padding:2px 7px;
  border:1px solid var(--border-soft);
  border-radius:999px;
  background:color-mix(in srgb,var(--surface-2) 78%,transparent)
}

.app-card-footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:2px
}

.app-card-footer .button {
  min-height:34px;
  padding:0 14px;
  white-space:nowrap
}

@media (max-width: 760px) {
  .catalog-heading { grid-template-columns:1fr; padding:16px; }
  .catalog-summary { justify-self:start; min-width:96px; }
  .catalog-grid .app-card { grid-template-columns:86px minmax(0,1fr); }
  .catalog-grid .game-cover { width:76px; height:76px; font-size:1.8rem; }
  .app-card-footer { align-items:flex-start; flex-direction:column; }
}

.author-grid .author-card { min-height: 100%; }
.author-avatar, .author-hero-avatar, .author-mini-avatar { border: 1px solid var(--border); background: var(--surface-soft); object-fit: cover; }
.author-avatar { width: 96px; height: 96px; border-radius: 28px; display: grid; place-items: center; margin: 18px 18px 0; font-size: 2rem; }
.author-avatar img { width: 100%; height: 100%; border-radius: inherit; object-fit: cover; }
.author-profile { display:flex; align-items:center; gap:22px; padding:24px; margin-bottom:24px; border:1px solid var(--border-soft); border-radius:26px; background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 92%,var(--accent-soft)),var(--surface)); box-shadow:var(--shadow-soft); }
.author-profile .author-avatar { flex:0 0 auto; margin:0; }
.author-profile__copy { min-width:0; flex:1; }
.author-profile__copy h1 { margin:.2rem 0 .45rem; font-size:clamp(1.85rem,3.3vw,3.25rem); }
.author-profile__copy .lead { max-width:780px; margin:0; }
.author-profile__actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:16px; }
.author-profile__actions form { margin:0; }
.author-hero { position: relative; }
.author-hero-avatar { width: 112px; height: 112px; border-radius: 32px; margin-bottom: 14px; }
.article-author-box { display: flex; gap: 12px; align-items: flex-start; margin: 14px 0 22px; }
.author-mini-avatar { width: 44px; height: 44px; border-radius: 16px; }
@media (max-width: 720px) { .article-author-box { gap: 8px; } .author-hero-avatar { width: 88px; height: 88px; } .author-profile { align-items:flex-start; padding:18px; gap:14px; } .author-profile .author-avatar { width:72px; height:72px; border-radius:22px; } .author-profile__actions { align-items:stretch; flex-direction:column; } .author-profile__actions .button { width:100%; } }
.taxonomy-row { display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin:8px 0; }
.article-taxonomy { margin: 0 0 18px; }
.chip-strong { font-weight: 800; border-color: color-mix(in srgb, var(--accent) 42%, var(--border)); }
.login-form select[multiple] { min-height: 132px; padding: 8px; }
@media (max-width: 720px) { .login-form select[multiple] { min-height: 150px; } .taxonomy-row { gap:5px; } }

.page-actions,.card-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.stack-list{display:grid;gap:1rem}.interest-row{display:flex;gap:1rem;align-items:center;justify-content:space-between}.interest-row>div:nth-child(2),.interest-row>div:first-child{min-width:0}.author-avatar-large{width:6rem;height:6rem}.article-mini-list{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}.article-mini-list li{display:flex;gap:.75rem;justify-content:space-between;border-bottom:1px solid var(--border-soft);padding-bottom:.55rem}.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.choice-card{display:flex;gap:.7rem;align-items:flex-start;padding:.85rem;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-muted);cursor:pointer}.choice-card input{margin-top:.25rem}.choice-card small{display:block;color:var(--muted);margin-top:.25rem}.onboarding-form{display:grid;gap:1.25rem}.notice-error{border-color:#f4a3a3;background:#fff1f1;color:#7a1c1c}[data-follow-button][aria-busy="true"]{opacity:.7;pointer-events:none}
@media (max-width:640px){.interest-row{align-items:flex-start;flex-direction:column}.article-mini-list li{display:grid}.page-actions,.card-actions{align-items:stretch}.page-actions .button,.card-actions .button{width:100%}}
.toggle-row{display:inline-flex;gap:.45rem;align-items:center;font-weight:700;color:var(--muted)}

.article-reactions { margin: 1.5rem 0; }
.reaction-buttons { display: flex; flex-wrap: wrap; gap: .5rem; }
.reaction-buttons [aria-pressed="true"], .comment-action[aria-pressed="true"] { outline: 2px solid currentColor; font-weight: 700; }
.comment-action[aria-busy="true"], .reaction-buttons [aria-busy="true"] { opacity: .7; }
@media (max-width: 640px) { .reaction-buttons { display: grid; grid-template-columns: 1fr; } }

.article-recommendations .recommendation-reason {
  color: var(--muted);
  font-size: .92rem;
  margin: 0 0 .25rem;
}
.recommendation-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: .6rem;
  justify-content: space-between;
  margin-top: auto;
}
.recommendation-card[aria-busy="true"] {
  opacity: .72;
}
.recommendation-undo {
  background: var(--surface-soft);
  border: 1px solid var(--border);
  border-radius: 16px;
  margin-top: .75rem;
  padding: .8rem 1rem;
}
.button-small {
  min-height: 2.2rem;
  padding: .45rem .75rem;
}
@media (max-width: 520px) {
  .recommendation-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .recommendation-actions .button {
    width: 100%;
  }
}

.article-inline-image{margin:1.5rem 0;max-width:100%;overflow-wrap:anywhere}.article-inline-image picture,.article-inline-image img{display:block;max-width:100%;height:auto;border-radius:18px}.article-inline-image-center{margin-left:auto;margin-right:auto}.article-inline-image-wide{width:min(100%,980px)}.article-inline-image-left,.article-inline-image-right{max-width:min(48%,420px)}.article-inline-image-left{float:left;margin-right:1rem}.article-inline-image-right{float:right;margin-left:1rem}.article-inline-image figcaption{margin-top:.5rem;color:var(--muted);font-size:.92rem}.article-image-credit{opacity:.85}.article-media-manager{overflow:hidden}.article-media-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.article-media-item{display:grid;grid-template-columns:76px 1fr;gap:.75rem;align-items:start;min-width:0}.article-media-item img{width:76px;height:76px;object-fit:cover;border-radius:12px}.article-media-item code{display:block;white-space:normal;word-break:break-all}@media (max-width:520px){.article-inline-image-left,.article-inline-image-right{float:none;max-width:100%;margin-left:0;margin-right:0}.article-media-item{grid-template-columns:1fr}.article-media-item img{width:100%;height:auto;max-height:180px}}
.star-balance{display:inline-flex;align-items:center;gap:.3rem;white-space:nowrap;color:var(--accent-strong);font-weight:800;font-variant-numeric:tabular-nums}
.star-billing-modal .auth-modal-card{max-width:520px}.star-billing-modal .hero-actions{margin-top:20px}.star-billing-modal .lead{font-size:1.05rem;line-height:1.65}

.article-inline-video{margin:1.5rem 0;max-width:100%;overflow-wrap:anywhere}.article-inline-video video{display:block;width:100%;max-width:100%;height:auto;border-radius:18px;background:#05060a}.article-inline-video-center{margin-left:auto;margin-right:auto;max-width:min(100%,760px)}.article-inline-video-wide{width:min(100%,980px)}.article-inline-video figcaption{margin-top:.5rem;color:var(--muted);font-size:.92rem}.article-media-video video,.article-media-video img{border-radius:12px}@media (prefers-reduced-motion: reduce){.article-inline-video-loop video{animation:none}.article-inline-video-loop video[autoplay]{opacity:.98}}@media (max-width:520px){.article-inline-video-center,.article-inline-video-wide{width:100%;max-width:100%}.article-inline-video video{border-radius:14px}}
.media-library-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;align-items:end;margin-bottom:1.25rem}.media-library-filters label{display:grid;gap:.35rem;font-weight:700;min-width:0}.media-library-filters input,.media-library-filters select{width:100%;min-width:0}.media-library-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:1rem}.media-library-card{display:flex;flex-direction:column;min-width:0;height:100%;overflow:hidden}.media-library-card.is-disabled{border-style:dashed}.media-library-preview{display:grid;place-items:center;align-content:center;gap:.5rem;min-height:180px;background:var(--surface-soft);color:var(--muted);overflow:hidden;text-decoration:none}.media-library-preview:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.media-library-preview img{width:100%;height:180px;object-fit:cover}.media-library-preview span{font-size:2.5rem}.media-library-preview em{font-style:normal;font-weight:700}.media-library-card .card-body{display:flex;flex:1;flex-direction:column;min-width:0}.media-library-card code,.media-library-detail code{overflow-wrap:anywhere}.media-library-pagination{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.25rem}.media-library-detail{display:grid;grid-template-columns:minmax(220px,420px) minmax(0,1fr);gap:1rem;margin-top:1rem;overflow:hidden}.media-library-preview-large{min-height:320px}.media-library-preview-large img{width:100%;height:100%;max-height:520px;object-fit:contain}.media-library-meta{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.45rem 1rem}.media-library-meta dt{font-weight:800}.media-library-meta dd{margin:0;min-width:0}@media(max-width:700px){.media-library-detail{grid-template-columns:1fr}.media-library-preview-large{min-height:220px}.media-library-filters{grid-template-columns:1fr 1fr}}@media(max-width:480px){.media-library-filters{grid-template-columns:1fr}}

/* Vedmali component language with interchangeable accents. */

:root[data-accent="pink"] {
  --accent:#bd476f;
  --accent-soft:#fbe8ef;
  --accent-2:#a55b76;
}

:root[data-accent="violet"] {
  --accent:#7446b8;
  --accent-soft:#f0e8fb;
  --accent-2:#9a6b35;
}

:root[data-accent="gold"] {
  --accent:#94651f;
  --accent-soft:#f8efd9;
  --accent-2:#765124;
}

:root[data-theme="dark"][data-accent="pink"] {
  --accent:#f08aaf;
  --accent-soft:#3a2030;
  --accent-2:#f0b0c6;
}

:root[data-theme="dark"][data-accent="violet"] {
  --accent:#c2a0f6;
  --accent-soft:#302343;
  --accent-2:#e6c17c;
}

:root[data-theme="dark"][data-accent="gold"] {
  --accent:#e4bd70;
  --accent-soft:#372d1e;
  --accent-2:#f1d99f;
}

body {
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.65;
  letter-spacing:-.006em;
  background:
    radial-gradient(circle at 8% -8%,color-mix(in srgb,var(--accent) 15%,transparent),transparent 34rem),
    radial-gradient(circle at 96% 4%,color-mix(in srgb,var(--accent-2) 10%,transparent),transparent 28rem),
    var(--bg);
}

h1,h2,h3,h4 {
  text-wrap:balance;
  color:var(--text-primary);
}

h1,h2,.magic-hero h1,.catalog-heading-main h1 {
  font-family:var(--font-display);
  font-weight:500;
  letter-spacing:-.04em;
}

h1 { font-size:clamp(2.45rem,5.5vw,5.4rem); line-height:.98; }
h2 {
  font-size:clamp(1.65rem,3vw,2.75rem);
  line-height:1.08;
}
h3 { font-size:clamp(1.05rem,1.5vw,1.32rem); line-height:1.25; letter-spacing:-.018em; }

p {
  text-wrap:pretty;
}

.lead,.hero-text { max-width:66ch; color:var(--text-secondary); font-size:clamp(1.04rem,1.5vw,1.2rem); line-height:1.72; }
.eyebrow,.sidebar-label { color:var(--accent-gold); font-size:.72rem; font-weight:750; letter-spacing:.16em; }
.muted,small,.meta-row,time { color:var(--text-muted); }
.article-body,.article-content,.result-text,.comment-body { font-size:clamp(1rem,1.2vw,1.1rem); line-height:1.82; }
.article-body h2,.article-content h2 { margin:2.4em 0 .7em; }
.article-body h3,.article-content h3 { margin:1.9em 0 .6em; }
.article-body blockquote,.article-content blockquote { margin:2rem 0; padding:1.1rem 1.35rem; border-inline-start:2px solid var(--accent-gold); color:var(--text-secondary); background:var(--surface-soft); border-radius:0 var(--radius-md) var(--radius-md) 0; }

.app-topbar {
  height:72px;
  padding-inline:var(--content-gutter);
  background:color-mix(in srgb,var(--surface) 84%,transparent);
  border-color:color-mix(in srgb,var(--border) 76%,transparent);
  box-shadow:0 1px 0 color-mix(in srgb,var(--surface) 70%,transparent);
}

.brand {
  gap:12px;
  font-family:var(--font-display);
  font-size:1.12rem;
  font-weight:700;
  letter-spacing:.035em;
}

.brand-mark {
  width:38px;
  height:38px;
  border:1px solid color-mix(in srgb,var(--accent-2) 36%,transparent);
  border-radius:50% 50% 46% 54%;
  background:linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent) 65%,var(--accent-2)));
  box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 25%,transparent),inset 0 1px 0 rgb(255 255 255/.3);
}

.search-box {
  min-height:var(--control-height);
  border-color:color-mix(in srgb,var(--border) 86%,transparent);
  background:color-mix(in srgb,var(--surface-2) 76%,var(--surface));
  transition:border-color var(--transition),background var(--transition),box-shadow var(--transition);
}

.search-box:focus-within {
  border-color:color-mix(in srgb,var(--accent) 58%,var(--border));
  background:var(--surface);
  box-shadow:0 0 0 4px var(--focus-ring);
}

.app-shell {
  gap:clamp(18px,2vw,28px);
  padding:28px var(--content-gutter) 80px;
}

.button,.icon-button,.theme-toggle,input,textarea,select {
  transition:border-color var(--transition),background-color var(--transition),color var(--transition),box-shadow var(--transition),transform var(--transition),opacity var(--transition);
}

.button {
  min-height:var(--control-height);
  padding-inline:20px;
  border-radius:14px;
  font-size:.94rem;
  letter-spacing:.005em;
}

.button-primary {
  background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 88%,white),var(--accent));
  box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 22%,transparent),inset 0 1px 0 rgb(255 255 255/.24);
}

.button-primary:hover {
  box-shadow:0 14px 30px color-mix(in srgb,var(--accent) 30%,transparent),inset 0 1px 0 rgb(255 255 255/.3);
}

.button-secondary:hover,.button-ghost:hover,.icon-button:hover,.theme-toggle:hover {
  border-color:color-mix(in srgb,var(--accent) 38%,var(--border));
  background:var(--accent-soft);
  color:var(--accent);
}

.button:active,.icon-button:active,.theme-toggle:active {
  transform:translateY(0) scale(.98);
}

.button:disabled,.button[aria-disabled="true"],button:disabled,input:disabled,select:disabled,textarea:disabled {
  cursor:not-allowed;
  opacity:.52;
  box-shadow:none;
  transform:none;
}

input,textarea,select {
  min-height:var(--control-height);
  padding:11px 14px;
  border-radius:14px;
  background:var(--surface-raised);
  box-shadow:inset 0 1px 2px rgb(39 21 47/.035);
}

input:hover,textarea:hover,select:hover {
  border-color:color-mix(in srgb,var(--accent) 30%,var(--border));
}

input:focus,textarea:focus,select:focus {
  border-color:color-mix(in srgb,var(--accent) 62%,var(--border));
  outline:none;
  box-shadow:0 0 0 4px var(--focus-ring),inset 0 1px 2px rgb(39 21 47/.025);
}

input[type="radio"] {
  width:1.0625rem;
  height:1.0625rem;
  min-width:1.0625rem;
  min-height:1.0625rem;
  padding:0;
  margin:0;
  flex:0 0 auto;
  border-radius:50%;
  box-shadow:none;
  accent-color:var(--accent)
}

input[type="radio"]:focus-visible {
  outline:3px solid var(--focus-ring);
  outline-offset:2px;
  box-shadow:none
}

input:user-invalid,textarea:user-invalid,select:user-invalid,.field-error input,.field-error textarea,.field-error select {
  border-color:var(--danger);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--danger) 14%,transparent);
}

label {
  gap:7px;
  color:var(--text);
  font-size:.9rem;
  font-weight:750;
}

label small,.field-help {
  color:var(--muted);
  font-weight:500;
}

.card,.section-block,.hero-card,.rail-widget,.sidebar-card,.empty-state,.result-document,.catalog-heading {
  border-color:color-mix(in srgb,var(--border) 86%,transparent);
  background:var(--surface-raised);
  box-shadow:var(--shadow-card);
}

.section-block,.hero-card,.catalog-heading {
  padding:clamp(18px,2.4vw,28px);
}

.game-card,.article-card,.result-history-card {
  isolation:isolate;
  border-radius:var(--radius-lg);
  transition:transform var(--transition),border-color var(--transition),box-shadow var(--transition);
}

.game-card:hover,.article-card:hover,.result-history-card:hover {
  transform:translateY(-3px);
  border-color:color-mix(in srgb,var(--accent) 34%,var(--border));
  box-shadow:var(--shadow-lift);
}

.article-cover,.game-cover {
  border-color:color-mix(in srgb,var(--accent) 12%,var(--border));
  background:
    radial-gradient(circle at 78% 16%,color-mix(in srgb,var(--accent-2) 14%,transparent),transparent 44%),
    linear-gradient(145deg,var(--surface-muted),var(--accent-soft));
}

.card-body {
  gap:14px;
}

.card-body h2,.result-history-card h2 {
  font-size:clamp(1.2rem,2vw,1.55rem);
}

.chip,.badge {
  border-color:color-mix(in srgb,var(--border) 84%,transparent);
  background:var(--surface-muted);
  font-size:.78rem;
}

.empty-state {
  min-height:220px;
  padding:clamp(28px,6vw,54px);
  border-style:dashed;
  background:linear-gradient(145deg,var(--surface-raised),color-mix(in srgb,var(--accent-soft) 38%,var(--surface)));
}

.empty-state span {
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border-radius:18px;
  background:var(--accent-soft);
  color:var(--accent);
}

.alert {
  border-left-width:4px;
  box-shadow:0 6px 18px rgb(39 21 47/.04);
}

.alert-success {
  border-color:color-mix(in srgb,var(--success) 38%,var(--border));
  background:color-mix(in srgb,var(--success) 10%,var(--surface));
  color:var(--success);
}

.result-history-grid {
  gap:20px;
}

.result-history-card {
  padding:22px;
}

.result-history-card p {
  margin:0;
  color:var(--muted);
  line-height:1.65;
}

.result-history-card small {
  margin-top:auto;
  color:var(--muted);
}

.result-filters {
  padding:16px;
  border:1px solid var(--border);
  border-radius:var(--radius-md);
  background:var(--surface-muted);
}

.auth-modal-card {
  border-color:color-mix(in srgb,var(--accent) 20%,var(--border));
  background:var(--surface-raised);
  box-shadow:0 28px 80px rgb(22 12 31/.28);
}

@media (max-width:860px) {
  .app-topbar { height:64px; }
  .app-shell { padding-top:18px; }
  .left-sidebar { background:var(--surface); box-shadow:24px 0 60px rgb(22 12 31/.2); }
}

@media (max-width:620px) {
  .app-topbar { gap:8px; padding-inline:10px; }
  .brand { font-size:1rem; }
  .brand-mark { width:34px; height:34px; }
  .search-box { min-width:0; height:40px; min-height:40px; padding-inline:10px; }
  .search-box input { min-height:0; padding:0; box-shadow:none; }
  .section-block,.hero-card,.catalog-heading { padding:16px; border-radius:20px; }
  .result-history-card { padding:18px; }
  .empty-state { min-height:190px; }
}
.media-picker-dialog{width:min(980px,calc(100% - 24px));max-height:min(88vh,820px);padding:0;border:1px solid var(--border);border-radius:20px;background:var(--surface);color:var(--text);box-shadow:var(--shadow);overflow:auto}.media-picker-dialog::backdrop{background:rgba(9,12,20,.68)}.media-picker-dialog-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;background:var(--surface);border-bottom:1px solid var(--border)}[data-media-picker-content]{padding:1rem}.media-picker-filters{display:grid;grid-template-columns:2fr repeat(3,minmax(120px,1fr)) auto;gap:.65rem;align-items:end}.media-picker-filters label,.media-picker-card label{display:grid;gap:.3rem}.media-picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:.8rem}.media-picker-card{display:grid;grid-template-columns:88px minmax(0,1fr);gap:.7rem;padding:.75rem;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft);min-width:0}.media-picker-card.is-disabled{border-style:dashed}.media-picker-thumb{display:grid;place-items:center;width:88px;height:88px;overflow:hidden;border-radius:12px;background:var(--surface)}.media-picker-thumb img{width:100%;height:100%;object-fit:cover}.media-picker-pagination{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}@media(max-width:760px){.media-picker-filters{grid-template-columns:1fr 1fr}.media-picker-grid{grid-template-columns:1fr}}@media(max-width:480px){.media-picker-filters{grid-template-columns:1fr}.media-picker-card{grid-template-columns:72px minmax(0,1fr)}.media-picker-thumb{width:72px;height:72px}}

.taxonomy-picker{display:grid;gap:var(--space-5,1.25rem);padding:var(--space-5,1.25rem);border:1px solid var(--border-color,var(--border));background:var(--surface-card,var(--surface));}
.taxonomy-picker__section{display:grid;gap:.75rem}.field-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.category-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;max-height:22rem;overflow:auto}.category-option{display:flex!important;gap:.65rem;padding:.75rem;border:1px solid var(--border-color,var(--border));border-radius:var(--radius-md,12px);cursor:pointer;background:var(--surface-elevated,var(--surface));}.category-option:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 22%,transparent)}.category-option small{display:block;color:var(--text-muted);margin-top:.2rem}.tag-chips,.taxonomy-results,.taxonomy-recommendations{display:flex;flex-wrap:wrap;gap:.5rem}.tag-chips button{border:0;background:transparent;color:inherit;font-size:1.1em;cursor:pointer}.taxonomy-result{min-height:var(--control-height,42px);padding:.55rem .8rem;border:1px solid var(--border-color,var(--border));border-radius:var(--radius-md,12px);background:var(--surface-elevated,var(--surface));color:var(--text);cursor:pointer}.taxonomy-result:hover,.taxonomy-result:focus-visible{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 25%,transparent)}@media(max-width:680px){.category-options{grid-template-columns:1fr;max-height:18rem}}
.taxonomy-proposal-chip{border-style:dashed;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface));}.taxonomy-proposal-help{margin:0;font-size:.9rem}

/* Vedmali public surfaces use the canonical token contract declared above. */

body {
  background:
    radial-gradient(ellipse at 12% -10%,rgb(82 49 142 / .42),transparent 38rem),
    radial-gradient(ellipse at 92% 0,rgb(182 123 42 / .2),transparent 30rem),
    linear-gradient(180deg,var(--bg-soft),var(--bg) 42rem);
  background-attachment:fixed;
}

body::before {
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.22;
  background-image:radial-gradient(circle at center,rgb(255 255 255 / .12) 0 1px,transparent 1.5px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,#000,transparent 70%);
}

.app-topbar {
  background:rgb(10 9 22 / .76);
  border-bottom-color:rgb(232 214 255 / .11);
  box-shadow:0 10px 38px rgb(0 0 0 / .18);
  backdrop-filter:blur(24px) saturate(135%);
}

:root[data-theme="light"] .app-topbar { background:rgb(253 250 255 / .78); }

.brand-mark {
  border:1px solid rgb(246 212 136 / .42);
  background:linear-gradient(145deg,#39205e,#9b6fe6 58%,#d6a84d);
  box-shadow:0 0 28px rgb(185 154 255 / .28),inset 0 1px 0 rgb(255 255 255 / .24);
}

.search-box,
.icon-button,
.theme-toggle {
  background:color-mix(in srgb,var(--surface) 72%,transparent);
  border-color:var(--border);
  backdrop-filter:blur(16px);
}

.app-shell { grid-template-columns:minmax(184px,var(--left)) minmax(0,var(--content)); justify-content:center; gap:clamp(24px,3vw,52px); padding-top:clamp(20px,2.4vw,36px); }
.app-shell.has-right-rail { grid-template-columns:minmax(184px,var(--left)) minmax(0,var(--content)) minmax(240px,var(--right)); max-width:1680px; }
.app-shell.is-content-first .content-column { width:100%; }
.left-sidebar { scrollbar-width:thin; scrollbar-color:var(--border-highlight) transparent; }
.right-rail { min-width:0; }
.nav-icon { width:18px; height:18px; flex:0 0 18px; display:inline-block; color:currentColor; }
.sidebar-link { min-height:44px; border:1px solid transparent; border-radius:var(--radius-md); font-size:.92rem; }
.sidebar-link > span:last-child { overflow:hidden; text-overflow:ellipsis; }
.sidebar-link { border:1px solid transparent; }
.sidebar-link:hover,
.sidebar-link.is-active {
  border-color:var(--border-soft);
  background:linear-gradient(100deg,color-mix(in srgb,var(--accent) 14%,transparent),color-mix(in srgb,var(--surface) 80%,transparent));
  box-shadow:none;
}

.section-block,
.catalog-heading,
.game-card,
.card,
.right-card,
.comments-panel {
  border-color:var(--border);
  background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,transparent),color-mix(in srgb,var(--surface-2) 82%,transparent));
  box-shadow:var(--shadow-card);
  backdrop-filter:blur(18px);
}

.article-detail { width:min(100%,860px); margin-inline:auto; padding:clamp(24px,5vw,64px); border-radius:var(--radius-xl); }
.article-detail > h1 { max-width:15ch; margin:.35rem 0 .8rem; font-size:clamp(2.25rem,5vw,4.5rem); }
.article-detail > .lead { margin-bottom:1.5rem; }
.article-detail .post-media { margin:clamp(24px,4vw,42px) calc(clamp(24px,5vw,64px) * -.35); overflow:hidden; border-radius:var(--radius-lg); }
.article-author-box { padding-block:18px; border-block:1px solid var(--border-soft); }
.article-content { max-width:68ch; margin:clamp(32px,5vw,60px) auto; color:var(--text-primary); }
.article-content p { margin:0 0 1.35em; }
.article-reactions,.comments-panel { width:min(100%,860px); margin:clamp(20px,3vw,34px) auto 0; }
.article-reactions { padding:clamp(20px,3vw,30px); }
.comments-panel { padding:clamp(22px,4vw,38px); border-radius:var(--radius-xl); }
.comments-panel .section-head { align-items:flex-end; }
.comments-panel .section-head h2 { margin:.2rem 0 0; font-size:clamp(1.55rem,2.8vw,2.3rem); }
.comment-count { display:inline-grid; place-items:center; min-width:2rem; min-height:2rem; padding:.2rem .55rem; border:1px solid var(--border-soft); border-radius:999px; color:var(--text-secondary); font:700 .78rem var(--font-body); vertical-align:middle; }
.comment-form { margin:20px 0 26px; padding:clamp(14px,2vw,20px); border:1px solid var(--border-soft); border-radius:var(--radius-lg); background:var(--surface-soft); }
.comment-form textarea { min-height:116px; border:0; background:transparent; box-shadow:none; font:inherit; line-height:1.65; }
.comment-form textarea:focus { outline:0; box-shadow:none; }
.comments-list { gap:10px; }
.comment-row { grid-template-columns:42px minmax(0,1fr); gap:13px; padding:16px; border:1px solid transparent; border-radius:var(--radius-md); transition:background var(--motion-fast),border-color var(--motion-fast); }
.comment-row:hover { border-color:var(--border-soft); background:var(--surface-soft); }
.comment-avatar { width:40px; height:40px; background:linear-gradient(145deg,var(--surface-elevated),var(--accent-soft)); color:var(--accent-primary); }
.comment-row p { margin:.55rem 0; color:var(--text-secondary); line-height:1.7; }
.comment-meta { color:var(--text-muted); }
.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }

.magic-hero {
  min-height:clamp(480px,55vw,650px);
  align-items:center;
  isolation:isolate;
  border-color:rgb(225 202 255 / .2);
  background:
    linear-gradient(110deg,rgb(9 8 21 / .96) 0%,rgb(18 13 38 / .93) 46%,rgb(35 19 59 / .76) 100%),
    var(--surface);
  box-shadow:0 36px 100px rgb(0 0 0 / .44),inset 0 1px 0 rgb(255 255 255 / .07);
}

.magic-hero::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.5;
  background:
    radial-gradient(circle at 76% 26%,rgb(239 197 104 / .25),transparent 14rem),
    radial-gradient(circle at 15% 90%,rgb(127 79 213 / .22),transparent 24rem);
}

.magic-hero-copy,
.hero-feature { z-index:2; }
.magic-hero-copy { max-width:670px; }
.magic-hero .eyebrow { color:var(--accent-2); }
.magic-hero h1 { text-shadow:0 6px 40px rgb(0 0 0 / .5); }
.magic-hero .lead { color:#d5cde0; font-size:clamp(1rem,1.6vw,1.16rem); }

.tarot-ambient-art {
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
}

.tarot-ambient-card {
  position:absolute;
  right:clamp(15rem,25vw,23rem);
  bottom:-18%;
  width:clamp(150px,19vw,255px);
  aspect-ratio:2 / 3;
  object-fit:cover;
  border:1px solid rgb(244 212 140 / .38);
  border-radius:clamp(18px,2vw,28px);
  box-shadow:0 30px 70px rgb(0 0 0 / .55),0 0 50px rgb(179 131 255 / .2);
  filter:saturate(.9) contrast(1.04);
}

.tarot-ambient-card-back { transform:rotate(-11deg) translate(-46px,-8px); opacity:.46; }
.tarot-ambient-card-front { transform:rotate(6deg); opacity:.72; }

.hero-feature {
  background:rgb(18 13 36 / .76);
  backdrop-filter:blur(18px);
}

.button { min-height:46px; }
.button-primary {
  background:linear-gradient(135deg,#8a5ad2,#b791ff 62%,#d7ad59);
  color:#fff;
  box-shadow:0 14px 34px rgb(116 70 184 / .34),inset 0 1px 0 rgb(255 255 255 / .24);
}
.button-secondary,.button-ghost { background:color-mix(in srgb,var(--surface) 78%,transparent); }

.ritual-card { background:linear-gradient(155deg,color-mix(in srgb,var(--surface) 94%,transparent),color-mix(in srgb,var(--accent) 6%,var(--surface-2))); }
.ritual-card:hover,.ritual-card:focus-visible { transform:translateY(-4px); box-shadow:var(--shadow-lift); }

.tarot-stage { min-height:470px; background:radial-gradient(circle at 50% 38%,rgb(185 154 255 / .22),transparent 40%),linear-gradient(160deg,#171126,#090812 76%); }
.tarot-flip-card { width:min(292px,74vw); aspect-ratio:2 / 3; }
.tarot-live-card { width:min(292px,74vw); aspect-ratio:2 / 3; border-radius:22px; filter:drop-shadow(0 28px 48px rgb(0 0 0 / .46)); }
.tarot-ambient-live { aspect-ratio:2 / 3; border-radius:18px; overflow:hidden; }
.tarot-face { padding:0; overflow:hidden; border-radius:28px; }
.tarot-back {
  padding:1.5rem;
  background:
    radial-gradient(circle at center,rgb(240 202 112 / .24),transparent 28%),
    repeating-radial-gradient(circle at center,transparent 0 23px,rgb(237 203 124 / .12) 24px 25px),
    linear-gradient(145deg,#402064,#0e0a19);
}
.tarot-front { background:#100d18; }
.tarot-front > img { width:100%; height:100%; object-fit:cover; }
.tarot-card-caption {
  position:absolute;
  inset:auto 12px 12px;
  display:grid;
  gap:2px;
  padding:12px 14px;
  border:1px solid rgb(255 255 255 / .16);
  border-radius:16px;
  color:#fff;
  background:rgb(8 7 14 / .7);
  box-shadow:0 12px 28px rgb(0 0 0 / .35);
  backdrop-filter:blur(14px);
}
.tarot-card-caption small { color:#ded4e8; }

.vedmali-now,
.vedmali-relationship,
.vedmali-moon,
.vedmali-tarot-story,
.vedmali-depth { margin-top:clamp(28px,5vw,72px); }

.vedmali-section-intro { max-width:720px; margin-bottom:clamp(20px,3vw,34px); }
.vedmali-section-intro h2,
.vedmali-relationship h2,
.vedmali-tarot-story h2,
.vedmali-depth h2 { margin:.35rem 0 .75rem; font-size:clamp(1.7rem,3.5vw,3.15rem); line-height:1.04; letter-spacing:-.035em; }
.vedmali-section-intro > p:last-child,
.vedmali-relationship-copy > p,
.vedmali-tarot-story > div:first-child > p,
.vedmali-depth p { color:var(--text-muted); font-size:1.04rem; line-height:1.72; }

.vedmali-choice-grid { display:grid; grid-template-columns:1.15fr 1fr 1fr; gap:16px; }
.vedmali-choice {
  position:relative; min-height:250px; display:flex; flex-direction:column; justify-content:flex-end; gap:10px; overflow:hidden;
  padding:clamp(22px,3vw,34px); border:1px solid var(--border); border-radius:28px; color:var(--text);
  background:linear-gradient(150deg,color-mix(in srgb,var(--surface) 94%,transparent),color-mix(in srgb,var(--accent) 12%,var(--surface-2)));
  box-shadow:var(--shadow-card); transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .45s;
}
.vedmali-choice::before { content:""; position:absolute; inset:-35% -20% 35% 25%; border-radius:50%; background:radial-gradient(circle,rgb(197 151 255 / .22),transparent 65%); transition:transform .7s ease; }
.vedmali-choice:hover,.vedmali-choice:focus-visible { transform:translateY(-7px); border-color:rgb(224 193 255 / .38); box-shadow:0 28px 65px rgb(0 0 0 / .32); }
.vedmali-choice:hover::before { transform:translate(-8%,10%) scale(1.12); }
.vedmali-choice h3 { position:relative; max-width:18ch; margin:0; font-size:clamp(1.25rem,2vw,1.7rem); line-height:1.13; }
.vedmali-choice small,.vedmali-choice .text-link { position:relative; color:var(--text-muted); }
.vedmali-choice-symbol { position:absolute; right:26px; top:18px; color:var(--accent-2); font-family:serif; font-size:clamp(3.6rem,7vw,6rem); opacity:.64; filter:drop-shadow(0 0 22px rgb(223 189 255 / .28)); }
.vedmali-choice.is-feelings { background:linear-gradient(150deg,#211326,#3a182b 60%,#15101d); }
.vedmali-choice.is-between { background:linear-gradient(150deg,#111627,#1b2140 58%,#161020); }

.vedmali-relationship { min-height:560px; display:grid; grid-template-columns:minmax(300px,.82fr) minmax(360px,1.18fr); overflow:hidden; border:1px solid var(--border); border-radius:34px; background:linear-gradient(125deg,#0c0b16,#21132d 52%,#140f20); box-shadow:var(--shadow-card); }
.vedmali-relationship-visual { position:relative; display:grid; place-items:center; min-height:520px; background:radial-gradient(circle at 50% 45%,rgb(199 151 255 / .19),transparent 45%); }
.vedmali-signature-card { width:min(285px,70%); aspect-ratio:2/3; z-index:2; border-radius:24px; filter:drop-shadow(0 36px 55px rgb(0 0 0 / .58)); transform:rotate(-2deg); transition:transform .8s cubic-bezier(.2,.8,.2,1); }
.vedmali-relationship:hover .vedmali-signature-card { transform:rotate(0deg) translateY(-6px); }
.vedmali-orbit { position:absolute; width:70%; aspect-ratio:1; border:1px solid rgb(228 199 255 / .13); border-radius:50%; }
.vedmali-orbit-one { transform:rotate(22deg) scaleY(.55); }
.vedmali-orbit-two { transform:rotate(-30deg) scaleY(.72); }
.vedmali-relationship-copy { align-self:center; padding:clamp(30px,5vw,70px); }
.vedmali-paths { display:grid; gap:10px; margin-top:28px; }
.vedmali-paths a { display:grid; gap:4px; padding:17px 18px; border:1px solid rgb(255 255 255 / .09); border-radius:17px; color:var(--text); background:rgb(255 255 255 / .035); transition:background .3s,border-color .3s,transform .3s; }
.vedmali-paths a:hover { transform:translateX(5px); border-color:rgb(217 180 255 / .25); background:rgb(255 255 255 / .065); }
.vedmali-paths span { color:var(--text-muted); font-size:.9rem; }

.vedmali-moon { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:clamp(20px,4vw,52px); padding:clamp(24px,4vw,46px); border-block:1px solid var(--border); background:linear-gradient(90deg,transparent,rgb(115 91 176 / .09),transparent); }
.vedmali-moon h2 { margin:.2rem 0 .45rem; font-size:clamp(1.45rem,2.4vw,2.25rem); }
.vedmali-moon p { margin:0; color:var(--text-muted); }
.vedmali-moon-disc { width:clamp(82px,10vw,128px); aspect-ratio:1; display:grid; place-items:center; border-radius:50%; color:#efdca9; font-size:3rem; background:radial-gradient(circle at 35% 30%,#ede0bf,#9f8660 45%,#271e2c 73%); box-shadow:0 0 65px rgb(221 190 124 / .2); }

.vedmali-tarot-story { display:grid; grid-template-columns:1fr minmax(340px,.82fr); align-items:center; min-height:510px; overflow:hidden; padding:clamp(30px,5vw,70px); border:1px solid var(--border); border-radius:34px; background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,#201126),#0c0b14); box-shadow:var(--shadow-card); }
.vedmali-tarot-story > div:first-child { position:relative; z-index:3; max-width:650px; }
.vedmali-tarot-fan { position:relative; min-height:390px; }
.vedmali-tarot-fan img { position:absolute; left:50%; top:50%; width:210px; aspect-ratio:2/3; object-fit:cover; border:1px solid var(--border-highlight); border-radius:18px; filter:drop-shadow(0 24px 35px rgb(0 0 0 / .5)); transform-origin:50% 100%; }
.vedmali-tarot-fan img:nth-child(1) { transform:translate(-88%,-47%) rotate(-12deg); }
.vedmali-tarot-fan img:nth-child(2) { z-index:2; transform:translate(-50%,-52%) rotate(1deg); }
.vedmali-tarot-fan img:nth-child(3) { transform:translate(-12%,-45%) rotate(13deg); }

.vedmali-depth { display:flex; align-items:center; justify-content:space-between; gap:36px; padding:clamp(28px,4vw,52px); border:1px solid rgb(225 198 255 / .16); border-radius:28px; background:radial-gradient(circle at 90% 20%,rgb(197 151 255 / .13),transparent 30%),linear-gradient(130deg,#171021,#0e0d17); }
.vedmali-depth > div:first-child { max-width:720px; }
.vedmali-depth .hero-actions { flex:0 0 auto; }

.is-reveal-pending { opacity:0; transform:translateY(26px); }
.is-reveal-pending.is-visible { opacity:1; transform:translateY(0); transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1); }

.game-cover { background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 13%,var(--surface-2)),color-mix(in srgb,var(--accent-2) 11%,var(--surface))); }
.catalog-grid { align-items:stretch; }
.catalog-grid .app-card { min-height:100%; overflow:hidden; transition:transform var(--motion-normal),border-color var(--motion-fast),box-shadow var(--motion-normal); }
.catalog-grid .app-card:first-child { grid-column:span 2; display:grid; grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr); background:radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--accent-secondary) 26%,transparent),transparent 45%),var(--surface-elevated); }
.catalog-grid .app-card:first-child .game-cover { width:auto; height:100%; min-height:330px; border-radius:0; }
.catalog-grid .app-card:nth-child(3n+2) { background:linear-gradient(155deg,var(--surface-elevated),color-mix(in srgb,var(--accent-soft) 58%,var(--surface))); }
.catalog-grid .app-card:nth-child(3n) .game-cover { background:linear-gradient(145deg,color-mix(in srgb,var(--accent-gold) 17%,var(--surface-soft)),var(--surface)); }
.catalog-grid .app-card .card-body { position:relative; z-index:1; }
.catalog-grid .app-card h2 { font-size:clamp(1.25rem,2vw,1.8rem); }
.catalog-grid .app-card:first-child h2 { font-size:clamp(1.7rem,3vw,2.65rem); }
.catalog-grid .app-card:hover { transform:translateY(-5px); border-color:var(--border-highlight); box-shadow:var(--shadow-lift); }

/* Shared product states: calm, explicit and reusable by future AI surfaces. */
.empty-state,.ui-state { min-height:220px; display:grid; place-items:center; align-content:center; gap:10px; padding:clamp(24px,5vw,48px); border:1px dashed var(--border-highlight); border-radius:var(--radius-xl); color:var(--text-secondary); text-align:center; background:linear-gradient(145deg,var(--surface),var(--surface-soft)); }
.empty-state h2,.empty-state h3,.ui-state h2,.ui-state h3 { margin:0; color:var(--text-primary); }
.empty-state p,.ui-state p { max-width:52ch; margin:0; }
.ui-state[data-state="success"],.alert-success { border-color:color-mix(in srgb,var(--success) 35%,var(--border-soft)); background:color-mix(in srgb,var(--success) 8%,var(--surface)); }
.ui-state[data-state="error"],.alert-error,.notice-error { border-color:color-mix(in srgb,var(--danger) 38%,var(--border-soft)); background:color-mix(in srgb,var(--danger) 9%,var(--surface)); color:var(--text-primary); }
.ui-state[data-state="locked"],.premium-state { border-color:color-mix(in srgb,var(--accent-gold) 35%,var(--border-soft)); background:radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--accent-gold) 15%,transparent),transparent 35%),var(--surface-elevated); }
.is-loading,[aria-busy="true"] { cursor:progress; }
.skeleton { overflow:hidden; color:transparent!important; border-radius:var(--radius-sm); background:linear-gradient(100deg,var(--surface-soft) 30%,var(--surface-elevated) 48%,var(--surface-soft) 66%); background-size:260% 100%; animation:vedmali-skeleton 1.4s ease infinite; }
@keyframes vedmali-skeleton { to { background-position:-180% 0; } }
.premium-indicator,.star-cost { display:inline-flex; align-items:center; gap:6px; min-height:28px; padding:4px 9px; border:1px solid color-mix(in srgb,var(--accent-gold) 35%,var(--border-soft)); border-radius:999px; color:var(--accent-gold); background:color-mix(in srgb,var(--accent-gold) 8%,var(--surface)); font-size:.78rem; font-weight:750; }
.star-balance { min-height:36px; padding:6px 11px; border:1px solid color-mix(in srgb,var(--accent-gold) 28%,var(--border-soft)); border-radius:999px; color:var(--accent-gold); background:color-mix(in srgb,var(--accent-gold) 7%,transparent); }
.star-balance:hover { border-color:color-mix(in srgb,var(--accent-gold) 52%,var(--border-soft)); background:color-mix(in srgb,var(--accent-gold) 12%,var(--surface)); }

/* Daily Tarot Experience v2 */
.daily-tarot { position:relative; overflow:hidden; min-height:680px; padding:clamp(28px,5vw,68px); border:1px solid var(--border-soft); border-radius:var(--radius-xl); text-align:center; background:radial-gradient(circle at 50% 42%,rgb(143 92 171 / .18),transparent 30%),linear-gradient(145deg,#100c18,#171020 58%,#0b0912); box-shadow:var(--shadow-card); }
.daily-tarot-intro { position:relative; z-index:3; max-width:760px; margin:0 auto; }
.daily-tarot-intro h1 { margin:.3rem 0 .8rem; font-size:clamp(2.35rem,5.4vw,5rem); }
.daily-tarot-intro .lead { margin-inline:auto; }
.daily-tarot-stage { position:relative; display:grid; place-items:center; min-height:420px; margin-top:18px; perspective:1200px; }
.daily-deck { position:relative; width:190px; aspect-ratio:2/3; }
.daily-deck span,.daily-card-back { position:absolute; inset:0; border:1px solid rgb(227 201 152 / .38); border-radius:22px; background:radial-gradient(circle at 50% 42%,rgb(211 175 105 / .18),transparent 20%),repeating-radial-gradient(circle at center,transparent 0 22px,rgb(220 190 130 / .09) 23px 24px),linear-gradient(145deg,#342047,#120d1c); box-shadow:0 25px 55px rgb(0 0 0 / .45),inset 0 0 0 7px rgb(236 210 159 / .055); }
.daily-deck span:nth-child(1){transform:translate(-10px,8px) rotate(-4deg)}.daily-deck span:nth-child(2){transform:translate(9px,5px) rotate(3deg)}
.daily-tarot[data-state="SHUFFLING"] .daily-deck span:nth-child(1){animation:daily-shuffle-left .72s ease-in-out infinite alternate}.daily-tarot[data-state="SHUFFLING"] .daily-deck span:nth-child(2){animation:daily-shuffle-right .72s ease-in-out infinite alternate}
@keyframes daily-shuffle-left{to{transform:translate(-46px,2px) rotate(-9deg)}}@keyframes daily-shuffle-right{to{transform:translate(46px,2px) rotate(9deg)}}
.daily-fan { position:relative; width:min(720px,100%); height:350px; }
.daily-card-back { appearance:none; inset:auto; left:50%; top:42px; width:150px; aspect-ratio:2/3; padding:0; color:var(--accent-gold); cursor:pointer; transform-origin:50% 115%; transition:transform var(--motion-normal),opacity var(--motion-normal),filter var(--motion-normal); }
.daily-card-back span { display:grid; place-items:center; width:46px; aspect-ratio:1; margin:auto; border:1px solid currentColor; border-radius:50%; font:500 1.2rem var(--font-display); }
.daily-card-back:nth-child(1){transform:translateX(-50%) rotate(-24deg) translateY(28px)}.daily-card-back:nth-child(2){transform:translateX(-50%) rotate(-12deg) translateY(8px)}.daily-card-back:nth-child(3){z-index:2;transform:translateX(-50%)}.daily-card-back:nth-child(4){transform:translateX(-50%) rotate(12deg) translateY(8px)}.daily-card-back:nth-child(5){transform:translateX(-50%) rotate(24deg) translateY(28px)}
.daily-card-back:hover,.daily-card-back:focus-visible { z-index:5; outline:0; filter:brightness(1.16); box-shadow:0 30px 70px rgb(0 0 0 / .55),0 0 0 3px var(--focus-ring); }
.daily-card-back.is-chosen { z-index:8; transform:translateX(-50%) translateY(-18px) scale(1.08); }
.daily-card-back.is-dismissed { opacity:0; filter:blur(4px); }
.daily-selected-card { width:min(292px,76vw); aspect-ratio:2/3; }
.daily-live-card { width:100%; height:100%; aspect-ratio:2/3; overflow:hidden; border-radius:clamp(18px,3vw,28px); filter:drop-shadow(0 30px 55px rgb(0 0 0 / .5)); }
.daily-tarot-actions { position:relative; z-index:4; display:grid; place-items:center; gap:9px; margin-top:-6px; }
.daily-tarot-actions p { margin:0; color:var(--text-muted); font-size:.86rem; }
.daily-result { margin-top:clamp(24px,4vw,48px); padding:clamp(24px,5vw,58px); border:1px solid var(--border-soft); border-radius:var(--radius-xl); background:var(--surface-elevated); box-shadow:var(--shadow-card); }
.daily-result-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.daily-result-heading h2 { margin:.25rem 0 0; }
.daily-result-hook { max-width:62ch; margin:22px 0; color:var(--text-secondary); font-size:clamp(1.08rem,1.7vw,1.3rem); line-height:1.75; }
.daily-meaning-primary { padding:22px; border-left:2px solid var(--accent-gold); border-radius:0 var(--radius-md) var(--radius-md) 0; background:var(--surface-soft); }
.daily-meaning-primary p:last-child { margin:0; font-size:1.08rem; line-height:1.75; }
.daily-details { margin-top:22px; border-top:1px solid var(--border-soft); }
.daily-details summary { padding:20px 0; color:var(--accent-primary); font-weight:750; cursor:pointer; }
.daily-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.daily-detail-grid article { padding:20px; border:1px solid var(--border-soft); border-radius:var(--radius-md); background:var(--surface); }
.daily-detail-grid small { color:var(--accent-gold); font-weight:750; text-transform:uppercase; letter-spacing:.1em; }
.daily-detail-grid p { margin:.6rem 0 0; color:var(--text-secondary); line-height:1.7; }
.daily-conclusion { margin-top:14px; padding:20px; border:1px solid color-mix(in srgb,var(--accent-gold) 26%,var(--border-soft)); border-radius:var(--radius-md); background:color-mix(in srgb,var(--accent-gold) 6%,var(--surface)); }
.daily-conclusion small { color:var(--accent-gold); font-weight:750; text-transform:uppercase; letter-spacing:.1em; }.daily-conclusion p{margin:.55rem 0 0;color:var(--text-secondary);line-height:1.7}
.daily-next { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:28px; padding:22px; border:1px solid color-mix(in srgb,var(--accent-gold) 25%,var(--border-soft)); border-radius:var(--radius-lg); background:color-mix(in srgb,var(--accent-gold) 6%,var(--surface)); }
.daily-next div { display:grid; gap:4px; }.daily-next p{margin:0;color:var(--text-muted)}
.daily-next__copy { flex:1 1 48%; align-self:flex-start; }
.daily-next__copy small { color:var(--accent-gold); font-weight:750; letter-spacing:.11em; text-transform:uppercase; }
.daily-next__copy strong { font:500 clamp(1.35rem,2.4vw,2rem)/1.12 var(--font-display); }
.daily-next__copy p { max-width:58ch; line-height:1.65; }
.daily-deep-form { flex:1 1 48%; display:grid; gap:12px; min-width:min(100%,340px); }
.daily-deep-form label { display:grid; gap:6px; color:var(--text-secondary); font-size:.84rem; font-weight:700; }
.daily-deep-form input,.daily-deep-form textarea { width:100%; border:1px solid var(--border-soft); border-radius:13px; padding:12px 14px; color:var(--text-primary); background:var(--surface); font:inherit; resize:vertical; }
.daily-deep-form input:focus,.daily-deep-form textarea:focus { border-color:var(--accent-primary); outline:2px solid color-mix(in srgb,var(--accent-primary) 24%,transparent); }
.daily-deep-result { margin-top:22px; border-top:1px solid var(--border-soft); padding-top:26px; }
.daily-deep-reading { display:grid; gap:22px; }
.daily-deep-reading > header { max-width:72ch; }
.daily-deep-reading > header h2 { margin:.2em 0; }
.daily-deep-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.daily-deep-grid article,.daily-deep-questions,.daily-deep-practice { padding:20px; border:1px solid var(--border-soft); border-radius:var(--radius-md); background:var(--surface); }
.daily-deep-grid small { color:var(--accent-gold); font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.daily-deep-grid p { margin:.55rem 0 0; color:var(--text-secondary); line-height:1.7; }
.daily-deep-questions ol { display:grid; gap:9px; margin-bottom:0; color:var(--text-secondary); }
.daily-deep-practice { border-color:color-mix(in srgb,var(--accent-primary) 30%,var(--border-soft)); }
.daily-deep-practice p:not(.eyebrow) { color:var(--text-secondary); line-height:1.7; }
.daily-deep-practice strong { display:block; color:var(--accent-gold); }
.daily-tarot-mini { --daily-mini-preview-min:76px; --daily-mini-preview-fluid:22%; --daily-mini-preview-max:108px; container-type:inline-size; display:grid; grid-template-columns:minmax(0,clamp(var(--daily-mini-preview-min),var(--daily-mini-preview-fluid),var(--daily-mini-preview-max))) minmax(0,1fr); gap:clamp(12px,2.2cqi,18px); align-items:center; inline-size:100%; min-inline-size:0; max-inline-size:100%; padding:14px; overflow:hidden; border:1px solid var(--border-soft); border-radius:var(--radius-lg); color:var(--text-primary); background:radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--accent-primary) 16%,transparent),transparent 45%),var(--surface-elevated); box-shadow:var(--shadow-card); transition:transform var(--motion-normal),border-color var(--motion-fast); }
.daily-tarot-mini:hover,.daily-tarot-mini:focus-visible { transform:translateY(-3px); border-color:var(--border-highlight); outline:0; }
.daily-tarot-mini__media { position:relative; display:grid; place-items:center; inline-size:100%; aspect-ratio:2/3; overflow:hidden; border:1px solid var(--border-highlight); border-radius:12px; background:linear-gradient(155deg,color-mix(in srgb,var(--accent-secondary) 32%,var(--surface-soft)),var(--surface-soft)); box-shadow:0 12px 25px rgb(0 0 0 / .24); }
.daily-tarot-mini__media img { position:absolute; inset:0; z-index:1; inline-size:100%; block-size:100%; max-inline-size:none; object-fit:cover; object-position:center; }
.daily-tarot-mini__fallback { color:var(--accent-gold); font:500 clamp(1.2rem,5cqi,2rem)/1 var(--font-display); }
.daily-tarot-mini__content { min-width:0; display:grid; align-content:center; gap:5px; }
.daily-tarot-mini small { color:var(--accent-gold); font-size:.68rem; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }
.daily-tarot-mini strong { display:-webkit-box; overflow:hidden; overflow-wrap:anywhere; font:500 clamp(1.05rem,3.6cqi,1.28rem)/1.1 var(--font-display); -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.daily-tarot-mini em { display:-webkit-box; overflow:hidden; color:var(--text-secondary); font-size:.84rem; font-style:normal; line-height:1.4; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.daily-tarot-mini b { display:inline-flex; align-items:center; gap:5px; margin-top:2px; color:var(--accent-primary); font-size:.78rem; }
.home-secondary-experiences .daily-tarot-mini { --daily-mini-preview-min:88px; --daily-mini-preview-fluid:23%; --daily-mini-preview-max:112px; }
.right-rail .daily-tarot-mini { --daily-mini-preview-min:70px; --daily-mini-preview-fluid:31%; --daily-mini-preview-max:88px; gap:12px; padding:12px; }
.home-secondary-experiences { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr)); gap:16px; align-items:start; max-width:1040px; margin:clamp(24px,4vw,46px) auto 0; }
.special-experience { position:relative; min-width:0; min-height:0; overflow:hidden; border:1px solid var(--border-soft); border-radius:var(--radius-lg); background:var(--surface-elevated); box-shadow:var(--shadow-card); }
.special-experience.is-rail { min-height:0; }
.special-experience-frame { display:block; width:100%; height:270px; min-height:238px; border:0; overflow:hidden; background:transparent; }
.special-experience.is-home .special-experience-frame { height:250px; }
.special-experience[data-special-mode="mini"] { height:238px; min-height:238px; }
.special-experience[data-special-mode="mini"] .special-experience-frame { height:238px; min-height:238px; }
.special-experience-status { position:absolute; inset:0; z-index:2; display:grid; place-content:center; gap:9px; padding:20px; color:var(--text-secondary); background:radial-gradient(circle at 50% 18%,color-mix(in srgb,var(--accent-primary) 16%,transparent),transparent 46%),var(--surface-elevated); text-align:center; }
.special-experience-status[hidden] { display:none; }
.special-experience-status > span:first-child { color:var(--accent-gold); font-size:2rem; }
.special-experience-status a { color:var(--accent-primary); font-weight:750; }
.special-experience.is-ready .special-experience-frame { animation:special-reveal var(--motion-normal) ease both; }
@keyframes special-reveal { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:none; } }

@media (max-width:1180px) {
  .tarot-ambient-card { right:2rem; opacity:.34; }
  .tarot-ambient-card-back { opacity:.2; }
  .vedmali-choice-grid { grid-template-columns:1fr 1fr; }
  .vedmali-choice:first-child { grid-column:1 / -1; min-height:220px; }
}

@media (max-width:900px) {
  .magic-hero { min-height:auto; }
  .tarot-ambient-art { opacity:.42; }
  .tarot-ambient-card { right:-2rem; bottom:-24%; width:200px; }
  .tarot-stage { min-height:430px; }
  .vedmali-relationship,.vedmali-tarot-story { grid-template-columns:1fr; }
  .vedmali-relationship-visual { min-height:480px; }
  .vedmali-tarot-story { padding-bottom:0; }
  .vedmali-depth { align-items:flex-start; flex-direction:column; }
  .catalog-grid .app-card:first-child { grid-column:auto; grid-template-columns:1fr; }
  .catalog-grid .app-card:first-child .game-cover { min-height:210px; }
}

@media (max-width:620px) {
  .magic-hero { padding:24px 18px; border-radius:26px; }
  .magic-hero-copy { padding-bottom:190px; }
  .magic-hero .hero-feature + * { position:relative; }
  .tarot-ambient-card { right:50%; bottom:-11rem; width:180px; }
  .tarot-ambient-card-front { transform:translateX(64%) rotate(7deg); opacity:.62; }
  .tarot-ambient-card-back { transform:translateX(14%) rotate(-9deg); opacity:.3; }
  .tarot-hero .magic-hero-copy { padding-bottom:0; }
  .tarot-stage { min-height:390px; }
  .tarot-flip-card { width:min(245px,72vw); }
  .vedmali-choice-grid { grid-template-columns:1fr; }
  .vedmali-choice:first-child { grid-column:auto; }
  .vedmali-choice { min-height:220px; }
  .vedmali-relationship { border-radius:26px; }
  .vedmali-relationship-visual { min-height:420px; }
  .vedmali-signature-card { width:230px; }
  .vedmali-relationship-copy { padding:28px 20px 30px; }
  .vedmali-moon { grid-template-columns:auto 1fr; }
  .vedmali-moon .button { grid-column:1 / -1; }
  .vedmali-tarot-story { padding:28px 20px 0; border-radius:26px; }
  .vedmali-tarot-fan { min-height:340px; transform:scale(.82); }
  .vedmali-depth { padding:26px 20px; }
}

@media (max-width:1320px) {
  .app-shell.has-right-rail { grid-template-columns:minmax(184px,var(--left)) minmax(0,var(--content)); }
  .app-shell.has-right-rail .right-rail { display:none; }
  .app-shell.has-right-rail .right-rail.has-special-experience { display:grid; grid-column:2; position:static; }
  .right-rail.has-special-experience > .rail-widget { display:none; }
}

@media (max-width:1080px) {
  .mobile-menu-button { display:inline-flex; }
  .app-shell,.app-shell.has-right-rail { display:block; padding:20px var(--content-gutter) 64px; }
  .left-sidebar { position:fixed; z-index:70; top:var(--topbar); left:0; bottom:0; width:min(84vw,300px); height:auto; padding:18px; background:var(--bg-secondary); border-right:1px solid var(--border-soft); box-shadow:24px 0 70px rgb(0 0 0 / .34); transform:translateX(-105%); transition:transform var(--motion-normal); }
  .drawer-open .left-sidebar { transform:translateX(0); }
  .drawer-backdrop { position:fixed; inset:var(--topbar) 0 0; z-index:60; background:rgb(0 0 0 / .48); backdrop-filter:blur(3px); }
  .drawer-open .drawer-backdrop { display:block; }
}

@media (max-width:768px) {
  .home-secondary-experiences { grid-template-columns:1fr; gap:14px; }
  .home-secondary-experiences .daily-tarot-mini,.right-rail .daily-tarot-mini { --daily-mini-preview-min:78px; --daily-mini-preview-fluid:24%; --daily-mini-preview-max:96px; min-block-size:0; }
  .special-experience,.special-experience.is-rail { min-height:0; border-radius:22px; }
  .special-experience-frame,.special-experience.is-home .special-experience-frame { height:250px; }
  .app-topbar { gap:8px; padding-inline:10px; }
  .search-box { display:none; }
  .top-actions { margin-left:auto; gap:6px; }
  .auth-user { max-width:130px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .article-detail { padding:24px 18px; border-radius:var(--radius-lg); }
  .article-detail .post-media { margin-inline:-8px; border-radius:var(--radius-md); }
  .comments-panel { padding:22px 16px; }
  .comment-row { padding:14px 8px; }
  .article-inline-image-left,.article-inline-image-right { float:none; width:100%; max-width:100%; margin-inline:0; }
  .daily-tarot { min-height:620px; padding:28px 14px; }
  .daily-tarot-stage { min-height:360px; }
  .daily-fan { height:300px; transform:scale(.88); }
  .daily-card-back { width:132px; }
  .daily-detail-grid { grid-template-columns:1fr; }
  .daily-next { align-items:stretch; flex-direction:column; }
  .daily-deep-grid { grid-template-columns:1fr; }
}

@media (max-width:390px) {
  .daily-tarot-mini { --daily-mini-preview-min:74px; --daily-mini-preview-fluid:26%; --daily-mini-preview-max:88px; padding:12px; }
  .brand > span:last-child { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
  .auth-user { max-width:92px; }
  .star-balance { padding-inline:8px; }
  .button { padding-inline:15px; }
  .hero-actions { align-items:stretch; }
  .hero-actions .button { width:100%; }
  .vedmali-moon { grid-template-columns:1fr; text-align:center; }
  .vedmali-moon-disc { margin-inline:auto; }
  .vedmali-moon .button { grid-column:auto; width:100%; }
  .vedmali-tarot-fan { margin-inline:-38px; }
  .daily-fan { width:430px; max-width:none; transform:scale(.72); }
  .daily-selected-card { width:250px; }
  .daily-result { padding:24px 16px; }
  .daily-result-heading { align-items:flex-start; }
}

/* A calm, consistently spaced account cluster across public pages. */
.app-topbar {
  column-gap:clamp(10px,1.4vw,20px);
}

.app-topbar > *,
.app-shell > * {
  min-width:0;
}

.top-actions {
  flex:0 0 auto;
  margin-left:auto;
  gap:8px;
  padding:4px;
  border:1px solid color-mix(in srgb,var(--border) 82%,transparent);
  border-radius:18px;
  background:color-mix(in srgb,var(--surface) 58%,transparent);
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .04);
  backdrop-filter:blur(16px);
}

.auth-area {
  min-width:0;
  gap:8px;
}

.auth-menu {
  min-width:0;
}

.auth-user {
  max-width:min(230px,22vw);
  gap:9px;
  padding:5px 13px 5px 7px;
}

.auth-user__avatar {
  display:grid;
  flex:0 0 28px;
  width:28px;
  height:28px;
  place-items:center;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--accent-gold) 35%,var(--border));
  border-radius:10px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 76%,var(--surface)),color-mix(in srgb,var(--accent-gold) 34%,var(--surface)));
  color:var(--text-primary);
  font-family:var(--font-display);
  font-size:.82rem;
  line-height:1;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / .12);
}

.auth-user__label {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

@media (max-width:1080px) {
  .top-actions {
    gap:5px;
    border-radius:17px;
  }

  .search-box {
    min-width:160px;
  }
}

.site-info {
  display:grid;
  gap:clamp(22px,3vw,38px);
}

.site-info__hero,
.site-info__section {
  padding:clamp(24px,4vw,58px);
  border:1px solid var(--border);
  border-radius:clamp(24px,3vw,36px);
  background:color-mix(in srgb,var(--surface) 88%,transparent);
  box-shadow:var(--shadow-card);
}

.site-info__hero {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 88% 18%,color-mix(in srgb,var(--accent) 28%,transparent),transparent 24rem),
    color-mix(in srgb,var(--surface) 90%,transparent);
}

.site-info__hero h1 {
  max-width:14ch;
  margin:.2em 0;
}

.site-info__hero .lead,
.site-info__section > p {
  max-width:68ch;
}

.site-info__grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.site-info__item {
  min-width:0;
  padding:22px;
  border:1px solid var(--border);
  border-radius:20px;
  background:var(--surface-soft);
}

.site-info__item h2,
.site-info__item h3 {
  margin-top:0;
}

@media (max-width:768px) {
  .site-info__grid { grid-template-columns:1fr; }
  .site-info__hero,.site-info__section { padding:22px 18px; }
}

@media (max-width:768px) {
  .app-topbar {
    padding-left:max(10px,env(safe-area-inset-left));
    padding-right:max(10px,env(safe-area-inset-right));
  }

  .auth-area {
    gap:5px;
  }

  .auth-user {
    max-width:132px;
    min-height:36px;
    padding-block:3px;
  }
}

@media (max-width:480px) {
  .app-topbar {
    height:60px;
    gap:7px;
  }

  .mobile-menu-button,
  .theme-toggle {
    width:34px;
    height:34px;
  }

  .brand-mark {
    width:32px;
    height:32px;
  }

  .top-actions {
    gap:4px;
    padding:3px;
    border-radius:15px;
  }

  .star-balance {
    min-height:34px;
    padding-inline:7px;
  }

  .auth-user {
    width:34px;
    min-width:34px;
    max-width:34px;
    min-height:34px;
    padding:3px;
    border-radius:12px;
  }

  .auth-user__avatar {
    flex-basis:26px;
    width:26px;
    height:26px;
    border-radius:9px;
  }

  .auth-user__label {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    margin:-1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
  }

  .top-actions .button-primary {
    min-height:34px;
    padding-inline:12px;
  }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

/* Persistent personal widget slots */
.personal-space{min-width:0;display:grid;gap:14px;padding:16px;border:1px solid color-mix(in srgb,var(--accent-primary) 24%,var(--border-soft));border-radius:var(--radius-xl);background:radial-gradient(circle at 12% 0,color-mix(in srgb,var(--accent-primary) 12%,transparent),transparent 42%),var(--surface-soft)}
.personal-space__head{display:grid;gap:3px}.personal-space__head p,.personal-space__head h2{margin:0}.personal-space__head h2{font-size:1.25rem}.personal-space__widgets{display:grid;gap:14px}.personal-widget{min-width:0}.personal-space--mobile{display:none;margin-bottom:24px}.personal-space--rail{position:relative}.right-rail.has-personal-space{align-content:start}
.personal-widget[data-personal-widget="personal.moon"] .special-experience{border:0;background:transparent;box-shadow:none}
.personal-widget[data-personal-widget="personal.moon"] .special-experience-status{border:1px solid var(--border-soft);border-radius:inherit}
.daily-tarot-mini{display:block;padding:0}.daily-tarot-mini__primary{display:grid;grid-template-columns:minmax(0,clamp(70px,29%,92px)) minmax(0,1fr);gap:12px;align-items:center;padding:12px;color:var(--text-primary)}
.daily-tarot-mini__history{padding:0 12px 12px;border-top:1px solid var(--border-soft)}.daily-tarot-mini__history-head{display:flex;justify-content:space-between;gap:10px;padding:10px 0 7px;color:var(--text-muted);font-size:.72rem;font-weight:750;text-transform:uppercase;letter-spacing:.06em}.daily-tarot-mini__history-head a{color:var(--accent-primary);text-transform:none;letter-spacing:0}.daily-tarot-mini__history ol{display:grid;gap:5px;margin:0;padding:0;list-style:none}.daily-tarot-mini__history li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:7px;font-size:.78rem}.daily-tarot-mini__history time{color:var(--text-muted)}.daily-tarot-mini__history li a{overflow:hidden;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap}.daily-tarot-mini__history-empty{display:block;padding:10px 12px;border-top:1px solid var(--border-soft);color:var(--accent-primary);font-size:.78rem;font-weight:750}
.tarot-history-page{display:grid;gap:24px}.tarot-history-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}.tarot-history-card{display:grid;grid-template-columns:88px minmax(0,1fr);gap:16px;align-items:center;padding:16px;border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:var(--surface-elevated)}.tarot-history-card__art{display:grid;place-items:center;aspect-ratio:2/3;overflow:hidden;border-radius:12px;background:var(--surface-soft)}.tarot-history-card__art img{width:100%;height:100%;object-fit:cover}.tarot-history-card time{color:var(--accent-gold);font-size:.78rem}.tarot-history-card h2{margin:.25rem 0;font-size:1.25rem}.tarot-history-card p{margin:0;color:var(--text-secondary);line-height:1.5}
@media(max-width:1480px){.personal-space--mobile{display:grid}.personal-space--mobile .personal-space__widgets{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}}
@media(max-width:620px){.personal-space{padding:14px;border-radius:22px}.personal-space--mobile .personal-space__widgets{grid-template-columns:1fr}.daily-tarot-mini__primary{grid-template-columns:78px minmax(0,1fr)}.tarot-history-card{grid-template-columns:76px minmax(0,1fr)}}

/* Vedmali editorial reading experience */
.reading-index-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(24px,5vw,72px);align-items:end;margin-bottom:clamp(34px,6vw,76px);padding:clamp(28px,5vw,64px) clamp(20px,4vw,52px);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-2) 20%,var(--border));border-radius:var(--radius-xl);background:radial-gradient(circle at 86% 12%,color-mix(in srgb,var(--accent-2) 18%,transparent),transparent 34%),linear-gradient(145deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--accent-soft) 42%,var(--surface-2)));box-shadow:var(--shadow-card)}
.reading-index-hero::after{content:"✦";position:absolute;right:5%;top:12%;color:color-mix(in srgb,var(--accent-gold) 42%,transparent);font-size:clamp(2rem,5vw,4rem);filter:drop-shadow(0 0 20px color-mix(in srgb,var(--accent-gold) 28%,transparent));pointer-events:none}.reading-index-hero h1{max-width:12ch;margin:.2em 0 .25em}.reading-index-hero .lead{margin:0}.reading-index-hero__actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-end}.reading-soft-action,.reading-index-hero__actions a{appearance:none;border:0;background:none;color:var(--text-secondary);font:750 .88rem var(--font-body);text-decoration:none;cursor:pointer}.reading-soft-action:hover,.reading-index-hero__actions a:hover{color:var(--accent-gold)}.reading-follow-count{color:var(--text-muted);font-size:.82rem}
.reading-section-heading{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:clamp(18px,3vw,30px)}.reading-section-heading h2,.reading-section-heading p{margin:.25rem 0 0}.reading-section-heading>p{max-width:34ch;color:var(--text-muted);font-size:.9rem;text-align:right}.reading-resume,.reading-feed,.reading-experiences{width:min(100%,980px);margin:0 auto clamp(42px,7vw,84px)}.reading-resume{padding:clamp(18px,3vw,28px);border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface-raised) 88%,transparent)}.reading-resume__list{display:grid;gap:10px}.reading-resume__list>a{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 16px;padding:13px 2px;color:var(--text);text-decoration:none}.reading-resume__list>a+a{border-top:1px solid var(--border-soft)}.reading-resume__list small{font-size:.78rem}.reading-resume__list i{grid-column:1/-1;height:2px;overflow:hidden;border-radius:9px;background:var(--border-soft)}.reading-resume__list i::after{content:"";display:block;width:var(--reading-progress);height:100%;background:linear-gradient(90deg,var(--accent-2),var(--accent-gold))}
.reading-feed__list{display:grid}.reading-feed-item{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:clamp(20px,4vw,44px);align-items:center;padding:clamp(22px,4vw,40px) 0;border-top:1px solid var(--border-soft)}.reading-feed-item:last-child{border-bottom:1px solid var(--border-soft)}.reading-feed-item__media{display:grid;place-items:center;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius-lg);background:radial-gradient(circle at 70% 20%,color-mix(in srgb,var(--accent-2) 22%,transparent),transparent 38%),var(--surface-muted);text-decoration:none}.reading-feed-item__media picture,.reading-feed-item__media img{display:block;width:100%;height:100%;object-fit:cover}.reading-feed-item__content{min-width:0}.reading-feed-item__meta,.reading-feed-item__byline,.reading-feed-item__tags{display:flex;flex-wrap:wrap;gap:7px 10px;align-items:center;color:var(--text-muted);font-size:.8rem}.reading-kicker{color:var(--accent-gold);font-size:.73rem;font-weight:800;letter-spacing:.13em;text-decoration:none;text-transform:uppercase}.reading-feed-item__reason{margin:8px 0 0;color:var(--accent-2);font-size:.8rem;font-weight:750}.reading-feed-item h2{margin:10px 0 9px;font-size:clamp(1.45rem,2.6vw,2.25rem);line-height:1.08}.reading-feed-item h2 a{color:inherit;text-decoration:none}.reading-feed-item h2 a:hover{color:var(--accent-gold)}.reading-feed-item__excerpt{display:-webkit-box;margin:0 0 14px;overflow:hidden;color:var(--text-secondary);line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:3}.reading-feed-item__tags{margin-top:10px}.reading-feed-item__tags a{color:var(--text-muted);text-decoration:none}.reading-feed-item__cta{display:inline-flex;gap:7px;margin-top:16px;color:var(--accent-gold);font-size:.9rem;font-weight:850;text-decoration:none}.reading-feed-item.is-featured{grid-template-columns:minmax(0,1.12fr) minmax(280px,.88fr);padding-top:0;border-top:0}.reading-feed-item.is-featured .reading-feed-item__media{aspect-ratio:16/11}.reading-feed-item.is-featured h2{font-size:clamp(2rem,4vw,3.5rem)}.reading-empty{display:grid;place-items:center;min-height:300px;padding:40px;text-align:center}.reading-empty span{color:var(--accent-gold);font-size:2.4rem}.reading-empty h2{margin:12px 0 4px}.reading-empty p{color:var(--text-muted)}
.reading-article{width:min(100%,1040px);margin-inline:auto}.reading-article-hero{position:relative;padding:clamp(28px,6vw,72px);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-2) 20%,var(--border));border-radius:var(--radius-xl);background:radial-gradient(circle at 88% 10%,color-mix(in srgb,var(--accent-2) 16%,transparent),transparent 32%),linear-gradient(150deg,color-mix(in srgb,var(--surface) 96%,transparent),color-mix(in srgb,var(--accent-soft) 35%,var(--surface-2)));box-shadow:var(--shadow-card)}.reading-article-hero__ornament{position:absolute;right:7%;top:8%;color:color-mix(in srgb,var(--accent-gold) 50%,transparent);font-size:clamp(2rem,5vw,4.5rem);filter:drop-shadow(0 0 22px color-mix(in srgb,var(--accent-2) 32%,transparent))}.reading-back-link{display:inline-flex;margin-bottom:clamp(30px,5vw,60px);color:var(--text-muted);font-size:.84rem;font-weight:750;text-decoration:none}.reading-article-hero h1{position:relative;max-width:16ch;margin:.22em 0 .3em;font-size:clamp(2.45rem,6vw,5.4rem);line-height:.98}.reading-article-hero__lead{max-width:62ch;margin:0;color:var(--text-secondary);font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.72}.reading-article-meta{display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(3,minmax(110px,1fr));gap:14px;margin-top:clamp(30px,5vw,52px);padding-top:22px;border-top:1px solid var(--border-soft)}.reading-article-author{display:flex;gap:10px;align-items:center}.reading-article-author>img,.reading-article-author>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid color-mix(in srgb,var(--accent-2) 24%,var(--border));border-radius:50%;background:var(--surface-muted);object-fit:cover;color:var(--accent-gold);font-family:var(--font-display);font-size:1.15rem}.reading-article-author div,.reading-article-meta__fact,.reading-article-meta__comments{display:grid;gap:3px;min-width:0}.reading-article-meta small{color:var(--text-muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.reading-article-meta strong,.reading-article-meta a,.reading-article-meta span,.reading-article-meta time{overflow:hidden;color:var(--text-secondary);font-size:.86rem;text-overflow:ellipsis;text-decoration:none;white-space:nowrap}.reading-author-note{margin:18px 0 0;color:var(--text-muted);font-size:.86rem}.reading-author-note span{color:var(--accent-gold)}.reading-taxonomy{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.reading-taxonomy a{padding:8px 12px;border:1px solid var(--border-soft);border-radius:999px;background:color-mix(in srgb,var(--surface-muted) 82%,transparent);color:var(--text-secondary);font-size:.78rem;text-decoration:none;transition:border-color var(--transition),color var(--transition),background var(--transition)}.reading-taxonomy a:hover,.reading-taxonomy a.is-primary{border-color:color-mix(in srgb,var(--accent-gold) 38%,var(--border));background:color-mix(in srgb,var(--accent-soft) 72%,transparent);color:var(--accent-gold)}.reading-article-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:24px}.reading-save-action{display:inline-flex;gap:8px;align-items:center;min-height:42px;padding:0 16px;border:1px solid color-mix(in srgb,var(--accent-2) 28%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--surface-raised) 82%,transparent);color:var(--text);font:800 .85rem var(--font-body);cursor:pointer}.reading-save-action[aria-pressed="true"]{border-color:color-mix(in srgb,var(--accent-gold) 52%,var(--border));background:var(--accent-soft);color:var(--accent-gold)}.reading-article-actions>a{color:var(--text-muted);font-size:.84rem;font-weight:750;text-decoration:none}.reading-article-cover{width:min(94%,980px);margin:clamp(24px,5vw,54px) auto 0;overflow:hidden;border-radius:var(--radius-xl);box-shadow:0 28px 70px rgb(0 0 0/.2)}.reading-article-cover picture,.reading-article-cover img{display:block;width:100%;max-height:620px;object-fit:cover}.reading-resume-prompt{display:flex;flex-wrap:wrap;gap:12px;align-items:center;width:min(100%,760px);margin:30px auto;padding:18px 20px;border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:var(--surface-soft)}.reading-resume-prompt>div{flex:1 1 240px}.reading-resume-prompt p{margin:0 0 4px}.reading-article-body.article-content{width:min(100% - 36px,68ch);max-width:none;margin:clamp(46px,8vw,92px) auto;color:var(--text-primary);font-size:clamp(1.05rem,1.4vw,1.18rem);line-height:1.92}.reading-article-body>p{margin:0 0 1.55em}.reading-article-body h2{margin:2.6em 0 .75em;font-size:clamp(1.75rem,3vw,2.6rem)}.reading-article-body h3{margin:2.1em 0 .65em}.reading-article-body ul,.reading-article-body ol{margin:1.4em 0;padding-left:1.35em}.reading-article-body li+li{margin-top:.55em}.reading-article-body strong{color:var(--text);font-weight:800}.reading-article-body a{color:var(--accent-gold);text-decoration-thickness:1px;text-underline-offset:3px}.reading-article-body blockquote{margin:2.2em -1.4em;padding:1.3em 1.5em;border-inline-start:2px solid var(--accent-gold);border-radius:0 var(--radius-lg) var(--radius-lg) 0;background:linear-gradient(110deg,color-mix(in srgb,var(--accent-soft) 72%,transparent),transparent);font-family:var(--font-display);font-size:1.14em;line-height:1.7}.reading-source-note{width:min(100% - 36px,68ch);margin:0 auto clamp(44px,7vw,82px);padding:18px 20px;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);color:var(--text-muted)}.reading-source-note span{font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.reading-source-note p{margin:7px 0 0}.reading-source-note a{color:var(--text-secondary)}
.reading-reactions.article-reactions{width:min(100%,860px);margin:0 auto clamp(30px,5vw,56px);padding:clamp(24px,4vw,40px);border:1px solid color-mix(in srgb,var(--accent-2) 22%,var(--border));border-radius:var(--radius-xl);background:radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--accent-2) 15%,transparent),transparent 38%),var(--surface-raised);text-align:center;box-shadow:var(--shadow-card)}.reading-reactions h2{margin:.3rem 0}.reading-reactions>p:not(.eyebrow):not(.form-status){margin:0 auto 20px;color:var(--text-muted)}.reading-reactions .reaction-buttons{justify-content:center}.reading-reactions .reaction-buttons button{display:inline-flex;gap:9px;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--border-soft);border-radius:999px;background:color-mix(in srgb,var(--surface-muted) 82%,transparent);color:var(--text-secondary);font:750 .86rem var(--font-body);cursor:pointer}.reading-reactions .reaction-buttons button:hover,.reading-reactions .reaction-buttons button[aria-pressed="true"]{border-color:color-mix(in srgb,var(--accent-gold) 45%,var(--border));background:var(--accent-soft);color:var(--accent-gold);outline:0}.reading-reactions .reaction-buttons strong{font-size:.75rem}
.reading-continuation.article-recommendations{width:min(100%,980px);margin:0 auto clamp(36px,6vw,68px);padding:clamp(22px,4vw,38px);border-radius:var(--radius-xl)}.reading-continuation__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.reading-continuation__item{display:grid;grid-template-columns:116px minmax(0,1fr);gap:16px;align-items:start;padding:14px;border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface-muted) 72%,transparent)}.reading-continuation__image{display:grid;place-items:center;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent-gold);text-decoration:none}.reading-continuation__image picture,.reading-continuation__image img{width:100%;height:100%;object-fit:cover}.reading-continuation__reason{margin:0;color:var(--accent-2);font-size:.74rem;font-weight:750}.reading-continuation__item h3{margin:5px 0 8px}.reading-continuation__item h3 a{color:inherit;text-decoration:none}.reading-continuation__meta{display:flex;gap:6px;color:var(--text-muted);font-size:.75rem}.reading-continuation .recommendation-actions{margin-top:10px}.reading-continuation .reading-feed-item__cta{margin-top:0}.reading-continuation .reading-soft-action{font-size:.75rem}
.reading-experiences__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.reading-experiences__list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px;border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:linear-gradient(140deg,color-mix(in srgb,var(--surface-raised) 94%,transparent),color-mix(in srgb,var(--accent-soft) 36%,transparent));color:inherit;text-decoration:none}.reading-experiences__list>a>span{display:grid;place-items:center;width:46px;height:46px;border-radius:16px;background:var(--surface-muted);font-size:1.35rem}.reading-experiences__list small{display:block}.reading-experiences__list strong{display:block;margin:3px 0}.reading-experiences__list p{display:-webkit-box;margin:0;overflow:hidden;color:var(--text-muted);font-size:.82rem;-webkit-box-orient:vertical;-webkit-line-clamp:2}.reading-experiences__list i{color:var(--accent-gold);font-style:normal}
.reading-comments.comments-panel{width:min(100%,900px);margin:0 auto;padding:clamp(24px,5vw,48px);border-color:color-mix(in srgb,var(--accent-2) 18%,var(--border));background:linear-gradient(155deg,color-mix(in srgb,var(--surface-raised) 96%,transparent),color-mix(in srgb,var(--accent-soft) 26%,var(--surface-2)))}.reading-comments .section-head>div>p:last-child{max-width:56ch;color:var(--text-muted)}.reading-comments .comment-form{border-color:color-mix(in srgb,var(--accent-2) 20%,var(--border));background:color-mix(in srgb,var(--surface) 72%,transparent)}.comments-empty{display:grid;place-items:center;margin:20px 0;padding:30px;border:1px dashed color-mix(in srgb,var(--accent-2) 26%,var(--border));border-radius:var(--radius-lg);color:var(--text-muted);text-align:center}.comments-empty[hidden]{display:none}.comments-empty span{color:var(--accent-gold);font-size:1.5rem}.comments-empty strong{margin-top:8px;color:var(--text)}.comments-empty p{margin:4px 0 0}
@media(max-width:900px){.reading-index-hero{grid-template-columns:1fr}.reading-index-hero__actions{justify-content:flex-start}.reading-feed-item.is-featured{grid-template-columns:1fr}.reading-feed-item.is-featured .reading-feed-item__media{aspect-ratio:16/9}.reading-article-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-continuation__list{grid-template-columns:1fr}}
@media(max-width:680px){.reading-section-heading{align-items:flex-start;flex-direction:column}.reading-section-heading>p{text-align:left}.reading-feed-item,.reading-feed-item.is-featured{grid-template-columns:112px minmax(0,1fr);gap:16px;padding:22px 0}.reading-feed-item__media,.reading-feed-item.is-featured .reading-feed-item__media{aspect-ratio:4/3;border-radius:var(--radius-md)}.reading-feed-item.is-featured h2,.reading-feed-item h2{font-size:clamp(1.25rem,6vw,1.7rem)}.reading-feed-item__excerpt{-webkit-line-clamp:2}.reading-feed-item__tags{display:none}.reading-article-hero{padding:26px 20px}.reading-article-hero__ornament{right:18px}.reading-back-link{margin-bottom:34px}.reading-article-meta{grid-template-columns:1fr 1fr}.reading-article-author{grid-column:1/-1}.reading-article-meta__comments{grid-column:1/-1}.reading-article-actions{align-items:flex-start;flex-direction:column}.reading-article-cover{width:100%;border-radius:var(--radius-lg)}.reading-article-body blockquote{margin:2em 0}.reading-resume-prompt{align-items:stretch;flex-direction:column}.reading-continuation__item{grid-template-columns:88px minmax(0,1fr)}.reading-experiences__list{grid-template-columns:1fr}.reading-comments .section-head{align-items:flex-start;flex-direction:column}.reading-comments .comment-actions{align-items:stretch;flex-direction:column}.reading-comments .comment-actions .button{width:100%}.reading-reactions .reaction-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-reactions .reaction-buttons button{justify-content:space-between}}
@media(max-width:390px){.reading-feed-item,.reading-feed-item.is-featured{grid-template-columns:92px minmax(0,1fr);gap:13px}.reading-feed-item__excerpt{font-size:.9rem;line-height:1.55}.reading-feed-item__byline span:last-child{display:none}.reading-article-meta{grid-template-columns:1fr}.reading-article-author,.reading-article-meta__comments{grid-column:auto}.reading-reactions .reaction-buttons{grid-template-columns:1fr}.reading-continuation__item{grid-template-columns:72px minmax(0,1fr);gap:12px;padding:12px}.reading-continuation__meta{flex-wrap:wrap}.reading-experiences__list>a{grid-template-columns:auto minmax(0,1fr)}.reading-experiences__list i{display:none}}
.reading-feed-item__actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.reading-feed-item__actions .reading-soft-action{margin-top:16px;font-size:.76rem}
.article-recommendations.reading-feed{width:min(100%,980px);margin:clamp(34px,6vw,72px) auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.article-recommendations .reading-section-heading{margin-bottom:8px}.article-recommendations .reading-feed__list{display:grid}.article-recommendations .reading-feed-item:first-child{border-top:1px solid var(--border-soft)}

/* Vedmali UI Asset Kit */
.ui-icon,.ui-glyph,.ui-motif{display:inline-block;flex:0 0 auto;width:1.15em;height:1.15em;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.18em}.ui-icon--small{width:1em;height:1em}.ui-icon--gold{color:var(--accent-gold)}.ui-icon--muted{color:var(--text-muted)}.ui-icon[aria-disabled="true"],:disabled>.ui-icon{opacity:.42}.ui-glyph{width:42px;height:42px;color:var(--accent-gold);filter:drop-shadow(0 0 14px color-mix(in srgb,var(--accent-gold) 25%,transparent))}.ui-motif{width:56px;height:56px;color:var(--accent-gold);filter:drop-shadow(0 0 18px color-mix(in srgb,var(--accent-primary) 30%,transparent))}
.ui-icon.nav-icon{width:18px;height:18px;background:none;mask:none;-webkit-mask:none}.sidebar-subheading .nav-icon{margin-right:8px}.sidebar-card--personal{position:relative;overflow:hidden}.sidebar-card__glyph{position:absolute;right:8px;top:8px;width:46px;height:46px;opacity:.2}.star-balance .ui-icon{width:17px;height:17px}.stars-inline{display:inline-flex;gap:6px;align-items:center}.stars-inline .ui-icon{width:18px;height:18px}
.reading-index-hero::after{content:none}.reading-index-hero__asset{position:absolute;right:5%;top:10%;width:74px;height:74px;opacity:.3;pointer-events:none}.reading-article-hero__ornament .ui-glyph{width:100%;height:100%}.reading-article-meta__comments small,.reading-article-actions>a,.reading-comments .eyebrow,.daily-tarot-mini small,.daily-tarot-mini__history-head>span{display:inline-flex;gap:6px;align-items:center}.reading-save-action .ui-icon{width:17px;height:17px}.reading-reactions{position:relative;overflow:hidden}.reading-reactions__glyph{position:absolute;right:clamp(18px,4vw,38px);top:clamp(18px,4vw,32px);width:52px;height:52px;opacity:.24}.daily-tarot-mini__fallback .ui-motif{width:58%;height:58%}.comments-empty .ui-motif{width:42px;height:42px}
.ui-state{position:relative;isolation:isolate}.ui-state__visual{display:grid;place-items:center;width:84px;height:84px;margin-bottom:4px;border:1px solid color-mix(in srgb,var(--accent-primary) 20%,var(--border-soft));border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent-primary) 12%,transparent),transparent 68%)}.ui-state--warning .ui-state__visual{color:var(--warning)}.ui-state--success .ui-state__visual{color:var(--success)}.ui-state--unavailable .ui-state__visual{color:var(--danger)}.ui-state--locked .ui-state__visual{color:var(--accent-gold)}.ui-state--loading .ui-motif,.ui-state--preparing .ui-motif{animation:vedmali-orbit 2.4s linear infinite}
.has-experience-loader{min-height:280px}.experience-loading-shell{position:absolute;inset:0;z-index:3;display:grid;place-content:center;place-items:center;gap:8px;padding:24px;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--accent-primary) 17%,transparent),transparent 34%),linear-gradient(145deg,var(--surface-elevated),var(--surface-soft));color:var(--text-secondary);text-align:center;transition:opacity var(--motion-normal),visibility var(--motion-normal)}.experience-loading-shell[hidden],.is-experience-ready .experience-loading-shell{display:none}.experience-loading-shell strong{color:var(--text-primary);font-family:var(--font-display);font-size:1.18rem}.experience-loading-shell small{max-width:32ch}.experience-loading-motif{display:grid;place-items:center;width:78px;height:78px;margin-bottom:4px;border:1px solid color-mix(in srgb,var(--accent-gold) 24%,var(--border-soft));border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent-primary) 16%,transparent),transparent 68%)}.experience-loading-motif .ui-motif{width:52px;height:52px;animation:vedmali-orbit 2.8s linear infinite}.is-experience-slow .experience-loading-motif .ui-motif{animation-duration:4s}.zip-frame-shell.has-experience-loader iframe{position:relative;z-index:1}.special-experience-status .experience-loading-motif{margin-inline:auto}
@keyframes vedmali-orbit{to{transform:rotate(360deg)}}
@media(max-width:680px){.reading-index-hero__asset{right:14px;top:14px;width:54px;height:54px}.reading-reactions__glyph{width:38px;height:38px}.experience-loading-shell{min-height:240px}.ui-state__visual{width:72px;height:72px}}
@media(prefers-reduced-motion:reduce){.ui-state--loading .ui-motif,.ui-state--preparing .ui-motif,.experience-loading-motif .ui-motif{animation:none}}

/* Vedmali UI rescue: editorial lists, calm application hierarchy and resilient embeds. */
.reading-feed--compact{margin-top:clamp(24px,4vw,46px)}
.reading-feed-item.is-compact{grid-template-columns:minmax(112px,164px) minmax(0,1fr);gap:clamp(16px,3vw,28px);padding:20px 0}
.reading-feed-item.is-compact .reading-feed-item__media{aspect-ratio:4/3;border-radius:var(--radius-md)}
.reading-feed-item.is-compact h2{margin:7px 0;font-size:clamp(1.18rem,2vw,1.65rem)}
.reading-feed-item.is-compact .reading-feed-item__excerpt{-webkit-line-clamp:2;margin-bottom:9px;line-height:1.55}
.reading-feed-item__note{margin:8px 0 0;color:var(--text-secondary);font-size:.84rem}
.reading-feed-item__progress{display:block;width:min(100%,360px);height:6px;margin-top:10px;accent-color:var(--accent-primary)}
.reading-feed-item.is-text-only,.reading-feed-item.is-featured.is-text-only,.reading-feed-item.is-compact.is-text-only{grid-template-columns:minmax(0,1fr)}
.reading-feed-item.is-text-only .reading-feed-item__content{width:100%}
.reading-feed-item__discussion{display:grid;gap:8px;margin-top:15px;padding-top:13px;border-top:1px solid var(--border-soft)}
.reading-feed-item__discussion-head{display:flex;gap:14px;align-items:center;justify-content:space-between}.reading-feed-item__discussion-head>span{color:var(--accent-gold);font-size:.68rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.reading-feed-item__discussion-head>a{color:var(--text-muted);font-size:.7rem;font-weight:750;text-decoration:none}.reading-feed-item__discussion-head>a:hover,.reading-feed-item__discussion-head>a:focus-visible{color:var(--accent-gold)}
.reading-feed-item__discussion-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:8px}.reading-feed-item__comment{display:grid;gap:5px;min-width:0;padding:10px 11px;border:1px solid var(--border-soft);border-radius:13px;background:color-mix(in srgb,var(--surface-soft) 82%,transparent);color:inherit;text-decoration:none}.reading-feed-item__comment:hover,.reading-feed-item__comment:focus-visible{border-color:color-mix(in srgb,var(--accent-gold) 38%,var(--border-soft));background:color-mix(in srgb,var(--accent-soft) 34%,var(--surface-soft));outline:none}.reading-feed-item__comment>span{display:flex;gap:8px;align-items:center;justify-content:space-between;min-width:0}.reading-feed-item__comment strong{overflow:hidden;color:var(--text-secondary);font-size:.73rem;text-overflow:ellipsis;white-space:nowrap}.reading-feed-item__comment small{flex:0 0 auto;color:var(--text-muted);font-size:.64rem}.reading-feed-item__comment p{display:-webkit-box;margin:0;overflow:hidden;color:var(--text-muted);font-size:.75rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.reading-feed-item.is-compact .reading-feed-item__discussion{margin-top:10px;padding-top:10px}.reading-feed-item.is-compact .reading-feed-item__discussion-list{grid-template-columns:minmax(0,1fr)}
@media(max-width:680px){.reading-feed-item.is-text-only,.reading-feed-item.is-featured.is-text-only,.reading-feed-item.is-compact.is-text-only{grid-template-columns:minmax(0,1fr)}.reading-feed-item__discussion-list{grid-template-columns:minmax(0,1fr)}}

.application-catalog-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;padding:clamp(26px,5vw,58px) 0 26px;border-bottom:1px solid var(--border-soft)}
.application-catalog-hero h1{max-width:13ch;margin:.16em 0 .2em}.application-catalog-hero .lead{max-width:62ch;margin:0}
.application-catalog-hero+.catalog-filters{margin:18px 0 clamp(36px,6vw,72px)}
.application-presentation{display:grid;gap:18px;margin:0 0 clamp(46px,7vw,84px)}
.application-section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;padding-bottom:14px;border-bottom:1px solid var(--border-soft)}
.application-section-heading h2,.application-section-heading p{margin:0}.application-section-heading>p{max-width:43ch;color:var(--text-muted);font-size:.9rem;line-height:1.55}
.application-list,.application-compact-list{display:grid}.application-special-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.application-list-item{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);gap:clamp(16px,3vw,30px);align-items:center;padding:22px 0;border-bottom:1px solid var(--border-soft)}
.application-list-item__link{position:absolute;inset:0;z-index:2;border-radius:var(--radius-lg)}
.application-list-item__link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}
.application-list-item__visual{position:relative;display:grid;place-items:center;aspect-ratio:1;overflow:hidden;border:1px solid var(--border-soft);border-radius:var(--radius-lg);color:var(--accent-gold);background:radial-gradient(circle at 34% 25%,color-mix(in srgb,var(--accent-primary) 16%,transparent),transparent 50%),var(--surface-soft)}
.application-list-item__visual .ui-glyph{width:58%;height:58%;opacity:.62}.application-list-item__visual>span{position:absolute;right:9px;bottom:7px;font-size:1rem}
.application-list-item__content{min-width:0}.application-list-item__meta,.application-list-item__foot{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;color:var(--text-muted);font-size:.78rem}
.application-list-item__meta{text-transform:uppercase;letter-spacing:.09em}.application-list-item h2{margin:7px 0 6px;font-size:clamp(1.28rem,2.3vw,1.85rem)}.application-list-item p{max-width:66ch;margin:0 0 11px;color:var(--text-secondary);line-height:1.58}
.application-list-item__cta{margin-left:auto;color:var(--accent-primary);font-weight:800}.application-list-item:hover h2{color:var(--accent-primary)}
.application-list-item.is-featured{grid-template-columns:minmax(220px,.78fr) minmax(0,1.22fr);min-height:340px;padding:0;overflow:hidden;border:1px solid var(--border-highlight);border-radius:var(--radius-xl);background:radial-gradient(circle at 8% 12%,color-mix(in srgb,var(--accent-primary) 19%,transparent),transparent 44%),var(--surface-elevated);box-shadow:var(--shadow-card)}
.application-list-item.is-featured .application-list-item__visual{height:100%;aspect-ratio:auto;border:0;border-right:1px solid var(--border-soft);border-radius:0}.application-list-item.is-featured .application-list-item__visual .ui-glyph{width:58%;height:58%;opacity:.74}.application-list-item.is-featured .application-list-item__content{padding:clamp(24px,5vw,54px)}.application-list-item.is-featured h2{font-size:clamp(2rem,4vw,3.6rem);line-height:1.02}
.application-list-item.is-special{grid-template-columns:72px minmax(0,1fr);padding:18px;border:1px solid var(--border-soft);border-radius:var(--radius-lg);background:var(--surface)}.application-list-item.is-special h2{font-size:1.2rem}.application-list-item.is-special p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.88rem}.application-list-item.is-special .application-list-item__foot>span:not(.application-list-item__cta){display:none}
.application-list-item.is-compact{grid-template-columns:54px minmax(0,1fr);padding:14px 0}.application-list-item.is-compact h2{font-size:1.08rem}.application-list-item.is-compact p,.application-list-item.is-compact .application-list-item__foot>span:not(.application-list-item__cta){display:none}.application-list-item.is-compact .application-list-item__visual{border-radius:14px}

.magic-widget-embed-shell,.game-frame-placeholder.has-experience-loader{position:relative;isolation:isolate;min-height:280px;overflow:hidden;border-radius:inherit;background:var(--surface-soft)}
.magic-widget-embed-shell>iframe{position:relative;z-index:1;display:block;width:100%}.magic-hero.is-widget-full .magic-widget-embed-shell{width:100%;min-height:clamp(460px,72vh,820px)}
.magic-hero.is-widget-full .magic-widget-embed-shell .magic-widget-full-frame{height:100%;min-height:inherit}.magic-oracle-card .magic-widget-embed-shell{height:100%;min-height:0}.magic-oracle-card .magic-widget-home-frame{height:100%}
.is-experience-error .experience-loading-shell{background:linear-gradient(145deg,color-mix(in srgb,var(--danger) 7%,var(--surface-elevated)),var(--surface-soft))}.is-experience-error .experience-loading-motif{color:var(--danger);animation:none}.is-experience-error .experience-loading-motif .ui-motif{animation:none}.experience-loading-shell .button{margin-top:6px}.has-experience-loader[aria-busy="true"] iframe{opacity:.01}.is-experience-ready iframe{animation:experience-reveal var(--motion-normal) both}@keyframes experience-reveal{from{opacity:0}to{opacity:1}}

:root[data-theme=light] .magic-hero,:root[data-theme=light] .vedmali-relationship,:root[data-theme=light] .vedmali-tarot-story,:root[data-theme=light] .vedmali-depth{color:var(--text-primary);border-color:var(--border-highlight);background:radial-gradient(circle at 85% 10%,color-mix(in srgb,var(--accent-secondary) 13%,transparent),transparent 34%),linear-gradient(145deg,var(--surface-elevated),var(--surface-soft))}
:root[data-theme=light] .magic-hero .lead,:root[data-theme=light] .vedmali-relationship p,:root[data-theme=light] .vedmali-tarot-story p,:root[data-theme=light] .vedmali-depth p{color:var(--text-secondary)}
:root[data-theme=light] .personal-space,:root[data-theme=light] .rail-widget,:root[data-theme=light] .experience-loading-shell{box-shadow:0 10px 30px rgb(48 24 43/.08)}
:root[data-theme=light] .button-secondary{color:var(--text-primary);border-color:var(--border-highlight);background:var(--surface-elevated)}
:root[data-theme=light] .chip,:root[data-theme=light] .badge{color:var(--text-secondary)}

@media(max-width:1024px){.application-list-item.is-featured{grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr)}.application-special-list{grid-template-columns:1fr}.application-list-item__cta{margin-left:0}.application-section-heading{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:768px){.application-catalog-hero{grid-template-columns:1fr;gap:18px}.application-list-item.is-featured{grid-template-columns:1fr;min-height:0}.application-list-item.is-featured .application-list-item__visual{height:190px;border-right:0;border-bottom:1px solid var(--border-soft)}.reading-feed-item.is-compact{grid-template-columns:120px minmax(0,1fr)}}
@media(max-width:520px){.application-list-item{grid-template-columns:72px minmax(0,1fr);gap:14px;padding:18px 0}.application-list-item h2{font-size:1.18rem}.application-list-item p{font-size:.88rem}.application-list-item__foot>span:not(.application-list-item__cta){display:none}.application-list-item.is-featured .application-list-item__content{padding:22px}.application-list-item.is-featured h2{font-size:2rem}.reading-feed-item.is-compact{grid-template-columns:92px minmax(0,1fr);gap:14px}.reading-feed-item.is-compact .reading-feed-item__excerpt{display:none}.reading-feed-item.is-compact .reading-feed-item__byline{font-size:.72rem}}
@media(max-width:390px){.application-catalog-hero{padding-top:20px}.catalog-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;scrollbar-width:thin}.application-list-item.is-featured .application-list-item__visual{height:158px}.experience-loading-shell{padding:18px}.experience-loading-motif{width:64px;height:64px}}
@media(prefers-reduced-motion:reduce){.application-list-item,.application-list-item *,.is-experience-ready iframe{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* Daily Tarot personal-choice ritual. Closed cards stay CSS-only; one live card is mounted after selection. */
.daily-card-picker{width:min(100%,860px);display:grid;gap:18px;padding:18px;border:1px solid color-mix(in srgb,var(--accent-gold) 28%,var(--border-soft));border-radius:var(--radius-xl);background:color-mix(in srgb,var(--surface-elevated) 82%,transparent);box-shadow:var(--shadow-card)}
.daily-card-picker__head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-inline:6px}.daily-card-picker__head p{max-width:52ch;margin:0;color:var(--text-secondary);font-size:.9rem;text-align:left}
.daily-card-picker__rail{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:10px;align-items:center;min-width:0}
.daily-card-picker__arrow{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid var(--border-highlight);border-radius:50%;color:var(--text-primary);background:var(--surface-elevated);cursor:pointer}.daily-card-picker__arrow:hover:not(:disabled),.daily-card-picker__arrow:focus-visible{border-color:var(--accent-gold);outline:3px solid var(--focus-ring);outline-offset:2px}.daily-card-picker__arrow:disabled{opacity:.32;cursor:default}
.daily-card-strip{display:flex;gap:clamp(14px,3vw,24px);min-width:0;padding:20px max(12px,calc(50% - 76px));overflow-x:auto;overscroll-behavior-inline:contain;scroll-behavior:smooth;scroll-padding-inline:calc(50% - 76px);scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-y;cursor:grab}.daily-card-strip::-webkit-scrollbar{display:none}.daily-card-strip.is-dragging{cursor:grabbing;scroll-snap-type:none}
.daily-card-picker .daily-card-back{position:relative;inset:auto;left:auto;top:auto;flex:0 0 clamp(128px,24vw,152px);width:clamp(128px,24vw,152px);transform:none!important;scroll-snap-align:center;scroll-snap-stop:always}.daily-card-picker .daily-card-back:hover,.daily-card-picker .daily-card-back:focus-visible{z-index:2;transform:translateY(-8px) scale(1.025)!important}.daily-card-picker .daily-card-back.is-chosen{z-index:3;transform:translateY(-14px) scale(1.06)!important}.daily-card-picker .daily-card-back.is-dismissed{opacity:.18;filter:blur(2px)}
.daily-card-picker .daily-card-back:disabled:not(.is-chosen){cursor:wait}.daily-card-picker .daily-card-back span{background:rgb(15 12 23/.44);box-shadow:0 0 30px rgb(211 176 107/.12)}
.daily-tarot[data-state="SHUFFLING"] .daily-card-picker{opacity:.68}.daily-tarot[data-state="REVEALING"] .daily-card-picker{pointer-events:none}

.tarot-history-card{position:relative;transition:border-color var(--motion-fast),transform var(--motion-fast),box-shadow var(--motion-fast)}.tarot-history-card:hover{transform:translateY(-2px);border-color:var(--border-highlight);box-shadow:var(--shadow-card)}.tarot-history-card__open{position:absolute;inset:0;z-index:2;border:0;border-radius:inherit;background:transparent;cursor:pointer}.tarot-history-card__open:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.tarot-history-card .text-link{display:inline-block;margin-top:9px;color:var(--accent-primary);font-size:.82rem;font-weight:800}
.tarot-history-dialog{width:min(920px,calc(100% - 28px));max-height:min(88vh,820px);padding:0;overflow:auto;border:1px solid var(--border-highlight);border-radius:var(--radius-xl);color:var(--text-primary);background:var(--surface-elevated);box-shadow:0 30px 100px rgb(0 0 0/.52)}.tarot-history-dialog::backdrop{background:rgb(8 6 13/.78);backdrop-filter:blur(6px)}.tarot-history-dialog__close{position:absolute;z-index:4;right:14px;top:14px;background:var(--surface-elevated)}.tarot-history-dialog__visual{display:grid;place-items:center;min-height:520px;padding:28px;background:radial-gradient(circle at 50% 36%,color-mix(in srgb,var(--accent-primary) 19%,transparent),transparent 38%),var(--surface-soft)}.tarot-history-dialog__card{width:min(300px,70vw);aspect-ratio:2/3;border-radius:22px;filter:drop-shadow(0 28px 45px rgb(0 0 0/.38))}.tarot-history-dialog__copy{padding:24px clamp(22px,5vw,48px) 32px}.tarot-history-dialog__copy h2{margin:.3rem 0 .5rem}.tarot-history-dialog__copy p:last-child{max-width:64ch;margin:0;color:var(--text-secondary);line-height:1.65}

@media(max-width:768px){.daily-card-picker{padding:14px}.daily-card-picker__head{align-items:flex-start;flex-direction:column}.daily-card-strip{padding-block:14px}.tarot-history-dialog__visual{min-height:440px}.tarot-history-dialog__card{width:min(270px,72vw)}}
@media(max-width:520px){.daily-tarot-stage{min-height:390px}.daily-card-picker{width:calc(100% + 12px);margin-inline:-6px;border-radius:22px}.daily-card-picker__rail{grid-template-columns:minmax(0,1fr)}.daily-card-picker__arrow{display:none}.daily-card-strip{gap:16px;padding-inline:calc(50% - 64px);scroll-padding-inline:calc(50% - 64px)}.daily-card-picker .daily-card-back{flex-basis:128px;width:128px}.tarot-history-dialog{width:calc(100% - 16px);max-height:92vh}.tarot-history-dialog__visual{min-height:390px;padding:22px 12px}.tarot-history-dialog__copy{padding:20px}.tarot-history-dialog__card{width:min(244px,72vw)}}
@media(prefers-reduced-motion:reduce){.daily-card-strip{scroll-behavior:auto}.daily-card-picker .daily-card-back,.tarot-history-card{transition:none!important}.daily-tarot[data-state="SHUFFLING"] .daily-deck span{animation:none!important}}

/* Daily Tarot ritual polish: distinct choice and resolved states. */
.daily-tarot--ritual{min-height:680px;isolation:isolate}
.daily-tarot--ritual::before{content:"";position:absolute;inset:22% 8% 4%;z-index:-1;background:radial-gradient(ellipse at center,rgb(201 154 255/.1),transparent 64%);pointer-events:none}
.daily-tarot--selected{min-height:0;overflow:visible;padding:clamp(24px,4.5vw,56px);text-align:left;background:radial-gradient(circle at 23% 42%,rgb(143 92 171/.2),transparent 36%),linear-gradient(145deg,#100c18,#171020 58%,#0b0912)}
.daily-selected-summary{display:grid;grid-template-columns:minmax(220px,330px) minmax(0,1fr);gap:clamp(28px,6vw,80px);align-items:center;max-width:1040px;margin:auto}
.daily-selected-summary__visual{width:100%;aspect-ratio:2/3}
.daily-selected-summary__copy{display:grid;gap:14px;align-content:center}.daily-selected-summary__copy h1{margin:0;font-size:clamp(2.4rem,5vw,4.8rem)}.daily-selected-summary__copy .lead{max-width:58ch;margin:0}.daily-selected-summary__copy>small{color:var(--text-muted)}
.daily-selected-summary__meaning{max-width:58ch;margin:0;padding-left:18px;border-left:2px solid var(--accent-gold);color:var(--text-secondary);font-size:1.02rem;line-height:1.7}
.daily-tarot--resolved .daily-tarot-intro{opacity:.58}.daily-tarot--resolved .daily-tarot-stage{min-height:440px}
.daily-deck{transition:transform .32s ease,opacity .32s ease}.daily-deck span:nth-child(3){transform:translate(-4px,3px) rotate(-1deg)}.daily-deck span:nth-child(4){transform:translate(5px,2px) rotate(1.5deg)}.daily-deck span:nth-child(5){transform:translate(0,-2px)}
.daily-tarot[data-shuffle-phase="gather"] .daily-deck{transform:translateY(8px) scale(.96)}
.daily-tarot[data-shuffle-phase="mix"] .daily-deck span:nth-child(1){animation:daily-shuffle-left .48s ease-in-out 2 alternate}.daily-tarot[data-shuffle-phase="mix"] .daily-deck span:nth-child(2){animation:daily-shuffle-right .48s ease-in-out 2 alternate}.daily-tarot[data-shuffle-phase="mix"] .daily-deck span:nth-child(3){animation:daily-shuffle-cut-left .58s ease-in-out 2 alternate}.daily-tarot[data-shuffle-phase="mix"] .daily-deck span:nth-child(4){animation:daily-shuffle-cut-right .58s ease-in-out 2 alternate}.daily-tarot[data-shuffle-phase="mix"] .daily-deck span:nth-child(5){animation:daily-shuffle-lift .42s ease-in-out 2 alternate}
.daily-tarot[data-shuffle-phase="settle"] .daily-deck{transform:translateY(2px) scale(1.015)}
@keyframes daily-shuffle-cut-left{to{transform:translate(-66px,-4px) rotate(-12deg)}}@keyframes daily-shuffle-cut-right{to{transform:translate(66px,4px) rotate(12deg)}}@keyframes daily-shuffle-lift{to{transform:translateY(-17px) scale(1.02)}}
.daily-card-picker{width:min(100%,940px);padding:4px 0 0;border:0;background:transparent;box-shadow:none}
.daily-card-picker__head{padding-inline:52px}.daily-card-picker__head>div{display:grid;gap:4px;text-align:left}.daily-card-picker__head strong{font-family:var(--font-display);font-size:1.12rem}.daily-card-picker__rail{position:relative}.daily-card-picker__rail::before,.daily-card-picker__rail::after{content:"";position:absolute;z-index:1;top:8px;bottom:8px;width:42px;pointer-events:none}.daily-card-picker__rail::before{left:52px;background:linear-gradient(90deg,#130e1c,transparent)}.daily-card-picker__rail::after{right:52px;background:linear-gradient(-90deg,#130e1c,transparent)}
.daily-card-strip{mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.daily-card-picker .daily-card-back{box-shadow:0 20px 48px rgb(0 0 0/.42),inset 0 0 0 7px rgb(236 210 159/.055)}
:root[data-theme=light] .daily-tarot--selected,:root[data-theme=light] .daily-tarot--ritual{color:var(--text-primary);border-color:var(--border-highlight);background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--accent-secondary) 16%,transparent),transparent 42%),linear-gradient(145deg,var(--surface-elevated),var(--surface-soft))}
:root[data-theme=light] .daily-card-picker__rail::before{background:linear-gradient(90deg,var(--surface-soft),transparent)}:root[data-theme=light] .daily-card-picker__rail::after{background:linear-gradient(-90deg,var(--surface-soft),transparent)}
@media(max-width:768px){.daily-selected-summary{grid-template-columns:minmax(190px,260px) minmax(0,1fr);gap:28px}.daily-card-picker__head{padding-inline:6px}.daily-card-picker__rail::before{left:0}.daily-card-picker__rail::after{right:0}}
@media(max-width:620px){.daily-tarot--selected{padding:26px 18px}.daily-selected-summary{grid-template-columns:1fr;text-align:center}.daily-selected-summary__visual{width:min(260px,76vw);margin:auto}.daily-selected-summary__copy .lead,.daily-selected-summary__meaning{margin-inline:auto}.daily-selected-summary__meaning{text-align:left}.daily-selected-summary__copy .hero-actions{justify-content:center}.daily-tarot--ritual{min-height:620px}.daily-card-picker__head{align-items:stretch}.daily-card-picker__head .button{width:100%}}

/* TarotVisual owns the card frame; page surfaces provide breathing room, not another frame. */
.tarot-visual-shell{position:relative;display:grid;place-items:center;isolation:isolate;background:radial-gradient(circle at 50% 46%,color-mix(in srgb,var(--accent-gold) 12%,transparent),transparent 58%)}
.tarot-visual-shell>tarot-visual{position:relative;z-index:2;opacity:0;transition:opacity .35s ease}.tarot-visual-shell.is-ready>tarot-visual{opacity:1}.tarot-visual-loader{position:absolute;z-index:1;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;color:var(--text-muted);font-size:.78rem}.tarot-visual-loader>span:first-child{color:var(--accent-gold);font-size:2rem;animation:tarot-loader-pulse 1.3s ease-in-out infinite}.tarot-visual-shell.is-ready .tarot-visual-loader{opacity:0;visibility:hidden}.tarot-visual-shell.is-error .tarot-visual-loader{color:var(--danger)}
@keyframes tarot-loader-pulse{50%{opacity:.42;transform:scale(.88)}}
.daily-live-card{overflow:visible;border-radius:0;filter:none}.daily-selected-card{width:min(320px,82vw)}.daily-selected-card>.tarot-visual-shell{width:100%;height:100%;aspect-ratio:2/3}
.tarot-ambient-live{overflow:visible;border-radius:0}.vedmali-signature-card{border-radius:0;filter:none}
.tarot-ambient-card-front,.vedmali-signature-card{will-change:transform}.tarot-ambient-card-front{filter:drop-shadow(0 22px 38px rgb(0 0 0/.36))}.vedmali-signature-card{filter:drop-shadow(0 28px 46px rgb(0 0 0/.42))}
.vedmali-tarot-fan img{border:0;box-shadow:none}
@media(max-width:620px){.vedmali-tarot-fan{transform:none}.vedmali-tarot-fan img{width:min(190px,48vw)}}
@media(prefers-reduced-motion:reduce){.tarot-visual-loader>span:first-child{animation:none}.tarot-visual-shell>tarot-visual{transition:none}}

/* Lightweight tarot-native previews for Personal Space and history. */
.daily-tarot-mini{overflow:visible}.daily-tarot-mini__media{overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.daily-tarot-mini__card{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:2/3;overflow:hidden;padding:5px;border:1px solid color-mix(in srgb,var(--accent-gold) 58%,var(--border-highlight));border-radius:10px;background:linear-gradient(155deg,#2b1838,#100c18);box-shadow:0 13px 24px rgb(0 0 0/.28),inset 0 0 0 3px rgb(244 220 167/.08);transition:transform var(--motion-normal),filter var(--motion-normal)}
.daily-tarot-mini__card::after{content:"";position:absolute;inset:5px;z-index:2;border:1px solid rgb(242 218 165/.3);border-radius:6px;pointer-events:none}.daily-tarot-mini__media img{inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);border-radius:5px}.daily-tarot-mini__sigil{position:absolute;z-index:3;bottom:7px;left:50%;display:grid;place-items:center;width:18px;aspect-ratio:1;border-radius:50%;color:#f1d99e;background:rgb(19 12 27/.82);font:600 8px/1 var(--font-display);transform:translateX(-50%)}
.daily-tarot-mini__primary:hover .daily-tarot-mini__card,.daily-tarot-mini__primary:focus-visible .daily-tarot-mini__card{filter:brightness(1.06);transform:translateY(-2px) rotate(-.5deg)}.daily-tarot-mini__primary:focus-visible{border-radius:inherit;outline:3px solid var(--focus-ring);outline-offset:3px}
.personal-space .daily-tarot-mini{border:0;background:transparent;box-shadow:none}.personal-space .daily-tarot-mini:hover{transform:none}.personal-space .daily-tarot-mini__primary{padding:4px}.personal-space .daily-tarot-mini__history,.personal-space .daily-tarot-mini__history-empty{margin-top:8px;padding-inline:4px}
.tarot-history-card__art{overflow:visible;padding:5px;border:1px solid color-mix(in srgb,var(--accent-gold) 48%,var(--border-highlight));background:linear-gradient(155deg,#2b1838,#100c18);box-shadow:0 12px 22px rgb(0 0 0/.22),inset 0 0 0 3px rgb(244 220 167/.07)}.tarot-history-card__art img{border-radius:7px}
:root[data-theme=light] .daily-tarot-mini__card,:root[data-theme=light] .tarot-history-card__art{background:linear-gradient(155deg,color-mix(in srgb,var(--accent-secondary) 22%,var(--surface-elevated)),var(--surface-soft));box-shadow:0 10px 24px rgb(48 24 43/.13),inset 0 0 0 3px rgb(115 68 103/.05)}
@media(prefers-reduced-motion:reduce){.daily-tarot-mini__card{transition:none}}

/* History detail uses one on-demand renderer with an explicit loading state. */
.tarot-history-dialog{display:none;grid-template-columns:minmax(320px,.9fr) minmax(300px,1.1fr);overflow:hidden}.tarot-history-dialog[open]{display:grid}.tarot-history-dialog__visual{min-height:600px;padding:18px;overflow:visible}.tarot-history-dialog__shell{width:min(360px,100%);aspect-ratio:2/3}.tarot-history-dialog__card{width:100%;height:100%;border-radius:0;filter:none}.tarot-history-dialog__copy{display:grid;align-content:center;gap:12px;padding:clamp(28px,5vw,58px)}.tarot-history-dialog__copy h2{font-size:clamp(2rem,4vw,3.6rem)}.tarot-history-dialog__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}
@media(max-width:768px){.tarot-history-dialog[open]{display:block;overflow:auto}.tarot-history-dialog__visual{min-height:430px}.tarot-history-dialog__shell{width:min(280px,72vw);margin:auto}.tarot-history-dialog__copy{padding:24px}.tarot-history-dialog__copy h2{font-size:2rem}}
@media(max-width:390px){.tarot-history-dialog__visual{min-height:380px;padding:10px}.tarot-history-dialog__shell{width:min(250px,78vw)}.tarot-history-dialog__actions{display:grid}.tarot-history-dialog__actions .button{width:100%}}

/* Tarot bugfix pass: one stable glow, no decorative outer card strokes. */
.tarot-visual-shell{background:transparent}
.daily-tarot--selected{border-color:transparent;box-shadow:0 22px 58px rgb(0 0 0/.2)}
.daily-selected-summary .button-primary{border-color:color-mix(in srgb,var(--accent-gold) 34%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 72%,#3c2447),color-mix(in srgb,var(--accent-secondary) 68%,#26172f));box-shadow:0 8px 22px color-mix(in srgb,var(--accent-primary) 18%,transparent)}
.daily-selected-summary .button-primary:hover{filter:brightness(1.045);box-shadow:0 10px 26px color-mix(in srgb,var(--accent-primary) 22%,transparent);transform:translateY(-1px)}
.daily-selected-summary .button-primary:active{filter:brightness(.98);transform:translateY(0)}
.daily-selected-summary .button-primary:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;box-shadow:none}
.daily-tarot-mini__card,.tarot-history-card__art{border-color:transparent}
:root[data-theme=light] .daily-selected-summary .button-primary{color:#fff;background:linear-gradient(135deg,#795075,#5d3c61);box-shadow:0 8px 20px rgb(80 42 76/.16)}

/* A full-deck-length lightweight strip; visual variation is presentation-only. */
.daily-card-picker__head>small{color:var(--accent-gold);font-size:.72rem;letter-spacing:.04em}.daily-card-picker .daily-card-back{transform:translateY(var(--deck-lift,0)) rotate(var(--deck-angle,0deg))!important}.daily-card-picker .daily-card-back[data-back-variant="1"]{background:radial-gradient(circle at 50% 52%,rgb(211 175 105/.2),transparent 18%),repeating-radial-gradient(circle at center,transparent 0 19px,rgb(220 190 130/.08) 20px 21px),linear-gradient(155deg,#28183b,#110c1a)}.daily-card-picker .daily-card-back[data-back-variant="2"]{background:radial-gradient(circle at 50% 45%,rgb(190 151 220/.19),transparent 22%),repeating-conic-gradient(from 45deg,rgb(220 190 130/.06) 0 2deg,transparent 2deg 18deg),linear-gradient(145deg,#30203f,#110c19)}.daily-card-picker .daily-card-back[data-back-variant="3"]{background:radial-gradient(circle at center,transparent 0 24%,rgb(220 190 130/.1) 25% 26%,transparent 27%),linear-gradient(145deg,#342047,#120d1c)}
.daily-card-picker .daily-card-back:hover,.daily-card-picker .daily-card-back:focus-visible{transform:translateY(calc(var(--deck-lift,0px) - 8px)) rotate(0) scale(1.025)!important}.daily-card-picker .daily-card-back.is-chosen{transform:translateY(-14px) rotate(0) scale(1.06)!important}

/* Site-wide tarot surfaces: native card edges, unclipped decorative depth, calm timeline. */
.tarot-ambient-art{overflow:visible}.tarot-ambient-card{border:0;box-shadow:none}.tarot-ambient-card-back{border-radius:18px;filter:saturate(.94) contrast(1.025) drop-shadow(0 24px 38px rgb(0 0 0/.35))}.tarot-ambient-live{pointer-events:auto}
.vedmali-relationship-visual{overflow:visible}.vedmali-tarot-fan img{border:0;border-radius:14px;box-shadow:none;filter:drop-shadow(0 22px 34px rgb(0 0 0/.38));transition:filter var(--motion-normal),transform var(--motion-normal)}.vedmali-tarot-story:hover .vedmali-tarot-fan img{filter:drop-shadow(0 28px 42px rgb(0 0 0/.44)) brightness(1.025)}
.tarot-history-list{position:relative;grid-template-columns:1fr;gap:0;width:min(100%,860px);margin-inline:auto}.tarot-history-list::before{content:"";position:absolute;left:54px;top:24px;bottom:24px;width:1px;background:linear-gradient(var(--border-soft),color-mix(in srgb,var(--accent-gold) 35%,var(--border-soft)),var(--border-soft))}.tarot-history-card{grid-template-columns:92px minmax(0,1fr);gap:22px;padding:20px 10px;border:0;border-bottom:1px solid var(--border-soft);border-radius:0;background:transparent}.tarot-history-card:first-child{border-top:1px solid var(--border-soft)}.tarot-history-card:hover{border-color:var(--border-highlight);box-shadow:none;transform:translateX(3px)}.tarot-history-card__art{z-index:1;width:78px;padding:4px;border:0;border-radius:10px}.tarot-history-card__open:focus-visible{outline-offset:-2px}
:root[data-theme=light] .tarot-history-list::before{background:linear-gradient(var(--border-soft),color-mix(in srgb,var(--accent-secondary) 34%,var(--border-soft)),var(--border-soft))}
@media(max-width:620px){.tarot-history-list::before{left:44px}.tarot-history-card{grid-template-columns:72px minmax(0,1fr);gap:14px;padding-inline:4px}.tarot-history-card__art{width:64px}.tarot-history-card p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}}
@media(prefers-reduced-motion:reduce){.vedmali-tarot-fan img,.tarot-history-card{transition:none}.vedmali-tarot-story:hover .vedmali-tarot-fan img{filter:drop-shadow(0 22px 34px rgb(0 0 0/.38))}}

/* Daily Tarot state contract: resolved controls cannot override the hidden attribute. */
.daily-deck[hidden],.daily-card-picker[hidden],.daily-tarot-actions[hidden],.daily-selected-card[hidden],.daily-result[hidden]{display:none!important}
.daily-tarot[data-state="SELECTED"] .daily-deck,.daily-tarot[data-state="SELECTED"] .daily-card-picker,.daily-tarot[data-state="SELECTED"] .daily-tarot-actions{display:none!important}

/* Personal-space preview: a readable 2:3 card with an intentional covered state. */
.daily-tarot-mini__primary{grid-template-columns:minmax(0,clamp(94px,38%,112px)) minmax(0,1fr);gap:14px}
.daily-tarot-mini__card.is-covered{background:radial-gradient(circle at 50% 43%,rgb(231 196 125/.22),transparent 18%),repeating-radial-gradient(circle at 50% 43%,transparent 0 15px,rgb(231 196 125/.1) 16px 17px),linear-gradient(155deg,#352047,#100b18)}
.daily-tarot-mini__card.is-covered::before{content:"";position:absolute;z-index:1;inset:13%;border:1px solid rgb(239 210 150/.28);border-radius:50%;background:radial-gradient(circle,rgb(184 126 224/.2),transparent 56%);box-shadow:0 0 0 7px rgb(239 210 150/.045),0 0 24px rgb(157 93 203/.18);transform:rotate(45deg)}
.daily-tarot-mini__fallback{position:absolute;z-index:3;inset:25%;display:grid;place-items:center;color:#efd18c;filter:drop-shadow(0 0 10px rgb(190 126 230/.62))}.daily-tarot-mini__fallback .ui-motif{width:100%;height:100%}.daily-tarot-mini__card.is-revealed .daily-tarot-mini__fallback{display:none}
@media(max-width:620px){.daily-tarot-mini__primary{grid-template-columns:minmax(0,clamp(92px,29vw,106px)) minmax(0,1fr);gap:13px}}

/* Compact public typography: preserve hierarchy without spending a viewport on headings. */
h1{font-size:clamp(2.2rem,4.6vw,4.15rem);line-height:1;letter-spacing:-.045em}
h2{font-size:clamp(1.5rem,2.45vw,2.4rem)}
.application-catalog-hero h1,.catalog-heading-main h1{font-size:clamp(2.25rem,4.3vw,4rem)}
.magic-hero h1{font-size:clamp(2.05rem,4.5vw,3.85rem)}
.article-detail>h1,.reading-article-hero h1{font-size:clamp(2.2rem,4.5vw,4rem)}
.daily-tarot-intro h1,.daily-selected-summary__copy h1{font-size:clamp(2.2rem,4.4vw,4rem)}
.application-list-item.is-featured h2,.reading-feed-item.is-featured h2{font-size:clamp(1.85rem,3.4vw,3rem)}
.application-catalog-hero{gap:26px;padding:clamp(22px,3.5vw,42px) 0 20px}
.application-catalog-hero+.catalog-filters{margin:16px 0 clamp(30px,4.5vw,54px)}
.application-presentation{margin-bottom:clamp(34px,5vw,64px)}
.application-list-item.is-featured{min-height:300px}
.application-list-item.is-featured .application-list-item__content{padding:clamp(22px,4vw,42px)}
@media(max-width:620px){
  h1{font-size:clamp(2rem,9.4vw,2.8rem)}
  h2{font-size:clamp(1.4rem,6.5vw,2rem)}
  .application-catalog-hero{gap:16px;padding-top:18px}
  .application-list-item.is-featured h2,.reading-feed-item.is-featured h2{font-size:clamp(1.75rem,8vw,2.3rem)}
}

/* Vedmali wide shell 2026: shared light/dark portal composition. */
body.page-shell{
  background:
    radial-gradient(circle at 84% 0,color-mix(in srgb,var(--accent-primary) 9%,transparent),transparent 30rem),
    radial-gradient(circle at 8% 18%,color-mix(in srgb,var(--accent-secondary) 12%,transparent),transparent 34rem),
    linear-gradient(180deg,var(--bg-secondary),var(--bg-primary) 34rem);
}
body.page-shell::before{
  opacity:.3;
  background-image:
    radial-gradient(circle at center,color-mix(in srgb,var(--text-primary) 16%,transparent) 0 1px,transparent 1.4px),
    radial-gradient(circle at center,color-mix(in srgb,var(--accent-gold) 18%,transparent) 0 1px,transparent 1.5px);
  background-position:0 0,28px 32px;
  background-size:64px 64px,92px 92px;
  mask-image:linear-gradient(to bottom,#000,transparent 82%);
}
body.page-shell::after{
  content:"";
  position:fixed;
  right:-110px;
  bottom:-130px;
  z-index:-1;
  width:390px;
  aspect-ratio:1;
  border-radius:50%;
  pointer-events:none;
  opacity:.34;
  background:
    radial-gradient(ellipse at 25% 50%,color-mix(in srgb,var(--accent-primary) 28%,transparent) 0 5%,transparent 6%),
    radial-gradient(ellipse at 48% 24%,color-mix(in srgb,var(--accent-secondary) 28%,transparent) 0 6%,transparent 7%),
    radial-gradient(ellipse at 70% 56%,color-mix(in srgb,var(--accent-gold) 25%,transparent) 0 5%,transparent 6%);
  filter:blur(.2px);
}

.app-topbar{
  height:var(--topbar);
  gap:14px;
  padding-inline:clamp(14px,1.5vw,30px);
  background:color-mix(in srgb,var(--surface) 88%,transparent);
  border-bottom-color:var(--border-soft);
  box-shadow:0 8px 30px color-mix(in srgb,var(--bg-primary) 30%,transparent);
}
:root[data-theme=light] .app-topbar{background:rgb(255 255 255/.84)}
.brand{
  flex:0 0 clamp(180px,14vw,232px);
  gap:8px;
  min-width:0;
  font-family:var(--font-body);
  font-size:clamp(1.05rem,1.35vw,1.38rem);
  font-weight:900;
  letter-spacing:.035em;
  color:var(--accent-primary);
}
.brand-emblem{
  position:relative;
  flex:0 0 48px;
  width:48px;
  height:48px;
  overflow:hidden;
  border-radius:50%;
  filter:drop-shadow(0 7px 13px color-mix(in srgb,var(--accent-primary) 23%,transparent));
}
.brand-emblem img{
  position:absolute;
  left:-63px;
  top:-4px;
  width:176px;
  max-width:none;
  height:auto;
}
.brand-wordmark{white-space:nowrap;text-shadow:0 0 22px color-mix(in srgb,var(--accent-primary) 18%,transparent)}
.brand-wordmark span{margin-inline:.08em;color:var(--accent-secondary)}
.search-box{max-width:840px;height:44px;border-radius:16px;background:color-mix(in srgb,var(--surface-elevated) 84%,transparent)}
.top-actions{flex:0 0 auto}
.top-actions .button,.auth-user{white-space:nowrap}
.theme-toggle,.icon-button{border-radius:14px}
.star-balance{border-color:color-mix(in srgb,var(--accent-gold) 35%,var(--border-soft));background:color-mix(in srgb,var(--accent-gold) 8%,var(--surface))}

.app-shell,
.app-shell.has-right-rail{
  width:100%;
  max-width:none;
  margin:0;
  grid-template-columns:minmax(190px,var(--left)) minmax(0,1fr);
  justify-content:stretch;
  gap:clamp(12px,1.15vw,22px);
  padding:clamp(12px,1.2vw,22px) clamp(12px,1.5vw,28px) 72px;
}
.app-shell.has-right-rail{grid-template-columns:minmax(190px,var(--left)) minmax(0,1fr) minmax(260px,var(--right))}
.app-shell>*{min-width:0}
.content-column{width:100%;max-width:1280px;justify-self:center}
.page-shell--home .content-column{max-width:none}
.left-sidebar,.right-rail{top:calc(var(--topbar) + 12px)}
.left-sidebar{
  position:sticky;
  isolation:isolate;
  height:calc(100vh - var(--topbar) - 24px);
  padding:4px 12px 150px 4px;
  border-right:1px solid var(--border-soft);
}
.left-sidebar::after{
  content:"";
  position:absolute;
  right:20px;
  bottom:16px;
  z-index:-1;
  width:142px;
  height:104px;
  opacity:.055;
  background:url("assets/brand/vedmali-logo-u.svg") center/contain no-repeat;
  pointer-events:none;
}
.sidebar-section{padding:9px 0 14px}
.sidebar-label{margin:0 0 7px;color:var(--accent-gold)}
.sidebar-link{position:relative;min-height:42px;padding:0 12px;border-radius:12px;font-size:.9rem}
.sidebar-link:hover,.sidebar-link.is-active{
  border-color:color-mix(in srgb,var(--accent-primary) 23%,var(--border-soft));
  color:var(--text-primary);
  background:linear-gradient(90deg,color-mix(in srgb,var(--accent-primary) 14%,transparent),color-mix(in srgb,var(--accent-secondary) 9%,transparent));
}
.sidebar-link.is-active::before{content:"";position:absolute;left:-5px;top:8px;bottom:8px;width:3px;border-radius:6px;background:var(--accent-primary);box-shadow:0 0 14px color-mix(in srgb,var(--accent-primary) 48%,transparent)}
.sidebar-subheading{margin-top:9px}
.sidebar-link-nested{min-height:34px;padding-left:15px;font-size:.86rem}
.sidebar-card{margin-top:12px;padding:14px;border-radius:17px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent-secondary) 8%,var(--surface)),var(--surface-soft));box-shadow:none}
.sidebar-card p{font-size:.84rem;line-height:1.48}

.right-rail{gap:12px}
.personal-space,.rail-widget{
  border-radius:18px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--surface-elevated) 96%,transparent),color-mix(in srgb,var(--surface-soft) 92%,transparent));
  box-shadow:var(--shadow-soft);
}
.personal-space{gap:11px;padding:14px}
.personal-space__head h2{font-size:1.18rem}
.rail-widget{padding:14px}

.button-primary{
  border-color:color-mix(in srgb,var(--accent-primary) 65%,white);
  background:linear-gradient(135deg,#ff36af,var(--accent-primary) 54%,#c92083);
  box-shadow:0 12px 28px color-mix(in srgb,var(--accent-primary) 28%,transparent),inset 0 1px 0 rgb(255 255 255/.32);
}
.button-primary:hover{box-shadow:0 15px 34px color-mix(in srgb,var(--accent-primary) 37%,transparent),inset 0 1px 0 rgb(255 255 255/.35)}
.text-link,.widget-head a,.section-head a{color:var(--accent-primary)}

.magic-hero:not(.is-widget-full){
  min-height:clamp(340px,29vw,430px);
  grid-template-columns:minmax(0,var(--magic-copy,62fr)) minmax(280px,var(--magic-widget,38fr));
  gap:clamp(18px,2vw,32px);
  padding:clamp(24px,3vw,44px);
  border-radius:20px;
  border-color:rgb(142 160 214/.28);
  color:#f9f6ff;
  background:
    linear-gradient(100deg,rgb(4 13 31/.96) 0%,rgb(8 25 53/.92) 52%,rgb(21 18 62/.86) 100%),
    var(--surface);
  box-shadow:0 22px 58px rgb(1 7 23/.38),inset 0 1px 0 rgb(255 255 255/.08);
}
.magic-hero:not(.is-widget-full)::before{
  opacity:.82;
  background:
    radial-gradient(circle at 78% 18%,rgb(255 225 165/.28),transparent 9rem),
    radial-gradient(circle at 45% 82%,rgb(234 49 163/.2),transparent 18rem),
    radial-gradient(circle at 18% 15%,rgb(77 105 190/.28),transparent 16rem);
}
.magic-hero-copy{max-width:660px}
.magic-hero h1{max-width:15ch;font-size:clamp(2.25rem,3.55vw,4rem);line-height:.94;text-shadow:0 7px 36px rgb(0 0 0/.44)}
.magic-hero .lead{max-width:58ch;color:#cfd6e8;font-size:clamp(.96rem,1.25vw,1.1rem);line-height:1.62}
.magic-hero .eyebrow{color:#f0c77e}
.magic-hero:not(.is-widget-full) h1{color:#fff}
.magic-hero .button-secondary{border-color:rgb(255 255 255/.2);color:#fff;background:rgb(8 15 34/.58);backdrop-filter:blur(12px)}
.tarot-ambient-card{right:clamp(17rem,29vw,31rem);bottom:-29%;width:clamp(145px,14vw,225px)}
.tarot-ambient-card-back{opacity:.34}
.tarot-ambient-card-front{opacity:.56}
.hero-feature{min-height:286px;padding:16px;border-radius:18px;background:rgb(6 15 35/.7);backdrop-filter:blur(14px)}
.magic-hero:not(.is-widget-full) .hero-feature,.magic-hero:not(.is-widget-full) .hero-feature h2{color:#fff}
.magic-hero:not(.is-widget-full) .hero-feature>span:not(.feature-icon){color:#cfd6e8}
.hero-feature.is-embed{height:clamp(286px,25vw,352px)}
.magic-hero.is-widget-full{height:auto;min-height:420px;border-radius:20px;background:var(--surface-soft)}
.page-shell--home .hero-feature.is-embed{
  align-self:center;
  height:clamp(420px,38vw,560px);
  min-height:420px;
  max-height:none;
  overflow:hidden;
}
.page-shell--home .hero-feature.is-embed .magic-widget-embed-shell{position:absolute;inset:0;width:100%;height:100%!important}
.page-shell--home .hero-feature.is-embed .magic-widget-home-frame{
  inset:0;
  width:100%;
  max-width:none;
  height:100%;
  max-height:none;
  transform:none;
}

.home-quick-nav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:12px;
}
.home-quick-nav>a{
  min-width:0;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) 30px;
  align-items:center;
  gap:11px;
  min-height:82px;
  padding:12px 14px;
  border:1px solid var(--border-soft);
  border-radius:15px;
  background:color-mix(in srgb,var(--surface-elevated) 94%,transparent);
  box-shadow:var(--shadow-soft);
  transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast);
}
.home-quick-nav>a:hover,.home-quick-nav>a:focus-visible{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent-primary) 40%,var(--border-soft));box-shadow:var(--shadow-card)}
.home-quick-nav__icon{width:44px;height:44px;padding:9px;border:1px solid color-mix(in srgb,var(--accent-primary) 23%,var(--border-soft));border-radius:50%;color:var(--accent-primary);background:color-mix(in srgb,var(--accent-primary) 8%,var(--surface-soft))}
.home-quick-nav span{min-width:0;display:grid;gap:3px}
.home-quick-nav strong{overflow:hidden;text-overflow:ellipsis;font-family:var(--font-display);font-size:1.08rem;white-space:nowrap}
.home-quick-nav small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-quick-nav b{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--border-soft);border-radius:50%;color:var(--accent-primary);font-weight:700}

.vedmali-now,.vedmali-relationship,.vedmali-moon,.vedmali-tarot-story,.vedmali-depth{margin-top:clamp(24px,3.6vw,52px)}
.vedmali-choice{min-height:215px;border-radius:20px}
.vedmali-relationship{min-height:470px;border-radius:22px}
.vedmali-relationship-visual{min-height:440px}
.vedmali-tarot-story{min-height:430px;border-radius:22px}
.vedmali-depth{border-radius:20px}
.section-block,.catalog-heading,.game-card,.card,.right-card,.comments-panel,.application-list-item.is-featured{border-radius:20px}
.application-list-item.is-featured{min-height:270px}

:root[data-theme=light] body.page-shell{
  background:
    radial-gradient(circle at 90% 6%,rgb(229 215 255/.68),transparent 25rem),
    radial-gradient(circle at 4% 30%,rgb(255 224 242/.58),transparent 27rem),
    linear-gradient(180deg,#f4f6ff,#fff 40rem);
}
:root[data-theme=light] .magic-hero:not(.is-widget-full){
  color:#fff;
  border-color:rgb(77 84 174/.23);
  background:
    linear-gradient(102deg,rgb(23 27 91/.93),rgb(41 42 119/.87) 55%,rgb(80 42 126/.82)),
    var(--surface);
}
:root[data-theme=light] .magic-hero .lead{color:#e0e3f5}
:root[data-theme=light] .magic-hero:not(.is-widget-full) h1{color:#fff}
:root[data-theme=light] .magic-hero .button-secondary{color:#fff;border-color:rgb(255 255 255/.28);background:rgb(24 25 78/.5)}
:root[data-theme=light] .home-quick-nav>a{background:rgb(255 255 255/.9)}

@media(min-width:1481px){
  .personal-space--mobile{display:none}
  .app-shell.has-right-rail .right-rail{display:grid;grid-column:auto;position:sticky}
}
@media(max-width:1480px){
  .app-shell,.app-shell.has-right-rail{grid-template-columns:minmax(190px,var(--left)) minmax(0,1fr)}
  .app-shell.has-right-rail .right-rail{display:none}
  .personal-space--mobile{display:grid}
  .home-quick-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1080px){
  .app-topbar{gap:10px}
  .brand{flex-basis:auto}
  .brand-wordmark{font-size:1.03rem}
  .app-shell,.app-shell.has-right-rail{display:block;padding:18px var(--content-gutter) 64px}
  .left-sidebar{position:fixed;height:auto;padding:18px;background:var(--surface-elevated)}
  .left-sidebar::after{display:none}
  .content-column{max-width:100%}
  .magic-hero:not(.is-widget-full){grid-template-columns:minmax(0,1.1fr) minmax(250px,.9fr)}
}
@media(max-width:900px){
  .magic-hero:not(.is-widget-full){grid-template-columns:1fr;min-height:0}
  .magic-hero-copy{max-width:720px}
  .tarot-ambient-card{right:8%;bottom:-16%;opacity:.2}
  .hero-feature{min-height:270px}
  .page-shell--home .hero-feature.is-embed{height:clamp(420px,65vw,620px);min-height:420px}
  .vedmali-relationship,.vedmali-tarot-story{min-height:0}
}
@media(max-width:768px){
  .brand{flex:0 0 auto}
  .search-box{margin-left:auto}
  .home-quick-nav>a{min-height:76px}
  .vedmali-relationship-visual{min-height:400px}
}
@media(max-width:620px){
  body.page-shell::after{width:250px;right:-100px;bottom:-90px}
  .app-topbar{padding-inline:9px}
  .brand{gap:0}
  .brand-emblem{width:40px;height:40px;flex-basis:40px}
  .brand-emblem img{left:-53px;top:-3px;width:148px}
  .brand-wordmark{display:none}
  .search-box{min-width:0;height:38px;padding-inline:10px;border-radius:12px}
  .search-box input{font-size:.83rem}
  .magic-hero:not(.is-widget-full){padding:22px 18px;border-radius:18px}
  .magic-hero h1{font-size:clamp(2rem,10.5vw,3rem)}
  .magic-hero .hero-actions{display:grid}
  .magic-hero .hero-actions .button{width:100%}
  .home-quick-nav{grid-template-columns:1fr;gap:8px}
  .home-quick-nav>a{grid-template-columns:42px minmax(0,1fr) 28px;min-height:70px;padding:10px 12px}
  .home-quick-nav__icon{width:40px;height:40px;padding:8px}
  .home-quick-nav strong{font-size:1rem}
  .vedmali-choice{min-height:190px}
  .vedmali-relationship-visual{min-height:360px}
  .section-block,.catalog-heading,.game-card,.card,.right-card,.comments-panel,.application-list-item.is-featured{border-radius:18px}
}
@media(max-width:390px){
  .top-actions{gap:4px}
  .theme-toggle,.icon-button{width:34px;height:34px}
  .search-box span{display:none}
  .magic-hero:not(.is-widget-full){padding-inline:16px}
  .hero-feature{min-height:250px}
  .page-shell--home .hero-feature.is-embed{height:clamp(430px,135vw,570px);min-height:420px}
  .home-quick-nav small{font-size:.76rem}
}
@media(prefers-reduced-motion:reduce){
  .home-quick-nav>a{transition:none}
  .home-quick-nav>a:hover,.home-quick-nav>a:focus-visible{transform:none}
}

/* Vedmali retention worlds: daily ritual, dreams, numerology and academy */
.daily-card-pulse{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 12px;border:1px solid var(--border-soft);border-radius:13px;color:var(--text-primary);font-size:.8rem;background:var(--surface-soft)}
.daily-card-pulse span{color:var(--accent-primary)}
.daily-card-pulse.is-waiting{border-color:color-mix(in srgb,var(--accent-primary) 46%,var(--border-soft));background:color-mix(in srgb,var(--accent-primary) 12%,var(--surface));box-shadow:0 0 0 0 color-mix(in srgb,var(--accent-primary) 30%,transparent);animation:daily-pulse 2.8s ease-out infinite}
@keyframes daily-pulse{45%{box-shadow:0 0 0 7px transparent}100%{box-shadow:0 0 0 0 transparent}}
.nav-symbol{display:grid;place-items:center;width:20px;color:var(--accent-secondary);font-family:var(--font-display);font-size:1.08rem}

.daily-ritual-callout{margin-top:12px;border:1px solid color-mix(in srgb,var(--accent-primary) 35%,var(--border-soft));border-radius:18px;overflow:hidden;background:linear-gradient(120deg,color-mix(in srgb,var(--accent-primary) 13%,var(--surface)),color-mix(in srgb,var(--accent-secondary) 7%,var(--surface-elevated)))}
.daily-ritual-callout>a{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:18px;min-height:116px;padding:12px 22px;color:inherit}
.daily-ritual-callout__art{display:grid;place-items:center;width:64px;height:88px;border:1px solid color-mix(in srgb,var(--accent-gold) 38%,var(--border-soft));border-radius:10px;overflow:hidden;background:radial-gradient(circle,color-mix(in srgb,var(--accent-secondary) 25%,transparent),transparent 60%),var(--surface-soft);box-shadow:0 10px 25px rgb(0 0 0/.2)}
.daily-ritual-callout__art img{width:100%;height:100%;object-fit:cover}.daily-ritual-callout__art i{width:42px;color:var(--accent-gold)}
.daily-ritual-callout__copy{display:grid;gap:4px;min-width:0}.daily-ritual-callout__copy small{color:var(--accent-gold);font-size:.69rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.daily-ritual-callout__copy strong{font-family:var(--font-display);font-size:clamp(1.35rem,2.2vw,2rem)}.daily-ritual-callout__copy em{max-width:68ch;color:var(--text-secondary);font-size:.9rem;font-style:normal;line-height:1.5}
.daily-ritual-callout>a>b{padding:12px 15px;border-radius:12px;color:white;background:linear-gradient(135deg,var(--accent-primary),#b52797);font-size:.83rem;white-space:nowrap}.daily-ritual-callout.is-selected{border-color:var(--border-soft);background:var(--surface-elevated)}

.mystic-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,.38fr);align-items:center;min-height:360px;padding:clamp(28px,4.2vw,64px);border:1px solid var(--border-soft);border-radius:24px;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-secondary) 17%,var(--surface)),var(--surface-elevated));box-shadow:var(--shadow-card)}
.mystic-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 83% 18%,color-mix(in srgb,var(--accent-primary) 24%,transparent),transparent 17rem),radial-gradient(circle at 12% 88%,color-mix(in srgb,var(--accent-gold) 9%,transparent),transparent 15rem)}
.mystic-hero__copy{max-width:790px}.mystic-hero h1{max-width:14ch;margin:.14em 0 .3em;font-size:clamp(2.25rem,4.6vw,4.15rem);line-height:.96}.mystic-hero__copy>p:not(.eyebrow){max-width:67ch;color:var(--text-secondary);font-size:clamp(.98rem,1.35vw,1.14rem);line-height:1.65}
.mystic-stats{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.mystic-stats span{padding:9px 12px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);font-size:.78rem;background:color-mix(in srgb,var(--surface) 74%,transparent)}.mystic-stats b{color:var(--accent-gold);font-size:1rem}
.dream-orbit{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:280px;margin:auto}.dream-orbit::before,.dream-orbit::after,.dream-orbit i{content:"";position:absolute;border:1px solid color-mix(in srgb,var(--accent-secondary) 36%,transparent);border-radius:50%}.dream-orbit::before{inset:4%}.dream-orbit::after{inset:18%;border-style:dashed}.dream-orbit i:nth-of-type(1){inset:31%}.dream-orbit i:nth-of-type(2){width:10px;height:10px;left:12%;top:31%;border:0;background:var(--accent-gold);box-shadow:0 0 18px var(--accent-gold)}.dream-orbit i:nth-of-type(3){width:7px;height:7px;right:17%;bottom:25%;border:0;background:var(--accent-primary)}.dream-orbit__moon{font-family:var(--font-display);font-size:7.5rem;color:var(--accent-secondary);filter:drop-shadow(0 0 28px color-mix(in srgb,var(--accent-primary) 38%,transparent))}

.dream-workspace,.numerology-workspace{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.65fr);gap:16px;margin-top:18px}.dream-form-panel,.dream-guide,.numerology-form-panel,.numerology-guide{padding:clamp(22px,3vw,38px);border:1px solid var(--border-soft);border-radius:22px;background:var(--surface-elevated);box-shadow:var(--shadow-soft)}
.mystic-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.mystic-section-head h2{margin:.1em 0 0;font-size:clamp(1.9rem,3.4vw,3.4rem)}.mystic-section-head>span,.experience-price{max-width:26ch;color:var(--text-muted);font-size:.78rem;text-align:right}
.field-label{display:grid;gap:8px;color:var(--text-primary);font-size:.83rem;font-weight:700}.field-label input,.field-label textarea{width:100%;border:1px solid var(--border-soft);border-radius:14px;color:var(--text-primary);background:var(--bg-secondary);font:inherit;font-weight:400}.field-label input{min-height:48px;padding:0 14px}.field-label textarea{padding:14px;line-height:1.6;resize:vertical}.field-label input:focus,.field-label textarea:focus{outline:2px solid color-mix(in srgb,var(--accent-primary) 45%,transparent);border-color:var(--accent-primary)}.field-label small{color:var(--text-muted);font-weight:400}.form-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:13px 0}.button-large{min-height:50px;padding-inline:22px}.form-status{min-height:1.4em;margin:10px 0 0;color:var(--accent-secondary);font-size:.86rem}.honeypot{position:absolute!important;left:-10000px!important}
.dream-consent{display:flex;gap:12px;margin:16px 0;padding:12px;border:1px solid var(--border-soft);border-radius:14px;color:var(--text-secondary);background:var(--surface-soft)}.dream-consent>span{color:var(--accent-gold)}.dream-consent p{margin:0;font-size:.8rem;line-height:1.5}.dream-consent strong{color:var(--text-primary)}
.dream-guide ol{display:grid;gap:0;margin:14px 0 0;padding:0;list-style:none;counter-reset:dream-steps}.dream-guide li{position:relative;display:grid;gap:4px;padding:16px 0 16px 42px;border-top:1px solid var(--border-soft);counter-increment:dream-steps}.dream-guide li::before{content:counter(dream-steps,decimal-leading-zero);position:absolute;left:0;top:16px;color:var(--accent-gold);font-size:.72rem}.dream-guide li span,.numerology-guide li span{color:var(--text-muted);font-size:.78rem;line-height:1.45}
.dream-result,.numerology-result{margin-top:18px}.dream-reading,.number-reading{display:grid;gap:16px}.dream-reading>section,.number-reading{padding:clamp(22px,3vw,38px);border:1px solid var(--border-soft);border-radius:22px;background:var(--surface-elevated)}.dream-reading__essence{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 14%,var(--surface)),var(--surface-elevated))!important}.dream-reading__essence h2,.dream-reading__story h2{font-size:clamp(1.8rem,3.2vw,3rem)}.dream-reading__essence>p:last-child,.dream-reading__story>p:last-child{max-width:75ch;color:var(--text-secondary);line-height:1.75}
.reading-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.reading-grid article{padding:16px;border:1px solid var(--border-soft);border-radius:15px;background:var(--surface-soft)}.reading-grid h3{margin:0 0 8px;font-size:1.1rem}.reading-grid p{margin:0;color:var(--text-secondary);line-height:1.55}.reading-grid small{display:block;margin-top:9px;color:var(--text-muted);line-height:1.45}.reading-hypotheses{display:grid;gap:10px;padding-left:1.4rem}.reading-hypotheses li{padding-left:6px;color:var(--text-secondary);line-height:1.6}.dream-reading__action{display:grid!important;grid-template-columns:1fr 1fr;gap:12px;background:none!important;border:0!important;padding:0!important}.dream-reading__action>section,.dream-reading__practice{padding:24px;border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.dream-reading__action li{margin:.65em 0;color:var(--text-secondary)}
.mystic-disclaimer{display:flex;gap:15px;margin-top:20px;padding:18px;border:1px solid color-mix(in srgb,var(--accent-gold) 27%,var(--border-soft));border-radius:18px;background:color-mix(in srgb,var(--accent-gold) 6%,var(--surface))}.mystic-disclaimer>span{color:var(--accent-gold);font-size:1.4rem}.mystic-disclaimer p{margin:.35em 0 0;color:var(--text-secondary);font-size:.83rem;line-height:1.55}

.mystic-section{margin-top:clamp(30px,5vw,64px)}.dream-history-list{display:grid;gap:8px}.dream-history-list>a{display:grid;grid-template-columns:75px minmax(120px,.45fr) minmax(0,1fr) 30px;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--border-soft);border-radius:14px;color:inherit;background:var(--surface-elevated)}.dream-history-list time,.dream-history-list span{color:var(--text-muted);font-size:.79rem}.dream-history-list b{color:var(--accent-primary)}
.dream-search{display:grid;grid-template-columns:minmax(0,1fr) 220px auto;gap:9px}.dream-search label{display:flex;align-items:center;gap:9px;padding:0 14px;border:1px solid var(--border-soft);border-radius:13px;background:var(--surface-elevated)}.dream-search input,.dream-search select,.dream-search+select{border:0;background:transparent}.dream-search input{width:100%;min-height:46px;color:var(--text-primary);font:inherit}.dream-search select{padding:0 12px;border:1px solid var(--border-soft);border-radius:13px;color:var(--text-primary);background:var(--surface-elevated)}
.dream-category-cloud{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 18px}.dream-category-cloud a{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);font-size:.77rem;background:var(--surface-soft)}.dream-category-cloud a.is-active,.dream-category-cloud a:hover{border-color:var(--accent-primary);color:var(--text-primary)}.dream-category-cloud span{color:var(--accent-gold)}
.dream-symbol-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dream-symbol-card{display:grid;align-content:start;min-height:205px;padding:18px;border:1px solid var(--border-soft);border-radius:18px;color:inherit;background:var(--surface-elevated);transition:transform var(--motion-fast),border-color var(--motion-fast)}.dream-symbol-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent-primary) 45%,var(--border-soft))}.dream-symbol-card small{color:var(--accent-gold);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}.dream-symbol-card h3{margin:.55em 0 .35em;font-size:1.45rem}.dream-symbol-card p{margin:0;color:var(--text-secondary);font-size:.84rem;line-height:1.55}.dream-symbol-card span{align-self:end;margin-top:16px;color:var(--accent-primary);font-size:.78rem;font-weight:700}
.symbol-detail>header,.saved-dream>header{padding:clamp(28px,5vw,70px);border:1px solid var(--border-soft);border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-secondary) 15%,var(--surface)),var(--surface-elevated))}.symbol-detail h1,.saved-dream h1{max-width:14ch;margin:.15em 0;font-size:clamp(3rem,7vw,6.5rem);line-height:.9}.symbol-detail__lead,.saved-dream>header>p:last-of-type{max-width:65ch;color:var(--text-secondary);font-size:1.06rem;line-height:1.7}.symbol-detail__duality{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.symbol-detail__duality section,.symbol-question,.symbol-context,.saved-dream__source{padding:clamp(22px,3vw,38px);border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.symbol-detail__duality>section>span{font-size:1.5rem;color:var(--accent-gold)}.symbol-question,.symbol-context,.saved-dream__source{margin-top:12px}.symbol-question blockquote{max-width:22ch;margin:.4em 0;font:500 clamp(2rem,4vw,4rem)/1.04 var(--font-display)}.symbol-question>p:last-child,.symbol-context>p{max-width:75ch;color:var(--text-secondary);line-height:1.7}.tag-row{display:flex;flex-wrap:wrap;gap:6px}.tag-row span{padding:6px 9px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-muted);font-size:.72rem}
.saved-dream__source summary{cursor:pointer;font-weight:700}.saved-dream__source p{color:var(--text-secondary);line-height:1.7}

.number-constellation{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:310px;margin:auto}.number-constellation img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 22px 34px color-mix(in srgb,var(--accent-primary) 26%,transparent))}.numerology-form-explainer{max-width:72ch;margin:.45rem 0 1.15rem;color:var(--text-secondary);font-size:.88rem;line-height:1.62}
.numerology-guide ul{display:grid;gap:0;margin:14px 0 0;padding:0;list-style:none}.numerology-guide li{display:grid;gap:3px;padding:13px 0;border-top:1px solid var(--border-soft)}
.number-reading{padding:clamp(22px,3vw,38px)}.number-reading>header h2{max-width:30ch;font-size:clamp(1.8rem,3.4vw,3.2rem)}.number-reading>header span{color:var(--text-muted)}.number-reading__grid,.number-meaning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.number-reading__grid article,.number-meaning-grid article{position:relative;min-height:245px;padding:18px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-soft)}.number-reading__grid article>b,.number-meaning-grid article>b{display:grid;place-items:center;width:54px;height:54px;border:1px solid color-mix(in srgb,var(--accent-gold) 45%,var(--border-soft));border-radius:50%;color:var(--accent-gold);font:500 1.65rem var(--font-display)}.number-reading__grid small{display:block;margin-top:13px;color:var(--accent-secondary);font-size:.68rem;font-weight:700;text-transform:uppercase}.number-reading__grid h3,.number-meaning-grid h3{margin:.4em 0;font-size:1.35rem}.number-reading__grid p,.number-meaning-grid p{color:var(--text-secondary);font-size:.84rem;line-height:1.55}.number-reading details,.number-meaning-grid details{margin-top:12px}.number-reading summary,.number-meaning-grid summary{cursor:pointer;color:var(--accent-primary);font-size:.78rem;font-weight:700}.number-reading details strong,.number-meaning-grid details strong{font-size:.8rem;line-height:1.45}.cycle-line{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.cycle-line article{display:grid;gap:4px;padding:14px;border:1px solid var(--border-soft);border-radius:14px}.cycle-line b{color:var(--accent-gold);font:500 1.7rem var(--font-display)}.cycle-line small{color:var(--text-muted)}.mystic-note{color:var(--text-muted);font-size:.78rem}.number-history{display:grid;gap:8px}.number-history article{display:grid;grid-template-columns:80px 52px 1fr;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface-elevated)}.number-history article>b{font:500 1.8rem var(--font-display);color:var(--accent-gold)}.number-history time,.number-history p{color:var(--text-muted);font-size:.78rem}.number-history h3,.number-history p{margin:0}

.academy-progress-orb{position:relative;display:grid;place-items:center;align-content:center;aspect-ratio:1;max-width:260px;margin:auto;border:1px solid var(--border-soft);border-radius:50%;background:var(--surface-soft)}.academy-progress-orb>b{font:500 4rem/1 var(--font-display);color:var(--accent-primary)}.academy-progress-orb span{color:var(--text-muted)}.academy-progress-orb i{position:absolute;inset:9px;border-radius:50%;background:conic-gradient(var(--accent-primary) var(--progress),transparent 0);mask:radial-gradient(circle,transparent 68%,#000 69%)}
.academy-map{display:grid;gap:18px;margin-top:18px}.academy-track{display:grid;grid-template-columns:minmax(220px,.38fr) minmax(0,1fr);gap:20px;padding:clamp(20px,3vw,34px);border:1px solid var(--border-soft);border-radius:22px;background:var(--surface-elevated)}.academy-track>header{display:flex;gap:16px;align-items:start}.academy-track>header>span{color:var(--accent-gold);font-size:.72rem}.academy-track h2{margin:.1em 0;font-size:clamp(1.8rem,3vw,3rem)}.academy-track header p:last-child{color:var(--text-secondary);line-height:1.55}.academy-lessons{display:grid;gap:8px}.academy-lessons>a{display:grid;grid-template-columns:34px minmax(0,1fr) 26px;align-items:center;gap:12px;padding:14px;border:1px solid var(--border-soft);border-radius:15px;color:inherit;background:var(--surface-soft)}.academy-lessons>a>span{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--border-soft);border-radius:50%;color:var(--accent-secondary);font-size:.7rem}.academy-lessons>a.is-complete>span{color:white;background:var(--accent-primary)}.academy-lessons small{color:var(--text-muted);font-size:.67rem}.academy-lessons h3,.academy-lessons p{margin:0}.academy-lessons h3{font-size:1.05rem}.academy-lessons p{margin-top:3px;color:var(--text-secondary);font-size:.78rem}.academy-lessons>a>b{color:var(--accent-primary)}
.academy-principles{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:18px}.academy-principles article{padding:18px;border:1px solid var(--border-soft);border-radius:17px;background:var(--surface-elevated)}.academy-principles span{color:var(--accent-gold);font-size:.7rem}.academy-principles h3{font-size:1.1rem}.academy-principles p{color:var(--text-secondary);font-size:.8rem;line-height:1.5}
.academy-lesson>header{max-width:900px;margin:0 auto;padding:clamp(26px,5vw,70px) 0}.academy-lesson>header>a{color:var(--accent-primary);font-size:.8rem}.academy-lesson h1{margin:.25em 0;font-size:clamp(3rem,7vw,6.4rem);line-height:.92}.academy-lesson>header>p:last-child{max-width:67ch;color:var(--text-secondary);font-size:1.05rem;line-height:1.7}.academy-lesson__body{display:grid;gap:10px;max-width:900px;margin:auto}.academy-lesson__body section{display:grid;grid-template-columns:42px 1fr;gap:16px;padding:clamp(20px,3vw,34px);border:1px solid var(--border-soft);border-radius:19px;background:var(--surface-elevated)}.academy-lesson__body section>span{color:var(--accent-gold);font-size:.72rem}.academy-lesson__body h2{font-size:clamp(1.5rem,2.8vw,2.5rem)}.academy-lesson__body p{color:var(--text-secondary);line-height:1.7}.academy-practice,.academy-quiz{max-width:900px;margin:12px auto 0;padding:clamp(22px,4vw,46px);border:1px solid var(--border-soft);border-radius:21px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-secondary) 13%,var(--surface)),var(--surface-elevated))}.academy-practice h2,.academy-quiz h2{font-size:clamp(1.7rem,3.3vw,3rem)}.academy-quiz>div{display:grid;gap:8px;margin-top:18px}.academy-quiz button{padding:14px 16px;border:1px solid var(--border-soft);border-radius:13px;color:var(--text-primary);text-align:left;background:var(--surface-soft);cursor:pointer}.academy-quiz button.is-correct{border-color:#4fb787;background:color-mix(in srgb,#4fb787 13%,var(--surface))}.academy-quiz button.is-wrong{border-color:#c9687d;background:color-mix(in srgb,#c9687d 12%,var(--surface))}.academy-quiz [data-quiz-feedback]{color:var(--text-secondary);font-weight:700}.academy-lesson__nav{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:900px;margin:18px auto}.academy-lesson__nav a{display:grid;gap:4px;padding:16px;border:1px solid var(--border-soft);border-radius:15px;color:inherit;background:var(--surface-elevated)}.academy-lesson__nav a:last-child{text-align:right}.academy-lesson__nav small{color:var(--text-muted)}

.today-header{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:clamp(12px,2vw,24px) 0}.today-header h1{margin:.1em 0;font-size:clamp(3rem,6vw,5.8rem)}.today-header p:last-child{color:var(--text-secondary)}.ritual-streak{padding:9px 12px;border:1px solid color-mix(in srgb,var(--accent-gold) 34%,var(--border-soft));border-radius:999px;color:var(--accent-gold);font-size:.78rem;white-space:nowrap}.today-grid{display:grid;grid-template-columns:minmax(0,1.55fr) repeat(2,minmax(210px,.62fr));gap:10px}.today-grid>article{min-width:0;padding:20px;border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.today-card{display:grid;grid-template-columns:140px 1fr;gap:20px}.today-card__art{display:grid;place-items:center;aspect-ratio:2/3;border:1px solid var(--border-soft);border-radius:12px;overflow:hidden;background:var(--surface-soft)}.today-card__art img{width:100%;height:100%;object-fit:cover}.today-card__art span{width:70%;color:var(--accent-gold)}.today-card h2,.today-moon h2,.today-number h2{font-size:clamp(1.4rem,2.2vw,2.25rem)}.today-card p,.today-moon p,.today-number p{color:var(--text-secondary);font-size:.84rem;line-height:1.55}.today-moon,.today-number{display:grid;align-content:space-between}.today-moon__disc{font:500 4rem var(--font-display);color:var(--accent-secondary)}.today-number>b{font:500 4rem var(--font-display);color:var(--accent-gold)}.today-moon a,.today-number a{color:var(--accent-primary);font-weight:700}
.reflection-card{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(0,1.25fr);gap:24px;margin-top:12px;padding:clamp(22px,3.5vw,42px);border:1px solid var(--border-soft);border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 10%,var(--surface)),var(--surface-elevated))}.reflection-card h2{font-size:clamp(2rem,3.5vw,3.4rem)}.reflection-card>div>p:last-child{color:var(--text-secondary)}.reflection-moods{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 14px}.reflection-moods input{position:absolute;opacity:0}.reflection-moods span{display:block;padding:7px 9px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);font-size:.73rem;cursor:pointer}.reflection-moods input:checked+span{border-color:var(--accent-primary);color:var(--text-primary);background:color-mix(in srgb,var(--accent-primary) 12%,var(--surface))}
.today-storage-note,.reflection-storage-note{display:block;color:var(--text-secondary);font-size:.78rem;line-height:1.45}.today-storage-note{margin:0 0 12px;max-width:58ch}.reflection-storage-note{margin:4px 0 12px;padding:9px 11px;border:1px solid var(--border-soft);border-radius:11px;background:color-mix(in srgb,var(--surface-elevated) 82%,transparent)}.reflection-card .form-status{min-height:1.45em;margin:.55rem 0 0;font-size:.8rem;font-weight:650}.reflection-card .form-status[data-state="saved"]{color:var(--success,#187c57)}.reflection-card .form-status[data-state="error"]{color:var(--danger,#a3314c)}.reflection-card.is-saved{border-color:color-mix(in srgb,var(--success,#34a67b) 58%,var(--border-soft));box-shadow:0 12px 34px color-mix(in srgb,var(--success,#34a67b) 12%,transparent)}.reflection-card.is-saved .button-primary{background:var(--success,#267c5d);border-color:var(--success,#267c5d)}
.today-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.today-paths>a{display:grid;grid-template-columns:42px 1fr 24px;gap:12px;align-items:center;padding:17px;border:1px solid var(--border-soft);border-radius:17px;color:inherit;background:var(--surface-elevated)}.today-paths>a>span{font-size:1.7rem;color:var(--accent-secondary)}.today-paths small{color:var(--accent-gold)}.today-paths h3,.today-paths p{margin:0}.today-paths p{margin-top:4px;color:var(--text-muted);font-size:.77rem}.today-paths>a>b{color:var(--accent-primary)}
.mirror-page>header{max-width:850px;padding:clamp(26px,5vw,65px) 0}.mirror-page h1{margin:.1em 0;font-size:clamp(3.4rem,8vw,7rem);line-height:.9}.mirror-page>header>p:last-child{color:var(--text-secondary);font-size:1.04rem;line-height:1.7}.mirror-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.mirror-stats article{display:grid;padding:20px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-elevated)}.mirror-stats b{font:500 3rem var(--font-display);color:var(--accent-primary)}.mirror-stats span{color:var(--text-muted)}.mirror-section{margin-top:12px;padding:clamp(22px,3vw,38px);border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.mirror-repeats,.mirror-moods{display:flex;flex-wrap:wrap;gap:8px}.mirror-repeats span,.mirror-moods span{padding:9px 12px;border:1px solid var(--border-soft);border-radius:999px}.mirror-repeats b,.mirror-moods b{margin-right:7px;color:var(--accent-gold)}.mirror-journal{display:grid;gap:8px}.mirror-journal article{display:grid;grid-template-columns:55px 1fr;gap:12px;padding:12px;border-top:1px solid var(--border-soft)}.mirror-journal time{color:var(--accent-gold)}.mirror-journal small{color:var(--text-muted)}.mirror-journal p{margin:.25em 0;color:var(--text-secondary)}

:root[data-theme=light] .dream-form-panel,:root[data-theme=light] .dream-guide,:root[data-theme=light] .numerology-form-panel,:root[data-theme=light] .numerology-guide,:root[data-theme=light] .dream-symbol-card,:root[data-theme=light] .academy-track,:root[data-theme=light] .today-grid>article{box-shadow:0 12px 32px rgb(56 42 100/.07)}

@media(max-width:1120px){.dream-symbol-grid,.number-reading__grid,.number-meaning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-grid{grid-template-columns:1fr 1fr}.today-card{grid-column:1/-1}.academy-principles{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.mystic-hero{grid-template-columns:1fr;min-height:0}.dream-orbit,.number-constellation,.academy-progress-orb{display:none}.dream-workspace,.numerology-workspace,.academy-track,.reflection-card{grid-template-columns:1fr}.dream-guide,.numerology-guide{order:-1}.symbol-detail__duality,.dream-reading__action{grid-template-columns:1fr}.today-grid{grid-template-columns:1fr}.today-card{grid-column:auto}.today-paths{grid-template-columns:1fr}.dream-history-list>a{grid-template-columns:60px 1fr 28px}.dream-history-list span{display:none}}
@media(max-width:620px){.daily-card-pulse b{display:none}.daily-card-pulse{width:36px;min-height:36px;justify-content:center;padding:0}.daily-ritual-callout>a{grid-template-columns:56px minmax(0,1fr);gap:12px;padding:10px 12px}.daily-ritual-callout__art{width:52px;height:74px}.daily-ritual-callout>a>b{grid-column:2;width:max-content;padding:8px 10px}.mystic-hero{padding:26px 19px;border-radius:19px}.mystic-hero h1{font-size:clamp(2.5rem,13vw,4.1rem)}.mystic-stats{display:grid}.dream-workspace,.numerology-workspace{margin-top:10px}.dream-form-panel,.dream-guide,.numerology-form-panel,.numerology-guide{padding:18px;border-radius:18px}.mystic-section-head{display:grid;align-items:start}.mystic-section-head>span,.experience-price{text-align:left}.form-grid.two,.reading-grid,.dream-symbol-grid,.number-reading__grid,.number-meaning-grid,.cycle-line{grid-template-columns:1fr}.dream-search{grid-template-columns:1fr}.dream-search select,.dream-search .button{min-height:44px}.dream-symbol-card{min-height:170px}.symbol-detail h1,.saved-dream h1,.academy-lesson h1{font-size:clamp(2.8rem,15vw,4.6rem)}.symbol-question blockquote{font-size:2.2rem}.academy-track{padding:18px}.academy-track>header{display:grid}.academy-principles{grid-template-columns:1fr}.academy-lesson__body section{grid-template-columns:1fr}.academy-lesson__nav{grid-template-columns:1fr}.academy-lesson__nav a:last-child{text-align:left}.today-header{display:grid}.today-card{grid-template-columns:100px 1fr}.reflection-card{padding:20px}.mirror-stats{grid-template-columns:1fr}.number-history article{grid-template-columns:46px 1fr}.number-history time{display:none}}
@media(prefers-reduced-motion:reduce){.daily-card-pulse.is-waiting{animation:none}.dream-symbol-card{transition:none}.dream-symbol-card:hover{transform:none}}

/* Tarot encyclopedia and deep numerology */
.tarot-library-hero{background:radial-gradient(circle at 85% 25%,color-mix(in srgb,var(--accent-primary) 18%,transparent),transparent 34%),linear-gradient(135deg,var(--surface),var(--surface-elevated))}
.tarot-library-mark{min-width:260px;display:flex;align-items:baseline;justify-content:center;gap:12px;color:var(--accent-gold)}.tarot-library-mark span{font:700 clamp(3.8rem,7vw,7rem)/1 var(--font-display)}.tarot-library-mark b{font-size:2rem;color:var(--accent-primary)}.tarot-library-mark small{align-self:flex-end;margin-bottom:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.14em}
.tarot-library-filters{display:grid;grid-template-columns:minmax(260px,1fr) 190px 190px auto;align-items:end;gap:12px;padding:18px;margin:22px 0;border:1px solid var(--border-soft);border-radius:22px;background:var(--surface-elevated)}.tarot-library-filters label{display:grid;gap:7px}.tarot-library-filters label span{color:var(--text-muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.tarot-library-filters input,.tarot-library-filters select{width:100%;min-height:45px;border:1px solid var(--border-soft);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);padding:0 13px}
.tarot-library-section{margin:30px 0 54px}.tarot-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.tarot-library-card{min-width:0;display:grid;grid-template-columns:108px minmax(0,1fr);gap:14px;padding:13px;border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated);color:var(--text-primary);text-decoration:none;transition:transform .2s ease,border-color .2s ease,background .2s ease}.tarot-library-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent-primary) 54%,var(--border-soft));background:var(--surface-soft)}.tarot-library-card__art{aspect-ratio:2/3;overflow:hidden;border-radius:12px;background:var(--bg-secondary);box-shadow:0 12px 28px rgb(0 0 0/.22)}.tarot-library-card__art img{display:block;width:100%;height:100%;object-fit:cover}.tarot-library-card__copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.tarot-library-card__copy small{color:var(--accent-gold);font-size:.7rem;text-transform:uppercase;letter-spacing:.07em}.tarot-library-card__copy strong{margin:8px 0 6px;font:700 1.15rem/1.05 var(--font-display)}.tarot-library-card__copy>span{display:-webkit-box;overflow:hidden;color:var(--text-muted);font-size:.82rem;line-height:1.45;-webkit-line-clamp:4;-webkit-box-orient:vertical}.tarot-library-card__copy b{margin-top:auto;padding-top:9px;color:var(--accent-primary);font-size:.78rem}
.tarot-card-page{display:grid;gap:22px}.mystic-back{display:flex;justify-content:space-between;gap:20px}.mystic-back a{color:var(--text-muted);text-decoration:none}.tarot-card-page__hero{display:grid;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center;padding:clamp(24px,4vw,58px);border:1px solid var(--border-soft);border-radius:30px;background:radial-gradient(circle at 20% 40%,color-mix(in srgb,var(--accent-gold) 13%,transparent),transparent 33%),var(--surface-elevated)}.tarot-card-page__art{aspect-ratio:2/3;padding:8px;border:1px solid color-mix(in srgb,var(--accent-gold) 45%,var(--border-soft));border-radius:23px;background:var(--bg-secondary);box-shadow:0 30px 70px rgb(0 0 0/.3);transform:rotate(-1.5deg)}.tarot-card-page__art img{display:block;width:100%;height:100%;object-fit:cover;border-radius:16px}.tarot-card-page__hero h1{margin:.2em 0;font:700 clamp(3rem,6vw,6.8rem)/.9 var(--font-display)}.tarot-card-page__hero .lead{font-size:clamp(1.1rem,2vw,1.5rem);color:var(--text-primary)}.tarot-card-page__keys{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.tarot-card-page__keys span{padding:7px 10px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-muted);font-size:.76rem}.tarot-card-page__reading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tarot-card-page__reading article{padding:24px;border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.tarot-card-page__reading small{color:var(--accent-gold);text-transform:uppercase;letter-spacing:.09em}.tarot-card-page__reading h2{margin:8px 0;font:700 clamp(1.35rem,2.5vw,2rem)/1.05 var(--font-display)}.tarot-card-page__reading p{color:var(--text-muted);line-height:1.65}.tarot-card-page__conclusion{display:grid;grid-template-columns:auto 1fr;gap:20px;padding:28px;border:1px solid color-mix(in srgb,var(--accent-primary) 32%,var(--border-soft));border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 10%,var(--surface)),var(--surface-elevated))}.tarot-card-page__conclusion>span{font-size:2rem;color:var(--accent-primary)}.tarot-card-page__conclusion h2{font:700 clamp(1.6rem,3vw,2.8rem)/1.04 var(--font-display)}.tarot-related-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.tarot-related-row a{display:grid;gap:8px;padding:10px;border:1px solid var(--border-soft);border-radius:16px;background:var(--surface-elevated);color:var(--text-primary);text-decoration:none}.tarot-related-row img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:10px}.tarot-related-row strong{font:700 1rem/1.05 var(--font-display)}.tarot-related-row span{color:var(--text-muted);font-size:.75rem}
.number-deep-cta{display:grid;gap:10px;margin-top:24px;padding:24px;border:1px solid color-mix(in srgb,var(--accent-primary) 35%,var(--border-soft));border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 9%,var(--surface)),var(--surface-elevated))}.number-deep-cta input,.number-deep-cta textarea{width:100%;border:1px solid var(--border-soft);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);padding:12px 14px;resize:vertical}.numerology-deep-result{margin:22px 0}.number-deep-reading{display:grid;gap:20px;padding:clamp(22px,4vw,44px);border:1px solid var(--border-soft);border-radius:28px;background:radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--accent-gold) 13%,transparent),transparent 30%),var(--surface-elevated)}.number-deep-reading>header h2{font:700 clamp(2.2rem,5vw,4.8rem)/.96 var(--font-display)}.number-deep-dynamics,.number-deep-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.number-deep-dynamics article,.number-deep-rhythm,.number-deep-lists section{display:grid;gap:8px;padding:20px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-soft)}.number-deep-dynamics h3,.number-deep-lists h3{font:700 1.35rem/1.05 var(--font-display)}.number-deep-dynamics strong,.number-deep-rhythm strong{color:var(--accent-gold)}.number-deep-dynamics small,.number-deep-rhythm small{color:var(--text-muted)}.number-deep-lists ul{display:grid;gap:9px;padding-left:19px;color:var(--text-muted)}
/* Explained numerology portrait */
.number-reading{gap:22px;overflow:hidden;background:radial-gradient(circle at 92% 1%,color-mix(in srgb,var(--accent-gold) 10%,transparent),transparent 22rem),var(--surface-elevated)}
.number-overview{display:grid;grid-template-columns:minmax(0,1fr) 150px;align-items:center;gap:26px;padding:clamp(20px,3vw,34px);border:1px solid color-mix(in srgb,var(--accent-secondary) 24%,var(--border-soft));border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-secondary) 12%,var(--surface)),color-mix(in srgb,var(--accent-gold) 6%,var(--surface-elevated)))}
.number-overview__copy{display:grid;gap:8px}.number-overview__copy h2{max-width:20ch;margin:0;font-size:clamp(2rem,3.5vw,3.45rem);line-height:1}.number-overview__lead{max-width:70ch;margin:0;color:var(--text-secondary);font-size:.98rem;line-height:1.65}.number-overview__why{max-width:76ch;margin:0;padding-left:11px;border-left:2px solid color-mix(in srgb,var(--accent-gold) 45%,var(--border-soft));color:var(--text-muted);font-size:.76rem;line-height:1.5}.number-overview__mode{width:max-content;padding:5px 8px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);background:var(--surface-soft);font-size:.64rem}.number-overview__date{color:var(--text-muted);font-size:.76rem}
.number-overview__mark{display:grid;place-items:center;align-content:center;aspect-ratio:1;min-width:130px;padding:16px;border:1px solid color-mix(in srgb,var(--accent-gold) 48%,var(--border-soft));border-radius:50%;text-align:center;background:radial-gradient(circle,color-mix(in srgb,var(--accent-gold) 12%,var(--surface)) 0 58%,transparent 59%),var(--surface-soft);box-shadow:0 18px 38px color-mix(in srgb,var(--accent-secondary) 12%,transparent)}.number-overview__mark small{color:var(--text-muted);font-size:.66rem;text-transform:uppercase;letter-spacing:.12em}.number-overview__mark b{color:var(--accent-gold);font:500 clamp(2.7rem,5vw,4.3rem)/.9 var(--font-display)}.number-overview__mark span{max-width:12ch;color:var(--text-secondary);font-size:.67rem;line-height:1.25}
.number-methodology{margin:-8px 4px 0;padding:0 4px;color:var(--text-muted);font-size:.79rem;line-height:1.55}
.number-rhythm{display:grid;gap:10px;padding:18px;border:1px solid var(--border-soft);border-radius:18px;background:color-mix(in srgb,var(--surface-soft) 82%,transparent)}.number-rhythm>.eyebrow{margin:0}.number-rhythm__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.number-rhythm__grid article{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:10px;min-width:0;padding:10px 12px;border:1px solid var(--border-soft);border-radius:13px;background:var(--surface-elevated)}.number-rhythm__grid b{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:var(--accent-gold);font:500 1.35rem var(--font-display);background:color-mix(in srgb,var(--accent-gold) 11%,var(--surface-soft))}.number-rhythm__grid div{display:grid;min-width:0}.number-rhythm__grid small{overflow:hidden;color:var(--text-muted);font-size:.65rem;text-overflow:ellipsis;white-space:nowrap}.number-rhythm__grid strong{overflow:hidden;color:var(--text-primary);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}
.number-group{display:grid;gap:16px;padding:clamp(18px,2.5vw,28px);border:1px solid var(--border-soft);border-radius:22px;background:color-mix(in srgb,var(--surface-soft) 66%,var(--surface-elevated))}.number-group__head,.number-cycles__head{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:start;gap:14px}.number-group__head .eyebrow,.number-cycles__head .eyebrow{margin:0}.number-group__head h2,.number-cycles__head h2,.number-repetitions>header h2{margin:.15em 0 .2em;font-size:clamp(1.65rem,2.7vw,2.55rem);line-height:1.05}.number-group__head p:last-child,.number-cycles__head p:last-child,.number-repetitions>header>p:last-child{max-width:76ch;margin:0;color:var(--text-secondary);font-size:.84rem;line-height:1.55}.number-group__code{display:grid;place-items:center;width:52px;height:52px;border:1px solid color-mix(in srgb,var(--accent-primary) 34%,var(--border-soft));border-radius:17px;color:var(--accent-primary);font:600 1.3rem var(--font-display);background:linear-gradient(145deg,color-mix(in srgb,var(--accent-primary) 12%,var(--surface)),var(--surface-elevated))}.number-group__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.number-group__empty{margin:0;padding:16px 18px;border:1px dashed color-mix(in srgb,var(--accent-secondary) 34%,var(--border-soft));border-radius:15px;color:var(--text-secondary);background:var(--surface-elevated)}
.number-card{display:flex;flex-direction:column;min-width:0;padding:17px;border:1px solid var(--border-soft);border-radius:17px;background:var(--surface-elevated);box-shadow:0 10px 24px color-mix(in srgb,var(--bg-primary) 13%,transparent)}.number-card__head{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:11px}.number-card__value{display:grid;place-items:center;width:52px;height:52px;border:1px solid color-mix(in srgb,var(--accent-gold) 40%,var(--border-soft));border-radius:50%;color:var(--accent-gold);font:500 1.55rem var(--font-display);background:color-mix(in srgb,var(--accent-gold) 8%,var(--surface-soft))}.number-card__label{display:block;color:var(--accent-secondary);font-size:.62rem;font-weight:700;line-height:1.25;text-transform:uppercase;letter-spacing:.07em}.number-card h3{margin:.25em 0 0;font-size:1.22rem;line-height:1.1}.number-card__role{margin:13px 0;color:var(--text-secondary);font-size:.82rem;line-height:1.55}.number-card__meanings{display:grid;gap:8px;margin-top:auto}.number-card__meanings section{padding:10px 11px;border-radius:12px;background:var(--surface-soft)}.number-card__meanings span,.number-card__practice span{display:block;margin-bottom:4px;color:var(--text-muted);font-size:.61rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.number-card__meanings p{margin:0;color:var(--text-secondary);font-size:.76rem;line-height:1.45}.number-card details{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-soft)}.number-card__calculation[open],.number-card__reflection[open]{border-top-color:color-mix(in srgb,var(--accent-primary) 34%,var(--border-soft))}.number-card summary,.number-deep-consent summary,.cycle-timeline details summary{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;color:var(--accent-primary);font-size:.75rem;font-weight:800;list-style:none}.number-card summary::-webkit-details-marker,.number-deep-consent summary::-webkit-details-marker,.cycle-timeline details summary::-webkit-details-marker{display:none}.number-card summary::after,.number-deep-consent summary::after,.cycle-timeline details summary::after{content:"+";flex:0 0 auto;font-size:1rem}.number-card details[open]>summary::after,.number-deep-consent[open]>summary::after,.cycle-timeline details[open]>summary::after{content:"−"}.number-card__why{margin:10px 0;color:var(--text-secondary);font-size:.76rem;line-height:1.5}.number-formula{display:block;overflow-x:auto;margin:9px 0;padding:9px 10px;border:1px solid color-mix(in srgb,var(--accent-gold) 25%,var(--border-soft));border-radius:10px;color:var(--accent-gold);background:color-mix(in srgb,var(--accent-gold) 7%,var(--surface-soft));font:600 .71rem/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:normal}.number-card__steps,.number-card__list ul{display:grid;gap:6px;margin:9px 0 0;padding-left:18px;color:var(--text-secondary);font-size:.73rem;line-height:1.45}.number-card__practice{display:grid;gap:2px;margin-top:10px;padding:10px 11px;border-radius:11px;background:color-mix(in srgb,var(--accent-primary) 8%,var(--surface-soft))}.number-card__practice strong{color:var(--text-primary);font-size:.74rem;line-height:1.45}.number-card__list{margin-top:12px}.number-card__list h4{margin:0;color:var(--text-primary);font-size:.76rem}.number-card__repeat{margin:10px 0 0;padding:8px 10px;border-radius:10px;color:var(--accent-secondary);background:color-mix(in srgb,var(--accent-secondary) 9%,var(--surface-soft));font-size:.7rem;line-height:1.4}
.number-repetitions{display:grid;gap:15px;padding:clamp(18px,2.5vw,28px);border:1px solid color-mix(in srgb,var(--accent-secondary) 26%,var(--border-soft));border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-secondary) 8%,var(--surface)),var(--surface-elevated))}.number-repetitions__grid{display:grid;gap:9px}.number-repetitions__grid article{display:grid;grid-template-columns:50px minmax(0,1fr);gap:13px;padding:14px;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface-elevated)}.number-repetitions__grid article>b{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;color:var(--accent-gold);font:500 1.4rem var(--font-display);background:color-mix(in srgb,var(--accent-gold) 10%,var(--surface-soft))}.number-repetitions h3{margin:0 0 5px;font-size:1.08rem}.number-repetitions__grid p{margin:0;color:var(--text-secondary);font-size:.77rem;line-height:1.5}.number-repetitions__grid ul{display:grid;gap:4px;margin:9px 0 0;padding-left:17px;color:var(--text-muted);font-size:.7rem;line-height:1.45}
.number-cycles{display:grid;gap:18px;padding:clamp(18px,2.5vw,28px);border:1px solid var(--border-soft);border-radius:22px;background:var(--surface-soft)}.cycle-timeline{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.cycle-timeline::before{content:"";position:absolute;left:7%;right:7%;top:26px;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent-secondary) 48%,var(--border-soft)) 10% 90%,transparent)}.cycle-timeline__item{position:relative;display:grid;grid-template-rows:52px 1fr;min-width:0}.cycle-timeline__rail{position:relative;z-index:1;display:flex;justify-content:center}.cycle-timeline__marker{display:grid;place-items:center;width:52px;height:52px;border:2px solid var(--surface-soft);border-radius:50%;color:var(--accent-secondary);font:500 1.45rem var(--font-display);background:var(--surface-elevated);box-shadow:0 0 0 1px var(--border-soft)}.cycle-timeline__body{display:flex;flex-direction:column;min-height:190px;margin-top:8px;padding:14px;border:1px solid var(--border-soft);border-radius:15px;background:var(--surface-elevated)}.cycle-timeline__item.is-current .cycle-timeline__marker{color:var(--surface);background:linear-gradient(145deg,var(--accent-primary),var(--accent-secondary));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary) 18%,transparent),0 0 28px color-mix(in srgb,var(--accent-primary) 28%,transparent)}.cycle-timeline__item.is-current .cycle-timeline__body{border-color:color-mix(in srgb,var(--accent-primary) 42%,var(--border-soft));background:linear-gradient(155deg,color-mix(in srgb,var(--accent-primary) 9%,var(--surface-elevated)),var(--surface-elevated))}.cycle-timeline__meta{display:flex;align-items:center;justify-content:space-between;gap:6px;color:var(--text-muted);font-size:.65rem}.cycle-timeline__meta strong{padding:4px 6px;border-radius:999px;color:var(--accent-primary);background:color-mix(in srgb,var(--accent-primary) 10%,var(--surface-soft));font-size:.57rem;text-transform:uppercase}.cycle-timeline h3{margin:.55em 0 .35em;font-size:1.08rem}.cycle-timeline__body>p{margin:0;color:var(--text-secondary);font-size:.74rem;line-height:1.5}.cycle-timeline details{margin-top:auto;padding-top:10px}
.number-deep-consent{padding:10px 12px;border:1px solid var(--border-soft);border-radius:12px;background:var(--surface-soft)}.number-deep-consent p{margin:9px 0 0;color:var(--text-muted);font-size:.72rem;line-height:1.5}
:root[data-theme=light] .number-card,:root[data-theme=light] .cycle-timeline__body,:root[data-theme=light] .number-repetitions__grid article{box-shadow:0 10px 26px rgb(57 44 100/.06)}
@media(max-width:1120px){.number-group__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cycle-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}.cycle-timeline::before{display:none}}
@media(max-width:720px){.number-overview{grid-template-columns:1fr}.number-overview__mark{grid-row:1;width:118px;min-width:118px;justify-self:start}.number-rhythm__grid,.number-group__grid{grid-template-columns:1fr}.number-group__head,.number-cycles__head{grid-template-columns:42px minmax(0,1fr)}.number-group__code{width:42px;height:42px;border-radius:13px}.cycle-timeline{grid-template-columns:1fr}.cycle-timeline__item{grid-template-columns:48px 1fr;grid-template-rows:auto;gap:9px}.cycle-timeline__item::before{content:"";position:absolute;left:23px;top:46px;bottom:-10px;width:1px;background:color-mix(in srgb,var(--accent-secondary) 35%,var(--border-soft))}.cycle-timeline__item:last-child::before{display:none}.cycle-timeline__rail{align-items:start}.cycle-timeline__marker{width:46px;height:46px}.cycle-timeline__body{min-height:0;margin:0}.number-repetitions__grid article{grid-template-columns:42px minmax(0,1fr)}.number-repetitions__grid article>b{width:40px;height:40px}}
@media(max-width:430px){.number-reading{padding:14px}.number-overview,.number-group,.number-cycles,.number-repetitions{padding:15px;border-radius:17px}.number-card{padding:14px}.number-card__meanings{grid-template-columns:1fr}.number-overview__copy h2{font-size:1.9rem}.number-rhythm__grid article{grid-template-columns:38px 1fr}.number-rhythm__grid b{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.cycle-timeline__item.is-current .cycle-timeline__marker{transition:none}}
@media(max-width:1120px){.tarot-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tarot-library-filters{grid-template-columns:1fr 1fr}.tarot-related-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.tarot-library-mark{min-width:0}.tarot-library-filters{grid-template-columns:1fr}.tarot-library-grid{grid-template-columns:1fr}.tarot-card-page__hero{grid-template-columns:1fr;padding:20px}.tarot-card-page__art{width:min(76vw,330px);justify-self:center}.tarot-card-page__reading,.number-deep-dynamics,.number-deep-lists{grid-template-columns:1fr}.tarot-related-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.tarot-related-row a{min-width:150px;scroll-snap-align:start}.mystic-back{font-size:.8rem}}

/* Spread library and compatibility laboratory */
.spread-orbit{position:relative;display:grid;place-items:center;aspect-ratio:1;max-width:260px;margin:auto}.spread-orbit i{position:absolute;width:92px;aspect-ratio:2/3;border:1px solid color-mix(in srgb,var(--accent-gold) 40%,var(--border-soft));border-radius:14px;background:linear-gradient(145deg,var(--surface-soft),var(--bg-secondary))}.spread-orbit i:nth-child(1){transform:translateX(-48px) rotate(-13deg)}.spread-orbit i:nth-child(2){z-index:2}.spread-orbit i:nth-child(3){transform:translateX(48px) rotate(13deg)}.spread-orbit b{z-index:3;color:var(--accent-gold);font:500 2.2rem var(--font-display)}.spread-orbit span{position:absolute;bottom:3%;color:var(--text-muted);text-transform:uppercase;letter-spacing:.12em;font-size:.67rem}.spread-library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.spread-library-grid>a{display:grid;min-height:230px;padding:22px;border:1px solid var(--border-soft);border-radius:20px;color:var(--text-primary);background:var(--surface-elevated);transition:transform var(--motion-fast),border-color var(--motion-fast)}.spread-library-grid>a:hover{transform:translateY(-2px);border-color:var(--accent-primary)}.spread-library-grid header{display:flex;justify-content:space-between}.spread-library-grid small{color:var(--accent-gold);text-transform:uppercase;letter-spacing:.07em}.spread-library-grid header b{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--border-soft);border-radius:50%;color:var(--accent-secondary)}.spread-library-grid h3{margin:.5em 0;font-size:clamp(1.5rem,2.5vw,2.3rem)}.spread-library-grid p{color:var(--text-secondary);line-height:1.55}.spread-library-grid>a>span{align-self:end;color:var(--accent-primary);font-weight:700}.spread-page>header{max-width:900px;padding:clamp(32px,6vw,76px) 0}.spread-page>header h1{margin:.16em 0;font-size:clamp(3.2rem,7vw,7rem);line-height:.9}.spread-page>header>p{max-width:65ch;color:var(--text-secondary);line-height:1.7}.spread-page blockquote{max-width:26ch;margin:24px 0 0;font:500 clamp(1.5rem,3vw,2.8rem)/1.1 var(--font-display)}.spread-intention{display:grid;gap:12px;padding:clamp(20px,3vw,32px);border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.spread-intention>p{color:var(--text-muted);font-size:.78rem}.spread-intention .button{width:max-content}.spread-board{display:grid;gap:12px;margin-top:14px}.spread-position{display:grid;grid-template-columns:32px 150px minmax(0,1fr);align-items:center;gap:20px;padding:16px;border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.spread-position>small{align-self:start;color:var(--accent-gold)}.spread-position__card{display:grid;place-items:center;aspect-ratio:2/3;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-secondary) 34%,var(--border-soft));border-radius:13px;background:radial-gradient(circle,var(--accent-secondary),var(--bg-secondary));box-shadow:0 15px 32px rgb(0 0 0/.22)}.spread-position__card>span{color:var(--accent-gold);font:500 1.5rem var(--font-display)}.spread-position__card img{display:block;width:100%;height:100%;object-fit:cover}.spread-position h2{margin:.2em 0;font-size:clamp(1.5rem,3vw,2.5rem)}.spread-position p{color:var(--text-secondary);line-height:1.55}.spread-position div>span{color:var(--accent-gold);font-size:.7rem;text-transform:uppercase}.spread-position div>strong{display:block;margin:12px 0;color:var(--text-primary)}
.compatibility-symbol{position:relative;display:grid;place-items:center;min-height:250px}.compatibility-symbol img{display:block;width:min(100%,390px);max-height:280px;object-fit:contain;filter:drop-shadow(0 22px 36px color-mix(in srgb,var(--accent-primary) 24%,transparent))}.compatibility-workspace{margin-top:16px;padding:clamp(20px,3vw,34px);border:1px solid var(--border-soft);border-radius:22px;background:var(--surface-elevated)}.compatibility-workspace form{display:grid;grid-template-columns:1fr 44px 1fr;gap:16px;align-items:center}.compatibility-person{display:grid;gap:12px;padding:20px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-soft)}.compatibility-link{text-align:center;color:var(--accent-gold);font-size:1.7rem}.compatibility-workspace form>.button,.compatibility-workspace form>.form-status{grid-column:1/-1;justify-self:start}.compatibility-result{margin-top:16px}.compatibility-reading{display:grid;gap:14px;padding:clamp(22px,4vw,42px);border:1px solid var(--border-soft);border-radius:24px;background:var(--surface-elevated)}.compatibility-reading>header h2{font-size:clamp(2.2rem,5vw,5rem)}.compatibility-people{display:grid;grid-template-columns:1fr 1fr;gap:12px}.compatibility-people article{display:grid;grid-template-columns:66px 1fr;column-gap:14px;padding:20px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-soft)}.compatibility-people b{grid-row:1/5;display:grid;place-items:center;width:60px;height:60px;border:1px solid var(--accent-gold);border-radius:50%;font:500 2rem var(--font-display);color:var(--accent-gold)}.compatibility-people small{color:var(--accent-secondary)}.compatibility-people h3{font-size:1.5rem}.compatibility-people p{color:var(--text-secondary)}.compatibility-bridge{display:grid;grid-template-columns:90px 1fr;align-items:center;gap:18px;padding:20px;border:1px solid color-mix(in srgb,var(--accent-primary) 30%,var(--border-soft));border-radius:18px;background:color-mix(in srgb,var(--accent-primary) 7%,var(--surface))}.compatibility-bridge>b{font:500 4rem var(--font-display);color:var(--accent-primary);text-align:center}.compatibility-bridge h2{font-size:2rem}.compatibility-bridge p:last-child{color:var(--text-secondary)}
@media(max-width:760px){.spread-library-grid{grid-template-columns:1fr}.spread-position{grid-template-columns:24px 100px minmax(0,1fr);gap:10px}.compatibility-workspace form{grid-template-columns:1fr}.compatibility-link{transform:rotate(90deg)}.compatibility-workspace form>.button,.compatibility-workspace form>.form-status{grid-column:auto}.compatibility-people{grid-template-columns:1fr}}
@media(max-width:480px){.spread-position{grid-template-columns:24px 1fr}.spread-position__card{grid-column:2;width:min(62vw,210px)}.spread-position>div:last-child{grid-column:2}.compatibility-people article{grid-template-columns:52px 1fr}.compatibility-people b{width:48px;height:48px}.compatibility-bridge{grid-template-columns:60px 1fr}.compatibility-bridge>b{font-size:3rem}}

/* Stage 01: unified TarotVisual readings, semantic card pages and internal navigation */
.tarot-card-page__art{position:relative;overflow:visible}.tarot-card-page__art>tarot-visual{width:100%;height:100%}.tarot-card-page__meaning{padding:clamp(22px,4vw,38px);border:1px solid var(--border-soft);border-radius:24px;background:var(--surface-elevated)}.tarot-card-page__meaning h2{margin:.2em 0 .55em;font:700 clamp(1.8rem,3vw,3rem)/1.04 var(--font-display)}.tarot-card-page__meaning h3{margin:1.35em 0 .4em;font:700 clamp(1.25rem,2vw,1.65rem)/1.1 var(--font-display)}.tarot-card-page__meaning p{max-width:82ch;color:var(--text-secondary);line-height:1.72}.tarot-card-page__reading--positions article{border-color:color-mix(in srgb,var(--accent-gold) 28%,var(--border-soft))}.tarot-card-page__moon{display:grid;grid-template-columns:54px minmax(0,1fr);gap:18px;padding:24px;border:1px solid color-mix(in srgb,var(--accent-secondary) 30%,var(--border-soft));border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-secondary) 9%,var(--surface)),var(--surface-elevated))}.tarot-card-page__moon>span{display:grid;place-items:center;width:52px;height:52px;border:1px solid color-mix(in srgb,var(--accent-gold) 40%,var(--border-soft));border-radius:50%;color:var(--accent-gold);font-size:1.7rem}.tarot-card-page__moon h2{margin:.15em 0;font:700 clamp(1.5rem,2.5vw,2.25rem)/1.05 var(--font-display)}.tarot-card-page__moon p{max-width:76ch;color:var(--text-secondary);line-height:1.6}.tarot-card-sequence{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.tarot-card-sequence>a{display:grid;gap:5px;padding:18px;border:1px solid var(--border-soft);border-radius:17px;background:var(--surface-elevated);color:var(--text-primary);text-decoration:none}.tarot-card-sequence>a:last-child{text-align:right}.tarot-card-sequence small{color:var(--text-muted)}.tarot-card-sequence strong{font:700 1.2rem var(--font-display)}.tarot-card-spreads{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tarot-card-spreads>a{display:grid;gap:9px;padding:20px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-elevated);color:var(--text-primary);text-decoration:none}.tarot-card-spreads small{color:var(--accent-gold)}.tarot-card-spreads strong{font:700 1.35rem/1.05 var(--font-display)}.tarot-card-spreads span{color:var(--text-muted);line-height:1.5}.spread-position__card{position:relative;overflow:visible}.spread-position__card>tarot-visual{width:100%;height:100%}.spread-position__card>tarot-visual[orientation=reversed]{filter:drop-shadow(0 0 16px color-mix(in srgb,var(--accent-secondary) 24%,transparent))}
@media(max-width:760px){.tarot-card-page__hero h1{font-size:clamp(2.45rem,11vw,4.5rem)}.tarot-card-spreads{grid-template-columns:1fr}.tarot-card-sequence{grid-template-columns:1fr}.tarot-card-sequence>span{display:none}.tarot-card-sequence>a:last-child{text-align:left}.tarot-card-page__moon{grid-template-columns:1fr}.spread-position__card>tarot-visual{min-height:150px}}

/* Dream atlas, transparent Stars consent and paid Academy */
.dream-guide__price{display:flex;gap:11px;align-items:center;margin-top:17px;padding:13px;border:1px solid color-mix(in srgb,var(--accent-gold) 35%,var(--border-soft));border-radius:14px;background:color-mix(in srgb,var(--accent-gold) 7%,var(--surface))}.dream-guide__price>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#1b102a;background:var(--accent-gold);font-weight:900}.dream-guide__price div{display:grid;gap:3px}.dream-guide__price small{color:var(--text-muted);line-height:1.4}
.dream-symbol-card{grid-template-columns:92px minmax(0,1fr);column-gap:14px;min-height:188px}.dream-symbol-card>.dream-symbol-art{grid-row:1/6}.dream-symbol-card>small,.dream-symbol-card>h3,.dream-symbol-card>p,.dream-symbol-card>span{grid-column:2}.dream-symbol-card h3{margin:.35em 0}.dream-symbol-card>span{margin-top:10px}
.dream-symbol-art{position:relative;isolation:isolate;width:92px;aspect-ratio:1;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-gold) 28%,var(--border-soft));border-radius:16px;background-image:url('./assets/dreams/symbol-worlds-atlas-v1.jpg');background-repeat:no-repeat;background-size:400% 400%;box-shadow:0 12px 24px rgb(0 0 0/.22)}.dream-symbol-art::before,.dream-symbol-art::after{content:"";position:absolute;inset:0;pointer-events:none}.dream-symbol-art::before{z-index:0;background:radial-gradient(circle at var(--dream-glow-x,70%) var(--dream-glow-y,25%),hsl(var(--dream-hue,280) 90% 72%/.38),transparent 48%);mix-blend-mode:screen}.dream-symbol-art::after{z-index:1;background:linear-gradient(160deg,transparent 40%,rgb(7 5 18/.72))}.dream-symbol-art>span{position:absolute;right:8px;bottom:6px;z-index:2;margin:0!important;color:#fff7d7!important;font:700 1.15rem/1 var(--font-display)!important;text-shadow:0 2px 8px #000}.dream-symbol-art--water{background-position:0 0}.dream-symbol-art--animals{background-position:33.333% 0}.dream-symbol-art--people{background-position:66.666% 0}.dream-symbol-art--places{background-position:100% 0}.dream-symbol-art--movement{background-position:0 33.333%}.dream-symbol-art--body{background-position:33.333% 33.333%}.dream-symbol-art--nature{background-position:66.666% 33.333%}.dream-symbol-art--objects{background-position:100% 33.333%}.dream-symbol-art--events{background-position:0 66.666%}.dream-symbol-art--sky{background-position:33.333% 66.666%}.dream-symbol-art--food{background-position:66.666% 66.666%}.dream-symbol-art--work{background-position:100% 66.666%}.dream-symbol-art--technology{background-position:0 100%}.dream-symbol-art--colors{background-position:33.333% 100%}.dream-symbol-art--time{background-position:66.666% 100%}.dream-symbol-art--spiritual{background-position:100% 100%}.dream-symbol-art--hero{float:right;width:min(31vw,300px);margin:0 0 24px 32px;border-radius:24px}.dream-symbol-art--hero>span{right:18px;bottom:15px;font-size:2.4rem!important}
.paid-consent{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px;background:rgb(5 4 12/.78);backdrop-filter:blur(9px)}.paid-consent__card{display:grid;grid-template-columns:58px minmax(0,1fr);gap:17px;width:min(580px,100%);padding:clamp(20px,4vw,34px);border:1px solid color-mix(in srgb,var(--accent-gold) 35%,var(--border-soft));border-radius:24px;background:var(--surface-elevated);box-shadow:0 30px 100px rgb(0 0 0/.5)}.paid-consent__icon{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;color:#21132e;background:linear-gradient(135deg,var(--accent-gold),#f5d890);font-size:1.5rem}.paid-consent__copy h2{margin:.15em 0;font-size:clamp(1.8rem,4vw,3rem)}.paid-consent__copy>p:not(.eyebrow){color:var(--text-secondary)}.paid-consent__price{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:17px 0;padding:14px;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface-soft)}.paid-consent__price strong{color:var(--accent-gold);font-size:1.4rem}.paid-consent__price span{color:var(--text-muted);font-size:.8rem;text-align:right}.paid-consent__copy ul{display:grid;gap:6px;padding-left:20px;color:var(--text-secondary)}.paid-consent__actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}
.academy-hero{grid-template-columns:minmax(0,1fr) minmax(270px,.55fr)}.academy-offer-line{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.academy-offer-line span{padding:8px 11px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-muted);font-size:.77rem}.academy-offer-line b{color:var(--accent-gold)}.course-owned{align-self:center;color:var(--accent-gold);font-weight:800}.academy-card-fan{position:relative;display:grid;place-items:center;min-height:290px}.academy-card-fan img{position:absolute;width:min(145px,36%);aspect-ratio:2/3;object-fit:cover;border:4px solid var(--surface);border-radius:15px;box-shadow:0 18px 45px rgb(0 0 0/.32)}.academy-card-fan img:nth-child(1){transform:translateX(-65%) rotate(-11deg)}.academy-card-fan img:nth-child(2){z-index:2;transform:translateY(-8px)}.academy-card-fan img:nth-child(3){transform:translateX(65%) rotate(11deg)}.academy-card-fan>b{position:absolute;z-index:3;bottom:0;padding:8px 12px;border-radius:999px;color:#1d122b;background:var(--accent-gold);font-size:.75rem}.academy-lessons>a.is-locked{background:color-mix(in srgb,var(--accent-secondary) 5%,var(--surface-soft))}.academy-lessons>a.is-locked>span,.academy-lessons>a.is-locked>b{color:var(--accent-gold)}.academy-lock{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1fr);gap:clamp(24px,5vw,70px);align-items:center;max-width:1000px;margin:0 auto;padding:clamp(24px,5vw,58px);border:1px solid color-mix(in srgb,var(--accent-gold) 35%,var(--border-soft));border-radius:26px;background:radial-gradient(circle at 20% 30%,color-mix(in srgb,var(--accent-primary) 14%,transparent),transparent 37%),var(--surface-elevated)}.academy-lock h2{font-size:clamp(2rem,4vw,4rem)}.academy-lock p,.academy-lock li{color:var(--text-secondary);line-height:1.6}.academy-lock ul{display:grid;gap:6px;padding-left:20px}
.stars-page{display:grid;gap:18px}.stars-hero{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:clamp(25px,4vw,50px);border:1px solid color-mix(in srgb,var(--accent-gold) 30%,var(--border-soft));border-radius:26px;background:radial-gradient(circle at 80% 20%,color-mix(in srgb,var(--accent-gold) 17%,transparent),transparent 28%),var(--surface-elevated)}.stars-hero h1{font-size:clamp(2.35rem,4.8vw,4.2rem);line-height:.96}.stars-hero h1 span{color:var(--accent-gold)}.stars-hero p{max-width:65ch;color:var(--text-secondary);line-height:1.65}.stars-weekly{display:grid;min-width:180px;padding:20px;border:1px solid var(--border-soft);border-radius:20px;text-align:center;background:var(--surface-soft)}.stars-weekly small{color:var(--text-muted)}.stars-weekly strong{font:700 3.3rem var(--font-display)}.stars-weekly span{color:var(--accent-gold);font-weight:800}.stars-action-grid,.star-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.stars-action-grid article,.star-products article{display:grid;padding:20px;border:1px solid var(--border-soft);border-radius:19px;background:var(--surface-elevated)}.stars-action-grid small{color:var(--accent-gold);text-transform:uppercase}.stars-action-grid h2{font-size:1.5rem}.stars-action-grid>article>strong{font:700 2.3rem var(--font-display);color:var(--accent-primary)}.stars-action-grid ul{padding-left:18px;color:var(--text-muted);font-size:.8rem}.star-products article>span{color:var(--accent-gold);font-size:1.5rem}.star-products p{color:var(--text-muted)}.star-products .button{margin-top:auto}.stars-history{display:grid}.stars-history>div{display:grid;grid-template-columns:100px minmax(0,1fr) 80px 80px;gap:12px;padding:12px 0;border-top:1px solid var(--border-soft)}.stars-history time,.stars-history small{color:var(--text-muted)}.stars-history span{color:var(--accent-gold);font-weight:800}
@media(max-width:900px){.academy-lock{grid-template-columns:1fr}.academy-lock .academy-card-fan{min-height:250px}.stars-action-grid,.star-products{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.dream-symbol-card{grid-template-columns:76px minmax(0,1fr);min-height:0}.dream-symbol-art{width:76px;border-radius:13px}.dream-symbol-art--hero{float:none;width:100%;margin:0 0 22px;aspect-ratio:16/8}.paid-consent__card{grid-template-columns:1fr}.paid-consent__price{display:grid}.paid-consent__price span{text-align:left}.paid-consent__actions{display:grid;grid-template-columns:1fr}.academy-hero{grid-template-columns:1fr}.academy-card-fan{min-height:250px}.stars-hero{grid-template-columns:1fr}.stars-weekly{min-width:0}.stars-action-grid,.star-products{grid-template-columns:1fr}.stars-history>div{grid-template-columns:74px minmax(0,1fr) 58px}.stars-history small{grid-column:2}}

/* Vedmali compact experience, live Academy practice and logo-style dream worlds */
.brand-emblem{flex-basis:42px;width:42px;height:42px;overflow:visible;border-radius:0}
.brand-emblem img{position:static;width:42px;height:42px;max-width:100%;object-fit:contain}
.brand-wordmark{display:block;width:136px;height:38px;text-shadow:none}
.brand-wordmark img{display:block;width:100%;height:100%;object-fit:contain}

.dream-submit-actions{display:flex;flex-wrap:wrap;gap:9px}.dream-submit-actions .button{flex:1 1 220px}
.dream-symbol-art{background-image:var(--dream-atlas);background-size:800% 400%;background-position:var(--dream-x,0) var(--dream-y,0)}
.dream-symbol-art::before{background:linear-gradient(145deg,rgb(255 255 255/.08),transparent 42%);mix-blend-mode:screen}.dream-symbol-art::after{background:linear-gradient(165deg,transparent 55%,rgb(8 7 28/.45))}
.dream-symbol-art--water,.dream-symbol-art--animals,.dream-symbol-art--people,.dream-symbol-art--places{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v2-a.webp')}
.dream-symbol-art--movement,.dream-symbol-art--body,.dream-symbol-art--nature,.dream-symbol-art--objects{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v2-b.webp')}
.dream-symbol-art--events,.dream-symbol-art--sky,.dream-symbol-art--food,.dream-symbol-art--work{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v2-c.webp')}
.dream-symbol-art--technology,.dream-symbol-art--colors,.dream-symbol-art--time,.dream-symbol-art--spiritual{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v2-d.webp')}
.dream-symbol-art--water,.dream-symbol-art--movement,.dream-symbol-art--events,.dream-symbol-art--technology{--dream-y:0%}
.dream-symbol-art--animals,.dream-symbol-art--body,.dream-symbol-art--sky,.dream-symbol-art--colors{--dream-y:33.3333%}
.dream-symbol-art--people,.dream-symbol-art--nature,.dream-symbol-art--food,.dream-symbol-art--time{--dream-y:66.6667%}
.dream-symbol-art--places,.dream-symbol-art--objects,.dream-symbol-art--work,.dream-symbol-art--spiritual{--dream-y:100%}
.dream-symbol-art--v0{--dream-x:0%}.dream-symbol-art--v1{--dream-x:14.2857%}.dream-symbol-art--v2{--dream-x:28.5714%}.dream-symbol-art--v3{--dream-x:42.8571%}.dream-symbol-art--v4{--dream-x:57.1429%}.dream-symbol-art--v5{--dream-x:71.4286%}.dream-symbol-art--v6{--dream-x:85.7143%}.dream-symbol-art--v7{--dream-x:100%}
.dream-symbol-art--atlas-v2-a{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v2-a.webp')}.dream-symbol-art--atlas-v2-b{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v2-b.webp')}.dream-symbol-art--atlas-v2-c{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v2-c.webp')}.dream-symbol-art--atlas-v2-d{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v2-d.webp')}
.dream-symbol-art--atlas-v3-search-a{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v3-search-a.png')}.dream-symbol-art--atlas-v3-search-b{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v3-search-b.png')}.dream-symbol-art--atlas-v3-animals{--dream-atlas:url('./assets/dreams/symbol-worlds-atlas-v3-animals.png')}
.dream-symbol-art--cols-8{background-size:800% 400%}.dream-symbol-art--cols-4{background-size:400% 400%}
.dream-symbol-art--c8-x0{--dream-x:0%}.dream-symbol-art--c8-x1{--dream-x:14.2857%}.dream-symbol-art--c8-x2{--dream-x:28.5714%}.dream-symbol-art--c8-x3{--dream-x:42.8571%}.dream-symbol-art--c8-x4{--dream-x:57.1429%}.dream-symbol-art--c8-x5{--dream-x:71.4286%}.dream-symbol-art--c8-x6{--dream-x:85.7143%}.dream-symbol-art--c8-x7{--dream-x:100%}
.dream-symbol-art--c4-x0{--dream-x:0%}.dream-symbol-art--c4-x1{--dream-x:33.3333%}.dream-symbol-art--c4-x2{--dream-x:66.6667%}.dream-symbol-art--c4-x3{--dream-x:100%}
.dream-symbol-art--y0{--dream-y:0%}.dream-symbol-art--y1{--dream-y:33.3333%}.dream-symbol-art--y2{--dream-y:66.6667%}.dream-symbol-art--y3{--dream-y:100%}
.dream-symbol-art--animals{display:grid;place-items:center;background-image:url('./assets/dreams/animals/animal-ornament-v1.webp'),radial-gradient(circle at 50% 48%,color-mix(in srgb,var(--accent-primary) 23%,transparent),transparent 52%),linear-gradient(145deg,#241747,#101b38);background-position:center;background-repeat:no-repeat;background-size:100% 100%,cover,cover}
.dream-symbol-art--animals.dream-symbol-art--animal-sprite{display:block;background-image:var(--dream-atlas);background-repeat:no-repeat;background-size:400% 400%;background-position:var(--dream-x,0) var(--dream-y,0)}
.dream-symbol-art--animals::before{background:radial-gradient(circle at 50% 48%,rgb(255 255 255/.08),transparent 46%)}.dream-symbol-art--animals::after{background:linear-gradient(160deg,rgb(255 255 255/.04),transparent 44%,rgb(5 8 25/.2))}
.dream-symbol-art>.dream-symbol-art__animal{position:relative;inset:auto;right:auto;bottom:auto;z-index:2;display:block;margin:0!important;color:initial!important;font:400 clamp(3.2rem,5.1vw,4rem)/1 "Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif!important;text-shadow:none!important;filter:grayscale(1) sepia(1) saturate(6.6) hue-rotate(248deg) brightness(1.22) contrast(1.08);transform:translateY(-1px)}
.dream-symbol-art__animal-image{position:relative;z-index:2;width:88%;height:88%;object-fit:contain;filter:drop-shadow(0 8px 10px rgb(0 0 0/.25))}
.dream-symbol-art--hero>.dream-symbol-art__animal{font-size:clamp(7rem,15vw,11rem)!important}.dream-symbol-art--hero>.dream-symbol-art__animal-image{width:82%;height:82%}

.academy-lesson>header{max-width:1040px;padding:24px 0 30px}.academy-lesson h1{max-width:18ch;font-size:clamp(2.15rem,4.4vw,4rem);line-height:.98}.academy-lesson>header>p:last-child{font-size:.98rem;line-height:1.62}.academy-lesson__body,.academy-practice,.academy-quiz,.academy-live-practice,.academy-lesson__nav{max-width:1040px}.academy-lesson__body section{padding:18px 20px}.academy-lesson__body h2{font-size:clamp(1.35rem,2.2vw,2rem)}.academy-lesson__body p{margin:.4em 0;line-height:1.62}.academy-practice,.academy-quiz{padding:20px 22px}.academy-practice h2,.academy-quiz h2{font-size:clamp(1.45rem,2.4vw,2.15rem)}
.academy-live-practice{max-width:1040px;margin:12px auto 0;padding:22px;border:1px solid color-mix(in srgb,var(--accent-primary) 34%,var(--border-soft));border-radius:21px;background:radial-gradient(circle at 85% 10%,color-mix(in srgb,var(--accent-primary) 12%,transparent),transparent 30%),var(--surface-elevated)}
.academy-live-practice>header{display:flex;align-items:end;justify-content:space-between;gap:22px}.academy-live-practice>header>div{max-width:660px}.academy-live-practice h2{margin:.15em 0;font-size:clamp(1.65rem,2.8vw,2.55rem)}.academy-live-practice header p:last-child{color:var(--text-secondary);line-height:1.55}.academy-live-practice__table{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(280px,1fr);gap:24px;align-items:center;margin-top:18px;padding-top:18px;border-top:1px solid var(--border-soft)}.academy-live-practice__cards{display:flex;justify-content:center;gap:10px;min-height:330px}.academy-live-card{display:grid;gap:8px;align-content:center;width:min(190px,32%);opacity:0;transform:translateY(12px) rotate(-2deg);transition:opacity .35s ease,transform .55s cubic-bezier(.2,.8,.2,1)}.academy-live-card.is-revealed{opacity:1;transform:none}.academy-live-card tarot-visual{display:block;width:100%;aspect-ratio:2/3}.academy-live-card strong{text-align:center;font-size:.8rem}.academy-live-practice__question{display:grid;gap:10px}.academy-live-practice__question h3{margin:0;font-size:clamp(1.25rem,2.1vw,1.8rem)}.academy-live-practice__question [data-practice-options]{display:grid;gap:8px}.academy-live-practice__question [data-practice-options] button{padding:12px 14px;border:1px solid var(--border-soft);border-radius:12px;color:var(--text-primary);text-align:left;background:var(--surface-soft);cursor:pointer}.academy-live-practice__question button.is-correct{border-color:#4fb787;background:color-mix(in srgb,#4fb787 13%,var(--surface))}.academy-live-practice__question button.is-wrong{border-color:#c9687d;background:color-mix(in srgb,#c9687d 12%,var(--surface))}.academy-live-practice__question [data-practice-feedback]{min-height:2.8em;color:var(--text-secondary);line-height:1.45}

.application-catalog-hero h1,.mystic-hero h1,.today-header h1,.tarot-library-hero h1,.spread-page>header h1,.tarot-card-page__hero h1,.reading-index-hero h1,.reading-article-hero h1,.symbol-detail h1,.saved-dream h1,.stars-hero h1,.number-deep-reading>header h2,.compatibility-reading>header h2{font-size:clamp(2rem,3.8vw,3.65rem);line-height:1}
.mystic-hero{min-height:310px;padding:clamp(24px,3vw,42px)}.mystic-hero__copy>p:not(.eyebrow){font-size:1rem}.mystic-stats{margin-top:17px}.academy-card-fan{min-height:230px}.academy-card-fan img{width:min(118px,32%)}.academy-track{padding:20px}.academy-track h2{font-size:clamp(1.5rem,2.4vw,2.25rem)}.academy-principles article{padding:15px}
.reading-index-hero{margin-bottom:26px;padding:28px 32px}.reading-index-hero .lead{font-size:1rem}.reading-feed-item,.reading-feed-item.is-featured{gap:20px;padding:18px 0}.reading-feed-item h2,.reading-feed-item.is-featured h2{font-size:clamp(1.35rem,2.2vw,2rem)}.reading-feed-item__excerpt{-webkit-line-clamp:3}.reading-article-hero{padding:30px 34px}.reading-back-link{margin-bottom:24px}.reading-article-hero__lead{font-size:1.05rem;line-height:1.62}.reading-article-meta{margin-top:24px}.reading-article-body.article-content{width:min(100% - 36px,78ch);margin:34px auto;font-size:1rem;line-height:1.74}.reading-article-body>p{margin-bottom:1.15em}.reading-article-body h2{margin:1.8em 0 .55em;font-size:clamp(1.55rem,2.6vw,2.25rem)}.reading-article-body h3{margin:1.45em 0 .45em}.reading-article-body blockquote{margin:1.5em 0;padding:1em 1.2em}

.site-search-page{width:min(100%,1120px);margin:auto}.site-search-page>header{padding:24px 0 28px}.site-search-page>header h1{margin:.12em 0;font-size:clamp(2.2rem,4vw,3.8rem)}.site-search-page>header form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}.site-search-page>header label{display:flex;align-items:center;gap:9px;min-height:48px;padding:0 15px;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface-elevated)}.site-search-page input{width:100%;border:0;outline:0;color:var(--text-primary);background:transparent;font:inherit}.site-search-results{display:grid;gap:8px}.site-search-results>a{display:grid;grid-template-columns:120px minmax(0,1fr) 24px;gap:16px;align-items:center;padding:15px 18px;border:1px solid var(--border-soft);border-radius:14px;color:inherit;background:var(--surface-elevated)}.site-search-results>a>span{color:var(--accent-gold);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em}.site-search-results h3,.site-search-results p{margin:0}.site-search-results h3{font-size:1.18rem}.site-search-results p{margin-top:4px;color:var(--text-muted);font-size:.84rem;line-height:1.45}.site-search-results b{color:var(--accent-primary)}.search-empty{padding:34px;border:1px solid var(--border-soft);border-radius:20px;text-align:center;background:var(--surface-elevated)}.search-empty>span{color:var(--accent-primary);font-size:2rem}.search-empty p{max-width:60ch;margin:10px auto 20px;color:var(--text-secondary)}

@media(max-width:760px){.brand-wordmark{width:112px}.academy-live-practice>header{align-items:stretch;flex-direction:column}.academy-live-practice__table{grid-template-columns:1fr}.academy-live-practice__cards{min-height:290px}.site-search-results>a{grid-template-columns:1fr 20px}.site-search-results>a>span{grid-column:1/-1}.site-search-page>header form{grid-template-columns:1fr}.dream-submit-actions{display:grid}.reading-index-hero,.reading-article-hero{padding:24px 20px}}
@media(max-width:620px){.academy-lesson h1,.symbol-detail h1,.saved-dream h1,.mystic-hero h1,.today-header h1,.reading-index-hero h1,.reading-article-hero h1{font-size:clamp(2rem,10vw,3rem)}.academy-lesson>header{padding:18px 0 22px}.academy-lesson__body section{padding:16px}.academy-live-practice{padding:17px}.academy-live-practice__cards{min-height:250px}.academy-live-card{width:min(150px,31%)}.dream-symbol-art--hero{float:none;width:min(100%,300px);margin:0 auto 20px;aspect-ratio:1}.reading-article-body.article-content{width:min(100% - 24px,78ch);margin:26px auto}.brand{flex-basis:auto}.brand-wordmark{display:none}}

/* Academy cards must remain large enough to read the artwork, not act as thumbnails. */
.academy-live-practice__table{grid-template-columns:minmax(390px,.95fr) minmax(320px,1fr)}
.academy-live-practice__cards[data-count="1"]{min-height:560px;align-items:center}
.academy-live-practice__cards[data-count="1"] .academy-live-card{width:clamp(300px,78%,370px)}
.academy-live-practice__cards[data-count="1"] .academy-live-card strong{font-size:1rem}
.academy-live-practice__table[data-card-count="3"]{grid-template-columns:1fr}
.academy-live-practice__cards[data-count="3"]{min-height:350px;align-items:center}
.academy-live-practice__cards[data-count="3"] .academy-live-card{width:min(220px,30%)}
.academy-hero .hero-actions{flex-wrap:wrap}
@media(max-width:760px){.academy-live-practice__table{grid-template-columns:1fr}.academy-live-practice__cards[data-count="1"]{min-height:460px}.academy-live-practice__cards[data-count="1"] .academy-live-card{width:min(300px,88%)}.academy-live-practice__cards[data-count="3"]{min-height:0;flex-direction:column}.academy-live-practice__cards[data-count="3"] .academy-live-card{width:min(280px,88%)}}
@media(max-width:390px){.academy-live-practice__cards[data-count="1"]{min-height:410px}.academy-live-practice__cards[data-count="1"] .academy-live-card{width:min(260px,92%)}}

/* Academy discovery and stable Tarot card proportions. */
.vedmali-card-back{
  position:relative;
  display:block;
  width:clamp(98px,12vw,142px);
  aspect-ratio:2/3;
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--accent-gold) 42%,var(--border-soft));
  border-radius:14px;
  background:
    radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--accent-secondary) 46%,transparent) 0 8%,transparent 9% 20%,color-mix(in srgb,var(--accent-gold) 24%,transparent) 21% 22%,transparent 23% 36%,color-mix(in srgb,var(--accent-secondary) 22%,transparent) 37% 38%,transparent 39%),
    linear-gradient(145deg,color-mix(in srgb,var(--accent-primary) 20%,var(--surface-soft)),var(--bg-secondary));
  box-shadow:0 18px 42px rgb(0 0 0/.28);
}
.vedmali-card-back::before{content:"";position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--accent-gold) 32%,transparent);border-radius:9px;background:linear-gradient(45deg,transparent 48%,color-mix(in srgb,var(--accent-secondary) 18%,transparent) 49% 51%,transparent 52%),linear-gradient(-45deg,transparent 48%,color-mix(in srgb,var(--accent-secondary) 18%,transparent) 49% 51%,transparent 52%);background-size:22px 22px}
.vedmali-card-back::after{content:"V";position:absolute;inset:50% auto auto 50%;display:grid;place-items:center;width:42px;aspect-ratio:1;translate:-50% -50%;border:1px solid var(--accent-gold);border-radius:50%;color:var(--accent-gold);font:700 1.05rem/1 var(--font-display);background:color-mix(in srgb,var(--bg-secondary) 88%,transparent);box-shadow:0 0 24px color-mix(in srgb,var(--accent-primary) 25%,transparent)}

.academy-lesson.is-locked>header{position:relative;z-index:2}
.academy-lock{position:relative;overflow:hidden;margin-top:12px}
.academy-lock .academy-card-fan--lock{min-height:320px;max-height:320px;overflow:hidden;isolation:isolate}
.academy-lock .academy-card-fan--lock img{width:clamp(124px,15vw,168px);height:clamp(186px,22.5vw,252px);max-width:none;max-height:none;aspect-ratio:2/3;object-fit:cover}

.academy-practice-preview{display:grid;grid-template-columns:minmax(250px,.78fr) minmax(260px,1fr);gap:clamp(24px,4vw,54px);align-items:center;min-height:310px;margin-top:18px;padding:28px clamp(18px,3vw,36px);border-top:1px solid var(--border-soft);border-radius:0 0 17px 17px;background:radial-gradient(circle at 24% 50%,color-mix(in srgb,var(--accent-primary) 13%,transparent),transparent 30%)}
.academy-practice-preview[hidden]{display:none!important}
.academy-practice-preview__deck{position:relative;display:grid;place-items:center;min-height:250px}
.academy-practice-preview__deck .vedmali-card-back{position:absolute}
.academy-practice-preview__deck .vedmali-card-back:nth-child(1){transform:translateX(-62%) rotate(-10deg)}
.academy-practice-preview__deck .vedmali-card-back:nth-child(2){z-index:2;transform:translateY(-8px)}
.academy-practice-preview__deck .vedmali-card-back:nth-child(3){transform:translateX(62%) rotate(10deg)}
.academy-practice-preview__copy{display:grid;gap:10px}.academy-practice-preview__copy h3{margin:0;font-size:clamp(1.35rem,2.4vw,2.15rem);line-height:1.08}.academy-practice-preview__copy p:last-child{margin:0;color:var(--text-secondary);line-height:1.58}
.academy-live-practice__table[hidden]{display:none!important}

.home-academy-invite{display:grid;grid-template-columns:minmax(180px,.48fr) minmax(0,1fr);gap:clamp(24px,4vw,54px);align-items:center;margin-top:clamp(18px,3vw,36px);padding:clamp(22px,3.5vw,38px);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-primary) 34%,var(--border-soft));border-radius:22px;background:radial-gradient(circle at 11% 50%,color-mix(in srgb,var(--accent-secondary) 19%,transparent),transparent 29%),linear-gradient(120deg,var(--surface-elevated),color-mix(in srgb,var(--accent-primary) 7%,var(--surface)))}
.home-academy-invite__deck{position:relative;display:grid;place-items:center;min-height:210px}
.home-academy-invite__deck .vedmali-card-back{position:absolute;width:clamp(86px,8vw,112px)}
.home-academy-invite__deck .vedmali-card-back:nth-child(1){transform:translateX(-58%) rotate(-12deg)}
.home-academy-invite__deck .vedmali-card-back:nth-child(2){z-index:2;transform:translateY(-8px)}
.home-academy-invite__deck .vedmali-card-back:nth-child(3){transform:translateX(58%) rotate(12deg)}
.home-academy-invite__copy h2{max-width:20ch;margin:.18em 0;font-size:clamp(1.8rem,3.1vw,3rem);line-height:1}.home-academy-invite__copy>p:last-of-type{max-width:65ch;color:var(--text-secondary);line-height:1.58}
.home-academy-invite__facts{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.home-academy-invite__facts span{padding:7px 10px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-muted);font-size:.72rem}
.home-academy-invite>.button{grid-column:2;justify-self:start;white-space:nowrap}

.tarot-related-row{align-items:start;justify-content:start}
.tarot-related-row a{align-content:start;min-width:0;height:auto}
.tarot-related-row__art{display:block;width:100%;aspect-ratio:2/3;overflow:hidden;border-radius:10px;background:var(--bg-secondary)}
.tarot-related-row__art img{display:block;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;border-radius:inherit}

@media(max-width:760px){.academy-practice-preview{grid-template-columns:1fr;min-height:0}.academy-practice-preview__deck{min-height:225px}.home-academy-invite{grid-template-columns:1fr;padding:22px}.home-academy-invite__deck{min-height:200px}.home-academy-invite>.button{grid-column:auto;justify-self:stretch}.tarot-related-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-bottom:0}.tarot-related-row a{min-width:0;scroll-snap-align:none}}
@media(max-width:620px){.academy-lock .academy-card-fan--lock{min-height:235px;max-height:235px}.academy-lock .academy-card-fan--lock img{width:112px;height:168px}.academy-practice-preview{padding:22px 10px}.academy-practice-preview__deck .vedmali-card-back{width:104px}.home-academy-invite__copy h2{font-size:clamp(1.65rem,8vw,2.3rem)}}
@media(prefers-reduced-motion:reduce){.academy-practice-preview__deck .vedmali-card-back,.home-academy-invite__deck .vedmali-card-back{transition:none}}

/* Plain-language Tarot spread onboarding. */
.spread-library-hero__note{max-width:66ch;margin-top:12px;padding-left:14px;border-left:2px solid var(--accent-primary);color:var(--text-muted)!important;font-size:.9rem!important}
.spread-explainer{display:grid;gap:20px;margin-top:18px;padding:clamp(22px,3.5vw,38px);border:1px solid color-mix(in srgb,var(--accent-primary) 30%,var(--border-soft));border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 8%,var(--surface)),var(--surface-elevated))}
.spread-explainer>header h2{max-width:22ch;margin:.15em 0;font-size:clamp(1.8rem,3.4vw,3.1rem);line-height:1}
.spread-explainer__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.spread-explainer__steps article{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;padding:17px;border:1px solid var(--border-soft);border-radius:16px;background:var(--surface-soft)}
.spread-explainer__steps b{display:grid;place-items:center;width:34px;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--accent-gold) 44%,var(--border-soft));border-radius:50%;color:var(--accent-gold);font-size:.72rem}
.spread-explainer__steps h3{margin:1px 0 7px;font-size:1.05rem}.spread-explainer__steps p{margin:0;color:var(--text-secondary);font-size:.83rem;line-height:1.55}
.spread-explainer__privacy{margin:0;padding:12px 14px;border-radius:13px;color:var(--text-secondary);background:color-mix(in srgb,var(--accent-secondary) 8%,var(--surface-soft));font-size:.82rem}.spread-explainer__privacy strong{color:var(--text-primary)}
.spread-library-grid header b{width:auto;min-width:62px;height:34px;padding:0 10px;border-radius:999px;font-size:.72rem;white-space:nowrap}
.spread-library-grid>a>span{margin-top:18px}

.spread-run-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:12px}
.spread-run-guide article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:start;padding:15px;border:1px solid var(--border-soft);border-radius:15px;background:var(--surface-elevated)}
.spread-run-guide b{display:grid;place-items:center;width:32px;aspect-ratio:1;border-radius:50%;color:#21132e;background:var(--accent-gold);font-size:.8rem}.spread-run-guide div{display:grid;gap:4px}.spread-run-guide strong{font-size:.9rem}.spread-run-guide span{color:var(--text-muted);font-size:.76rem;line-height:1.45}
.spread-board-intro{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(280px,1fr);gap:24px;align-items:end;margin-top:30px;padding-bottom:16px;border-bottom:1px solid var(--border-soft)}
.spread-board-intro h2{max-width:20ch;margin:.15em 0;font-size:clamp(1.6rem,2.8vw,2.5rem);line-height:1}.spread-board-intro>p{margin:0;color:var(--text-secondary);line-height:1.58}
.vedmali-spread-back{position:relative;isolation:isolate;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--accent-secondary) 43%,transparent) 0 9%,transparent 10% 22%,color-mix(in srgb,var(--accent-gold) 24%,transparent) 23% 24%,transparent 25% 38%,color-mix(in srgb,var(--accent-secondary) 20%,transparent) 39% 40%,transparent 41%),linear-gradient(145deg,color-mix(in srgb,var(--accent-primary) 19%,var(--surface-soft)),var(--bg-secondary))}
.vedmali-spread-back::before{content:"";position:absolute;inset:8px;z-index:-1;border:1px solid color-mix(in srgb,var(--accent-gold) 34%,transparent);border-radius:8px;background:linear-gradient(45deg,transparent 48%,color-mix(in srgb,var(--accent-secondary) 18%,transparent) 49% 51%,transparent 52%),linear-gradient(-45deg,transparent 48%,color-mix(in srgb,var(--accent-secondary) 18%,transparent) 49% 51%,transparent 52%);background-size:20px 20px}
.vedmali-spread-back>span{display:grid;place-items:center;width:40px;aspect-ratio:1;border:1px solid var(--accent-gold);border-radius:50%;color:var(--accent-gold);background:color-mix(in srgb,var(--bg-secondary) 86%,transparent);box-shadow:0 0 22px color-mix(in srgb,var(--accent-primary) 24%,transparent)}

@media(max-width:900px){.spread-explainer__steps,.spread-run-guide{grid-template-columns:1fr}.spread-explainer__steps article,.spread-run-guide article{grid-template-columns:40px minmax(0,1fr)}.spread-board-intro{grid-template-columns:1fr;gap:8px}}
@media(max-width:620px){.spread-explainer{padding:18px}.spread-library-hero__note{font-size:.82rem!important}.spread-run-guide article{padding:13px}.spread-board-intro{margin-top:24px}.spread-position{grid-template-columns:26px 92px minmax(0,1fr)}.spread-position h2{font-size:1.25rem}}
@media(max-width:620px){.spread-intention>*{min-width:0}.spread-intention .button{width:100%;max-width:100%;white-space:normal;text-align:center}.spread-intention textarea{width:100%;max-width:100%}}

/* Stable self-contained Vedmali logo crop. The previous nested-SVG wrappers could render blank. */
.brand{gap:7px}
.brand-emblem{position:relative;flex:0 0 42px;width:42px;height:42px;overflow:hidden;border-radius:50%;filter:drop-shadow(0 7px 13px color-mix(in srgb,var(--accent-primary) 24%,transparent))}
.brand-emblem img{position:absolute;left:-56px;top:-3px;width:161px;height:auto;max-width:none;object-fit:initial}
.brand-wordmark{position:relative;display:block;flex:0 0 150px;width:150px;height:40px;overflow:hidden}
.brand-wordmark img{position:absolute;left:-24px;top:-56px;width:199px;height:auto;max-width:none;object-fit:initial}
.brand-emblem img,.brand-wordmark img{pointer-events:none}
.nav-symbol--rune{font-family:"Noto Sans Runic","Segoe UI Symbol","Arial Unicode MS",sans-serif;font-size:1.05rem}

/* Rune world: code-native stones, readable meanings and a compact interactive cast. */
.rune-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.52fr);gap:clamp(28px,5vw,76px);align-items:center;min-height:390px;padding:clamp(28px,4.5vw,64px);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-gold) 34%,var(--border-soft));border-radius:28px;background:radial-gradient(circle at 80% 36%,color-mix(in srgb,var(--accent-gold) 13%,transparent),transparent 23%),radial-gradient(circle at 13% 10%,color-mix(in srgb,var(--accent-primary) 18%,transparent),transparent 37%),linear-gradient(145deg,var(--surface-elevated),color-mix(in srgb,var(--bg-secondary) 84%,var(--surface)));box-shadow:var(--shadow-card)}
.rune-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.28;background-image:radial-gradient(circle,color-mix(in srgb,var(--accent-gold) 70%,transparent) 0 1px,transparent 1.4px);background-size:53px 53px;mask-image:linear-gradient(90deg,transparent 20%,#000)}
.rune-hero__copy{max-width:760px}.rune-hero h1{max-width:16ch;margin:.18em 0;font-size:clamp(2.35rem,4.5vw,4.45rem);line-height:.95}.rune-hero .lead{max-width:63ch;color:var(--text-secondary);font-size:clamp(.98rem,1.2vw,1.12rem);line-height:1.67}
.rune-hero__facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.rune-hero__facts span{padding:8px 11px;border:1px solid color-mix(in srgb,var(--accent-gold) 28%,var(--border-soft));border-radius:999px;color:var(--text-muted);background:color-mix(in srgb,var(--surface) 62%,transparent);font-size:.75rem}
.rune-hero__sigil{position:relative;display:grid;place-items:center;min-height:285px;font-family:"Noto Sans Runic","Segoe UI Symbol","Arial Unicode MS",sans-serif}.rune-hero__sigil::before,.rune-hero__sigil::after{content:"";position:absolute;width:230px;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--accent-gold) 30%,transparent);border-radius:50%;box-shadow:0 0 0 28px color-mix(in srgb,var(--accent-primary) 4%,transparent),0 0 70px color-mix(in srgb,var(--accent-primary) 16%,transparent)}.rune-hero__sigil::after{width:150px;border-style:dashed;transform:rotate(25deg)}
.rune-hero__sigil b{z-index:2;display:grid;place-items:center;width:116px;aspect-ratio:1;border:1px solid var(--accent-gold);border-radius:44% 56% 48% 52%/52% 43% 57% 48%;color:var(--accent-gold);background:radial-gradient(circle at 35% 25%,color-mix(in srgb,var(--accent-gold) 20%,transparent),transparent 45%),linear-gradient(145deg,#263247,#101827);box-shadow:inset 8px 9px 20px rgb(255 255 255/.06),inset -12px -14px 24px rgb(0 0 0/.36),0 24px 55px rgb(0 0 0/.32);font-size:4.5rem;font-weight:400;text-shadow:0 0 22px color-mix(in srgb,var(--accent-gold) 40%,transparent)}
.rune-hero__sigil i{position:absolute;z-index:3;color:color-mix(in srgb,var(--accent-gold) 72%,var(--text-muted));font-size:1.45rem;font-style:normal}.rune-hero__sigil i:nth-child(1){translate:-118px -82px}.rune-hero__sigil i:nth-child(2){translate:108px -91px}.rune-hero__sigil i:nth-child(4){translate:-126px 84px}.rune-hero__sigil i:nth-child(5){translate:119px 76px}

.rune-draw{scroll-margin-top:calc(var(--topbar) + 24px);margin-top:clamp(18px,3vw,34px);padding:clamp(22px,3.6vw,42px);border:1px solid color-mix(in srgb,var(--accent-primary) 33%,var(--border-soft));border-radius:25px;background:radial-gradient(circle at 92% 4%,color-mix(in srgb,var(--accent-primary) 14%,transparent),transparent 32%),var(--surface-elevated)}
.rune-draw__intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding-bottom:22px;border-bottom:1px solid var(--border-soft)}.rune-draw__intro h2{max-width:21ch;margin:.12em 0;font-size:clamp(1.8rem,3.1vw,3rem);line-height:1}.rune-draw__intro p:last-child{max-width:70ch;margin-bottom:0;color:var(--text-secondary);line-height:1.58}.rune-draw__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.rune-draw__actions .button{white-space:nowrap}
.rune-draw__table{min-height:245px;padding-top:24px}.rune-draw__table:has(.rune-cast-preview){display:grid;grid-template-columns:minmax(260px,.65fr) minmax(280px,1fr);gap:clamp(24px,4vw,55px);align-items:center}.rune-draw__table>div:last-child>h3{margin:.15em 0;font-size:clamp(1.5rem,2.7vw,2.5rem)}.rune-draw__table>div:last-child>p:last-child{max-width:58ch;color:var(--text-secondary);line-height:1.6}
.rune-cast-preview{position:relative;display:grid;place-items:center;min-height:210px;font-family:"Noto Sans Runic","Segoe UI Symbol","Arial Unicode MS",sans-serif}.rune-cast-preview span{position:absolute;display:grid;place-items:center;width:92px;aspect-ratio:.86;border:1px solid color-mix(in srgb,var(--accent-gold) 38%,var(--border-soft));border-radius:42% 56% 47% 53%/55% 44% 58% 45%;color:var(--accent-gold);background:linear-gradient(145deg,#293448,#111927);box-shadow:inset 6px 7px 15px rgb(255 255 255/.05),inset -9px -12px 18px rgb(0 0 0/.35),0 20px 35px rgb(0 0 0/.25);font-size:2.8rem}.rune-cast-preview span:nth-child(1){transform:translateX(-78px) rotate(-13deg)}.rune-cast-preview span:nth-child(2){z-index:2;transform:translateY(-12px) rotate(2deg)}.rune-cast-preview span:nth-child(3){transform:translateX(80px) rotate(12deg)}
.rune-draw>.form-status{margin:16px 0 0;color:var(--text-muted);font-size:.82rem}.rune-draw-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px}.rune-result-card{display:grid;grid-template-columns:105px minmax(0,1fr);gap:18px;align-items:start;padding:20px;border:1px solid var(--border-soft);border-radius:19px;background:var(--surface-soft);opacity:0;transform:translateY(12px);transition:opacity .35s ease,transform .45s ease}.rune-result-card.is-revealed{opacity:1;transform:none}.rune-result-card__stone{position:relative;display:grid;place-items:center;aspect-ratio:.88;border:1px solid color-mix(in srgb,var(--accent-gold) 42%,var(--border-soft));border-radius:43% 57% 48% 52%/54% 44% 56% 46%;color:var(--accent-gold);background:radial-gradient(circle at 32% 24%,rgb(255 255 255/.09),transparent 35%),linear-gradient(150deg,#2b3649,#101725);box-shadow:inset -12px -13px 19px rgb(0 0 0/.34),0 16px 30px rgb(0 0 0/.24)}.rune-result-card__stone span{font:400 3.5rem/1 "Noto Sans Runic","Segoe UI Symbol","Arial Unicode MS",sans-serif}.rune-result-card__stone small{position:absolute;right:14px;bottom:11px;color:color-mix(in srgb,var(--accent-gold) 62%,transparent);font-size:.63rem}.rune-result-card__copy{display:grid;gap:9px}.rune-result-card h3{margin:0;font-size:1.35rem}.rune-result-card p:not(.eyebrow){margin:0;color:var(--text-secondary);font-size:.87rem;line-height:1.55}.rune-result-card blockquote{margin:3px 0 0;padding:10px 12px;border-left:2px solid var(--accent-primary);color:var(--text-primary);background:color-mix(in srgb,var(--accent-primary) 6%,transparent);font:600 .9rem/1.5 var(--font-body)}.rune-result-card strong{color:var(--text-muted);font-size:.78rem;line-height:1.48}.rune-result-card .text-link{margin-top:4px;font-size:.82rem}
.rune-question{display:grid;gap:7px;max-width:760px;margin:22px 0 0}.rune-question>span{font-weight:800}.rune-question>span small,.rune-question>small{color:var(--text-muted);font-size:.72rem;font-weight:500}.rune-question textarea{width:100%;resize:vertical;min-height:70px;padding:13px 15px;border:1px solid var(--border-soft);border-radius:14px;color:var(--text-primary);background:var(--surface-soft);font:inherit}.rune-question textarea:focus{outline:2px solid color-mix(in srgb,var(--accent-primary) 58%,transparent);outline-offset:2px}.rune-choice-shell{display:grid;gap:20px}.rune-choice-head{display:grid;gap:5px}.rune-choice-head h3{margin:0;font-size:clamp(1.55rem,2.7vw,2.35rem)}.rune-choice-head>p:last-child{margin:0;color:var(--text-secondary)}.rune-choice-grid{display:grid;grid-template-columns:repeat(8,minmax(58px,1fr));gap:9px}.rune-choice-card{position:relative;display:grid;place-items:center;aspect-ratio:.78;min-width:0;padding:6px;border:1px solid color-mix(in srgb,var(--accent-gold) 30%,var(--border-soft));border-radius:45% 55% 48% 52%/54% 44% 56% 46%;overflow:hidden;color:var(--accent-gold);background:radial-gradient(circle at 31% 21%,rgb(255 255 255/.08),transparent 29%),linear-gradient(152deg,#29364b,#101725 72%);box-shadow:inset 6px 7px 13px rgb(255 255 255/.035),inset -10px -12px 16px rgb(0 0 0/.28),0 8px 18px rgb(0 0 0/.14);cursor:pointer;transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast)}.rune-choice-card::before{content:"";position:absolute;width:54%;aspect-ratio:1;border:1px solid currentColor;border-radius:50%;opacity:.18}.rune-choice-card::after{content:"";position:absolute;width:34%;aspect-ratio:1;border:1px solid currentColor;transform:rotate(45deg);opacity:.18}.rune-choice-card:hover,.rune-choice-card:focus-visible{z-index:1;transform:translateY(-3px);border-color:var(--accent-primary);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary) 18%,transparent),0 14px 24px rgb(0 0 0/.2)}.rune-choice-card.is-selected{transform:translateY(-5px);border-color:var(--accent-gold);background:radial-gradient(circle at 50% 38%,color-mix(in srgb,var(--accent-primary) 24%,transparent),transparent 48%),linear-gradient(152deg,#35405a,#151c2d);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-gold) 20%,transparent),0 16px 30px rgb(0 0 0/.27)}.rune-choice-card__mark{z-index:1;font-size:1.2rem}.rune-choice-card small{position:absolute;right:10px;bottom:8px;color:color-mix(in srgb,var(--accent-gold) 52%,transparent);font-size:.56rem}.rune-choice-card__order{position:absolute;top:7px;left:7px;z-index:2;display:grid;place-items:center;width:22px;aspect-ratio:1;border-radius:50%;color:#21172b;background:var(--accent-gold);font-size:.68rem;opacity:0;transform:scale(.7);transition:opacity var(--motion-fast),transform var(--motion-fast)}.rune-choice-card.is-selected .rune-choice-card__order{opacity:1;transform:none}.rune-choice-actions{display:flex;flex-wrap:wrap;gap:9px}.rune-result-question{display:grid;gap:5px;margin:0 0 17px;padding:13px 17px;border-left:2px solid var(--accent-gold);color:var(--text-secondary);background:color-mix(in srgb,var(--accent-gold) 7%,transparent);font:600 1rem/1.55 var(--font-body)}.rune-result-question blockquote{margin:0;color:var(--text-primary);font:600 1rem/1.55 var(--font-body)}.rune-reading-overview,.rune-reading-conclusion{margin:0 0 16px;padding:clamp(18px,3vw,30px);border:1px solid color-mix(in srgb,var(--accent-gold) 28%,var(--border-soft));border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-gold) 8%,var(--surface-elevated)),var(--surface-elevated))}.rune-reading-overview h2,.rune-reading-conclusion h2{margin:.12em 0 .3em}.rune-reading-overview>p:last-child{margin-bottom:0;color:var(--text-secondary);line-height:1.6}.rune-result-card__section{display:grid;gap:4px;padding-top:8px;border-top:1px solid var(--border-soft)}.rune-result-card__section h4{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:var(--accent-gold)}.rune-result-actions{display:grid;gap:6px;margin:0;padding-left:18px;color:var(--text-secondary);font-size:.84rem;line-height:1.5}.rune-result-card__prompt-label{margin-top:3px}.rune-reading-conclusion{margin-top:16px}.rune-reading-conclusion h2{max-width:32ch;font-size:clamp(1.35rem,2.5vw,2rem);line-height:1.18}.rune-reading-disclaimer{margin-top:12px}

.rune-library{margin-top:clamp(42px,6vw,78px)}.rune-library .mystic-section-head p{max-width:75ch}.rune-aett{margin-top:30px}.rune-aett>header{display:grid;grid-template-columns:42px minmax(0,1fr);gap:13px;align-items:start;margin-bottom:12px}.rune-aett>header>span{display:grid;place-items:center;width:38px;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--accent-gold) 38%,var(--border-soft));border-radius:50%;color:var(--accent-gold);font-size:.72rem}.rune-aett h3,.rune-aett p{margin:0}.rune-aett h3{font-size:1.28rem}.rune-aett p{margin-top:3px;color:var(--text-muted);font-size:.82rem}
.rune-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.rune-tile{display:grid;grid-template-columns:68px minmax(0,1fr) 18px;gap:13px;align-items:center;min-height:96px;padding:12px;border:1px solid var(--border-soft);border-radius:16px;color:inherit;background:var(--surface-elevated);transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast)}.rune-tile:hover,.rune-tile:focus-visible{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent-primary) 60%,var(--border-soft));outline:none;background:color-mix(in srgb,var(--accent-primary) 6%,var(--surface-elevated))}.rune-stone{display:grid;place-items:center;width:64px;aspect-ratio:.9;border:1px solid color-mix(in srgb,var(--accent-gold) 34%,var(--border-soft));border-radius:43% 57% 49% 51%/56% 45% 55% 44%;color:var(--accent-gold);background:linear-gradient(145deg,#2a3548,#111827);box-shadow:inset 4px 5px 9px rgb(255 255 255/.06),inset -7px -8px 12px rgb(0 0 0/.32)}.rune-stone b{font:400 2.1rem/1 "Noto Sans Runic","Segoe UI Symbol","Arial Unicode MS",sans-serif}.rune-tile>span:nth-child(2){display:grid;gap:2px;min-width:0}.rune-tile small{color:var(--accent-gold);font-size:.61rem;letter-spacing:.08em;text-transform:uppercase}.rune-tile strong{font-family:var(--font-display);font-size:1.13rem}.rune-tile em{overflow:hidden;color:var(--text-muted);font-size:.73rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.rune-tile>i{color:var(--accent-primary);font-style:normal}.rune-disclaimer{margin-top:clamp(32px,5vw,60px)}.rune-disclaimer>span{font-family:"Noto Sans Runic","Segoe UI Symbol",sans-serif}

.rune-detail{display:grid;gap:22px}.rune-detail__hero{display:grid;grid-template-columns:minmax(260px,.55fr) minmax(0,1fr);gap:clamp(32px,6vw,92px);align-items:center;padding:clamp(28px,5vw,64px);border:1px solid color-mix(in srgb,var(--accent-gold) 30%,var(--border-soft));border-radius:27px;background:radial-gradient(circle at 15% 38%,color-mix(in srgb,var(--accent-gold) 13%,transparent),transparent 24%),var(--surface-elevated)}.rune-detail__stone{position:relative;display:grid;place-items:center;width:min(310px,100%);aspect-ratio:.88;margin:auto;border:1px solid color-mix(in srgb,var(--accent-gold) 50%,var(--border-soft));border-radius:45% 55% 48% 52%/55% 43% 57% 45%;color:var(--accent-gold);background:radial-gradient(circle at 30% 20%,rgb(255 255 255/.1),transparent 34%),linear-gradient(145deg,#303c50,#101724 72%);box-shadow:inset 16px 18px 32px rgb(255 255 255/.04),inset -24px -28px 38px rgb(0 0 0/.38),0 32px 60px rgb(0 0 0/.3)}.rune-detail__stone span{font:400 clamp(7rem,13vw,11rem)/1 "Noto Sans Runic","Segoe UI Symbol","Arial Unicode MS",sans-serif;text-shadow:0 0 34px color-mix(in srgb,var(--accent-gold) 28%,transparent)}.rune-detail__stone small{position:absolute;right:12%;bottom:9%;color:color-mix(in srgb,var(--accent-gold) 56%,transparent);font-size:.76rem}.rune-detail__hero h1{margin:.12em 0;font-size:clamp(3rem,6vw,6rem);line-height:.88}.rune-detail__title{margin:0;color:var(--accent-primary);font:700 clamp(1.35rem,2.3vw,2.1rem)/1.1 var(--font-display)}.rune-detail__hero .lead{max-width:54ch;color:var(--text-secondary);line-height:1.65}
.rune-detail__meanings{display:grid;grid-template-columns:1fr 1fr;gap:11px}.rune-detail__meanings article{padding:clamp(22px,3vw,34px);border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.rune-detail__meanings article:first-child{background:radial-gradient(circle at 0 0,color-mix(in srgb,var(--accent-gold) 12%,transparent),transparent 34%),var(--surface-elevated)}.rune-detail__meanings article:last-child{background:radial-gradient(circle at 100% 0,color-mix(in srgb,var(--accent-secondary) 11%,transparent),transparent 34%),var(--surface-elevated)}.rune-detail__meanings small{color:var(--accent-gold);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}.rune-detail__meanings h2{margin:.35em 0;font-size:clamp(1.35rem,2.3vw,2.1rem)}.rune-detail__meanings p{margin:0;color:var(--text-secondary);line-height:1.62}.rune-detail__practice{display:grid;grid-template-columns:84px minmax(0,1fr);gap:22px;align-items:center;padding:clamp(22px,3.4vw,38px);border:1px solid color-mix(in srgb,var(--accent-primary) 35%,var(--border-soft));border-radius:22px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 10%,var(--surface)),var(--surface-elevated))}.rune-detail__practice>span{display:grid;place-items:center;width:78px;aspect-ratio:1;border:1px solid var(--accent-gold);border-radius:50%;color:var(--accent-gold);font:400 2.8rem "Noto Sans Runic","Segoe UI Symbol",sans-serif}.rune-detail__practice h2{max-width:28ch;margin:.12em 0;font-size:clamp(1.6rem,3vw,2.75rem);line-height:1}.rune-detail__practice p:last-child{margin-bottom:0;color:var(--text-secondary);line-height:1.58}.rune-related{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.rune-related>a{display:grid;grid-template-columns:58px minmax(0,1fr) 16px;gap:11px;align-items:center;padding:14px;border:1px solid var(--border-soft);border-radius:16px;color:inherit;background:var(--surface-elevated)}.rune-related>a>span{display:grid;place-items:center;width:56px;aspect-ratio:1;border-radius:45% 55% 48% 52%;color:var(--accent-gold);background:linear-gradient(145deg,#293548,#111827);font:400 2rem "Noto Sans Runic","Segoe UI Symbol",sans-serif}.rune-related div{display:grid;gap:2px}.rune-related small{color:var(--accent-gold)}.rune-related p{margin:0;color:var(--text-muted);font-size:.72rem}.rune-related i{color:var(--accent-primary);font-style:normal}

.home-rune-ribbon{display:grid;grid-template-columns:minmax(250px,.62fr) minmax(0,1fr) auto;gap:clamp(22px,4vw,52px);align-items:center;margin-top:clamp(14px,2vw,24px);padding:clamp(20px,3vw,32px);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-gold) 32%,var(--border-soft));border-radius:22px;background:radial-gradient(circle at 12% 50%,color-mix(in srgb,var(--accent-gold) 12%,transparent),transparent 25%),linear-gradient(125deg,var(--surface-elevated),color-mix(in srgb,var(--accent-primary) 7%,var(--surface)))}.home-rune-ribbon__stones{position:relative;display:flex;justify-content:center;align-items:center;min-height:145px;font-family:"Noto Sans Runic","Segoe UI Symbol",sans-serif}.home-rune-ribbon__stones span{display:grid;place-items:center;width:70px;aspect-ratio:.88;margin-inline:-5px;border:1px solid color-mix(in srgb,var(--accent-gold) 40%,var(--border-soft));border-radius:44% 56% 48% 52%/55% 44% 56% 45%;color:var(--accent-gold);background:linear-gradient(145deg,#2a3548,#111827);box-shadow:inset -8px -10px 14px rgb(0 0 0/.28),0 18px 30px rgb(0 0 0/.22);font-size:2.2rem}.home-rune-ribbon__stones span:nth-child(1){transform:translateY(12px) rotate(-11deg)}.home-rune-ribbon__stones span:nth-child(2){transform:translateY(-10px) rotate(-4deg)}.home-rune-ribbon__stones span:nth-child(3){z-index:2;width:82px;transform:translateY(-17px)}.home-rune-ribbon__stones span:nth-child(4){transform:translateY(-7px) rotate(5deg)}.home-rune-ribbon__stones span:nth-child(5){transform:translateY(13px) rotate(12deg)}.home-rune-ribbon__copy h2{max-width:23ch;margin:.12em 0;font-size:clamp(1.65rem,2.7vw,2.6rem);line-height:1}.home-rune-ribbon__copy>p:last-child{max-width:65ch;margin-bottom:0;color:var(--text-secondary);line-height:1.56}.home-rune-ribbon>.button{white-space:nowrap}

:root[data-theme=light] .rune-stone,:root[data-theme=light] .rune-cast-preview span,:root[data-theme=light] .rune-result-card__stone,:root[data-theme=light] .rune-detail__stone,:root[data-theme=light] .rune-related>a>span,:root[data-theme=light] .home-rune-ribbon__stones span,:root[data-theme=light] .rune-hero__sigil b,:root[data-theme=light] .rune-choice-card{color:#815271;background:radial-gradient(circle at 30% 20%,#fff,transparent 34%),linear-gradient(145deg,#f4ecf6,#d8c7dd);box-shadow:inset -10px -12px 20px rgb(95 58 91/.15),0 18px 38px rgb(72 47 81/.14)}

@media(max-width:1060px){.rune-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rune-related{grid-template-columns:repeat(2,minmax(0,1fr))}.home-rune-ribbon{grid-template-columns:minmax(220px,.55fr) minmax(0,1fr)}.home-rune-ribbon>.button{grid-column:2;justify-self:start}}
@media(max-width:980px){.rune-choice-grid{grid-template-columns:repeat(6,minmax(58px,1fr))}}
@media(max-width:760px){.brand-wordmark{flex-basis:132px;width:132px}.brand-wordmark img{left:-21px;top:-49px;width:175px}.rune-hero{grid-template-columns:1fr;min-height:0}.rune-hero__sigil{min-height:240px}.rune-draw__intro{grid-template-columns:1fr}.rune-draw__actions{justify-content:start}.rune-draw__table:has(.rune-cast-preview){grid-template-columns:1fr}.rune-choice-grid{grid-template-columns:repeat(4,minmax(54px,1fr))}.rune-detail__hero{grid-template-columns:1fr}.rune-detail__stone{width:min(260px,75vw)}.home-rune-ribbon{grid-template-columns:1fr}.home-rune-ribbon>.button{grid-column:auto;justify-self:stretch}.home-rune-ribbon__stones{min-height:125px}}
@media(max-width:620px){.brand-wordmark{display:none}.rune-hero{padding:22px}.rune-hero h1{font-size:clamp(2.25rem,11vw,3.3rem)}.rune-hero__sigil{min-height:215px;transform:scale(.88)}.rune-draw{padding:18px}.rune-draw__actions{display:grid}.rune-draw__table{min-height:0}.rune-cast-preview{min-height:190px;transform:scale(.9)}.rune-choice-grid{grid-template-columns:repeat(3,minmax(52px,1fr));gap:8px}.rune-choice-actions{display:grid}.rune-draw-results{grid-template-columns:1fr}.rune-result-card{grid-template-columns:86px minmax(0,1fr);padding:15px}.rune-grid{grid-template-columns:1fr}.rune-tile{min-height:88px}.rune-detail__hero{padding:22px}.rune-detail__meanings{grid-template-columns:1fr}.rune-detail__practice{grid-template-columns:58px minmax(0,1fr);padding:19px}.rune-detail__practice>span{width:56px;font-size:2.1rem}.rune-related{grid-template-columns:1fr}.home-rune-ribbon{padding:20px}.home-rune-ribbon__stones{transform:scale(.9)}.home-rune-ribbon__copy h2{font-size:clamp(1.6rem,8vw,2.2rem)}}

/* Stage 04 — focused home discovery, daily choices and reading collections. */
.home-discovery,.home-daily,.home-reading,.home-personalized{min-width:0;margin-top:clamp(24px,3.6vw,52px)}
.home-discovery__head,.home-daily__head,.home-reading__head,.home-personalized>header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}
.home-discovery__head>div,.home-daily__head>div,.home-reading__head>div,.home-personalized>header>div{min-width:0}
.home-discovery__head h2,.home-daily__head h2,.home-reading__head h2,.home-personalized h2{margin:.1em 0 0;font-size:clamp(1.9rem,3.2vw,3.25rem);line-height:1}
.home-discovery__head>p,.home-daily__head>p{max-width:58ch;margin:0;color:var(--text-secondary);line-height:1.55}
.home-direction-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.home-direction-card{position:relative;display:grid;min-width:0;min-height:286px;overflow:hidden;border:1px solid var(--border-soft);border-radius:22px;color:#fff;background:#10172a;box-shadow:var(--shadow-card);isolation:isolate;transition:transform var(--motion-normal),border-color var(--motion-normal),box-shadow var(--motion-normal)}
.home-direction-card:hover,.home-direction-card:focus-visible{transform:translateY(-5px);border-color:color-mix(in srgb,var(--accent-primary) 54%,var(--border-soft));box-shadow:var(--shadow-lift);outline:0}
.home-direction-card__art{position:absolute;inset:0;z-index:-2;display:block;background:radial-gradient(circle at 50% 24%,rgb(224 166 255/.28),transparent 42%),linear-gradient(150deg,#273152,#111426)}
.home-direction-card__art img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.82) contrast(1.02);transition:transform .55s ease,filter .55s ease}
.home-direction-card:hover .home-direction-card__art img,.home-direction-card:focus-visible .home-direction-card__art img{transform:scale(1.045);filter:saturate(1) contrast(1.03)}
.home-direction-card__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgb(6 10 25/.06) 10%,rgb(6 10 25/.54) 48%,rgb(6 10 25/.96) 100%)}
.home-direction-card__copy{align-self:end;display:grid;gap:7px;padding:18px}
.home-direction-card__copy>small{color:#f1c779;font-size:.68rem;letter-spacing:.12em}
.home-direction-card__copy>strong{font:600 clamp(1.2rem,1.8vw,1.52rem)/1.05 var(--font-display)}
.home-direction-card__copy>em{display:-webkit-box;overflow:hidden;color:#d7dcec;font-size:.82rem;font-style:normal;line-height:1.42;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.home-direction-card__copy>b{margin-top:4px;color:#ff6fbd;font-size:.78rem}
.home-direction-card--zodiac .home-direction-card__art img,.home-direction-card--dreams .home-direction-card__art img{object-position:center 30%}
.home-direction-card--numerology .home-direction-card__art img,.home-direction-card--matrix .home-direction-card__art img{object-position:center}
.home-rune-art{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;font-style:normal;background:radial-gradient(circle at 50% 36%,#5a405f,transparent 44%),linear-gradient(145deg,#17253a,#111523)}
.home-rune-art b{display:grid;place-items:center;width:58px;aspect-ratio:.88;border:1px solid rgb(223 184 114/.44);border-radius:48% 52% 45% 55%;color:#e2b970;background:linear-gradient(145deg,#354258,#141b29);box-shadow:inset -7px -8px 13px rgb(0 0 0/.32),0 18px 30px rgb(0 0 0/.28);font:400 1.8rem "Noto Sans Runic","Segoe UI Symbol",sans-serif}
.home-rune-art b:nth-child(1){transform:translateY(9px) rotate(-11deg)}.home-rune-art b:nth-child(2){transform:translateY(-15px)}.home-rune-art b:nth-child(3){transform:translateY(8px) rotate(11deg)}

.home-daily{padding:clamp(20px,3vw,34px);border:1px solid color-mix(in srgb,var(--accent-gold) 30%,var(--border-soft));border-radius:26px;background:radial-gradient(circle at 8% 0,color-mix(in srgb,var(--accent-secondary) 16%,transparent),transparent 32%),linear-gradient(145deg,var(--surface-elevated),var(--surface-soft))}
.home-daily__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}
.home-daily-card{position:relative;grid-column:span 4;display:flex;flex-direction:column;min-width:0;min-height:320px;padding:20px;overflow:hidden;border:1px solid var(--border-soft);border-radius:20px;background:color-mix(in srgb,var(--surface) 90%,transparent);box-shadow:0 12px 28px rgb(0 0 0/.08)}
.home-daily-card:nth-child(n+4){grid-column:span 6;min-height:260px}
.home-daily-card>small{color:var(--accent-gold);font-size:.68rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.home-daily-card h3{max-width:18ch;margin:.3em 0;font-size:clamp(1.35rem,2vw,1.9rem);line-height:1.06}
.home-daily-card p{margin:.25rem 0;color:var(--text-secondary);font-size:.88rem;line-height:1.5}
.home-daily-card>a{margin-top:auto;padding-top:14px;color:var(--accent-primary);font-weight:750;font-size:.84rem}
.home-daily-card__symbol{display:grid;place-items:center;width:58px;aspect-ratio:1;margin-bottom:14px;border:1px solid color-mix(in srgb,var(--accent-secondary) 32%,var(--border-soft));border-radius:50%;color:var(--accent-secondary);background:color-mix(in srgb,var(--accent-secondary) 9%,var(--surface));font:500 2rem var(--font-display)}
.home-daily-card__symbol--rune{border-radius:43% 57% 48% 52%;color:var(--accent-gold);background:linear-gradient(145deg,#334056,#151b28);font-family:"Noto Sans Runic","Segoe UI Symbol",sans-serif}
.home-daily-card dl{display:flex;gap:8px;margin:12px 0 0}.home-daily-card dl>div{flex:1;padding:8px 9px;border:1px solid var(--border-soft);border-radius:12px}.home-daily-card dt{color:var(--text-muted);font-size:.65rem}.home-daily-card dd{margin:2px 0 0;font-weight:750;font-size:.8rem}
.home-daily-card__event{display:grid!important;grid-template-columns:1fr auto;gap:2px 10px;margin-top:10px!important;padding:9px 11px;border-radius:12px;background:color-mix(in srgb,var(--accent-gold) 8%,var(--surface-soft))}.home-daily-card__event span{grid-column:1/-1;color:var(--text-muted);font-size:.64rem}.home-daily-card__event b{font-size:.8rem}.home-daily-card__event small{color:var(--text-muted);font-size:.68rem}
.home-daily-card label{display:grid;gap:6px;margin-top:14px}.home-daily-card label>span{color:var(--text-muted);font-size:.72rem}.home-daily-card select{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--border-highlight);border-radius:12px;color:var(--text-primary);background:var(--surface-elevated)}
.home-daily-card__visual{display:block;width:74px;height:98px;margin-bottom:14px}.home-daily-card__visual>img,.home-daily-card__visual>picture,.home-daily-card__visual picture img{width:100%;height:100%;object-fit:cover;border-radius:12px}.home-daily-card__visual .vedmali-card-back{position:relative;display:grid;width:66px;height:94px}.home-daily-card__visual .vedmali-card-back b{margin:auto;color:var(--accent-gold);font-family:var(--font-display)}
.home-daily-card--practice{padding-left:148px}.home-daily-card--practice .home-daily-card__visual{position:absolute;left:18px;top:18px;bottom:18px;width:112px;height:auto}.home-daily-card--practice .home-daily-card__visual img{border:1px solid var(--border-highlight)}

.home-personalized{padding:clamp(20px,3vw,30px);border:1px solid color-mix(in srgb,var(--accent-primary) 28%,var(--border-soft));border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 7%,var(--surface-elevated)),var(--surface-soft))}
.home-personalized__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.home-personalized__grid article{display:flex;flex-direction:column;min-width:0;padding:18px;border:1px solid var(--border-soft);border-radius:17px;background:var(--surface)}.home-personalized__grid small{color:var(--accent-gold);font-size:.68rem;letter-spacing:.08em}.home-personalized__grid h3{margin:.45em 0;font-size:1.15rem}.home-personalized__grid p{color:var(--text-secondary);font-size:.82rem;line-height:1.5}.home-personalized__grid a{margin-top:auto;color:var(--accent-primary);font-size:.8rem;font-weight:750}

.home-reading__head>a,.home-personalized>header>a{color:var(--accent-primary);font-weight:700;white-space:nowrap}.home-reading__tabs{display:flex;gap:8px;margin-bottom:14px;overflow-x:auto;scrollbar-width:none}.home-reading__tabs::-webkit-scrollbar{display:none}.home-reading__tabs button{flex:0 0 auto;min-height:42px;padding:0 16px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);background:var(--surface);cursor:pointer}.home-reading__tabs button[aria-selected=true]{border-color:color-mix(in srgb,var(--accent-primary) 48%,var(--border-soft));color:var(--text-primary);background:color-mix(in srgb,var(--accent-primary) 10%,var(--surface));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary) 8%,transparent)}
.home-reading__panel[hidden]{display:none!important}.home-reading__note{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;color:var(--text-muted);font-size:.78rem}.home-reading__note span{padding:5px 8px;border:1px solid var(--border-soft);border-radius:999px;font-size:.66rem;white-space:nowrap}.home-reading__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.home-reading__grid>a{display:grid;grid-template-columns:108px minmax(0,1fr);min-width:0;min-height:160px;overflow:hidden;border:1px solid var(--border-soft);border-radius:18px;color:var(--text-primary);background:var(--surface);transition:transform var(--motion-normal),border-color var(--motion-normal)}.home-reading__grid>a:hover,.home-reading__grid>a:focus-visible{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent-primary) 45%,var(--border-soft));outline:0}.home-reading__cover{display:block;min-height:160px;background:var(--surface-soft)}.home-reading__cover picture,.home-reading__cover img{width:100%;height:100%;object-fit:cover}.home-reading__cover--motif{display:grid;place-items:center;color:var(--accent-secondary);background:radial-gradient(circle at center,color-mix(in srgb,var(--accent-secondary) 18%,transparent),transparent 55%),var(--surface-soft)}.home-reading__cover--motif svg{width:54px;height:54px}.home-reading__grid>a>span:last-child{display:flex;flex-direction:column;min-width:0;padding:14px}.home-reading__grid small{color:var(--accent-gold);font-size:.65rem}.home-reading__grid strong{margin:.35em 0;font-family:var(--font-display);font-size:1.03rem;line-height:1.15}.home-reading__grid em{display:-webkit-box;overflow:hidden;color:var(--text-secondary);font-size:.76rem;font-style:normal;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:3}.home-reading__grid b{margin-top:auto;padding-top:8px;color:var(--accent-primary);font-size:.73rem}
.home-academy-invite--stage04{grid-template-columns:minmax(160px,.35fr) minmax(0,1fr) auto}.home-academy-invite--stage04>.button{grid-column:3;align-self:center}

.contextual-paths{display:grid;grid-template-columns:minmax(190px,.8fr) repeat(3,minmax(0,1fr));gap:10px;margin-top:28px;padding:18px;border:1px solid var(--border-soft);border-radius:22px;background:var(--surface-soft)}.contextual-paths>div{padding:8px}.contextual-paths h2{margin:.2em 0;font-size:1.55rem}.contextual-paths>a{position:relative;display:grid;gap:5px;min-width:0;padding:15px 38px 15px 15px;border:1px solid var(--border-soft);border-radius:15px;color:var(--text-primary);background:var(--surface)}.contextual-paths>a:hover,.contextual-paths>a:focus-visible{border-color:color-mix(in srgb,var(--accent-primary) 45%,var(--border-soft));outline:0}.contextual-paths>a small{color:var(--accent-gold);font-size:.64rem;text-transform:uppercase}.contextual-paths>a strong{font-family:var(--font-display);font-size:1rem}.contextual-paths>a span{color:var(--text-muted);font-size:.73rem;line-height:1.4}.contextual-paths>a b{position:absolute;right:14px;top:50%;color:var(--accent-primary);transform:translateY(-50%)}

:root[data-theme=light] .home-direction-card{box-shadow:0 12px 34px rgb(62 38 77/.13)}
:root[data-theme=light] .home-daily-card__symbol--rune{color:#815271;background:radial-gradient(circle at 30% 20%,#fff,transparent 34%),linear-gradient(145deg,#f4ecf6,#d8c7dd);box-shadow:inset -8px -10px 18px rgb(95 58 91/.12)}

@media(max-width:1240px){.home-direction-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-daily-card{grid-column:span 6}.home-daily-card:nth-child(n+4){grid-column:span 6}.home-reading__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contextual-paths{grid-template-columns:repeat(3,minmax(0,1fr))}.contextual-paths>div{grid-column:1/-1}}
@media(max-width:900px){.home-direction-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-direction-card{min-height:260px}.home-daily__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-daily-card,.home-daily-card:nth-child(n+4){grid-column:auto}.home-personalized__grid{grid-template-columns:1fr}.home-academy-invite--stage04{grid-template-columns:minmax(150px,.35fr) minmax(0,1fr)}.home-academy-invite--stage04>.button{grid-column:2}.contextual-paths{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.home-discovery__head,.home-daily__head,.home-reading__head,.home-personalized>header{align-items:flex-start;flex-direction:column;gap:10px}.home-direction-card{min-height:238px}.home-reading__grid{grid-template-columns:1fr}.home-reading__grid>a{grid-template-columns:124px minmax(0,1fr)}.home-reading__cover{min-height:150px}.home-academy-invite--stage04{grid-template-columns:1fr}.home-academy-invite--stage04>.button{grid-column:auto}.contextual-paths{grid-template-columns:1fr}.contextual-paths>div{grid-column:auto}}
@media(max-width:520px){.home-discovery,.home-daily,.home-reading,.home-personalized{margin-top:22px}.home-discovery__head h2,.home-daily__head h2,.home-reading__head h2,.home-personalized h2{font-size:clamp(1.75rem,8vw,2.25rem)}.home-direction-grid{grid-template-columns:1fr}.home-direction-card{grid-template-columns:112px minmax(0,1fr);min-height:150px}.home-direction-card__art{position:relative;z-index:0;min-height:150px}.home-direction-card__veil{background:linear-gradient(90deg,transparent,rgb(6 10 25/.35))}.home-direction-card__copy{align-self:stretch;justify-content:center;padding:15px;background:linear-gradient(135deg,#151b31,#0d1222)}.home-direction-card__copy>em{-webkit-line-clamp:2}.home-rune-art b{width:38px;margin-inline:-5px;font-size:1.2rem}.home-daily{padding:17px;border-radius:21px}.home-daily__grid{grid-template-columns:1fr}.home-daily-card,.home-daily-card:nth-child(n+4){grid-column:auto;min-height:0;padding:17px}.home-daily-card--practice{padding-left:112px}.home-daily-card--practice .home-daily-card__visual{left:14px;top:14px;bottom:14px;width:82px}.home-reading__note{align-items:flex-start;flex-direction:column}.home-reading__grid>a{grid-template-columns:96px minmax(0,1fr);min-height:145px}.home-reading__cover{min-height:145px}.home-reading__grid>a>span:last-child{padding:12px}.home-personalized{padding:17px}.contextual-paths{padding:14px}.home-academy-invite--stage04 .home-academy-invite__deck{display:none}}
@media(max-width:390px){.home-direction-card{grid-template-columns:96px minmax(0,1fr)}.home-direction-card__copy>strong{font-size:1.12rem}.home-direction-card__copy>em{font-size:.76rem}.home-daily-card--practice{padding-left:17px}.home-daily-card--practice .home-daily-card__visual{position:relative;inset:auto;width:74px;height:96px}.home-reading__grid>a{grid-template-columns:84px minmax(0,1fr)}.home-reading__grid strong{font-size:.96rem}}
@media(prefers-reduced-motion:reduce){.home-direction-card,.home-direction-card__art img,.home-reading__grid>a{transition:none}.home-direction-card:hover,.home-direction-card:focus-visible,.home-reading__grid>a:hover,.home-reading__grid>a:focus-visible{transform:none}}
@media(prefers-reduced-motion:reduce){.rune-result-card,.rune-tile,.rune-choice-card,.rune-choice-card__order{transition:none}}

/* Commerce, Stars and public legal information */
.star-balance--meter{position:relative;display:inline-flex;align-items:center;gap:6px;min-width:0;min-height:34px;padding:4px 7px 4px 9px;border:1px solid color-mix(in srgb,var(--accent-gold) 34%,var(--border-soft));border-radius:999px;color:var(--accent-gold);background:color-mix(in srgb,var(--accent-gold) 7%,var(--surface));box-shadow:0 6px 18px color-mix(in srgb,var(--accent-gold) 8%,transparent);font:inherit;cursor:pointer;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),box-shadow var(--motion-fast)}.star-balance--meter .ui-icon{width:15px;height:15px}.star-balance__value{display:inline-flex;align-items:baseline;gap:2px;line-height:1}.star-balance--meter b{font-size:.78rem;font-variant-numeric:tabular-nums}.star-balance--meter small{color:currentColor;font-size:.58rem;font-weight:850}.star-balance__plus{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;color:var(--text-primary);background:color-mix(in srgb,var(--accent-gold) 14%,var(--surface-elevated));font-size:.78rem;font-weight:850;line-height:1}.star-balance--meter:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent-gold) 64%,var(--border-soft));background:color-mix(in srgb,var(--accent-gold) 11%,var(--surface));box-shadow:0 9px 22px color-mix(in srgb,var(--accent-gold) 13%,transparent)}.star-balance--meter:focus-visible{border-color:var(--accent-gold);outline:3px solid var(--focus-ring);outline-offset:2px}

.stars-modal{z-index:1000;padding:18px}.stars-modal-card{width:min(1040px,100%);max-width:1040px;max-height:min(92vh,900px);overflow:auto;padding:clamp(22px,4vw,42px);border-color:color-mix(in srgb,var(--accent-primary) 34%,var(--border));background:radial-gradient(circle at 95% 0,color-mix(in srgb,var(--accent-primary) 18%,transparent),transparent 34%),var(--surface-elevated)}.stars-modal-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center}.stars-modal-head h2{margin:.12em 0;font-size:clamp(1.9rem,4vw,3.4rem)}.stars-modal-head p:last-child{margin:0;color:var(--text-secondary)}.stars-orbit{display:grid;place-items:center;align-content:center;width:112px;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--accent-gold) 48%,var(--border));border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent-primary) 18%,transparent),transparent 67%),var(--surface-soft);box-shadow:inset 0 0 28px color-mix(in srgb,var(--accent-primary) 16%,transparent),0 18px 44px rgb(0 0 0/.16)}.stars-orbit b{font:800 1.65rem/1 var(--font-display)}.stars-orbit span{margin-top:5px;color:var(--accent-gold);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.stars-progress{height:8px;margin:18px 0 24px;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-gold) 20%,var(--border));border-radius:999px;background:var(--surface-soft)}.stars-progress>span{display:block;width:var(--star-progress,0);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-secondary),var(--accent-primary),var(--accent-gold));box-shadow:0 0 18px color-mix(in srgb,var(--accent-primary) 55%,transparent);transition:width var(--motion-normal)}
.star-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.star-products article{position:relative;display:flex;flex-direction:column;min-width:0;padding:20px;border:1px solid var(--border-soft);border-radius:20px;background:linear-gradient(150deg,color-mix(in srgb,var(--surface-elevated) 96%,transparent),color-mix(in srgb,var(--accent-soft) 28%,var(--surface-soft)))}.star-products article.is-featured{border-color:color-mix(in srgb,var(--accent-gold) 58%,var(--border));box-shadow:0 18px 44px color-mix(in srgb,var(--accent-primary) 12%,transparent)}.star-products article.is-featured::before{content:"Курс целиком";position:absolute;right:10px;top:10px;padding:5px 8px;border-radius:999px;color:#281729;background:var(--accent-gold);font-size:.58rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.star-products article>span{color:var(--accent-gold);font-size:1.25rem}.star-products h3{margin:10px 0 3px;font-size:1.02rem}.star-products b{font-size:1.32rem}.star-products p{margin:5px 0 0;color:var(--accent-primary);font-weight:850}.star-products small{display:block;margin:9px 0;color:var(--text-muted);line-height:1.35}.star-products .button{width:100%;margin-top:auto;padding-top:10px;padding-bottom:10px}.star-products .button:disabled{opacity:.5;cursor:not-allowed}
.star-offer-check{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;margin:18px 0 5px;padding:14px 16px;border:1px solid var(--border-soft);border-radius:15px;background:color-mix(in srgb,var(--surface-soft) 78%,transparent);color:var(--text-secondary);font-size:.82rem;line-height:1.55}.star-offer-check input{width:18px;height:18px;margin-top:2px;accent-color:var(--accent-primary)}.star-offer-check a,.stars-modal-links a,.stars-legal-note a{color:var(--accent-gold)}.star-cost-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:18px}.star-cost-preview span{display:flex;justify-content:space-between;gap:14px;padding:10px 12px;border-bottom:1px solid var(--border-soft);color:var(--text-secondary);font-size:.8rem}.star-cost-preview b{color:var(--accent-gold);white-space:nowrap}.stars-modal-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:18px;padding-top:16px;border-top:1px solid var(--border-soft);font-size:.78rem}.stars-modal .form-status,.stars-store .form-status{min-height:1.4em;margin:9px 0 0}.stars-modal .form-status.field-error,.stars-store .form-status.field-error{color:var(--danger)}

.stars-page{display:grid;gap:18px}.stars-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:clamp(24px,4vw,44px);border:1px solid color-mix(in srgb,var(--accent-gold) 30%,var(--border));border-radius:var(--radius-xl);background:radial-gradient(circle at 88% 12%,color-mix(in srgb,var(--accent-primary) 17%,transparent),transparent 34%),var(--surface-elevated)}.stars-hero h1{margin:.16em 0;font-size:clamp(2.2rem,5vw,4.3rem)}.stars-hero h1 span{color:var(--accent-gold)}.stars-hero p{max-width:78ch;color:var(--text-secondary);line-height:1.68}.stars-progress--page{max-width:680px;margin:18px 0 10px}.stars-weekly{display:grid;place-items:center;min-width:150px;padding:22px;border:1px solid var(--border-soft);border-radius:50% 50% 44% 56%/48% 52% 48% 52%;background:var(--surface-soft);text-align:center}.stars-weekly small,.stars-weekly span{color:var(--text-muted)}.stars-weekly strong{margin:6px 0;color:var(--accent-gold);font:800 2rem/1 var(--font-display)}.stars-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stars-action-grid article{padding:20px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-elevated)}.stars-action-grid small{color:var(--accent-gold);font-size:.64rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.stars-action-grid h2{margin:8px 0;font-size:1.22rem}.stars-action-grid strong{color:var(--accent-primary);font-size:1.45rem}.stars-action-grid ul{margin:14px 0 0;padding-left:18px;color:var(--text-muted);font-size:.8rem;line-height:1.55}.stars-store{padding:clamp(22px,4vw,38px)}.stars-store>.mystic-section-head>p{max-width:52ch}.stars-legal-note{margin:10px 0 0;color:var(--text-muted);font-size:.78rem}.stars-history{display:grid;gap:8px}.stars-history>div{display:grid;grid-template-columns:110px minmax(0,1fr) auto 90px;gap:12px;align-items:center;padding:12px;border-bottom:1px solid var(--border-soft)}.stars-history span{color:var(--accent-gold);font-weight:800}.stars-history small,.stars-history time{color:var(--text-muted)}

.legal-page{width:min(100%,1040px);margin-inline:auto}.legal-hero{padding:clamp(26px,5vw,58px);border:1px solid color-mix(in srgb,var(--accent-primary) 26%,var(--border));border-radius:var(--radius-xl);background:radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--accent-primary) 17%,transparent),transparent 36%),var(--surface-elevated)}.legal-hero h1{max-width:18ch;margin:.18em 0;font-size:clamp(2.25rem,5.2vw,4.8rem);line-height:.94}.legal-hero>p:not(.eyebrow){max-width:68ch;color:var(--text-secondary);font-size:1.02rem;line-height:1.65}.legal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.legal-tabs a{padding:9px 13px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);font-size:.78rem;font-weight:800;text-decoration:none}.legal-tabs a:hover,.legal-tabs a.is-active{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--accent-soft)}.legal-section{margin-top:14px;padding:clamp(22px,4vw,38px);border:1px solid var(--border-soft);border-radius:var(--radius-xl);background:var(--surface-elevated)}.legal-section h2{margin:1.35em 0 .42em;font-size:clamp(1.35rem,2.5vw,2.1rem)}.legal-section>h2:first-child{margin-top:0}.legal-section p,.legal-section li{color:var(--text-secondary);line-height:1.72}.legal-section ol{padding-left:22px}.legal-products{margin-top:20px}.legal-price-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.legal-price-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;padding:14px;border:1px solid var(--border-soft);border-radius:15px;background:var(--surface-soft)}.legal-price-list span{color:var(--accent-gold);font-weight:850}.legal-price-list small{grid-column:1/-1;color:var(--text-muted)}.legal-requisites{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:14px 0 0}.legal-requisites>div{padding:14px;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface-soft)}.legal-requisites dt{color:var(--text-muted);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.legal-requisites dd{margin:5px 0 0;overflow-wrap:anywhere;font-weight:750}.legal-requisites a{color:var(--accent-primary)}

.site-footer{display:flex;justify-content:space-between;gap:24px;width:100%;padding:28px clamp(18px,3vw,48px);border-top:1px solid var(--border-soft);background:color-mix(in srgb,var(--surface) 86%,transparent)}.site-footer>div{display:grid;gap:4px}.site-footer-brand{color:var(--text);font:800 1.15rem var(--font-display);text-decoration:none}.site-footer span{color:var(--text-muted);font-size:.76rem}.site-footer-navs{display:grid;gap:9px}.site-footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 20px}.site-footer nav a{color:var(--text-secondary);font-size:.76rem;text-decoration:none}.site-footer nav a:hover,.site-footer nav a:focus-visible{color:var(--accent-primary)}.site-footer nav a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.admin-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}

@media(max-width:900px){.star-products,.stars-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stars-modal-card{padding:24px}.legal-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.star-balance--meter{padding-inline:8px}.star-balance__plus{display:none}.stars-modal{padding:0}.stars-modal-card{max-height:100vh;border-radius:0;padding:22px 16px}.stars-modal-head{grid-template-columns:1fr;padding-right:40px}.stars-orbit{display:none}.star-products,.stars-action-grid,.legal-products,.legal-price-list,.legal-requisites,.admin-product-grid{grid-template-columns:1fr 1fr}.stars-hero{grid-template-columns:1fr}.stars-weekly{justify-self:start;min-width:130px}.site-footer{display:grid}.site-footer nav{justify-content:flex-start}.stars-history>div{grid-template-columns:1fr auto}.stars-history time,.stars-history small{font-size:.7rem}}
@media(max-width:440px){.star-products,.stars-action-grid,.legal-products,.legal-price-list,.legal-requisites,.admin-product-grid,.star-cost-preview{grid-template-columns:1fr}.stars-modal-card{padding:18px 12px}.star-products article{padding:17px}.legal-hero,.legal-section{padding:20px}.legal-hero h1{font-size:2.2rem}.legal-tabs{display:grid;grid-template-columns:1fr 1fr}.legal-tabs a{text-align:center}.stars-history>div{grid-template-columns:1fr auto}.site-footer{padding:24px 16px}.site-footer nav{display:grid}}


/* Reversible public free-launch state */
[data-free-launch="1"] .site-footer{grid-template-columns:1fr;}
[data-free-launch="1"] .free-mode-price{color:var(--accent,#ff2ba6);font-weight:850;}

/* Home discovery, right-rail and conversation polish */
.vedmali-choice.is-feelings,.vedmali-choice.is-between{color:#fbf7ff}
.vedmali-choice.is-feelings small,.vedmali-choice.is-feelings .text-link,.vedmali-choice.is-between small,.vedmali-choice.is-between .text-link{color:rgb(239 228 248/.76)}
.vedmali-choice.is-feelings .vedmali-choice-symbol{color:#efb0d1}.vedmali-choice.is-between .vedmali-choice-symbol{color:#c9c7ff}
:root[data-theme=light] .vedmali-choice{border-color:color-mix(in srgb,var(--accent-secondary) 18%,var(--border));box-shadow:0 14px 36px rgb(55 33 80/.08)}
:root[data-theme=light] .vedmali-choice.is-feelings{color:#341e36;background:radial-gradient(circle at 82% 14%,rgb(190 91 145/.18),transparent 30%),linear-gradient(145deg,#fff8fc,#f5e8f1)}
:root[data-theme=light] .vedmali-choice.is-between{color:#22264e;background:radial-gradient(circle at 86% 16%,rgb(105 108 199/.16),transparent 31%),linear-gradient(145deg,#fbfbff,#eaeafa)}
:root[data-theme=light] .vedmali-choice.is-feelings small,:root[data-theme=light] .vedmali-choice.is-feelings .text-link{color:#76526d}
:root[data-theme=light] .vedmali-choice.is-between small,:root[data-theme=light] .vedmali-choice.is-between .text-link{color:#575d8d}
:root[data-theme=light] .vedmali-choice.is-feelings .vedmali-choice-symbol{color:#b86191}:root[data-theme=light] .vedmali-choice.is-between .vedmali-choice-symbol{color:#7376bd}
:root[data-theme=light] .vedmali-choice:hover,:root[data-theme=light] .vedmali-choice:focus-visible{border-color:color-mix(in srgb,var(--accent-primary) 34%,var(--border));box-shadow:0 20px 44px rgb(55 33 80/.13)}

.home-paths{padding:clamp(22px,3vw,34px)}
.home-paths .section-head{align-items:end}
.home-paths-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.home-path-card{position:relative;isolation:isolate;display:grid;grid-template-columns:112px minmax(0,1fr);gap:18px;min-height:166px;padding:14px;border:1px solid var(--border-soft);border-radius:19px;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-elevated) 96%,transparent),color-mix(in srgb,var(--surface-soft) 88%,transparent));box-shadow:0 9px 24px rgb(0 0 0/.08);transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast)}
.home-path-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent-primary) 34%,var(--border-soft));box-shadow:0 17px 36px rgb(0 0 0/.14)}
.home-path-card__visual{position:relative;display:grid;place-items:center;min-height:136px;overflow:hidden;border:1px solid color-mix(in srgb,var(--path-accent,var(--accent-secondary)) 28%,var(--border-soft));border-radius:15px;color:var(--path-accent,var(--accent-secondary));background:radial-gradient(circle at 34% 26%,color-mix(in srgb,var(--path-accent,var(--accent-secondary)) 30%,transparent),transparent 36%),linear-gradient(150deg,color-mix(in srgb,var(--path-accent,var(--accent-secondary)) 12%,var(--surface-soft)),var(--surface-elevated))}
.home-path-card__visual::before,.home-path-card__visual::after,.home-path-card__visual i{content:"";position:absolute;border:1px solid color-mix(in srgb,var(--path-accent,var(--accent-secondary)) 28%,transparent);border-radius:50%;transform:rotate(28deg) scaleY(.56)}
.home-path-card__visual::before{width:92px;height:92px}.home-path-card__visual::after{width:66px;height:66px;transform:rotate(-32deg) scaleY(.7)}.home-path-card__visual i{width:40px;height:40px;transform:none}
.home-path-card__visual span{position:relative;z-index:1;font:500 2.9rem/1 var(--font-display);filter:drop-shadow(0 0 17px color-mix(in srgb,var(--path-accent,var(--accent-secondary)) 44%,transparent))}
.home-path-card__copy{position:relative;z-index:2;display:flex;min-width:0;flex-direction:column;padding:5px 4px 4px 0}
.home-path-card__meta{display:flex;align-items:center;gap:8px;min-width:0;color:var(--text-muted);font-size:.66rem;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.home-path-card__meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-path-card__meta small{padding:4px 7px;border:1px solid var(--border-soft);border-radius:999px;white-space:nowrap}
.home-path-card h3{margin:12px 0 6px;font-size:clamp(1.08rem,1.7vw,1.38rem);line-height:1.14}.home-path-card p{display:-webkit-box;margin:0;overflow:hidden;color:var(--text-secondary);font-size:.84rem;line-height:1.48;-webkit-box-orient:vertical;-webkit-line-clamp:2}.home-path-card__link{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:10px;color:var(--accent-primary);font-size:.78rem;font-weight:850}.home-path-card__link b{transition:transform var(--motion-fast)}.home-path-card:hover .home-path-card__link b{transform:translateX(4px)}
.home-path-card--violet{--path-accent:#8d64d8}.home-path-card--moon{--path-accent:#b58b3d}.home-path-card--ocean{--path-accent:#477bc6}.home-path-card--rose{--path-accent:#d35b9d}.home-path-card--gold{--path-accent:#ba8439}.home-path-card--plum{--path-accent:#9a5aa7}

.home-spark-thumb{--spark-accent:#8d64d8;position:relative;isolation:isolate;color:var(--spark-accent);background:radial-gradient(circle at 28% 25%,color-mix(in srgb,var(--spark-accent) 30%,transparent),transparent 34%),linear-gradient(145deg,color-mix(in srgb,var(--spark-accent) 10%,var(--surface-soft)),var(--surface-elevated))}
.home-spark-thumb::before,.home-spark-thumb::after,.home-spark-thumb i{content:"";position:absolute;border:1px solid color-mix(in srgb,var(--spark-accent) 30%,transparent);border-radius:50%}.home-spark-thumb::before{width:62px;height:32px;transform:rotate(24deg)}.home-spark-thumb::after{width:46px;height:58px;transform:rotate(-31deg)}.home-spark-thumb i{width:5px;height:5px;right:17%;top:18%;border:0;background:var(--spark-accent);box-shadow:-52px 35px 0 color-mix(in srgb,var(--spark-accent) 60%,transparent)}.home-spark-thumb span{position:relative;z-index:1;font:500 1.7rem/1 var(--font-display)}
.home-spark-thumb--2{--spark-accent:#bb8a36}.home-spark-thumb--3{--spark-accent:#d15b9d}.home-spark-thumb--4{--spark-accent:#5677c4}

.rail-widget--continue{padding:14px 12px}
.rail-continue-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 4px 11px;padding-bottom:10px;border-bottom:1px solid var(--border-soft)}.rail-continue-head p{margin:0 0 3px;color:var(--accent-gold);font-size:.61rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.rail-continue-head h2{margin:0;font-size:1.05rem}.rail-continue-head .nav-icon{color:var(--accent-primary)}
.rail-continue-list{display:grid;gap:6px}.rail-continue-list>a{display:grid;grid-template-columns:28px minmax(0,1fr) 24px;gap:9px;align-items:center;min-height:58px;padding:9px;border:1px solid transparent;border-radius:13px;color:var(--text-primary);background:color-mix(in srgb,var(--surface-soft) 74%,transparent);text-decoration:none;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast)}.rail-continue-list>a:hover{transform:translateX(2px);border-color:var(--border-soft);background:color-mix(in srgb,var(--accent-secondary) 8%,var(--surface-soft))}.rail-continue-mark{display:grid;place-items:center;width:28px;height:28px;border:1px solid color-mix(in srgb,var(--accent-secondary) 24%,var(--border-soft));border-radius:50%;color:var(--accent-secondary);font-size:.58rem;font-weight:850}.rail-continue-copy{display:grid;min-width:0;gap:3px}.rail-continue-copy strong,.rail-continue-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-continue-copy strong{font-size:.82rem}.rail-continue-copy small{color:var(--text-muted);font-size:.68rem}.rail-continue-list>a>b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;color:var(--accent-primary);font-size:.8rem;transition:transform var(--motion-fast)}.rail-continue-list>a:hover>b{transform:translateX(2px)}

.comments-panel.reading-comments{width:min(100%,900px);padding:clamp(20px,3vw,32px);background:radial-gradient(circle at 96% 0,color-mix(in srgb,var(--accent-secondary) 10%,transparent),transparent 24rem),linear-gradient(145deg,color-mix(in srgb,var(--surface-elevated) 96%,transparent),color-mix(in srgb,var(--surface-soft) 90%,transparent))}
.comments-panel [hidden]{display:none!important}
.comments-panel .section-head{align-items:start}.comments-panel .section-head>div>p:last-child{max-width:58ch;margin:.45rem 0 0;color:var(--text-muted);font-size:.86rem;line-height:1.5}.comments-panel .section-head h2{font-size:clamp(1.45rem,2.5vw,2rem)}
.comment-composer-shell{margin:17px 0 22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-secondary) 20%,var(--border-soft));border-radius:18px;background:color-mix(in srgb,var(--surface-elevated) 93%,transparent);box-shadow:0 9px 24px rgb(0 0 0/.07)}
.comment-composer{gap:0;margin:0;padding:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}
.comment-composer__head{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 13px;border-bottom:1px solid var(--border-soft);background:color-mix(in srgb,var(--accent-secondary) 5%,var(--surface-soft))}.comment-composer__icon{display:grid;place-items:center;width:34px;height:34px;border:1px solid color-mix(in srgb,var(--accent-secondary) 26%,var(--border-soft));border-radius:50%;color:var(--accent-secondary);background:var(--surface-elevated)}.comment-composer__icon .ui-icon{width:17px;height:17px}.comment-composer__head>div:nth-child(2){display:grid;gap:2px}.comment-composer__head strong{font-size:.82rem}.comment-composer__head small{color:var(--text-muted);font-size:.68rem}.comment-composer__head .comment-author{justify-self:end;max-width:260px;font-size:.74rem}.comment-composer__head .comment-author button{font-size:.7rem}
.comment-composer textarea{min-height:92px!important;padding:14px 15px!important;border:0!important;border-radius:0!important;background:transparent!important;line-height:1.58!important}.comment-composer textarea::placeholder{color:var(--text-muted)}.comment-composer .reply-target{margin:10px 13px 0;padding:8px 10px;border:1px solid var(--border-soft);border-radius:10px;background:var(--surface-soft);font-size:.75rem}.comment-composer .comment-actions{justify-content:space-between;padding:10px 12px;border-top:1px solid var(--border-soft);background:color-mix(in srgb,var(--surface-soft) 74%,transparent)}.comment-composer .comment-actions small{font-variant-numeric:tabular-nums}.comment-composer .comment-actions .button{min-height:36px;padding:8px 13px;border-radius:11px;font-size:.76rem}.comment-composer .form-status{margin:0;padding:0 13px}.comment-composer .form-status:not(:empty){padding-block:9px;border-top:1px solid var(--border-soft)}
.comments-list{gap:8px}.comments-list .comment-row{grid-template-columns:38px minmax(0,1fr);gap:11px;padding:13px;border:1px solid var(--border-soft);border-radius:15px;background:color-mix(in srgb,var(--surface-elevated) 88%,transparent);box-shadow:0 5px 16px rgb(0 0 0/.045)}.comments-list .comment-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent-secondary) 27%,var(--border-soft));background:color-mix(in srgb,var(--accent-secondary) 4%,var(--surface-elevated))}.comments-list .comment-avatar{width:38px;height:38px;border-radius:12px}.comments-list .comment-row p{margin:.42rem 0;color:var(--text-secondary);font-size:.9rem;line-height:1.55}.comment-action-row{display:flex;align-items:center;gap:5px}.comment-action-row .comment-action{min-height:28px;padding:4px 8px;border-radius:999px;color:var(--text-muted);font-size:.7rem}.comment-action-row .comment-action:hover{color:var(--accent-primary);background:var(--accent-soft)}.comment-reply-ref{max-width:100%;margin-top:7px;padding:6px 8px;border-radius:9px!important;background:var(--surface-soft)!important;color:var(--text-muted)!important;font-size:.7rem!important;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media(max-width:780px){.home-paths-grid{grid-template-columns:1fr}.home-path-card{grid-template-columns:92px minmax(0,1fr);min-height:144px}.home-path-card__visual{min-height:116px}.comment-composer__head{grid-template-columns:34px minmax(0,1fr)}.comment-composer__head .comment-author{grid-column:1/-1;justify-self:start;max-width:100%;padding-left:44px}.comments-list .comment-row{padding:12px 10px}}
@media(max-width:480px){.home-path-card{grid-template-columns:74px minmax(0,1fr);gap:12px;padding:11px}.home-path-card__visual{min-height:104px}.home-path-card__visual span{font-size:2.2rem}.home-path-card__meta small{display:none}.home-path-card p{-webkit-line-clamp:1}.comment-composer__head small{display:none}.comment-composer__head .comment-author{padding-left:0}.comments-list .comment-row{grid-template-columns:32px minmax(0,1fr)}.comments-list .comment-avatar{width:32px;height:32px}.rail-continue-list>a{grid-template-columns:26px minmax(0,1fr) 22px}}

/* Rune choice clarity, daily rune ritual and compact personal-space card. */
.rune-draw__actions .button.is-active{border-color:var(--accent-gold);color:var(--text-primary);background:color-mix(in srgb,var(--accent-gold) 13%,var(--surface-elevated));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-gold) 15%,transparent)}
.rune-question.is-invalid textarea{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 13%,transparent)}
.rune-selection-guide{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;align-items:center;margin-top:10px;padding:11px 13px;border:1px solid color-mix(in srgb,var(--accent-gold) 28%,var(--border-soft));border-radius:13px;background:color-mix(in srgb,var(--accent-gold) 7%,var(--surface-soft))}.rune-selection-guide__icon{display:grid;place-items:center;width:30px;aspect-ratio:1;border-radius:50%;color:#24172d;background:var(--accent-gold);font-size:.72rem;font-weight:900}.rune-selection-guide p{margin:0!important;color:var(--text-secondary);font-size:.8rem;line-height:1.45}.rune-choice-card__order{width:auto;min-width:24px;aspect-ratio:auto;padding:5px 7px;border-radius:999px}.rune-choice-reveal:disabled{opacity:.48;cursor:not-allowed;filter:saturate(.55)}
.daily-rune-mini{display:grid;grid-template-columns:68px minmax(0,1fr);gap:12px;align-items:center;padding:12px;border:1px solid color-mix(in srgb,var(--accent-gold) 28%,var(--border-soft));border-radius:16px;background:radial-gradient(circle at 15% 20%,color-mix(in srgb,var(--accent-gold) 12%,transparent),transparent 42%),var(--surface-soft)}.daily-rune-mini__stone{position:relative;display:grid;place-items:center;aspect-ratio:.86;border:1px solid color-mix(in srgb,var(--accent-gold) 42%,var(--border-soft));border-radius:44% 56% 49% 51%/56% 43% 57% 44%;color:var(--accent-gold);background:radial-gradient(circle at 31% 21%,rgb(255 255 255/.08),transparent 29%),linear-gradient(152deg,#2d394e,#101725);box-shadow:inset -8px -10px 16px rgb(0 0 0/.3),0 10px 20px rgb(0 0 0/.18)}.daily-rune-mini__stone span{font:400 2.25rem/1 "Noto Sans Runic","Segoe UI Symbol",sans-serif}.daily-rune-mini__stone i{position:absolute;right:8px;bottom:6px;color:color-mix(in srgb,var(--accent-gold) 66%,transparent);font-size:.6rem;font-style:normal}.daily-rune-mini__copy{display:grid;gap:4px;min-width:0}.daily-rune-mini__copy>*{margin:0}.daily-rune-mini__copy h3{font-size:1rem}.daily-rune-mini__copy p:not(.eyebrow){display:-webkit-box;overflow:hidden;color:var(--text-muted);font-size:.72rem;line-height:1.42;-webkit-line-clamp:2;-webkit-box-orient:vertical}.daily-rune-mini__copy a{font-size:.72rem}.daily-rune-history-link{display:block;margin:7px 4px 0;color:var(--accent-primary);font-size:.7rem;font-weight:750}
.rune-daily-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:32px;align-items:center;padding:clamp(26px,4vw,52px);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-gold) 30%,var(--border-soft));border-radius:26px;background:radial-gradient(circle at 82% 28%,color-mix(in srgb,var(--accent-gold) 15%,transparent),transparent 28%),linear-gradient(145deg,var(--surface-elevated),var(--surface-soft))}.rune-daily-hero h1{margin:.1em 0;font-size:clamp(2.6rem,5vw,4.8rem)}.rune-daily-hero p:last-child{max-width:65ch;color:var(--text-secondary);line-height:1.6}.rune-daily-hero__orbit{position:relative;display:grid;place-items:center;height:190px;font-family:"Noto Sans Runic","Segoe UI Symbol",sans-serif}.rune-daily-hero__orbit::before{content:"";position:absolute;width:168px;aspect-ratio:1;border:1px dashed color-mix(in srgb,var(--accent-gold) 46%,transparent);border-radius:50%}.rune-daily-hero__orbit span{position:absolute;display:grid;place-items:center;width:64px;aspect-ratio:.88;border:1px solid color-mix(in srgb,var(--accent-gold) 42%,var(--border-soft));border-radius:46%;color:var(--accent-gold);background:linear-gradient(150deg,#303d53,#101725);font-size:2rem}.rune-daily-hero__orbit span:nth-child(1){translate:-74px 32px;rotate:-15deg}.rune-daily-hero__orbit span:nth-child(2){z-index:2;translate:0 -25px}.rune-daily-hero__orbit span:nth-child(3){translate:74px 32px;rotate:15deg}.rune-daily-result{display:grid;grid-template-columns:180px minmax(0,1fr);gap:clamp(24px,4vw,48px);align-items:center;margin-top:20px;padding:clamp(24px,4vw,48px);border:1px solid color-mix(in srgb,var(--accent-primary) 32%,var(--border-soft));border-radius:24px;background:var(--surface-elevated)}.rune-daily-result .rune-result-card__stone{width:100%;font-size:1.3rem}.rune-daily-result h2{margin:.15em 0;font-size:clamp(1.9rem,3.7vw,3.5rem)}.rune-daily-result p{color:var(--text-secondary);line-height:1.6}.rune-daily-result blockquote{margin:16px 0;padding:12px 16px;border-left:2px solid var(--accent-gold);background:color-mix(in srgb,var(--accent-gold) 6%,transparent)}.rune-daily-result strong{display:block;color:var(--text-muted)}.rune-daily-result__actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.rune-history-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.rune-history-grid>a{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--border-soft);border-radius:16px;color:inherit;background:var(--surface-elevated)}.rune-history-grid>a>span{display:grid;place-items:center;aspect-ratio:.9;border-radius:42%;color:var(--accent-gold);background:linear-gradient(150deg,#303d53,#101725);font:400 2rem/1 "Noto Sans Runic","Segoe UI Symbol",sans-serif}.rune-history-grid div{display:grid;gap:3px;min-width:0}.rune-history-grid small{color:var(--text-muted);font-size:.68rem}.rune-history-grid strong{font-size:.92rem}.rune-history-grid p{margin:0;color:var(--text-muted);font-size:.72rem}.rune-history-grid--full{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}
.today-grid{grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(180px,.58fr))}.today-rune{display:grid;align-content:space-between}.today-rune__stone{display:grid;place-items:center;width:72px;aspect-ratio:.88;border:1px solid color-mix(in srgb,var(--accent-gold) 42%,var(--border-soft));border-radius:44%;color:var(--accent-gold);background:linear-gradient(150deg,#303d53,#101725);font:400 2.7rem/1 "Noto Sans Runic","Segoe UI Symbol",sans-serif}.today-rune h2{font-size:clamp(1.4rem,2.2vw,2.25rem)}.today-rune p{color:var(--text-secondary);font-size:.84rem;line-height:1.55}.today-rune a{color:var(--accent-primary);font-weight:700}
@media(max-width:1120px){.today-grid{grid-template-columns:1fr 1fr}.rune-history-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.rune-daily-hero{grid-template-columns:1fr}.rune-daily-hero__orbit{height:150px}.rune-daily-result{grid-template-columns:110px minmax(0,1fr)}.rune-history-grid,.rune-history-grid--full{grid-template-columns:1fr}.rune-selection-guide{grid-template-columns:28px minmax(0,1fr)}}
@media(max-width:520px){.rune-daily-result{grid-template-columns:1fr}.rune-daily-result .rune-result-card__stone{width:120px}.today-grid{grid-template-columns:1fr}}
:root[data-theme=light] .rune-daily-hero__orbit span,:root[data-theme=light] .daily-rune-mini__stone,:root[data-theme=light] .rune-history-grid>a>span,:root[data-theme=light] .today-rune__stone{border-color:color-mix(in srgb,#9b6b91 36%,var(--border-soft));color:#815271;background:radial-gradient(circle at 30% 20%,#fff 0 6%,transparent 34%),linear-gradient(145deg,#f7eff8,#ddcde2);box-shadow:inset -10px -12px 20px rgb(95 58 91/.13),0 14px 30px rgb(72 47 81/.14)}
:root[data-theme=light] .rune-choice-card:hover,:root[data-theme=light] .rune-choice-card:focus-visible{border-color:#b66b9c;box-shadow:0 0 0 3px rgb(182 107 156/.12),0 15px 27px rgb(72 47 81/.15)}
:root[data-theme=light] .rune-choice-card.is-selected{border-color:#9f728f;color:#744b69;background:radial-gradient(circle at 50% 34%,rgb(218 158 198/.3),transparent 48%),linear-gradient(145deg,#fff4fa,#e5c9dd);box-shadow:0 0 0 3px rgb(159 114 143/.15),0 17px 30px rgb(81 50 73/.16)}
:root[data-theme=light] .rune-choice-card small,:root[data-theme=light] .rune-result-card__stone small,:root[data-theme=light] .rune-detail__stone small,:root[data-theme=light] .daily-rune-mini__stone i{color:#76526d}
:root[data-theme=light] .rune-choice-card__order,:root[data-theme=light] .rune-selection-guide__icon{color:#fff;background:#8a5f7f}
:root[data-theme=light] .daily-rune-mini,:root[data-theme=light] .rune-selection-guide{border-color:color-mix(in srgb,#b77b55 24%,var(--border-soft));background:linear-gradient(145deg,#fffdfb,#f6edf2)}
.today-moon>div,.today-number>div,.today-rune>div{min-width:0}.today-moon h2,.today-number h2,.today-rune h2{max-width:100%;font-size:clamp(1.4rem,1.6vw,1.75rem);line-height:1.08;overflow-wrap:anywhere;hyphens:auto}

/* Searchable dream encyclopedia and editorial symbol pages. */
.dream-library .mystic-section-head>div>p:last-child{max-width:66ch;margin:.45rem 0 0;color:var(--text-muted);font-size:.86rem;line-height:1.5}.dream-search-status{min-height:1.3em;margin:7px 2px 0;color:var(--text-muted);font-size:.75rem}.dream-alphabet{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 14px}.dream-alphabet a{display:grid;place-items:center;min-width:31px;height:31px;padding:0 7px;border:1px solid var(--border-soft);border-radius:9px;color:var(--text-muted);background:var(--surface-elevated);font-size:.72rem;font-weight:800}.dream-alphabet a:hover,.dream-alphabet a.is-active{border-color:var(--accent-primary);color:var(--accent-primary);background:var(--accent-soft)}.dream-query-ribbon{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0 0 17px;padding:11px 13px;border:1px solid color-mix(in srgb,var(--accent-gold) 24%,var(--border-soft));border-radius:13px;background:color-mix(in srgb,var(--accent-gold) 5%,var(--surface-soft));font-size:.72rem}.dream-query-ribbon>span{color:var(--text-muted);font-weight:800}.dream-query-ribbon a{padding:5px 8px;border-radius:999px;color:var(--text-secondary);background:var(--surface-elevated)}.dream-query-ribbon a:hover{color:var(--accent-primary)}.dream-pagination{display:flex;justify-content:center;gap:6px;margin-top:18px}.dream-pagination a{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--border-soft);border-radius:11px;color:var(--text-secondary);background:var(--surface-elevated);font-weight:800}.dream-pagination a.is-active,.dream-pagination a:hover{border-color:var(--accent-primary);color:#fff;background:var(--accent-primary)}
.symbol-detail__actions{display:flex;flex-wrap:wrap;gap:8px}.symbol-editorial{margin-top:12px;padding:clamp(24px,4vw,46px);border:1px solid color-mix(in srgb,var(--accent-secondary) 22%,var(--border-soft));border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent-secondary) 7%,var(--surface-elevated)),var(--surface-elevated))}.symbol-editorial h2{font-size:clamp(1.6rem,3vw,2.5rem)}.symbol-editorial p:not(.eyebrow){max-width:78ch;color:var(--text-secondary);font-size:1rem;line-height:1.75}.symbol-observation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.symbol-observation-grid article{padding:20px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-elevated)}.symbol-observation-grid h2{margin:.35em 0;font-size:1.25rem}.symbol-observation-grid p:last-child{margin-bottom:0;color:var(--text-secondary);font-size:.84rem;line-height:1.6}
@media(max-width:820px){.symbol-observation-grid{grid-template-columns:1fr}}

/* 2026-10 UX audit: complete discovery map, stable mid-width grids and mobile search. */
.application-entry-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;width:min(100%,920px);margin:17px 0}.application-entry-guide>div{min-width:0;padding:12px 13px;border:1px solid var(--border-soft);border-radius:14px;background:color-mix(in srgb,var(--surface-soft) 86%,transparent)}.application-entry-guide dt{margin:0 0 4px;color:var(--accent-gold);font-size:.64rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.application-entry-guide dd{margin:0;color:var(--text-secondary);font-size:.8rem;line-height:1.43}.game-detail .application-entry-guide{grid-column:1/-1}.game-detail-info>.application-entry-guide{grid-column:auto}.application-landing-intro .application-entry-guide{margin-bottom:21px}
.application-ai-notice{width:min(100%,920px);margin:-8px 0 20px;padding:11px 13px;border:1px solid color-mix(in srgb,var(--accent-primary) 30%,var(--border-soft));border-radius:13px;background:color-mix(in srgb,var(--accent-primary) 7%,var(--surface-elevated));color:var(--text-secondary);font-size:.78rem;line-height:1.5}.application-ai-notice strong{color:var(--text-primary)}
.sidebar-search{display:none;grid-template-columns:minmax(0,1fr) 38px;gap:6px;margin:0 0 14px}
.sidebar-search label{min-width:0}.sidebar-search input{width:100%;min-width:0;height:40px;padding:0 11px;border:1px solid var(--border-soft);border-radius:12px;background:var(--surface-elevated);color:var(--text-primary)}
.sidebar-search button{display:grid;place-items:center;min-width:38px;min-height:38px;border:1px solid var(--border-highlight);border-radius:12px;background:var(--surface-soft);color:var(--accent-primary);font-size:1.1rem;cursor:pointer}
.sidebar-search input:focus-visible,.sidebar-search button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}

.catalog-filters .chip.is-active{border-color:#58207f;background:#58207f;color:#fff;box-shadow:0 10px 24px rgb(88 32 127/.22)}
.catalog-filters .chip:hover{border-color:color-mix(in srgb,var(--accent-primary) 52%,var(--border-soft))}
.catalog-filters .chip:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
:root[data-theme=dark] .catalog-filters .chip.is-active{border-color:#ff9bd2;background:#ff9bd2;color:#241126;box-shadow:0 10px 30px rgb(255 63 169/.18)}
.catalog-context{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:-24px 0 18px;padding-bottom:14px;border-bottom:1px solid var(--border-soft)}
.catalog-context h2{margin:3px 0 0;font-size:clamp(1.45rem,2.4vw,2.15rem)}.catalog-context>p{max-width:48ch;margin:0;color:var(--text-secondary);text-align:right}
.experience-catalog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,285px),1fr));gap:14px}
.experience-catalog-card{position:relative;display:grid;grid-template-columns:70px minmax(0,1fr);gap:15px;min-width:0;padding:17px;border:1px solid var(--border-soft);border-radius:20px;background:linear-gradient(150deg,color-mix(in srgb,var(--surface-elevated) 96%,var(--accent-soft)),var(--surface-elevated));box-shadow:var(--shadow-soft);transition:transform var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast)}
.experience-catalog-card:hover,.experience-catalog-card:focus-within{transform:translateY(-2px);border-color:var(--border-highlight);box-shadow:var(--shadow-card)}
.experience-catalog-card__link{position:absolute;inset:0;z-index:2;border-radius:inherit}.experience-catalog-card__link:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
.experience-catalog-card__visual{position:relative;display:grid;place-items:center;align-self:start;width:70px;aspect-ratio:1;border:1px solid var(--border-highlight);border-radius:18px;background:radial-gradient(circle at 35% 25%,color-mix(in srgb,var(--accent-primary) 18%,transparent),transparent 62%),var(--surface-soft);color:var(--accent-secondary)}
.experience-catalog-card__visual>.ui-glyph{width:42px;height:42px}.experience-catalog-card__visual>span{position:absolute;right:-4px;bottom:-5px;display:grid;place-items:center;width:27px;height:27px;border:1px solid var(--border-soft);border-radius:50%;background:var(--surface-elevated)}
.experience-catalog-card__body{min-width:0}.experience-catalog-card__meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 9px;color:var(--text-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.07em}.experience-catalog-card__meta span{color:var(--accent-gold);font-weight:800}.experience-catalog-card__meta small{font:inherit;text-transform:none;letter-spacing:0}
.experience-catalog-card h2{margin:7px 0 6px;font-size:clamp(1.22rem,2vw,1.58rem);line-height:1.12}.experience-catalog-card p{display:-webkit-box;min-height:4.5em;margin:0;color:var(--text-secondary);font-size:.88rem;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.experience-catalog-card__facts{grid-column:1/-1;display:grid;gap:6px;margin:14px 0 0}.experience-catalog-card__facts>div{display:grid;grid-template-columns:96px minmax(0,1fr);gap:8px;padding-top:6px;border-top:1px solid var(--border-soft)}.experience-catalog-card__facts dt{color:var(--text-muted);font-size:.7rem;font-weight:800;text-transform:uppercase}.experience-catalog-card__facts dd{min-width:0;margin:0;color:var(--text-secondary);font-size:.78rem;line-height:1.35}
.experience-catalog-card footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:11px;border-top:1px solid var(--border-soft);color:var(--text-muted);font-size:.76rem}.experience-catalog-card footer strong{color:var(--accent-primary)}
.experience-catalog-card.is-featured{border-color:color-mix(in srgb,var(--accent-primary) 28%,var(--border-soft));background:radial-gradient(circle at 0 0,color-mix(in srgb,var(--accent-primary) 12%,transparent),transparent 50%),var(--surface-elevated)}
.catalog-next-step{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px;padding:20px 22px;border:1px solid var(--border-highlight);border-radius:20px;background:color-mix(in srgb,var(--accent-soft) 38%,var(--surface-elevated))}.catalog-next-step h2{margin:3px 0 5px;font-size:1.5rem}.catalog-next-step p{max-width:62ch;margin:0;color:var(--text-secondary)}.catalog-next-step>.button{flex:0 0 auto}

@media(max-width:1480px){
  .home-quick-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-quick-nav strong,.home-quick-nav small{overflow:visible;text-overflow:clip;white-space:normal}
  .today-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .today-card{grid-column:1/-1}
}
@media(max-width:768px){
  .sidebar-search{display:grid}
  .catalog-context{align-items:flex-start;flex-direction:column;gap:5px;margin-top:-18px}.catalog-context>p{text-align:left}
  .catalog-next-step{align-items:stretch;flex-direction:column}.catalog-next-step>.button{width:100%}
}
@media(max-width:620px){
  .home-quick-nav{grid-template-columns:1fr}
  .application-entry-guide{grid-template-columns:1fr}
  .experience-catalog-card{grid-template-columns:58px minmax(0,1fr);gap:12px;padding:14px;border-radius:17px}.experience-catalog-card__visual{width:58px;border-radius:15px}.experience-catalog-card__visual>.ui-glyph{width:34px;height:34px}
  .experience-catalog-card__facts>div{grid-template-columns:1fr;gap:2px}.experience-catalog-card p{min-height:0;-webkit-line-clamp:4}.catalog-filters{flex-wrap:nowrap;overflow-x:auto;padding:4px 2px 8px;scrollbar-width:thin}.catalog-filters .chip{flex:0 0 auto;min-height:40px}
  .today-grid{grid-template-columns:1fr}.today-card{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){.experience-catalog-card{transition:none}.experience-catalog-card:hover,.experience-catalog-card:focus-within{transform:none}}

/* Reading discovery: visible topics and a denser article masthead. */
.reading-index-hero{gap:20px;margin-bottom:14px;padding:22px 28px}.reading-index-hero h1{margin:.12em 0 .2em}.reading-index-hero__asset{width:58px;height:58px}
.reading-topic-picker{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center;width:min(100%,980px);margin:0 auto clamp(30px,5vw,54px);padding:12px 14px;border:1px solid var(--border-soft);border-radius:18px;background:color-mix(in srgb,var(--surface-elevated) 92%,transparent);box-shadow:0 10px 28px rgb(0 0 0/.055)}
.reading-topic-picker__intro{display:grid;gap:2px;padding:0 4px}.reading-topic-picker__intro span{color:var(--accent-gold);font-size:.63rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.reading-topic-picker__intro strong{font-size:.88rem;white-space:nowrap}
.reading-topic-picker__list{display:flex;gap:7px;min-width:0;overflow-x:auto;padding:2px 2px 5px;scrollbar-width:thin;scroll-snap-type:x proximity}
.reading-topic-picker__list a{display:inline-flex;flex:0 0 auto;gap:8px;align-items:center;min-height:36px;padding:7px 11px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);background:var(--surface-soft);font-size:.76rem;font-weight:750;text-decoration:none;scroll-snap-align:start;transition:border-color var(--motion-fast),color var(--motion-fast),background var(--motion-fast)}
.reading-topic-picker__list a:hover,.reading-topic-picker__list a:focus-visible,.reading-topic-picker__list a.is-active{border-color:color-mix(in srgb,var(--accent-gold) 46%,var(--border-soft));color:var(--accent-gold);background:var(--accent-soft);outline:none}.reading-topic-picker__list a:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-gold) 17%,transparent)}.reading-topic-picker__list small{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;color:var(--text-muted);background:var(--surface-elevated);font-size:.62rem}

.reading-article-hero{padding:clamp(22px,3.4vw,38px)}.reading-article-hero__topline{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;margin-bottom:18px;padding-right:58px}.reading-article-hero__topline .reading-back-link{margin:0}.reading-article-hero__topline .reading-kicker{display:inline-flex;margin:0;text-decoration:none}
.reading-article-hero__ornament{right:24px;top:20px;width:46px;height:46px;font-size:1rem;opacity:.68}.reading-article-hero h1{max-width:20ch;margin:.12em 0 .22em;font-size:clamp(2.05rem,4.1vw,3.65rem);line-height:1}.reading-article-hero__lead{max-width:70ch;font-size:clamp(.98rem,1.35vw,1.12rem);line-height:1.58}
.reading-article-meta{grid-template-columns:minmax(170px,1.35fr) repeat(3,minmax(105px,1fr));gap:10px;margin-top:18px;padding-top:14px}.reading-article-author>img,.reading-article-author>span{width:36px;height:36px}.reading-article-meta small{font-size:.64rem}.reading-article-meta strong,.reading-article-meta a,.reading-article-meta span,.reading-article-meta time{font-size:.8rem}.reading-author-note{max-width:78ch;margin:10px 0 0;font-size:.8rem;line-height:1.48}.reading-taxonomy{gap:6px;margin-top:14px}.reading-taxonomy a{padding:6px 10px;font-size:.72rem}.reading-article-actions{gap:8px;margin-top:14px}.reading-save-action,.reading-article-actions>a{display:inline-flex;gap:6px;align-items:center;min-height:36px;padding:0 12px;border:1px solid var(--border-soft);border-radius:999px;background:color-mix(in srgb,var(--surface-raised) 82%,transparent);font-size:.76rem}.reading-article-actions>a:hover,.reading-article-actions>a:focus-visible{border-color:color-mix(in srgb,var(--accent-gold) 40%,var(--border-soft));color:var(--accent-gold);outline:none}.reading-article-cover{margin-top:clamp(18px,3vw,32px)}.reading-reactions{scroll-margin-top:calc(var(--topbar) + 18px)}
.reading-experiences__list small{color:var(--accent-gold);font-size:.7rem;font-weight:750}

@media(max-width:760px){.reading-index-hero{padding:20px}.reading-index-hero__asset{width:44px;height:44px}.reading-topic-picker{grid-template-columns:1fr;gap:8px;padding:11px}.reading-topic-picker__intro{display:flex;gap:8px;align-items:baseline}.reading-topic-picker__intro strong{font-size:.82rem}.reading-article-hero{padding:22px 20px}.reading-article-hero__topline{margin-bottom:15px;padding-right:42px}.reading-article-hero__ornament{right:16px;top:17px;width:38px;height:38px}.reading-article-meta{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}.reading-article-author{grid-column:1/-1}.reading-article-meta__comments{grid-column:auto}.reading-article-actions{align-items:center;flex-direction:row}.reading-article-actions>a,.reading-save-action{min-height:34px;padding:0 10px}.reading-article-cover{margin-top:16px}}
@media(max-width:480px){.reading-topic-picker{margin-bottom:28px}.reading-topic-picker__intro span{display:none}.reading-topic-picker__list{margin-inline:-2px}.reading-article-hero__topline{display:grid;gap:9px}.reading-article-meta{grid-template-columns:1fr 1fr}.reading-article-meta__comments{grid-column:1/-1}.reading-author-note{font-size:.76rem}.reading-taxonomy{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.reading-taxonomy a{flex:0 0 auto}.reading-article-actions{align-items:stretch}.reading-save-action{width:100%;justify-content:center}.reading-article-actions>a{flex:1 1 auto;justify-content:center}}

/* Rune interpretation: make the constructive and cautionary sides readable at a glance. */
.rune-result-facets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rune-result-facet{display:grid;align-content:start;gap:5px;padding:11px 12px;border:1px solid var(--border-soft);border-radius:13px;background:color-mix(in srgb,var(--surface-soft) 84%,transparent)}.rune-result-facet h4,.rune-result-facet p{margin:0}.rune-result-facet h4{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.rune-result-facet p{color:var(--text-secondary);font-size:.82rem;line-height:1.48}.rune-result-facet--resource h4{color:var(--accent-gold)}.rune-result-facet--shadow h4{color:var(--accent-primary)}
@media(max-width:520px){.rune-result-facets{grid-template-columns:1fr}}

/* Comments: an in-product, keyboard-friendly report flow instead of a browser prompt. */
.comment-report-dialog{position:fixed;inset:0;z-index:1300;display:grid;place-items:center;padding:20px;background:rgb(6 8 20/.72);backdrop-filter:blur(9px)}.comment-report-dialog__card{display:grid;gap:16px;width:min(100%,520px);max-height:min(720px,calc(100dvh - 40px));overflow:auto;padding:clamp(20px,4vw,30px);border:1px solid var(--border-highlight);border-radius:24px;background:var(--surface-elevated);box-shadow:0 28px 80px rgb(0 0 0/.32)}.comment-report-dialog__intro{display:grid;gap:5px}.comment-report-dialog__intro h2,.comment-report-dialog__intro p{margin:0}.comment-report-dialog__intro h2{font-size:clamp(1.55rem,4vw,2.15rem)}.comment-report-dialog__intro p{color:var(--text-secondary);line-height:1.55}.comment-report-dialog__card label{display:grid;gap:7px;color:var(--text-secondary);font-size:.82rem;font-weight:750}.comment-report-dialog__card select,.comment-report-dialog__card textarea{width:100%;padding:11px 13px;border:1px solid var(--border-soft);border-radius:13px;color:var(--text-primary);background:var(--surface-soft);font:inherit}.comment-report-dialog__card textarea{resize:vertical}.comment-report-dialog__card select:focus-visible,.comment-report-dialog__card textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.comment-report-dialog__actions{display:flex;justify-content:flex-end;gap:9px}.comment-report-dialog__actions .button{min-height:42px}
@media(max-width:520px){.comment-report-dialog{align-items:end;padding:10px}.comment-report-dialog__card{width:100%;padding:20px;border-radius:22px 22px 14px 14px}.comment-report-dialog__actions{display:grid;grid-template-columns:1fr 1fr}.comment-report-dialog__actions .button{width:100%}}
/* Edgard: the original Vedmali cat engine inherits these theme tokens. */
:root{
  --vedmali-bubble-bg:color-mix(in srgb,var(--surface-elevated) 94%,var(--accent-soft));
  --vedmali-bubble-color:var(--text-primary);
  --vedmali-bubble-accent:var(--accent-primary);
}
:root[data-theme="dark"]{
  --vedmali-bubble-bg:color-mix(in srgb,var(--surface-elevated) 92%,#271636);
  --vedmali-bubble-color:#fff8ff;
  --vedmali-bubble-accent:#ff62bb;
}
.edgard-anchor{
  position:fixed;
  display:block;
  z-index:65;
  width:2px;
  height:2px;
  pointer-events:none;
  opacity:.001;
  contain:strict;
}
.edgard-toggle{
  position:relative;
  display:inline-grid;
  flex:0 0 auto;
  place-items:center;
  width:40px;
  height:40px;
  padding:0;
  border:1px solid var(--border-soft);
  border-radius:14px;
  color:var(--text-primary);
  background:color-mix(in srgb,var(--surface-elevated) 92%,var(--accent-soft));
  box-shadow:0 8px 20px rgb(27 14 45/.08);
  cursor:pointer;
  transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast),opacity var(--motion-fast);
}
.edgard-toggle[hidden]{display:none!important}
.edgard-toggle:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--accent-primary) 52%,var(--border-soft));
  background:color-mix(in srgb,var(--surface-elevated) 80%,var(--accent-soft));
}
.edgard-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--accent-primary) 42%,transparent);outline-offset:2px}
.edgard-toggle.is-disabled{opacity:.62;filter:saturate(.55)}
.edgard-toggle.is-loading .edgard-toggle__paw{animation:edgardPawPulse 1.1s ease-in-out infinite}
.edgard-toggle__paw{position:relative;display:block;width:23px;height:22px;transform:rotate(-8deg)}
.edgard-toggle__paw i,.edgard-toggle__paw b{position:absolute;display:block;background:currentColor}
.edgard-toggle__paw i{width:5px;height:7px;border-radius:60% 60% 50% 50%}
.edgard-toggle__paw i:nth-child(1){left:1px;top:6px;transform:rotate(-30deg)}
.edgard-toggle__paw i:nth-child(2){left:6px;top:1px;transform:rotate(-10deg)}
.edgard-toggle__paw i:nth-child(3){right:6px;top:1px;transform:rotate(10deg)}
.edgard-toggle__paw i:nth-child(4){right:1px;top:6px;transform:rotate(30deg)}
.edgard-toggle__paw b{left:5px;bottom:1px;width:13px;height:11px;border-radius:55% 55% 62% 62%;transform:rotate(0deg)}
@keyframes edgardPawPulse{50%{transform:rotate(-8deg) scale(.83);opacity:.55}}
@media(max-width:620px){.edgard-toggle{width:36px;height:36px;border-radius:12px}.edgard-toggle__paw{transform:rotate(-8deg) scale(.88)}}
@media(prefers-reduced-motion:reduce){.edgard-toggle,.edgard-toggle__paw{transition:none!important;animation:none!important}}

/* Stage 02: horoscopes, destiny matrix, angel numbers and lunar calendar. */
.astro-hero{position:relative;display:grid;min-height:min(620px,68vh);overflow:hidden;border:1px solid var(--border-soft);border-radius:28px;background:#11162c;color:#fff}.astro-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55;filter:saturate(.9)}.astro-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,12,31,.94) 0 35%,rgba(12,13,37,.58) 62%,rgba(12,13,37,.18))}.astro-hero>div{position:relative;z-index:1;align-self:end;max-width:720px;padding:clamp(32px,7vw,84px)}.astro-hero h1{max-width:14ch;margin:.15em 0;font-size:clamp(2.5rem,5.4vw,5.6rem);line-height:.93}.astro-hero p:not(.eyebrow){max-width:62ch;color:#ebe8fb;line-height:1.65}.zodiac-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.zodiac-grid>a{display:grid;grid-template-columns:74px 1fr;gap:15px;min-height:175px;padding:22px;border:1px solid var(--border-soft);border-radius:20px;color:var(--text-primary);background:linear-gradient(145deg,color-mix(in srgb,var(--zodiac-accent) 9%,var(--surface-elevated)),var(--surface-elevated));text-decoration:none;transition:transform var(--motion-fast),border-color var(--motion-fast)}.zodiac-grid>a:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--zodiac-accent) 65%,var(--border-soft))}.zodiac-grid>a>b{display:grid;place-items:center;width:68px;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--zodiac-accent) 55%,var(--border-soft));border-radius:50%;color:var(--zodiac-accent);background:var(--surface-soft);font:500 2.25rem var(--font-display)}.zodiac-grid small{color:var(--text-muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.zodiac-grid h3{margin:.3em 0;font-size:1.45rem}.zodiac-grid p{margin:0;color:var(--text-secondary);font-size:.82rem}.zodiac-grid>a>span{grid-column:2;color:var(--accent-primary);font-weight:700;font-size:.8rem}.astro-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.astro-links>a{display:grid;grid-template-columns:72px 1fr;gap:18px;padding:25px;border:1px solid var(--border-soft);border-radius:22px;color:var(--text-primary);background:var(--surface-elevated);text-decoration:none}.astro-links>a>span{display:grid;place-items:center;width:68px;height:68px;border:1px solid color-mix(in srgb,var(--accent-gold) 45%,var(--border-soft));border-radius:50%;color:var(--accent-gold);font:500 1.7rem var(--font-display)}.astro-links h2{margin:.15em 0;font-size:1.5rem}.astro-links p{margin:0;color:var(--text-secondary)}
.horoscope-page__head{display:grid;grid-template-columns:150px minmax(0,1fr);gap:30px;align-items:center;padding:clamp(28px,5vw,58px);border:1px solid var(--border-soft);border-radius:26px;background:linear-gradient(135deg,color-mix(in srgb,var(--zodiac-accent) 16%,var(--surface-elevated)),var(--surface-elevated))}.zodiac-seal{display:grid;place-items:center;width:145px;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--zodiac-accent) 60%,var(--border-soft));border-radius:50%;color:var(--zodiac-accent);background:radial-gradient(circle,color-mix(in srgb,var(--zodiac-accent) 12%,var(--surface-soft)),var(--surface-elevated));font:500 5rem var(--font-display);box-shadow:0 18px 50px color-mix(in srgb,var(--zodiac-accent) 16%,transparent)}.horoscope-page__head h1{margin:.15em 0;font-size:clamp(2.4rem,5vw,5rem);line-height:.95}.horoscope-page__head p{max-width:75ch;color:var(--text-secondary);line-height:1.7}.horoscope-page__head small{color:var(--text-muted)}.period-tabs{display:flex;gap:8px;overflow:auto;padding:14px 0}.period-tabs a{padding:10px 18px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);background:var(--surface-elevated);white-space:nowrap;text-decoration:none}.period-tabs a.is-active{border-color:var(--accent-primary);color:#fff;background:var(--accent-primary)}.horoscope-reading{display:grid;grid-template-columns:minmax(250px,.66fr) minmax(0,1.34fr);gap:12px}.horoscope-reading__lead,.horoscope-reading__grid article{padding:24px;border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.horoscope-reading__lead h2{margin:.25em 0;font-size:clamp(1.8rem,3vw,3rem)}.horoscope-reading__lead p{color:var(--text-secondary);line-height:1.65}.horoscope-reading__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.horoscope-reading__grid h3{margin:0 0 .55em;font-size:1.2rem}.horoscope-reading__grid p{margin:0;color:var(--text-secondary);line-height:1.58}.horoscope-page__links{display:flex;justify-content:space-between;gap:12px;margin:24px 0}.horoscope-page__links a{color:var(--accent-primary);font-weight:700}
.zodiac-compatibility-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 7%,var(--surface)),var(--surface-elevated))}.zodiac-pair-symbol{display:flex;align-items:center;justify-content:center;gap:12px}.zodiac-pair-symbol span{display:grid;place-items:center;width:112px;aspect-ratio:1;border:1px solid var(--border-soft);border-radius:50%;color:var(--accent-gold);background:var(--surface-soft);font:500 3.8rem var(--font-display)}.zodiac-pair-symbol b{color:var(--accent-primary);font-size:2rem}.zodiac-calculator{margin:18px 0;padding:20px;border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.zodiac-calculator form{display:grid;grid-template-columns:1fr auto 1fr auto;gap:12px;align-items:end}.zodiac-calculator label{display:grid;gap:7px;color:var(--text-secondary);font-size:.78rem}.zodiac-calculator select{width:100%;min-height:46px;padding:0 12px;border:1px solid var(--border-soft);border-radius:12px;color:var(--text-primary);background:var(--surface-soft)}.zodiac-calculator form>span{align-self:center;color:var(--accent-gold);font-size:1.5rem}.zodiac-calculator .form-status{grid-column:1/-1}.zodiac-pair-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.zodiac-pair-directory>a{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;padding:13px;border:1px solid var(--border-soft);border-radius:14px;color:var(--text-primary);background:var(--surface-elevated);text-decoration:none}.zodiac-pair-directory>a>span{color:var(--accent-gold);font-size:1.25rem}.zodiac-pair-directory strong{font-size:.9rem}.zodiac-pair-directory small{grid-column:2;color:var(--text-muted)}.zodiac-pair-reading{padding:clamp(24px,5vw,56px);border:1px solid var(--border-soft);border-radius:26px;background:var(--surface-elevated)}.zodiac-pair-reading>header{display:flex;align-items:center;justify-content:center;gap:26px}.zodiac-pair-reading>header>div{display:grid;place-items:center;min-width:130px}.zodiac-pair-reading>header span{display:grid;place-items:center;width:100px;aspect-ratio:1;border:1px solid var(--border-soft);border-radius:50%;color:var(--accent-gold);font-size:3rem}.zodiac-pair-reading>header small{margin-top:7px;color:var(--text-muted)}.zodiac-pair-reading>header strong{font-size:1.1rem}.zodiac-pair-reading>h1{max-width:18ch;margin:.5em auto .25em;text-align:center;font-size:clamp(2.4rem,5vw,5rem);line-height:.95}.zodiac-pair-reading>.lead{max-width:70ch;margin:0 auto 28px;text-align:center;color:var(--text-secondary);line-height:1.65}.zodiac-scores{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.zodiac-scores article{display:grid;grid-template-columns:1fr auto;gap:9px;padding:17px;border:1px solid var(--border-soft);border-radius:15px;background:var(--surface-soft)}.zodiac-scores i{grid-column:1/-1;height:6px;overflow:hidden;border-radius:999px;background:var(--border-soft)}.zodiac-scores i::after{content:"";display:block;width:var(--score);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-primary),var(--accent-gold))}.zodiac-insights{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.zodiac-insights section{padding:22px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-soft)}.zodiac-insights li{margin:.7em 0;color:var(--text-secondary);line-height:1.55}.zodiac-pair-reading blockquote{margin:12px 0 0;padding:22px;border-left:3px solid var(--accent-primary);border-radius:0 16px 16px 0;background:color-mix(in srgb,var(--accent-primary) 7%,var(--surface-soft))}
.love-spread-portal{display:grid;grid-template-columns:1fr minmax(260px,.65fr);gap:24px;align-items:center;margin:18px 0;padding:clamp(24px,4vw,46px);overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-primary) 42%,var(--border-soft));border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 11%,var(--surface)),var(--surface-elevated))}.love-spread-portal h2{max-width:19ch;margin:.2em 0;font-size:clamp(2rem,4vw,3.8rem);line-height:.98}.love-spread-portal p:not(.eyebrow){max-width:66ch;color:var(--text-secondary);line-height:1.6}.love-spread-portal__cards{position:relative;min-height:250px}.love-spread-portal__cards span{position:absolute;top:50%;left:50%;display:grid;place-items:center;width:120px;aspect-ratio:2/3;border:1px solid var(--accent-gold);border-radius:14px;color:var(--accent-gold);background:radial-gradient(circle,color-mix(in srgb,var(--accent-primary) 24%,transparent),var(--bg-secondary));box-shadow:0 22px 44px rgb(0 0 0/.23);transform:translate(-50%,-50%) rotate(calc((var(--i) - 3) * 10deg)) translateY(calc(abs(var(--i) - 3) * 7px))}.love-spread-portal__cards span:nth-child(1){--i:1}.love-spread-portal__cards span:nth-child(2){--i:2}.love-spread-portal__cards span:nth-child(3){--i:3;z-index:2}.love-spread-portal__cards span:nth-child(4){--i:4}.love-spread-portal__cards span:nth-child(5){--i:5}.spread-library-grid>a.is-love-spread{background:linear-gradient(145deg,color-mix(in srgb,var(--accent-primary) 7%,var(--surface-elevated)),var(--surface-elevated))}.spread-target{display:flex;flex-wrap:wrap;gap:9px;margin:12px 0;padding:18px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-elevated)}.spread-target legend{padding:0 6px;font-weight:800}.spread-target label{cursor:pointer}.spread-target input{position:absolute;opacity:0}.spread-target label span{display:block;padding:10px 18px;border:1px solid var(--border-soft);border-radius:999px;background:var(--surface-soft)}.spread-target input:checked+span{border-color:var(--accent-primary);color:#fff;background:var(--accent-primary)}.spread-target p{flex-basis:100%;margin:4px 0 0;color:var(--text-muted);font-size:.8rem}.spread-synthesis{margin-top:14px;padding:clamp(22px,4vw,38px);border:1px solid color-mix(in srgb,var(--accent-gold) 38%,var(--border-soft));border-radius:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent-gold) 7%,var(--surface-elevated)),var(--surface-elevated))}.spread-synthesis h2{margin:.15em 0;font-size:clamp(1.8rem,3.4vw,3rem)}.spread-synthesis .lead{max-width:82ch;color:var(--text-secondary);line-height:1.7}
.matrix-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center;padding:clamp(28px,5vw,58px);border:1px solid var(--border-soft);border-radius:26px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-secondary) 10%,var(--surface)),var(--surface-elevated))}.matrix-hero h1{max-width:16ch;margin:.15em 0;font-size:clamp(2.5rem,5vw,5rem);line-height:.94}.matrix-hero p:not(.eyebrow){max-width:68ch;color:var(--text-secondary);line-height:1.65}.matrix-hero__mini{position:relative;min-height:310px}.matrix-hero__mini::before,.matrix-hero__mini::after{content:"";position:absolute;inset:15% 22%;border:1px solid color-mix(in srgb,var(--accent-gold) 55%,transparent);transform:rotate(45deg)}.matrix-hero__mini::after{inset:28% 34%;border-color:var(--accent-secondary)}.matrix-hero__mini i,.matrix-hero__mini b{position:absolute;z-index:1;display:grid;place-items:center;width:62px;aspect-ratio:1;border:1px solid var(--accent-gold);border-radius:50%;color:var(--accent-gold);background:var(--surface-elevated);font:500 1.4rem var(--font-display)}.matrix-hero__mini i:nth-child(1){left:50%;top:4%}.matrix-hero__mini i:nth-child(2){right:12%;top:46%}.matrix-hero__mini b{left:50%;top:46%;width:78px;color:#fff;background:var(--accent-primary);transform:translate(-50%,-50%)}.matrix-hero__mini i:nth-child(4){left:12%;top:46%}.matrix-hero__mini i:nth-child(5){left:50%;bottom:3%}.matrix-calculator{margin:15px 0;padding:22px;border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.matrix-calculator form{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end}.matrix-calculator .form-status{grid-column:1/-1}.matrix-reading{padding:clamp(24px,4vw,44px);border:1px solid var(--border-soft);border-radius:24px;background:var(--surface-elevated)}.matrix-reading>header h2{margin:.15em 0;font-size:clamp(2rem,4vw,3.8rem)}.matrix-workspace{display:grid;grid-template-columns:minmax(320px,1fr) minmax(260px,.7fr);gap:18px;align-items:stretch}.matrix-diagram{position:relative;min-height:540px;overflow:hidden;border:1px solid var(--border-soft);border-radius:24px;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--accent-primary) 14%,var(--surface-soft)) 0 10%,transparent 11% 38%,color-mix(in srgb,var(--accent-gold) 12%,transparent) 39% 40%,transparent 41%),var(--surface-soft)}.matrix-line{position:absolute;left:50%;top:50%;width:74%;height:1px;background:color-mix(in srgb,var(--accent-gold) 42%,transparent);transform-origin:center}.matrix-line--a{transform:translate(-50%,-50%) rotate(0)}.matrix-line--b{transform:translate(-50%,-50%) rotate(45deg)}.matrix-line--c{transform:translate(-50%,-50%) rotate(90deg)}.matrix-line--d{transform:translate(-50%,-50%) rotate(-45deg)}.matrix-node{position:absolute;z-index:2;display:grid;place-items:center;width:58px;aspect-ratio:1;border:1px solid var(--accent-gold);border-radius:50%;color:var(--text-primary);background:var(--surface-elevated);box-shadow:0 10px 24px rgb(0 0 0/.15);font:700 1.15rem var(--font-display);transform:translate(-50%,-50%);cursor:pointer}.matrix-node:hover,.matrix-node.is-active{color:#fff;background:var(--accent-primary);transform:translate(-50%,-50%) scale(1.12)}.matrix-position-detail{padding:24px;border:1px solid var(--border-soft);border-radius:22px;background:var(--surface-soft)}.matrix-position-detail h2{margin:.2em 0;font-size:clamp(1.8rem,3vw,2.8rem)}.matrix-position-detail h3{margin:1.4em 0 .35em}.matrix-position-detail p{color:var(--text-secondary);line-height:1.62}.matrix-lines{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.matrix-lines article,.matrix-compatibility-result,.matrix-recommendations{padding:22px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-soft)}.matrix-lines h3,.matrix-compatibility-result h2{margin:.2em 0}.matrix-lines p,.matrix-compatibility-result p{color:var(--text-secondary);line-height:1.6}.matrix-recommendations{margin-top:12px}.matrix-recommendations li,.matrix-compatibility-result li{margin:.7em 0;color:var(--text-secondary)}.matrix-method{display:grid;grid-template-columns:.55fr 1.45fr;gap:24px;margin:20px 0;padding:clamp(22px,4vw,38px);border:1px solid var(--border-soft);border-radius:22px;background:var(--surface-elevated)}.matrix-method h2{margin:.15em 0;font-size:2rem}.matrix-method dl{margin:0}.matrix-method dl>div{display:grid;grid-template-columns:200px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid var(--border-soft)}.matrix-method dt{font-weight:800}.matrix-method dd{margin:0;color:var(--text-secondary);line-height:1.5}
.angel-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:26px;align-items:end;padding:clamp(28px,5vw,58px);border:1px solid var(--border-soft);border-radius:26px;background:radial-gradient(circle at 82% 20%,color-mix(in srgb,var(--accent-gold) 14%,transparent),transparent 28%),linear-gradient(135deg,color-mix(in srgb,var(--accent-secondary) 8%,var(--surface)),var(--surface-elevated))}.angel-hero h1{max-width:16ch;margin:.15em 0;font-size:clamp(2.5rem,5vw,5rem);line-height:.94}.angel-hero p:not(.eyebrow){max-width:68ch;color:var(--text-secondary);line-height:1.65}.angel-hero form{display:grid;gap:10px}.angel-hero input{width:100%;min-height:58px;padding:0 18px;border:1px solid var(--border-soft);border-radius:15px;color:var(--text-primary);background:var(--surface-soft);font-size:1.15rem}.angel-reading{display:grid;grid-template-columns:minmax(160px,.35fr) 1fr;gap:28px;align-items:center;margin:16px 0;padding:clamp(24px,4vw,42px);border:1px solid color-mix(in srgb,var(--accent-gold) 40%,var(--border-soft));border-radius:24px;background:var(--surface-elevated)}.angel-reading__number{color:var(--accent-gold);font:500 clamp(3.5rem,9vw,8rem)/1 var(--font-display);text-align:center}.angel-reading h2{margin:.15em 0;font-size:clamp(2rem,4vw,3.8rem)}.angel-reading .lead,.angel-reading>div>p{color:var(--text-secondary);line-height:1.65}.angel-associations{display:flex;flex-wrap:wrap;gap:7px}.angel-associations span{padding:7px 11px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);background:var(--surface-soft);font-size:.75rem}.angel-reading blockquote{margin:18px 0;padding-left:16px;border-left:2px solid var(--accent-primary);font:500 1.35rem/1.35 var(--font-display)}.angel-directory{display:grid;grid-template-columns:1fr 1fr;gap:9px}.angel-directory>a{display:grid;grid-template-columns:88px 1fr auto;gap:14px;align-items:center;padding:17px;border:1px solid var(--border-soft);border-radius:16px;color:var(--text-primary);background:var(--surface-elevated);text-decoration:none}.angel-directory>a>b{color:var(--accent-gold);font:500 1.8rem var(--font-display)}.angel-directory h3{margin:0 0 .25em}.angel-directory p{margin:0;color:var(--text-secondary);font-size:.82rem}.angel-detail>header{padding:clamp(30px,6vw,72px) 0}.angel-detail>header>div{color:var(--accent-gold);font:500 clamp(4rem,10vw,10rem)/.8 var(--font-display)}.angel-detail h1{max-width:18ch;margin:.3em 0;font-size:clamp(2.5rem,5vw,5rem);line-height:.95}.angel-detail header>p:last-child{max-width:70ch;color:var(--text-secondary);font-size:1.1rem;line-height:1.65}.angel-detail__body{display:grid;grid-template-columns:1fr 1fr;gap:12px}.angel-detail__body>div{padding:26px;border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-elevated)}.angel-detail__body li{margin:.7em 0;color:var(--text-secondary)}.angel-detail__body blockquote{font:500 1.5rem/1.35 var(--font-display)}
.lunar-calendar-hero{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:clamp(28px,5vw,56px);border:1px solid var(--border-soft);border-radius:26px;background:radial-gradient(circle at 86% 50%,color-mix(in srgb,var(--accent-secondary) 18%,transparent),transparent 28%),var(--surface-elevated)}.lunar-calendar-hero h1{margin:.15em 0;font-size:clamp(2.8rem,6vw,5.8rem);line-height:.92}.lunar-calendar-hero p:not(.eyebrow){max-width:70ch;color:var(--text-secondary);line-height:1.65}.lunar-now{display:grid;grid-template-columns:90px 1fr;gap:16px;align-items:center;min-width:290px;padding:20px;border:1px solid var(--border-soft);border-radius:20px;background:var(--surface-soft)}.lunar-now>span{display:grid;place-items:center;width:88px;aspect-ratio:1;border-radius:50%;color:var(--accent-gold);background:var(--bg-secondary);font-size:3.2rem}.lunar-now small{color:var(--text-muted)}.lunar-now strong{display:block;margin:.25em 0;font-size:1.2rem}.lunar-now p{margin:0!important;font-size:.8rem!important}.lunar-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:10px;align-items:end;min-width:0;margin:14px 0}.lunar-controls>a{display:grid;place-items:center;height:44px;border:1px solid var(--border-soft);border-radius:12px;color:var(--text-primary);background:var(--surface-elevated);text-decoration:none}.lunar-controls form{display:flex;flex-wrap:wrap;gap:9px;align-items:end;min-width:0}.lunar-controls label{display:grid;gap:5px;min-width:0;color:var(--text-muted);font-size:.7rem}.lunar-controls select,.lunar-controls input{width:100%;min-width:0;max-width:100%;min-height:44px;padding:0 10px;border:1px solid var(--border-soft);border-radius:11px;color:var(--text-primary);background:var(--surface-elevated)}.lunar-weekdays,.lunar-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;min-width:0}.lunar-weekdays{margin-bottom:7px}.lunar-weekdays span{text-align:center;color:var(--text-muted);font-size:.7rem}.lunar-pad{grid-column:span var(--pad)}.lunar-pad[style*="--pad:0"]{display:none}.lunar-month-grid article{min-width:0;min-height:172px;padding:13px;overflow-wrap:anywhere;border:1px solid var(--border-soft);border-radius:15px;background:var(--surface-elevated)}.lunar-month-grid article.is-key-phase{border-color:color-mix(in srgb,var(--accent-gold) 56%,var(--border-soft));background:linear-gradient(145deg,color-mix(in srgb,var(--accent-gold) 8%,var(--surface-elevated)),var(--surface-elevated))}.lunar-month-grid article.is-today{box-shadow:inset 0 0 0 2px var(--accent-primary)}.lunar-month-grid header{display:flex;justify-content:space-between;align-items:center}.lunar-month-grid header span{color:var(--accent-gold);font-size:1.35rem}.lunar-month-grid article>strong{display:block;margin:.7em 0 .2em;font-size:.78rem}.lunar-month-grid article>small{color:var(--text-muted)}.lunar-month-grid article>p{margin:.7em 0 0;color:var(--text-secondary);font-size:.7rem;line-height:1.45}.lunar-events{display:grid;grid-template-columns:.45fr 1.55fr;gap:22px;margin:24px 0}.lunar-events h2{margin:.15em 0;font-size:2.2rem}.lunar-events>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:9px}.lunar-events article{display:grid;grid-template-columns:auto 36px 1fr;gap:9px;align-items:center;padding:15px;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface-elevated)}.lunar-events article p{grid-column:1/-1;margin:0;color:var(--text-secondary);font-size:.8rem;line-height:1.5}
@media(max-width:1000px){.zodiac-grid,.zodiac-pair-directory{grid-template-columns:1fr 1fr}.horoscope-reading{grid-template-columns:1fr}.matrix-workspace{grid-template-columns:1fr}.matrix-diagram{min-height:500px}.lunar-month-grid article{min-height:145px}.lunar-month-grid article>p{display:none}}
.lunar-events>*{min-width:0}.lunar-events article{min-width:0;grid-template-columns:auto 36px minmax(0,1fr);overflow-wrap:anywhere}
@media(max-width:900px){.lunar-calendar-hero,.lunar-events{grid-template-columns:1fr}.lunar-now{min-width:0}.lunar-controls form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.lunar-controls form button{width:100%}.lunar-events>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.astro-hero{min-height:560px}.astro-hero::after{background:linear-gradient(0deg,rgba(9,12,31,.96),rgba(9,12,31,.25))}.astro-hero>div{padding:26px}.zodiac-grid,.astro-links,.zodiac-pair-directory,.zodiac-insights,.matrix-lines,.angel-directory,.angel-detail__body,.lunar-events,.lunar-events>div:last-child{grid-template-columns:1fr}.horoscope-page__head{grid-template-columns:1fr}.zodiac-seal{width:105px;font-size:3.5rem}.horoscope-reading__grid{grid-template-columns:1fr}.zodiac-calculator form{grid-template-columns:1fr}.zodiac-calculator form>span{display:none}.zodiac-scores{grid-template-columns:1fr}.love-spread-portal,.matrix-hero,.matrix-calculator form,.matrix-method,.angel-hero,.angel-reading{grid-template-columns:1fr}.love-spread-portal__cards{min-height:210px}.matrix-method dl>div{grid-template-columns:1fr;gap:5px}.lunar-month-grid article{min-height:94px;padding:9px}.lunar-month-grid article>strong{font-size:.64rem}.lunar-month-grid article>small{font-size:.62rem}}
@media(max-width:520px){.zodiac-grid{grid-template-columns:1fr}.zodiac-grid>a{grid-template-columns:58px 1fr;padding:16px}.zodiac-grid>a>b{width:54px}.zodiac-pair-reading{padding:19px}.zodiac-pair-reading>header{gap:10px}.zodiac-pair-reading>header>div{min-width:0}.zodiac-pair-reading>header span{width:70px;font-size:2.2rem}.matrix-diagram{min-height:390px}.matrix-node{width:46px}.matrix-position-detail{padding:18px}.lunar-weekdays,.lunar-month-grid{gap:3px}.lunar-month-grid article{min-height:72px;padding:6px;border-radius:9px}.lunar-month-grid article>strong{display:none}.lunar-month-grid header span{font-size:1rem}.lunar-controls{grid-template-columns:36px 1fr 36px}.lunar-controls form{display:grid;grid-template-columns:1fr 1fr}.lunar-controls form label:first-child{grid-column:1/-1}.lunar-controls form .button{grid-column:1/-1}}
.zodiac-pair-reading>h2{max-width:18ch;margin:.5em auto .25em;text-align:center;font-size:clamp(2.4rem,5vw,5rem);line-height:.95}
.love-spread-portal__cards span{transform:translate(-50%,-50%)}
.love-spread-portal__cards span:nth-child(1){transform:translate(-92%,-42%) rotate(-20deg)}
.love-spread-portal__cards span:nth-child(2){transform:translate(-70%,-48%) rotate(-10deg)}
.love-spread-portal__cards span:nth-child(3){z-index:2}
.love-spread-portal__cards span:nth-child(4){transform:translate(-30%,-48%) rotate(10deg)}
.love-spread-portal__cards span:nth-child(5){transform:translate(-8%,-42%) rotate(20deg)}
.astro-hero h1{color:#fff;font-size:clamp(2.5rem,5.4vw,5.3rem)}
.astro-hero .eyebrow{color:#f0b76a}
.matrix-hero h1{max-width:18ch;font-size:clamp(2.35rem,4.2vw,4.35rem);line-height:.96}

/* Stage 03: ritual encyclopedia and reusable article practices. */
.ritual-catalog-intro{width:min(100%,1120px);margin:0 auto 44px;padding:clamp(18px,3vw,34px);border:1px solid color-mix(in srgb,var(--accent-gold) 28%,var(--border-soft));border-radius:28px;background:radial-gradient(circle at 88% 2%,color-mix(in srgb,var(--accent-primary) 13%,transparent),transparent 28%),var(--surface-elevated);box-shadow:var(--shadow-card)}
.ritual-catalog-intro__lead{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:24px;align-items:stretch}.ritual-catalog-intro__lead h2{max-width:16ch;margin:.18em 0;font-size:clamp(2rem,4vw,3.5rem);line-height:1}.ritual-catalog-intro__lead>div>p:last-child{max-width:70ch;color:var(--text-secondary);line-height:1.65}.ritual-catalog-feature{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:24px;border:1px solid color-mix(in srgb,var(--accent-primary) 45%,var(--border-soft));border-radius:22px;color:#fff;background:linear-gradient(145deg,#25153a,#6d285c);text-decoration:none}.ritual-catalog-feature>span{font:500 3rem var(--font-display);color:#f7d58d}.ritual-catalog-feature small{color:#d9cae9;text-transform:uppercase;letter-spacing:.08em}.ritual-catalog-feature strong{margin:.35em 0;font:600 1.65rem/1.05 var(--font-display)}.ritual-catalog-feature p{margin:.2em 0;color:#eee4f2;line-height:1.45}.ritual-catalog-feature b{margin-top:16px;color:#ff83be}.ritual-catalog-principles{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.ritual-catalog-principles span{padding:8px 12px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);background:var(--surface-soft);font-size:.77rem;font-weight:750}.ritual-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ritual-category-grid>a{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;min-width:0;padding:17px;border:1px solid var(--border-soft);border-radius:17px;color:var(--text-primary);background:color-mix(in srgb,var(--surface-soft) 86%,transparent);text-decoration:none;transition:transform var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast)}.ritual-category-grid>a:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent-gold) 50%,var(--border-soft));background:var(--surface-elevated)}.ritual-category-grid>a>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid color-mix(in srgb,var(--accent-gold) 38%,var(--border-soft));border-radius:50%;color:var(--accent-gold);font-size:1.3rem}.ritual-category-grid strong{display:block;font-size:.92rem}.ritual-category-grid p{display:-webkit-box;margin:.35em 0;overflow:hidden;color:var(--text-secondary);font-size:.73rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ritual-category-grid small{color:var(--accent-primary);font-size:.68rem;font-weight:750}
.reading-article-body--ritual.article-content{width:min(100% - 30px,78ch)}.ritual-practice{margin:clamp(30px,5vw,52px) 0;padding:clamp(18px,3vw,30px);border:1px solid color-mix(in srgb,var(--accent-primary) 42%,var(--border-soft));border-radius:26px;background:radial-gradient(circle at 94% 0,color-mix(in srgb,var(--accent-primary) 12%,transparent),transparent 27%),var(--surface-elevated);box-shadow:0 24px 60px rgb(11 9 31/.13);font-size:.92rem;line-height:1.55}.ritual-practice__head{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--border-soft)}.ritual-practice__head h2{margin:.15em 0 .25em!important;font-size:clamp(1.75rem,3vw,2.6rem)!important}.ritual-practice__head p{max-width:62ch;margin:0;color:var(--text-secondary)}.ritual-practice__facts{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.ritual-practice__facts span{padding:8px 11px;border:1px solid var(--border-soft);border-radius:999px;color:var(--text-secondary);background:var(--surface-soft);font-size:.72rem;white-space:nowrap}.ritual-stage-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:20px 0}.ritual-stage-gallery article{padding:16px;border:1px solid var(--border-soft);border-radius:16px;background:var(--surface-soft)}.ritual-stage-gallery span{display:grid;place-items:center;width:38px;height:38px;margin-bottom:10px;border:1px solid color-mix(in srgb,var(--accent-gold) 50%,var(--border-soft));border-radius:50%;color:var(--accent-gold);font-family:var(--font-display)}.ritual-stage-gallery strong{display:block}.ritual-stage-gallery p{margin:.35em 0 0;color:var(--text-secondary);font-size:.77rem}.ritual-practice__workspace{display:grid;grid-template-columns:minmax(210px,.65fr) minmax(0,1.35fr);gap:16px;margin-top:18px}.ritual-materials,.ritual-steps{min-width:0;padding:18px;border:1px solid var(--border-soft);border-radius:18px;background:color-mix(in srgb,var(--surface-soft) 84%,transparent)}.ritual-materials h3,.ritual-steps h3{margin:0!important;font-size:1.15rem!important}.ritual-checklist{display:grid;gap:8px;margin-top:14px}.ritual-checklist label,.ritual-steps label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.ritual-checklist input,.ritual-steps input{flex:0 0 auto;width:19px;height:19px;margin-top:2px;accent-color:var(--accent-primary)}.ritual-checklist span,.ritual-steps li>label>span{color:var(--text-secondary);line-height:1.45}.ritual-checklist input:checked+span,.ritual-steps input:checked+span{color:var(--text-muted);text-decoration:line-through}.ritual-steps__title{display:flex;justify-content:space-between;gap:12px;align-items:center}.ritual-steps__title>strong{color:var(--accent-primary);font-size:.78rem}.ritual-progress{height:6px;margin:12px 0 16px;overflow:hidden;border-radius:999px;background:var(--border-soft)}.ritual-progress i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-primary),var(--accent-gold));transition:width var(--motion-normal)}.ritual-steps ol{display:grid;gap:9px;margin:0!important;padding:0!important;list-style:none}.ritual-steps li{margin:0!important}.ritual-steps li>label>span{display:grid;grid-template-columns:32px 1fr;gap:5px}.ritual-steps li b{color:var(--accent-gold);font-size:.75rem}.ritual-safety,.ritual-lunar-link{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:13px;align-items:center;margin-top:16px;padding:16px;border:1px solid var(--border-soft);border-radius:17px;background:var(--surface-soft)}.ritual-safety>span,.ritual-lunar-link>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid color-mix(in srgb,var(--accent-gold) 45%,var(--border-soft));border-radius:50%;color:var(--accent-gold);font-size:1.3rem}.ritual-safety p,.ritual-lunar-link p{margin:.25em 0 0;color:var(--text-secondary);font-size:.78rem}.ritual-lunar-link>a{color:var(--accent-primary);font-weight:800;text-decoration:none;white-space:nowrap}.ritual-practice__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}.ritual-practice__actions .form-status{flex-basis:100%;margin:0}.ritual-practice__actions .form-status[data-tone="error"]{color:var(--danger)}.ritual-practice.is-complete{border-color:color-mix(in srgb,var(--accent-gold) 62%,var(--border-soft))}
.bracelet-builder{display:grid;grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr);gap:16px;margin:20px 0}.bracelet-builder__controls,.bracelet-builder__preview{min-width:0;padding:18px;border:1px solid var(--border-soft);border-radius:18px;background:var(--surface-soft)}.bracelet-builder__controls{display:grid;gap:16px}.bracelet-builder__controls fieldset{min-width:0;margin:0;padding:0;border:0}.bracelet-builder__controls legend,.bracelet-builder__controls label>span{display:block;margin-bottom:8px;color:var(--text-secondary);font-size:.75rem;font-weight:800}.ritual-color-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.ritual-color-picker label{display:grid;place-items:center;gap:5px;padding:8px 4px;border:1px solid var(--border-soft);border-radius:12px;cursor:pointer}.ritual-color-picker input{position:absolute;opacity:0}.ritual-color-picker label>span{display:block!important;width:28px;height:28px;margin:0!important;border:3px solid var(--surface-elevated);border-radius:50%;outline:1px solid var(--border-soft);background:var(--ritual-color)}.ritual-color-picker b{font-size:.68rem}.ritual-color-picker label:has(input:checked){border-color:var(--accent-primary);background:color-mix(in srgb,var(--accent-primary) 8%,var(--surface-elevated))}.ritual-color-picker input:focus-visible+span{outline:3px solid var(--accent-primary)}.bracelet-builder__selects{display:grid;grid-template-columns:1fr 1fr;gap:9px}.bracelet-builder select,.bracelet-builder input[type="text"]{width:100%;min-width:0;min-height:45px;padding:0 12px;border:1px solid var(--border-soft);border-radius:11px;color:var(--text-primary);background:var(--surface-elevated)}.bracelet-builder__preview{display:grid;align-content:start}.bracelet-visual{overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-gold) 33%,var(--border-soft));border-radius:16px;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--bracelet-color) 16%,transparent),transparent 50%),linear-gradient(150deg,var(--surface-elevated),var(--surface-soft))}.bracelet-visual svg{display:block;width:100%;height:auto}.bracelet-thread--shadow{fill:none;stroke:#050719;stroke-width:31;opacity:.28}.bracelet-thread{fill:none;stroke:var(--bracelet-color);stroke-width:18}.bracelet-clasp{fill:var(--accent-gold);stroke:var(--surface-elevated);stroke-width:7}.bracelet-knot{fill:var(--bracelet-color);stroke:var(--surface-elevated);stroke-width:7}.bracelet-knot-center{fill:var(--accent-gold)}.bracelet-result{padding:18px 2px 0}.bracelet-result small{color:var(--accent-gold);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.bracelet-result h3{margin:.2em 0!important;font-size:1.5rem!important}.bracelet-result p{margin:.35em 0;color:var(--text-secondary)}.bracelet-result ol{display:grid;grid-template-columns:1fr 1fr;gap:6px 20px;margin:14px 0 0!important;padding-left:20px!important}.bracelet-result li{margin:0!important;color:var(--text-secondary);font-size:.75rem}
.ritual-related{width:min(100% - 36px,1040px);margin:0 auto 50px;padding:clamp(20px,3vw,30px);border:1px solid var(--border-soft);border-radius:24px;background:var(--surface-elevated)}.ritual-related>div:first-child h2{margin:.15em 0}.ritual-related>div:last-child{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:18px}.ritual-related a{display:grid;grid-template-columns:44px 1fr;gap:5px 12px;padding:16px;border:1px solid var(--border-soft);border-radius:15px;color:var(--text-primary);background:var(--surface-soft);text-decoration:none}.ritual-related a>span{grid-row:1/4;display:grid;place-items:center;width:42px;height:42px;border:1px solid color-mix(in srgb,var(--accent-gold) 42%,var(--border-soft));border-radius:50%;color:var(--accent-gold)}.ritual-related a small{color:var(--accent-primary);font-size:.68rem}.ritual-related a p{display:-webkit-box;margin:.3em 0 0;overflow:hidden;color:var(--text-secondary);font-size:.75rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.lunar-rituals{margin:28px 0;padding:clamp(20px,4vw,38px);border:1px solid color-mix(in srgb,var(--accent-primary) 30%,var(--border-soft));border-radius:24px;background:var(--surface-elevated)}.lunar-rituals>.mystic-section-head p{max-width:66ch}.lunar-rituals>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.lunar-rituals>div:last-child>a{display:grid;grid-template-columns:42px 1fr;gap:4px 11px;padding:16px;border:1px solid var(--border-soft);border-radius:15px;color:var(--text-primary);background:var(--surface-soft);text-decoration:none}.lunar-rituals a>span{grid-row:1/4;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--accent-gold);background:var(--bg-secondary)}.lunar-rituals a small{color:var(--accent-primary);font-size:.68rem}.lunar-rituals a p{display:-webkit-box;margin:.3em 0 0;overflow:hidden;color:var(--text-secondary);font-size:.75rem;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}
@media(max-width:1000px){.ritual-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lunar-rituals>div:last-child{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.ritual-catalog-intro__lead,.bracelet-builder,.ritual-practice__workspace{grid-template-columns:1fr}.ritual-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ritual-practice__head{flex-direction:column}.ritual-practice__facts{justify-content:flex-start}.ritual-stage-gallery{grid-template-columns:1fr}.ritual-safety,.ritual-lunar-link{grid-template-columns:42px 1fr}.ritual-lunar-link>a{grid-column:2}.ritual-related>div:last-child,.lunar-rituals>div:last-child{grid-template-columns:1fr}}
@media(max-width:520px){.ritual-category-grid{grid-template-columns:1fr}.ritual-category-grid p{display:block}.ritual-practice{margin-inline:-4px;padding:15px;border-radius:20px}.ritual-color-picker{grid-template-columns:repeat(2,1fr)}.bracelet-builder__selects{grid-template-columns:1fr}.bracelet-result ol{grid-template-columns:1fr}.ritual-practice__actions .button{width:100%}.ritual-related{width:100%;padding:16px}.lunar-rituals{padding:16px}}
@media(prefers-reduced-motion:reduce){.ritual-progress i,.ritual-category-grid>a{transition:none}}
