/* /Components/AppFooter.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════
   APP FOOTER — Consistent across all pages
   ═══════════════════════════════════════════════════ */

.app-footer[b-f3iou96uaf] {
    background: var(--surface);
    border-top: 1px solid var(--border);
    margin-top: auto;

    /* Hide on mobile — bottom nav serves navigation there */
    display: none;
}

@media (min-width: 768px) {
    .app-footer[b-f3iou96uaf] { display: block; }
}

/* ── Inner layout ─────────────────────────────────── */
.app-footer-inner[b-f3iou96uaf] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 48px 28px 36px;
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 48px;
    align-items: start;
}

@media (max-width: 900px) {
    .app-footer-inner[b-f3iou96uaf] {
        grid-template-columns: 1fr;
        gap: 32px;
        padding: 36px 24px 28px;
    }
}

/* ── Brand / logo column ──────────────────────────── */
.app-footer-brand[b-f3iou96uaf] { max-width: 320px; }

.app-footer-logo[b-f3iou96uaf] {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: var(--accent);
    margin-bottom: 14px;
    transition: opacity 150ms ease;
}
.app-footer-logo:hover[b-f3iou96uaf] { opacity: .78; }

.app-footer-mark[b-f3iou96uaf] {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    object-fit: cover;
    object-position: 68% 44%;
    border-radius: 50%;
    display: block;
}

.app-footer-logo-text[b-f3iou96uaf] {
    font-family: var(--font-display, 'Cinzel', Georgia, serif);
    font-size: 17px;
    font-weight: 700;
    letter-spacing: .06em;
    line-height: 1;
}

.app-footer-tagline[b-f3iou96uaf] {
    font-size: 14px;
    color: var(--muted);
    line-height: 1.7;
}

/* ── Links grid ───────────────────────────────────── */
.app-footer-links[b-f3iou96uaf] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

@media (max-width: 900px) {
    .app-footer-links[b-f3iou96uaf] {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
    }
}

@media (max-width: 600px) {
    .app-footer-links[b-f3iou96uaf] { grid-template-columns: 1fr 1fr; }
}

.app-footer-col[b-f3iou96uaf] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.app-footer-col-title[b-f3iou96uaf] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--muted);
    margin-bottom: 4px;
}

.app-footer-link[b-f3iou96uaf] {
    font-size: 13px;
    color: var(--muted);
    text-decoration: none;
    transition: color 140ms ease;
    line-height: 1.3;
}
.app-footer-link:hover[b-f3iou96uaf] { color: var(--text); }
.app-footer-link--premium[b-f3iou96uaf] { color: var(--accent2); }
.app-footer-link--premium:hover[b-f3iou96uaf] { color: var(--accent2); opacity: .8; }

/* ── Bottom bar ───────────────────────────────────── */
.app-footer-bottom[b-f3iou96uaf] {
    border-top: 1px solid var(--border);
    padding: 16px 28px;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.app-footer-copy[b-f3iou96uaf] {
    font-size: 13px;
    color: var(--muted);
}

.app-footer-scripture[b-f3iou96uaf] {
    font-size: 13px;
    color: var(--muted);
    opacity: .65;
    text-align: right;
    max-width: 480px;
}
/* /Components/AppHeader.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════
   APP HEADER — Mobile-first, Material-inspired
   ═══════════════════════════════════════════════════ */

/* ── Sticky header shell ──────────────────────────── */
.app-header[b-a32ww2hdqo] {
    position: sticky;
    top: 0;
    z-index: var(--z-sticky, 100);
    height: var(--header-h, 56px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    background: var(--surface);
    border-bottom: 1px solid var(--border);
    transition: box-shadow 200ms ease;
    flex-shrink: 0;
}

.app-header--scrolled[b-a32ww2hdqo] {
    box-shadow: var(--shadow-header, 0 2px 20px rgba(0,0,0,.45));
    border-bottom-color: transparent;
}

/* ── Logo ─────────────────────────────────────────── */
.app-logo[b-a32ww2hdqo] {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: var(--accent);
    flex-shrink: 0;
    transition: opacity 150ms ease;
}
.app-logo:hover[b-a32ww2hdqo] { opacity: .82; }

.app-logo-mark[b-a32ww2hdqo] {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    object-fit: cover;
    object-position: 68% 44%;
    border-radius: 50%;
    display: block;
}

.app-logo-text[b-a32ww2hdqo] {
    font-family: var(--font-display, 'Cinzel', Georgia, serif);
    font-size: 20px;
    font-weight: 700;
    letter-spacing: .06em;
    color: var(--accent);
    line-height: 1;
}

/* ── Desktop navigation ───────────────────────────── */
.app-nav[b-a32ww2hdqo] {
    display: none;
    align-items: center;
    gap: 2px;
}

.app-nav-link[b-a32ww2hdqo] {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    color: var(--muted);
    text-decoration: none;
    transition: background 150ms ease, color 150ms ease;
    white-space: nowrap;
    position: relative;
}
.app-nav-link[b-a32ww2hdqo]::after {
    content: '';
    position: absolute;
    bottom: 3px;
    left: 12px;
    right: 12px;
    height: 2px;
    background: var(--accent);
    border-radius: 1px;
    transform: scaleX(0);
    transition: transform 180ms ease;
}
.app-nav-link:hover[b-a32ww2hdqo] {
    background: rgba(255,255,255,.04);
    color: var(--text);
}
.app-nav-link--active[b-a32ww2hdqo] {
    color: var(--accent);
}
.app-nav-link--active[b-a32ww2hdqo]::after {
    transform: scaleX(1);
}

.app-nav-link--premium[b-a32ww2hdqo] {
    color: var(--accent2);
}
.app-nav-link--premium:hover[b-a32ww2hdqo] { color: var(--accent2); background: rgba(124,106,247,.08); }

.app-nav-link--cta[b-a32ww2hdqo] {
    background: rgba(229,163,45,.1);
    color: var(--accent);
    border: 1px solid rgba(229,163,45,.25);
    margin-left: 4px;
    padding: 5px 13px;
}
.app-nav-link--cta:hover[b-a32ww2hdqo] {
    background: rgba(229,163,45,.18);
    color: var(--accent);
}
.app-nav-link--cta[b-a32ww2hdqo]::after { display: none; }

/* ── Free-tier quota chip in nav ─────────────────── */
.app-quota-chip[b-a32ww2hdqo] {
    display: inline-flex; align-items: center;
    padding: 3px 9px;
    border-radius: 20px;
    font-size: 13px; font-weight: 700; letter-spacing: .03em;
    text-decoration: none;
    transition: opacity .15s;
}
.app-quota-chip--warn[b-a32ww2hdqo] {
    background: color-mix(in srgb, #f59e0b 12%, var(--surface));
    border: 1px solid color-mix(in srgb, #f59e0b 35%, var(--border));
    color: #b45309;
}
.app-quota-chip--full[b-a32ww2hdqo] {
    background: color-mix(in srgb, #ef4444 12%, var(--surface));
    border: 1px solid color-mix(in srgb, #ef4444 35%, var(--border));
    color: #dc2626;
}
.app-quota-chip:hover[b-a32ww2hdqo] { opacity: .8; }

/* ── Mobile hamburger button ──────────────────────── */
.app-hamburger[b-a32ww2hdqo] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    width: 36px;
    height: 36px;
    padding: 8px;
    background: none;
    border: none;
    cursor: pointer;
    border-radius: 6px;
    flex-shrink: 0;
    transition: background 150ms ease;
}
.app-hamburger:hover[b-a32ww2hdqo] { background: rgba(255,255,255,.06); }

.app-hamburger-bar[b-a32ww2hdqo] {
    display: block;
    width: 100%;
    height: 1.5px;
    background: var(--text);
    border-radius: 2px;
    transition: transform 250ms cubic-bezier(.4,0,.2,1), opacity 200ms ease;
    transform-origin: center;
}
.app-hamburger--open .app-hamburger-bar:nth-child(1)[b-a32ww2hdqo] {
    transform: translateY(6.5px) rotate(45deg);
}
.app-hamburger--open .app-hamburger-bar:nth-child(2)[b-a32ww2hdqo] {
    opacity: 0;
    transform: scaleX(0);
}
.app-hamburger--open .app-hamburger-bar:nth-child(3)[b-a32ww2hdqo] {
    transform: translateY(-6.5px) rotate(-45deg);
}

/* ── Backdrop ─────────────────────────────────────── */
.app-drawer-backdrop[b-a32ww2hdqo] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0);
    z-index: var(--z-overlay, 200);
    pointer-events: none;
    transition: background 300ms ease;
}
.app-drawer-backdrop--open[b-a32ww2hdqo] {
    background: rgba(0,0,0,.6);
    pointer-events: auto;
    backdrop-filter: blur(2px);
}

/* ── Mobile slide drawer ──────────────────────────── */
.app-drawer[b-a32ww2hdqo] {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(320px, 88vw);
    background: var(--surface);
    border-left: 1px solid var(--border);
    box-shadow: var(--shadow-lg);
    z-index: var(--z-drawer, 300);
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform 300ms cubic-bezier(.4,0,.2,1);
    overflow-y: auto;
    overscroll-behavior: contain;
}
.app-drawer--open[b-a32ww2hdqo] {
    transform: translateX(0);
}

.app-drawer-header[b-a32ww2hdqo] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid var(--border);
    flex-shrink: 0;
}

.app-drawer-close[b-a32ww2hdqo] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    color: var(--muted);
    border-radius: 6px;
    cursor: pointer;
    transition: background 150ms ease, color 150ms ease;
}
.app-drawer-close:hover[b-a32ww2hdqo] { background: rgba(255,255,255,.06); color: var(--text); }

.app-drawer-links[b-a32ww2hdqo] {
    padding: 8px 12px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex: 1;
}

.app-drawer-link[b-a32ww2hdqo] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 14px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    color: var(--muted);
    text-decoration: none;
    transition: background 150ms ease, color 150ms ease;
}
.app-drawer-link:hover[b-a32ww2hdqo] {
    background: rgba(255,255,255,.05);
    color: var(--text);
}
.app-drawer-link--active[b-a32ww2hdqo] {
    background: rgba(229,163,45,.1);
    color: var(--accent);
}
.app-drawer-link--premium[b-a32ww2hdqo] { color: var(--accent2); }
.app-drawer-link--premium:hover[b-a32ww2hdqo] { background: rgba(124,106,247,.08); color: var(--accent2); }
.app-drawer-link--auth[b-a32ww2hdqo] {
    background: rgba(229,163,45,.08);
    color: var(--accent);
    margin-top: 4px;
    border: none; width: 100%; text-align: left; cursor: pointer;
    font-family: inherit; font-size: inherit;
}
.app-drawer-link--auth:hover[b-a32ww2hdqo] { background: rgba(229,163,45,.14); }
.app-nav-signout[b-a32ww2hdqo] {
    font-size: 14px; font-weight: 500; color: var(--muted);
    background: none; border: none; cursor: pointer;
    padding: 6px 10px; border-radius: 6px;
    font-family: inherit;
}
.app-nav-signout:hover[b-a32ww2hdqo] { color: #dc2626; background: rgba(220,38,38,.08); }

.app-drawer-icon[b-a32ww2hdqo] {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    opacity: .75;
}
.app-drawer-link--active .app-drawer-icon[b-a32ww2hdqo],
.app-drawer-link:hover .app-drawer-icon[b-a32ww2hdqo] { opacity: 1; }

.app-drawer-footer[b-a32ww2hdqo] {
    padding: 12px 12px 20px;
    border-top: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex-shrink: 0;
}

.app-drawer-lang[b-a32ww2hdqo] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    margin-bottom: 4px;
}
.app-drawer-lang-label[b-a32ww2hdqo] {
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--muted);
    white-space: nowrap;
    flex-shrink: 0;
    margin-bottom: 0;
}
.app-drawer-lang-select[b-a32ww2hdqo] {
    flex: 1;
    padding: 6px 32px 6px 10px;
    font-size: 13px;
    background: var(--surface2);
    border: 1px solid var(--border);
    border-radius: 6px;
    color: var(--text);
    width: auto;
    min-width: 0;
}

/* ── Bottom navigation bar (mobile only) ─────────── */
.app-bottom-nav[b-a32ww2hdqo] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: var(--bottom-nav-h, 62px);
    background: var(--surface);
    border-top: 1px solid var(--border);
    display: flex;
    align-items: stretch;
    z-index: var(--z-sticky, 100);
    padding-bottom: env(safe-area-inset-bottom, 0);
}

.app-bottom-item[b-a32ww2hdqo] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 8px 4px;
    text-decoration: none;
    color: var(--muted);
    font-size: 10px;
    font-weight: 500;
    letter-spacing: .02em;
    transition: color 150ms ease;
    min-width: 0;
    position: relative;
}
.app-bottom-item[b-a32ww2hdqo]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 20%;
    right: 20%;
    height: 2px;
    background: var(--accent);
    border-radius: 0 0 2px 2px;
    transform: scaleX(0);
    transition: transform 200ms ease;
}
.app-bottom-item svg[b-a32ww2hdqo] {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
}
.app-bottom-item span[b-a32ww2hdqo] {
    display: block;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.app-bottom-item:hover[b-a32ww2hdqo] { color: var(--text); }
.app-bottom-item--active[b-a32ww2hdqo] {
    color: var(--accent);
}
.app-bottom-item--active[b-a32ww2hdqo]::before {
    transform: scaleX(1);
}

/* ── Language selector in header (tablet: 768-1099px) ── */
.app-header-lang[b-a32ww2hdqo] {
    display: none;
    align-items: center;
    gap: 6px;
    padding: 5px 10px;
    border-radius: 6px;
    background: none;
    border: 1px solid var(--border);
    cursor: pointer;
    transition: border-color 140ms ease;
}
.app-header-lang:hover[b-a32ww2hdqo] { border-color: var(--accent); }
.app-header-lang-icon[b-a32ww2hdqo] {
    width: 15px;
    height: 15px;
    color: var(--muted);
    flex-shrink: 0;
}
.app-header-lang-select[b-a32ww2hdqo] {
    background: none;
    border: none;
    color: var(--muted);
    font-size: 14px;
    font-family: inherit;
    font-weight: 500;
    padding: 0;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    background-image: none;
    width: auto;
}
.app-header-lang-select:focus[b-a32ww2hdqo] { outline: none; }
.app-header-lang-select option[b-a32ww2hdqo] { background: var(--surface2); color: var(--text); }

/* ── Tablet (768-1099px): show nav + header lang; drawer hidden ── */
@media (min-width: 768px) {
    .app-header[b-a32ww2hdqo] { padding: 0 20px; }
    .app-nav[b-a32ww2hdqo]    { display: flex; }
    .app-hamburger[b-a32ww2hdqo]      { display: none; }
    .app-drawer[b-a32ww2hdqo]         { display: none; }
    .app-drawer-backdrop[b-a32ww2hdqo] { display: none; }
    .app-bottom-nav[b-a32ww2hdqo]     { display: none; }
    .app-header-lang[b-a32ww2hdqo]    { display: flex; }
}

/* ── Desktop (≥1100px): sidebar handles nav → hide header nav ── */
@media (min-width: 1100px) {
    .app-header[b-a32ww2hdqo]         { padding: 0 24px; }
    .app-nav[b-a32ww2hdqo]            { display: none; }   /* sidebar takes over */
    .app-header-lang[b-a32ww2hdqo]    { display: none; }   /* sidebar has language */
}

/* ── Narrow tablet compact links ─────────────────── */
@media (min-width: 768px) and (max-width: 1099px) {
    .app-nav-link[b-a32ww2hdqo] { font-size: 14px; padding: 5px 8px; }
    .app-nav-link--cta[b-a32ww2hdqo] { padding: 5px 10px; margin-left: 2px; }
}

/* Light theme adjustments */
@media (prefers-color-scheme: light) {
    .app-hamburger-bar[b-a32ww2hdqo] { background: var(--text); }
    .app-drawer[b-a32ww2hdqo] { border-left-color: var(--border); }
}

/* ── Mobile (≤767px) touch target & sizing fixes ── */
@media (max-width: 767px) {
    .app-hamburger[b-a32ww2hdqo]    { width: 44px; height: 44px; }
    .app-drawer-close[b-a32ww2hdqo] { width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; }
    .app-bottom-item[b-a32ww2hdqo]  { font-size: 11px; }
    .app-bottom-icon[b-a32ww2hdqo]  { font-size: 20px; }
}
/* /Components/AppSidebar.razor.rz.scp.css */
/* ══════════════════════════════════════════════════════
   APP SIDEBAR  — Theme-aware premium navigation panel
   Breakpoints:
   < 768px   → hidden (mobile handles nav)
   768–1099  → icon rail (64 px, no labels)
   ≥ 1100px  → full panel (268 px, labels visible)
   ══════════════════════════════════════════════════════ */

/* ── Shell ─────────────────────────────────────────── */
.app-sidebar[b-21rf728fd1] { display: none; }

@media (min-width: 768px) {
    .app-sidebar[b-21rf728fd1] {
        display: flex;
        flex-direction: column;
        width: 68px;
        height: 100vh;
        position: sticky;
        top: 0;
        flex-shrink: 0;

        background: var(--bg);
        border-right: 1px solid var(--border);
        box-shadow: var(--shadow-sm);

        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior: contain;
        transition: width 260ms cubic-bezier(.4,0,.2,1);
        z-index: calc(var(--z-sticky, 100) - 1);
        scrollbar-width: none;
    }
    .app-sidebar[b-21rf728fd1]::-webkit-scrollbar { display: none; }
}

@media (min-width: 1100px) {
    .app-sidebar[b-21rf728fd1] { width: 268px; }
}

/* ── Logo ──────────────────────────────────────────── */
.asb-logo[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 20px 14px 18px;
    text-decoration: none;
    flex-shrink: 0;
    justify-content: center;
    position: relative;
    transition: opacity 150ms ease;
    margin-bottom: 4px;
}
/* gold shimmer underline */
.asb-logo[b-21rf728fd1]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 12px;
    right: 12px;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(212,175,55,.35) 40%, rgba(212,175,55,.55) 50%, rgba(212,175,55,.35) 60%, transparent 100%);
}
.asb-logo:hover[b-21rf728fd1] { opacity: .85; }

@media (min-width: 1100px) {
    .asb-logo[b-21rf728fd1] { justify-content: flex-start; padding: 20px 18px 18px; }
}

.asb-logo-mark[b-21rf728fd1] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    flex-shrink: 0;
    object-fit: cover;
    object-position: 68% 44%;
    /* gold ring glow */
    box-shadow: 0 0 0 2px rgba(212,175,55,.4), 0 0 14px rgba(212,175,55,.25);
    display: block;
}

.asb-logo-text[b-21rf728fd1] {
    display: none;
    flex-direction: column;
    line-height: 1.25;
}
@media (min-width: 1100px) {
    .asb-logo-text[b-21rf728fd1] { display: flex; }
}

.asb-logo-name[b-21rf728fd1] {
    font-family: var(--font-display, 'Cinzel', Georgia, serif);
    font-size: 15.5px;
    font-weight: 700;
    letter-spacing: .07em;
    color: #D4AF37;
    white-space: nowrap;
}
.asb-logo-sub[b-21rf728fd1] {
    font-size: 9px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(212,175,55,.5);
    white-space: nowrap;
    margin-top: 2px;
}

/* ── Nav container ─────────────────────────────────── */
.asb-nav[b-21rf728fd1] {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 6px 8px 0;
    gap: 1px;
    overflow-y: auto;
    overflow-x: hidden;
    min-height: 0;
    scrollbar-width: none;
}
.asb-nav[b-21rf728fd1]::-webkit-scrollbar { display: none; }
@media (min-width: 1100px) {
    .asb-nav[b-21rf728fd1] { padding: 6px 10px 0; }
}

/* ── Section label ─────────────────────────────────── */
.asb-section[b-21rf728fd1] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(212,175,55,.5);
    padding: 14px 10px 4px;
    pointer-events: none;
    white-space: nowrap;
    display: none;
}
@media (min-width: 1100px) {
    .asb-section[b-21rf728fd1] { display: block; }
}

/* ── Divider ───────────────────────────────────────── */
.asb-divider[b-21rf728fd1] {
    height: 1px;
    background: var(--border);
    margin: 7px 2px;
}

/* ── Nav item base ─────────────────────────────────── */
.asb-item[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 11px 10px;
    border-radius: 9px;
    color: var(--muted);
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    white-space: nowrap;
    overflow: hidden;
    position: relative;
    justify-content: center;
    transition: background 130ms ease, color 130ms ease, border-color 130ms ease;
    /* left accent bar */
    border-left: 2.5px solid transparent;
    margin-left: 0;
    min-height: 42px;
}
@media (min-width: 1100px) {
    .asb-item[b-21rf728fd1] { justify-content: flex-start; }
}

.asb-item:hover[b-21rf728fd1] {
    background: var(--surface2);
    color: var(--text);
    border-left-color: rgba(212,175,55,.3);
}

/* ── ACTIVE state — gold left bar + glowing bg ────── */
.asb-item--active[b-21rf728fd1] {
    background: rgba(212,175,55,.11);
    color: #D4AF37;
    font-weight: 600;
    border-left-color: #D4AF37;
    box-shadow: inset 0 0 0 1px rgba(212,175,55,.1);
}
.asb-item--active:hover[b-21rf728fd1] {
    background: rgba(212,175,55,.16);
    color: #D4AF37;
}

/* Portal item */
.asb-item--portal[b-21rf728fd1] {
    color: var(--muted);
    margin-top: 2px;
}

/* Sign-in button variant */
.asb-item--signin[b-21rf728fd1] {
    background: rgba(212,175,55,.12);
    border: 1px solid rgba(212,175,55,.28);
    border-left-width: 1px;
    color: #D4AF37;
    font-weight: 600;
    margin-top: 2px;
    justify-content: center;
}
@media (min-width: 1100px) {
    .asb-item--signin[b-21rf728fd1] { justify-content: flex-start; }
}
.asb-item--signin:hover[b-21rf728fd1] {
    background: rgba(212,175,55,.2);
    color: #D4AF37;
}

/* Locked item */
.asb-item--locked[b-21rf728fd1] {
    opacity: .68;
    cursor: default;
    pointer-events: none;
    flex: 1;
    min-width: 0;
}

/* ── Item icon wrapper ─────────────────────────────── */
.asb-icon[b-21rf728fd1] {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--muted);
    transition: color 130ms;
}
.asb-icon svg[b-21rf728fd1] { width: 18px; height: 18px; }
.asb-item:hover  .asb-icon[b-21rf728fd1] { color: var(--text); }
.asb-item--active .asb-icon[b-21rf728fd1] { color: #D4AF37; }

/* ── Hub emoji icon ────────────────────────────────── */
.asb-hub-icon[b-21rf728fd1] {
    font-size: 16px;
    line-height: 1;
    flex-shrink: 0;
    width: 20px;
    text-align: center;
    filter: saturate(.8) brightness(.9);
    transition: filter 130ms;
}
.asb-item:hover   .asb-hub-icon[b-21rf728fd1] { filter: saturate(1.1) brightness(1.05); }
.asb-item--active .asb-hub-icon[b-21rf728fd1] { filter: saturate(1.2) brightness(1.1); }

/* ── Label ─────────────────────────────────────────── */
.asb-label[b-21rf728fd1] {
    display: none;
    font-size: 14px;
    font-weight: inherit;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.4;
    flex: 1;
    min-width: 0;
}
@media (min-width: 1100px) {
    .asb-label[b-21rf728fd1] { display: block; }
}

/* ── Lock icon ─────────────────────────────────────── */
.asb-lock[b-21rf728fd1] {
    width: 12px;
    height: 12px;
    flex-shrink: 0;
    color: var(--muted);
    margin-left: auto;
    display: none;
    align-items: center;
}
.asb-lock svg[b-21rf728fd1] { width: 12px; height: 12px; }
@media (min-width: 1100px) {
    .asb-lock[b-21rf728fd1] { display: flex; }
}

/* ── Locked row (item + upgrade pill) ─────────────── */
.asb-locked-row[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 5px;
}
.asb-locked-row .asb-item[b-21rf728fd1] { flex: 1; min-width: 0; }

/* ── Upgrade pill ──────────────────────────────────── */
.asb-upgrade-pill[b-21rf728fd1] {
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .04em;
    color: #D4AF37;
    text-decoration: none;
    background: rgba(212,175,55,.12);
    border: 1px solid rgba(212,175,55,.35);
    border-radius: 6px;
    padding: 3px 8px;
    white-space: nowrap;
    flex-shrink: 0;
    display: none;
    transition: background 130ms, border-color 130ms;
    line-height: 1.4;
}
.asb-upgrade-pill:hover[b-21rf728fd1] {
    background: rgba(212,175,55,.24);
    border-color: rgba(212,175,55,.55);
}
@media (min-width: 1100px) {
    .asb-upgrade-pill[b-21rf728fd1] { display: inline-block; }
}

/* ── Hub expandable row ────────────────────────────── */
.asb-hub-row[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 2px;
}
.asb-hub-link[b-21rf728fd1] { flex: 1; min-width: 0; }

/* ── Hub expand toggle ─────────────────────────────── */
.asb-hub-toggle[b-21rf728fd1] {
    width: 28px;
    min-width: 28px;
    height: 36px;
    border: none;
    background: none;
    color: var(--muted);
    cursor: pointer;
    border-radius: 7px;
    display: none;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background 130ms, color 130ms;
    padding: 0;
}
@media (min-width: 1100px) { .asb-hub-toggle[b-21rf728fd1] { display: flex; } }
.asb-hub-toggle:hover[b-21rf728fd1] { background: var(--surface2); color: var(--text); }
.asb-hub-toggle svg[b-21rf728fd1] { width: 14px; height: 14px; transition: transform 220ms ease; }
.asb-hub-toggle--open svg[b-21rf728fd1] { transform: rotate(180deg); }

/* ── Feature list (drawer) ─────────────────────────── */
.asb-hub-features[b-21rf728fd1] {
    display: flex;
    flex-direction: column;
    padding: 2px 0 8px;
    border-bottom: 1px solid rgba(212,175,55,.08);
    margin-bottom: 2px;
}

.asb-hub-feat[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px 6px 32px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
    color: var(--text);
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    transition: background 130ms, color 130ms, border-left-color 130ms, opacity 130ms;
    border-left: 2px solid transparent;
    cursor: pointer;
    opacity: .85;
}

/* Sub-item with a subtitle line */
.asb-hub-feat--with-sub[b-21rf728fd1] {
    flex-direction: column;
    align-items: flex-start;
    gap: 1px;
    white-space: normal;
}
.asb-hub-feat--with-sub .asb-feat-name[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 500;
}
.asb-hub-feat--with-sub .asb-feat-sub[b-21rf728fd1] {
    font-size: 11px;
    color: var(--muted);
    font-weight: 400;
    padding-left: 20px;
    line-height: 1.3;
}
.asb-hub-feat:hover:not(.asb-hub-feat--locked)[b-21rf728fd1] {
    background: var(--surface2);
    color: var(--text);
    border-left-color: rgba(212,175,55,.3);
    opacity: 1;
}
.asb-hub-feat--active[b-21rf728fd1] {
    background: rgba(212,175,55,.08);
    color: #D4AF37;
    border-left-color: rgba(212,175,55,.4);
    opacity: 1;
}
.asb-hub-feat--locked[b-21rf728fd1] {
    opacity: .62;
    cursor: default;
    pointer-events: none;
}

/* Lock icon inside feat row */
.asb-feat-lock[b-21rf728fd1] {
    width: 10px;
    height: 10px;
    flex-shrink: 0;
    opacity: .7;
}

/* Tier badge inside feat row */
.asb-feat-tier[b-21rf728fd1] {
    margin-left: auto;
    font-size: 9px;
    font-weight: 700;
    border-radius: 4px;
    padding: 1px 5px;
    white-space: nowrap;
    letter-spacing: .03em;
    flex-shrink: 0;
}
.asb-feat-tier--sarathi[b-21rf728fd1] {
    background: rgba(99,102,241,.13);
    color: #a5b4fc;
    border: 1px solid rgba(99,102,241,.28);
}
.asb-feat-tier--acharya[b-21rf728fd1] {
    background: rgba(212,175,55,.12);
    color: #D4AF37;
    border: 1px solid rgba(212,175,55,.28);
}

/* ── Sub-items ─────────────────────────────────────── */
.asb-item--sub[b-21rf728fd1] { font-size: 14px; }
@media (min-width: 1100px) {
    .asb-item--sub[b-21rf728fd1] { padding-left: 12px; }
}

/* ── Locked section wrapper (hub + feature hints) ──── */
.asb-locked-section[b-21rf728fd1] {
    display: flex;
    flex-direction: column;
}

/* ── Feature hints (chips below locked hub) ────────── */
.asb-feature-hints[b-21rf728fd1] {
    display: none;
    flex-wrap: wrap;
    gap: 4px;
    padding: 3px 10px 10px 36px;
}
@media (min-width: 1100px) {
    .asb-feature-hints[b-21rf728fd1] { display: flex; }
}
.asb-feature-hint[b-21rf728fd1] {
    font-size: 10.5px;
    color: rgba(212,175,55,.52);
    background: rgba(212,175,55,.07);
    border: 1px solid rgba(212,175,55,.18);
    border-radius: 4px;
    padding: 1px 7px;
    line-height: 1.5;
    white-space: nowrap;
    pointer-events: none;
}

/* ── Tooltip (icon-rail only) ──────────────────────── */
@media (min-width: 768px) and (max-width: 1099px) {
    .asb-item[data-tip][b-21rf728fd1],
    .asb-lang[data-tip][b-21rf728fd1] { position: relative; }

    .asb-item[data-tip][b-21rf728fd1]::after,
    .asb-lang[data-tip][b-21rf728fd1]::after {
        content: attr(data-tip);
        position: absolute;
        left: calc(100% + 10px);
        top: 50%;
        transform: translateY(-50%);
        background: var(--surface);
        border: 1px solid var(--border);
        border-radius: 7px;
        padding: 5px 12px;
        font-size: 12px;
        font-weight: 500;
        color: var(--text);
        white-space: nowrap;
        pointer-events: none;
        opacity: 0;
        box-shadow: var(--shadow-md);
        transition: opacity 150ms ease;
        z-index: 400;
    }
    .asb-item[data-tip]:hover[b-21rf728fd1]::after,
    .asb-lang[data-tip]:hover[b-21rf728fd1]::after { opacity: 1; }
}

/* ── Footer ────────────────────────────────────────── */
.asb-footer[b-21rf728fd1] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 8px 8px 14px;
    flex-shrink: 0;
    border-top: 1px solid var(--border);
    background: linear-gradient(to top, rgba(212,175,55,.04) 0%, transparent 100%);
}
@media (min-width: 1100px) {
    .asb-footer[b-21rf728fd1] { padding: 8px 10px 14px; }
}

/* ── Language selector ─────────────────────────────── */
.asb-lang[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 10px;
    border-radius: 9px;
    position: relative;
    cursor: pointer;
    transition: background 130ms;
    justify-content: center;
}
.asb-lang:hover[b-21rf728fd1] { background: var(--surface2); }
@media (min-width: 1100px) {
    .asb-lang[b-21rf728fd1] { justify-content: flex-start; }
}

.asb-lang-icon[b-21rf728fd1] {
    width: 17px;
    height: 17px;
    flex-shrink: 0;
    color: var(--muted);
    display: flex;
}
.asb-lang-icon svg[b-21rf728fd1] { width: 17px; height: 17px; }

.asb-lang-select[b-21rf728fd1] {
    background: none;
    border: none;
    color: var(--muted);
    font-size: 13px;
    font-family: inherit;
    font-weight: 500;
    padding: 0;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    display: none;
    max-width: 150px;
}
.asb-lang-select:focus[b-21rf728fd1] { outline: none; }
.asb-lang-select option[b-21rf728fd1] { background: var(--surface2); color: var(--text); }

@media (min-width: 1100px) { .asb-lang-select[b-21rf728fd1] { display: block; } }
@media (min-width: 768px) and (max-width: 1099px) {
    .asb-lang-select[b-21rf728fd1] {
        display: block;
        position: absolute;
        inset: 0;
        opacity: 0;
        width: 100%;
        cursor: pointer;
    }
}

/* ── Upgrade CTA ───────────────────────────────────── */
.asb-upgrade-cta[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 3px 0 5px;
    padding: 10px 12px;
    background: linear-gradient(120deg, rgba(212,175,55,.2) 0%, rgba(212,175,55,.08) 100%);
    border: 1px solid rgba(212,175,55,.32);
    border-radius: 10px;
    text-decoration: none;
    color: #D4AF37;
    font-size: 12.5px;
    font-weight: 600;
    transition: background .14s, border-color .14s;
    justify-content: center;
    overflow: hidden;
}
.asb-upgrade-cta svg[b-21rf728fd1] { width: 14px; height: 14px; flex-shrink: 0; }
.asb-upgrade-cta span[b-21rf728fd1],
.asb-upgrade-arrow[b-21rf728fd1] { display: none; white-space: nowrap; }
.asb-upgrade-cta:hover[b-21rf728fd1] {
    background: linear-gradient(120deg, rgba(212,175,55,.3) 0%, rgba(212,175,55,.14) 100%);
    border-color: rgba(212,175,55,.5);
}
@media (min-width: 1100px) {
    .asb-upgrade-cta[b-21rf728fd1] { justify-content: flex-start; }
    .asb-upgrade-cta span[b-21rf728fd1] { display: inline; }
    .asb-upgrade-arrow[b-21rf728fd1] { display: inline; margin-left: auto; opacity: .6; }
}

/* ── Admin control plane link ──────────────────────── */
.asb-admin-link[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 3px 0 5px;
    padding: 9px 12px;
    background: rgba(194,86,30,.12);
    border: 1px solid rgba(194,86,30,.28);
    border-radius: 10px;
    text-decoration: none;
    color: #e87a45;
    font-size: 12.5px;
    font-weight: 600;
    transition: background .14s, border-color .14s;
    justify-content: center;
    overflow: hidden;
}
.asb-admin-link svg[b-21rf728fd1] { width: 14px; height: 14px; flex-shrink: 0; }
.asb-admin-link span[b-21rf728fd1] { display: none; white-space: nowrap; }
.asb-admin-link:hover[b-21rf728fd1] {
    background: rgba(194,86,30,.22);
    border-color: rgba(194,86,30,.5);
}
@media (min-width: 1100px) {
    .asb-admin-link[b-21rf728fd1] { justify-content: flex-start; }
    .asb-admin-link span[b-21rf728fd1] { display: inline; }
}

/* ── User card ─────────────────────────────────────── */
.asb-user-card[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 9px;
    border-radius: 10px;
    background: var(--surface2);
    border: 1px solid var(--border);
    transition: background 130ms, border-color 130ms;
    overflow: hidden;
    cursor: default;
}
.asb-user-card:hover[b-21rf728fd1] {
    background: var(--surface2);
    border-color: var(--accent);
}

.asb-avatar[b-21rf728fd1] {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: linear-gradient(135deg, #D4AF37 0%, #9a7a10 100%);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    text-transform: uppercase;
    box-shadow: 0 0 0 2px rgba(212,175,55,.35), 0 2px 10px rgba(212,175,55,.3);
}

.asb-user-meta[b-21rf728fd1] {
    flex: 1;
    min-width: 0;
    display: none;
    flex-direction: column;
    gap: 3px;
}
@media (min-width: 1100px) { .asb-user-meta[b-21rf728fd1] { display: flex; } }

.asb-user-email[b-21rf728fd1] {
    font-size: 11.5px;
    color: var(--text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 500;
}

.asb-tier[b-21rf728fd1] {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    border-radius: 10px;
    padding: 2px 8px;
    align-self: flex-start;
    white-space: nowrap;
}
.asb-tier--aarambh[b-21rf728fd1] { background: var(--surface2); color: var(--muted); border: 1px solid var(--border); }
.asb-tier--sarathi[b-21rf728fd1]  { background: rgba(99,102,241,.18); color: #a5b4fc; border: 1px solid rgba(99,102,241,.35); }
.asb-tier--acharya[b-21rf728fd1]  { background: rgba(212,175,55,.18); color: #D4AF37; border: 1px solid rgba(212,175,55,.42); }

/* Sign out */
.asb-signout[b-21rf728fd1] {
    background: none;
    border: none;
    padding: 6px;
    cursor: pointer;
    color: var(--muted);
    flex-shrink: 0;
    border-radius: 7px;
    line-height: 0;
    display: flex;
    align-items: center;
    margin-left: auto;
    transition: color 130ms, background 130ms;
}
.asb-signout svg[b-21rf728fd1] { width: 16px; height: 16px; }
.asb-signout:hover[b-21rf728fd1] { color: #f87171; background: rgba(248,113,113,.12); }

/* Sign in CTA */
.asb-signin-cta[b-21rf728fd1] {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 11px 12px;
    background: linear-gradient(120deg, rgba(212,175,55,.18) 0%, rgba(212,175,55,.07) 100%);
    border: 1px solid rgba(212,175,55,.35);
    border-radius: 10px;
    text-decoration: none;
    color: #D4AF37;
    font-size: 13px;
    font-weight: 600;
    justify-content: center;
    transition: background .14s, border-color .14s;
}
.asb-signin-cta svg[b-21rf728fd1] { width: 16px; height: 16px; flex-shrink: 0; }
.asb-signin-cta span[b-21rf728fd1] { display: none; }
.asb-signin-cta:hover[b-21rf728fd1] {
    background: linear-gradient(120deg, rgba(212,175,55,.28) 0%, rgba(212,175,55,.13) 100%);
    border-color: rgba(212,175,55,.55);
}
@media (min-width: 1100px) {
    .asb-signin-cta[b-21rf728fd1] { justify-content: flex-start; }
    .asb-signin-cta span[b-21rf728fd1] { display: inline; }
}
/* /Components/ArgalaPanel.razor.rz.scp.css */
.argala-summary-card[b-0kg4iviu0d] {
    border-radius: var(--radius);
    padding: 14px 16px;
    margin-bottom: 16px;
    border: 1px solid var(--border);
}

.argala-unobstructed[b-0kg4iviu0d] {
    background: color-mix(in srgb, #22c55e 8%, var(--surface));
    border-color: color-mix(in srgb, #22c55e 30%, var(--border));
}

.argala-obstructed[b-0kg4iviu0d] {
    background: color-mix(in srgb, #f59e0b 8%, var(--surface));
    border-color: color-mix(in srgb, #f59e0b 30%, var(--border));
}

.argala-summary-label[b-0kg4iviu0d] { font-size: 13px; color: var(--muted); text-transform: uppercase; letter-spacing: 0.05em; }
.argala-summary-status[b-0kg4iviu0d] { font-size: 17px; font-weight: 700; color: var(--text); margin: 4px 0 6px; }
.argala-summary-text[b-0kg4iviu0d] { font-size: 13px; color: var(--text); line-height: 1.55; margin: 0 0 10px; }

.argala-planet-row[b-0kg4iviu0d] { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 6px; }
.argala-planet-label[b-0kg4iviu0d] { font-size: 13px; color: var(--muted); }

.argala-planet-badge[b-0kg4iviu0d] {
    font-size: 13px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 999px;
}

.argala-planet-badge--active[b-0kg4iviu0d] {
    background: color-mix(in srgb, var(--accent) 15%, var(--surface));
    color: var(--accent);
    border: 1px solid color-mix(in srgb, var(--accent) 40%, transparent);
}

.argala-planet-badge--vir[b-0kg4iviu0d] {
    background: color-mix(in srgb, #f59e0b 12%, var(--surface));
    color: #92400e;
    border: 1px solid color-mix(in srgb, #f59e0b 40%, transparent);
}

.argala-section-title[b-0kg4iviu0d] {
    font-size: 13px;
    font-weight: 600;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 16px 0 8px;
}

.argala-entry[b-0kg4iviu0d] {
    border-radius: calc(var(--radius) - 2px);
    padding: 10px 14px;
    margin-bottom: 8px;
    border-left: 3px solid transparent;
}

.argala-entry--argala[b-0kg4iviu0d] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-left-color: var(--accent);
}

.argala-entry--vir[b-0kg4iviu0d] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-left-color: #f59e0b;
}

.argala-entry-header[b-0kg4iviu0d] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 4px;
}

.argala-entry-planet[b-0kg4iviu0d] { font-size: 14px; font-weight: 700; color: var(--text); }
.argala-entry-rasi[b-0kg4iviu0d]   { font-size: 14px; color: var(--muted); }
.argala-entry-type[b-0kg4iviu0d]   { font-size: 13px; color: var(--muted); margin-left: auto; }
.argala-entry-effect[b-0kg4iviu0d] { font-size: 13px; color: var(--text); line-height: 1.55; margin: 0; }

.argala-empty[b-0kg4iviu0d] { font-size: 14px; color: var(--muted); text-align: center; padding: 24px 0; }
.argala-notes[b-0kg4iviu0d] { font-size: 14px; color: var(--muted); margin-top: 16px; line-height: 1.55; font-style: italic; }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .argala-summary-card[b-0kg4iviu0d]   { padding: 12px 14px; margin-bottom: 12px; }
    .argala-summary-status[b-0kg4iviu0d] { font-size: 15px; }
    .argala-summary-text[b-0kg4iviu0d]   { font-size: 12.5px; }
    .argala-summary-label[b-0kg4iviu0d]  { font-size: 12px; }

    .argala-planet-row[b-0kg4iviu0d]     { gap: 5px; }
    .argala-planet-badge[b-0kg4iviu0d]   { font-size: 12px; padding: 3px 8px; }

    .argala-entry[b-0kg4iviu0d]          { padding: 9px 12px; margin-bottom: 6px; }
    .argala-entry-planet[b-0kg4iviu0d]   { font-size: 13px; }
    .argala-entry-rasi[b-0kg4iviu0d]     { font-size: 13px; }
    .argala-entry-type[b-0kg4iviu0d]     { font-size: 12px; }
    .argala-entry-effect[b-0kg4iviu0d]   { font-size: 12.5px; }

    .argala-section-title[b-0kg4iviu0d]  { font-size: 12px; margin: 12px 0 6px; }
    .argala-notes[b-0kg4iviu0d]          { font-size: 13px; margin-top: 12px; }
}
/* /Components/ArudhaPanel.razor.rz.scp.css */
.arudha-notes[b-kdbgwb0xuy] {
    font-size: 13px;
    color: var(--muted);
    line-height: 1.6;
    margin-bottom: 16px;
    padding: 10px 12px;
    background: var(--surface);
    border-radius: var(--radius);
    border-left: 3px solid var(--accent);
}

.arudha-grid[b-kdbgwb0xuy] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 10px;
}

.arudha-card[b-kdbgwb0xuy] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 12px 14px;
}

.arudha-card--highlight[b-kdbgwb0xuy] {
    border-color: var(--accent);
    background: color-mix(in srgb, var(--accent) 8%, var(--surface));
}

.arudha-code[b-kdbgwb0xuy] {
    font-size: 18px;
    font-weight: 700;
    color: var(--accent);
    margin-bottom: 2px;
}

.arudha-name[b-kdbgwb0xuy] {
    font-size: 14px;
    color: var(--muted);
    margin-bottom: 6px;
}

.arudha-rasi[b-kdbgwb0xuy] {
    font-size: 15px;
    font-weight: 600;
    color: var(--text);
}

.arudha-house[b-kdbgwb0xuy] {
    font-size: 14px;
    color: var(--muted);
    font-weight: 400;
}

.arudha-meaning[b-kdbgwb0xuy] {
    font-size: 13px;
    color: var(--muted);
    line-height: 1.4;
    margin-top: 6px;
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    /* 2 cards per row on mobile (was auto-fill 200px → ~1-2 per row) */
    .arudha-grid[b-kdbgwb0xuy] { grid-template-columns: 1fr 1fr; gap: 8px; }
    .arudha-card[b-kdbgwb0xuy] { padding: 10px 12px; }
    .arudha-code[b-kdbgwb0xuy] { font-size: 16px; }
    .arudha-name[b-kdbgwb0xuy] { font-size: 12.5px; margin-bottom: 4px; }
    .arudha-rasi[b-kdbgwb0xuy] { font-size: 14px; }
    .arudha-house[b-kdbgwb0xuy] { font-size: 13px; }
    .arudha-meaning[b-kdbgwb0xuy] { font-size: 12px; }
    .arudha-notes[b-kdbgwb0xuy] { font-size: 12.5px; padding: 9px 11px; }
}
/* /Components/AshtakavargaPanel.razor.rz.scp.css */
/* ── Ashtakavarga Panel ───────────────────────────────────────────────────── */

/* Progressive disclosure button — desktop: always hidden */
.pd-toggle[b-gyi6t1y7gz] { display: none; }

.akv-center[b-gyi6t1y7gz]          { display: flex; justify-content: center; padding: 2rem; }
.akv-badge[b-gyi6t1y7gz]           { font-size: .72rem; font-weight: 700; background: color-mix(in srgb, var(--accent) 15%, transparent); color: var(--accent); padding: .15rem .55rem; border-radius: 8px; }

/* Heatmap table */
.akv-scroll[b-gyi6t1y7gz]          { overflow-x: auto; margin: .5rem 0 1rem; border-radius: var(--radius); border: 1px solid var(--border); }
.akv-table[b-gyi6t1y7gz]           { border-collapse: collapse; width: 100%; min-width: 580px; font-size: .78rem; background: var(--surface); }
.akv-table thead tr[b-gyi6t1y7gz]  { background: var(--surface2); }
.akv-table th[b-gyi6t1y7gz],
.akv-table td[b-gyi6t1y7gz]        { border: 1px solid var(--border); padding: .28rem .4rem; text-align: center; }
.akv-th-planet[b-gyi6t1y7gz]       { text-align: left; padding-left: .55rem; width: 72px; background: var(--surface2); font-size: .72rem; color: var(--muted); font-weight: 700; text-transform: uppercase; letter-spacing: .05em; }
.akv-th-sign[b-gyi6t1y7gz]         { width: 38px; font-weight: 600; color: var(--muted); font-size: .7rem; background: var(--surface2); }
.akv-th-total[b-gyi6t1y7gz]        { width: 34px; background: var(--surface2); color: var(--muted); font-size: .7rem; }
.akv-table tbody tr:hover td[b-gyi6t1y7gz] { background: rgba(229,163,45,.06); }
.akv-td-planet[b-gyi6t1y7gz]       { text-align: left; font-weight: 600; color: var(--text); padding-left: .55rem; background: var(--surface); }
.akv-td-total[b-gyi6t1y7gz]        { font-weight: 700; background: var(--surface2); color: var(--text); }
.akv-sav-row td[b-gyi6t1y7gz]      { font-weight: 700; border-top: 2px solid var(--border); }

/* BAV cell tiers */
.akv-cell--weak[b-gyi6t1y7gz]      { background: color-mix(in srgb, #ef5350 30%, var(--surface)); color: var(--danger); }
.akv-cell--mid[b-gyi6t1y7gz]       { background: color-mix(in srgb, #ffa726 28%, var(--surface)); color: var(--warning); }
.akv-cell--strong[b-gyi6t1y7gz]    { background: color-mix(in srgb, var(--success) 28%, var(--surface)); color: var(--success); }

/* SAV cell tiers */
.akv-sav--low[b-gyi6t1y7gz]        { background: color-mix(in srgb, #ef5350 22%, var(--surface2)); color: var(--danger); font-weight: 700; }
.akv-sav--mid[b-gyi6t1y7gz]        { background: color-mix(in srgb, #ffa726 22%, var(--surface2)); color: var(--warning); font-weight: 700; }
.akv-sav--high[b-gyi6t1y7gz]       { background: color-mix(in srgb, var(--success) 22%, var(--surface2)); color: var(--success); font-weight: 700; }

/* Bar chart */
.akv-bar-section[b-gyi6t1y7gz]     { margin: 1rem 0 .5rem; }
.akv-bar-title[b-gyi6t1y7gz]       { font-size: .76rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); margin-bottom: .6rem; }
.akv-bars[b-gyi6t1y7gz]            { display: flex; align-items: flex-end; gap: 3px; height: 90px; }
.akv-bar-col[b-gyi6t1y7gz]         { flex: 1; display: flex; flex-direction: column; align-items: center; }
.akv-bar-val[b-gyi6t1y7gz]         { font-size: .64rem; font-weight: 700; color: var(--text); margin-bottom: 2px; }
.akv-bar-wrap[b-gyi6t1y7gz]        { width: 100%; flex: 1; display: flex; align-items: flex-end; }
.akv-bar-fill[b-gyi6t1y7gz]        { width: 100%; border-radius: 3px 3px 0 0; min-height: 4px; transition: height .35s ease; }
.akv-bar-fill--akv-sav--low[b-gyi6t1y7gz]  { background: color-mix(in srgb, #ef5350 50%, var(--surface)); }
.akv-bar-fill--akv-sav--mid[b-gyi6t1y7gz]  { background: color-mix(in srgb, #ffa726 55%, var(--surface)); }
.akv-bar-fill--akv-sav--high[b-gyi6t1y7gz] { background: color-mix(in srgb, var(--success) 55%, var(--surface)); }
.akv-bar-sign[b-gyi6t1y7gz]        { font-size: .62rem; color: var(--muted); font-weight: 600; margin-top: 3px; }

/* Legend + interpretation note */
.akv-legend[b-gyi6t1y7gz]          { display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; margin-top: .75rem; font-size: .76rem; color: var(--muted); }
.akv-legend-item[b-gyi6t1y7gz]     { display: flex; align-items: center; gap: .35rem; }
.akv-pip[b-gyi6t1y7gz]             { display: inline-block; width: 14px; height: 14px; border-radius: 3px; }
.akv-note[b-gyi6t1y7gz]            { margin-top: 1rem; font-size: .78rem; color: var(--muted); line-height: 1.6; background: var(--surface2); border-radius: 8px; padding: .65rem .85rem; }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    /* Heatmap table already in overflow-x:auto — tighten cells */
    .akv-table th[b-gyi6t1y7gz],
    .akv-table td[b-gyi6t1y7gz]    { padding: .22rem .3rem; }
    .akv-th-planet[b-gyi6t1y7gz]   { width: 58px; font-size: .65rem; padding-left: .4rem; }
    .akv-th-sign[b-gyi6t1y7gz]     { width: 28px; font-size: .62rem; }
    .akv-th-total[b-gyi6t1y7gz]    { width: 26px; font-size: .62rem; }
    .akv-td-planet[b-gyi6t1y7gz]   { font-size: .72rem; padding-left: .4rem; }
    .akv-table[b-gyi6t1y7gz]       { font-size: .7rem; }

    /* Bar chart — reduce height, tighten gaps */
    .akv-bars[b-gyi6t1y7gz]        { height: 68px; gap: 2px; }
    .akv-bar-val[b-gyi6t1y7gz]     { font-size: .56rem; }
    .akv-bar-sign[b-gyi6t1y7gz]    { font-size: .54rem; margin-top: 2px; }

    .akv-legend[b-gyi6t1y7gz]      { gap: .6rem; font-size: .68rem; margin-top: .5rem; }
    .akv-pip[b-gyi6t1y7gz]         { width: 12px; height: 12px; }
    .akv-note[b-gyi6t1y7gz]        { font-size: .72rem; padding: .55rem .7rem; }

    /* Progressive disclosure toggle */
    .pd-toggle[b-gyi6t1y7gz] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 44px;
        padding: 10px 16px;
        margin-top: 8px;
        background: var(--surface2);
        border: 1px solid var(--border);
        border-radius: var(--radius);
        font-size: .84rem;
        font-weight: 600;
        color: var(--muted);
        cursor: pointer;
        transition: background .14s, color .14s;
    }
    .pd-toggle:hover[b-gyi6t1y7gz] { background: var(--border); color: var(--text); }
}
/* /Components/AyurdayaPanel.razor.rz.scp.css */
/* ── Ayurdaya (Longevity) Panel ───────────────────────────────────────────── */
.ayu-disclaimer[b-2c3yxty4hc]  { background: color-mix(in srgb, #b8860b 8%, var(--surface)); border: 1px solid color-mix(in srgb, #b8860b 30%, var(--border)); border-radius: var(--radius); padding: 12px 16px; font-size: 14px; color: var(--text); line-height: 1.6; margin-bottom: 20px; }
.ayu-disclaimer strong[b-2c3yxty4hc] { color: #b8860b; }

.ayu-band-card[b-2c3yxty4hc]   { background: color-mix(in srgb, var(--accent) 8%, var(--surface)); border: 1px solid var(--accent); border-radius: var(--radius); padding: 18px 22px; margin-bottom: 18px; }
.ayu-band-label[b-2c3yxty4hc]  { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); margin-bottom: 6px; }
.ayu-band-value[b-2c3yxty4hc]  { font-size: 22px; font-weight: 700; color: var(--text); margin-bottom: 6px; }
.ayu-band-meta[b-2c3yxty4hc]   { font-size: 14px; color: var(--muted); font-variant-numeric: tabular-nums; }

.ayu-reading[b-2c3yxty4hc]     { font-size: 13px; color: var(--text); line-height: 1.7; margin-bottom: 20px; }

.ayu-section-title[b-2c3yxty4hc] { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); margin: 18px 0 8px; border-bottom: 1px solid var(--border); padding-bottom: 6px; }

.ayu-balarishta[b-2c3yxty4hc]  { border-radius: var(--radius); padding: 12px 16px; margin-bottom: 12px; }
.ayu-b-present[b-2c3yxty4hc]   { background: color-mix(in srgb, var(--danger) 6%, var(--surface)); border: 1px solid color-mix(in srgb, var(--danger) 20%, var(--border)); }
.ayu-b-absent[b-2c3yxty4hc]    { background: color-mix(in srgb, var(--success) 6%, var(--surface)); border: 1px solid color-mix(in srgb, var(--success) 20%, var(--border)); }

.ayu-indicator[b-2c3yxty4hc]   { display: inline-block; font-size: 13px; font-weight: 700; color: var(--danger); margin-right: 12px; }
.ayu-bhanga[b-2c3yxty4hc]      { color: var(--success); }
.ayu-clear[b-2c3yxty4hc]       { color: var(--success); }
.ayu-b-note[b-2c3yxty4hc]      { font-size: 14px; color: var(--text); line-height: 1.6; margin: 8px 0 0; }

.ayu-list[b-2c3yxty4hc]        { margin: 0 0 8px; padding-left: 20px; }
.ayu-list li[b-2c3yxty4hc]     { font-size: 13px; color: var(--text); line-height: 1.6; padding: 3px 0; }
.ayu-support li[b-2c3yxty4hc]  { color: var(--success); }
.ayu-support li[b-2c3yxty4hc]::marker { color: var(--success); }
/* /Components/CareerRankingPanel.razor.rz.scp.css */
.cr-overview[b-io4dn8siu7] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 20px;
}

.cr-badge[b-io4dn8siu7] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    background: var(--surface, #f9fafb);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 8px;
    padding: 10px 14px;
    min-width: 140px;
}

.cr-badge-label[b-io4dn8siu7] {
    font-size: 0.7rem;
    color: var(--muted, #6b7280);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.cr-badge-value[b-io4dn8siu7] {
    font-size: 0.95rem;
    font-weight: 600;
}

.cr-planet[b-io4dn8siu7] {
    color: var(--accent, #0f766e);
}

.cr-list[b-io4dn8siu7] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.cr-career-card[b-io4dn8siu7] {
    background: var(--surface, #f9fafb);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 10px;
    padding: 14px 16px;
}

.cr-top[b-io4dn8siu7] {
    border-color: var(--accent, #0f766e);
}

.cr-career-header[b-io4dn8siu7] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.cr-rank[b-io4dn8siu7] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--accent, #0f766e);
    color: #fff;
    font-size: 0.85rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.cr-career-card:not(.cr-top) .cr-rank[b-io4dn8siu7] {
    background: var(--muted, #9ca3af);
}

.cr-profession[b-io4dn8siu7] {
    font-weight: 600;
    font-size: 0.95rem;
    flex: 1;
}

.cr-career-planet[b-io4dn8siu7] {
    font-size: 0.88rem;
    color: var(--accent, #0f766e);
    background: rgba(15,118,110,0.08);
    padding: 2px 8px;
    border-radius: 12px;
}

.cr-bar-track[b-io4dn8siu7] {
    height: 4px;
    background: var(--border, #e5e7eb);
    border-radius: 2px;
    margin-bottom: 8px;
    overflow: hidden;
}

.cr-bar-fill[b-io4dn8siu7] {
    height: 100%;
    background: var(--accent, #0f766e);
    border-radius: 2px;
    transition: width 0.4s ease;
}

.cr-reasoning[b-io4dn8siu7] {
    font-size: 0.92rem;
    color: var(--muted, #6b7280);
    margin: 0;
    line-height: 1.5;
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    /* Overview badges — 2 per row */
    .cr-overview[b-io4dn8siu7] { gap: 8px; }
    .cr-badge[b-io4dn8siu7]    { min-width: calc(50% - 4px); padding: 9px 12px; }
    .cr-badge-label[b-io4dn8siu7] { font-size: .65rem; }
    .cr-badge-value[b-io4dn8siu7] { font-size: .88rem; }

    /* Career cards — full-width, easier scan */
    .cr-career-card[b-io4dn8siu7]   { padding: 12px 14px; }
    .cr-career-header[b-io4dn8siu7] { gap: 7px; margin-bottom: 6px; }
    .cr-rank[b-io4dn8siu7]          { width: 22px; height: 22px; font-size: .78rem; }
    .cr-profession[b-io4dn8siu7]    { font-size: .9rem; }
    .cr-career-planet[b-io4dn8siu7] { font-size: .82rem; padding: 2px 7px; }
    .cr-reasoning[b-io4dn8siu7]     { font-size: .85rem; }
}
/* /Components/CharaDashaPanel.razor.rz.scp.css */
/* ── Jaimini Chara Dasha Panel ────────────────────────────────────────────── */
.cd-current[b-1erv3f8f8g]      { background: color-mix(in srgb, var(--accent) 8%, var(--surface)); border: 1px solid var(--accent); border-radius: var(--radius); padding: 16px 20px; margin-bottom: 20px; }
.cd-cur-label[b-1erv3f8f8g]    { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); margin-bottom: 4px; }
.cd-cur-name[b-1erv3f8f8g]     { font-size: 24px; font-weight: 700; color: var(--text); }
.cd-cur-meta[b-1erv3f8f8g]     { font-size: 14px; color: var(--muted); margin: 3px 0; }
.cd-cur-dates[b-1erv3f8f8g]    { font-size: 14px; color: var(--muted); font-variant-numeric: tabular-nums; }

.cd-table-wrap[b-1erv3f8f8g]   { overflow-x: auto; margin-bottom: 16px; border: 1px solid var(--border); border-radius: var(--radius); }
.cd-table[b-1erv3f8f8g]        { width: 100%; border-collapse: collapse; font-size: 13px; background: var(--surface); }
.cd-table thead tr[b-1erv3f8f8g] { background: var(--surface2); }
.cd-table th[b-1erv3f8f8g]     { text-align: left; padding: 7px 10px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); border-bottom: 1px solid var(--border); }
.cd-table td[b-1erv3f8f8g]     { padding: 9px 10px; border-bottom: 1px solid var(--border); color: var(--text); }
.cd-table tbody tr:hover td[b-1erv3f8f8g] { background: rgba(229,163,45,.06); }
.cd-row-current td[b-1erv3f8f8g] { background: rgba(229,163,45,.11); color: var(--accent); font-weight: 600; }
.cd-row-current td:first-child[b-1erv3f8f8g] { border-left: 3px solid var(--accent); }
.cd-td-sign[b-1erv3f8f8g]      { font-weight: 600; }

.cd-note[b-1erv3f8f8g]         { font-size: 14px; color: var(--muted); line-height: 1.6; border-top: 1px solid var(--border); padding-top: 12px; margin-top: 8px; }

/* ── Mobile ── */
@media (max-width: 767px) {
    .cd-table th[b-1erv3f8f8g]  { font-size: .72rem; padding: 7px 8px; }
    .cd-cur-label[b-1erv3f8f8g] { font-size: .72rem; }
    .cd-tab[b-1erv3f8f8g]       { min-height: 44px; padding: 10px 14px; font-size: .88rem; }
    .cd-tab-bar[b-1erv3f8f8g]   { overflow-x: auto; flex-wrap: nowrap; }
    .cd-tab-bar[b-1erv3f8f8g]::-webkit-scrollbar { display: none; }
}
/* /Components/ConditionalDashaPanel.razor.rz.scp.css */
.cd-primary-card[b-2c8r17tsum] {
    background: color-mix(in srgb, var(--accent) 8%, var(--surface));
    border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border));
    border-radius: var(--radius);
    padding: 14px 16px;
    margin-bottom: 16px;
}

.cd-primary-label[b-2c8r17tsum]  { font-size: 13px; color: var(--muted); text-transform: uppercase; letter-spacing: 0.05em; }
.cd-primary-name[b-2c8r17tsum]   { font-size: 18px; font-weight: 700; color: var(--accent); margin: 6px 0 4px; }
.cd-primary-reason[b-2c8r17tsum] { font-size: 13px; color: var(--text); line-height: 1.55; margin: 0; }

.cd-section-title[b-2c8r17tsum] {
    font-size: 13px;
    font-weight: 600;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 16px 0 8px;
}

.cd-list[b-2c8r17tsum] { display: flex; flex-direction: column; gap: 8px; }

.cd-entry[b-2c8r17tsum] {
    border-radius: calc(var(--radius) - 2px);
    border: 1px solid var(--border);
    padding: 10px 14px;
    border-left: 3px solid transparent;
}

.cd-entry--active[b-2c8r17tsum]   { border-left-color: var(--accent); background: color-mix(in srgb, var(--accent) 5%, var(--surface)); }
.cd-entry--inactive[b-2c8r17tsum] { border-left-color: var(--border); background: var(--surface); opacity: 0.75; }

.cd-entry-header[b-2c8r17tsum] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

.cd-entry-icon[b-2c8r17tsum] { font-size: 14px; font-weight: 700; }
.cd-entry--active .cd-entry-icon[b-2c8r17tsum]   { color: var(--accent); }
.cd-entry--inactive .cd-entry-icon[b-2c8r17tsum] { color: var(--muted); }

.cd-entry-name[b-2c8r17tsum] { font-size: 14px; font-weight: 600; color: var(--text); flex: 1; }

.cd-entry-badge[b-2c8r17tsum] {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 7px;
    border-radius: 999px;
}

.cd-entry-badge--active[b-2c8r17tsum] {
    background: color-mix(in srgb, var(--accent) 15%, transparent);
    color: var(--accent);
}

.cd-entry-condition[b-2c8r17tsum] { font-size: 14px; color: var(--muted); margin-bottom: 4px; font-style: italic; }
.cd-entry-rationale[b-2c8r17tsum] { font-size: 13px; color: var(--text); line-height: 1.5; margin: 0 0 4px; }
.cd-entry-desc[b-2c8r17tsum]      { font-size: 14px; color: var(--muted); line-height: 1.5; margin: 0; }

.cd-notes[b-2c8r17tsum] { font-size: 14px; color: var(--muted); margin-top: 16px; line-height: 1.55; font-style: italic; }
/* /Components/D24EducationPanel.razor.rz.scp.css */
.d24-profile-card[b-s5fnw0t8um] {
    background: color-mix(in srgb, var(--accent) 6%, var(--surface));
    border: 1px solid color-mix(in srgb, var(--accent) 25%, var(--border));
    border-radius: var(--radius);
    padding: 14px 16px;
    margin-bottom: 16px;
}

.d24-profile-label[b-s5fnw0t8um] { font-size: 13px; color: var(--muted); text-transform: uppercase; letter-spacing: 0.05em; }
.d24-profile-text[b-s5fnw0t8um]  { font-size: 14px; color: var(--text); line-height: 1.6; margin: 6px 0 8px; }
.d24-highest[b-s5fnw0t8um]       { font-size: 13px; font-weight: 600; color: var(--accent); }

.d24-section-title[b-s5fnw0t8um] {
    font-size: 13px;
    font-weight: 600;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 16px 0 8px;
}

.d24-houses[b-s5fnw0t8um] { display: flex; flex-direction: column; gap: 8px; }

.d24-house-card[b-s5fnw0t8um] {
    border-radius: calc(var(--radius) - 2px);
    border: 1px solid var(--border);
    padding: 12px 14px;
    border-left: 3px solid var(--border);
}

.d24-house-card--strong[b-s5fnw0t8um]   { border-left-color: #22c55e; background: color-mix(in srgb, #22c55e 5%, var(--surface)); }
.d24-house-card--moderate[b-s5fnw0t8um] { border-left-color: #f59e0b; background: color-mix(in srgb, #f59e0b 5%, var(--surface)); }
.d24-house-card--weak[b-s5fnw0t8um]     { border-left-color: #ef4444; background: color-mix(in srgb, #ef4444 5%, var(--surface)); }

.d24-house-header[b-s5fnw0t8um] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.d24-house-level[b-s5fnw0t8um]  { font-size: 14px; font-weight: 600; color: var(--text); }

.d24-house-badge[b-s5fnw0t8um] {
    font-size: 13px;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 999px;
}

.d24-house-badge--strong[b-s5fnw0t8um]   { background: color-mix(in srgb, #22c55e 15%, transparent); color: #166534; }
.d24-house-badge--moderate[b-s5fnw0t8um] { background: color-mix(in srgb, #f59e0b 15%, transparent); color: #92400e; }
.d24-house-badge--weak[b-s5fnw0t8um]     { background: color-mix(in srgb, #ef4444 15%, transparent); color: #991b1b; }

.d24-house-meta[b-s5fnw0t8um] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 14px;
    color: var(--muted);
    margin-bottom: 6px;
}

.d24-house-reading[b-s5fnw0t8um] { font-size: 13px; color: var(--text); line-height: 1.55; margin: 0; }

.d24-indicators[b-s5fnw0t8um] {
    margin: 0;
    padding-left: 20px;
    font-size: 13px;
    color: var(--text);
    line-height: 1.7;
}

.d24-notes[b-s5fnw0t8um] { font-size: 14px; color: var(--muted); margin-top: 16px; line-height: 1.55; font-style: italic; }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .d24-profile-card[b-s5fnw0t8um]  { padding: 12px 14px; }
    .d24-profile-text[b-s5fnw0t8um]  { font-size: 13px; }
    .d24-house-card[b-s5fnw0t8um]    { padding: 10px 12px; }
    .d24-house-level[b-s5fnw0t8um]   { font-size: 13px; }
    .d24-house-badge[b-s5fnw0t8um]   { font-size: 12px; padding: 2px 7px; }
    .d24-house-meta[b-s5fnw0t8um]    { font-size: 13px; gap: 7px; }
    .d24-house-reading[b-s5fnw0t8um] { font-size: 12.5px; }
    .d24-indicators[b-s5fnw0t8um]    { font-size: 12.5px; }
    .d24-notes[b-s5fnw0t8um]         { font-size: 13px; }
}
/* /Components/D30MindPanel.razor.rz.scp.css */
.d30-moon-card[b-erssm314bw] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 12px 16px;
    margin-bottom: 14px;
}

.d30-moon-row[b-erssm314bw] { display: flex; align-items: baseline; gap: 10px; }
.d30-moon-label[b-erssm314bw]  { font-size: 14px; color: var(--muted); }
.d30-moon-rasi[b-erssm314bw]   { font-size: 18px; font-weight: 700; color: var(--text); }
.d30-moon-dignity[b-erssm314bw] { font-size: 13px; color: var(--muted); }

.d30-deity-card[b-erssm314bw] {
    background: color-mix(in srgb, var(--accent) 8%, var(--surface));
    border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border));
    border-radius: var(--radius);
    padding: 14px 16px;
    margin-bottom: 14px;
}

.d30-deity-name[b-erssm314bw]    { font-size: 20px; font-weight: 700; color: var(--accent); margin-bottom: 6px; }
.d30-deity-rationale[b-erssm314bw] { font-size: 13px; color: var(--text); line-height: 1.55; margin: 0; }

.d30-section-title[b-erssm314bw] { font-size: 14px; font-weight: 600; color: var(--muted); text-transform: uppercase; letter-spacing: 0.05em; margin: 14px 0 6px; }

.d30-psych[b-erssm314bw] {
    font-size: 14px;
    color: var(--text);
    line-height: 1.6;
    margin: 0 0 14px;
}

.d30-indicators[b-erssm314bw] {
    margin: 0;
    padding-left: 20px;
    font-size: 13px;
    color: var(--text);
    line-height: 1.7;
}
/* /Components/D4PropertyPanel.razor.rz.scp.css */
.d4p-profile-card[b-qe9ocxhqz8] {
    background: color-mix(in srgb, var(--accent) 7%, var(--surface));
    border: 1px solid color-mix(in srgb, var(--accent) 25%, var(--border));
    border-radius: var(--radius);
    padding: 14px 16px;
    margin-bottom: 16px;
}

.d4p-profile-label[b-qe9ocxhqz8] { font-size: 13px; color: var(--muted); text-transform: uppercase; letter-spacing: 0.05em; }
.d4p-profile-text[b-qe9ocxhqz8]  { font-size: 14px; color: var(--text); line-height: 1.6; margin: 6px 0 0; }

.d4p-section-title[b-qe9ocxhqz8] {
    font-size: 13px;
    font-weight: 600;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 16px 0 8px;
}

.d4p-house-card[b-qe9ocxhqz8] {
    border-radius: calc(var(--radius) - 2px);
    border: 1px solid var(--border);
    padding: 11px 14px;
    margin-bottom: 8px;
    border-left: 3px solid var(--border);
}

.d4p-house-card--favourable[b-qe9ocxhqz8] { border-left-color: #22c55e; background: color-mix(in srgb, #22c55e 5%, var(--surface)); }
.d4p-house-card--challenging[b-qe9ocxhqz8] { border-left-color: #ef4444; background: color-mix(in srgb, #ef4444 5%, var(--surface)); }
.d4p-house-card--mixed[b-qe9ocxhqz8]       { border-left-color: #f59e0b; background: color-mix(in srgb, #f59e0b 5%, var(--surface)); }

.d4p-house-header[b-qe9ocxhqz8] { display: flex; align-items: center; justify-content: space-between; margin-bottom: 4px; }
.d4p-house-label[b-qe9ocxhqz8]  { font-size: 13px; font-weight: 600; color: var(--text); }

.d4p-strength-badge[b-qe9ocxhqz8] {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 7px;
    border-radius: 999px;
}

.d4p-strength-badge--favourable[b-qe9ocxhqz8] { background: color-mix(in srgb, #22c55e 15%, transparent); color: #166534; }
.d4p-strength-badge--challenging[b-qe9ocxhqz8] { background: color-mix(in srgb, #ef4444 15%, transparent); color: #991b1b; }
.d4p-strength-badge--mixed[b-qe9ocxhqz8]       { background: color-mix(in srgb, #f59e0b 15%, transparent); color: #92400e; }

.d4p-house-meta[b-qe9ocxhqz8]    { font-size: 14px; color: var(--muted); margin-bottom: 6px; }
.d4p-house-reading[b-qe9ocxhqz8] { font-size: 13px; color: var(--text); line-height: 1.55; margin: 0; }

.d4p-arudha-card[b-qe9ocxhqz8] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: calc(var(--radius) - 2px);
    padding: 10px 14px;
    margin-bottom: 8px;
}

.d4p-arudha-header[b-qe9ocxhqz8] { display: flex; align-items: baseline; gap: 8px; margin-bottom: 4px; }
.d4p-arudha-code[b-qe9ocxhqz8]   { font-size: 13px; font-weight: 700; color: var(--accent); }
.d4p-arudha-rasi[b-qe9ocxhqz8]   { font-size: 14px; color: var(--muted); }
.d4p-arudha-text[b-qe9ocxhqz8]   { font-size: 13px; color: var(--text); line-height: 1.55; margin: 0; }

.d4p-indicators[b-qe9ocxhqz8] {
    margin: 0 0 14px;
    padding-left: 20px;
    font-size: 13px;
    color: var(--text);
    line-height: 1.7;
}

.d4p-timing-note[b-qe9ocxhqz8] {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: calc(var(--radius) - 2px);
    padding: 10px 14px;
    margin: 12px 0;
}

.d4p-timing-icon[b-qe9ocxhqz8] { font-size: 14px; flex-shrink: 0; margin-top: 1px; }
.d4p-timing-note p[b-qe9ocxhqz8] { font-size: 13px; color: var(--text); line-height: 1.55; margin: 0; }

.d4p-notes[b-qe9ocxhqz8] { font-size: 14px; color: var(--muted); line-height: 1.55; font-style: italic; }
/* /Components/DareCardsBlock.razor.rz.scp.css */
/* Pillar palette (mirrors ask.html tokens; falls back gracefully when app.css lacks them) */
.dare-block[b-899l41lzgd] {
    --dare-dharma: #F5C478;
    --dare-artha:  #78B8F5;
    --dare-kama:   #F578B8;
    --dare-moksha: #78F5C4;
    margin-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
    max-width: 560px;
}

.dare-toggle[b-899l41lzgd] {
    background: none;
    border: 1px solid var(--muted);
    border-radius: 8px;
    padding: 5px 14px;
    cursor: pointer;
    font-family: inherit;
    color: var(--muted);
    display: flex;
    align-items: center;
    gap: 6px;
    align-self: flex-start;
}
.dare-toggle-label[b-899l41lzgd] {
    font-size: 0.65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.dare-toggle-arrow[b-899l41lzgd] { font-size: 0.65rem; }

.dare-toggle.pillar-dharma[b-899l41lzgd],   .dare-tag-title.pillar-dharma[b-899l41lzgd]   { color: var(--dare-dharma); border-color: var(--dare-dharma); }
.dare-toggle.pillar-artha[b-899l41lzgd],    .dare-tag-title.pillar-artha[b-899l41lzgd]    { color: var(--dare-artha);  border-color: var(--dare-artha);  }
.dare-toggle.pillar-kama[b-899l41lzgd],     .dare-tag-title.pillar-kama[b-899l41lzgd]     { color: var(--dare-kama);   border-color: var(--dare-kama);   }
.dare-toggle.pillar-moksha[b-899l41lzgd],   .dare-tag-title.pillar-moksha[b-899l41lzgd]   { color: var(--dare-moksha); border-color: var(--dare-moksha); }
.dare-toggle.pillar-boundary[b-899l41lzgd], .dare-tag-title.pillar-boundary[b-899l41lzgd] { color: var(--danger);      border-color: var(--danger);      }

.dare-cards[b-899l41lzgd] { display: flex; flex-direction: column; gap: 8px; }

.dare-card[b-899l41lzgd] {
    border-radius: 10px;
    border: 1px solid var(--border);
    padding: 12px 14px;
    font-size: 0.82rem;
    background: var(--surface2, var(--surface));
}

.dare-card-header[b-899l41lzgd] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 6px;
    gap: 8px;
}
.pillar-badge[b-899l41lzgd] {
    font-size: 0.65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 2px 8px;
    border-radius: 999px;
}
.pillar-badge.pillar-dharma[b-899l41lzgd] { background: rgba(245,196,120,0.18); color: var(--dare-dharma); }
.pillar-badge.pillar-artha[b-899l41lzgd]  { background: rgba(120,184,245,0.18); color: var(--dare-artha);  }
.pillar-badge.pillar-kama[b-899l41lzgd]   { background: rgba(245,120,184,0.18); color: var(--dare-kama);   }
.pillar-badge.pillar-moksha[b-899l41lzgd] { background: rgba(120,245,196,0.18); color: var(--dare-moksha); }
.dare-tone[b-899l41lzgd] { font-size: 0.7rem; color: var(--muted); }

.dare-headline[b-899l41lzgd] { font-weight: 600; color: var(--text); font-size: 0.84rem; }
.dare-focus[b-899l41lzgd]    { margin-top: 5px; color: var(--text); line-height: 1.5; }
.dare-caution[b-899l41lzgd] {
    margin-top: 6px;
    padding: 5px 9px;
    border-radius: 6px;
    background: rgba(245,196,120,0.1);
    border-left: 3px solid var(--dare-dharma);
    color: var(--dare-dharma);
    font-size: 0.78rem;
}
.dare-window[b-899l41lzgd] { margin-top: 6px; font-size: 0.74rem; color: var(--muted); }

.dare-tag-title[b-899l41lzgd]     { font-size: 0.82rem; font-weight: 600; margin-bottom: 4px; border: none; }
.dare-tag-placement[b-899l41lzgd] { font-size: 0.72rem; color: var(--muted); margin-bottom: 6px; font-style: italic; }
.dare-tag-principle[b-899l41lzgd] { font-size: 0.8rem; color: var(--text); line-height: 1.55; margin-bottom: 4px; }
.dare-tag-source[b-899l41lzgd]    { font-size: 0.68rem; color: var(--muted); border-top: 1px solid var(--border); padding-top: 6px; margin-top: 6px; }
.dare-tag-raw[b-899l41lzgd]       { white-space: pre-line; line-height: 1.65; color: var(--text); font-size: 0.8rem; }
/* /Components/DareCardWidget.razor.rz.scp.css */
/* ── DareCardWidget — shared DARE card renderer ─────────────────────────── */

.dw-wrap[b-6le11j226g] {
    margin: 1rem 0 1.25rem;
    padding: .85rem 1.1rem .85rem 1.25rem;
    border-radius: 10px;
    border-left: 4px solid var(--dw-accent, #2980b9);
    background: color-mix(in srgb, var(--dw-accent, #2980b9) 6%, var(--surface));
}

.dw-supportive[b-6le11j226g] { --dw-accent: #27ae60; }
.dw-cautionary[b-6le11j226g] { --dw-accent: #e74c3c; }
.dw-neutral[b-6le11j226g]    { --dw-accent: #2980b9; }

.dw-top[b-6le11j226g] {
    display: flex;
    align-items: center;
    gap: .45rem;
    flex-wrap: wrap;
    margin-bottom: .35rem;
}

.dw-eyebrow[b-6le11j226g] {
    font-size: .62rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--dw-accent);
}

.dw-pillar[b-6le11j226g] {
    font-size: .64rem;
    font-weight: 600;
    padding: .1rem .42rem;
    border-radius: 7px;
    background: color-mix(in srgb, var(--dw-accent) 14%, transparent);
    color: var(--dw-accent);
}

.dw-tone[b-6le11j226g] {
    font-size: .62rem;
    color: var(--muted);
    margin-left: auto;
}

.dw-framing[b-6le11j226g] {
    font-size: .8rem;
    color: var(--muted);
    font-style: italic;
    margin: 0 0 .4rem;
    line-height: 1.55;
}

.dw-headline[b-6le11j226g] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text);
    line-height: 1.35;
    margin-bottom: .35rem;
}

.dw-body[b-6le11j226g] {
    font-size: .86rem;
    color: var(--text);
    line-height: 1.6;
    margin: 0 0 .5rem;
}

.dw-row[b-6le11j226g] {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    margin-bottom: .4rem;
}

.dw-block[b-6le11j226g] {
    display: flex;
    flex-direction: column;
    gap: .08rem;
    flex: 1;
    min-width: 130px;
}

.dw-label[b-6le11j226g] {
    font-size: .61rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--dw-accent);
}

.dw-val[b-6le11j226g] {
    font-size: .83rem;
    color: var(--text);
    line-height: 1.5;
}

.dw-classical[b-6le11j226g] {
    font-size: .76rem;
    color: var(--muted);
    font-style: italic;
    border-top: 1px dashed var(--border);
    padding-top: .4rem;
    margin-top: .3rem;
    line-height: 1.6;
}

/* Qwen-synthesised narration — Sarathi tier; replaces .dw-body when present */
.dw-narration[b-6le11j226g] {
    font-size: .86rem;
    color: var(--text);
    line-height: 1.65;
    margin: 0 0 .5rem;
    border-left: 2px solid color-mix(in srgb, var(--dw-accent) 40%, transparent);
    padding-left: .55rem;
}
/* /Components/DashaPanel.razor.rz.scp.css */
/* Current-period intro banner */
.dp-intro[b-nfz56bzdvo] {
    background: var(--surface2); border: 1px solid var(--border);
    border-left: 4px solid var(--accent); border-radius: var(--radius);
    padding: 12px 16px; margin-bottom: 18px;
    font-size: 14px; color: var(--muted); line-height: 1.6;
}
.dp-intro strong[b-nfz56bzdvo] { color: var(--text); }

/* Upcoming dasha section */
.dp-upcoming-header[b-nfz56bzdvo] {
    display: flex; align-items: center; gap: 10px;
    margin-top: 28px; margin-bottom: 12px;
}
.dp-upcoming-title[b-nfz56bzdvo] {
    font-size: 10px; font-weight: 700; letter-spacing: .1em;
    text-transform: uppercase; color: var(--muted);
    padding-bottom: 5px; border-bottom: 1px solid var(--border);
    flex: 1;
}

/* Upcoming card — improved */
.dp-upcoming-card[b-nfz56bzdvo] {
    display: flex; align-items: flex-start; gap: 12px;
    background: var(--surface); border: 1px solid var(--border);
    border-radius: var(--radius); padding: 12px 14px; margin-bottom: 8px;
}
.dp-upcoming-lord-badge[b-nfz56bzdvo] {
    font-family: Palatino Linotype, Palatino, Georgia, serif;
    font-size: 20px; font-weight: 700; color: var(--accent2);
    background: rgba(124,106,247,0.08); border-radius: 6px;
    width: 40px; height: 40px; display: flex; align-items: center;
    justify-content: center; flex-shrink: 0; letter-spacing: -.02em;
}
.dp-upcoming-body[b-nfz56bzdvo] { flex: 1; min-width: 0; }
.dp-upcoming-row[b-nfz56bzdvo]  { display: flex; align-items: baseline; gap: 8px; }
.dp-upcoming-name[b-nfz56bzdvo] { font-weight: 700; font-size: 13px; }
.dp-upcoming-dates[b-nfz56bzdvo] { font-size: 13px; color: var(--muted); }
.dp-upcoming-preview[b-nfz56bzdvo] { font-size: 14px; color: var(--muted); margin-top: 4px; line-height: 1.55; }

/* ── Mobile: Dasha Horizontal Strip (Innovation #2) ─────────────────────── */
@media (max-width: 767px) {
    .dp-intro[b-nfz56bzdvo] { font-size: 13px; padding: 10px 12px; }

    /* Upcoming period cards — horizontal scroll card reel */
    .dp-upcoming-card[b-nfz56bzdvo] {
        padding: 10px 12px;
        gap: 10px;
        flex: 0 0 260px;
        scroll-snap-align: start;
        min-height: 100px;
    }
    .dp-upcoming-lord-badge[b-nfz56bzdvo] { width: 36px; height: 36px; font-size: 17px; }
    .dp-upcoming-name[b-nfz56bzdvo]   { font-size: 12.5px; }
    .dp-upcoming-dates[b-nfz56bzdvo]  { font-size: 12px; }
    .dp-upcoming-preview[b-nfz56bzdvo] { font-size: 13px; }

    .dp-upcoming-header[b-nfz56bzdvo] { margin-top: 20px; margin-bottom: 10px; }
    .dp-upcoming-title[b-nfz56bzdvo]  { font-size: 9px; }

    /* Dasha list container — horizontal scrolling card reel */
    .dasha-list[b-nfz56bzdvo], .dp-list[b-nfz56bzdvo] {
        display: flex;
        flex-direction: row;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        gap: 10px;
        padding: 0 16px 12px;
    }
    .dasha-list[b-nfz56bzdvo]::-webkit-scrollbar,
    .dp-list[b-nfz56bzdvo]::-webkit-scrollbar { display: none; }
    /* Dasha period entry cards */
    .dasha-item[b-nfz56bzdvo], .dp-item[b-nfz56bzdvo], .dp-entry[b-nfz56bzdvo] {
        flex: 0 0 260px;
        scroll-snap-align: start;
        border-radius: var(--radius);
        padding: 14px 16px;
        background: var(--surface);
        border: 1px solid var(--border);
        min-height: 100px;
    }
    .dasha-item.active[b-nfz56bzdvo], .dp-item.active[b-nfz56bzdvo], .dp-entry.active[b-nfz56bzdvo] {
        border-left: 3px solid var(--accent);
        background: color-mix(in srgb, var(--accent) 6%, var(--surface));
    }
    /* Antardasha nested cards — stack vertically inside card */
    .antardasha-list[b-nfz56bzdvo], .dp-sub-list[b-nfz56bzdvo] {
        display: flex;
        flex-direction: column;
        gap: 6px;
        margin-top: 10px;
        max-height: 180px;
        overflow-y: auto;
    }
    /* Fade cue on the right (Innovation #7) */
    .dasha-strip-wrap[b-nfz56bzdvo], .dp-strip-wrap[b-nfz56bzdvo] { position: relative; }
    .dasha-strip-wrap[b-nfz56bzdvo]::after, .dp-strip-wrap[b-nfz56bzdvo]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 36px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
    /* Collapse panel header on mobile */
    .dp-section-hd[b-nfz56bzdvo] { font-size: .76rem; }
    .dp-planet-chip[b-nfz56bzdvo] { font-size: .76rem; }
    .dp-date-range[b-nfz56bzdvo]  { font-size: .78rem; }
    .dp-tab[b-nfz56bzdvo]         { min-height: 44px; padding: 10px 14px; font-size: .88rem; }
    .dp-tab-bar[b-nfz56bzdvo]     { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 2px; }
    .dp-tab-bar[b-nfz56bzdvo]::-webkit-scrollbar { display: none; }
}
/* /Components/DirectiveCardsPanel.razor.rz.scp.css */
.dc-subtitle[b-1kxu6gknyi] {
    font-size: 13px;
    color: var(--muted);
}

.dc-grid[b-1kxu6gknyi] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 16px;
    margin-top: 12px;
}

.dc-card[b-1kxu6gknyi] {
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface);
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    border-top: 3px solid var(--muted);
}

.dc-tone-supportive[b-1kxu6gknyi] { border-top-color: var(--success, #2e7d52); }
.dc-tone-cautionary[b-1kxu6gknyi] { border-top-color: var(--danger, #b3452f); }
.dc-tone-neutral[b-1kxu6gknyi]    { border-top-color: var(--accent, #6b6fae); }

.dc-card-top[b-1kxu6gknyi] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

.dc-pillar[b-1kxu6gknyi] {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--accent);
}

.dc-tone-chip[b-1kxu6gknyi] {
    font-size: 11px;
    font-weight: 600;
    padding: 2px 10px;
    border-radius: 20px;
    background: var(--bg);
    color: var(--muted);
    border: 1px solid var(--border);
}

.dc-tone-supportive .dc-tone-chip[b-1kxu6gknyi] { color: var(--success, #2e7d52); }
.dc-tone-cautionary .dc-tone-chip[b-1kxu6gknyi] { color: var(--danger, #b3452f); }

.dc-headline[b-1kxu6gknyi] {
    margin: 0;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.3;
}

.dc-row[b-1kxu6gknyi] {
    display: flex;
    gap: 10px;
    font-size: 13.5px;
    line-height: 1.5;
}

.dc-label[b-1kxu6gknyi] {
    flex: 0 0 104px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--muted);
    padding-top: 2px;
}

.dc-text[b-1kxu6gknyi] { flex: 1; }

.dc-row-caution .dc-text[b-1kxu6gknyi] { color: var(--danger, #b3452f); }

.dc-mechanics[b-1kxu6gknyi] {
    margin-top: 4px;
    border-top: 1px dashed var(--border);
    padding-top: 8px;
    font-size: 12.5px;
}

.dc-mechanics summary[b-1kxu6gknyi] {
    cursor: pointer;
    color: var(--muted);
    font-weight: 600;
}

.dc-notes[b-1kxu6gknyi] { margin: 8px 0 4px; color: var(--muted); }

.dc-facts[b-1kxu6gknyi] {
    margin: 4px 0 0;
    padding-left: 18px;
    color: var(--muted);
}

.dc-upsell[b-1kxu6gknyi] {
    margin-top: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    border: 1px solid var(--accent);
    border-radius: 10px;
    padding: 12px 16px;
    background: var(--surface);
    font-size: 13.5px;
}

.dc-upsell-btn[b-1kxu6gknyi] {
    padding: 6px 18px;
    border-radius: 8px;
    background: var(--accent);
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}

.dc-actions[b-1kxu6gknyi] {
    display: flex;
    justify-content: flex-end;
}

.dc-share[b-1kxu6gknyi] {
    font-size: 12px;
    font-weight: 600;
    color: var(--accent, #7c3aed);
    text-decoration: none;
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 4px 12px;
}

.dc-share:hover[b-1kxu6gknyi] { border-color: var(--accent, #7c3aed); }

.dc-actions[b-1kxu6gknyi] { align-items: center; gap: 8px; }

.dc-vote-ask[b-1kxu6gknyi] {
    font-size: 12px;
    color: var(--muted);
    margin-right: 2px;
}

.dc-vote-btn[b-1kxu6gknyi] {
    font-size: 12px;
    font-weight: 600;
    padding: 3px 12px;
    border-radius: 20px;
    border: 1px solid var(--border);
    background: var(--bg);
    color: var(--text, inherit);
    cursor: pointer;
}

.dc-vote-btn:hover[b-1kxu6gknyi] { border-color: var(--accent, #7c3aed); color: var(--accent, #7c3aed); }

.dc-vote-thanks[b-1kxu6gknyi] {
    font-size: 12px;
    color: var(--success, #2e7d52);
    margin-right: auto;
}

.dc-micro[b-1kxu6gknyi] {
    display: block;
    margin-top: 2px;
    font-size: 12px;
    font-weight: 600;
    color: var(--accent, #7c3aed);
}
/* /Components/DivisionalChartsPanel.razor.rz.scp.css */
/* ── Divisional Charts Panel ─────────────────────────────────────────────── */

.dc-root[b-t6qdniyry5] { padding: 0 0 32px; }

/* ── Varga DARE card ────────────────────────────────────────────────────── */
.vdc-wrap[b-t6qdniyry5] {
    margin: 1.25rem 0;
    padding: .9rem 1.1rem .9rem 1.3rem;
    border-radius: 12px;
    border-left: 4px solid var(--vdc-accent, #2980b9);
    background: color-mix(in srgb, var(--vdc-accent, #2980b9) 6%, var(--surface));
}
.vdc-supportive[b-t6qdniyry5] { --vdc-accent: #27ae60; }
.vdc-cautionary[b-t6qdniyry5] { --vdc-accent: #e74c3c; }
.vdc-neutral[b-t6qdniyry5]    { --vdc-accent: #2980b9; }

.vdc-top-row[b-t6qdniyry5] {
    display: flex; align-items: center; gap: .45rem;
    flex-wrap: wrap; margin-bottom: .5rem;
}
.vdc-eyebrow[b-t6qdniyry5] {
    font-size: .63rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: .08em; color: var(--vdc-accent);
}
.vdc-domain-pill[b-t6qdniyry5] {
    font-size: .67rem; font-weight: 600; padding: .1rem .45rem;
    border-radius: 8px;
    background: color-mix(in srgb, var(--vdc-accent) 14%, transparent);
    color: var(--vdc-accent);
}
.vdc-tone-label[b-t6qdniyry5] { font-size: .65rem; color: var(--muted); margin-left: auto; }

.vdc-headline[b-t6qdniyry5] {
    font-size: 1.05rem; font-weight: 700; color: var(--text);
    line-height: 1.35; margin-bottom: .4rem;
}
.vdc-framing[b-t6qdniyry5] {
    font-size: .82rem; color: var(--vdc-accent); font-weight: 600;
    margin: 0 0 .45rem; line-height: 1.5;
}
.vdc-body[b-t6qdniyry5] {
    font-size: .88rem; color: var(--text); line-height: 1.6;
    margin: 0 0 .55rem;
}
.vdc-detail-row[b-t6qdniyry5] {
    display: flex; flex-wrap: wrap; gap: .75rem; margin-bottom: .5rem;
}
.vdc-detail-block[b-t6qdniyry5] {
    display: flex; flex-direction: column; gap: .1rem;
    flex: 1; min-width: 140px;
}
.vdc-detail-label[b-t6qdniyry5] {
    font-size: .64rem; font-weight: 700; text-transform: uppercase;
    letter-spacing: .06em; color: var(--vdc-accent);
}
.vdc-detail-val[b-t6qdniyry5]  { font-size: .84rem; color: var(--text); line-height: 1.5; }
.vdc-caution-block .vdc-detail-label[b-t6qdniyry5] { color: var(--danger, #e74c3c); }
.vdc-caution-block .vdc-detail-val[b-t6qdniyry5]   { color: var(--muted); }

.vdc-window[b-t6qdniyry5] {
    font-size: .72rem; color: var(--muted); font-style: italic;
    margin-bottom: .3rem;
}
.vdc-classical[b-t6qdniyry5] {
    font-size: .78rem; color: var(--muted); border-top: 1px dashed var(--border);
    padding-top: .45rem; margin-top: .35rem; line-height: 1.6;
    font-style: italic;
}

.dc-loading[b-t6qdniyry5] { display:flex; flex-direction:column; align-items:center; gap:12px; padding:48px; color:var(--muted); }
.dc-error[b-t6qdniyry5]   { background:var(--danger-bg,#fef2f2); color:var(--danger,#b91c1c); padding:16px; border-radius:8px; margin:16px 0; }

/* ── Division selector buttons ──────────────────────────────────────────── */
.dc-div-selector[b-t6qdniyry5] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 12px 0 18px;
}

.dc-div-btn[b-t6qdniyry5], .dc-div-active[b-t6qdniyry5] {
    padding: 5px 10px;
    border-radius: 6px;
    border: 1px solid var(--border);
    background: var(--surface);
    cursor: pointer;
    font-size: 12.5px;
    color: var(--muted);
    font-weight: 500;
    transition: all .15s;
}
.dc-div-btn:hover[b-t6qdniyry5] { color: var(--text); border-color: #6366f1; }
.dc-div-active[b-t6qdniyry5] { background: #6366f1; color: #fff; border-color: #6366f1; font-weight: 600; }

/* ── Chart header ────────────────────────────────────────────────────────── */
.dc-chart-header[b-t6qdniyry5] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}
.dc-chart-name[b-t6qdniyry5] { font-size: 18px; font-weight: 700; color: var(--text); margin-bottom: 4px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.dc-div-badge[b-t6qdniyry5]  { font-size: 11px; font-weight: 700; padding: 2px 8px; border-radius: 10px; background: color-mix(in srgb, var(--accent) 15%, var(--surface2)); color: var(--accent); letter-spacing: .04em; }
.dc-chart-desc[b-t6qdniyry5] { font-size: 13px; color: var(--muted); }
.dc-key-planets[b-t6qdniyry5] { font-size: 12px; color: var(--text); margin-top: 5px; padding: 3px 8px; border-radius: 6px; background: color-mix(in srgb, var(--accent) 7%, var(--surface2)); font-variant-numeric: tabular-nums; }
.dc-lagna-chip[b-t6qdniyry5] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 8px 14px;
    font-size: 13px;
    color: var(--muted);
    white-space: nowrap;
}
.dc-lagna-chip strong[b-t6qdniyry5] { color: var(--text); }

/* ── Chart row: fixed-width South Indian grid + "How to read" explanation filling the
   leftover space beside it (the grid is a fixed 354px block per SouthIndianChart.razor.css,
   so anything wider than that was previously just blank). Wraps to a stacked layout once the
   viewport can no longer fit both side by side. ─────────────────────────────────────────── */
.dc-chart-row[b-t6qdniyry5] {
    display: flex;
    align-items: stretch;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.dc-chart-row .dc-interp[b-t6qdniyry5] {
    flex: 1 1 260px;
    min-width: 220px;
}

/* ── Planet table ────────────────────────────────────────────────────────── */
.dc-table-wrap[b-t6qdniyry5] { overflow-x: auto; margin-bottom: 16px; border: 1px solid var(--border); border-radius: var(--radius); }
.dc-table[b-t6qdniyry5] {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px;
    background: var(--surface);
}
.dc-table thead tr[b-t6qdniyry5] { background: var(--surface2); }
.dc-table th[b-t6qdniyry5] {
    text-align: left;
    padding: 8px 12px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--muted);
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
}
.dc-table td[b-t6qdniyry5] {
    padding: 9px 12px;
    border-bottom: 1px solid var(--border);
}
.dc-table tbody tr:hover td[b-t6qdniyry5] { background: rgba(229,163,45,.06); }
.dc-graha[b-t6qdniyry5] { font-weight: 600; }
.dc-deg[b-t6qdniyry5]   { font-variant-numeric: tabular-nums; }
.dc-retro[b-t6qdniyry5] { color: #dc2626; }

/* ── Interpretation ──────────────────────────────────────────────────────── */
.dc-interp[b-t6qdniyry5] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-left: 3px solid #6366f1;
    border-radius: 0 8px 8px 0;
    padding: 14px 16px;
    font-size: 13.5px;
    line-height: 1.6;
}
.dc-interp-label[b-t6qdniyry5] { font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); margin-bottom: 8px; }
.dc-interp p[b-t6qdniyry5] { margin: 0; color: var(--text); }

/* ── Planet Readings ─────────────────────────────────────────────────────── */
.dc-readings-section[b-t6qdniyry5] { margin-top: 24px; }
.dc-readings-label[b-t6qdniyry5]   { font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); margin-bottom: 12px; }
.dc-readings-grid[b-t6qdniyry5]    { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 10px; }

.dc-reading-card[b-t6qdniyry5]     { background: var(--surface-2, var(--surface)); border: 1px solid var(--border); border-radius: 8px; padding: 12px 14px; }
.dc-reading-header[b-t6qdniyry5]   { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin-bottom: 6px; }
.dc-reading-graha[b-t6qdniyry5]    { font-weight: 700; font-size: 14px; color: var(--text); }
.dc-reading-sign[b-t6qdniyry5]     { font-size: 14px; color: var(--muted); }
.dc-reading-dignity[b-t6qdniyry5]  { font-size: 13px; font-weight: 600; padding: 2px 7px; border-radius: 10px; }
.dc-dignity-exalted[b-t6qdniyry5]  { background: color-mix(in srgb, var(--success) 15%, transparent); color: var(--success); }
.dc-dignity-own-sign[b-t6qdniyry5] { background: color-mix(in srgb, var(--accent) 12%, transparent); color: var(--accent); }
.dc-dignity-debilitated[b-t6qdniyry5] { background: color-mix(in srgb, var(--danger) 15%, transparent); color: var(--danger); }
.dc-dignity-moderate[b-t6qdniyry5],
.dc-dignity-neutral[b-t6qdniyry5]  { background: var(--surface); color: var(--muted); }
.dc-vargottama[b-t6qdniyry5]       { font-size: 10px; font-weight: 700; background: color-mix(in srgb, var(--accent2, var(--accent)) 12%, transparent); color: var(--accent2, var(--accent)); padding: 2px 6px; border-radius: 10px; }
.dc-shash[b-t6qdniyry5]            { font-size: 10px; color: var(--muted); font-style: italic; }
.dc-reading-text[b-t6qdniyry5]     { font-size: 12.5px; color: var(--muted); line-height: 1.6; margin: 0; }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    /* Division selector — horizontal scroll, no wrapping */
    .dc-div-selector[b-t6qdniyry5] {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        gap: 4px;
        padding-bottom: 4px;
    }
    .dc-div-btn[b-t6qdniyry5],
    .dc-div-active[b-t6qdniyry5] {
        white-space: nowrap;
        flex-shrink: 0;
        font-size: 11.5px;
        padding: 5px 8px;
        min-height: 32px;
    }

    /* Chart header — stack lagna chip below name */
    .dc-chart-header[b-t6qdniyry5] { flex-direction: column; gap: 6px; margin-bottom: 12px; }
    .dc-chart-name[b-t6qdniyry5]   { font-size: 16px; }
    .dc-chart-desc[b-t6qdniyry5]   { font-size: 12px; }
    .dc-lagna-chip[b-t6qdniyry5]   { align-self: flex-start; font-size: 12px; padding: 6px 10px; }

    /* Planet table — already scrolls; tighten padding */
    .dc-table th[b-t6qdniyry5] { padding: 6px 9px; }
    .dc-table td[b-t6qdniyry5] { padding: 7px 9px; font-size: 13px; }

    /* Planet readings — single column */
    .dc-readings-grid[b-t6qdniyry5] { grid-template-columns: 1fr; gap: 8px; }
    .dc-reading-card[b-t6qdniyry5]  { padding: 10px 12px; }

    .dc-interp[b-t6qdniyry5] { padding: 12px 14px; font-size: 13px; }
}
/* /Components/DoshasPanel.razor.rz.scp.css */
.shloka-block[b-ozdtr9v6r3] {
    margin-top: 12px;
    padding: 10px 14px;
    background: color-mix(in srgb, var(--danger) 7%, transparent);
    border-left: 3px solid var(--danger);
    border-radius: 0 6px 6px 0;
}

.shloka-deva[b-ozdtr9v6r3] {
    font-family: 'Noto Sans Devanagari', 'Mangal', 'Sanskrit Text',
                 'Noto Sans Telugu', 'Noto Sans Tamil',
                 'Noto Sans Kannada', 'Noto Sans Malayalam', serif;
    font-size: 15px;
    line-height: 2.0;
    color: var(--text);
    margin-bottom: 5px;
}

.shloka-iast[b-ozdtr9v6r3] {
    font-style: italic;
    color: var(--muted);
    font-size: 13px;
    margin-bottom: 4px;
    line-height: 1.5;
}

.shloka-source[b-ozdtr9v6r3] {
    color: var(--danger);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    margin-bottom: 5px;
}

.shloka-meaning[b-ozdtr9v6r3] {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.55;
    font-style: italic;
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .shloka-block[b-ozdtr9v6r3]   { padding: 8px 12px; margin-top: 10px; }
    .shloka-deva[b-ozdtr9v6r3]    { font-size: 14px; line-height: 1.9; margin-bottom: 4px; }
    .shloka-iast[b-ozdtr9v6r3]    { font-size: 12px; margin-bottom: 3px; }
    .shloka-source[b-ozdtr9v6r3]  { font-size: 9px; }
    .shloka-meaning[b-ozdtr9v6r3] { font-size: 12px; line-height: 1.5; }
}
/* /Components/ExamTimingPanel.razor.rz.scp.css */
.et-overview[b-1dlt19k7lm] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.et-domain-box[b-1dlt19k7lm] {
    flex: 1;
    min-width: 160px;
    background: var(--surface, #f9fafb);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 8px;
    padding: 10px 14px;
}

.et-domain-label[b-1dlt19k7lm] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--muted, #6b7280);
    margin-bottom: 3px;
}

.et-domain-value[b-1dlt19k7lm] {
    font-size: 0.95rem;
    font-weight: 600;
}

/* strength badge */
.et-strength-badge[b-1dlt19k7lm] {
    flex-shrink: 0;
    padding: 6px 16px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.et-s-strong[b-1dlt19k7lm],
.et-s-excellent[b-1dlt19k7lm],
.et-s-favorable[b-1dlt19k7lm] {
    background: #d1fae5;
    color: #065f46;
}

.et-s-moderate[b-1dlt19k7lm],
.et-s-mixed[b-1dlt19k7lm],
.et-s-average[b-1dlt19k7lm] {
    background: #fef3c7;
    color: #92400e;
}

.et-s-weak[b-1dlt19k7lm],
.et-s-challenged[b-1dlt19k7lm],
.et-s-difficult[b-1dlt19k7lm],
.et-s-unfavorable[b-1dlt19k7lm] {
    background: #fee2e2;
    color: #991b1b;
}

/* cards */
.et-card[b-1dlt19k7lm] {
    background: var(--surface, #f9fafb);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 12px;
}

.et-remedy-card[b-1dlt19k7lm] {
    border-color: var(--accent, #0f766e);
    background: rgba(15, 118, 110, 0.04);
}

.et-card-title[b-1dlt19k7lm] {
    font-size: 0.92rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--muted, #6b7280);
    margin-bottom: 8px;
}

.et-remedy-card .et-card-title[b-1dlt19k7lm] {
    color: var(--accent, #0f766e);
}

.et-body[b-1dlt19k7lm] {
    font-size: 1.0rem;
    line-height: 1.65;
    color: var(--text, #111827);
    margin: 0;
}
/* /Components/HoroscopePanel.razor.rz.scp.css */
.horo-wrap[b-1py6muut0i] {
    display: flex;
    flex-wrap: wrap;
    gap: 28px;
    padding: 12px 4px 24px;
    justify-content: flex-start;
}

.horo-chart-block[b-1py6muut0i] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.horo-chart-title[b-1py6muut0i] {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--accent);
}

.horo-note[b-1py6muut0i] {
    font-size: 10px;
    color: var(--muted);
    margin: 0;
    max-width: 354px;
}

.horo-detail[b-1py6muut0i] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    background: var(--surface2);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 8px 10px;
    max-width: 354px;
    font-size: 14px;
}

.horo-detail-label[b-1py6muut0i] {
    font-weight: 700;
    color: var(--accent);
}

.horo-detail-theme[b-1py6muut0i] {
    color: var(--text);
    line-height: 1.4;
}

.horo-detail-occ[b-1py6muut0i] {
    color: var(--muted);
    font-size: 13px;
}

.horo-bhava-badge[b-1py6muut0i] {
    font-size: 10px;
    color: #c67c00;
    background: color-mix(in srgb, #c67c00 12%, transparent);
    border: 1px solid color-mix(in srgb, #c67c00 30%, transparent);
    border-radius: 4px;
    padding: 3px 8px;
    max-width: 354px;
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    /* Center charts on small screens, remove excessive gap */
    .horo-wrap[b-1py6muut0i]  { gap: 16px; justify-content: center; padding: 8px 0 16px; }

    /* Allow detail blocks to fill width */
    .horo-note[b-1py6muut0i],
    .horo-detail[b-1py6muut0i],
    .horo-bhava-badge[b-1py6muut0i] { max-width: 100%; }

    .horo-chart-title[b-1py6muut0i] { font-size: 13px; letter-spacing: .06em; }
    .horo-detail[b-1py6muut0i]      { font-size: 13px; padding: 7px 9px; }
    .horo-detail-occ[b-1py6muut0i]  { font-size: 12px; }
}
/* /Components/HousesPanel.razor.rz.scp.css */
/* ── Houses Panel ──────────────────────────────────────────────────────────── */

.hp-wrap[b-hevq3as9n9] {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
    margin-bottom: 1.25rem;
}

.hp-chart-side[b-hevq3as9n9] { flex: 0 0 auto; }
.hp-hint[b-hevq3as9n9]       { font-size: .7rem; color: var(--muted); margin-top: .45rem; text-align: center; }

/* ── Right: house detail ───────────────────────────────────────────────────── */
.hp-detail[b-hevq3as9n9] {
    flex: 1;
    min-width: 200px;
}

.hp-detail-header[b-hevq3as9n9] {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: .7rem .9rem;
    background: var(--surface);
    border: 1px solid var(--border);
    border-top: 3px solid var(--accent);
    border-radius: 10px 10px 0 0;
}

.hp-house-num[b-hevq3as9n9] {
    flex-shrink: 0;
    width: 42px; height: 42px;
    background: color-mix(in srgb, var(--accent) 12%, transparent);
    border: 1.5px solid color-mix(in srgb, var(--accent) 30%, transparent);
    border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    font-family: "Palatino Linotype", Palatino, Georgia, serif;
    font-size: 1.45rem; font-weight: 700;
    color: var(--accent); line-height: 1;
}

.hp-house-rasi[b-hevq3as9n9] {
    font-family: "Palatino Linotype", Palatino, Georgia, serif;
    font-size: 1rem; font-weight: 700; color: var(--text); line-height: 1.2;
}
.hp-house-theme[b-hevq3as9n9] {
    font-size: .73rem; color: var(--muted); font-style: italic; margin-top: .1rem;
}

.hp-pillar[b-hevq3as9n9] {
    flex-shrink: 0; margin-left: auto;
    font-size: .58rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: .08em;
    padding: .18rem .42rem; border-radius: 5px; align-self: flex-start;
}
.hp-pillar--dharma[b-hevq3as9n9] { background: color-mix(in srgb, #27ae60 14%, transparent); color: #27ae60; }
.hp-pillar--artha[b-hevq3as9n9]  { background: color-mix(in srgb, var(--accent) 14%, transparent); color: var(--accent); }
.hp-pillar--kama[b-hevq3as9n9]   { background: color-mix(in srgb, #8e44ad 14%, transparent); color: #8e44ad; }
.hp-pillar--moksha[b-hevq3as9n9] { background: color-mix(in srgb, #2980b9 14%, transparent); color: #2980b9; }

/* ── House data table ──────────────────────────────────────────────────────── */
.hp-table[b-hevq3as9n9] {
    width: 100%;
    border-collapse: collapse;
    background: var(--surface);
    border: 1px solid var(--border);
    border-top: none;
    border-radius: 0 0 10px 10px;
    overflow: hidden;
}
.hp-td-label[b-hevq3as9n9] {
    width: 90px;
    font-size: .62rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: .07em;
    color: var(--muted);
    padding: .55rem .7rem .55rem .9rem;
    border-bottom: 1px solid var(--border);
    vertical-align: middle; white-space: nowrap;
    background: color-mix(in srgb, var(--surface2) 60%, transparent);
}
.hp-td-val[b-hevq3as9n9] {
    padding: .55rem .8rem;
    border-bottom: 1px solid var(--border);
    font-size: .88rem; color: var(--text);
    vertical-align: middle;
}
.hp-table tr:last-child .hp-td-label[b-hevq3as9n9],
.hp-table tr:last-child .hp-td-val[b-hevq3as9n9] { border-bottom: none; }

.hp-lord-name[b-hevq3as9n9] {
    font-weight: 700;
    font-family: "Palatino Linotype", Palatino, Georgia, serif;
    margin-right: .4rem;
}
.hp-house-loc[b-hevq3as9n9] {
    font-size: .76rem; color: var(--muted);
    background: var(--surface2); border: 1px solid var(--border);
    border-radius: 4px; padding: .1rem .35rem; margin-right: .4rem;
}

.hp-dignity[b-hevq3as9n9] {
    font-size: .66rem; font-weight: 700;
    text-transform: capitalize; letter-spacing: .04em;
    padding: .14rem .42rem; border-radius: 8px;
}
.hp-dignity--exalted[b-hevq3as9n9]      { background: color-mix(in srgb, #27ae60 15%, transparent); color: #1e8449; }
.hp-dignity--moolatrikona[b-hevq3as9n9] { background: color-mix(in srgb, #27ae60 10%, transparent); color: #239b56; }
.hp-dignity--own-sign[b-hevq3as9n9]     { background: color-mix(in srgb, #f39c12 12%, transparent); color: #d68910; }
.hp-dignity--friendly[b-hevq3as9n9]     { background: color-mix(in srgb, var(--accent) 10%, transparent); color: var(--accent); }
.hp-dignity--neutral[b-hevq3as9n9]      { background: var(--surface2); color: var(--muted); border: 1px solid var(--border); }
.hp-dignity--enemy[b-hevq3as9n9]        { background: color-mix(in srgb, #e74c3c 10%, transparent); color: #c0392b; }
.hp-dignity--debilitated[b-hevq3as9n9]  { background: color-mix(in srgb, #e74c3c 15%, transparent); color: #922b21; }

.hp-occupant-chip[b-hevq3as9n9] {
    font-size: .78rem; font-weight: 600;
    padding: .16rem .48rem; border-radius: 7px;
    background: color-mix(in srgb, var(--accent) 10%, var(--surface2));
    border: 1px solid color-mix(in srgb, var(--accent) 25%, var(--border));
    color: var(--text); margin-right: .3rem;
}
.hp-empty[b-hevq3as9n9] { font-size: .82rem; color: var(--muted); font-style: italic; }

/* ── DARE card ─────────────────────────────────────────────────────────────── */
.hp-dare[b-hevq3as9n9] {
    margin: 1rem 0 1.25rem;
    padding: .85rem 1.1rem .85rem 1.25rem;
    border-radius: 10px;
    border-left: 4px solid var(--hp-dare-accent, #2980b9);
    background: color-mix(in srgb, var(--hp-dare-accent, #2980b9) 6%, var(--surface));
}
.hp-dare--supportive[b-hevq3as9n9] { --hp-dare-accent: #27ae60; }
.hp-dare--cautionary[b-hevq3as9n9] { --hp-dare-accent: #e74c3c; }
.hp-dare--neutral[b-hevq3as9n9]    { --hp-dare-accent: #2980b9; }

.hp-dare-top[b-hevq3as9n9] { display: flex; align-items: center; gap: .45rem; flex-wrap: wrap; margin-bottom: .4rem; }
.hp-dare-eyebrow[b-hevq3as9n9]  { font-size: .62rem; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--hp-dare-accent); }
.hp-dare-pillar[b-hevq3as9n9]   { font-size: .64rem; font-weight: 600; padding: .1rem .42rem; border-radius: 7px; background: color-mix(in srgb, var(--hp-dare-accent) 14%, transparent); color: var(--hp-dare-accent); }
.hp-dare-tone[b-hevq3as9n9]     { font-size: .62rem; color: var(--muted); margin-left: auto; }
.hp-dare-headline[b-hevq3as9n9] { font-size: 1rem; font-weight: 700; color: var(--text); line-height: 1.35; margin-bottom: .35rem; }
.hp-dare-body[b-hevq3as9n9]     { font-size: .86rem; color: var(--text); line-height: 1.6; margin: 0 0 .5rem; }
.hp-dare-row[b-hevq3as9n9]      { display: flex; flex-wrap: wrap; gap: .6rem; margin-bottom: .4rem; }
.hp-dare-block[b-hevq3as9n9]    { display: flex; flex-direction: column; gap: .08rem; flex: 1; min-width: 130px; }
.hp-dare-label[b-hevq3as9n9]    { font-size: .61rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--hp-dare-accent); }
.hp-dare-val[b-hevq3as9n9]      { font-size: .83rem; color: var(--text); line-height: 1.5; }
.hp-dare-classical[b-hevq3as9n9] { font-size: .76rem; color: var(--muted); font-style: italic; border-top: 1px dashed var(--border); padding-top: .4rem; margin-top: .3rem; line-height: 1.6; }

/* ── Nakshatra section ─────────────────────────────────────────────────────── */
.hp-nak-wrap[b-hevq3as9n9] { margin-top: 1.5rem; }

.hp-nak-divider[b-hevq3as9n9] { display: flex; align-items: center; gap: .75rem; margin-bottom: .9rem; }
.hp-nak-divider[b-hevq3as9n9]::before,
.hp-nak-divider[b-hevq3as9n9]::after    { content: ""; flex: 1; height: 1px; background: var(--border); }
.hp-nak-divider-label[b-hevq3as9n9]     { font-size: .62rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); white-space: nowrap; }

/* Nakshatra header table (name + meta + remedy) */
.hp-nak-header-table[b-hevq3as9n9] {
    width: 100%;
    border-collapse: collapse;
    background: var(--surface);
    border: 1px solid var(--border);
    border-top: 3px solid var(--accent);
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: .9rem;
}
.hp-nak-name-cell[b-hevq3as9n9] {
    padding: .65rem .9rem;
    border-bottom: 1px solid var(--border);
}
.hp-nak-title[b-hevq3as9n9] {
    font-family: "Palatino Linotype", Palatino, Georgia, serif;
    font-size: 1.1rem; font-weight: 700; color: var(--text); margin-right: .5rem;
}
.hp-nak-pada[b-hevq3as9n9] {
    font-size: .76rem; color: var(--muted); font-style: italic; margin-right: .5rem;
}
.hp-nak-pill[b-hevq3as9n9] {
    font-size: .65rem; font-weight: 600;
    padding: .13rem .4rem; border-radius: 12px;
    background: color-mix(in srgb, var(--accent) 10%, var(--surface2));
    border: 1px solid color-mix(in srgb, var(--accent) 20%, var(--border));
    color: var(--text); margin-right: .3rem;
}
.hp-nak-meta-label[b-hevq3as9n9] {
    width: 90px;
    font-size: .62rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em;
    color: var(--muted);
    padding: .48rem .7rem .48rem .9rem;
    border-bottom: 1px solid var(--border);
    vertical-align: top;
    background: color-mix(in srgb, var(--surface2) 60%, transparent);
}
.hp-nak-meta-val[b-hevq3as9n9] {
    font-size: .86rem; color: var(--text);
    padding: .48rem .8rem;
    border-bottom: 1px solid var(--border);
    vertical-align: top; line-height: 1.5;
}
.hp-nak-mantra[b-hevq3as9n9] { font-family: "Palatino Linotype", Palatino, Georgia, serif; font-style: italic; }
.hp-nak-header-table tr:last-child .hp-nak-meta-label[b-hevq3as9n9],
.hp-nak-header-table tr:last-child .hp-nak-meta-val[b-hevq3as9n9] { border-bottom: none; }

/* Reading prose */
.hp-nak-reading[b-hevq3as9n9] {
    font-size: .88rem; line-height: 1.7; color: var(--text);
    background: var(--surface);
    border: 1px solid var(--border);
    border-left: 3px solid var(--accent);
    border-radius: 0 8px 8px 0;
    padding: .7rem .9rem;
    margin-bottom: .9rem;
}

/* Insights table */
.hp-nak-insights[b-hevq3as9n9] {
    width: 100%;
    border-collapse: collapse;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 10px;
    overflow: hidden;
}
.hp-ni-label[b-hevq3as9n9] {
    width: 90px;
    font-size: .62rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em;
    color: var(--muted);
    padding: .6rem .7rem .6rem .9rem;
    border-bottom: 1px solid var(--border);
    vertical-align: top; white-space: nowrap;
    background: color-mix(in srgb, var(--surface2) 60%, transparent);
}
.hp-ni-val[b-hevq3as9n9] {
    font-size: .86rem; color: var(--text);
    padding: .6rem .9rem;
    border-bottom: 1px solid var(--border);
    vertical-align: top; line-height: 1.65;
}
.hp-nak-insights tr:last-child .hp-ni-label[b-hevq3as9n9],
.hp-nak-insights tr:last-child .hp-ni-val[b-hevq3as9n9] { border-bottom: none; }

/* ── Mobile ─────────────────────────────────────────────────────────────────── */
@media (max-width: 700px) {
    .hp-wrap[b-hevq3as9n9]  { flex-direction: column; }
    .hp-detail[b-hevq3as9n9] { min-width: 0; }
}
/* /Components/JaiminiPanel.razor.rz.scp.css */
/* ── Jaimini Panel ────────────────────────────────────────────────────────── */

.jai-section[b-a0g5fd4rzs]        { margin-bottom: 32px; }
.jai-section-title[b-a0g5fd4rzs]  { font-size: 15px; font-weight: 600; margin: 0 0 12px; color: var(--text); }
.jai-sub[b-a0g5fd4rzs]            { font-size: 13px; color: var(--muted); font-weight: 400; margin-left: 6px; }
.jai-reading[b-a0g5fd4rzs]        { font-size: 13px; color: var(--muted); line-height: 1.7; margin: 0; }

/* Chara Karaka grid */
.jai-karaka-grid[b-a0g5fd4rzs]    { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 10px; }
.jai-karaka-card[b-a0g5fd4rzs]    { background: var(--surface2); border: 1px solid var(--border); border-radius: 10px; padding: 12px; text-align: center; }
.jai-karaka-abbr[b-a0g5fd4rzs]    { font-size: 13px; font-weight: 700; color: var(--accent); letter-spacing: .05em; }
.jai-karaka-planet[b-a0g5fd4rzs]  { font-size: 18px; font-weight: 700; color: var(--text); margin: 4px 0; }
.jai-karaka-label[b-a0g5fd4rzs]   { font-size: 13px; font-weight: 600; color: var(--muted); }
.jai-karaka-sig[b-a0g5fd4rzs]     { font-size: 10px; color: var(--muted); margin-top: 2px; opacity: .8; }

/* Karakamsa */
.jai-karakamsa-card[b-a0g5fd4rzs]   { background: var(--surface2); border-radius: 10px; padding: 16px; border-left: 4px solid var(--accent); }
.jai-karakamsa-header[b-a0g5fd4rzs] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.jai-karakamsa-planet[b-a0g5fd4rzs] { font-size: 20px; font-weight: 700; color: var(--text); }
.jai-karakamsa-sign[b-a0g5fd4rzs]   { font-size: 13px; color: var(--muted); }

/* Argala */
.jai-argala-grid[b-a0g5fd4rzs]      { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 10px; }
.jai-argala-card[b-a0g5fd4rzs]      { border-radius: 10px; padding: 12px; text-align: center; border: 1px solid var(--border); }
.jai-argala-active[b-a0g5fd4rzs]    { background: color-mix(in srgb, var(--success) 10%, var(--surface2)); border-color: var(--success); }
.jai-argala-cancelled[b-a0g5fd4rzs] { background: var(--surface2); opacity: .65; }
.jai-argala-label[b-a0g5fd4rzs]     { font-size: 13px; font-weight: 600; color: var(--accent); }
.jai-argala-house[b-a0g5fd4rzs]     { font-size: 20px; font-weight: 700; color: var(--text); }
.jai-argala-planets[b-a0g5fd4rzs]   { font-size: 14px; color: var(--text); margin-top: 4px; }
.jai-argala-virodha[b-a0g5fd4rzs]   { font-size: 10px; color: var(--danger); margin-top: 3px; }
.jai-argala-status[b-a0g5fd4rzs]    { font-size: 13px; margin-top: 6px; color: var(--muted); }

/* Rudra / Maheshwara */
.jai-rudra-grid[b-a0g5fd4rzs]   { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 640px) { .jai-rudra-grid[b-a0g5fd4rzs] { grid-template-columns: 1fr; } }
.jai-rudra-card[b-a0g5fd4rzs]   { background: var(--surface2); border: 1px solid var(--border); border-radius: 10px; padding: 16px; }
.jai-rudra-title[b-a0g5fd4rzs]  { font-size: 13px; font-weight: 600; color: var(--accent); text-transform: uppercase; letter-spacing: .05em; }
.jai-rudra-planet[b-a0g5fd4rzs] { font-size: 22px; font-weight: 700; color: var(--text); margin: 6px 0 2px; }
.jai-rudra-sign[b-a0g5fd4rzs]   { font-size: 13px; color: var(--muted); margin-bottom: 10px; }

/* Yogada */
.jai-yogada-card[b-a0g5fd4rzs]  { background: var(--surface2); border: 1px solid var(--border); border-radius: 10px; padding: 12px 16px; margin-bottom: 8px; font-size: 13px; color: var(--muted); line-height: 1.6; }

/* Sthira Karakas */
.jai-sthira-grid[b-a0g5fd4rzs]   { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 10px; }
.jai-sthira-card[b-a0g5fd4rzs]   { background: var(--surface2); border: 1px solid var(--border); border-radius: 10px; padding: 12px; text-align: center; }
.jai-sthira-karaka[b-a0g5fd4rzs] { font-size: 10px; font-weight: 700; color: var(--accent); letter-spacing: .05em; }
.jai-sthira-planet[b-a0g5fd4rzs] { font-size: 16px; font-weight: 700; color: var(--text); margin: 4px 0; }
.jai-sthira-sig[b-a0g5fd4rzs]    { font-size: 10px; color: var(--muted); }
/* /Components/JaiminiRasiDashaPanel.razor.rz.scp.css */
/* ── Jaimini Rasi Dasha Panel ─────────────────────────────────────────────── */

/* Dasha-type switcher */
.jrd-controls[b-t3vi8mxzyo]   { margin-bottom: 16px; }
.jrd-type-tabs[b-t3vi8mxzyo]  { display: flex; gap: 4px; flex-wrap: wrap; padding: 4px; background: var(--surface2); border: 1px solid var(--border); border-radius: 10px; }

.jrd-tab[b-t3vi8mxzyo], .jrd-tab-active[b-t3vi8mxzyo] {
    flex: 1; min-width: 80px;
    padding: 6px 10px;
    border: none; border-radius: 7px;
    font-size: 12px; font-weight: 600; font-family: inherit;
    cursor: pointer; transition: background .13s, color .13s;
    text-transform: capitalize; white-space: nowrap;
}
.jrd-tab[b-t3vi8mxzyo]        { background: none; color: var(--muted); }
.jrd-tab:hover[b-t3vi8mxzyo]  { background: var(--surface); color: var(--text); }
.jrd-tab-active[b-t3vi8mxzyo] { background: var(--surface); color: var(--accent); box-shadow: 0 1px 4px rgba(0,0,0,.1); }

/* Current period hero */
.jrd-current[b-t3vi8mxzyo] {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    background: color-mix(in srgb, var(--accent) 8%, var(--surface));
    border: 1px solid var(--accent);
    border-radius: var(--radius);
    padding: 18px 20px;
    margin-bottom: 16px;
}
.jrd-cur-sign[b-t3vi8mxzyo]  { font-size: 26px; font-weight: 800; color: var(--accent); min-width: 110px; }
.jrd-cur-meta[b-t3vi8mxzyo]  { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--text); flex: 1; flex-wrap: wrap; font-variant-numeric: tabular-nums; }
.jrd-sep[b-t3vi8mxzyo]       { color: var(--muted); }
.jrd-years[b-t3vi8mxzyo]     { background: var(--accent); color: #fff; font-size: 12px; font-weight: 700; padding: 2px 8px; border-radius: 4px; }
.jrd-cur-label[b-t3vi8mxzyo] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--accent); margin-bottom: 4px; }

/* Table */
.jrd-table-wrap[b-t3vi8mxzyo] { overflow-x: auto; border: 1px solid var(--border); border-radius: var(--radius); margin-bottom: 8px; }
.jrd-table[b-t3vi8mxzyo]      { width: 100%; border-collapse: collapse; font-size: 13px; background: var(--surface); }
.jrd-table thead tr[b-t3vi8mxzyo] { background: var(--surface2); }
.jrd-table th[b-t3vi8mxzyo]   { text-align: left; padding: 7px 10px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); border-bottom: 1px solid var(--border); white-space: nowrap; }
.jrd-table td[b-t3vi8mxzyo]   { padding: 9px 10px; border-bottom: 1px solid var(--border); color: var(--text); font-variant-numeric: tabular-nums; }
.jrd-table tbody tr:hover td[b-t3vi8mxzyo] { background: rgba(229,163,45,.06); }
.jrd-row-current td[b-t3vi8mxzyo]            { background: rgba(229,163,45,.11); color: var(--accent); font-weight: 700; }
.jrd-row-current td:first-child[b-t3vi8mxzyo] { border-left: 3px solid var(--accent); }

/* ── Mobile ── */
@media (max-width: 767px) {
    .jrd-tab[b-t3vi8mxzyo], .jrd-tab-active[b-t3vi8mxzyo] { min-height: 44px; padding: 10px 14px; font-size: .88rem; }
    .jrd-table th[b-t3vi8mxzyo]              { font-size: .72rem; padding: 7px 8px; }
    .jrd-cur-label[b-t3vi8mxzyo]             { font-size: .72rem; }
    .jrd-tab-bar[b-t3vi8mxzyo]               { overflow-x: auto; flex-wrap: nowrap; }
    .jrd-tab-bar[b-t3vi8mxzyo]::-webkit-scrollbar { display: none; }
    /* Fade cue (Innovation #7) */
    .jrd-tab-wrap[b-t3vi8mxzyo] { position: relative; }
    .jrd-tab-wrap[b-t3vi8mxzyo]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 28px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
}
/* /Components/KalachakraPanel.razor.rz.scp.css */
/* ── Kalachakra Dasha Panel ───────────────────────────────────────────────── */

/* Current period hero */
.kc-current[b-zf625w12jy] {
    display: flex;
    align-items: center;
    gap: 24px;
    background: color-mix(in srgb, var(--accent) 8%, var(--surface));
    border: 1px solid var(--accent);
    border-radius: var(--radius);
    padding: 20px 24px;
    margin-bottom: 16px;
    flex-wrap: wrap;
}
.kc-cur-sign[b-zf625w12jy]  { font-size: 28px; font-weight: 800; color: var(--accent); min-width: 120px; }
.kc-cur-meta[b-zf625w12jy]  { display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--text); flex: 1; flex-wrap: wrap; font-variant-numeric: tabular-nums; }
.kc-sep[b-zf625w12jy]       { color: var(--muted); }
.kc-years[b-zf625w12jy]     { background: var(--accent); color: #fff; font-size: 13px; font-weight: 700; padding: 2px 8px; border-radius: 4px; margin-left: 4px; }
.kc-cur-label[b-zf625w12jy] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--accent); margin-bottom: 4px; }

/* Meta chips row */
.kc-meta-row[b-zf625w12jy]  { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 20px; }
.kc-meta-chip[b-zf625w12jy] {
    font-size: 12.5px;
    background: var(--surface2);
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 3px 12px;
    color: var(--muted);
}

/* Table */
.kc-table-wrap[b-zf625w12jy] { overflow-x: auto; border: 1px solid var(--border); border-radius: var(--radius); margin-bottom: 12px; }
.kc-table[b-zf625w12jy]      { width: 100%; border-collapse: collapse; font-size: 13px; background: var(--surface); }
.kc-table thead tr[b-zf625w12jy] { background: var(--surface2); }
.kc-table th[b-zf625w12jy]   { text-align: left; padding: 7px 12px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); border-bottom: 1px solid var(--border); white-space: nowrap; }
.kc-table td[b-zf625w12jy]   { padding: 9px 12px; border-bottom: 1px solid var(--border); color: var(--text); font-variant-numeric: tabular-nums; }
.kc-table tbody tr:hover td[b-zf625w12jy] { background: rgba(229,163,45,.06); }
.kc-row-current td[b-zf625w12jy]            { background: rgba(229,163,45,.11); color: var(--accent); font-weight: 700; }
.kc-row-current td:first-child[b-zf625w12jy] { border-left: 3px solid var(--accent); }
.kc-row-elapsed td[b-zf625w12jy]            { opacity: .5; font-style: italic; }

/* Footer note */
.kc-note[b-zf625w12jy] { font-size: 11px; color: var(--muted); opacity: .75; line-height: 1.6; margin-top: 8px; }

/* ── Mobile ── */
@media (max-width: 767px) {
    .kc-table th[b-zf625w12jy]   { font-size: .72rem; padding: 7px 8px; }
    .kc-cur-label[b-zf625w12jy]  { font-size: .72rem; }
    .kc-note[b-zf625w12jy]       { font-size: .76rem; }
    .kc-year-btn[b-zf625w12jy]   { min-height: 44px; min-width: 44px; padding: 10px 12px; }
}
/* /Components/KarmaPanel.razor.rz.scp.css */
/* Current activation banner */
.kp-activation[b-x87ol4p6fz]    { background: color-mix(in srgb, var(--accent) 6%, var(--surface)); border: 1px solid color-mix(in srgb, var(--accent) 25%, var(--border)); border-radius: var(--radius); padding: 14px 16px; margin-bottom: 18px; }
.kp-act-label[b-x87ol4p6fz]     { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); margin-bottom: 6px; }
.kp-act-text[b-x87ol4p6fz]      { font-size: 13px; color: var(--text); line-height: 1.6; margin: 0; }

/* Life-path number */
.kp-lifepath[b-x87ol4p6fz]      { display: flex; align-items: baseline; gap: 18px; background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; margin-bottom: 20px; }
.kp-lp-number[b-x87ol4p6fz]     { font-size: 48px; font-weight: 800; color: var(--accent); font-variant-numeric: tabular-nums; line-height: 1; min-width: 60px; text-align: center; }
.kp-lp-meaning[b-x87ol4p6fz]    { font-size: 13px; color: var(--text); line-height: 1.6; }

/* Four factor cards */
.kp-factor-grid[b-x87ol4p6fz]   { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 14px; margin-bottom: 24px; }
.kp-factor-card[b-x87ol4p6fz]   { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.kp-factor-header[b-x87ol4p6fz] { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.kp-factor-title[b-x87ol4p6fz]  { font-size: 13px; font-weight: 700; color: var(--text); line-height: 1.3; }
.kp-factor-strength[b-x87ol4p6fz] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; padding: 2px 8px; border-radius: 10px; white-space: nowrap; flex-shrink: 0; }
.kp-s-good[b-x87ol4p6fz]        { background: color-mix(in srgb, var(--success) 15%, var(--surface)); color: var(--success); }
.kp-s-mid[b-x87ol4p6fz]         { background: color-mix(in srgb, #b8860b 15%, var(--surface)); color: #b8860b; }
.kp-s-low[b-x87ol4p6fz]         { background: color-mix(in srgb, var(--muted) 15%, var(--surface)); color: var(--muted); }
.kp-factor-reading[b-x87ol4p6fz] { font-size: 13px; color: var(--text); line-height: 1.6; margin: 0; flex: 1; }
.kp-factor-action[b-x87ol4p6fz] { display: flex; flex-direction: column; gap: 3px; padding-top: 8px; border-top: 1px solid var(--border); }
.kp-action-label[b-x87ol4p6fz]  { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); }
.kp-action-text[b-x87ol4p6fz]   { font-size: 14px; color: var(--muted); line-height: 1.5; }

/* Karmic lessons */
.kp-lessons-section[b-x87ol4p6fz] { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; }
.kp-section-title[b-x87ol4p6fz]   { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); margin-bottom: 12px; }
.kp-lessons-list[b-x87ol4p6fz]    { padding-left: 18px; display: flex; flex-direction: column; gap: 10px; margin: 0; }
.kp-lessons-list li[b-x87ol4p6fz] { font-size: 13px; color: var(--text); line-height: 1.6; }

@media (max-width: 600px) {
    .kp-factor-grid[b-x87ol4p6fz] { grid-template-columns: 1fr; }
    .kp-lifepath[b-x87ol4p6fz]    { flex-direction: column; align-items: flex-start; gap: 10px; }
    .kp-lp-number[b-x87ol4p6fz]   { font-size: 36px; }
}
/* /Components/KpPanel.razor.rz.scp.css */
/* ── KP Panel ─────────────────────────────────────────────────────────────── */

/* Progressive disclosure button — desktop: always hidden */
.pd-toggle[b-yh8qy0qbq2] { display: none; }

/* Lagna sentinel row — visually distinguished from planet rows */
.kp-lagna-row[b-yh8qy0qbq2] { background: color-mix(in srgb, var(--accent) 8%, transparent) !important; font-weight: 600; }

.panel-section[b-yh8qy0qbq2]    { padding: 0; }
.panel-heading[b-yh8qy0qbq2]    { font-size: 17px; font-weight: 700; margin: 0 0 4px; color: var(--text); }
.panel-sub[b-yh8qy0qbq2]        { font-size: 12.5px; color: var(--muted); margin-bottom: 14px; }

/* Summary callout */
.kp-summary[b-yh8qy0qbq2]       { font-size: 13.5px; background: var(--surface2); border-left: 3px solid var(--accent2); padding: .65rem 1rem; border-radius: 0 8px 8px 0; margin-bottom: 20px; line-height: 1.65; color: var(--text); }

/* Section structure */
.kp-section[b-yh8qy0qbq2]       { margin-bottom: 24px; }
.kp-section-title[b-yh8qy0qbq2] { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; margin-bottom: 10px; color: var(--accent2); }

/* Ruling planet chips */
.kp-ruling-chips[b-yh8qy0qbq2]  { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.kp-ruling-chip[b-yh8qy0qbq2]   { background: var(--accent2); color: #fff; padding: .2rem .7rem; border-radius: 12px; font-size: .78rem; font-weight: 700; }

/* Key-value grid */
.kp-ruling-grid[b-yh8qy0qbq2]   { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 5px; }
.kp-ruling-row[b-yh8qy0qbq2]    { display: flex; justify-content: space-between; align-items: center; background: var(--surface2); border: 1px solid var(--border); padding: 7px 12px; border-radius: 6px; font-size: 13px; }
.kp-rl[b-yh8qy0qbq2]            { color: var(--muted); }
.kp-rv[b-yh8qy0qbq2]            { font-weight: 600; color: var(--text); }
.kp-highlight[b-yh8qy0qbq2]     { color: var(--accent2); }

/* Tables */
.kp-table-wrap[b-yh8qy0qbq2]       { overflow-x: auto; border: 1px solid var(--border); border-radius: var(--radius); }
.kp-table[b-yh8qy0qbq2]            { width: 100%; border-collapse: collapse; font-size: 13px; background: var(--surface); }
.kp-table thead tr[b-yh8qy0qbq2]   { background: var(--surface2); }
.kp-table th[b-yh8qy0qbq2]         { text-align: left; padding: 7px 10px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); border-bottom: 1px solid var(--border); white-space: nowrap; }
.kp-table td[b-yh8qy0qbq2]         { padding: 7px 10px; border-bottom: 1px solid var(--border); color: var(--text); }
.kp-table tbody tr:hover td[b-yh8qy0qbq2] { background: rgba(229,163,45,.06); }
.kp-graha[b-yh8qy0qbq2]            { font-weight: 700; }
.kp-sublord[b-yh8qy0qbq2]          { font-weight: 600; color: var(--accent2); }
.kp-nak[b-yh8qy0qbq2]              { font-size: .78rem; }
.kp-nums[b-yh8qy0qbq2]             { font-variant-numeric: tabular-nums; }
.kp-muted[b-yh8qy0qbq2]            { color: var(--muted); }
.kp-strong-row td[b-yh8qy0qbq2]    { background: color-mix(in srgb, var(--accent2) 6%, transparent); }
.kp-strong-row td:first-child[b-yh8qy0qbq2] { border-left: 3px solid var(--accent2); }

/* Interpretation block */
.kp-interp-summary[b-yh8qy0qbq2]  { font-size: 13px; color: var(--text); line-height: 1.6; margin-bottom: 14px; }
.kp-interp-grid[b-yh8qy0qbq2]     { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 8px; margin-bottom: 14px; }
.kp-interp-card[b-yh8qy0qbq2]     { background: var(--surface2); border: 1px solid var(--border); border-radius: 8px; padding: 10px 12px; font-size: 12px; position: relative; }
.kp-interp-card--promised[b-yh8qy0qbq2] { border-color: var(--success, #22c55e); background: color-mix(in srgb, var(--success, #22c55e) 6%, var(--surface2)); }
.kp-interp-house[b-yh8qy0qbq2]    { font-weight: 700; font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--accent2); margin-bottom: 4px; }
.kp-interp-csl[b-yh8qy0qbq2]      { color: var(--text); margin-bottom: 3px; }
.kp-interp-note[b-yh8qy0qbq2]     { color: var(--muted); line-height: 1.5; }
.kp-interp-badge[b-yh8qy0qbq2]    { display: inline-block; margin-top: 6px; font-size: 10px; font-weight: 700; color: var(--success, #16a34a); background: color-mix(in srgb, var(--success, #22c55e) 12%, transparent); padding: 1px 7px; border-radius: 10px; }
.kp-interp-sigs[b-yh8qy0qbq2]     { margin-top: 14px; }
.kp-interp-sig--strong[b-yh8qy0qbq2] { font-weight: 700; }
.kp-interp-sig--strong .kp-rv[b-yh8qy0qbq2] { color: var(--accent2); }

/* Disclaimer */
.kp-disclaimer[b-yh8qy0qbq2]    { font-size: 11px; color: var(--muted); font-style: italic; margin-top: 14px; opacity: .75; }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .kp-summary[b-yh8qy0qbq2]       { font-size: 13px; padding: .55rem .85rem; }

    /* Ruling grid — single column */
    .kp-ruling-grid[b-yh8qy0qbq2]   { grid-template-columns: 1fr; gap: 4px; }
    .kp-ruling-row[b-yh8qy0qbq2]    { padding: 8px 10px; font-size: 12.5px; min-height: 40px; }

    /* Ruling chips — smaller */
    .kp-ruling-chip[b-yh8qy0qbq2]   { font-size: .72rem; padding: .2rem .6rem; }

    /* KP table — already scrolls; tighten cells */
    .kp-table th[b-yh8qy0qbq2]      { padding: 6px 8px; font-size: 9px; }
    .kp-table td[b-yh8qy0qbq2]      { padding: 6px 8px; font-size: 12.5px; }

    /* Interpretation grid — single column */
    .kp-interp-grid[b-yh8qy0qbq2]   { grid-template-columns: 1fr; gap: 6px; }
    .kp-interp-card[b-yh8qy0qbq2]   { padding: 9px 10px; }

    .kp-section-title[b-yh8qy0qbq2] { font-size: 12px; }
    .kp-interp-summary[b-yh8qy0qbq2] { font-size: 12.5px; }
    .kp-disclaimer[b-yh8qy0qbq2]    { font-size: 10.5px; }

    /* Progressive disclosure toggle */
    .pd-toggle[b-yh8qy0qbq2] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 44px;
        padding: 10px 16px;
        margin-top: 8px;
        background: var(--surface2);
        border: 1px solid var(--border);
        border-radius: var(--radius);
        font-size: .84rem;
        font-weight: 600;
        color: var(--muted);
        cursor: pointer;
        transition: background .14s, color .14s;
    }
    .pd-toggle:hover[b-yh8qy0qbq2] { background: var(--border); color: var(--text); }
}

/* States */
.error-msg[b-yh8qy0qbq2]  { color: var(--danger); font-size: 13px; }
.loading-msg[b-yh8qy0qbq2] { color: var(--muted); font-size: 13px; }
/* /Components/KundaliChart.razor.rz.scp.css */
/* ── Root ─────────────────────────────────────────────────────────────────── */

.kc-root[b-iao2eeum2y] {
    display: flex;
    flex-direction: column;
    gap: 0;
    width: 100%;
}

/* ── Layout toggle bar ───────────────────────────────────────────────────── */

.kc-bar[b-iao2eeum2y] {
    display: flex;
    gap: 4px;
    margin-bottom: 8px;
}

.kc-layout-btn[b-iao2eeum2y] {
    flex: 1;
    padding: 5px 0;
    background: var(--surface, #141726);
    border: 1px solid var(--border, #2a2f4a);
    border-radius: 6px;
    color: var(--muted, #7b7fa8);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    cursor: pointer;
    transition: background .12s, border-color .12s, color .12s;
}

.kc-layout-btn:hover[b-iao2eeum2y] {
    background: var(--surface2, #1c2035);
    color: var(--text, #e8eaf6);
    border-color: var(--accent, #e5a32d);
}

.kc-layout-btn.kc-active[b-iao2eeum2y] {
    background: color-mix(in srgb, var(--accent, #D4AF37) 14%, transparent);
    border-color: var(--accent, #D4AF37);
    color: var(--accent, #D4AF37);
}

/* ── Chart area (relative, so SVG overlay can be positioned) ─────────────── */

.kc-chart-area[b-iao2eeum2y] {
    position: relative;
    width: 100%;
    aspect-ratio: 1;
    max-width: 380px;
}

.kc-unavail[b-iao2eeum2y] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    font-size: 13px;
    color: var(--muted, #7b7fa8);
    border: 1px dashed var(--border, #2a2f4a);
    border-radius: 8px;
}

/* ── Shared decorative elements ──────────────────────────────────────────── */

.kc-center-star[b-iao2eeum2y] {
    font-size: 20px;
    color: var(--accent, #D4AF37);
    opacity: .45;
    display: block;
    line-height: 1.2;
}

.kc-center-lbl[b-iao2eeum2y] {
    font-size: 8px;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--muted, #7b7fa8);
    display: block;
}

.kc-house-num[b-iao2eeum2y] {
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--muted, #7b7fa8);
    line-height: 1;
}

.kc-rasi-abbr[b-iao2eeum2y] {
    font-size: 11px;
    font-weight: 700;
    color: var(--accent, #D4AF37);
    line-height: 1.2;
}

.kc-house-num-n[b-iao2eeum2y] {
    font-size: 9px;
    font-weight: 700;
    color: var(--muted, #7b7fa8);
    display: block;
    line-height: 1.2;
}

.kc-rasi-abbr-s[b-iao2eeum2y] {
    font-size: 10px;
    font-weight: 600;
    color: var(--accent, #D4AF37);
    display: block;
    line-height: 1.2;
}

.kc-lagna-marker[b-iao2eeum2y] {
    font-size: 8px;
    font-weight: 700;
    color: var(--accent, #D4AF37);
    display: block;
    line-height: 1.2;
}

.kc-planet[b-iao2eeum2y] {
    font-size: 10px;
    font-weight: 700;
    cursor: pointer;
    padding: 1px 3px;
    border-radius: 3px;
    transition: opacity .1s, background .1s;
    white-space: nowrap;
}

.kc-planet:hover[b-iao2eeum2y] {
    background: color-mix(in srgb, currentColor 15%, transparent);
}

.kc-planet-sel[b-iao2eeum2y] {
    outline: 1px dotted currentColor;
}

.kc-lagna-tri[b-iao2eeum2y] {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 18px 18px 0 0;
    border-color: var(--accent, #D4AF37) transparent transparent transparent;
    opacity: .85;
    pointer-events: none;
}

/* ── South / East Indian CSS grid ────────────────────────────────────────── */

.kc-si-grid[b-iao2eeum2y] {
    --kc-cell: min(22vw, 88px);
    display: grid;
    grid-template-columns: repeat(4, var(--kc-cell));
    grid-template-rows:    repeat(4, var(--kc-cell));
    width: calc(var(--kc-cell) * 4);
    max-width: 100%;
    border: 2px solid var(--border, #2a2f4a);
    border-radius: 8px;
    overflow: hidden;
}

.kc-si-cell[b-iao2eeum2y] {
    background: var(--surface, #141726);
    border: 1px solid var(--border, #2a2f4a);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 5px 6px;
    gap: 1px;
    text-align: left;
    cursor: pointer;
    position: relative;
    transition: background .12s, border-color .12s;
}

.kc-si-cell:hover[b-iao2eeum2y] {
    background: var(--surface2, #1c2035);
    border-color: var(--accent, #D4AF37);
    z-index: 1;
}

.kc-si-cell.kc-sel[b-iao2eeum2y] {
    background: color-mix(in srgb, var(--accent, #D4AF37) 10%, var(--surface, #141726)) !important;
    border-color: var(--accent, #D4AF37) !important;
    box-shadow: inset 0 0 0 1px var(--accent, #D4AF37);
}

.kc-si-cell.kc-lagna-cell[b-iao2eeum2y] {
    border-color: color-mix(in srgb, var(--accent, #D4AF37) 55%, transparent) !important;
}

.kc-si-cell:focus-visible[b-iao2eeum2y] {
    outline: 2px solid var(--accent, #D4AF37);
    outline-offset: -2px;
}

.kc-si-center[b-iao2eeum2y] {
    grid-column: span 2;
    grid-row: span 2;
    background: var(--surface2, #1c2035);
    border: 1px solid var(--border, #2a2f4a);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
}

.kc-planets-row[b-iao2eeum2y] {
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
    margin-top: 1px;
}

/* ── North Indian: absolute positioned cells ─────────────────────────────── */

.kc-ni-wrap[b-iao2eeum2y] {
    position: relative;
    width: 360px;
    height: 360px;
    max-width: 100%;
    aspect-ratio: 1;
}

.kc-ni-svg[b-iao2eeum2y] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.kc-svg-bg[b-iao2eeum2y] {
    fill: var(--surface, #141726);
    stroke: var(--border, #2a2f4a);
    stroke-width: 1;
}

.kc-svg-line[b-iao2eeum2y] {
    stroke: var(--border, #2a2f4a);
    stroke-width: 1;
}

.kc-svg-center-fill[b-iao2eeum2y] {
    fill: var(--surface2, #1c2035);
    stroke: var(--border, #2a2f4a);
    stroke-width: 1;
}

.kc-ni-cell[b-iao2eeum2y] {
    position: absolute;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: background .1s;
}

.kc-ni-cell:hover[b-iao2eeum2y] {
    background: color-mix(in srgb, var(--accent, #D4AF37) 8%, transparent);
}

.kc-ni-cell.kc-sel[b-iao2eeum2y] {
    background: color-mix(in srgb, var(--accent, #D4AF37) 14%, transparent);
}

.kc-ni-cell:focus-visible[b-iao2eeum2y] {
    outline: 2px solid var(--accent, #D4AF37);
    outline-offset: -1px;
}

.kc-ni-label[b-iao2eeum2y] {
    position: absolute;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1px;
    pointer-events: none;
}

.kc-planet-ni[b-iao2eeum2y] {
    position: absolute;
    font-size: 9px;
    font-weight: 700;
    transform: translate(-50%, -50%);
    cursor: pointer;
    white-space: nowrap;
    padding: 1px 2px;
    border-radius: 2px;
    transition: opacity .1s;
}

.kc-planet-ni:hover[b-iao2eeum2y] {
    opacity: .75;
}

.kc-ni-center[b-iao2eeum2y] {
    position: absolute;
    left: 120px;
    top: 120px;
    width: 120px;
    height: 120px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    pointer-events: none;
}

/* ── Western Wheel: full-size clip-path cells ────────────────────────────── */

.kc-wheel-wrap[b-iao2eeum2y] {
    position: relative;
    width: 360px;
    height: 360px;
    max-width: 100%;
    aspect-ratio: 1;
    border-radius: 50%;
}

.kc-wheel-svg[b-iao2eeum2y] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.kc-wheel-cell[b-iao2eeum2y] {
    position: absolute;
    inset: 0;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: background .1s;
}

.kc-wheel-cell:hover[b-iao2eeum2y] {
    background: color-mix(in srgb, var(--accent, #D4AF37) 8%, transparent);
}

.kc-wheel-cell.kc-sel[b-iao2eeum2y] {
    background: color-mix(in srgb, var(--accent, #D4AF37) 14%, transparent);
}

.kc-wheel-cell:focus-visible[b-iao2eeum2y] {
    outline: 2px solid var(--accent, #D4AF37);
    outline-offset: -1px;
}

.kc-wheel-label[b-iao2eeum2y] {
    position: absolute;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1px;
    pointer-events: none;
}

.kc-wheel-center[b-iao2eeum2y] {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 130px;
    height: 130px;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background: var(--surface2, #1c2035);
    border: 1px solid var(--border, #2a2f4a);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    pointer-events: none;
    z-index: 2;
}

/* ── Drishti SVG overlay ─────────────────────────────────────────────────── */

.kc-drishti-svg[b-iao2eeum2y] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.kc-drishti-ray[b-iao2eeum2y] {
    stroke: #7C6AF7;
    stroke-width: 1.5;
    stroke-dasharray: 5 3;
    opacity: .65;
}

.kc-drishti-dot[b-iao2eeum2y] {
    fill: #7C6AF7;
    opacity: .55;
}

/* ── Inspector drawer ────────────────────────────────────────────────────── */

.kc-inspector[b-iao2eeum2y] {
    margin-top: 8px;
    background: var(--surface, #141726);
    border: 1px solid var(--border, #2a2f4a);
    border-radius: 10px;
    overflow: hidden;
    animation: kc-slide-in-b-iao2eeum2y .15s ease;
}

@keyframes kc-slide-in-b-iao2eeum2y {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

.kc-insp-head[b-iao2eeum2y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px 8px;
    border-bottom: 1px solid var(--border, #2a2f4a);
    background: var(--surface2, #1c2035);
}

.kc-insp-title[b-iao2eeum2y] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.kc-insp-hbadge[b-iao2eeum2y] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--accent, #D4AF37) 14%, transparent);
    border: 1px solid color-mix(in srgb, var(--accent, #D4AF37) 35%, transparent);
    font-size: 10px;
    font-weight: 700;
    color: var(--accent, #D4AF37);
}

.kc-insp-rasi[b-iao2eeum2y] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text, #e8eaf6);
}

.kc-insp-close[b-iao2eeum2y] {
    background: none;
    border: none;
    color: var(--muted, #7b7fa8);
    font-size: 14px;
    cursor: pointer;
    padding: 4px 6px;
    border-radius: 4px;
    line-height: 1;
    transition: color .12s;
}

.kc-insp-close:hover[b-iao2eeum2y] {
    color: var(--text, #e8eaf6);
}

.kc-insp-body[b-iao2eeum2y] {
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.kc-insp-section[b-iao2eeum2y] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--muted, #7b7fa8);
    margin-top: 8px;
    margin-bottom: 2px;
}

.kc-insp-row[b-iao2eeum2y] {
    display: flex;
    gap: 8px;
    font-size: 14px;
}

.kc-insp-lbl[b-iao2eeum2y] {
    min-width: 44px;
    color: var(--muted, #7b7fa8);
    font-weight: 600;
}

.kc-insp-val[b-iao2eeum2y] {
    color: var(--text, #e8eaf6);
}

.kc-insp-planet[b-iao2eeum2y] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    background: var(--surface2, #1c2035);
    border: 1px solid var(--border, #2a2f4a);
    border-radius: 6px;
    cursor: pointer;
    text-align: left;
    width: 100%;
    transition: border-color .12s, background .12s;
}

.kc-insp-planet:hover[b-iao2eeum2y] {
    border-color: var(--accent, #D4AF37);
    background: color-mix(in srgb, var(--accent, #D4AF37) 6%, var(--surface2, #1c2035));
}

.kc-insp-planet.kc-insp-planet-sel[b-iao2eeum2y] {
    border-color: #7C6AF7;
    background: color-mix(in srgb, #7C6AF7 8%, var(--surface2, #1c2035));
}

.kc-insp-pabbr[b-iao2eeum2y] {
    font-size: 13px;
    font-weight: 700;
    min-width: 18px;
}

.kc-insp-pname[b-iao2eeum2y] {
    font-size: 14px;
    color: var(--text, #e8eaf6);
    flex: 1;
}

.kc-insp-pdeg[b-iao2eeum2y] {
    font-size: 13px;
    color: var(--muted, #7b7fa8);
    font-variant-numeric: tabular-nums;
}

.kc-insp-pdig[b-iao2eeum2y] {
    font-size: 10px;
    font-weight: 600;
    min-width: 72px;
    text-align: right;
}

.kc-insp-empty[b-iao2eeum2y] {
    font-size: 14px;
    color: var(--muted, #7b7fa8);
    font-style: italic;
    padding: 4px 0;
}

.kc-drishti-badges[b-iao2eeum2y] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.kc-drishti-badge[b-iao2eeum2y] {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    background: color-mix(in srgb, #7C6AF7 14%, transparent);
    border: 1px solid color-mix(in srgb, #7C6AF7 35%, transparent);
    border-radius: 4px;
    font-size: 13px;
    font-weight: 600;
    color: #A88CF7;
}

/* ── Rectification slider ────────────────────────────────────────────────── */

.kc-rect-wrap[b-iao2eeum2y] {
    margin-top: 10px;
    padding: 10px 12px;
    background: var(--surface, #141726);
    border: 1px solid var(--border, #2a2f4a);
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.kc-rect-label[b-iao2eeum2y] {
    font-size: 14px;
    color: var(--muted, #7b7fa8);
}

.kc-rect-label strong[b-iao2eeum2y] {
    color: var(--accent, #D4AF37);
    font-variant-numeric: tabular-nums;
}

.kc-rect-input[b-iao2eeum2y] {
    width: 100%;
    accent-color: var(--accent, #D4AF37);
    cursor: pointer;
}

.kc-rect-ticks[b-iao2eeum2y] {
    display: flex;
    justify-content: space-between;
    font-size: 9px;
    color: var(--muted, #7b7fa8);
    letter-spacing: .02em;
}

/* ── House background tiers (dark-mode safe) ─────────────────────────────── */

.ni-bg-trikona[b-iao2eeum2y]  { background: color-mix(in srgb, var(--success) 10%, transparent) !important; }
.ni-bg-kendra[b-iao2eeum2y]   { background: color-mix(in srgb, var(--accent)  10%, transparent) !important; }
.ni-bg-dusthana[b-iao2eeum2y] { background: color-mix(in srgb, var(--danger)   8%, transparent) !important; }
.ni-bg-other[b-iao2eeum2y]    { background: color-mix(in srgb, var(--warning)  7%, transparent) !important; }

/* ── Planet functional-nature colors (dark-mode safe) ───────────────────── */

.ni-pk-yk[b-iao2eeum2y]      { color: var(--success) !important; }
.ni-pk-yk-dst[b-iao2eeum2y]  { color: color-mix(in srgb, var(--success) 60%, var(--warning)) !important; }
.ni-pk-ben[b-iao2eeum2y]     { color: var(--success) !important; }
.ni-pk-ben-dst[b-iao2eeum2y] { color: var(--warning) !important; }
.ni-pk-mal[b-iao2eeum2y]     { color: #fb923c !important; }
.ni-pk-mal-dst[b-iao2eeum2y] { color: var(--danger) !important; }
.ni-pk-default[b-iao2eeum2y] { color: var(--accent) !important; }

/* ── Responsive ──────────────────────────────────────────────────────────── */

@media (max-width: 380px) {
    .kc-layout-btn[b-iao2eeum2y] { font-size: 10px; padding: 4px 0; }
    .kc-rasi-abbr[b-iao2eeum2y]  { font-size: 11px; }
    .kc-planet[b-iao2eeum2y]     { font-size: 9px; }
    .kc-ni-wrap[b-iao2eeum2y], .kc-wheel-wrap[b-iao2eeum2y] { width: 100%; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    /* CRITICAL: scale chart container to viewport */
    .kc-ni-wrap[b-iao2eeum2y], .kc-wheel-wrap[b-iao2eeum2y] {
        width: 100%;
        max-width: 340px;
        margin-left: auto;
        margin-right: auto;
    }
    /* Convert hardcoded pixel absolute positions to percentages (360px base) */
    .kc-ni-center[b-iao2eeum2y]  {
        left: 33.33% !important;
        top: 33.33% !important;
        width: 33.33% !important;
        height: 33.33% !important;
    }
    /* Outer ring positions — convert from px to % of 360px container */
    /* Touch target fixes */
    .kc-layout-btn[b-iao2eeum2y] {
        min-height: 44px;
        min-width: 44px;
        padding: 10px 16px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .kc-insp-close[b-iao2eeum2y] {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 10px;
    }
    .kc-planet[b-iao2eeum2y] {
        min-width: 32px;
        min-height: 32px;
        cursor: pointer;
    }
    /* Font bumps for readability */
    .kc-center-lbl[b-iao2eeum2y]   { font-size: 10px; }
    .kc-house-num[b-iao2eeum2y]    { font-size: 11px; }
    .kc-lagna-marker[b-iao2eeum2y] { font-size: 10px; }
    .kc-planet-ni[b-iao2eeum2y]    { font-size: 11px; }
    /* Inspector panel: full-width bottom sheet on mobile */
    .kc-inspector[b-iao2eeum2y] {
        position: fixed;
        left: 0; right: 0; bottom: 0;
        max-height: 60vh;
        overflow-y: auto;
        border-radius: 18px 18px 0 0;
        border-top: 1px solid var(--border);
        box-shadow: 0 -4px 32px rgba(0,0,0,.15);
        z-index: 500;
    }
    .kc-layout-row[b-iao2eeum2y] { flex-wrap: wrap; gap: 6px; padding: 10px 12px; }
    .kc-tabs[b-iao2eeum2y]       { overflow-x: auto; flex-wrap: nowrap; }
    .kc-tabs[b-iao2eeum2y]::-webkit-scrollbar { display: none; }
    /* Tap-to-highlight foundation (Innovation #8 — CSS layer) */
    .kc-house-cell:focus[b-iao2eeum2y],
    .kc-house-cell:focus-within[b-iao2eeum2y],
    .kc-house-cell.highlighted[b-iao2eeum2y] {
        outline: 2px solid var(--accent);
        outline-offset: 2px;
        background: color-mix(in srgb, var(--accent) 10%, transparent);
        border-radius: 4px;
    }
}
/* /Components/LifeAreasPanel.razor.rz.scp.css */
.la-grid[b-clzstrc6s2]        { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 14px; }
.la-card[b-clzstrc6s2]        { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; display: flex; flex-direction: column; gap: 8px; }
.la-card-header[b-clzstrc6s2] { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.la-domain[b-clzstrc6s2]      { font-size: 13px; font-weight: 700; color: var(--text); }
.la-strength[b-clzstrc6s2]    { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; padding: 2px 8px; border-radius: 10px; }
.la-s-good[b-clzstrc6s2]      { background: color-mix(in srgb, var(--success) 15%, var(--surface)); color: var(--success); }
.la-s-mid[b-clzstrc6s2]       { background: color-mix(in srgb, #b8860b 15%, var(--surface)); color: #b8860b; }
.la-s-low[b-clzstrc6s2]       { background: color-mix(in srgb, var(--muted) 15%, var(--surface)); color: var(--muted); }
.la-detail[b-clzstrc6s2]      { font-size: 13px; color: var(--text); line-height: 1.6; margin: 0; }
.la-remedy[b-clzstrc6s2]      { display: flex; flex-direction: column; gap: 2px; padding-top: 6px; border-top: 1px solid var(--border); }
.la-remedy-label[b-clzstrc6s2] { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); }
.la-remedy-text[b-clzstrc6s2]  { font-size: 14px; color: var(--muted); line-height: 1.5; }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    /* Single-column card grid */
    .la-grid[b-clzstrc6s2]   { grid-template-columns: 1fr; gap: 10px; }
    .la-card[b-clzstrc6s2]   { padding: 14px 14px; gap: 7px; }
    .la-domain[b-clzstrc6s2] { font-size: 13px; }
    .la-detail[b-clzstrc6s2] { font-size: 12.5px; }
    .la-remedy-text[b-clzstrc6s2] { font-size: 13px; }
    .la-strength[b-clzstrc6s2] { font-size: 9.5px; padding: 2px 7px; }
}
/* /Components/MedicalPanel.razor.rz.scp.css */
/* Disclaimer banner */
.mp-disclaimer[b-ygixc9pmiw]    { display: flex; align-items: flex-start; gap: 10px; background: color-mix(in srgb, #f59e0b 8%, var(--surface)); border: 1px solid color-mix(in srgb, #f59e0b 30%, var(--border)); border-radius: var(--radius); padding: 12px 14px; margin-bottom: 18px; }
.mp-disc-icon[b-ygixc9pmiw]     { font-size: 16px; flex-shrink: 0; line-height: 1.5; }
.mp-disc-text[b-ygixc9pmiw]     { font-size: 13.5px; color: var(--muted); line-height: 1.6; }

/* Constitution card */
.mp-constitution[b-ygixc9pmiw]  { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; margin-bottom: 16px; }
.mp-const-header[b-ygixc9pmiw]  { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.mp-const-label[b-ygixc9pmiw]   { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); }
.mp-const-badge[b-ygixc9pmiw]   { font-size: 14px; font-weight: 700; color: var(--text); background: color-mix(in srgb, var(--accent) 10%, var(--surface)); padding: 4px 12px; border-radius: 20px; }
.mp-const-detail[b-ygixc9pmiw]  { font-size: 13px; color: var(--text); line-height: 1.6; margin: 0; }

/* Section title */
.mp-section-title[b-ygixc9pmiw] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); margin-bottom: 8px; }

/* Health status */
.mp-health-status[b-ygixc9pmiw] { background: color-mix(in srgb, var(--accent) 5%, var(--surface)); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px; margin-bottom: 16px; }
.mp-status-text[b-ygixc9pmiw]   { font-size: 13px; color: var(--text); line-height: 1.6; margin: 0; }

/* Body areas grid */
.mp-areas-grid[b-ygixc9pmiw]    { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; margin-bottom: 20px; }
.mp-area-card[b-ygixc9pmiw]     { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px; display: flex; flex-direction: column; gap: 6px; }
.mp-area-top[b-ygixc9pmiw]      { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.mp-area-name[b-ygixc9pmiw]     { font-size: 13px; font-weight: 700; color: var(--text); }
.mp-area-body[b-ygixc9pmiw]     { font-size: 10px; color: var(--muted); font-style: italic; }
.mp-area-sig[b-ygixc9pmiw]      { font-size: 14px; color: var(--muted); margin: 0; line-height: 1.5; }
.mp-area-tend[b-ygixc9pmiw]     { font-size: 14px; color: var(--text); margin: 0; line-height: 1.5; }
.mp-area-tip[b-ygixc9pmiw]      { display: flex; flex-direction: column; gap: 2px; padding-top: 8px; border-top: 1px solid var(--border); }
.mp-tip-label[b-ygixc9pmiw]     { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--accent); }
.mp-tip-text[b-ygixc9pmiw]      { font-size: 14px; color: var(--muted); line-height: 1.5; }

/* Disease timing */
.mp-disease-timing[b-ygixc9pmiw] { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px; margin-bottom: 16px; }
.mp-dt-text[b-ygixc9pmiw]        { font-size: 13px; color: var(--text); line-height: 1.6; margin: 0; }

/* Wellness tips */
.mp-wellness-section[b-ygixc9pmiw] { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; }
.mp-tips-list[b-ygixc9pmiw]        { padding-left: 18px; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.mp-tips-list li[b-ygixc9pmiw]     { font-size: 13px; color: var(--text); line-height: 1.6; }

@media (max-width: 600px) {
    .mp-areas-grid[b-ygixc9pmiw] { grid-template-columns: 1fr; }
}
/* /Components/MuhurtaPanel.razor.rz.scp.css */
/* Phase 4B — Electional Muhurta Panel */

.muh-root[b-3tdtkftdfg] {
    padding: 1.25rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ── Intro ─────────────────────────────────────────────────────────────── */
.muh-intro p[b-3tdtkftdfg] {
    margin: 0;
    font-size: .85rem;
    color: var(--muted);
    line-height: 1.55;
}

/* ── Controls ───────────────────────────────────────────────────────────── */
.muh-controls[b-3tdtkftdfg] {
    display: flex;
    flex-direction: column;
    gap: .9rem;
    background: var(--surface-alt, rgba(0,0,0,.04));
    border-radius: .75rem;
    padding: 1rem 1.25rem;
}

.muh-activity-grid[b-3tdtkftdfg] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.muh-act-btn[b-3tdtkftdfg] {
    display: flex;
    align-items: center;
    gap: .4rem;
    padding: .45rem .85rem;
    border-radius: 2rem;
    border: 1.5px solid var(--border, #ddd);
    background: transparent;
    cursor: pointer;
    font-size: .82rem;
    font-weight: 500;
    color: var(--text-main, #333);
    transition: all .15s ease;
}

.muh-act-btn:hover[b-3tdtkftdfg] { background: var(--surface-hover, rgba(0,0,0,.06)); }

.muh-act-active[b-3tdtkftdfg] {
    background: var(--accent, #7c3aed) !important;
    border-color: var(--accent, #7c3aed) !important;
    color: #fff !important;
}

.muh-act-icon[b-3tdtkftdfg] { font-size: 1rem; }

.muh-range-row[b-3tdtkftdfg] {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
}

.muh-field[b-3tdtkftdfg] {
    display: flex;
    flex-direction: column;
    gap: .25rem;
    flex: 1;
    min-width: 140px;
}

.muh-field-label[b-3tdtkftdfg] {
    font-size: .75rem;
    font-weight: 600;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: .04em;
}

.muh-input[b-3tdtkftdfg] {
    padding: .45rem .65rem;
    border-radius: .45rem;
    border: 1.5px solid var(--border, #ddd);
    background: var(--surface, #fff);
    color: var(--text-main, #333);
    font-size: .85rem;
}

.muh-input:focus[b-3tdtkftdfg] { outline: none; border-color: var(--accent, #7c3aed); }

/* ── States ─────────────────────────────────────────────────────────────── */
.muh-loading[b-3tdtkftdfg], .muh-error[b-3tdtkftdfg], .muh-empty[b-3tdtkftdfg] {
    padding: 2rem;
    text-align: center;
    font-size: .9rem;
    color: var(--muted);
    border-radius: .75rem;
    border: 1.5px dashed var(--border, #ddd);
}

.muh-error[b-3tdtkftdfg] { color: #b91c1c; }

.spinner-sm[b-3tdtkftdfg] {
    display: inline-block;
    width: .9rem; height: .9rem;
    border: 2px solid var(--border, #ddd);
    border-top-color: var(--accent, #7c3aed);
    border-radius: 50%;
    animation: spin-b-3tdtkftdfg .7s linear infinite;
    vertical-align: middle;
    margin-right: .4rem;
}
@keyframes spin-b-3tdtkftdfg { to { transform: rotate(360deg); } }

/* ── Best-day hero ──────────────────────────────────────────────────────── */
.muh-best-card[b-3tdtkftdfg] {
    background: linear-gradient(135deg, var(--accent, #7c3aed) 0%, #5b21b6 100%);
    border-radius: .9rem;
    padding: 1.25rem 1.5rem;
    color: #fff;
    display: flex;
    flex-direction: column;
    gap: .8rem;
}

.muh-best-header[b-3tdtkftdfg] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.muh-best-eyebrow[b-3tdtkftdfg] {
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .08em;
    opacity: .8;
}

.muh-best-date[b-3tdtkftdfg] {
    font-size: 1.65rem;
    font-weight: 700;
    line-height: 1.1;
    margin: .2rem 0;
}

.muh-best-sub[b-3tdtkftdfg] {
    font-size: .85rem;
    opacity: .85;
}

.muh-score-ring[b-3tdtkftdfg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 68px; height: 68px;
    border-radius: 50%;
    border: 3px solid rgba(255,255,255,.4);
    flex-shrink: 0;
}

.muh-ring-high[b-3tdtkftdfg] { border-color: #86efac; }
.muh-ring-mid[b-3tdtkftdfg]  { border-color: #fde68a; }
.muh-ring-low[b-3tdtkftdfg]  { border-color: #fca5a5; }

.muh-score-num[b-3tdtkftdfg] {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
}

.muh-score-sub[b-3tdtkftdfg] {
    font-size: .65rem;
    opacity: .75;
}

.muh-best-window[b-3tdtkftdfg] {
    font-size: .85rem;
    opacity: .9;
    background: rgba(0,0,0,.15);
    border-radius: .4rem;
    padding: .35rem .75rem;
}

.muh-hl-list[b-3tdtkftdfg] {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: .3rem;
}

.muh-hl-good[b-3tdtkftdfg], .muh-hl-warn[b-3tdtkftdfg] {
    font-size: .82rem;
    padding: .25rem .5rem;
    border-radius: .35rem;
}

.muh-hl-good[b-3tdtkftdfg] { background: rgba(134,239,172,.2); color: #bbf7d0; }
.muh-hl-warn[b-3tdtkftdfg] { background: rgba(252,211,77,.2);  color: #fde68a; }

/* ── Section title ──────────────────────────────────────────────────────── */
.muh-section-title[b-3tdtkftdfg] {
    font-size: .78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--muted);
}

/* ── Results table ──────────────────────────────────────────────────────── */
.muh-table-wrap[b-3tdtkftdfg] { overflow-x: auto; border-radius: .75rem; border: 1px solid var(--border, #ddd); }

.muh-table[b-3tdtkftdfg] {
    width: 100%;
    border-collapse: collapse;
    font-size: .83rem;
    background: var(--surface);
}
.muh-table thead tr[b-3tdtkftdfg] { background: var(--surface2); }

.muh-table th[b-3tdtkftdfg] {
    padding: .6rem .75rem;
    text-align: left;
    font-size: .72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--muted);
    border-bottom: 1px solid var(--border, #ddd);
    background: var(--surface-alt, rgba(0,0,0,.03));
    white-space: nowrap;
}

.muh-table td[b-3tdtkftdfg] {
    padding: .6rem .75rem;
    border-bottom: 1px solid var(--border-light, rgba(0,0,0,.06));
    vertical-align: middle;
}

.muh-table tbody tr:last-child td[b-3tdtkftdfg] { border-bottom: none; }
.muh-table tbody tr:hover[b-3tdtkftdfg] { background: var(--surface-hover, rgba(0,0,0,.025)); }

.muh-row-best[b-3tdtkftdfg] { background: var(--accent-subtle, rgba(124,58,237,.06)) !important; }

.muh-rank[b-3tdtkftdfg] {
    font-weight: 700;
    font-size: .9rem;
    color: var(--accent, #7c3aed);
    text-align: center;
    font-variant-numeric: tabular-nums;
}

.muh-td-date .muh-date-day[b-3tdtkftdfg] { font-weight: 600; }
.muh-td-date .muh-date-vara[b-3tdtkftdfg] { font-size: .75rem; color: var(--muted); }

/* Score bar */
.muh-td-score[b-3tdtkftdfg] {
    min-width: 90px;
    display: flex;
    align-items: center;
    gap: .5rem;
}

.muh-score-bar-wrap[b-3tdtkftdfg] {
    flex: 1;
    height: 6px;
    background: var(--border, #ddd);
    border-radius: 3px;
    overflow: hidden;
}

.muh-score-bar[b-3tdtkftdfg] {
    height: 100%;
    border-radius: 3px;
    transition: width .4s ease;
}

.muh-bar-high[b-3tdtkftdfg] { background: #22c55e; }
.muh-bar-mid[b-3tdtkftdfg]  { background: #f59e0b; }
.muh-bar-low[b-3tdtkftdfg]  { background: #ef4444; }

.muh-score-label[b-3tdtkftdfg] {
    font-weight: 700;
    font-size: .82rem;
    font-variant-numeric: tabular-nums;
    min-width: 24px;
    text-align: right;
}

.muh-text-high[b-3tdtkftdfg] { color: #16a34a; }
.muh-text-mid[b-3tdtkftdfg]  { color: #d97706; }
.muh-text-low[b-3tdtkftdfg]  { color: #dc2626; }

.muh-cell-main[b-3tdtkftdfg] { font-weight: 500; }
.muh-cell-sub[b-3tdtkftdfg]  { font-size: .73rem; color: var(--muted); margin-top: .1rem; }

.muh-yoga-good[b-3tdtkftdfg] { color: #15803d; }
.muh-yoga-bad[b-3tdtkftdfg]  { color: #b91c1c; }

.muh-td-window[b-3tdtkftdfg] { font-size: .8rem; color: var(--muted); white-space: nowrap; }

.muh-td-notes .muh-note-good[b-3tdtkftdfg],
.muh-td-notes .muh-note-warn[b-3tdtkftdfg] {
    font-size: .75rem;
    padding: .15rem .4rem;
    border-radius: .25rem;
    margin-bottom: .2rem;
}

.muh-note-good[b-3tdtkftdfg] { background: rgba(22,163,74,.1);  color: #15803d; }
.muh-note-warn[b-3tdtkftdfg] { background: rgba(234,179,8,.1);  color: #a16207; }

/* ── Disclaimer ─────────────────────────────────────────────────────────── */
.muh-disclaimer[b-3tdtkftdfg] {
    font-size: .73rem;
    color: var(--muted);
    line-height: 1.55;
    padding: .75rem 1rem;
    background: var(--surface-alt, rgba(0,0,0,.03));
    border-radius: .6rem;
    border-left: 3px solid var(--border, #ddd);
}

/* ── Dark theme ─────────────────────────────────────────────────────────── */
@media (prefers-color-scheme: dark) {
    .muh-controls[b-3tdtkftdfg]          { background: rgba(255,255,255,.05); }
    .muh-act-btn[b-3tdtkftdfg]           { border-color: rgba(255,255,255,.15); color: #ddd; }
    .muh-act-btn:hover[b-3tdtkftdfg]     { background: rgba(255,255,255,.08); }
    .muh-input[b-3tdtkftdfg]             { background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.15); color: #e5e7eb; }
    .muh-table th[b-3tdtkftdfg]          { background: rgba(255,255,255,.05); }
    .muh-table td[b-3tdtkftdfg]          { border-color: rgba(255,255,255,.08); }
    .muh-table tbody tr:hover[b-3tdtkftdfg] { background: rgba(255,255,255,.04); }
    .muh-row-best[b-3tdtkftdfg]          { background: rgba(124,58,237,.12) !important; }
    .muh-disclaimer[b-3tdtkftdfg]        { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.15); }
    .muh-score-bar-wrap[b-3tdtkftdfg]    { background: rgba(255,255,255,.15); }
    .muh-table-wrap[b-3tdtkftdfg]        { border-color: rgba(255,255,255,.12); }
    .muh-loading[b-3tdtkftdfg], .muh-error[b-3tdtkftdfg], .muh-empty[b-3tdtkftdfg] { border-color: rgba(255,255,255,.15); }
    .muh-text-high[b-3tdtkftdfg] { color: #4ade80; }
    .muh-text-mid[b-3tdtkftdfg]  { color: #fbbf24; }
    .muh-text-low[b-3tdtkftdfg]  { color: #f87171; }
    .muh-note-good[b-3tdtkftdfg] { background: rgba(74,222,128,.12); color: #4ade80; }
    .muh-note-warn[b-3tdtkftdfg] { background: rgba(251,191,36,.12); color: #fbbf24; }
    .muh-yoga-good[b-3tdtkftdfg] { color: #4ade80; }
    .muh-yoga-bad[b-3tdtkftdfg]  { color: #f87171; }
    .muh-hl-good[b-3tdtkftdfg]   { background: rgba(134,239,172,.15); }
    .muh-hl-warn[b-3tdtkftdfg]   { background: rgba(252,211,77,.12); }
}

:root[data-theme="dark"]  .muh-controls[b-3tdtkftdfg],
:root[data-theme="dark"]  .muh-table th[b-3tdtkftdfg]      { background: rgba(255,255,255,.05); }
:root[data-theme="dark"]  .muh-act-btn[b-3tdtkftdfg]       { border-color: rgba(255,255,255,.15); color: #ddd; }
:root[data-theme="dark"]  .muh-input[b-3tdtkftdfg]         { background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.15); color: #e5e7eb; }
:root[data-theme="dark"]  .muh-table-wrap[b-3tdtkftdfg]    { border-color: rgba(255,255,255,.12); }
:root[data-theme="dark"]  .muh-row-best[b-3tdtkftdfg]      { background: rgba(124,58,237,.12) !important; }
:root[data-theme="dark"]  .muh-disclaimer[b-3tdtkftdfg]    { background: rgba(255,255,255,.05); }
:root[data-theme="dark"]  .muh-note-good[b-3tdtkftdfg]     { background: rgba(74,222,128,.12); color: #4ade80; }
:root[data-theme="dark"]  .muh-note-warn[b-3tdtkftdfg]     { background: rgba(251,191,36,.12); color: #fbbf24; }
:root[data-theme="dark"]  .muh-yoga-good[b-3tdtkftdfg]     { color: #4ade80; }
:root[data-theme="dark"]  .muh-yoga-bad[b-3tdtkftdfg]      { color: #f87171; }
:root[data-theme="dark"]  .muh-text-high[b-3tdtkftdfg]     { color: #4ade80; }
:root[data-theme="dark"]  .muh-text-mid[b-3tdtkftdfg]      { color: #fbbf24; }
:root[data-theme="dark"]  .muh-text-low[b-3tdtkftdfg]      { color: #f87171; }

:root[data-theme="light"] .muh-controls[b-3tdtkftdfg]      { background: rgba(0,0,0,.04); }
:root[data-theme="light"] .muh-act-btn[b-3tdtkftdfg]       { border-color: #ddd; color: #333; }
:root[data-theme="light"] .muh-input[b-3tdtkftdfg]         { background: #fff; border-color: #ddd; color: #333; }
:root[data-theme="light"] .muh-table th[b-3tdtkftdfg]      { background: rgba(0,0,0,.03); }
:root[data-theme="light"] .muh-row-best[b-3tdtkftdfg]      { background: rgba(124,58,237,.06) !important; }
:root[data-theme="light"] .muh-disclaimer[b-3tdtkftdfg]    { background: rgba(0,0,0,.03); }
:root[data-theme="light"] .muh-note-good[b-3tdtkftdfg]     { background: rgba(22,163,74,.1);  color: #15803d; }
:root[data-theme="light"] .muh-note-warn[b-3tdtkftdfg]     { background: rgba(234,179,8,.1);  color: #a16207; }
:root[data-theme="light"] .muh-yoga-good[b-3tdtkftdfg]     { color: #15803d; }
:root[data-theme="light"] .muh-yoga-bad[b-3tdtkftdfg]      { color: #b91c1c; }
:root[data-theme="light"] .muh-text-high[b-3tdtkftdfg]     { color: #16a34a; }
:root[data-theme="light"] .muh-text-mid[b-3tdtkftdfg]      { color: #d97706; }
:root[data-theme="light"] .muh-text-low[b-3tdtkftdfg]      { color: #dc2626; }

/* ── Mobile ── */
@media (max-width: 767px) {
    .muh-act-btn[b-3tdtkftdfg]   { min-height: 44px; padding: .7rem 1.1rem; font-size: .88rem; }
    .muh-score-sub[b-3tdtkftdfg] { font-size: .72rem; }
    .muh-cell-sub[b-3tdtkftdfg]  { font-size: .78rem; }
    .muh-tab[b-3tdtkftdfg]       { min-height: 44px; }
    .muh-header[b-3tdtkftdfg]    { padding: 14px 16px; }
    /* Fade cue for muhurta time strip (Innovation #7) */
    .muh-time-strip[b-3tdtkftdfg] { position: relative; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .muh-strip-fade[b-3tdtkftdfg]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 28px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
}
/* /Components/NakshatraPanel.razor.rz.scp.css */
.nak-hero[b-p8vogb5frw]    { margin-bottom: 14px; }
.nak-title[b-p8vogb5frw]   { font-family: Palatino Linotype, Palatino, Georgia, serif; font-size: 22px; font-weight: 700; color: var(--accent); }
.nak-pada[b-p8vogb5frw]    { color: var(--muted); font-size: 16px; }
.nak-pills[b-p8vogb5frw]   { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.nak-pill[b-p8vogb5frw]    { background: var(--surface2); border: 1px solid var(--border); border-radius: 12px; padding: 3px 10px; font-size: 13px; font-weight: 600; }
.nak-reading[b-p8vogb5frw] { font-family: Palatino Linotype, Palatino, Georgia, serif; font-size: 14px; line-height: 1.75; color: var(--text); padding: 14px 18px; background: var(--surface2); border-radius: var(--radius); margin-bottom: 14px; border-left: 3px solid var(--accent); }
.nak-grid[b-p8vogb5frw]    { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media (max-width: 700px) { .nak-grid[b-p8vogb5frw] { grid-template-columns: 1fr; } }
/* /Components/NavTaraPanel.razor.rz.scp.css */
.navtara-birth[b-faixlb9k5n] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    padding: 10px 14px;
    background: var(--surface);
    border-radius: var(--radius);
    border: 1px solid var(--border);
}

.navtara-birth-label[b-faixlb9k5n] { font-size: 14px; color: var(--muted); }
.navtara-birth-nak[b-faixlb9k5n]   { font-size: 16px; font-weight: 700; color: var(--text); }
.navtara-gandamool[b-faixlb9k5n]   {
    font-size: 13px;
    padding: 2px 8px;
    background: color-mix(in srgb, #b8860b 15%, var(--surface));
    border: 1px solid color-mix(in srgb, #b8860b 40%, var(--border));
    border-radius: 999px;
    color: #b8860b;
}

.navtara-note[b-faixlb9k5n] {
    font-size: 14px;
    color: var(--muted);
    line-height: 1.5;
    margin-bottom: 14px;
    padding: 8px 12px;
    border-left: 3px solid var(--accent);
    background: var(--surface);
    border-radius: 0 var(--radius) var(--radius) 0;
}

.navtara-grid[b-faixlb9k5n] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 8px;
}

.navtara-card[b-faixlb9k5n] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 10px 12px;
    text-align: center;
}

.navtara-num[b-faixlb9k5n]  { font-size: 20px; font-weight: 700; color: var(--accent); }
.navtara-name[b-faixlb9k5n] { font-size: 13px; font-weight: 600; color: var(--text); margin: 2px 0; }
.navtara-nak[b-faixlb9k5n]  { font-size: 14px; color: var(--muted); }

.navtara-quality[b-faixlb9k5n] { font-size: 10px; margin-top: 6px; padding: 2px 6px; border-radius: 999px; display: inline-block; }
.navtara-q--good[b-faixlb9k5n] { background: color-mix(in srgb, #2ecc71 12%, var(--surface)); color: #1a8a50; }
.navtara-q--bad[b-faixlb9k5n]  { background: color-mix(in srgb, #e74c3c 12%, var(--surface)); color: #c0392b; }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    /* Collapse to 3 cards per row (was auto-fill 130px, which gives ~2-3 on 375px) */
    .navtara-grid[b-faixlb9k5n] { grid-template-columns: repeat(3, 1fr); gap: 6px; }

    .navtara-card[b-faixlb9k5n]   { padding: 8px 8px; }
    .navtara-num[b-faixlb9k5n]    { font-size: 17px; }
    .navtara-name[b-faixlb9k5n]   { font-size: 11.5px; }
    .navtara-nak[b-faixlb9k5n]    { font-size: 12px; }
    .navtara-quality[b-faixlb9k5n] { font-size: 9px; padding: 2px 5px; }

    .navtara-birth[b-faixlb9k5n]  { padding: 9px 12px; gap: 8px; margin-bottom: 8px; }
    .navtara-birth-label[b-faixlb9k5n] { font-size: 13px; }
    .navtara-birth-nak[b-faixlb9k5n]   { font-size: 15px; }

    .navtara-note[b-faixlb9k5n]   { font-size: 13px; padding: 7px 10px; margin-bottom: 10px; }
}
/* /Components/NotificationsPanel.razor.rz.scp.css */
/* Phase 4C — Notifications Panel */

.notif-root[b-43ohim06pp] {
    padding: 1.25rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    max-width: 600px;
}

.notif-intro p[b-43ohim06pp] {
    margin: 0;
    font-size: .875rem;
    color: var(--muted);
    line-height: 1.6;
}

/* ── Form card ──────────────────────────────────────────────────────────── */
.notif-card[b-43ohim06pp], .notif-preview-card[b-43ohim06pp] {
    border: 1.5px solid var(--border, #ddd);
    border-radius: .75rem;
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: .9rem;
}

.notif-preview-card[b-43ohim06pp] { background: var(--surface-alt, rgba(0,0,0,.025)); }

.notif-card-title[b-43ohim06pp] {
    font-size: .95rem;
    font-weight: 700;
    color: var(--text-main, #111);
}

/* ── Fields ─────────────────────────────────────────────────────────────── */
.notif-field[b-43ohim06pp] {
    display: flex;
    flex-direction: column;
    gap: .3rem;
}

.notif-label[b-43ohim06pp] {
    font-size: .75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--muted);
}

.notif-input[b-43ohim06pp] {
    padding: .55rem .75rem;
    border-radius: .5rem;
    border: 1.5px solid var(--border, #ddd);
    background: var(--surface, #fff);
    color: var(--text-main, #333);
    font-size: .9rem;
}

.notif-input:focus[b-43ohim06pp] { outline: none; border-color: var(--accent, #7c3aed); }
.notif-input-err[b-43ohim06pp]   { border-color: #dc2626 !important; }

.notif-err-msg[b-43ohim06pp] { font-size: .75rem; color: #dc2626; }
.notif-hint[b-43ohim06pp]    { font-size: .75rem; color: var(--muted); }

.notif-api-err[b-43ohim06pp] {
    padding: .5rem .75rem;
    background: rgba(220,38,38,.08);
    border-radius: .4rem;
    font-size: .82rem;
    color: #b91c1c;
}

/* ── Buttons ─────────────────────────────────────────────────────────────── */
.notif-btn-primary[b-43ohim06pp] {
    padding: .65rem 1.25rem;
    background: var(--accent, #7c3aed);
    color: #fff;
    border: none;
    border-radius: .5rem;
    font-size: .9rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity .15s;
    align-self: flex-start;
}

.notif-btn-primary:hover:not(:disabled)[b-43ohim06pp] { opacity: .88; }
.notif-btn-primary:disabled[b-43ohim06pp] { opacity: .5; cursor: not-allowed; }

.notif-btn-ghost[b-43ohim06pp] {
    padding: .5rem 1rem;
    background: transparent;
    border: 1.5px solid var(--border, #ddd);
    border-radius: .5rem;
    font-size: .85rem;
    color: var(--text-main, #333);
    cursor: pointer;
    transition: background .15s;
}

.notif-btn-ghost:hover[b-43ohim06pp] { background: var(--surface-hover, rgba(0,0,0,.05)); }

/* ── Success state ──────────────────────────────────────────────────────── */
.notif-success[b-43ohim06pp] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    background: rgba(22,163,74,.08);
    border: 1.5px solid rgba(22,163,74,.3);
    border-radius: .75rem;
    padding: 1.1rem 1.25rem;
}

.notif-success-icon[b-43ohim06pp] { font-size: 1.75rem; flex-shrink: 0; }
.notif-success-title[b-43ohim06pp] { font-weight: 700; font-size: .95rem; color: #15803d; }
.notif-success-sub[b-43ohim06pp]   { font-size: .84rem; color: var(--muted); margin-top: .25rem; }

.notif-actions[b-43ohim06pp] { display: flex; gap: .5rem; }

/* ── Feature list ──────────────────────────────────────────────────────── */
.notif-features[b-43ohim06pp] {
    display: flex;
    flex-direction: column;
    gap: .75rem;
}

.notif-feature[b-43ohim06pp] {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
}

.notif-feat-icon[b-43ohim06pp] { font-size: 1.2rem; flex-shrink: 0; margin-top: .05rem; }
.notif-feat-title[b-43ohim06pp] { font-size: .87rem; font-weight: 600; color: var(--text-main, #111); }
.notif-feat-desc[b-43ohim06pp]  { font-size: .78rem; color: var(--muted); margin-top: .15rem; }

/* ── Disclaimer ─────────────────────────────────────────────────────────── */
.notif-disclaimer[b-43ohim06pp] {
    font-size: .73rem;
    color: var(--muted);
    line-height: 1.55;
    padding: .75rem 1rem;
    background: var(--surface-alt, rgba(0,0,0,.03));
    border-radius: .6rem;
    border-left: 3px solid var(--border, #ddd);
}

/* ── Dark theme ─────────────────────────────────────────────────────────── */
@media (prefers-color-scheme: dark) {
    .notif-input[b-43ohim06pp]  { background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.15); color: #e5e7eb; }
    .notif-card[b-43ohim06pp]   { border-color: rgba(255,255,255,.12); }
    .notif-preview-card[b-43ohim06pp] { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.12); }
    .notif-success[b-43ohim06pp] { background: rgba(22,163,74,.12); border-color: rgba(22,163,74,.25); }
    .notif-success-title[b-43ohim06pp] { color: #4ade80; }
    .notif-disclaimer[b-43ohim06pp] { background: rgba(255,255,255,.04); }
    .notif-btn-ghost[b-43ohim06pp] { border-color: rgba(255,255,255,.15); color: #ddd; }
}

:root[data-theme="dark"] .notif-input[b-43ohim06pp]       { background: rgba(255,255,255,.07); border-color: rgba(255,255,255,.15); color: #e5e7eb; }
:root[data-theme="dark"] .notif-card[b-43ohim06pp]        { border-color: rgba(255,255,255,.12); }
:root[data-theme="dark"] .notif-preview-card[b-43ohim06pp]{ background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.12); }
:root[data-theme="dark"] .notif-success[b-43ohim06pp]     { background: rgba(22,163,74,.12); border-color: rgba(22,163,74,.25); }
:root[data-theme="dark"] .notif-success-title[b-43ohim06pp] { color: #4ade80; }
:root[data-theme="dark"] .notif-disclaimer[b-43ohim06pp]  { background: rgba(255,255,255,.04); }
:root[data-theme="dark"] .notif-btn-ghost[b-43ohim06pp]   { border-color: rgba(255,255,255,.15); color: #ddd; }

:root[data-theme="light"] .notif-input[b-43ohim06pp]      { background: #fff; border-color: #ddd; color: #333; }
:root[data-theme="light"] .notif-card[b-43ohim06pp]       { border-color: #ddd; }
:root[data-theme="light"] .notif-success[b-43ohim06pp]    { background: rgba(22,163,74,.08); border-color: rgba(22,163,74,.3); }
:root[data-theme="light"] .notif-success-title[b-43ohim06pp] { color: #15803d; }
/* /Components/PlaceSearch.razor.rz.scp.css */
.ps-wrap[b-iaktkbbm20] {
    position: relative;
    display: flex;
    flex-direction: column;
}

.ps-searching[b-iaktkbbm20] {
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
    color: var(--accent2);
}

.ps-dropdown[b-iaktkbbm20] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--surface);
    border: 1px solid var(--border);
    border-top: none;
    border-radius: 0 0 var(--radius) var(--radius);
    list-style: none;
    z-index: 200;
    max-height: 220px;
    overflow-y: auto;
    box-shadow: 0 8px 24px rgba(0,0,0,.2);
}

.ps-item[b-iaktkbbm20] {
    padding: 10px 12px;
    cursor: pointer;
    border-bottom: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.ps-item:last-child[b-iaktkbbm20] { border-bottom: none; }
.ps-item:hover[b-iaktkbbm20] { background: var(--surface2); }

.ps-name[b-iaktkbbm20] { font-size: 13px; color: var(--text); }
.ps-tz[b-iaktkbbm20]   { font-size: 10px; color: var(--muted); }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    /* Dropdown: taller items for touch accuracy */
    .ps-item[b-iaktkbbm20] { padding: 12px 14px; gap: 3px; }
    .ps-name[b-iaktkbbm20]  { font-size: 14px; }
    .ps-tz[b-iaktkbbm20]    { font-size: 11px; }
    /* Max height reduced so dropdown doesn't cover the keyboard */
    .ps-dropdown[b-iaktkbbm20] { max-height: 180px; }
}
/* /Components/PoliticalTimingPanel.razor.rz.scp.css */
.pt-overview[b-86fu1ln8o6] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.pt-domain-box[b-86fu1ln8o6] {
    flex: 1;
    min-width: 160px;
    background: var(--surface, #f9fafb);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 8px;
    padding: 10px 14px;
}

.pt-domain-label[b-86fu1ln8o6] {
    font-size: 0.68rem;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--muted, #6b7280);
    margin-bottom: 3px;
}

.pt-domain-value[b-86fu1ln8o6] {
    font-size: 0.95rem;
    font-weight: 600;
}

.pt-strength-badge[b-86fu1ln8o6] {
    flex-shrink: 0;
    padding: 6px 16px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.pt-s-strong[b-86fu1ln8o6],
.pt-s-excellent[b-86fu1ln8o6],
.pt-s-favorable[b-86fu1ln8o6] {
    background: #d1fae5;
    color: #065f46;
}

.pt-s-moderate[b-86fu1ln8o6],
.pt-s-mixed[b-86fu1ln8o6],
.pt-s-average[b-86fu1ln8o6] {
    background: #fef3c7;
    color: #92400e;
}

.pt-s-weak[b-86fu1ln8o6],
.pt-s-challenged[b-86fu1ln8o6],
.pt-s-difficult[b-86fu1ln8o6],
.pt-s-unfavorable[b-86fu1ln8o6] {
    background: #fee2e2;
    color: #991b1b;
}

.pt-card[b-86fu1ln8o6] {
    background: var(--surface, #f9fafb);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 10px;
    padding: 14px 16px;
    margin-bottom: 12px;
}

.pt-remedy-card[b-86fu1ln8o6] {
    border-color: #7c3aed;
    background: rgba(124, 58, 237, 0.04);
}

.pt-card-title[b-86fu1ln8o6] {
    font-size: 0.92rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--muted, #6b7280);
    margin-bottom: 8px;
}

.pt-remedy-card .pt-card-title[b-86fu1ln8o6] {
    color: #7c3aed;
}

.pt-body[b-86fu1ln8o6] {
    font-size: 1.0rem;
    line-height: 1.65;
    color: var(--text, #111827);
    margin: 0;
}
/* /Components/PredictiveCalendarPanel.razor.rz.scp.css */
/* ── Predictive Calendar Panel ───────────────────────────────────────────── */

.pc-root[b-95mpn11wh2] { padding: 0 0 32px; }

.pc-loading[b-95mpn11wh2] { display:flex; flex-direction:column; align-items:center; gap:12px; padding:48px; color:var(--muted); }
.pc-error[b-95mpn11wh2]   { background:var(--danger-bg,#fef2f2); color:var(--danger,#b91c1c); padding:16px; border-radius:8px; margin:16px 0; }

/* ── Toolbar ─────────────────────────────────────────────────────────────── */
.pc-toolbar[b-95mpn11wh2] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 0 16px;
    justify-content: center;
}
.pc-nav-btn[b-95mpn11wh2] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 5px 12px;
    cursor: pointer;
    color: var(--text);
    font-size: 15px;
    transition: background .15s;
}
.pc-nav-btn:hover[b-95mpn11wh2] { background: var(--border); }
.pc-month-label[b-95mpn11wh2] { font-size: 18px; font-weight: 700; color: var(--text); min-width: 160px; text-align: center; }

/* ── Synopsis ────────────────────────────────────────────────────────────── */
.pc-synopsis[b-95mpn11wh2] {
    background: var(--surface);
    border-left: 3px solid #6366f1;
    border-radius: 0 8px 8px 0;
    padding: 12px 14px;
    font-size: 13.5px;
    color: var(--text);
    line-height: 1.6;
    margin-bottom: 14px;
}

/* ── Legend ──────────────────────────────────────────────────────────────── */
.pc-legend[b-95mpn11wh2] {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 14px;
    font-size: 14px;
    color: var(--muted);
}
.pc-legend-item[b-95mpn11wh2] { display: flex; align-items: center; gap: 5px; }
.pc-dot[b-95mpn11wh2] { font-size: 14px; }
.pc-dot-excellent[b-95mpn11wh2]    { color: #059669; }
.pc-dot-good[b-95mpn11wh2]         { color: #0284c7; }
.pc-dot-moderate[b-95mpn11wh2]     { color: #64748b; }
.pc-dot-sensitive[b-95mpn11wh2]    { color: #d97706; }
.pc-dot-inauspicious[b-95mpn11wh2] { color: #dc2626; }

/* ── Calendar grid ───────────────────────────────────────────────────────── */
.pc-calendar[b-95mpn11wh2] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
    margin-bottom: 18px;
}

.pc-dow-header[b-95mpn11wh2] {
    text-align: center;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--muted);
    padding: 8px 0;
}

.pc-empty-cell[b-95mpn11wh2] { background: transparent; }

.pc-day-cell[b-95mpn11wh2] {
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 6px 6px 5px;
    cursor: pointer;
    background: var(--surface);
    transition: transform .12s, box-shadow .12s;
    min-height: 62px;
    position: relative;
}
.pc-day-cell:hover[b-95mpn11wh2] {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0,0,0,.12);
    z-index: 2;
}

.pc-day-top[b-95mpn11wh2] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 3px;
}
.pc-day-num[b-95mpn11wh2]    { font-size: 14px; font-weight: 600; color: var(--text); }
.pc-day-emoji[b-95mpn11wh2]  { font-size: 14px; }
.pc-today[b-95mpn11wh2]      { ring: 2px solid #6366f1; outline: 2px solid #6366f1; outline-offset: -2px; }
.pc-today-num[b-95mpn11wh2]  { color: #6366f1; }
.pc-day-moon[b-95mpn11wh2]   { font-size: 10px; color: var(--muted); font-weight: 500; }
.pc-day-tithi[b-95mpn11wh2]  { font-size: 10px; color: var(--muted); }

/* Quality colouring */
.pc-quality-excellent[b-95mpn11wh2]    { border-color: #059669; border-left: 3px solid #059669; }
.pc-quality-good[b-95mpn11wh2]         { border-color: #0284c7; border-left: 3px solid #0284c7; }
.pc-quality-moderate[b-95mpn11wh2]     { /* default */ }
.pc-quality-sensitive[b-95mpn11wh2]    { border-left: 3px solid #d97706; }
.pc-quality-inauspicious[b-95mpn11wh2] { border-left: 3px solid #dc2626; opacity: .85; }

/* ── Detail drawer ───────────────────────────────────────────────────────── */
.pc-detail[b-95mpn11wh2] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 18px;
    margin-top: 8px;
    animation: fadeIn-b-95mpn11wh2 .18s ease;
}

@keyframes fadeIn-b-95mpn11wh2 { from { opacity:0; transform:translateY(4px) } to { opacity:1; transform:none } }

.pc-detail-header[b-95mpn11wh2] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 14px;
}
.pc-detail-date[b-95mpn11wh2] { font-size: 16px; font-weight: 700; color: var(--text); }
.pc-detail-quality[b-95mpn11wh2] { font-size: 13px; margin-top: 2px; }
.pc-close-btn[b-95mpn11wh2] {
    background: none; border: none; cursor: pointer; color: var(--muted);
    font-size: 16px; padding: 2px 6px; border-radius: 4px;
}
.pc-close-btn:hover[b-95mpn11wh2] { background: var(--border); }

.pc-detail-grid[b-95mpn11wh2] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px,1fr));
    gap: 10px;
    margin-bottom: 14px;
}
.pc-detail-item[b-95mpn11wh2] {
    background: var(--bg,#fff);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 10px 12px;
}
.pc-di-label[b-95mpn11wh2] { font-size: 10px; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); margin-bottom: 3px; }
.pc-di-value[b-95mpn11wh2] { font-size: 15px; font-weight: 600; color: var(--text); }
.pc-di-sub[b-95mpn11wh2]   { font-size: 13px; color: var(--muted); margin-top: 2px; }

.pc-time-windows[b-95mpn11wh2] { display: flex; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.pc-tw-item[b-95mpn11wh2] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 8px;
    font-size: 13px;
    flex: 1;
    min-width: 200px;
}
.pc-tw-caution[b-95mpn11wh2] { background: rgba(220,38,38,.08); border: 1px solid rgba(220,38,38,.2); }
.pc-tw-good[b-95mpn11wh2]    { background: rgba(5,150,105,.08);  border: 1px solid rgba(5,150,105,.2); }
.pc-tw-label[b-95mpn11wh2]   { font-weight: 600; color: var(--text); white-space: nowrap; }
.pc-tw-val[b-95mpn11wh2]     { font-size: 12.5px; color: var(--muted); }

.pc-detail-section-label[b-95mpn11wh2] {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--muted);
    margin: 10px 0 6px;
}

.pc-event[b-95mpn11wh2] {
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 13px;
    margin-bottom: 5px;
    line-height: 1.4;
}
.pc-event-good[b-95mpn11wh2]    { background: rgba(5,150,105,.08); color: #065f46; border-left: 3px solid #059669; }
.pc-event-caution[b-95mpn11wh2] { background: rgba(217,119,6,.08); color: #92400e;  border-left: 3px solid #d97706; }

/* Quality text classes */
.pc-q-excellent[b-95mpn11wh2]    { color: #059669; font-weight: 600; }
.pc-q-good[b-95mpn11wh2]         { color: #0284c7; font-weight: 600; }
.pc-q-moderate[b-95mpn11wh2]     { color: var(--muted); }
.pc-q-sensitive[b-95mpn11wh2]    { color: #d97706; font-weight: 600; }
.pc-q-inauspicious[b-95mpn11wh2] { color: #dc2626; font-weight: 600; }

@media (prefers-color-scheme: dark) {
    .pc-event-good[b-95mpn11wh2]    { color: #6ee7b7; }
    .pc-event-caution[b-95mpn11wh2] { color: #fcd34d; }
    .pc-q-excellent[b-95mpn11wh2]   { color: #6ee7b7; }
}
:root[data-theme="dark"] .pc-event-good[b-95mpn11wh2]    { color: #6ee7b7; }
:root[data-theme="dark"] .pc-event-caution[b-95mpn11wh2] { color: #fcd34d; }
:root[data-theme="dark"] .pc-q-excellent[b-95mpn11wh2]   { color: #6ee7b7; }
:root[data-theme="light"] .pc-event-good[b-95mpn11wh2]    { color: #065f46; }
:root[data-theme="light"] .pc-event-caution[b-95mpn11wh2] { color: #92400e; }

/* ── Mobile ── */
@media (max-width: 767px) {
    .pc-grid-outer[b-95mpn11wh2]  { overflow-x: auto; -webkit-overflow-scrolling: touch; position: relative; }
    .pc-grid-outer[b-95mpn11wh2]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 32px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
    .pc-calendar[b-95mpn11wh2]    { min-width: 480px; }
    .pc-day-moon[b-95mpn11wh2],
    .pc-day-tithi[b-95mpn11wh2]   { font-size: .72rem; }
    .pc-di-label[b-95mpn11wh2]    { font-size: .72rem; }
    .pc-tw-item[b-95mpn11wh2]     { min-width: 160px; }
    .pc-nav-btn[b-95mpn11wh2]     { min-height: 44px; min-width: 44px; }
    .pc-header[b-95mpn11wh2]      { padding: 14px 16px; }
}
/* /Components/RegionalPanchangamPanel.razor.rz.scp.css */
/* ── Regional Panchangam Panel ────────────────────────────────────────────── */
.rp-root[b-qk22513t4z]        { max-width: 900px; }

/* Toolbar */
.rp-toolbar[b-qk22513t4z]     { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 18px; }
.rp-region-tabs[b-qk22513t4z] { display: flex; gap: 6px; flex-wrap: wrap; }
.rp-rtab[b-qk22513t4z]        { font-size: 14px; padding: 6px 14px; border-radius: 20px; border: 1px solid var(--border); background: var(--surface); color: var(--muted); cursor: pointer; font-weight: 600; transition: all .15s; }
.rp-rtab:hover[b-qk22513t4z]  { border-color: var(--accent); color: var(--text); }
.rp-rtab-active[b-qk22513t4z] { background: var(--accent); color: #fff !important; border-color: var(--accent) !important; }

.rp-date-pick[b-qk22513t4z]   { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.rp-date-label[b-qk22513t4z]  { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); }
.rp-date-input[b-qk22513t4z]  { font-size: 13px; padding: 5px 8px; border: 1px solid var(--border); border-radius: 6px; background: var(--surface); color: var(--text); }

/* Loading / error */
.rp-loading[b-qk22513t4z]     { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--muted); padding: 20px; }
.rp-error[b-qk22513t4z]       { color: var(--danger); font-size: 13px; padding: 16px; }
.spinner-sm[b-qk22513t4z]     { width: 16px; height: 16px; border: 2px solid var(--border); border-top-color: var(--accent); border-radius: 50%; animation: spin-b-qk22513t4z .7s linear infinite; }
@keyframes spin-b-qk22513t4z { to { transform: rotate(360deg); } }

/* Day quality banner */
.rp-banner[b-qk22513t4z]      { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 12px 16px; border-radius: var(--radius); margin-bottom: 18px; border: 1px solid var(--border); }
.rp-banner-good[b-qk22513t4z] { background: color-mix(in srgb, var(--success) 7%, var(--surface)); border-color: color-mix(in srgb, var(--success) 25%, var(--border)); }
.rp-banner-mid[b-qk22513t4z]  { background: color-mix(in srgb, #b8860b 7%, var(--surface));        border-color: color-mix(in srgb, #b8860b 25%, var(--border)); }
.rp-banner-bad[b-qk22513t4z]  { background: color-mix(in srgb, var(--danger) 7%, var(--surface));  border-color: color-mix(in srgb, var(--danger) 25%, var(--border)); }
.rp-banner-quality[b-qk22513t4z] { font-size: 15px; font-weight: 700; color: var(--text); }
.rp-banner-date[b-qk22513t4z]    { font-size: 13px; color: var(--muted); margin-left: 4px; }
.rp-banner-sun[b-qk22513t4z]     { font-size: 14px; color: var(--muted); margin-left: auto; }

/* Five limbs grid */
.rp-pancha-grid[b-qk22513t4z] { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-bottom: 22px; }
@media (max-width: 750px) { .rp-pancha-grid[b-qk22513t4z] { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 480px) { .rp-pancha-grid[b-qk22513t4z] { grid-template-columns: 1fr 1fr; } }

.rp-limb[b-qk22513t4z]        { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 12px; }
.rp-limb-masa[b-qk22513t4z]   { grid-column: span 1; }
.rp-limb-label[b-qk22513t4z]  { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); margin-bottom: 4px; line-height: 1.4; }
.rp-limb-value[b-qk22513t4z]  { font-size: 15px; font-weight: 700; color: var(--text); line-height: 1.2; margin-bottom: 3px; }
.rp-limb-sub[b-qk22513t4z]    { font-size: 10px; color: var(--muted); }
.rp-yoga-good[b-qk22513t4z]   { color: var(--success); }
.rp-yoga-bad[b-qk22513t4z]    { color: var(--danger); }

/* Section title */
.rp-section-title[b-qk22513t4z] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--accent); margin: 20px 0 10px; border-bottom: 1px solid var(--border); padding-bottom: 5px; }

/* Inauspicious periods grid */
.rp-inauspicious-grid[b-qk22513t4z] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 18px; }
@media (max-width: 700px) { .rp-inauspicious-grid[b-qk22513t4z] { grid-template-columns: 1fr 1fr; } }
.rp-inauspicious[b-qk22513t4z]      { border-radius: var(--radius); padding: 11px 14px; }
.rp-inauspicious-rahu[b-qk22513t4z]   { background: color-mix(in srgb, var(--danger) 6%, var(--surface)); border: 1px solid color-mix(in srgb, var(--danger) 20%, var(--border)); }
.rp-inauspicious-yama[b-qk22513t4z]   { background: color-mix(in srgb, #b8860b 6%, var(--surface));       border: 1px solid color-mix(in srgb, #b8860b 20%, var(--border)); }
.rp-inauspicious-gulika[b-qk22513t4z] { background: color-mix(in srgb, var(--danger) 4%, var(--surface)); border: 1px solid color-mix(in srgb, var(--danger) 12%, var(--border)); }
.rp-inauspicious-durm[b-qk22513t4z]   { background: color-mix(in srgb, #b8860b 4%, var(--surface));       border: 1px solid color-mix(in srgb, #b8860b 12%, var(--border)); }
.rp-ia-label[b-qk22513t4z]    { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--danger); margin-bottom: 5px; }
.rp-inauspicious-yama .rp-ia-label[b-qk22513t4z],
.rp-inauspicious-durm  .rp-ia-label[b-qk22513t4z] { color: #b8860b; }
.rp-ia-time[b-qk22513t4z]     { font-size: 14px; font-weight: 600; color: var(--text); font-variant-numeric: tabular-nums; }

/* Auspicious periods grid */
.rp-auspicious-grid[b-qk22513t4z] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 18px; }
@media (max-width: 600px) { .rp-auspicious-grid[b-qk22513t4z] { grid-template-columns: 1fr 1fr; } }
.rp-auspicious[b-qk22513t4z]        { border-radius: var(--radius); padding: 11px 14px; }
.rp-auspicious-nalla[b-qk22513t4z]  { background: color-mix(in srgb, var(--success) 7%, var(--surface)); border: 1px solid color-mix(in srgb, var(--success) 25%, var(--border)); }
.rp-auspicious-abhijit[b-qk22513t4z]{ background: color-mix(in srgb, var(--accent)  7%, var(--surface)); border: 1px solid color-mix(in srgb, var(--accent)  25%, var(--border)); }
.rp-auspicious-varjyam[b-qk22513t4z]{ background: color-mix(in srgb, #b8860b 5%, var(--surface));        border: 1px solid color-mix(in srgb, #b8860b 20%, var(--border)); }
.rp-au-label[b-qk22513t4z]    { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--success); margin-bottom: 5px; }
.rp-auspicious-abhijit .rp-au-label[b-qk22513t4z] { color: var(--accent); }
.rp-auspicious-varjyam .rp-au-label[b-qk22513t4z] { color: #b8860b; }
.rp-au-time[b-qk22513t4z]     { font-size: 14px; font-weight: 600; color: var(--text); font-variant-numeric: tabular-nums; line-height: 1.6; }

/* Choghadiya */
.rp-chog-current[b-qk22513t4z]   { font-size: 14px; color: var(--muted); margin-bottom: 10px; }
.rp-chog-current strong[b-qk22513t4z] { color: var(--accent); }
.rp-chog-grid[b-qk22513t4z]      { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 18px; }
@media (max-width: 600px) { .rp-chog-grid[b-qk22513t4z] { grid-template-columns: 1fr; } }
.rp-chog-col[b-qk22513t4z]       { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; }
.rp-chog-col-header[b-qk22513t4z]{ font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); padding: 8px 12px; border-bottom: 1px solid var(--border); background: color-mix(in srgb, var(--accent) 5%, var(--surface)); }
.rp-chog-row[b-qk22513t4z]       { display: grid; grid-template-columns: 70px 1fr 60px; align-items: center; padding: 7px 12px; border-bottom: 1px solid var(--border); gap: 6px; font-size: 14px; }
.rp-chog-row:last-child[b-qk22513t4z] { border-bottom: none; }
.rp-chog-current-row[b-qk22513t4z] { background: color-mix(in srgb, var(--accent) 8%, var(--surface)); }
.rp-chog-name[b-qk22513t4z]      { font-weight: 700; color: var(--text); }
.rp-chog-time[b-qk22513t4z]      { color: var(--muted); font-variant-numeric: tabular-nums; font-size: 13px; }
.rp-chog-nature[b-qk22513t4z]    { text-align: right; font-size: 10px; font-weight: 700; }

.rp-chog-excellent .rp-chog-nature[b-qk22513t4z] { color: var(--success); }
.rp-chog-excellent .rp-chog-name[b-qk22513t4z]   { color: var(--success); }
.rp-chog-good      .rp-chog-nature[b-qk22513t4z] { color: var(--accent); }
.rp-chog-good      .rp-chog-name[b-qk22513t4z]   { color: var(--accent); }
.rp-chog-neutral   .rp-chog-nature[b-qk22513t4z] { color: var(--muted); }
.rp-chog-bad       .rp-chog-nature[b-qk22513t4z] { color: var(--danger); }
.rp-chog-bad       .rp-chog-name[b-qk22513t4z]   { color: var(--danger); }

/* Notes */
.rp-notes[b-qk22513t4z]  { display: flex; flex-direction: column; gap: 6px; margin-bottom: 18px; }
.rp-note[b-qk22513t4z]   { font-size: 13px; color: var(--text); line-height: 1.5; padding: 8px 12px; background: color-mix(in srgb, var(--accent) 5%, var(--surface)); border-radius: 6px; border-left: 3px solid var(--accent); }

/* Footer */
.rp-footer[b-qk22513t4z] { font-size: 13px; color: var(--muted); padding-top: 12px; border-top: 1px solid var(--border); }
/* /Components/RemediesPanel.razor.rz.scp.css */
.rp-lucky-row[b-1lzc9exd0j]    { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 10px; }
.rp-lucky-item[b-1lzc9exd0j]   { flex: 1; min-width: 90px; background: color-mix(in srgb, var(--accent) 8%, var(--surface)); border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border)); border-radius: var(--radius); padding: 10px 12px; text-align: center; }
.rp-lk-label[b-1lzc9exd0j]     { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); margin-bottom: 4px; }
.rp-lk-val[b-1lzc9exd0j]       { font-size: 18px; font-weight: 700; color: var(--accent); font-variant-numeric: tabular-nums; }
.rp-activation[b-1lzc9exd0j]   { font-size: 14px; color: var(--muted); margin-bottom: 20px; line-height: 1.5; }
.rp-section-title[b-1lzc9exd0j] { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); margin: 18px 0 10px; border-bottom: 1px solid var(--border); padding-bottom: 6px; }

/* Gemstone */
.rp-gem-card[b-1lzc9exd0j]     { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; }
.rp-gem-primary[b-1lzc9exd0j]  { display: flex; align-items: baseline; gap: 8px; margin-bottom: 6px; }
.rp-gem-secondary[b-1lzc9exd0j] { display: flex; align-items: baseline; gap: 8px; margin-top: 10px; margin-bottom: 4px; }
.rp-gem-name[b-1lzc9exd0j]     { font-size: 17px; font-weight: 700; color: var(--text); }
.rp-gem-planet[b-1lzc9exd0j]   { font-size: 14px; color: var(--muted); }
.rp-gem-note[b-1lzc9exd0j]     { font-size: 13px; color: var(--text); line-height: 1.5; margin: 0; }
.rp-gem-wearing[b-1lzc9exd0j]  { font-size: 14px; color: var(--muted); margin-top: 4px; }
.rp-caution[b-1lzc9exd0j]      { font-size: 14px; color: #b8860b; background: color-mix(in srgb, #b8860b 10%, var(--surface)); border: 1px solid color-mix(in srgb, #b8860b 40%, var(--border)); border-radius: var(--radius); padding: 8px 12px; margin-top: 10px; line-height: 1.5; }

/* Mantras */
.rp-mantra-list[b-1lzc9exd0j]   { display: flex; flex-direction: column; gap: 10px; }
.rp-mantra-card[b-1lzc9exd0j]   { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px; }
.rp-mantra-header[b-1lzc9exd0j] { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 6px; gap: 8px; }
.rp-mantra-planet[b-1lzc9exd0j] { font-size: 14px; font-weight: 700; color: var(--accent); }
.rp-mantra-day[b-1lzc9exd0j]    { font-size: 13px; color: var(--muted); }
.rp-mantra-text[b-1lzc9exd0j]   { font-size: 13px; color: var(--text); line-height: 1.6; font-style: italic; margin-bottom: 6px; }
.rp-mantra-benefit[b-1lzc9exd0j] { font-size: 14px; color: var(--muted); }

/* Fasting + Daana two-column */
.rp-two-col[b-1lzc9exd0j]      { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.rp-fast-row[b-1lzc9exd0j]     { display: grid; grid-template-columns: 90px 1fr; gap: 8px; padding: 8px 0; border-bottom: 1px solid var(--border); font-size: 13px; }
.rp-fast-day[b-1lzc9exd0j]     { font-weight: 700; color: var(--accent); }
.rp-fast-notes[b-1lzc9exd0j]   { color: var(--text); line-height: 1.4; }
.rp-daana-row[b-1lzc9exd0j]    { padding: 8px 0; border-bottom: 1px solid var(--border); }
.rp-daana-planet[b-1lzc9exd0j] { font-size: 13px; font-weight: 700; color: var(--accent); text-transform: uppercase; letter-spacing: .05em; }
.rp-daana-items[b-1lzc9exd0j]  { font-size: 13px; color: var(--text); margin: 2px 0; }
.rp-daana-recip[b-1lzc9exd0j]  { font-size: 14px; color: var(--muted); }

/* Rudraksha */
.rp-rudra-card[b-1lzc9exd0j]    { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; display: flex; flex-direction: column; gap: 6px; }
.rp-rudra-header[b-1lzc9exd0j]  { display: flex; align-items: baseline; gap: 12px; }
.rp-rudra-mukhi[b-1lzc9exd0j]   { font-size: 18px; font-weight: 700; color: var(--text); }
.rp-rudra-deity[b-1lzc9exd0j]   { font-size: 14px; color: var(--muted); }
.rp-rudra-benefit[b-1lzc9exd0j], .rp-rudra-mantra[b-1lzc9exd0j], .rp-rudra-day[b-1lzc9exd0j] { font-size: 13px; color: var(--text); margin: 0; line-height: 1.5; }
.rp-rudra-day[b-1lzc9exd0j]     { color: var(--muted); }

/* Behavioural */
.rp-behav-list[b-1lzc9exd0j]   { display: flex; flex-direction: column; gap: 8px; padding-left: 18px; }
.rp-behav-list li[b-1lzc9exd0j] { font-size: 13px; color: var(--text); line-height: 1.6; }

@media (max-width: 600px) {
    .rp-two-col[b-1lzc9exd0j]  { grid-template-columns: 1fr; }
    .rp-lucky-row[b-1lzc9exd0j] { gap: 6px; }
}
/* /Components/SensoryHealthPanel.razor.rz.scp.css */
.sh-grid[b-4mydnlfe1e] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 16px;
}

@media (max-width: 500px) {
    .sh-grid[b-4mydnlfe1e] { grid-template-columns: 1fr; }
}

.sh-card[b-4mydnlfe1e] {
    border-radius: var(--radius);
    border: 1px solid var(--border);
    padding: 12px 14px;
    border-top: 3px solid transparent;
}

.sh-card--low[b-4mydnlfe1e]      { border-top-color: #22c55e; }
.sh-card--moderate[b-4mydnlfe1e] { border-top-color: #f59e0b; }
.sh-card--elevated[b-4mydnlfe1e] { border-top-color: #ef4444; }

.sh-card-header[b-4mydnlfe1e] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 6px;
}

.sh-card-icon[b-4mydnlfe1e]  { font-size: 16px; }
.sh-card-organ[b-4mydnlfe1e] { font-size: 14px; font-weight: 700; color: var(--text); flex: 1; }

.sh-card-badge[b-4mydnlfe1e] {
    font-size: 10px;
    font-weight: 600;
    padding: 2px 7px;
    border-radius: 999px;
}

.sh-card-badge--low[b-4mydnlfe1e]      { background: color-mix(in srgb, #22c55e 15%, transparent); color: #166534; }
.sh-card-badge--moderate[b-4mydnlfe1e] { background: color-mix(in srgb, #f59e0b 15%, transparent); color: #92400e; }
.sh-card-badge--elevated[b-4mydnlfe1e] { background: color-mix(in srgb, #ef4444 15%, transparent); color: #991b1b; }

.sh-card-meta[b-4mydnlfe1e]    { font-size: 14px; color: var(--muted); margin-bottom: 4px; }
.sh-card-planets[b-4mydnlfe1e] { font-size: 14px; color: var(--accent); font-weight: 500; margin-bottom: 6px; }
.sh-card-reading[b-4mydnlfe1e] { font-size: 14px; color: var(--text); line-height: 1.55; margin: 0; }

.sh-section-title[b-4mydnlfe1e] {
    font-size: 13px;
    font-weight: 600;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 16px 0 8px;
}

.sh-advisories[b-4mydnlfe1e] {
    margin: 0 0 14px;
    padding-left: 20px;
    font-size: 13px;
    color: var(--text);
    line-height: 1.7;
}

.sh-notes[b-4mydnlfe1e] { font-size: 14px; color: var(--muted); line-height: 1.55; font-style: italic; }
/* /Components/SouthIndianChart.razor.rz.scp.css */
.si-grid[b-vg25wwqms3] {
    /* Responsive sizing: the chart scales with its container between 68px and 88px per cell.
       Container width falls back to 354px on desktop, contracts on narrow viewports so the
       chart no longer overflows on phone-width screens. */
    --si-cell: clamp(68px, 22vw, 88px);
    display: grid;
    grid-template-columns: repeat(4, var(--si-cell));
    grid-template-rows: repeat(4, var(--si-cell));
    border: 2px solid var(--border);
    border-radius: var(--radius);
    overflow: hidden;
    width: calc(var(--si-cell) * 4 + 2px);
    max-width: 100%;
    flex-shrink: 0;
}

/* Narrow phones: shrink text so the tighter cells stay legible. */
@media (max-width: 380px) {
    .si-house-num[b-vg25wwqms3] { font-size: 8px; }
    .si-rasi[b-vg25wwqms3]      { font-size: 10px; }
    .si-graha[b-vg25wwqms3]     { font-size: 9px; padding: 0 3px; }
    .si-cell[b-vg25wwqms3]      { padding: 4px 5px; }
    .si-lagna-tri[b-vg25wwqms3] { border-width: 12px 12px 0 0; }
}

.si-cell[b-vg25wwqms3] {
    background: var(--surface);
    border: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 6px 7px;
    gap: 2px;
    text-align: left;
    transition: background .12s, border-color .12s;
}

.si-cell:hover[b-vg25wwqms3] {
    background: var(--surface2);
    border-color: var(--accent);
    z-index: 1;
}

.si-cell-sel[b-vg25wwqms3] {
    background: var(--surface2) !important;
    border-color: var(--accent) !important;
    box-shadow: inset 0 0 0 2px var(--accent);
}

.si-center[b-vg25wwqms3] {
    grid-column: span 2;
    grid-row: span 2;
    background: var(--surface2);
    border: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

.si-center-icon[b-vg25wwqms3] { font-size: 22px; color: var(--accent); opacity: .45; }
.si-center-sub[b-vg25wwqms3]  { font-size: 8px; text-transform: uppercase; letter-spacing: .1em; color: var(--muted); }

.si-house-num[b-vg25wwqms3] { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); line-height: 1; }
.si-rasi[b-vg25wwqms3]      { font-size: 11px; font-weight: 600; color: var(--accent); line-height: 1.2; }
.si-occupants[b-vg25wwqms3] { display: flex; flex-wrap: wrap; gap: 2px; margin-top: 2px; }

.si-graha[b-vg25wwqms3] {
    font-size: 10px; font-weight: 700; color: var(--text);
    background: var(--surface2); border: 1px solid var(--border);
    border-radius: 3px; padding: 1px 4px; line-height: 1.2;
}

.si-cell-sel .si-graha[b-vg25wwqms3] {
    background: color-mix(in srgb, var(--accent) 15%, transparent);
}

/* House background tones by functional nature */
.si-bg-trikona[b-vg25wwqms3]  { background: color-mix(in srgb, var(--success) 8%,  var(--surface)) !important; }
.si-bg-kendra[b-vg25wwqms3]   { background: color-mix(in srgb, var(--accent)  8%,  var(--surface)) !important; }
.si-bg-dusthana[b-vg25wwqms3] { background: color-mix(in srgb, var(--danger)  6%,  var(--surface)) !important; }

/* Planet token colours by functional role */
.si-pk-yk[b-vg25wwqms3]      { color: var(--accent2); font-weight: 800; }
.si-pk-yk-dst[b-vg25wwqms3]  { color: var(--warning); font-weight: 800; }
.si-pk-ben[b-vg25wwqms3]     { color: var(--success); }
.si-pk-ben-dst[b-vg25wwqms3] { color: color-mix(in srgb, var(--success) 70%, var(--danger)); }
.si-pk-mal[b-vg25wwqms3]     { color: var(--danger); }
.si-pk-mal-dst[b-vg25wwqms3] { color: color-mix(in srgb, var(--danger) 85%, #000 15%); font-weight: 800; }

/* Lagna cell — orange top-left triangle marker (South Indian convention) */
.si-cell-lagna[b-vg25wwqms3] {
    position: relative;
    border-color: color-mix(in srgb, var(--accent) 60%, transparent) !important;
}

.si-lagna-tri[b-vg25wwqms3] {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 16px 16px 0 0;
    border-color: var(--accent) transparent transparent transparent;
    opacity: 0.85;
    pointer-events: none;
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .si-house-num[b-vg25wwqms3]  { font-size: 10px; }
    .si-center-sub[b-vg25wwqms3] { font-size: 10px; }
    .si-graha[b-vg25wwqms3]      { font-size: 11px; }
    .si-rashi-abbr[b-vg25wwqms3] { font-size: 10px; }
}
/* /Components/SudarshanaPanel.razor.rz.scp.css */
/* ── Sudarshana Chakra Panel ──────────────────────────────────────────────── */
.sud-synopsis[b-9kt53wfrap]    { font-size: 14px; color: var(--text); line-height: 1.6; margin-bottom: 12px; padding: 14px; background: var(--surface); border-radius: var(--radius); border: 1px solid var(--border); }
.sud-triple[b-9kt53wfrap]      { font-size: 14px; color: var(--muted); line-height: 1.5; margin-bottom: 20px; padding: 10px 14px; border-left: 3px solid var(--accent); }

.sud-charts[b-9kt53wfrap]      { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; margin-bottom: 24px; }

.sud-chart-card[b-9kt53wfrap]  { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; }
.sud-chart-header[b-9kt53wfrap] { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 10px; }
.sud-chart-name[b-9kt53wfrap]  { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); }
.sud-chart-ref[b-9kt53wfrap]   { font-size: 10px; color: var(--muted); }
.sud-active-sign[b-9kt53wfrap] { font-size: 22px; font-weight: 700; color: var(--text); margin-bottom: 2px; }
.sud-house-badge[b-9kt53wfrap] { display: inline-block; font-size: 10px; font-weight: 700; color: var(--accent); background: color-mix(in srgb, var(--accent) 10%, var(--surface)); border-radius: 3px; padding: 2px 7px; margin-bottom: 6px; }
.sud-theme[b-9kt53wfrap]       { font-size: 14px; font-weight: 600; color: var(--text); margin-bottom: 6px; }
.sud-reading[b-9kt53wfrap]     { font-size: 14px; color: var(--muted); line-height: 1.5; margin: 0; }

.sud-table-wrap[b-9kt53wfrap]      { overflow-x: auto; border: 1px solid var(--border); border-radius: var(--radius); margin-bottom: 16px; }
.cd-table[b-9kt53wfrap]            { width: 100%; border-collapse: collapse; font-size: 13px; background: var(--surface); }
.cd-table thead tr[b-9kt53wfrap]   { background: var(--surface2); }
.cd-table th[b-9kt53wfrap]         { text-align: left; padding: 7px 10px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); border-bottom: 1px solid var(--border); }
.cd-table td[b-9kt53wfrap]         { padding: 9px 10px; border-bottom: 1px solid var(--border); color: var(--text); }
.cd-table tbody tr:hover td[b-9kt53wfrap] { background: rgba(229,163,45,.06); }
.cd-row-current td[b-9kt53wfrap]   { background: rgba(229,163,45,.11); color: var(--accent); font-weight: 600; }
.cd-row-current td:first-child[b-9kt53wfrap] { border-left: 3px solid var(--accent); }
.sud-focus[b-9kt53wfrap]           { font-size: 13px; color: var(--muted); max-width: 200px; }

@media (max-width: 600px) {
    .sud-charts[b-9kt53wfrap]  { grid-template-columns: 1fr; }
}
/* /Components/SummaryPanel.razor.rz.scp.css */
.sp-grid[b-vi3nrxt3yj]        { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media (max-width: 700px) { .sp-grid[b-vi3nrxt3yj] { grid-template-columns: 1fr; } }
.sp-lagna-hero[b-vi3nrxt3yj]  { display: flex; gap: 14px; align-items: flex-start; }
.sp-lagna-col[b-vi3nrxt3yj]   { display: flex; flex-direction: column; align-items: center; gap: 6px; flex-shrink: 0; }
.sp-lagna-rasi[b-vi3nrxt3yj]  { width: 88px; height: 88px; border-radius: 10px; flex-shrink: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #fff; padding: 4px; gap: 4px; }
.sp-rasi-symbol[b-vi3nrxt3yj] { display: flex; align-items: center; justify-content: center; line-height: 1; }
.rasi-icon[b-vi3nrxt3yj]       { display: block; }
.sp-rasi-symbol-text[b-vi3nrxt3yj] { font-size: 34px; line-height: 1; }
.sp-rasi-name[b-vi3nrxt3yj]   { font-weight: 700; font-size: 13px; font-family: 'Noto Sans Devanagari', 'Mangal', 'Sanskrit Text', 'Noto Sans Telugu', 'Noto Sans Tamil', 'Noto Sans Kannada', 'Noto Sans Malayalam', sans-serif; }
.sp-rasi-elem-outside[b-vi3nrxt3yj] {
    font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .06em;
    color: var(--muted); text-align: center;
}
.sp-theme[b-vi3nrxt3yj]       { font-size: 13px; line-height: 1.5; margin-bottom: 6px; }
.sp-meta[b-vi3nrxt3yj]        { font-size: 13px; color: var(--muted); margin-top: 2px; }
.sp-stats[b-vi3nrxt3yj]       { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; margin-bottom: 12px; }
.sp-stat[b-vi3nrxt3yj]        { background: var(--surface2); border-radius: 6px; padding: 10px; text-align: center; }
.sp-stat-num[b-vi3nrxt3yj]    { font-size: 24px; font-weight: 700; line-height: 1; }
.sp-stat-lbl[b-vi3nrxt3yj]    { font-size: 10px; text-transform: uppercase; color: var(--muted); margin-top: 3px; }
.sp-nak-text[b-vi3nrxt3yj]    { font-size: 14px; line-height: 1.65; color: var(--muted); margin: 8px 0; }

/* ── Appearance card ─────────────────────────────────────────────────────── */
.sp-appearance-card[b-vi3nrxt3yj] { grid-column: 1 / -1; }
.sp-appear-summary[b-vi3nrxt3yj]  { font-size: 13px; color: var(--text); line-height: 1.6; margin-bottom: 12px; }
.sp-appear-mod[b-vi3nrxt3yj]      { font-size: 14px; color: var(--muted); line-height: 1.55; border-top: 1px solid var(--border); padding-top: 10px; margin-top: 10px; }

/* ── Mobile ── */
@media (max-width: 767px) {
    .sp-stats[b-vi3nrxt3yj]      { grid-template-columns: 1fr 1fr; gap: 8px; }
    .sp-stat-lbl[b-vi3nrxt3yj]   { font-size: .72rem; }
    .sp-rasi-elem-outside[b-vi3nrxt3yj] { font-size: .72rem; }
    .sp-asc-badge[b-vi3nrxt3yj]  { font-size: .72rem; }
    .sp-section[b-vi3nrxt3yj]    { padding: 12px 14px; }
}
/* /Components/TimelinePanel.razor.rz.scp.css */
/* Synopsis */
.tl-synopsis[b-ecenkvfr4y]    { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px; margin-bottom: 16px; }
.tl-synopsis p[b-ecenkvfr4y]  { font-size: 13px; color: var(--text); line-height: 1.6; margin: 0; }

/* Legend */
.tl-legend[b-ecenkvfr4y]      { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 16px; margin-bottom: 20px; }
.tl-leg-item[b-ecenkvfr4y]    { display: flex; align-items: center; gap: 5px; font-size: 13px; color: var(--muted); }
.tl-leg-sep[b-ecenkvfr4y]     { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--accent); margin-left: 8px; }

/* Confidence pills */
.tl-conf[b-ecenkvfr4y]        { font-size: 10px; font-weight: 700; padding: 1px 7px; border-radius: 10px; }
.tl-c-confirmed[b-ecenkvfr4y] { background: color-mix(in srgb, var(--success) 15%, var(--surface)); color: var(--success); }
.tl-c-likely[b-ecenkvfr4y]    { background: color-mix(in srgb, #3b82f6 12%, var(--surface)); color: #3b82f6; }
.tl-c-possible[b-ecenkvfr4y]  { background: color-mix(in srgb, var(--muted) 15%, var(--surface)); color: var(--muted); }
.tl-c-challenge[b-ecenkvfr4y] { background: color-mix(in srgb, var(--danger) 12%, var(--surface)); color: var(--danger); }

/* Dots */
.tl-dot[b-ecenkvfr4y]             { width: 10px; height: 10px; border-radius: 50%; display: inline-block; flex-shrink: 0; }
.tl-dot-peak[b-ecenkvfr4y]        { background: var(--success); box-shadow: 0 0 0 3px color-mix(in srgb, var(--success) 20%, var(--surface)); }
.tl-dot-opportunity[b-ecenkvfr4y] { background: #3b82f6; }
.tl-dot-transition[b-ecenkvfr4y]  { background: var(--accent); }
.tl-dot-challenge[b-ecenkvfr4y]   { background: var(--danger); }

/* Timeline events */
.tl-events[b-ecenkvfr4y]      { display: flex; flex-direction: column; }
.tl-event[b-ecenkvfr4y]       { display: flex; gap: 0; }
.tl-event-left[b-ecenkvfr4y]  { display: flex; flex-direction: column; align-items: center; width: 24px; flex-shrink: 0; padding-top: 4px; }
.tl-spine[b-ecenkvfr4y]       { flex: 1; width: 1px; background: var(--border); margin-top: 6px; min-height: 24px; }
.tl-event:last-child .tl-spine[b-ecenkvfr4y] { display: none; }
.tl-event-body[b-ecenkvfr4y]  { flex: 1; padding: 0 0 24px 14px; }

.tl-event-top[b-ecenkvfr4y]   { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin-bottom: 4px; }
.tl-period[b-ecenkvfr4y]      { font-size: 13px; font-weight: 600; color: var(--muted); font-variant-numeric: tabular-nums; }
.tl-domain[b-ecenkvfr4y]      { font-size: 10px; font-weight: 700; padding: 1px 7px; border-radius: 10px; }
.tl-dom-career[b-ecenkvfr4y]    { background: color-mix(in srgb, #f97316 12%, var(--surface)); color: #f97316; }
.tl-dom-wealth[b-ecenkvfr4y]    { background: color-mix(in srgb, #22c55e 12%, var(--surface)); color: #22c55e; }
.tl-dom-rel[b-ecenkvfr4y]       { background: color-mix(in srgb, #ec4899 12%, var(--surface)); color: #ec4899; }
.tl-dom-health[b-ecenkvfr4y]    { background: color-mix(in srgb, #ef4444 12%, var(--surface)); color: #ef4444; }
.tl-dom-spirit[b-ecenkvfr4y]    { background: color-mix(in srgb, var(--accent) 12%, var(--surface)); color: var(--accent); }
.tl-dom-children[b-ecenkvfr4y]  { background: color-mix(in srgb, #a855f7 12%, var(--surface)); color: #a855f7; }
.tl-dom-edu[b-ecenkvfr4y]       { background: color-mix(in srgb, #06b6d4 12%, var(--surface)); color: #06b6d4; }
.tl-dom-general[b-ecenkvfr4y]   { background: color-mix(in srgb, var(--muted) 12%, var(--surface)); color: var(--muted); }

.tl-headline[b-ecenkvfr4y]    { font-size: 13px; font-weight: 700; color: var(--text); margin-bottom: 4px; line-height: 1.4; }
.tl-detail[b-ecenkvfr4y]      { font-size: 14px; color: var(--muted); line-height: 1.5; margin: 0; }

/* Event type stripe */
.tl-ev-peak       .tl-headline[b-ecenkvfr4y] { color: var(--success); }
.tl-ev-challenge  .tl-headline[b-ecenkvfr4y] { color: var(--danger); }

@media (max-width: 600px) {
    .tl-event-body[b-ecenkvfr4y] { padding-bottom: 18px; }
}
/* /Components/TithiPraveshaPanel.razor.rz.scp.css */
.tp-birth-card[b-bplwqwny9c] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 12px 16px;
    margin-bottom: 10px;
}

.tp-birth-label[b-bplwqwny9c]  { font-size: 13px; color: var(--muted); text-transform: uppercase; letter-spacing: 0.05em; }
.tp-birth-tithi[b-bplwqwny9c]  { font-size: 16px; font-weight: 700; color: var(--text); margin: 4px 0 2px; }
.tp-birth-elong[b-bplwqwny9c]  { font-size: 14px; color: var(--muted); }

.tp-ingress-card[b-bplwqwny9c] {
    background: color-mix(in srgb, var(--accent) 8%, var(--surface));
    border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border));
    border-radius: var(--radius);
    padding: 14px 16px;
    margin-bottom: 14px;
}

.tp-ingress-label[b-bplwqwny9c]  { font-size: 13px; color: var(--muted); text-transform: uppercase; letter-spacing: 0.05em; }
.tp-ingress-time[b-bplwqwny9c]   { font-size: 17px; font-weight: 700; color: var(--accent); margin: 4px 0 2px; }
.tp-ingress-lagna[b-bplwqwny9c]  { font-size: 13px; font-weight: 600; color: var(--text); margin-bottom: 8px; }
.tp-synopsis[b-bplwqwny9c]       { font-size: 13px; color: var(--text); line-height: 1.55; margin: 0; }

.tp-section-title[b-bplwqwny9c] {
    font-size: 13px;
    font-weight: 600;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 16px 0 8px;
}

.tp-graha-grid[b-bplwqwny9c] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-bottom: 14px;
}

@media (max-width: 480px) {
    .tp-graha-grid[b-bplwqwny9c] { grid-template-columns: repeat(2, 1fr); }
}

.tp-graha-card[b-bplwqwny9c] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: calc(var(--radius) - 2px);
    padding: 8px 10px;
    text-align: center;
}

.tp-graha-name[b-bplwqwny9c] { font-size: 14px; font-weight: 700; color: var(--text); }
.tp-graha-pos[b-bplwqwny9c]  { font-size: 13px; color: var(--muted); }
.tp-graha-deg[b-bplwqwny9c]  { font-size: 13px; color: var(--muted); }

.tp-highlights[b-bplwqwny9c] {
    margin: 0 0 14px;
    padding-left: 20px;
    font-size: 13px;
    color: var(--text);
    line-height: 1.7;
}

.tp-year-nav[b-bplwqwny9c] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin: 16px 0;
}

.tp-year-btn[b-bplwqwny9c] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 6px 14px;
    font-size: 13px;
    color: var(--text);
    cursor: pointer;
    transition: background 0.15s;
}

.tp-year-btn:hover[b-bplwqwny9c] { background: color-mix(in srgb, var(--accent) 10%, var(--surface)); }

.tp-year-current[b-bplwqwny9c] { font-size: 16px; font-weight: 700; color: var(--accent); }

.tp-notes[b-bplwqwny9c] { font-size: 14px; color: var(--muted); line-height: 1.55; font-style: italic; }

.tp-pdf-btn[b-bplwqwny9c] {
    display: inline-block;
    padding: 8px 20px;
    background: var(--accent);
    color: #0B0D1A;
    border-radius: var(--radius);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: opacity 0.15s;
}

.tp-pdf-btn:hover[b-bplwqwny9c] { opacity: 0.85; }

/* ── Mobile ── */
@media (max-width: 767px) {
    .tp-year-btn[b-bplwqwny9c] {
        min-height: 44px;
        min-width: 44px;
        padding: 10px 16px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .tp-pdf-btn[b-bplwqwny9c]    { min-height: 44px; padding: 10px 22px; }
    .tp-nav-row[b-bplwqwny9c]    { flex-wrap: wrap; gap: 8px; }
    .tp-section-hd[b-bplwqwny9c] { font-size: .76rem; }
}
/* /Components/TransitChakrasPanel.razor.rz.scp.css */
/* ── Transit Chakras Panel ────────────────────────────────────────────────── */

.panel-section[b-fk05ll38w5]    { padding: 0; }
.panel-heading[b-fk05ll38w5]    { font-size: 17px; font-weight: 700; margin: 0 0 4px; color: var(--text); }
.panel-subheading[b-fk05ll38w5] { font-size: 12.5px; color: var(--muted); margin-bottom: 14px; }

/* Sub-tab bar */
.sub-tab-bar[b-fk05ll38w5]  { display: flex; gap: 4px; flex-wrap: wrap; padding: 4px; background: var(--surface2); border: 1px solid var(--border); border-radius: 10px; margin-bottom: 14px; }
.sub-tab[b-fk05ll38w5]      { flex: 1; min-width: 72px; padding: 5px 10px; border: none; border-radius: 7px; font-size: 12px; font-weight: 600; font-family: inherit; cursor: pointer; transition: background .13s, color .13s; color: var(--muted); background: none; white-space: nowrap; }
.sub-tab:hover[b-fk05ll38w5]  { background: var(--surface); color: var(--text); }
.sub-tab.active[b-fk05ll38w5] { background: var(--surface); color: var(--accent); box-shadow: 0 1px 4px rgba(0,0,0,.1); }

/* Card wrapper */
.chakra-card[b-fk05ll38w5]  { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 16px; }

/* Score row */
.score-row[b-fk05ll38w5]    { display: flex; gap: 20px; font-weight: 700; font-size: 14px; margin-bottom: 12px; flex-wrap: wrap; }
.score-good[b-fk05ll38w5]   { color: var(--success); }
.score-bad[b-fk05ll38w5]    { color: var(--danger); }
.net-good[b-fk05ll38w5]     { color: var(--accent2); }
.net-bad[b-fk05ll38w5]      { color: var(--danger); }
.summary-text[b-fk05ll38w5] { font-size: 13.5px; color: var(--text); line-height: 1.65; margin: 10px 0 0; }

/* Data table */
.data-table[b-fk05ll38w5]           { width: 100%; border-collapse: collapse; margin-top: 12px; font-size: 13px; background: var(--surface); }
.data-table thead tr[b-fk05ll38w5]  { background: var(--surface2); }
.data-table th[b-fk05ll38w5]        { text-align: left; padding: 6px 10px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); border-bottom: 1px solid var(--border); white-space: nowrap; }
.data-table td[b-fk05ll38w5]        { padding: 7px 10px; border-bottom: 1px solid var(--border); color: var(--text); }
.data-table tbody tr:hover td[b-fk05ll38w5] { background: rgba(229,163,45,.06); }
.row-good[b-fk05ll38w5]             { background: color-mix(in srgb, var(--success) 8%, transparent); }
.row-bad[b-fk05ll38w5]              { background: color-mix(in srgb, var(--danger) 6%, transparent); }
.no-data[b-fk05ll38w5]              { font-size: 13px; color: var(--muted); margin-top: 10px; }

/* Rashi vedha subsection */
.rv-section[b-fk05ll38w5]   { margin-top: 20px; }
.rv-heading[b-fk05ll38w5]   { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); margin-bottom: 8px; }

/* Kota zone badge */
.kota-zone[b-fk05ll38w5]    { font-size: 13px; font-weight: 700; padding: 5px 12px; border-radius: 6px; display: inline-flex; margin-bottom: 12px; }
.zone-stambha[b-fk05ll38w5] { background: color-mix(in srgb, var(--success) 18%, var(--surface2)); color: var(--success); border: 1px solid color-mix(in srgb, var(--success) 30%, var(--border)); }
.zone-madhya[b-fk05ll38w5]  { background: color-mix(in srgb, var(--success) 10%, var(--surface2)); color: var(--success); border: 1px solid color-mix(in srgb, var(--success) 20%, var(--border)); }
.zone-parikha[b-fk05ll38w5] { background: color-mix(in srgb, #f59e0b 12%, var(--surface2)); color: #b87300; border: 1px solid color-mix(in srgb, #f59e0b 25%, var(--border)); }
.zone-bahya[b-fk05ll38w5]   { background: color-mix(in srgb, var(--danger) 12%, var(--surface2)); color: var(--danger); border: 1px solid color-mix(in srgb, var(--danger) 25%, var(--border)); }

/* Detail list (kota / tripataki) */
.detail-list[b-fk05ll38w5]    { display: grid; grid-template-columns: auto 1fr; gap: .3rem .75rem; font-size: 13px; margin: 0 0 12px; }
.detail-list dt[b-fk05ll38w5] { font-weight: 600; color: var(--muted); }
.detail-list dd[b-fk05ll38w5] { margin: 0; color: var(--text); }

/* Safety progress bar */
.safety-bar[b-fk05ll38w5]   { height: 6px; background: var(--surface2); border: 1px solid var(--border); border-radius: 4px; margin: 10px 0 8px; overflow: hidden; }
.safety-fill[b-fk05ll38w5]  { height: 100%; border-radius: 4px; transition: width .3s; }
.safety-5[b-fk05ll38w5]     { background: var(--success); }
.safety-4[b-fk05ll38w5]     { background: color-mix(in srgb, var(--success) 70%, #f59e0b); }
.safety-3[b-fk05ll38w5]     { background: #f59e0b; }
.safety-2[b-fk05ll38w5]     { background: color-mix(in srgb, var(--danger) 60%, #f59e0b); }
.safety-1[b-fk05ll38w5]     { background: var(--danger); }

/* Tara / quality badge */
.tara-badge[b-fk05ll38w5]          { font-size: 13px; font-weight: 700; padding: 5px 12px; border-radius: 6px; display: inline-flex; margin-bottom: 12px; }
.quality-excellent[b-fk05ll38w5]   { background: color-mix(in srgb, var(--success) 16%, var(--surface2)); color: var(--success); }
.quality-good[b-fk05ll38w5]        { background: color-mix(in srgb, var(--success) 10%, var(--surface2)); color: var(--success); }
.quality-caution[b-fk05ll38w5]     { background: color-mix(in srgb, #f59e0b 12%, var(--surface2)); color: #b87300; }
.quality-bad[b-fk05ll38w5]         { background: color-mix(in srgb, var(--danger) 10%, var(--surface2)); color: var(--danger); }
.quality-very-bad[b-fk05ll38w5]    { background: color-mix(in srgb, var(--danger) 16%, var(--surface2)); color: var(--danger); }

/* Ghata status badge */
.ghata-header[b-fk05ll38w5] { font-size: 13px; font-weight: 700; padding: 5px 12px; border-radius: 6px; display: inline-flex; margin-bottom: 12px; }
.ghata-alert[b-fk05ll38w5]  { background: color-mix(in srgb, var(--danger) 14%, var(--surface2)); color: var(--danger); }
.ghata-warn[b-fk05ll38w5]   { background: color-mix(in srgb, #f59e0b 12%, var(--surface2)); color: #b87300; }
.ghata-clear[b-fk05ll38w5]  { background: color-mix(in srgb, var(--success) 12%, var(--surface2)); color: var(--success); }

/* States */
.error-msg[b-fk05ll38w5]    { color: var(--danger); font-size: 13px; }
.loading-msg[b-fk05ll38w5]  { color: var(--muted); font-size: 13px; }

/* ── Mobile ── */
@media (max-width: 767px) {
    .sub-tab[b-fk05ll38w5]       { min-height: 44px; padding: 10px 14px; font-size: .88rem; }
    .tc-data-wrap[b-fk05ll38w5]  { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .data-table th[b-fk05ll38w5] { font-size: .76rem; padding: 7px 8px; }
    .sub-tab-bar[b-fk05ll38w5]   { overflow-x: auto; flex-wrap: nowrap; }
    .sub-tab-bar[b-fk05ll38w5]::-webkit-scrollbar { display: none; }
    /* Fade cue */
    .tc-tab-wrap[b-fk05ll38w5] { position: relative; }
    .tc-tab-wrap[b-fk05ll38w5]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 28px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
}
/* /Components/TransitsPanel.razor.rz.scp.css */
/* ── Timing Fusion card ─────────────────────────────────────────────────────── */
.tf-card[b-d8owzorsqa]          { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 18px; margin-bottom: 22px; }
.tf-header[b-d8owzorsqa]        { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.tf-label[b-d8owzorsqa]         { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); margin-bottom: 4px; }
.tf-verdict[b-d8owzorsqa]       { font-size: 18px; font-weight: 800; line-height: 1.2; }
.tf-v-good[b-d8owzorsqa]        { color: var(--success); }
.tf-v-mid[b-d8owzorsqa]         { color: #b8860b; }
.tf-v-low[b-d8owzorsqa]         { color: var(--danger); }

/* Score ring */
.tf-score-ring[b-d8owzorsqa]    { display: flex; flex-direction: column; align-items: center; background: color-mix(in srgb, var(--accent) 6%, var(--surface)); border: 1px solid var(--border); border-radius: 50%; width: 64px; height: 64px; justify-content: center; flex-shrink: 0; }
.tf-score-ring.tf-sr-good[b-d8owzorsqa] { border-color: var(--success); background: color-mix(in srgb, var(--success) 8%, var(--surface)); }
.tf-score-ring.tf-sr-mid[b-d8owzorsqa]  { border-color: #b8860b; background: color-mix(in srgb, #b8860b 8%, var(--surface)); }
.tf-score-ring.tf-sr-low[b-d8owzorsqa]  { border-color: var(--danger); background: color-mix(in srgb, var(--danger) 8%, var(--surface)); }
.tf-score-num[b-d8owzorsqa]     { font-size: 20px; font-weight: 800; color: var(--text); line-height: 1; font-variant-numeric: tabular-nums; }
.tf-score-sub[b-d8owzorsqa]     { font-size: 9px; color: var(--muted); }

/* Synopsis */
.tf-synopsis[b-d8owzorsqa]      { font-size: 13px; color: var(--text); line-height: 1.6; margin: 0 0 14px; }

/* Domain score bars */
.tf-domains[b-d8owzorsqa]       { display: flex; flex-direction: column; gap: 7px; margin-bottom: 14px; }
.tf-domain-row[b-d8owzorsqa]    { display: grid; grid-template-columns: 100px 1fr 70px; align-items: center; gap: 10px; }
.tf-dom-name[b-d8owzorsqa]      { font-size: 14px; color: var(--text); font-weight: 600; }
.tf-bar-track[b-d8owzorsqa]     { background: color-mix(in srgb, var(--muted) 12%, var(--surface)); border-radius: 4px; height: 6px; overflow: hidden; }
.tf-bar[b-d8owzorsqa]           { height: 100%; border-radius: 4px; transition: width 0.4s ease; }
.tf-sig-pos[b-d8owzorsqa]       { background: var(--success); }
.tf-sig-mid[b-d8owzorsqa]       { background: #b8860b; }
.tf-sig-neg[b-d8owzorsqa]       { background: var(--danger); }
.tf-dom-signal[b-d8owzorsqa]    { font-size: 10px; font-weight: 700; text-align: right; }

/* Opportunities */
.tf-opportunities[b-d8owzorsqa] { background: color-mix(in srgb, var(--success) 5%, var(--surface)); border: 1px solid color-mix(in srgb, var(--success) 20%, var(--border)); border-radius: var(--radius); padding: 12px; margin-bottom: 12px; }
.tf-opp-label[b-d8owzorsqa]     { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--success); display: block; margin-bottom: 6px; }
.tf-opp-item[b-d8owzorsqa]      { font-size: 14px; color: var(--text); line-height: 1.5; padding: 3px 0; border-bottom: 1px solid color-mix(in srgb, var(--success) 10%, var(--border)); }
.tf-opp-item:last-child[b-d8owzorsqa] { border-bottom: none; }

/* Next milestone */
.tf-milestone[b-d8owzorsqa]     { display: flex; flex-direction: column; gap: 3px; padding-top: 10px; border-top: 1px solid var(--border); }
.tf-mil-label[b-d8owzorsqa]     { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); }
.tf-mil-text[b-d8owzorsqa]      { font-size: 14px; color: var(--muted); line-height: 1.5; }

/* Loading state */
.tf-loading[b-d8owzorsqa]       { display: flex; align-items: center; font-size: 14px; color: var(--muted); padding: 14px; background: var(--surface); border-radius: var(--radius); margin-bottom: 16px; }

/* ── Vedha neutralisation badge ─────────────────────────────────────────────── */
.transit-card-vedha[b-d8owzorsqa]  { border-color: color-mix(in srgb, #b8860b 35%, var(--border)) !important; background: color-mix(in srgb, #b8860b 4%, var(--surface)) !important; }
.transit-vedha-badge[b-d8owzorsqa] { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: #b8860b; background: color-mix(in srgb, #b8860b 12%, var(--surface)); border: 1px solid color-mix(in srgb, #b8860b 30%, var(--border)); border-radius: 3px; padding: 1px 6px; cursor: default; }
.transit-vedha-note[b-d8owzorsqa]  { font-size: 13px; color: #b8860b; line-height: 1.5; margin: 4px 0 0; padding: 6px 8px; background: color-mix(in srgb, #b8860b 6%, var(--surface)); border-radius: 3px; }

@media (max-width: 600px) {
    .tf-domain-row[b-d8owzorsqa] { grid-template-columns: 80px 1fr 60px; }
    .tf-header[b-d8owzorsqa]     { flex-direction: column-reverse; gap: 10px; }
    .tf-score-ring[b-d8owzorsqa] { width: 52px; height: 52px; align-self: flex-end; }
}

/* ── Transit Ashtakavarga table ──────────────────────────────────────────── */
.tbav-table-wrap[b-d8owzorsqa]  { overflow-x: auto; margin-top: .5rem; margin-bottom: 1.5rem; border: 1px solid var(--border); border-radius: var(--radius); }
.tbav-table[b-d8owzorsqa]       { width: 100%; border-collapse: collapse; font-size: .84rem; background: var(--surface); }
.tbav-table thead tr[b-d8owzorsqa] { background: var(--surface2); }
.tbav-table th[b-d8owzorsqa]    { text-align: left; padding: 6px 10px; font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); border-bottom: 1px solid var(--border); white-space: nowrap; }
.tbav-table td[b-d8owzorsqa]    { padding: 7px 10px; border-bottom: 1px solid var(--border); color: var(--text); }
.tbav-table tbody tr:hover td[b-d8owzorsqa] { background: rgba(229,163,45,.06); }
.tbav-planet[b-d8owzorsqa]      { font-weight: 700; }
.tbav-num[b-d8owzorsqa]         { font-variant-numeric: tabular-nums; text-align: right; }
.tbav-row-good[b-d8owzorsqa]    { background: color-mix(in srgb, var(--success) 5%, transparent); }
.tbav-row-low[b-d8owzorsqa]     { background: color-mix(in srgb, var(--danger) 5%, transparent); }
.tbav-verdict[b-d8owzorsqa]     { font-size: .76rem; font-weight: 600; padding: 2px 8px; border-radius: 6px; white-space: nowrap; }
.tbav-v-good[b-d8owzorsqa]      { background: color-mix(in srgb, var(--success) 14%, transparent); color: var(--success); border: 1px solid color-mix(in srgb, var(--success) 30%, transparent); }
.tbav-v-low[b-d8owzorsqa]       { background: color-mix(in srgb, var(--danger) 12%, transparent); color: var(--danger); border: 1px solid color-mix(in srgb, var(--danger) 28%, transparent); }

/* ── Mobile ── */
@media (max-width: 767px) {
    .tf-label[b-d8owzorsqa]       { font-size: .72rem; }
    .tf-dom-signal[b-d8owzorsqa]  { font-size: .72rem; }
    .tf-score-sub[b-d8owzorsqa]   { font-size: .68rem; }
    .tf-opp-label[b-d8owzorsqa]   { font-size: .68rem; }
    .tf-mil-label[b-d8owzorsqa]   { font-size: .68rem; }
    .transit-vedha-badge[b-d8owzorsqa] { font-size: .68rem; }
    .tbav-table th[b-d8owzorsqa]  { font-size: .76rem; padding: 7px 8px; }
    .tf-domain-tab[b-d8owzorsqa]  { min-height: 44px; padding: 10px 14px; font-size: .84rem; }
    .tf-tab-row[b-d8owzorsqa]     { overflow-x: auto; flex-wrap: nowrap; }
    .tf-tab-row[b-d8owzorsqa]::-webkit-scrollbar { display: none; }
    /* Fade cue (Innovation #7) */
    .tf-tab-wrap[b-d8owzorsqa] { position: relative; }
    .tf-tab-wrap[b-d8owzorsqa]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 28px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
}
/* /Components/UpgradeGate.razor.rz.scp.css */
.ug-gate[b-qpkqvcbtw7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 48px 24px;
    max-width: 460px;
    margin: 0 auto;
    gap: 10px;
}

.ug-icon[b-qpkqvcbtw7] {
    font-size: 2.2rem;
    line-height: 1;
    margin-bottom: 4px;
}

.ug-title[b-qpkqvcbtw7] {
    font-family: var(--font-display);
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--text);
    margin: 0;
    letter-spacing: .02em;
}

.ug-body[b-qpkqvcbtw7] {
    font-size: 0.9rem;
    color: var(--muted);
    line-height: 1.65;
    max-width: 360px;
    margin: 0;
}

.ug-cta[b-qpkqvcbtw7] {
    display: inline-block;
    margin-top: 8px;
    padding: 11px 28px;
    border-radius: var(--radius, 8px);
    background: var(--accent);
    color: #fff;
    font-size: 0.92rem;
    font-weight: 600;
    text-decoration: none;
    transition: opacity 120ms;
}

.ug-cta:hover[b-qpkqvcbtw7] { opacity: .88; }
/* /Components/VarshaphalPanel.razor.rz.scp.css */
/* ── Varshaphal Panel — Tajika Annual Solar Return ───────────────────────── */

:root[b-tch1gll96w] {
    --vp-exalted:  #059669;
    --vp-own:      #0284c7;
    --vp-friendly: #7c3aed;
    --vp-neutral:  #64748b;
    --vp-enemy:    #d97706;
    --vp-debi:     #dc2626;
}

.vp-root[b-tch1gll96w] { padding: 0 0 32px; }

.vp-loading[b-tch1gll96w] { display:flex; flex-direction:column; align-items:center; gap:12px; padding:48px; color:var(--muted); }
.vp-error[b-tch1gll96w]   { background:var(--danger-bg,#fef2f2); color:var(--danger,#b91c1c); padding:16px; border-radius:8px; margin:16px 0; }

/* ── Toolbar ─────────────────────────────────────────────────────────────── */
.vp-toolbar[b-tch1gll96w] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 0 16px;
    flex-wrap: wrap;
}

.vp-year-nav[b-tch1gll96w] { display:flex; align-items:center; gap:10px; }
.vp-year-btn[b-tch1gll96w] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 4px 10px;
    cursor: pointer;
    color: var(--text);
    font-size: 16px;
    transition: background .15s;
}
.vp-year-btn:hover[b-tch1gll96w] { background: var(--surface-hover,var(--border)); }
.vp-year-label[b-tch1gll96w] { font-weight: 600; font-size: 18px; color: var(--text); }
.vp-sr-time[b-tch1gll96w] { font-size: 13px; color: var(--muted); }

/* ── Hero cards ──────────────────────────────────────────────────────────── */
.vp-hero-grid[b-tch1gll96w] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px,1fr));
    gap: 14px;
    margin-bottom: 20px;
}

.vp-hero-card[b-tch1gll96w] {
    border-radius: 12px;
    padding: 18px 16px 14px;
    border: 1px solid var(--border);
    background: var(--surface);
    text-align: center;
}

.vp-card-label[b-tch1gll96w] { font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); margin-bottom: 6px; }
.vp-card-value[b-tch1gll96w] { font-size: 24px; font-weight: 700; color: var(--text); margin-bottom: 4px; }
.vp-card-sub[b-tch1gll96w]   { font-size: 14px; color: var(--muted); }

.vp-card-lagna[b-tch1gll96w]   { border-top: 3px solid #6366f1; }
.vp-card-muntha[b-tch1gll96w]  { border-top: 3px solid #0ea5e9; }
.vp-card-exalted[b-tch1gll96w] { border-top: 3px solid var(--vp-exalted); }
.vp-card-own[b-tch1gll96w]     { border-top: 3px solid var(--vp-own); }
.vp-card-friendly[b-tch1gll96w]{ border-top: 3px solid var(--vp-friendly); }
.vp-card-neutral[b-tch1gll96w] { border-top: 3px solid var(--vp-neutral); }
.vp-card-enemy[b-tch1gll96w]   { border-top: 3px solid var(--vp-enemy); }
.vp-card-debi[b-tch1gll96w]    { border-top: 3px solid var(--vp-debi); }

/* ── Synopsis & Highlights ────────────────────────────────────────────────── */
.vp-synopsis[b-tch1gll96w] {
    background: var(--surface);
    border-left: 3px solid #6366f1;
    padding: 14px 16px;
    border-radius: 0 8px 8px 0;
    font-size: 14px;
    line-height: 1.65;
    color: var(--text);
    margin-bottom: 16px;
}
.vp-synopsis p[b-tch1gll96w] { margin: 0; }

.vp-highlights[b-tch1gll96w] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 20px;
}
.vp-highlight-item[b-tch1gll96w] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 13.5px;
    color: var(--text);
    line-height: 1.5;
}

/* ── Sub-tabs ────────────────────────────────────────────────────────────── */
.vp-subtabs[b-tch1gll96w] {
    display: flex;
    gap: 4px;
    border-bottom: 1px solid var(--border);
    margin-bottom: 18px;
    flex-wrap: wrap;
}
.vp-subtab[b-tch1gll96w], .vp-subtab-active[b-tch1gll96w] {
    padding: 7px 14px;
    border: none;
    background: none;
    cursor: pointer;
    font-size: 13.5px;
    color: var(--muted);
    border-bottom: 2px solid transparent;
    transition: all .15s;
}
.vp-subtab:hover[b-tch1gll96w]      { color: var(--text); }
.vp-subtab-active[b-tch1gll96w]     { color: #6366f1; border-bottom-color: #6366f1; font-weight: 600; }

/* ── Table ───────────────────────────────────────────────────────────────── */
.vp-table-wrap[b-tch1gll96w] { overflow-x: auto; border: 1px solid var(--border); border-radius: var(--radius); }
.vp-table[b-tch1gll96w] {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px;
    background: var(--surface);
}
.vp-table thead tr[b-tch1gll96w] { background: var(--surface2); }
.vp-table th[b-tch1gll96w] {
    text-align: left;
    padding: 8px 12px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--muted);
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
}
.vp-table td[b-tch1gll96w] {
    padding: 9px 12px;
    border-bottom: 1px solid var(--border);
    vertical-align: top;
}
.vp-table tbody tr:hover td[b-tch1gll96w] { background: rgba(229,163,45,.06); }
.vp-row-current td[b-tch1gll96w] { background: rgba(229,163,45,.11); color: var(--accent); font-weight: 600; }
.vp-row-current td:first-child[b-tch1gll96w] { border-left: 3px solid var(--accent); }
.vp-graha[b-tch1gll96w] { font-weight: 600; }
.vp-deg[b-tch1gll96w]   { font-variant-numeric: tabular-nums; }
.vp-reading-cell[b-tch1gll96w] { font-size: 12.5px; color: var(--muted); max-width: 300px; line-height: 1.45; }
.vp-sig-cell[b-tch1gll96w] { font-size: 12.5px; color: var(--muted); }

/* Dignity classes */
.dig-exalted[b-tch1gll96w]  { color: var(--vp-exalted);  font-weight: 600; }
.dig-own[b-tch1gll96w]      { color: var(--vp-own);      font-weight: 600; }
.dig-friendly[b-tch1gll96w] { color: var(--vp-friendly); }
.dig-enemy[b-tch1gll96w]    { color: var(--vp-enemy); }
.dig-debi[b-tch1gll96w]     { color: var(--vp-debi); }

/* ── Yoga cards ──────────────────────────────────────────────────────────── */
.vp-yoga-grid[b-tch1gll96w] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px,1fr));
    gap: 12px;
    margin-bottom: 16px;
}
.vp-yoga-card[b-tch1gll96w] {
    border-radius: 10px;
    border: 1px solid var(--border);
    padding: 14px;
    background: var(--surface);
}
.vp-yoga-card-excellent[b-tch1gll96w] { border-left: 4px solid var(--vp-exalted); }
.vp-yoga-card-good[b-tch1gll96w]      { border-left: 4px solid var(--vp-own); }
.vp-yoga-card-mixed[b-tch1gll96w]     { border-left: 4px solid var(--vp-neutral); }
.vp-yoga-card-challenge[b-tch1gll96w] { border-left: 4px solid var(--vp-enemy); }
.vp-yoga-card-difficult[b-tch1gll96w] { border-left: 4px solid var(--vp-debi); }

.vp-yoga-header[b-tch1gll96w] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    flex-wrap: wrap;
}
.vp-yoga-name[b-tch1gll96w]    { font-weight: 700; font-size: 14px; }
.vp-yoga-aspect[b-tch1gll96w]  { font-size: 14px; color: var(--muted); }
.vp-yoga-quality[b-tch1gll96w] { font-size: 13px; font-weight: 600; padding: 2px 7px; border-radius: 10px; }

.vp-q-excellent[b-tch1gll96w] { background: rgba(5,150,105,.15); color: var(--vp-exalted); }
.vp-q-good[b-tch1gll96w]      { background: rgba(2,132,199,.15); color: var(--vp-own); }
.vp-q-mixed[b-tch1gll96w]     { background: rgba(100,116,139,.12); color: var(--vp-neutral); }
.vp-q-challenge[b-tch1gll96w] { background: rgba(217,119,6,.15); color: var(--vp-enemy); }
.vp-q-difficult[b-tch1gll96w] { background: rgba(220,38,38,.12); color: var(--vp-debi); }

.vp-yoga-planets[b-tch1gll96w] { font-size: 13px; font-weight: 600; margin-bottom: 4px; }
.vp-yoga-status[b-tch1gll96w]  { font-size: 14px; color: var(--muted); margin-bottom: 6px; }
.vp-yoga-effect[b-tch1gll96w]  { font-size: 12.5px; color: var(--text); line-height: 1.5; }

/* ── Mudda Dasha current ─────────────────────────────────────────────────── */
.vp-mudda-current[b-tch1gll96w] {
    background: linear-gradient(135deg, rgba(99,102,241,.1), rgba(14,165,233,.08));
    border: 1px solid rgba(99,102,241,.2);
    border-radius: 12px;
    padding: 18px 20px;
    margin-bottom: 16px;
}
.vp-mudda-label[b-tch1gll96w]  { font-size: 13px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); margin-bottom: 4px; }
.vp-mudda-lord[b-tch1gll96w]   { font-size: 28px; font-weight: 700; color: var(--text); margin-bottom: 4px; }
.vp-mudda-dates[b-tch1gll96w]  { font-size: 13px; color: var(--muted); margin-bottom: 8px; }
.vp-mudda-reading[b-tch1gll96w]{ font-size: 13.5px; color: var(--text); line-height: 1.55; }

/* ── Sahams ──────────────────────────────────────────────────────────────── */
.vp-saham-intro[b-tch1gll96w], .vp-saham-note[b-tch1gll96w] {
    font-size: 13px;
    color: var(--muted);
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 12px 14px;
    margin-bottom: 14px;
    line-height: 1.55;
}
.vp-saham-name[b-tch1gll96w] { font-weight: 600; font-size: 13px; }
.vp-empty[b-tch1gll96w] { color: var(--muted); font-style: italic; padding: 16px 0; }

@media (prefers-color-scheme: dark) {
    .vp-card-lagna[b-tch1gll96w]   { background: rgba(99,102,241,.08); }
    .vp-mudda-current[b-tch1gll96w] { background: linear-gradient(135deg, rgba(99,102,241,.15), rgba(14,165,233,.1)); }
}
:root[data-theme="dark"] .vp-card-lagna[b-tch1gll96w]   { background: rgba(99,102,241,.08); }
:root[data-theme="light"] .vp-card-lagna[b-tch1gll96w]  { background: var(--surface); }

/* ── Mobile ── */
@media (max-width: 767px) {
    .vp-year-btn[b-tch1gll96w] {
        min-height: 44px;
        min-width: 44px;
        padding: 10px 14px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .vp-table th[b-tch1gll96w]     { font-size: .76rem; padding: 8px 8px; }
    .vp-table td[b-tch1gll96w]     { padding: 8px 8px; font-size: .88rem; }
    .vp-table-wrap[b-tch1gll96w]   { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .vp-year-row[b-tch1gll96w]     { flex-wrap: wrap; gap: 8px; }
    .vp-section[b-tch1gll96w]      { padding: 14px 16px; }
}
/* /Components/VedhaStrikePanel.razor.rz.scp.css */
/* ── Vedha Strike Window Panel ──────────────────────────────────────────── */

.vsw-panel[b-pthqpt61tl] {
    margin-top: 2rem;
    padding: 1.25rem 1rem 1rem;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
}

.vsw-header[b-pthqpt61tl] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}
.vsw-header-left[b-pthqpt61tl] { flex: 1; }
.vsw-title[b-pthqpt61tl] { font-size: 15px; font-weight: 700; margin: 0 0 3px; color: var(--text); }
.vsw-sub[b-pthqpt61tl]   { font-size: 12px; color: var(--muted); margin: 0; }

.vsw-days-select[b-pthqpt61tl] {
    padding: .3rem .6rem;
    border: 1px solid var(--border);
    border-radius: 7px;
    background: var(--surface2);
    color: var(--text);
    font-size: .82rem;
    flex-shrink: 0;
}

/* Layer filter tabs */
.vsw-tabs[b-pthqpt61tl] { display: flex; gap: 6px; margin-bottom: .85rem; flex-wrap: wrap; }
.vsw-tab[b-pthqpt61tl] {
    padding: .28rem .75rem;
    border: 1px solid var(--border);
    border-radius: 6px;
    background: transparent;
    color: var(--muted);
    font-size: .78rem;
    font-weight: 600;
    cursor: pointer;
    font-family: inherit;
    transition: background .12s, color .12s;
}
.vsw-tab--active[b-pthqpt61tl] { background: var(--accent2); color: #fff; border-color: var(--accent2); }

/* Active-now banner */
.vsw-active-banner[b-pthqpt61tl] {
    background: color-mix(in srgb, var(--accent2) 10%, var(--surface2));
    border: 1px solid color-mix(in srgb, var(--accent2) 25%, var(--border));
    border-radius: 8px;
    padding: .55rem .9rem;
    font-size: .82rem;
    font-weight: 600;
    color: var(--accent2);
    margin-bottom: .85rem;
}

/* Table */
.vsw-table-wrap[b-pthqpt61tl] { overflow-x: auto; border: 1px solid var(--border); border-radius: 8px; margin-bottom: .75rem; }
.vsw-table[b-pthqpt61tl] {
    width: 100%;
    border-collapse: collapse;
    font-size: .8rem;
    background: var(--surface);
    font-variant-numeric: tabular-nums;
}
.vsw-table thead tr[b-pthqpt61tl] { background: var(--surface2); }
.vsw-table th[b-pthqpt61tl] {
    text-align: left;
    padding: 6px 10px;
    font-size: .7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--muted);
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
}
.vsw-table td[b-pthqpt61tl] { padding: 6px 10px; border-bottom: 1px solid var(--border); color: var(--text); vertical-align: middle; }
.vsw-table tbody tr:last-child td[b-pthqpt61tl] { border-bottom: none; }

/* Row states */
.vsw-row--active[b-pthqpt61tl]  { background: color-mix(in srgb, var(--accent2) 7%, transparent); }
.vsw-row--benefic:not(.vsw-row--active)[b-pthqpt61tl] { background: transparent; }
.vsw-row--malefic:not(.vsw-row--active)[b-pthqpt61tl] { background: transparent; }

/* Layer badges */
.vsw-layer-badge[b-pthqpt61tl] {
    display: inline-block;
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    padding: 2px 7px;
    border-radius: 4px;
    white-space: nowrap;
}
.vsw-layer-janma[b-pthqpt61tl] { background: color-mix(in srgb, var(--accent) 16%, var(--surface2)); color: var(--accent); }
.vsw-layer-md[b-pthqpt61tl],
.vsw-layer-ad[b-pthqpt61tl],
.vsw-layer-pd[b-pthqpt61tl]    { background: color-mix(in srgb, var(--accent2) 14%, var(--surface2)); color: var(--accent2); }
.vsw-layer-csl[b-pthqpt61tl]   { background: color-mix(in srgb, var(--success) 14%, var(--surface2)); color: var(--success); }

/* Direction badges */
.vsw-dir-badge[b-pthqpt61tl] {
    display: inline-block;
    font-size: .68rem;
    font-weight: 600;
    padding: 2px 7px;
    border-radius: 4px;
    white-space: nowrap;
}
.vsw-dir-janma[b-pthqpt61tl]    { background: color-mix(in srgb, var(--accent)  12%, var(--surface2)); color: var(--accent); }
.vsw-dir-direct[b-pthqpt61tl]   { background: color-mix(in srgb, var(--danger)  12%, var(--surface2)); color: var(--danger); }
.vsw-dir-forward[b-pthqpt61tl]  { background: color-mix(in srgb, var(--accent2) 10%, var(--surface2)); color: var(--accent2); }
.vsw-dir-backward[b-pthqpt61tl] { background: color-mix(in srgb, var(--muted)   15%, var(--surface2)); color: var(--muted); }

/* Planet column */
.vsw-planet[b-pthqpt61tl]  { font-weight: 700; display: flex; align-items: center; gap: 5px; }
.vsw-benefic[b-pthqpt61tl] { color: var(--success); }
.vsw-malefic[b-pthqpt61tl] { color: var(--danger); }

/* Active dot */
.vsw-active-dot[b-pthqpt61tl] {
    display: inline-block;
    width: 7px; height: 7px;
    border-radius: 50%;
    background: var(--accent2);
    flex-shrink: 0;
    animation: vsw-pulse-b-pthqpt61tl 1.6s ease-in-out infinite;
}
@keyframes vsw-pulse-b-pthqpt61tl {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%       { opacity: .5; transform: scale(1.35); }
}

.vsw-nak[b-pthqpt61tl]    { color: var(--muted); font-size: .78rem; }
.vsw-time[b-pthqpt61tl]   { font-size: .76rem; color: var(--text); white-space: nowrap; }
.vsw-muted[b-pthqpt61tl]  { color: var(--muted); }
.vsw-weight[b-pthqpt61tl] { text-align: center; font-weight: 700; color: var(--muted); }

/* States */
.vsw-loading[b-pthqpt61tl]     { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: .875rem; padding: .75rem 0; }
.vsw-spinner[b-pthqpt61tl]     { width: 16px; height: 16px; border: 2px solid var(--border); border-top-color: var(--accent2); border-radius: 50%; animation: vsw-spin-b-pthqpt61tl .7s linear infinite; flex-shrink: 0; }
@keyframes vsw-spin-b-pthqpt61tl { to { transform: rotate(360deg); } }
.vsw-empty-state[b-pthqpt61tl] { color: var(--muted); font-size: .875rem; padding: .75rem 0; }
.vsw-empty[b-pthqpt61tl]       { color: var(--muted); font-size: .82rem; padding: .65rem 0; }
.vsw-error[b-pthqpt61tl]       { color: var(--danger); font-size: .82rem; padding: .65rem 0; }

.vsw-disclaimer[b-pthqpt61tl]  { font-size: 11px; color: var(--muted); font-style: italic; margin: 0; opacity: .8; }

@media (max-width: 540px) {
    .vsw-table th:nth-child(7)[b-pthqpt61tl],
    .vsw-table td:nth-child(7)[b-pthqpt61tl] { display: none; }  /* hide Wt column */
    .vsw-time[b-pthqpt61tl] { font-size: .72rem; }
}
/* /Components/YogasPanel.razor.rz.scp.css */
.shloka-block[b-uni8v24m82] {
    margin-top: 12px;
    padding: 10px 14px;
    background: color-mix(in srgb, var(--accent) 7%, transparent);
    border-left: 3px solid var(--accent);
    border-radius: 0 6px 6px 0;
}

.shloka-deva[b-uni8v24m82] {
    font-family: 'Noto Sans Devanagari', 'Mangal', 'Sanskrit Text',
                 'Noto Sans Telugu', 'Noto Sans Tamil',
                 'Noto Sans Kannada', 'Noto Sans Malayalam', serif;
    font-size: 15px;
    line-height: 2.0;
    color: var(--text);
    margin-bottom: 5px;
}

.shloka-iast[b-uni8v24m82] {
    font-style: italic;
    color: var(--muted);
    font-size: 13px;
    margin-bottom: 4px;
    line-height: 1.5;
}

.shloka-source[b-uni8v24m82] {
    color: var(--accent);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    margin-bottom: 5px;
}

.shloka-meaning[b-uni8v24m82] {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.55;
    font-style: italic;
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .shloka-block[b-uni8v24m82]   { padding: 8px 12px; margin-top: 10px; }
    .shloka-deva[b-uni8v24m82]    { font-size: 14px; line-height: 1.9; margin-bottom: 4px; }
    .shloka-iast[b-uni8v24m82]    { font-size: 12px; margin-bottom: 3px; }
    .shloka-source[b-uni8v24m82]  { font-size: 9px; }
    .shloka-meaning[b-uni8v24m82] { font-size: 12px; line-height: 1.5; }
}
/* /Components/YoginiPanel.razor.rz.scp.css */
.yp-current[b-dsa6z5vi2h]     { background: color-mix(in srgb, var(--accent) 8%, var(--surface)); border: 1px solid var(--accent); border-radius: var(--radius); padding: 16px 20px; margin-bottom: 20px; }
.yp-cur-label[b-dsa6z5vi2h]   { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--accent); margin-bottom: 4px; }
.yp-cur-name[b-dsa6z5vi2h]    { font-size: 22px; font-weight: 700; color: var(--text); }
.yp-cur-lord[b-dsa6z5vi2h]    { font-size: 13px; color: var(--muted); margin: 2px 0; }
.yp-cur-dates[b-dsa6z5vi2h]   { font-size: 14px; color: var(--muted); font-variant-numeric: tabular-nums; }
.yp-cur-note[b-dsa6z5vi2h]    { font-size: 13px; color: var(--text); margin-top: 8px; line-height: 1.5; }
.yp-table-wrap[b-dsa6z5vi2h]  { overflow-x: auto; margin-bottom: 16px; border: 1px solid var(--border); border-radius: var(--radius); }
.yp-table[b-dsa6z5vi2h]       { width: 100%; border-collapse: collapse; font-size: 13px; background: var(--surface); }
.yp-table thead tr[b-dsa6z5vi2h] { background: var(--surface2); }
.yp-table th[b-dsa6z5vi2h]    { text-align: left; padding: 7px 10px; font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); border-bottom: 1px solid var(--border); }
.yp-table td[b-dsa6z5vi2h]    { padding: 9px 10px; border-bottom: 1px solid var(--border); color: var(--text); }
.yp-table tbody tr:hover td[b-dsa6z5vi2h] { background: rgba(229,163,45,.06); }
.yp-row-current td[b-dsa6z5vi2h] { background: rgba(229,163,45,.11); color: var(--accent); font-weight: 600; }
.yp-row-current td:first-child[b-dsa6z5vi2h] { border-left: 3px solid var(--accent); }
.yp-td-yogini[b-dsa6z5vi2h]   { font-weight: 600; }

.yp-section-divider[b-dsa6z5vi2h] { display: flex; align-items: center; gap: 12px; margin: 28px 0 8px; }
.yp-section-divider[b-dsa6z5vi2h]::before,
.yp-section-divider[b-dsa6z5vi2h]::after { content: ""; flex: 1; height: 1px; background: var(--border); }
.yp-section-divider span[b-dsa6z5vi2h] { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--accent); white-space: nowrap; }
.yp-section-note[b-dsa6z5vi2h] { font-size: 13px; color: var(--muted); margin-bottom: 12px; line-height: 1.5; }
.yp-ash-current[b-dsa6z5vi2h] { background: color-mix(in srgb, var(--muted) 6%, var(--surface)); border-color: var(--border); }
/* /Layout/MainLayout.razor.rz.scp.css */
/* ── Shell: sidebar + main column ─────────────────── */
.ml-shell[b-gqluplb98o] {
    display: flex;
    min-height: 100vh;
}

.ml-right[b-gqluplb98o] {
    flex: 1;
    min-width: 0;       /* prevent flex child from overflowing */
    display: flex;
    flex-direction: column;
}
/* /Pages/Account.razor.rz.scp.css */
/* ── Layout ─────────────────────────────────────────────────────────────── */
.acc-container[b-sw1tpuj27x] {
    max-width: 680px;
    margin: 0 auto;
    padding: 28px 16px 4rem;
}

@media (max-width: 767px) {
    .acc-container[b-sw1tpuj27x] {
        padding-bottom: calc(var(--bottom-nav-h, 62px) + 2rem);
    }
}

.acc-heading[b-sw1tpuj27x] {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 4px;
}

.acc-subheading[b-sw1tpuj27x] {
    color: var(--muted);
    margin-bottom: 28px;
}

/* ── Cards ──────────────────────────────────────────────────────────────── */
.acc-card[b-sw1tpuj27x] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius, 8px);
    padding: 20px;
}

.acc-card--mt[b-sw1tpuj27x] {
    margin-top: 16px;
}

.acc-card--danger-zone[b-sw1tpuj27x] {
    border-color: color-mix(in srgb, var(--danger) 35%, transparent);
}

/* ── Section heading ────────────────────────────────────────────────────── */
.acc-section[b-sw1tpuj27x] {
    font-size: 15px;
    font-weight: 700;
    margin: 0 0 14px;
}

.acc-section--danger[b-sw1tpuj27x] {
    color: var(--danger);
}

/* ── Row / label ────────────────────────────────────────────────────────── */
.acc-row[b-sw1tpuj27x] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 6px 0;
}

.acc-label[b-sw1tpuj27x] {
    min-width: 80px;
    font-size: 13px;
    color: var(--muted);
    font-weight: 500;
}

/* ── Badges ─────────────────────────────────────────────────────────────── */
.acc-badge[b-sw1tpuj27x] {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
}

.acc-badge--free[b-sw1tpuj27x] {
    background: color-mix(in srgb, var(--muted) 15%, var(--surface2));
    color: var(--muted);
}

.acc-badge--premium[b-sw1tpuj27x] {
    background: color-mix(in srgb, var(--accent) 15%, var(--surface2));
    color: var(--accent);
}

.acc-badge--scholar[b-sw1tpuj27x] {
    background: color-mix(in srgb, var(--accent2) 15%, var(--surface2));
    color: var(--accent2);
}

.acc-badge--superadmin[b-sw1tpuj27x] {
    background: color-mix(in srgb, var(--danger) 15%, var(--surface2));
    color: var(--danger);
}

/* ── Buttons ────────────────────────────────────────────────────────────── */
.acc-btn[b-sw1tpuj27x] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 16px;
    border-radius: var(--radius, 8px);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    border: none;
    text-decoration: none;
    white-space: nowrap;
}

.acc-btn--mt[b-sw1tpuj27x] {
    margin-top: 14px;
}

.acc-btn--accent[b-sw1tpuj27x] {
    background: var(--accent);
    color: #fff;
}

.acc-btn--warning[b-sw1tpuj27x] {
    background: var(--warning);
    color: #fff;
    flex-shrink: 0;
    padding: 7px 16px;
}

.acc-btn--danger[b-sw1tpuj27x] {
    background: var(--danger);
    color: #fff;
    border: none;
}

.acc-btn--bold[b-sw1tpuj27x] {
    font-weight: 700;
}

.acc-btn--outline[b-sw1tpuj27x] {
    border: 1px solid var(--border);
    background: transparent;
    color: var(--text);
}

.acc-btn--outline-accent[b-sw1tpuj27x] {
    border: 1px solid var(--accent);
    background: transparent;
    color: var(--accent);
}

.acc-btn--outline-danger[b-sw1tpuj27x] {
    border: 1.5px solid var(--danger);
    background: transparent;
    color: var(--danger);
}

.acc-btn--cancel[b-sw1tpuj27x] {
    margin-top: 12px;
    padding: 7px 16px;
    border: 1px solid var(--danger);
    color: var(--danger);
    background: transparent;
    border-radius: var(--radius, 8px);
    font-size: 12px;
    cursor: pointer;
}

.acc-btn--surface[b-sw1tpuj27x] {
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
}

.acc-btn--surface-danger[b-sw1tpuj27x] {
    border: 1px solid color-mix(in srgb, var(--danger) 30%, transparent);
    background: var(--surface);
    color: var(--text);
}

/* ── Action row (subscription card) ────────────────────────────────────── */
.acc-actions[b-sw1tpuj27x] {
    margin-top: 16px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

/* ── Notices / inline banners ───────────────────────────────────────────── */
.acc-notice[b-sw1tpuj27x] {
    margin-top: 12px;
    padding: 10px 14px;
    border-radius: var(--radius, 8px);
    font-size: 13px;
    border: 1px solid transparent;
}

.acc-notice--warning[b-sw1tpuj27x] {
    background: color-mix(in srgb, var(--warning) 12%, transparent);
    border-color: color-mix(in srgb, var(--warning) 35%, transparent);
    color: var(--warning);
}

.acc-notice--danger[b-sw1tpuj27x] {
    background: color-mix(in srgb, var(--danger) 10%, transparent);
    border-color: color-mix(in srgb, var(--danger) 30%, transparent);
    color: var(--danger);
}

/* ── Confirm boxes ──────────────────────────────────────────────────────── */
.acc-confirm[b-sw1tpuj27x] {
    margin-top: 12px;
    padding: 12px 16px;
    border-radius: 10px;
    font-size: 13px;
    border: 1px solid transparent;
}

.acc-confirm--danger[b-sw1tpuj27x] {
    background: color-mix(in srgb, var(--danger) 10%, transparent);
    border-color: color-mix(in srgb, var(--danger) 30%, transparent);
}

.acc-confirm--warning[b-sw1tpuj27x] {
    background: color-mix(in srgb, var(--warning) 10%, transparent);
    border-color: color-mix(in srgb, var(--warning) 30%, transparent);
}

.acc-confirm-title[b-sw1tpuj27x] {
    margin: 0 0 6px;
    font-weight: 600;
}

.acc-confirm-title--bold[b-sw1tpuj27x] {
    font-weight: 700;
}

.acc-confirm--danger .acc-confirm-title[b-sw1tpuj27x],
.acc-confirm--danger .acc-confirm-body[b-sw1tpuj27x] {
    color: var(--danger);
}

.acc-confirm--warning .acc-confirm-title[b-sw1tpuj27x],
.acc-confirm--warning .acc-confirm-body[b-sw1tpuj27x] {
    color: var(--warning);
}

.acc-confirm-body[b-sw1tpuj27x] {
    margin: 0 0 10px;
}

.acc-confirm-actions[b-sw1tpuj27x] {
    display: flex;
    gap: 8px;
}

/* ── Email verify banner ────────────────────────────────────────────────── */
.acc-verify-banner[b-sw1tpuj27x] {
    background: color-mix(in srgb, var(--warning) 12%, transparent);
    border: 1px solid color-mix(in srgb, var(--warning) 35%, transparent);
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.acc-verify-title[b-sw1tpuj27x] {
    color: var(--warning);
    font-size: 14px;
}

.acc-verify-text[b-sw1tpuj27x] {
    color: var(--warning);
    font-size: 13px;
    margin: 4px 0 0;
}

/* ── Hint / muted inline text ───────────────────────────────────────────── */
.acc-hint[b-sw1tpuj27x] {
    padding: 12px 0;
    font-size: 13px;
    color: var(--muted);
}

/* ── Field messages ─────────────────────────────────────────────────────── */
.acc-field-msg[b-sw1tpuj27x] {
    font-size: 12px;
    margin-top: 6px;
}

.acc-field-msg--danger[b-sw1tpuj27x] {
    color: var(--danger);
}

.acc-field-msg--success[b-sw1tpuj27x] {
    color: var(--success);
}

.acc-field-msg--mb[b-sw1tpuj27x] {
    margin-bottom: 10px;
}

/* ── Select input ───────────────────────────────────────────────────────── */
.acc-select[b-sw1tpuj27x] {
    border: 1px solid var(--border);
    border-radius: var(--radius, 8px);
    padding: 6px 10px;
    font-size: 13px;
    background: var(--surface);
    color: var(--text);
    min-width: 160px;
}

/* ── Muted small text ───────────────────────────────────────────────────── */
.acc-muted-sm[b-sw1tpuj27x] {
    color: var(--muted);
    font-size: 13px;
}

.acc-muted-sm--mb[b-sw1tpuj27x] {
    margin-bottom: 12px;
}

.acc-muted-sm--mb-lg[b-sw1tpuj27x] {
    margin-bottom: 20px;
}

/* ── Referral ───────────────────────────────────────────────────────────── */
.acc-referral-row[b-sw1tpuj27x] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.acc-referral-code[b-sw1tpuj27x] {
    font-size: 22px;
    font-weight: 700;
    font-family: monospace;
    letter-spacing: 2px;
    color: var(--accent);
}

.acc-referral-meta[b-sw1tpuj27x] {
    color: var(--muted);
    font-size: 12px;
    margin-top: 8px;
}

/* ── Quick links ────────────────────────────────────────────────────────── */
.acc-links[b-sw1tpuj27x] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.acc-link[b-sw1tpuj27x] {
    color: var(--accent);
    font-size: 14px;
}

/* ── Danger zone ────────────────────────────────────────────────────────── */
.acc-danger-list[b-sw1tpuj27x] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.acc-danger-row[b-sw1tpuj27x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.acc-danger-label[b-sw1tpuj27x] {
    font-size: 14px;
    font-weight: 600;
}

.acc-danger-label--red[b-sw1tpuj27x] {
    color: var(--danger);
}

.acc-danger-hint[b-sw1tpuj27x] {
    font-size: 12px;
    color: var(--muted);
}

.acc-divider--danger[b-sw1tpuj27x] {
    border: none;
    border-top: 1px solid color-mix(in srgb, var(--danger) 20%, transparent);
    margin: 0;
}
/* /Pages/AdminDashboard.razor.rz.scp.css */
.adm-wrap[b-7wy0mmko9f] {
    max-width: 960px;
    margin: 0 auto;
    padding: 32px 20px 60px;
}

.adm-title[b-7wy0mmko9f] {
    font-size: 1.6rem;
    font-weight: 700;
    margin: 0 0 4px;
}

.adm-sub[b-7wy0mmko9f] {
    color: var(--muted);
    font-size: 0.875rem;
    margin: 0 0 32px;
}

.adm-section[b-7wy0mmko9f] {
    margin-bottom: 36px;
}

.adm-section-title[b-7wy0mmko9f] {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0 0 14px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--border, #e5e7eb);
}

.adm-cards[b-7wy0mmko9f] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.adm-card[b-7wy0mmko9f] {
    background: var(--surface, #f9fafb);
    border: 1px solid var(--border, #e5e7eb);
    border-radius: 10px;
    padding: 16px 20px;
    min-width: 130px;
}

.adm-card-total[b-7wy0mmko9f] {
    border-color: var(--accent, #0f766e);
}

.adm-card-num[b-7wy0mmko9f] {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--text, #111827);
    line-height: 1;
    margin-bottom: 6px;
}

.adm-card-total .adm-card-num[b-7wy0mmko9f] {
    color: var(--accent, #0f766e);
}

.adm-card-label[b-7wy0mmko9f] {
    font-size: 0.88rem;
    color: var(--muted, #6b7280);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.adm-center[b-7wy0mmko9f] {
    display: flex;
    justify-content: center;
    padding: 60px 0;
}

.adm-error[b-7wy0mmko9f] {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #b91c1c;
    border-radius: 8px;
    padding: 12px 16px;
    margin-bottom: 24px;
    font-size: 0.875rem;
}

.adm-ts[b-7wy0mmko9f] {
    font-size: 0.85rem;
    color: var(--muted, #6b7280);
    margin-top: 16px;
}
/* /Pages/Admin/AdminAnalytics.razor.rz.scp.css */
.aa-date-row[b-wnykg4v7f3] { display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap }
.aa-date-input[b-wnykg4v7f3] { padding:6px 10px;border:1px solid var(--border);border-radius:6px;font-size:13px;background:var(--input-bg,#fff);color:var(--text) }
.aa-btn[b-wnykg4v7f3] { padding:7px 16px;background:#7c3aed;color:#fff;border:none;border-radius:7px;font-size:13px;font-weight:600;cursor:pointer }
.aa-kpi-strip[b-wnykg4v7f3] { display:flex;gap:16px;flex-wrap:wrap;margin-bottom:20px }
.aa-kpi[b-wnykg4v7f3] { flex:1;min-width:140px;background:var(--card-bg,#fff);border:1px solid var(--border);border-radius:10px;padding:14px 16px }
.aa-kpi-val[b-wnykg4v7f3] { font-size:22px;font-weight:700;color:#7c3aed }
.aa-kpi-label[b-wnykg4v7f3] { font-size:12px;color:#6b7280;margin-top:2px }
.aa-table[b-wnykg4v7f3] { width:100%;border-collapse:collapse;font-size:13px }
.aa-table th[b-wnykg4v7f3] { padding:8px 10px;text-align:left;background:#f5f3ff;font-size:12px;font-weight:600;color:#374151 }
.aa-table td[b-wnykg4v7f3] { padding:8px 10px;border-bottom:1px solid #f3f4f6;color:var(--text) }
.aa-sub-title[b-wnykg4v7f3] { font-size:13px;font-weight:700;color:#374151;margin:0 0 8px }
.aa-loading[b-wnykg4v7f3] { color:#6b7280;font-size:13px;padding:12px 0 }
.aa-bar-chart[b-wnykg4v7f3] { display:flex;flex-direction:column;gap:6px }
.aa-bar-row[b-wnykg4v7f3] { display:flex;align-items:center;gap:8px }
.aa-bar-label[b-wnykg4v7f3] { min-width:70px;font-size:12px;color:#6b7280 }
.aa-bar-track[b-wnykg4v7f3] { flex:1;height:18px;background:#f3f4f6;border-radius:4px;overflow:hidden }
.aa-bar-fill[b-wnykg4v7f3] { height:100%;background:#7c3aed;border-radius:4px;transition:width .3s }
.aa-bar-val[b-wnykg4v7f3] { min-width:90px;font-size:12px;color:var(--text);text-align:right }
/* /Pages/Admin/AdminDirectives.razor.rz.scp.css */
.dirstat-tiles[b-270thvmvds] {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.dirstat-tile[b-270thvmvds] {
    flex: 1;
    min-width: 130px;
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 12px 14px;
    background: var(--surface);
}

.dirstat-num[b-270thvmvds] {
    font-size: 22px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.dirstat-lbl[b-270thvmvds] {
    font-size: 11.5px;
    color: var(--muted);
    margin-top: 2px;
}

.dirstat-flag[b-270thvmvds] {
    display: inline-block;
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: .04em;
    padding: 2px 8px;
    border-radius: 12px;
    margin-right: 4px;
    border: 1px solid var(--border);
    color: var(--muted);
}

.dirstat-flag-loosen[b-270thvmvds]  { color: #8a6116; border-color: #8a6116; }
.dirstat-flag-tighten[b-270thvmvds] { color: #3d4380; border-color: #3d4380; }
.dirstat-flag-rework-wording[b-270thvmvds] { color: #a8323e; border-color: #a8323e; }

/* Drift telemetry row (DARE Skill #5) */
.dirstat-drift-row[b-270thvmvds] {
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid var(--border);
}

.dirstat-drift-label[b-270thvmvds] {
    font-size: 12px;
    font-weight: 600;
    color: var(--muted);
    letter-spacing: .04em;
    text-transform: uppercase;
}

.dirstat-tile-drift[b-270thvmvds] {
    border-color: color-mix(in srgb, var(--border) 70%, #5b7fa6 30%);
}

.dirstat-tile-drift .dirstat-num[b-270thvmvds] {
    color: #3a6fa8;
}

/* Warn accent when drift rate exceeds 10% */
.dirstat-tile-drift-warn[b-270thvmvds] {
    border-color: color-mix(in srgb, var(--border) 40%, #b04a2a 60%);
}

.dirstat-tile-drift-warn .dirstat-num[b-270thvmvds] {
    color: #b04a2a;
}
/* /Pages/Alerts.razor.rz.scp.css */
/* ── Alerts page ─────────────────────────────────────────────────────────── */

.al-wrap[b-523bytj0ib] {
    max-width: 680px;
    margin: 0 auto;
    padding: 28px 16px 5rem;
}

/* Header */
.al-header[b-523bytj0ib] {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 28px;
}
.al-header-icon[b-523bytj0ib] {
    font-size: 2.4rem;
    line-height: 1;
    flex-shrink: 0;
    margin-top: 2px;
}
.al-title[b-523bytj0ib] {
    font-size: 1.4rem;
    font-weight: 700;
    margin: 0 0 4px;
    font-family: var(--font-display, 'Cinzel', serif);
    color: var(--text);
}
.al-subtitle[b-523bytj0ib] {
    font-size: 0.84rem;
    color: var(--muted);
    margin: 0;
    line-height: 1.5;
}

/* Gate */
.al-gate[b-523bytj0ib] {
    padding: 20px;
    border-radius: 12px;
    border: 1px solid var(--border);
    background: var(--surface);
    font-size: 0.9rem;
}
.al-gate a[b-523bytj0ib] { color: var(--accent); }

/* Section label */
.al-section-label[b-523bytj0ib] {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.13em;
    color: var(--muted);
    margin: 24px 0 10px;
}

/* Generic card */
.al-card[b-523bytj0ib] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 18px 20px;
    margin-bottom: 12px;
}
.al-card--explain[b-523bytj0ib] { background: var(--surface2); }
.al-card--future[b-523bytj0ib]  { opacity: 0.85; }

.al-card-hd[b-523bytj0ib] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}
.al-card-title[b-523bytj0ib] {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--text);
    letter-spacing: 0.01em;
}
.al-status-badge[b-523bytj0ib] {
    margin-left: auto;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 700;
}
.al-status-badge--on[b-523bytj0ib]  { background: rgba(76,175,120,.15); color: #4caf78; border:1px solid rgba(76,175,120,.3); }
.al-status-badge--off[b-523bytj0ib] { background: var(--surface2); color: var(--muted); border:1px solid var(--border); }

.al-hint[b-523bytj0ib] {
    font-size: 0.82rem;
    color: var(--muted);
    line-height: 1.55;
    margin: 0 0 14px;
}

.al-loading[b-523bytj0ib] { font-size: 0.82rem; color: var(--muted); padding: 4px 0; }

.al-error[b-523bytj0ib] {
    font-size: 0.78rem;
    color: var(--danger, #d64d72);
    margin: 8px 0 0;
}

/* Buttons */
.al-btn[b-523bytj0ib] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 9px 20px;
    border-radius: 9px;
    font-size: 0.84rem;
    font-weight: 600;
    cursor: pointer;
    border: none;
    transition: opacity .15s, background .15s;
}
.al-btn:disabled[b-523bytj0ib] { opacity: 0.6; cursor: default; }
.al-btn--primary[b-523bytj0ib] {
    background: var(--accent, #e5a32d);
    color: #fff;
}
.al-btn--primary:hover:not(:disabled)[b-523bytj0ib] { opacity: 0.9; }
.al-btn--ghost[b-523bytj0ib] {
    background: transparent;
    border: 1.5px solid var(--border);
    color: var(--muted);
}
.al-btn--ghost:hover:not(:disabled)[b-523bytj0ib] { border-color: var(--danger, #d64d72); color: var(--danger, #d64d72); }

/* Alert type cards */
.al-types[b-523bytj0ib] { display: flex; flex-direction: column; gap: 10px; margin-bottom: 12px; }
.al-type-card[b-523bytj0ib] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 16px 18px;
    transition: border-color .15s;
}
.al-type-card--active[b-523bytj0ib] { border-color: rgba(229,163,45,.35); }

.al-type-head[b-523bytj0ib] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
}
.al-type-icon[b-523bytj0ib] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    flex-shrink: 0;
}
.al-type-icon--vedha[b-523bytj0ib]    { background: rgba(124,106,247,.12); }
.al-type-icon--excellent[b-523bytj0ib]{ background: rgba(245,158,11,.12);  }
.al-type-icon--family[b-523bytj0ib]   { background: rgba(76,175,120,.12);  }

.al-type-meta[b-523bytj0ib] { flex: 1; }
.al-type-name[b-523bytj0ib]    { font-size: 0.88rem; font-weight: 700; color: var(--text); margin-bottom: 2px; }
.al-type-trigger[b-523bytj0ib] { font-size: 0.72rem; color: var(--muted); }

.al-type-toggle-dot[b-523bytj0ib] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid var(--border);
    flex-shrink: 0;
    transition: background .2s, border-color .2s;
}
.al-type-toggle-dot--on[b-523bytj0ib] {
    background: #4caf78;
    border-color: #4caf78;
}

.al-type-desc[b-523bytj0ib] {
    font-size: 0.8rem;
    color: var(--muted);
    line-height: 1.55;
    margin: 0 0 10px;
}

.al-type-shastra[b-523bytj0ib] { display: flex; gap: 6px; flex-wrap: wrap; }
.al-shastra-tag[b-523bytj0ib] {
    padding: 2px 9px;
    border-radius: 10px;
    background: var(--surface2);
    border: 1px solid var(--border);
    font-size: 0.66rem;
    color: var(--muted);
    font-weight: 600;
    letter-spacing: 0.04em;
}

/* Vedha explained */
.al-explain-grid[b-523bytj0ib] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-bottom: 14px;
}
.al-explain-item[b-523bytj0ib] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 12px 10px;
    text-align: center;
}
.al-explain-num[b-523bytj0ib] {
    font-size: 1.4rem;
    font-weight: 700;
    font-family: var(--font-display, 'Cinzel', serif);
    color: var(--text);
    line-height: 1;
    margin-bottom: 4px;
}
.al-explain-label[b-523bytj0ib]  { font-size: 0.75rem; font-weight: 700; color: var(--text); margin-bottom: 3px; }
.al-explain-sub[b-523bytj0ib]    { font-size: 0.66rem; color: var(--muted); line-height: 1.4; }
.al-explain-note[b-523bytj0ib]   { font-size: 0.78rem; color: var(--muted); line-height: 1.55; margin: 0 0 14px; }

.al-link-btn[b-523bytj0ib] {
    display: inline-block;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--accent);
    text-decoration: none;
}
.al-link-btn:hover[b-523bytj0ib] { text-decoration: underline; }

/* Coming soon badge */
.al-coming-badge[b-523bytj0ib] {
    margin-left: auto;
    padding: 2px 9px;
    border-radius: 10px;
    background: var(--surface2);
    border: 1px solid var(--border);
    font-size: 0.68rem;
    color: var(--muted);
    font-weight: 600;
}

/* Alert history preview (ghost) */
.al-history-preview[b-523bytj0ib] { display: flex; flex-direction: column; gap: 8px; margin-top: 4px; }
.al-history-item[b-523bytj0ib] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid var(--border);
    background: var(--surface2);
}
.al-history-item--ghost[b-523bytj0ib] { opacity: 0.45; pointer-events: none; }
.al-hi-icon[b-523bytj0ib]  { font-size: 1.1rem; flex-shrink: 0; }
.al-hi-body[b-523bytj0ib]  { flex: 1; min-width: 0; }
.al-hi-text[b-523bytj0ib]  { font-size: 0.8rem; color: var(--text); line-height: 1.4; }
.al-hi-when[b-523bytj0ib]  { font-size: 0.68rem; color: var(--muted); margin-top: 2px; }

@media (max-width: 480px) {
    .al-explain-grid[b-523bytj0ib] { grid-template-columns: repeat(3, 1fr); gap: 6px; }
    .al-explain-item[b-523bytj0ib] { padding: 10px 6px; }
    .al-type-head[b-523bytj0ib] { gap: 8px; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .al-wrap[b-523bytj0ib] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .al-explain-grid[b-523bytj0ib]  { grid-template-columns: 1fr 1fr; gap: 10px; }
    .al-btn[b-523bytj0ib]           { min-height: 44px; padding: 11px 22px; }
    .al-explain-sub[b-523bytj0ib]   { font-size: .72rem; }
    .al-shastra-tag[b-523bytj0ib]   { font-size: .72rem; }
    .al-coming-badge[b-523bytj0ib]  { font-size: .72rem; }
    .al-section-label[b-523bytj0ib] { font-size: .72rem; }
    .al-type-trigger[b-523bytj0ib]  { font-size: .84rem; min-height: 44px; }
    .al-type-row[b-523bytj0ib]      { padding: 12px 14px; }
    .al-header[b-523bytj0ib]        { padding: 16px 16px 0; }
}
/* /Pages/AlmanacPage.razor.rz.scp.css */
/* ── Layout ─────────────────────────────────────────────────────────────── */
.alm-wrap[b-z7jpaf4fm3] {
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    background: var(--bg);
}

.alm-main[b-z7jpaf4fm3] {
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
    padding: 2rem 1rem 4rem;
}

/* ── Page header ─────────────────────────────────────────────────────────── */
.alm-page-header[b-z7jpaf4fm3] {
    margin-bottom: 1.75rem;
}

.alm-title[b-z7jpaf4fm3] {
    font-size: clamp(1.4rem, 4vw, 2rem);
    font-weight: 700;
    color: var(--text);
    margin: 0 0 .25rem;
}

.alm-sub[b-z7jpaf4fm3] {
    font-size: .875rem;
    color: var(--muted);
    margin: 0;
}

/* ── Controls ────────────────────────────────────────────────────────────── */
.alm-controls[b-z7jpaf4fm3] {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-bottom: 1.5rem;
    align-items: flex-end;
}

.alm-control-group[b-z7jpaf4fm3] {
    display: flex;
    flex-direction: column;
    gap: .3rem;
}

.alm-control-place[b-z7jpaf4fm3] {
    flex: 1 1 260px;
}

.alm-label[b-z7jpaf4fm3] {
    font-size: .75rem;
    font-weight: 600;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: .04em;
}

.alm-input[b-z7jpaf4fm3] {
    height: 38px;
    padding: 0 .6rem;
    border: 1px solid var(--border);
    border-radius: 6px;
    background: var(--surface);
    color: var(--text);
    font-size: .9rem;
}

.alm-select[b-z7jpaf4fm3] {
    padding-right: 1.75rem;
    cursor: pointer;
}

/* ── Empty / loading / error ─────────────────────────────────────────────── */
.alm-empty[b-z7jpaf4fm3] {
    text-align: center;
    padding: 4rem 1rem;
    color: var(--muted);
}

.alm-empty-icon[b-z7jpaf4fm3] {
    font-size: 2.5rem;
    margin-bottom: .5rem;
}

.alm-loading[b-z7jpaf4fm3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 3rem 1rem;
    color: var(--muted);
}

.alm-spinner[b-z7jpaf4fm3] {
    width: 32px;
    height: 32px;
    border: 3px solid var(--border);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: alm-spin-b-z7jpaf4fm3 .7s linear infinite;
}

@keyframes alm-spin-b-z7jpaf4fm3 { to { transform: rotate(360deg); } }

.alm-error[b-z7jpaf4fm3] {
    background: var(--danger-bg, #fee);
    color: var(--danger, #c00);
    border: 1px solid var(--danger, #c00);
    border-radius: 8px;
    padding: .75rem 1rem;
    margin-top: 1rem;
}

/* ── Legend ──────────────────────────────────────────────────────────────── */
.alm-legend[b-z7jpaf4fm3] {
    display: flex;
    align-items: center;
    gap: .25rem;
    font-size: .78rem;
    color: var(--muted);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

/* ── Badges ──────────────────────────────────────────────────────────────── */
.alm-badge[b-z7jpaf4fm3] {
    display: inline-flex;
    align-items: center;
    padding: .1rem .45rem;
    border-radius: 4px;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .04em;
}

.alm-badge-nt[b-z7jpaf4fm3] { background: #e8f4ff; color: #1a6adf; }
.alm-badge-zt[b-z7jpaf4fm3] { background: #e8fff0; color: #1a8a3f; }
.alm-badge-mt[b-z7jpaf4fm3] { background: #fff4e8; color: #c07000; }

/* ── Day cards ───────────────────────────────────────────────────────────── */
.alm-days[b-z7jpaf4fm3] {
    display: flex;
    flex-direction: column;
    gap: .75rem;
}

.alm-day[b-z7jpaf4fm3] {
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--surface);
    overflow: hidden;
}

.alm-day--today[b-z7jpaf4fm3] {
    border-color: var(--accent);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 12%, transparent);
}

.alm-day-header[b-z7jpaf4fm3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: .5rem;
    padding: .75rem 1rem;
    cursor: pointer;
    user-select: none;
    list-style: none;
}

.alm-day-header[b-z7jpaf4fm3]::-webkit-details-marker { display: none; }

.alm-day-left[b-z7jpaf4fm3] {
    display: flex;
    flex-direction: column;
    gap: .15rem;
}

.alm-day-label[b-z7jpaf4fm3] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text);
}

.alm-today-pip[b-z7jpaf4fm3] {
    display: inline-block;
    background: var(--accent);
    color: #fff;
    font-size: .65rem;
    font-weight: 700;
    padding: .05rem .4rem;
    border-radius: 3px;
    margin-left: .4rem;
    vertical-align: middle;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.alm-day-sun[b-z7jpaf4fm3] {
    font-size: .78rem;
    color: var(--muted);
}

.alm-day-utc[b-z7jpaf4fm3] {
    font-size: .7em;
    opacity: .7;
}

.alm-day-chips[b-z7jpaf4fm3] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.alm-chip[b-z7jpaf4fm3] {
    font-size: .75rem;
    padding: .15rem .5rem;
    border-radius: 4px;
    font-weight: 500;
}

.alm-chip-tithi[b-z7jpaf4fm3]  { background: var(--tithi-bg,  #f0eaff); color: var(--tithi-fg,  #5a2fb0); }
.alm-chip-nak[b-z7jpaf4fm3]    { background: var(--nak-bg,    #eaefff); color: var(--nak-fg,    #2040a0); }
.alm-chip-vara[b-z7jpaf4fm3]   { background: var(--vara-bg,   #fffaea); color: var(--vara-fg,   #7a5000); }

/* ── Day body ────────────────────────────────────────────────────────────── */
.alm-day-body[b-z7jpaf4fm3] {
    padding: 1rem;
    border-top: 1px solid var(--border);
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ── Snapshot grid ───────────────────────────────────────────────────────── */
.alm-snapshot[b-z7jpaf4fm3] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: .6rem;
}

.alm-snap-card[b-z7jpaf4fm3] {
    display: flex;
    flex-direction: column;
    gap: .15rem;
    padding: .6rem .75rem;
    border: 1px solid var(--border);
    border-radius: 7px;
    background: var(--bg);
}

.alm-snap-label[b-z7jpaf4fm3] {
    font-size: .68rem;
    font-weight: 600;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: .05em;
}

.alm-snap-value[b-z7jpaf4fm3] {
    font-size: .9rem;
    font-weight: 700;
    color: var(--text);
}

.alm-snap-sub[b-z7jpaf4fm3] {
    font-size: .72rem;
    color: var(--muted);
}

/* ── Section title ───────────────────────────────────────────────────────── */
.alm-section-title[b-z7jpaf4fm3] {
    font-size: .75rem;
    font-weight: 700;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: .06em;
    border-bottom: 1px solid var(--border);
    padding-bottom: .35rem;
    margin-bottom: -.25rem;
}

/* ── Timeline ────────────────────────────────────────────────────────────── */
.alm-timeline[b-z7jpaf4fm3] {
    display: flex;
    flex-direction: column;
    gap: .45rem;
}

.alm-tl-row[b-z7jpaf4fm3] {
    display: grid;
    grid-template-columns: 5.5rem auto 1fr;
    align-items: center;
    gap: .5rem;
    font-size: .84rem;
}

.alm-tl-time[b-z7jpaf4fm3] {
    font-size: .78rem;
    font-variant-numeric: tabular-nums;
    color: var(--muted);
    font-weight: 500;
    white-space: nowrap;
}

.alm-tl-kind[b-z7jpaf4fm3] {
    display: inline-flex;
    align-items: center;
    padding: .1rem .4rem;
    border-radius: 4px;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .03em;
    white-space: nowrap;
}

.alm-tl-tithi[b-z7jpaf4fm3]     { background: #f0eaff; color: #5a2fb0; }
.alm-tl-nakshatra[b-z7jpaf4fm3] { background: #eaefff; color: #2040a0; }
.alm-tl-yoga[b-z7jpaf4fm3]      { background: #eafff4; color: #1a7a45; }
.alm-tl-karana[b-z7jpaf4fm3]    { background: #fff4ea; color: #9a5500; }

.alm-tl-desc[b-z7jpaf4fm3] {
    color: var(--text);
    font-size: .84rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Graha events ────────────────────────────────────────────────────────── */
.alm-graha-events[b-z7jpaf4fm3] {
    display: flex;
    flex-direction: column;
    gap: .4rem;
}

.alm-gev-row[b-z7jpaf4fm3] {
    display: grid;
    grid-template-columns: 5.5rem auto 1fr auto;
    align-items: center;
    gap: .5rem;
    font-size: .84rem;
}

.alm-gev-label[b-z7jpaf4fm3] {
    color: var(--text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.alm-gev-deg[b-z7jpaf4fm3] {
    font-size: .76rem;
    font-variant-numeric: tabular-nums;
    color: var(--muted);
    white-space: nowrap;
}

/* ── Dark-mode token overrides ───────────────────────────────────────────── */
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .alm-badge-nt[b-z7jpaf4fm3] { background: #0d2a4a; color: #7fb8ff; }
    :root:not([data-theme="light"]) .alm-badge-zt[b-z7jpaf4fm3] { background: #0d2e1a; color: #6fdb99; }
    :root:not([data-theme="light"]) .alm-badge-mt[b-z7jpaf4fm3] { background: #2e1d00; color: #ffbb50; }

    :root:not([data-theme="light"]) .alm-chip-tithi[b-z7jpaf4fm3]  { background: #200e40; color: #b8a0ff; }
    :root:not([data-theme="light"]) .alm-chip-nak[b-z7jpaf4fm3]    { background: #0e1840; color: #809bff; }
    :root:not([data-theme="light"]) .alm-chip-vara[b-z7jpaf4fm3]   { background: #2e1c00; color: #ffc060; }

    :root:not([data-theme="light"]) .alm-tl-tithi[b-z7jpaf4fm3]     { background: #200e40; color: #b8a0ff; }
    :root:not([data-theme="light"]) .alm-tl-nakshatra[b-z7jpaf4fm3] { background: #0e1840; color: #809bff; }
    :root:not([data-theme="light"]) .alm-tl-yoga[b-z7jpaf4fm3]      { background: #0a2218; color: #6fdb99; }
    :root:not([data-theme="light"]) .alm-tl-karana[b-z7jpaf4fm3]    { background: #2e1a00; color: #ffaa55; }
}

:root[data-theme="dark"] .alm-badge-nt[b-z7jpaf4fm3] { background: #0d2a4a; color: #7fb8ff; }
:root[data-theme="dark"] .alm-badge-zt[b-z7jpaf4fm3] { background: #0d2e1a; color: #6fdb99; }
:root[data-theme="dark"] .alm-badge-mt[b-z7jpaf4fm3] { background: #2e1d00; color: #ffbb50; }

:root[data-theme="dark"] .alm-chip-tithi[b-z7jpaf4fm3]  { background: #200e40; color: #b8a0ff; }
:root[data-theme="dark"] .alm-chip-nak[b-z7jpaf4fm3]    { background: #0e1840; color: #809bff; }
:root[data-theme="dark"] .alm-chip-vara[b-z7jpaf4fm3]   { background: #2e1c00; color: #ffc060; }

:root[data-theme="dark"] .alm-tl-tithi[b-z7jpaf4fm3]     { background: #200e40; color: #b8a0ff; }
:root[data-theme="dark"] .alm-tl-nakshatra[b-z7jpaf4fm3] { background: #0e1840; color: #809bff; }
:root[data-theme="dark"] .alm-tl-yoga[b-z7jpaf4fm3]      { background: #0a2218; color: #6fdb99; }
:root[data-theme="dark"] .alm-tl-karana[b-z7jpaf4fm3]    { background: #2e1a00; color: #ffaa55; }

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 540px) {
    .alm-day-header[b-z7jpaf4fm3] {
        flex-direction: column;
        align-items: flex-start;
    }

    .alm-tl-row[b-z7jpaf4fm3],
    .alm-gev-row[b-z7jpaf4fm3] {
        grid-template-columns: 4.5rem auto 1fr;
    }

    .alm-gev-deg[b-z7jpaf4fm3] {
        display: none;
    }

    .alm-snapshot[b-z7jpaf4fm3] {
        grid-template-columns: 1fr 1fr;
    }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .alm-input[b-z7jpaf4fm3]          { min-height: 44px; }
    .alm-control-place[b-z7jpaf4fm3]  { flex: 1 1 100%; min-width: 0; }
    .alm-snap-label[b-z7jpaf4fm3]     { font-size: .72rem; }
    .alm-badge[b-z7jpaf4fm3]          { font-size: .72rem; }
    .alm-today-pip[b-z7jpaf4fm3]      { font-size: .72rem; }
    .alm-tl-kind[b-z7jpaf4fm3]        { font-size: .72rem; }
    .alm-controls[b-z7jpaf4fm3]       { flex-wrap: wrap; gap: 8px; }
    .alm-search-btn[b-z7jpaf4fm3]     { min-height: 44px; width: 100%; }
}
/* /Pages/AskPage.razor.rz.scp.css */
/* ── Page shell ─────────────────────────────────────────────────────────── */
.ask-page[b-8x9dczdw37] {
    height: calc(100dvh - var(--header-h));
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* ── Gate screens (logged-out / tier) ──────────────────────────────────── */
.ask-gate-wrap[b-8x9dczdw37] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 16px;
    padding: 40px 24px 80px;
}

.ask-gate-icon[b-8x9dczdw37] {
    font-size: 2.5rem;
    color: var(--accent);
    font-family: var(--font-display);
    line-height: 1;
}
.ask-gate-logo[b-8x9dczdw37] {
    width: 80px;
    height: 80px;
    object-fit: contain;
    padding: 10px;
    border-radius: 20px;
    background: color-mix(in srgb, var(--accent) 12%, var(--surface2));
    border: 1.5px solid color-mix(in srgb, var(--accent) 30%, transparent);
}

.ask-gate-title[b-8x9dczdw37] {
    font-family: var(--font-display);
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--text);
    letter-spacing: .04em;
    margin: 0;
}

.ask-gate-body[b-8x9dczdw37] {
    font-size: 0.92rem;
    color: var(--muted);
    line-height: 1.65;
    max-width: 400px;
    margin: 0;
}

.ask-gate-chips[b-8x9dczdw37] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    opacity: .35;
    pointer-events: none;
    user-select: none;
}

.ask-gate-chip[b-8x9dczdw37] {
    padding: 7px 14px;
    border-radius: 20px;
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
    font-size: 0.83rem;
    filter: blur(2px);
}

.ask-cta-btn[b-8x9dczdw37] {
    display: inline-block;
    margin-top: 4px;
    padding: 12px 28px;
    border-radius: var(--radius);
    background: var(--accent);
    color: #fff;
    font-size: 0.95rem;
    font-weight: 600;
    text-decoration: none;
    transition: opacity var(--t-fast);
}
.ask-cta-btn:hover[b-8x9dczdw37] { opacity: .88; }

/* ── Chat layout ────────────────────────────────────────────────────────── */
.ask-layout[b-8x9dczdw37] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    width: 100%;
}

/* Cap only on very wide monitors (> 1400px) so it doesn't stretch uncomfortably */
@media (min-width: 1400px) {
    .ask-layout[b-8x9dczdw37] {
        max-width: 1000px;
        margin: 0 auto;
    }
}

/* ── TopBar controls (injected into AppHeader via RightOverride) ─────────── */
.ask-topbar-controls[b-8x9dczdw37] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.ask-topbar-status[b-8x9dczdw37] {
    font-size: 0.75rem;
    color: var(--muted);
    white-space: nowrap;
}

.ask-status-dot[b-8x9dczdw37] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--success);
    animation: ask-pulse-b-8x9dczdw37 2.4s ease infinite;
    flex-shrink: 0;
}

@keyframes ask-pulse-b-8x9dczdw37 {
    0%, 100% { opacity: 1; }
    50%       { opacity: .45; }
}


.ask-lang-select[b-8x9dczdw37] {
    padding: 6px 8px;
    border-radius: 6px;
    border: 1px solid var(--border);
    background: var(--surface2);
    color: var(--text);
    font-size: 0.82rem;
    cursor: pointer;
    width: 54px;
    text-align: center;
}

.ask-clear-btn[b-8x9dczdw37] {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 6px 10px;
    border-radius: 6px;
    border: 1px solid var(--border);
    background: none;
    color: var(--muted);
    font-size: 0.8rem;
    cursor: pointer;
    transition: color var(--t-fast), border-color var(--t-fast);
}
.ask-clear-btn:hover[b-8x9dczdw37] {
    color: var(--danger);
    border-color: var(--danger);
}

/* ── Scrollable thread ──────────────────────────────────────────────────── */
.ask-thread[b-8x9dczdw37] {
    flex: 1;
    overflow-y: auto;
    padding: 20px 16px 12px;
    display: flex;
    flex-direction: column;
    gap: 0;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
}

/* ── Welcome screen ─────────────────────────────────────────────────────── */
.ask-welcome[b-8x9dczdw37] {
    text-align: center;
    padding: 32px 16px 20px;
}

.ask-welcome-logo[b-8x9dczdw37] {
    width: 72px;
    height: 72px;
    object-fit: contain;
    margin-bottom: 16px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    border-radius: 16px;
    background: color-mix(in srgb, var(--accent) 12%, var(--surface2));
    padding: 8px;
    border: 1.5px solid color-mix(in srgb, var(--accent) 30%, transparent);
}

.ask-welcome-title[b-8x9dczdw37] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 8px;
}

.ask-welcome-body[b-8x9dczdw37] {
    font-size: 0.88rem;
    color: var(--muted);
    line-height: 1.65;
    max-width: 360px;
    margin: 0 auto;
}

/* ── Suggestion chips ───────────────────────────────────────────────────── */
.ask-suggestions[b-8x9dczdw37] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 16px 0 8px;
    justify-content: center;
}

.ask-chip[b-8x9dczdw37] {
    padding: 9px 16px;
    border-radius: 20px;
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
    font-size: 0.85rem;
    cursor: pointer;
    transition: border-color var(--t-fast), background var(--t-fast), transform 80ms;
    line-height: 1.3;
    text-align: left;
}
.ask-chip:hover[b-8x9dczdw37] {
    border-color: var(--accent);
    background: color-mix(in srgb, var(--accent) 8%, var(--surface));
    transform: translateY(-1px);
}
.ask-chip:active[b-8x9dczdw37] { transform: none; }

.ask-chip--sm[b-8x9dczdw37] {
    padding: 6px 12px;
    font-size: 0.8rem;
}

/* ── Follow-up chips row ────────────────────────────────────────────────── */
.ask-followups[b-8x9dczdw37] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px 0 4px 40px; /* 32px avatar + 8px gap */
}

/* ── Message row ────────────────────────────────────────────────────────── */
.ask-msg[b-8x9dczdw37] {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    max-width: 90%;
    margin-bottom: 14px; /* sole spacing between rows — thread gap:0 */
}

.ask-msg--user[b-8x9dczdw37] {
    align-self: flex-end;
    flex-direction: row-reverse;
    margin-left: auto;
}

.ask-msg--bot[b-8x9dczdw37] {
    align-self: flex-start;
}

.ask-msg-avatar[b-8x9dczdw37] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: color-mix(in srgb, var(--accent) 15%, var(--surface2));
    border: 1px solid var(--accent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-display);
    font-size: 0.9rem;
    color: var(--accent);
    flex-shrink: 0;
}
.ask-msg-avatar--logo[b-8x9dczdw37] {
    object-fit: contain;
    padding: 3px;
    background: var(--surface2);
}

.ask-msg-body[b-8x9dczdw37] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    max-width: 100%;
}

.ask-msg--user .ask-msg-body[b-8x9dczdw37] { align-items: flex-end; }
.ask-msg--bot  .ask-msg-body[b-8x9dczdw37] { align-items: flex-start; }

/* ── Bubble ─────────────────────────────────────────────────────────────── */
.ask-bubble[b-8x9dczdw37] {
    padding: 10px 14px;
    border-radius: 16px;
    font-size: 0.875rem;
    line-height: 1.65;
    word-break: break-word;
    animation: ask-pop-b-8x9dczdw37 180ms cubic-bezier(.34,1.56,.64,1) both;
}

@keyframes ask-pop-b-8x9dczdw37 {
    from { opacity: 0; transform: scale(.92) translateY(4px); }
    to   { opacity: 1; transform: none; }
}

.ask-bubble--user[b-8x9dczdw37] {
    background: var(--accent);
    color: #fff;
    border-bottom-right-radius: 4px;
}

.ask-bubble--bot[b-8x9dczdw37] {
    background: var(--surface);
    border: 1px solid var(--border);
    color: var(--text);
    border-bottom-left-radius: 4px;
}

.ask-bubble-text[b-8x9dczdw37] { display: block; }

/* ── Data chips inside bot bubble ───────────────────────────────────────── */
.ask-data-chips[b-8x9dczdw37] {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 10px;
}

.ask-data-chip[b-8x9dczdw37] {
    background: color-mix(in srgb, var(--accent) 14%, transparent);
    color: var(--accent);
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: .02em;
}

.ask-deep-link[b-8x9dczdw37] {
    display: inline-block;
    margin-top: 10px;
    font-size: 0.8rem;
    color: var(--accent);
    text-decoration: none;
    font-weight: 600;
    border-bottom: 1px solid transparent;
    transition: border-color var(--t-fast);
}
.ask-deep-link:hover[b-8x9dczdw37] { border-bottom-color: var(--accent); }

/* ── Message timestamp ──────────────────────────────────────────────────── */
.ask-msg-time[b-8x9dczdw37] {
    font-size: 0.7rem;
    color: var(--muted);
    opacity: .7;
    padding: 0 4px;
}

/* ── Typing indicator ───────────────────────────────────────────────────── */
.ask-bubble--typing[b-8x9dczdw37] {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 14px 18px;
    min-width: 60px;
}

.ask-dot[b-8x9dczdw37] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--muted);
    animation: ask-bounce-b-8x9dczdw37 1.3s infinite ease-in-out;
}
.ask-dot:nth-child(2)[b-8x9dczdw37] { animation-delay: 0.18s; }
.ask-dot:nth-child(3)[b-8x9dczdw37] { animation-delay: 0.36s; }

@keyframes ask-bounce-b-8x9dczdw37 {
    0%, 80%, 100% { transform: scale(.6); opacity: .4; }
    40%           { transform: scale(1);  opacity: 1; }
}

/* ── Sticky input bar ───────────────────────────────────────────────────── */
.ask-input-bar[b-8x9dczdw37] {
    flex-shrink: 0;
    padding: 8px 16px 10px;
    border-top: 1px solid var(--border);
    background: var(--surface);
}

.ask-input-wrap[b-8x9dczdw37] {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    border: 1.5px solid var(--border);
    border-radius: 10px;
    background: var(--bg);
    overflow: hidden;
    transition: border-color var(--t-fast);
    padding: 6px 8px 6px 12px;
}
.ask-input-wrap:focus-within[b-8x9dczdw37] {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent);
}

.ask-textarea[b-8x9dczdw37] {
    flex: 1;
    resize: none;
    border: none;
    outline: none;
    background: transparent;
    color: var(--text);
    font-size: 0.875rem;
    line-height: 1.5;
    padding: 4px 0;
    font-family: var(--font-body);
    max-height: 72px;
    min-height: 24px;
    overflow-y: auto;
}
.ask-textarea[b-8x9dczdw37]::placeholder { color: var(--muted); }
.ask-textarea:disabled[b-8x9dczdw37] { opacity: .55; cursor: not-allowed; }

.ask-input-footer[b-8x9dczdw37] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
}

.ask-char-count[b-8x9dczdw37] {
    font-size: 0.72rem;
    color: var(--muted);
    transition: color var(--t-fast);
}
.ask-char-count--warn[b-8x9dczdw37] { color: var(--warning); }

.ask-send-btn[b-8x9dczdw37] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: none;
    background: var(--accent);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: opacity var(--t-fast), transform 80ms;
    flex-shrink: 0;
}
.ask-send-btn:hover:not(:disabled)[b-8x9dczdw37] { opacity: .88; transform: scale(1.06); }
.ask-send-btn:active:not(:disabled)[b-8x9dczdw37] { transform: scale(.96); }
.ask-send-btn:disabled[b-8x9dczdw37] { opacity: .4; cursor: not-allowed; }

.ask-input-hint[b-8x9dczdw37] {
    font-size: 0.7rem;
    color: var(--muted);
    text-align: center;
    margin-top: 5px;
    opacity: .6;
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .ask-layout[b-8x9dczdw37] { max-width: 100%; }

    .ask-clear-label[b-8x9dczdw37] { display: none; }
    .ask-clear-btn[b-8x9dczdw37] { padding: 7px; }

    .ask-thread[b-8x9dczdw37] {
        padding: 14px 12px 8px;
        /* extra bottom clearance for the fixed bottom nav bar (62px) */
        padding-bottom: calc(var(--bottom-nav-h, 62px) + 8px);
    }

    .ask-msg[b-8x9dczdw37] { max-width: 95%; }

    .ask-chip[b-8x9dczdw37] { min-height: 44px; display: flex; align-items: center; }

    /* Bottom nav (62px fixed) sits on top of input bar — lift input bar above it */
    .ask-input-bar[b-8x9dczdw37] {
        padding: 8px 12px;
        padding-bottom: max(12px, env(safe-area-inset-bottom));
        margin-bottom: var(--bottom-nav-h, 62px);
    }

    .ask-textarea[b-8x9dczdw37] { font-size: 16px; /* prevent iOS zoom */ }

    .ask-input-hint[b-8x9dczdw37] { display: none; }

    .ask-followups[b-8x9dczdw37] { padding-left: 40px; }

    .ask-welcome[b-8x9dczdw37] { padding: 20px 12px 16px; }
}

/* ── Very small (< 360 px) ──────────────────────────────────────────────── */
@media (max-width: 360px) {
    .ask-suggestions[b-8x9dczdw37] { justify-content: flex-start; }
    .ask-chip[b-8x9dczdw37] { font-size: 0.8rem; padding: 8px 12px; }
    .ask-bubble[b-8x9dczdw37] { font-size: 0.85rem; }
}

/* ── Reduced motion ─────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
    .ask-bubble[b-8x9dczdw37] { animation: none; }
    .ask-dot[b-8x9dczdw37] { animation: none; opacity: .6; }
    .ask-status-dot[b-8x9dczdw37] { animation: none; }
}

/* ── Disclaimer consent modal ────────────────────────────────────────────── */
.ask-consent-overlay[b-8x9dczdw37] {
    position: fixed; inset: 0;
    background: rgba(0,0,0,.55);
    display: flex; align-items: center; justify-content: center;
    z-index: 9999;
    backdrop-filter: blur(4px);
}
.ask-consent-box[b-8x9dczdw37] {
    background: var(--card-bg, #fff);
    border: 1px solid var(--border, #e2e8f0);
    border-radius: 16px;
    padding: 32px 28px;
    max-width: 440px;
    width: calc(100% - 32px);
    text-align: center;
    box-shadow: 0 20px 60px rgba(0,0,0,.25);
}
.ask-consent-icon[b-8x9dczdw37] { font-size: 2rem; margin-bottom: 12px; }
.ask-consent-title[b-8x9dczdw37] {
    font-size: 1.2rem;
    font-weight: 700;
    margin: 0 0 14px;
    color: var(--text-primary, #1a202c);
}
.ask-consent-body[b-8x9dczdw37] {
    font-size: 0.875rem;
    line-height: 1.6;
    color: var(--text-secondary, #4a5568);
    margin: 0 0 12px;
}
.ask-consent-btn[b-8x9dczdw37] {
    margin-top: 8px;
    padding: 12px 24px;
    background: var(--accent, #b45309);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    width: 100%;
    transition: opacity .15s;
}
.ask-consent-btn:hover[b-8x9dczdw37] { opacity: .88; }

/* ── Disclaimer footnote ─────────────────────────────────────────────────── */
.ask-disclaimer[b-8x9dczdw37] {
    font-size: 0.73rem;
    color: var(--text-muted, #9ca3af);
    text-align: center;
    padding: 6px 16px 10px;
    margin: 0;
    line-height: 1.4;
}

/* ── Always-visible clear button (dim when no messages) ───────────────────── */
.ask-clear-btn--dim[b-8x9dczdw37] {
    opacity: 0.35;
    cursor: default;
    pointer-events: none;
}

/* ── Topbar context info chips ────────────────────────────────────────────── */
.ask-topbar-info[b-8x9dczdw37] {
    font-size: 0.72rem;
    color: var(--text-muted, #9ca3af);
    background: var(--surface-2, rgba(0,0,0,.05));
    padding: 3px 8px;
    border-radius: 20px;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
@media (max-width: 640px) {
    .ask-topbar-info[b-8x9dczdw37] { display: none; }
}

/* ── Merged from ask.html ─────────────────────────────────────────────────── */

/* Tier badge in topbar */
.ask-tier-badge[b-8x9dczdw37] {
    font-size: 0.68rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 3px 9px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--accent) 18%, transparent);
    color: var(--accent);
    border: 1px solid var(--border);
    white-space: nowrap;
}
@media (max-width: 640px) { .ask-tier-badge[b-8x9dczdw37] { display: none; } }

/* Error bubble */
.ask-bubble--error[b-8x9dczdw37] {
    background: rgba(224,85,85,0.12);
    border-color: var(--danger, #E05555);
    color: var(--danger, #E05555);
}

/* Streaming bubble — no pop animation on every token */
.ask-bubble--streaming[b-8x9dczdw37] { animation: none; }
.ask-bubble--streaming .ask-bubble-text[b-8x9dczdw37]::after {
    content: "▍";
    color: var(--accent);
    animation: ask-caret-b-8x9dczdw37 1s steps(1) infinite;
}
@keyframes ask-caret-b-8x9dczdw37 { 50% { opacity: 0; } }

/* Char counter over-limit state */
.ask-char-count--over[b-8x9dczdw37] { color: var(--danger, #E05555); }

/* Language pill bar above the input */
.ask-lang-bar[b-8x9dczdw37] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 6px 16px 2px;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.ask-lang-bar[b-8x9dczdw37]::-webkit-scrollbar { display: none; }
.ask-lang-label[b-8x9dczdw37] {
    font-size: 0.67rem;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: 0.07em;
    margin-right: 2px;
    white-space: nowrap;
}
.ask-lang-pill[b-8x9dczdw37] {
    background: none;
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 4px 10px;
    white-space: nowrap;
    flex-shrink: 0;
    cursor: pointer;
    font-family: inherit;
    transition: all 0.15s;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: var(--muted);
}
.ask-lp-native[b-8x9dczdw37] { font-size: 0.78rem; font-weight: 500; line-height: 1.3; }
.ask-lp-sub[b-8x9dczdw37]    { font-size: 0.58rem; letter-spacing: 0.05em; text-transform: uppercase; opacity: 0.7; line-height: 1.2; }
.ask-lang-pill:hover[b-8x9dczdw37] { border-color: var(--accent); color: var(--accent); }
.ask-lang-pill--active[b-8x9dczdw37] {
    background: color-mix(in srgb, var(--accent) 18%, transparent);
    border-color: var(--accent);
    color: var(--accent);
}
.ask-lang-pill--active .ask-lp-native[b-8x9dczdw37] { font-weight: 700; }
.ask-lang-pill--active .ask-lp-sub[b-8x9dczdw37]    { opacity: 1; }
@media (max-width: 767px) { .ask-lang-bar[b-8x9dczdw37] { padding: 6px 12px 2px; } }

/* Consent policy box (ask.html onboarding gate) */
.ask-consent-policy[b-8x9dczdw37] {
    background: var(--surface2, rgba(0,0,0,.04));
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 0.8rem;
    color: var(--muted);
    line-height: 1.6;
    text-align: left;
    margin: 0 0 6px;
}
.ask-consent-policy strong[b-8x9dczdw37] { color: var(--text); }

/* ── Guard-corrected badge ─────────────────────────────────────────────── */
.ask-guard-badge[b-8x9dczdw37] {
    display: inline-block;
    margin-top: 4px;
    font-size: 0.64rem;
    color: var(--success, #4DB88A);
    opacity: 0.75;
    letter-spacing: 0.04em;
}

/* ── Layer-2 deeper analysis block ────────────────────────────────────── */
.ask-layer2[b-8x9dczdw37] {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid var(--border);
}
.ask-layer2-label[b-8x9dczdw37] {
    font-size: 0.63rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: var(--muted);
    margin-bottom: 6px;
}
.ask-layer2-verdict[b-8x9dczdw37] {
    font-size: 0.84rem;
    font-weight: 600;
    color: var(--text);
    margin-bottom: 5px;
    line-height: 1.4;
}
.ask-layer2-summary[b-8x9dczdw37] {
    font-size: 0.81rem;
    color: var(--muted);
    line-height: 1.6;
    margin-bottom: 6px;
}
.ask-layer2-advice[b-8x9dczdw37] {
    font-size: 0.8rem;
    color: var(--text);
    background: var(--accent-glow, rgba(139,127,245,0.08));
    border-left: 3px solid var(--accent);
    padding: 6px 10px;
    border-radius: 4px;
    margin-bottom: 5px;
    line-height: 1.5;
}
.ask-layer2-caution[b-8x9dczdw37] {
    font-size: 0.78rem;
    color: var(--gold, #D4A853);
    background: color-mix(in srgb, var(--gold, #D4A853) 8%, transparent);
    border-left: 3px solid var(--gold, #D4A853);
    padding: 5px 9px;
    border-radius: 4px;
    line-height: 1.4;
}
/* /Pages/BusinessMatchInput.razor.rz.scp.css */
.bm-partner-section[b-31prthxvlv] {
    background: var(--surface); border: 1px solid var(--border);
    border-left: 4px solid var(--accent2); border-radius: var(--radius);
    padding: 18px 20px; margin-bottom: 4px;
}
.bm-partner-header[b-31prthxvlv] {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 14px;
}
.bm-partner-label[b-31prthxvlv] {
    font-size: 13px; font-weight: 700; text-transform: uppercase;
    letter-spacing: .08em; color: var(--accent2);
}
.bm-remove-btn[b-31prthxvlv] {
    background: none; border: 1px solid var(--danger); color: var(--danger);
    border-radius: 6px; padding: 3px 10px; font-size: 13px; font-weight: 600;
    cursor: pointer;
}
.bm-remove-btn:hover[b-31prthxvlv] { background: rgba(214,77,114,.08); }

.bm-add-btn[b-31prthxvlv] {
    width: 100%; background: var(--surface2); border: 1px dashed var(--border);
    border-radius: var(--radius); color: var(--muted); font-size: 13px;
    font-weight: 600; padding: 12px; cursor: pointer; margin: 4px 0 8px;
    transition: border-color .15s, color .15s;
}
.bm-add-btn:hover[b-31prthxvlv] { border-color: var(--accent2); color: var(--accent2); }

.mi-type-tabs[b-31prthxvlv] {
    display: flex; gap: 8px; margin-bottom: 20px;
}
.mi-type-tab[b-31prthxvlv] {
    flex: 1; text-align: center; padding: 9px 12px;
    border-radius: var(--radius); border: 1px solid var(--border);
    font-size: 13px; font-weight: 600; color: var(--muted); text-decoration: none;
    transition: background .15s, color .15s;
}
.mi-type-tab:hover[b-31prthxvlv] { background: var(--surface); color: var(--fg); }
.mi-type-tab--active[b-31prthxvlv] { background: var(--accent2); border-color: var(--accent2); color: #fff; }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .ci-wrap[b-31prthxvlv] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .bm-partner-section[b-31prthxvlv] { padding: 14px 16px; margin-bottom: 10px; }
    .bm-partner-label[b-31prthxvlv]   { font-size: 12px; letter-spacing: .05em; }
    .bm-remove-btn[b-31prthxvlv]      { padding: 6px 12px; font-size: 12.5px; min-height: 36px; }
    .bm-add-btn[b-31prthxvlv]         { padding: 14px; font-size: 13px; min-height: 48px; }

    .mi-type-tabs[b-31prthxvlv] { gap: 6px; margin-bottom: 16px; }
    .mi-type-tab[b-31prthxvlv]  { padding: 11px 10px; font-size: 12.5px; min-height: 44px; }
}
/* /Pages/BusinessMatchResult.razor.rz.scp.css */
/* ── Header (matches MatchResult / ChartResult nav bar) ──────────────────── */
.cr-header[b-ddyqcqszg3]       { display: flex; align-items: center; justify-content: space-between; padding: 0 20px; height: 52px; background: var(--surface); border-bottom: 1px solid var(--border); position: sticky; top: 0; z-index: 20; }
.cr-header-left[b-ddyqcqszg3]  { display: flex; align-items: center; gap: 14px; }
.cr-header-right[b-ddyqcqszg3] { display: flex; align-items: center; gap: 10px; }
.cr-logo[b-ddyqcqszg3]         { font-family: Palatino Linotype, Palatino, Georgia, serif; font-size: 16px; font-weight: 700; color: var(--accent); text-decoration: none; }
.cr-chart-name[b-ddyqcqszg3]   { font-size: 14px; font-weight: 600; }
.cr-chart-meta[b-ddyqcqszg3]   { font-size: 13px; color: var(--muted); }
.cr-lang-select[b-ddyqcqszg3]  { background: var(--surface2); border: 1px solid var(--border); border-radius: 8px; color: var(--text); font-size: 14px; padding: 4px 8px; cursor: pointer; }

/* ── Main scroll container ────────────────────────────────────────────────── */
.bm-scroll[b-ddyqcqszg3] {
    height: calc(100vh - 52px);
    overflow-y: auto;
}

/* ── Tab navigation ───────────────────────────────────────────────────────── */
.bm-tabs[b-ddyqcqszg3] {
    display: flex; gap: 0; padding: 0 28px;
    border-bottom: 1px solid var(--border);
    background: var(--surface); position: sticky; top: 0; z-index: 10;
}
.bm-tab[b-ddyqcqszg3] {
    background: none; border: none; cursor: pointer;
    padding: 12px 16px; font-size: 13px; font-weight: 600;
    color: var(--muted); border-bottom: 2px solid transparent;
    transition: color .15s, border-color .15s; white-space: nowrap;
}
.bm-tab:hover[b-ddyqcqszg3] { color: var(--text); }
.bm-tab--active[b-ddyqcqszg3] { color: var(--accent); border-bottom-color: var(--accent); }

/* ── Tab content body ─────────────────────────────────────────────────────── */
.bm-tab-body[b-ddyqcqszg3] { padding: 24px 28px; }

/* ── Methodology note ─────────────────────────────────────────────────────── */
.bm-method-note[b-ddyqcqszg3] {
    background: var(--surface2); border: 1px solid var(--border);
    border-left: 4px solid var(--accent); border-radius: var(--radius);
    padding: 12px 16px; margin-bottom: 20px;
    font-size: 14px; color: var(--muted); line-height: 1.7;
}
.bm-method-note strong[b-ddyqcqszg3] { color: var(--text); }

/* ── Top pair hero ────────────────────────────────────────────────────────── */
.bm-top-pair[b-ddyqcqszg3] {
    background: linear-gradient(135deg, var(--accent2) 0%, #4c3d8a 100%);
    border-radius: var(--radius); padding: 20px 24px; margin-bottom: 24px;
    display: flex; align-items: center; gap: 20px; flex-wrap: wrap;
}
.bm-top-label[b-ddyqcqszg3]   { font-size: 10px; font-weight: 700; text-transform: uppercase;
                  letter-spacing: .1em; color: rgba(255,255,255,.6); }
.bm-top-names[b-ddyqcqszg3]   { font-size: 20px; font-weight: 700; color: #fff; margin: 4px 0; }
.bm-top-verdict[b-ddyqcqszg3] { font-size: 14px; color: rgba(255,255,255,.8); font-style: italic; }
.bm-top-score-block[b-ddyqcqszg3] { text-align: center; }
.bm-top-score[b-ddyqcqszg3]   { font-size: 32px; font-weight: 700; color: #fff; line-height: 1; }
.bm-top-score span[b-ddyqcqszg3] { font-size: 14px; opacity: .7; }
.bm-top-score-lbl[b-ddyqcqszg3] { font-size: 10px; color: rgba(255,255,255,.6); margin-top: 2px;
                    text-transform: uppercase; letter-spacing: .06em; }

/* ── Section title ────────────────────────────────────────────────────────── */
.bm-section-title[b-ddyqcqszg3] {
    font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
    color: var(--muted); margin-bottom: 12px; padding-bottom: 5px;
    border-bottom: 1px solid var(--border);
}

/* ── Pair cards ───────────────────────────────────────────────────────────── */
.bm-pairs-grid[b-ddyqcqszg3] { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 18px; }
.bm-pair-card[b-ddyqcqszg3] {
    background: var(--surface); border: 1px solid var(--border);
    border-radius: var(--radius); padding: 24px 24px 20px;
}
.bm-pair-best[b-ddyqcqszg3]  { border-color: var(--accent2); box-shadow: 0 0 0 1px var(--accent2); }
.bm-pair-names[b-ddyqcqszg3] { font-weight: 700; font-size: 17px; margin-bottom: 16px; letter-spacing: -.01em; }
.bm-pair-scores[b-ddyqcqszg3] { display: flex; gap: 24px; margin-bottom: 16px; align-items: flex-end; }
.bm-pair-score-block[b-ddyqcqszg3] { text-align: center; }
.bm-score-num[b-ddyqcqszg3]  { font-size: 38px; font-weight: 700; line-height: 1; }
.bm-score-ref[b-ddyqcqszg3]  { font-size: 22px !important; color: var(--muted) !important; }
.bm-score-lbl[b-ddyqcqszg3]  { font-size: 13px; text-transform: uppercase; color: var(--muted); margin-top: 4px; letter-spacing: .04em; }
.bm-score-high[b-ddyqcqszg3] { color: var(--success); }
.bm-score-mid[b-ddyqcqszg3]  { color: var(--accent); }
.bm-score-low[b-ddyqcqszg3]  { color: var(--danger); }
.bm-pair-band[b-ddyqcqszg3]  { font-size: 14px; font-weight: 700; color: var(--muted); text-transform: uppercase;
                 letter-spacing: .06em; margin-top: 12px; }

.bm-koota-row[b-ddyqcqszg3]  { display: flex; justify-content: space-between; align-items: baseline;
                 font-size: 14px; margin-bottom: 5px; gap: 8px; }
.bm-koota-name[b-ddyqcqszg3] { color: var(--muted); flex-shrink: 0; }
.bm-koota-val[b-ddyqcqszg3]  { font-weight: 600; text-align: right; }

/* ── Inline flags ─────────────────────────────────────────────────────────── */
.bm-flag[b-ddyqcqszg3] {
    font-size: 13px; font-weight: 600; padding: 5px 8px;
    border-radius: 6px; margin-top: 8px;
}
.bm-flag-warn[b-ddyqcqszg3] { background: rgba(255,160,0,.12); color: #b97a00; }

/* ── Compatibility matrix ─────────────────────────────────────────────────── */
.bm-matrix-wrap[b-ddyqcqszg3] { overflow-x: auto; margin-bottom: 8px; }
.bm-matrix[b-ddyqcqszg3] { border-collapse: collapse; font-size: 14px; }
.bm-matrix th[b-ddyqcqszg3]  { padding: 8px 12px; font-size: 13px; font-weight: 700;
                 color: var(--muted); text-align: left; }
.bm-matrix-row-hd[b-ddyqcqszg3]  { text-align: right !important; }
.bm-matrix-cell[b-ddyqcqszg3]    { padding: 8px 16px; border: 1px solid var(--border); text-align: center;
                     font-weight: 700; border-radius: 4px; min-width: 64px; }
.bm-matrix-blank[b-ddyqcqszg3]   { background: var(--surface2); }

/* ── Partner profile cards (Tab 1) ───────────────────────────────────────── */
.bm-profile-grid[b-ddyqcqszg3] {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 14px;
    margin-bottom: 28px;
}
.bm-profile-card[b-ddyqcqszg3] {
    background: var(--surface); border: 1px solid var(--border);
    border-radius: var(--radius); padding: 18px;
}
.bm-profile-header[b-ddyqcqszg3] { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; }
.bm-profile-planet[b-ddyqcqszg3] {
    width: 44px; height: 44px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 13px; font-weight: 800; flex-shrink: 0; color: #fff;
}
.bm-planet-sun[b-ddyqcqszg3]     { background: #d4831a; }
.bm-planet-moon[b-ddyqcqszg3]    { background: #6b9ec8; }
.bm-planet-mars[b-ddyqcqszg3]    { background: #c94040; }
.bm-planet-mercury[b-ddyqcqszg3] { background: #5a9e6a; }
.bm-planet-jupiter[b-ddyqcqszg3] { background: #8b6ec9; }
.bm-planet-venus[b-ddyqcqszg3]   { background: #d4628a; }
.bm-planet-saturn[b-ddyqcqszg3]  { background: #5a6672; }
.bm-planet-rahu[b-ddyqcqszg3]    { background: #2c3e50; }
.bm-planet-ketu[b-ddyqcqszg3]    { background: #7d5a3c; }
.bm-planet-unknown[b-ddyqcqszg3] { background: var(--muted); }

.bm-profile-name[b-ddyqcqszg3]     { font-size: 15px; font-weight: 700; }
.bm-profile-lordlabel[b-ddyqcqszg3] { font-size: 13px; color: var(--muted); margin-top: 2px; }
.bm-profile-section-lbl[b-ddyqcqszg3] {
    font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
    color: var(--muted); margin-top: 12px; margin-bottom: 4px;
}
.bm-profile-text[b-ddyqcqszg3] { font-size: 14px; color: var(--text); line-height: 1.55; }
.bm-profile-role[b-ddyqcqszg3] {
    font-size: 14px; font-weight: 700; color: var(--accent);
    background: var(--surface2); border-radius: 6px; padding: 5px 8px; margin-top: 4px;
}

/* ── Graha Maitri detail table ───────────────────────────────────────────── */
.bm-gm-table[b-ddyqcqszg3] { width: 100%; border-collapse: collapse; font-size: 14px; margin-top: 10px; }
.bm-gm-table th[b-ddyqcqszg3] { padding: 8px 12px; font-size: 13px; font-weight: 700; color: var(--muted);
                  text-align: left; border-bottom: 1px solid var(--border); }
.bm-gm-table td[b-ddyqcqszg3] { padding: 10px 12px; border-bottom: 1px solid var(--border); vertical-align: top; }
.bm-note-cell[b-ddyqcqszg3] { color: var(--muted); font-style: italic; }

/* ── Partner birth chart containers (Tab 1) ──────────────────────────────── */
.bm-charts-wrap[b-ddyqcqszg3]  { display: flex; gap: 28px; flex-wrap: wrap; margin-top: 24px; }
.bm-chart-box[b-ddyqcqszg3]    { flex: 1; min-width: 220px; max-width: 340px; }
.bm-chart-label[b-ddyqcqszg3]  { font-size: 13px; font-weight: 700; text-transform: uppercase;
                   letter-spacing: .08em; color: var(--muted); margin-bottom: 10px; }

/* ── Koota Analysis cards (Tab 2) ────────────────────────────────────────── */
.bm-koota-section[b-ddyqcqszg3] { margin-bottom: 36px; }
.bm-koota-section-hd[b-ddyqcqszg3] {
    font-size: 13px; font-weight: 700; margin-bottom: 12px;
    padding: 10px 14px; background: var(--surface2); border-radius: var(--radius);
    border-left: 4px solid var(--accent2);
}
.bm-koota-card[b-ddyqcqszg3] {
    background: var(--surface); border: 1px solid var(--border);
    border-radius: var(--radius); padding: 14px 16px; margin-bottom: 8px;
}
.bm-koota-card--dimmed[b-ddyqcqszg3] { opacity: .55; }
.bm-koota-card-top[b-ddyqcqszg3] {
    display: flex; justify-content: space-between; align-items: center; margin-bottom: 4px;
}
.bm-koota-card-name[b-ddyqcqszg3] { font-size: 13px; font-weight: 700; margin-right: 8px; }
.bm-koota-card-score[b-ddyqcqszg3] { font-size: 16px; font-weight: 700; }
.bm-koota-card-quality[b-ddyqcqszg3] { font-size: 14px; color: var(--muted); margin-bottom: 8px; }
.bm-koota-card-why[b-ddyqcqszg3] {
    font-size: 14px; color: var(--text); line-height: 1.65;
    border-top: 1px solid var(--border); padding-top: 8px;
}
.bm-koota-card-why strong[b-ddyqcqszg3] { color: var(--accent); }
.bm-koota-card-why em[b-ddyqcqszg3] { font-style: italic; }
.bm-koota-card-notes[b-ddyqcqszg3] {
    font-size: 14px; color: var(--muted); font-style: italic;
    margin-top: 6px; padding-top: 6px; border-top: 1px dashed var(--border);
}

/* ── Relevance badges ─────────────────────────────────────────────────────── */
.bm-badge[b-ddyqcqszg3] {
    display: inline-block; font-size: 9px; font-weight: 700;
    text-transform: uppercase; letter-spacing: .08em;
    padding: 2px 7px; border-radius: 999px; vertical-align: middle;
}
.bm-badge-primary[b-ddyqcqszg3]   { background: rgba(99,102,241,.15); color: #6366f1; }
.bm-badge-secondary[b-ddyqcqszg3] { background: rgba(245,158,11,.15); color: #b45309; }
.bm-badge-marriage[b-ddyqcqszg3]  { background: var(--surface2); color: var(--muted); }
.bm-badge-verdict-high[b-ddyqcqszg3] { background: rgba(34,197,94,.15); color: #16a34a; }
.bm-badge-verdict-mid[b-ddyqcqszg3]  { background: rgba(245,158,11,.15); color: #b45309; }
.bm-badge-verdict-low[b-ddyqcqszg3]  { background: rgba(239,68,68,.15); color: #dc2626; }

/* ── Action Plan (Tab 3) ──────────────────────────────────────────────────── */
.bm-action-section[b-ddyqcqszg3] { margin-bottom: 36px; }
.bm-action-header[b-ddyqcqszg3] {
    display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
    margin-bottom: 16px;
}
.bm-action-pair[b-ddyqcqszg3] { font-size: 16px; font-weight: 700; }
.bm-signals-grid[b-ddyqcqszg3] { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 14px; }
.bm-signals-lbl[b-ddyqcqszg3] { font-size: 10px; font-weight: 700; text-transform: uppercase;
                  letter-spacing: .08em; margin-bottom: 6px; }
.bm-signals-green[b-ddyqcqszg3] { color: var(--success); }
.bm-signals-red[b-ddyqcqszg3]   { color: var(--danger); }
.bm-signal[b-ddyqcqszg3] { font-size: 14px; color: var(--text); margin-bottom: 5px;
             padding-left: 12px; border-left: 2px solid var(--success); }
.bm-signal-warn[b-ddyqcqszg3] { font-size: 14px; color: var(--text); margin-bottom: 5px;
                  padding-left: 12px; border-left: 2px solid var(--danger); }

.bm-action-block[b-ddyqcqszg3] {
    background: var(--surface); border: 1px solid var(--border);
    border-radius: var(--radius); padding: 14px 16px; margin-bottom: 10px;
}
.bm-action-block-title[b-ddyqcqszg3] {
    font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em;
    color: var(--accent); margin-bottom: 8px;
}
.bm-action-block-body[b-ddyqcqszg3] { font-size: 13px; line-height: 1.65; }

.bm-role-row[b-ddyqcqszg3] { display: flex; gap: 10px; margin-bottom: 6px; font-size: 13px; flex-wrap: wrap; }
.bm-role-name[b-ddyqcqszg3] { font-weight: 700; flex-shrink: 0; }
.bm-role-desc[b-ddyqcqszg3] { color: var(--text); }

.bm-checklist[b-ddyqcqszg3] { display: flex; flex-direction: column; gap: 6px; }
.bm-check[b-ddyqcqszg3] { font-size: 14px; padding: 6px 10px; background: var(--surface2); border-radius: 6px; }
.bm-check-urgent[b-ddyqcqszg3] { background: rgba(255,160,0,.1); color: #8a5a00; font-weight: 600; }

/* ── Shared note / footnote ───────────────────────────────────────────────── */
.bm-note-text[b-ddyqcqszg3] { font-size: 14px; color: var(--muted); line-height: 1.65; margin-bottom: 12px; }
.bm-footnote[b-ddyqcqszg3] {
    margin-top: 32px; padding: 14px 16px;
    background: var(--surface2); border-radius: var(--radius);
    font-size: 13px; color: var(--muted); line-height: 1.7;
}
.bm-footnote strong[b-ddyqcqszg3] { color: var(--text); }

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 640px) {
    .bm-pairs-grid[b-ddyqcqszg3]    { grid-template-columns: 1fr; }
    .bm-profile-grid[b-ddyqcqszg3]  { grid-template-columns: 1fr; }
    .bm-signals-grid[b-ddyqcqszg3]  { grid-template-columns: 1fr; }
    .bm-top-pair[b-ddyqcqszg3]      { flex-direction: column; gap: 8px; }
    .bm-tab-body[b-ddyqcqszg3]      { padding: 16px; }
    .bm-tabs[b-ddyqcqszg3]          { padding: 0 8px; overflow-x: auto; }
    .bm-tab[b-ddyqcqszg3]           { padding: 10px 10px; font-size: 14px; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .bm-pairs-grid[b-ddyqcqszg3]  { grid-template-columns: 1fr; }
    .bm-tab-body[b-ddyqcqszg3]    { padding: 16px 14px; }
    .bm-gm-wrap[b-ddyqcqszg3]     { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .bm-top-label[b-ddyqcqszg3]   { font-size: .72rem; }
    .bm-badge[b-ddyqcqszg3]       { font-size: .68rem; }
    .bm-tab[b-ddyqcqszg3]         { min-height: 44px; padding: 10px 16px; font-size: .88rem; }
    .bm-tab-bar[b-ddyqcqszg3]     { overflow-x: auto; flex-wrap: nowrap; }
    .bm-tab-bar[b-ddyqcqszg3]::-webkit-scrollbar { display: none; }
    .bm-section[b-ddyqcqszg3]     { padding: 14px 16px; }
}

/* ── Varga progress bar ───────────────────────────────────────────────────── */
.bm-varga-bar-wrap[b-ddyqcqszg3] {
    height: 6px; background: var(--border); border-radius: 3px;
    margin: 8px 0 6px; overflow: hidden;
}
.bm-varga-bar[b-ddyqcqszg3] {
    height: 100%; background: var(--accent); border-radius: 3px;
    transition: width .4s ease;
    min-width: 2px;
}
/* /Pages/ChartInput.razor.rz.scp.css */
/* ci-wrap/container/title/sub/form/row/field/searching/examples are now in app.css */

.ci-container[b-tq61ccvjjg] { max-width: 560px; }
.ci-place-wrap[b-tq61ccvjjg] { position: relative; }

/* Quota warning strip above submit button */
.ci-quota-warn[b-tq61ccvjjg] {
    display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
    padding: 8px 12px;
    border-radius: 8px;
    border: 1px solid color-mix(in srgb, #f59e0b 35%, var(--border));
    background: color-mix(in srgb, #f59e0b 6%, var(--surface));
    font-size: 13px; color: var(--text);
}
.ci-quota-warn--full[b-tq61ccvjjg] {
    border-color: color-mix(in srgb, #ef4444 35%, var(--border));
    background: color-mix(in srgb, #ef4444 6%, var(--surface));
}
.ci-quota-cta[b-tq61ccvjjg] {
    font-size: 14px; font-weight: 700; color: var(--accent);
    text-decoration: none; white-space: nowrap; margin-left: auto;
}
.ci-quota-cta:hover[b-tq61ccvjjg] { text-decoration: underline; }

/* ── Saved Profiles section ── */
.ci-profiles[b-tq61ccvjjg] {
    margin-top: 28px;
}
.ci-profiles-hd[b-tq61ccvjjg] {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 12px;
}
.ci-profiles-title[b-tq61ccvjjg] {
    font-size: 12px; font-weight: 700; text-transform: uppercase;
    letter-spacing: .07em; color: var(--muted);
}
.ci-profiles-manage[b-tq61ccvjjg] {
    font-size: 12px; font-weight: 600; color: var(--accent);
    text-decoration: none;
}
.ci-profiles-manage:hover[b-tq61ccvjjg] { text-decoration: underline; }

.ci-profiles-usage[b-tq61ccvjjg] {
    font-size: 11px; font-weight: 700; padding: 2px 9px; border-radius: 10px;
    background: var(--surface2); border: 1px solid var(--border); color: var(--muted);
}
.ci-usage-full[b-tq61ccvjjg] {
    background: #fee2e2; border-color: #fca5a5; color: #991b1b;
}
.ci-profiles-add[b-tq61ccvjjg] {
    font-size: 12px; font-weight: 700; color: #fff;
    background: var(--accent); padding: 4px 12px; border-radius: 8px;
    text-decoration: none; white-space: nowrap;
    transition: opacity .15s;
}
.ci-profiles-add:hover[b-tq61ccvjjg] { opacity: .85; }
.ci-profiles-upgrade[b-tq61ccvjjg] {
    font-size: 12px; font-weight: 600; color: #d97706;
    text-decoration: none; white-space: nowrap;
}
.ci-profiles-upgrade:hover[b-tq61ccvjjg] { text-decoration: underline; }

.ci-profiles-loading[b-tq61ccvjjg] {
    display: flex; align-items: center; font-size: 13px;
    color: var(--muted); padding: 12px 0;
}
.ci-profiles-empty[b-tq61ccvjjg] {
    display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
    padding: 16px; border: 1px dashed var(--border); border-radius: 10px;
    font-size: 13px; color: var(--muted);
}

.ci-profile-grid[b-tq61ccvjjg] {
    display: flex; flex-direction: column; gap: 8px;
}

.ci-profile-card[b-tq61ccvjjg] {
    display: flex; align-items: center; gap: 12px;
    width: 100%; text-align: left;
    background: var(--surface); border: 1px solid var(--border); border-radius: 10px;
    padding: 12px 14px; cursor: pointer;
    transition: box-shadow .15s, border-color .15s, transform .15s;
}
.ci-usage-full[b-tq61ccvjjg] {
    background: rgba(220,38,38,.12); border-color: rgba(220,38,38,.3); color: #f87171;
}
.ci-profile-card:hover[b-tq61ccvjjg] {
    border-color: var(--accent);
    box-shadow: 0 3px 14px rgba(0,0,0,.09);
    transform: translateY(-1px);
}

.ci-pc-avatar[b-tq61ccvjjg] {
    width: 40px; height: 40px; border-radius: 50%; flex-shrink: 0;
    background: color-mix(in srgb, var(--accent) 15%, transparent);
    color: var(--accent); font-size: 16px; font-weight: 700;
    display: flex; align-items: center; justify-content: center;
}
.ci-pc-body[b-tq61ccvjjg] { flex: 1; min-width: 0; }
.ci-pc-name[b-tq61ccvjjg] { font-size: 14px; font-weight: 700; color: var(--text); }
.ci-pc-full[b-tq61ccvjjg] { font-size: 12px; color: var(--muted); margin-top: 1px; }
.ci-pc-meta[b-tq61ccvjjg] {
    font-size: 11.5px; color: var(--muted); margin-top: 2px;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.ci-pc-arrow[b-tq61ccvjjg] {
    font-size: 16px; color: var(--muted);
    transition: transform .15s, color .15s;
}
.ci-profile-card:hover .ci-pc-arrow[b-tq61ccvjjg] {
    transform: translateX(3px); color: var(--accent);
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .ci-wrap[b-tq61ccvjjg] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .ci-container[b-tq61ccvjjg] { padding: 0 4px; }

    .ci-quota-warn[b-tq61ccvjjg] { padding: 9px 12px; font-size: 12px; border-radius: 10px; }
    .ci-quota-cta[b-tq61ccvjjg]  { font-size: 13px; }

    /* Profile cards — enlarged tap targets */
    .ci-profile-card[b-tq61ccvjjg] {
        padding: 13px 14px;
        min-height: 60px;
        gap: 12px;
    }
    .ci-pc-avatar[b-tq61ccvjjg]  { width: 38px; height: 38px; font-size: 15px; }
    .ci-pc-name[b-tq61ccvjjg]    { font-size: 13.5px; }
    .ci-pc-full[b-tq61ccvjjg]    { font-size: 11.5px; }
    .ci-pc-meta[b-tq61ccvjjg]    { font-size: 11px; }
    .ci-pc-arrow[b-tq61ccvjjg]   { font-size: 18px; }

    .ci-profiles-hd[b-tq61ccvjjg] { flex-wrap: wrap; gap: 8px; }
    .ci-profiles-title[b-tq61ccvjjg] { font-size: 11px; }
    .ci-profiles-manage[b-tq61ccvjjg] { font-size: 12px; }
    .ci-profiles-add[b-tq61ccvjjg] { padding: 6px 14px; font-size: 12px; }

    .ci-profiles-empty[b-tq61ccvjjg] { flex-direction: column; align-items: flex-start; gap: 8px; }
}
/* /Pages/ChartResult.razor.rz.scp.css */
/* ── Loading / error states ──────────────────────────────────────────────── */
.cr-center[b-tbbhvl1ilx] {
    display: flex; flex-direction: column; align-items: center;
    justify-content: center; height: 100vh; gap: 12px;
}

/* ── Root shell: full-viewport two-column layout ─────────────────────────── */
.cr-shell[b-tbbhvl1ilx] {
    display: flex;
    height: 100vh;
    overflow: hidden;
    background: var(--bg);
}

/* ══════════════════════════════════════════════════════════════════════════
   SIDEBAR — Logo · Subject · Mode · Tools · Footer
   ══════════════════════════════════════════════════════════════════════════ */
.cr-sidebar[b-tbbhvl1ilx] {
    display: flex;
    flex-direction: column;
    flex: 0 0 280px;
    width: 280px;
    height: 100vh;
    overflow: hidden;
    background: var(--surface);
    border-right: 1px solid var(--border);
    z-index: 200;
}

/* Zone 1 — Logo */
.cr-sb-logo[b-tbbhvl1ilx] {
    flex-shrink: 0;
    padding: 14px 16px 12px;
    border-bottom: 1px solid var(--border);
}
.cr-sb-logo-link[b-tbbhvl1ilx] {
    display: flex; align-items: center; gap: 10px;
    text-decoration: none;
}
.cr-sb-logo-mark[b-tbbhvl1ilx] {
    width: 38px; height: 38px;
    border-radius: 50%;
    object-fit: cover;
    object-position: 68% 44%;
    flex-shrink: 0;
}
.cr-sb-wordmark[b-tbbhvl1ilx] {
    font-family: "Cinzel", "Palatino Linotype", Georgia, serif;
    font-size: 17px; font-weight: 600;
    color: var(--accent);
    letter-spacing: .04em;
}

/* Zone 2 — Quota (only, subject moved to topbar) */

/* Quota warning (Free tier) */
.cr-sb-quota[b-tbbhvl1ilx] {
    position: relative; overflow: hidden;
    margin: 6px 0 2px;
    padding: 5px 8px 5px;
    border-radius: 8px;
    border: 1px solid var(--border);
    background: var(--surface2);
    font-size: 10.5px; color: var(--muted);
}
.cr-sb-quota--warn[b-tbbhvl1ilx] {
    border-color: color-mix(in srgb, #f59e0b 40%, var(--border));
    background: color-mix(in srgb, #f59e0b 6%, var(--surface));
    color: var(--text);
}
.cr-sb-quota--full[b-tbbhvl1ilx] {
    border-color: color-mix(in srgb, #ef4444 40%, var(--border));
    background: color-mix(in srgb, #ef4444 6%, var(--surface));
    color: var(--text);
}
.cr-sb-quota-bar[b-tbbhvl1ilx] {
    position: absolute; top: 0; left: 0; height: 2px;
    background: var(--warning); border-radius: 8px 8px 0 0;
    transition: width .3s;
}
.cr-sb-quota--full .cr-sb-quota-bar[b-tbbhvl1ilx] { background: var(--danger); }
.cr-sb-quota-text[b-tbbhvl1ilx] { display: block; }
.cr-sb-quota-cta[b-tbbhvl1ilx] {
    display: inline-block; margin-top: 3px;
    font-size: 10px; font-weight: 700; color: var(--accent);
    text-decoration: none;
}
.cr-sb-quota-cta:hover[b-tbbhvl1ilx] { text-decoration: underline; }

/* Zone 3 — Scrollable nav (Tools + 6-hub accordion) */
.cr-sb-nav[b-tbbhvl1ilx] {
    flex: 1 1 auto;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: thin;
    scrollbar-color: var(--border) transparent;
    border-top: 1px solid var(--border);
}
.cr-sb-nav-section[b-tbbhvl1ilx] { display: flex; flex-direction: column; padding: 10px 10px 6px; }
.cr-sb-nav-label[b-tbbhvl1ilx] {
    font-size: 9.5px; font-weight: 700; letter-spacing: .16em;
    text-transform: uppercase; color: color-mix(in srgb, var(--accent) 55%, transparent);
    padding: 0 4px 6px;
}
.cr-sb-divider[b-tbbhvl1ilx] {
    height: 1px; background: var(--border); margin: 4px 0;
}
.cr-sb-hub-nav[b-tbbhvl1ilx] { display: flex; flex-direction: column; padding: 4px 0; }

.cr-sb-tool[b-tbbhvl1ilx] {
    display: flex; align-items: center; gap: 12px;
    padding: 10px 10px; border-radius: 8px;
    font-size: 13.5px; font-weight: 500; color: var(--muted);
    line-height: 1.4;
    text-decoration: none; background: none; border: none; cursor: pointer;
    transition: background .14s, color .14s;
    white-space: nowrap; overflow: hidden; width: 100%;
    border-left: 2.5px solid transparent;
}
.cr-sb-tool:hover[b-tbbhvl1ilx]         { background: var(--surface2); color: var(--text); border-left-color: rgba(212,175,55,.3); }
.cr-sb-tool-auth[b-tbbhvl1ilx]          { background: rgba(229,163,45,.07); color: var(--accent); }
.cr-sb-tool-auth:hover[b-tbbhvl1ilx]    { background: rgba(229,163,45,.13); }
.cr-sb-tool-svg[b-tbbhvl1ilx] {
    width: 18px; height: 18px; flex-shrink: 0;
    opacity: .75; transition: opacity .14s;
}
.cr-sb-tool:hover .cr-sb-tool-svg[b-tbbhvl1ilx] { opacity: 1; }

/* cr-hn-tab link variant (for <a> inside hub accordion) */
.cr-hn-tab-link[b-tbbhvl1ilx] {
    text-decoration: none;
    color: var(--muted);
}
.cr-hn-tab-link:hover[b-tbbhvl1ilx] { color: var(--text); background: var(--surface2); }

/* Ext hubs: Compatibility + Ask & Consult (collapsible, below main hub nav) */
.cr-hn-ext-hubs[b-tbbhvl1ilx] {
    border-top: 1px solid var(--border);
    padding: 4px 0 6px;
}

/* Unique feature badge — styled pill */
.cr-hn-tab-unique[b-tbbhvl1ilx] {
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .04em;
    color: var(--accent);
    background: color-mix(in srgb, var(--accent) 14%, transparent);
    border: 1px solid color-mix(in srgb, var(--accent) 30%, transparent);
    border-radius: 6px;
    padding: 1px 5px;
    white-space: nowrap;
    flex-shrink: 0;
    text-transform: uppercase;
}

/* Zone 4 — Language + tier footer */
.cr-sb-footer[b-tbbhvl1ilx] {
    flex-shrink: 0;
    display: flex; flex-direction: column; gap: 6px;
    padding: 8px 14px 12px;
    border-top: 1px solid var(--border);
}
.cr-sb-lang[b-tbbhvl1ilx] { display: flex; align-items: center; gap: 5px; }
.cr-sb-lang-icon[b-tbbhvl1ilx] { width: 13px; height: 13px; color: var(--muted); flex-shrink: 0; }
.cr-sb-lang-select[b-tbbhvl1ilx] {
    background: none; border: none; font-size: 13px; color: var(--muted);
    cursor: pointer; padding: 0; max-width: 90px;
}
.cr-sb-lang-select:focus[b-tbbhvl1ilx] { outline: none; color: var(--text); }
.cr-sb-tier-row[b-tbbhvl1ilx] {
    display: flex; align-items: center; justify-content: space-between; gap: 8px;
}
.cr-sb-tier[b-tbbhvl1ilx] {
    display: inline-block;
    font-size: 10px; font-weight: 700; letter-spacing: .08em;
    text-transform: uppercase; border-radius: 10px;
    padding: 2px 8px;
}
.cr-sb-tier--free[b-tbbhvl1ilx]    { background: var(--surface2); color: var(--muted); border: 1px solid var(--border); }
.cr-sb-tier--seeker[b-tbbhvl1ilx]  { background: rgba(99,102,241,.15); color: #818cf8; border: 1px solid rgba(99,102,241,.3); }
.cr-sb-tier--scholar[b-tbbhvl1ilx] { background: rgba(196,98,10,.15); color: #f59e0b; border: 1px solid rgba(196,98,10,.3); }
.cr-sb-upgrade-link[b-tbbhvl1ilx] {
    font-size: 13px; font-weight: 600; color: var(--accent);
    text-decoration: none; white-space: nowrap;
}
.cr-sb-upgrade-link:hover[b-tbbhvl1ilx] { text-decoration: underline; }

/* ══════════════════════════════════════════════════════════════════════════
   MAIN CONTENT AREA
   ══════════════════════════════════════════════════════════════════════════ */
.cr-main[b-tbbhvl1ilx] {
    display: flex; flex-direction: column;
    flex: 1 1 auto; min-width: 0; height: 100vh; overflow: hidden;
}

/* Top bar — single row: [☰] [name · meta · toggle] [FREE] [Report] [PDF] */
.cr-topbar[b-tbbhvl1ilx] {
    flex-shrink: 0;
    display: flex; align-items: center;
    padding: 0 16px; height: 48px;
    background: var(--surface); border-bottom: 1px solid var(--border);
    gap: 10px;
}
.cr-topbar-menu-btn[b-tbbhvl1ilx] {
    display: none;
    align-items: center;
    padding: 4px 8px; border-radius: 6px;
    font-size: 14px; color: var(--muted);
    background: none; border: 1px solid var(--border);
    cursor: pointer; flex-shrink: 0;
}

/* Subject block: all inline, single row */
.cr-topbar-subject-block[b-tbbhvl1ilx] {
    flex: 1; min-width: 0;
    display: flex; align-items: center; gap: 8px;
    overflow: hidden;
}
.cr-topbar-name[b-tbbhvl1ilx] {
    font-size: 14px; font-weight: 700; color: var(--text);
    white-space: nowrap; flex-shrink: 0;
}
.cr-topbar-sep[b-tbbhvl1ilx] {
    color: var(--muted); opacity: .5; flex-shrink: 0;
}
.cr-topbar-meta[b-tbbhvl1ilx] {
    font-size: 14px; color: var(--muted);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    flex-shrink: 1;
}
.cr-topbar-mode[b-tbbhvl1ilx] {
    display: flex; flex-shrink: 0;
    background: var(--surface2);
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: 2px; gap: 2px;
}
.cr-topbar-mode-btn[b-tbbhvl1ilx], .cr-topbar-mode-active[b-tbbhvl1ilx] {
    padding: 3px 12px;
    font-size: 10px; font-weight: 700; letter-spacing: .06em;
    text-transform: uppercase; border-radius: 16px;
    border: none; cursor: pointer;
}
.cr-topbar-mode-btn[b-tbbhvl1ilx]    { background: none; color: var(--muted); }
.cr-topbar-mode-active[b-tbbhvl1ilx] { background: var(--accent); color: #fff; }
.cr-topbar-mode-locked[b-tbbhvl1ilx] {
    padding: 3px 10px;
    font-size: 10px; font-weight: 700; letter-spacing: .06em;
    text-transform: uppercase; border-radius: 16px;
    color: var(--muted); text-decoration: none; opacity: .7;
    display: flex; align-items: center; gap: 3px;
    white-space: nowrap;
}
.cr-topbar-mode-locked:hover[b-tbbhvl1ilx] {
    opacity: 1; color: var(--accent);
}

.cr-topbar-right[b-tbbhvl1ilx] {
    display: flex; align-items: center; gap: 8px; flex-shrink: 0;
}
.cr-topbar-user-block[b-tbbhvl1ilx] {
    display: flex; align-items: center; gap: 6px;
    padding: 3px 8px 3px 6px;
    background: var(--surface2); border: 1px solid var(--border);
    border-radius: 20px;
}
.cr-topbar-username[b-tbbhvl1ilx] {
    font-size: 14px; font-weight: 500; color: var(--text);
    white-space: nowrap;
}
.cr-topbar-tier[b-tbbhvl1ilx] {
    font-size: 10px; font-weight: 700; letter-spacing: .08em;
    text-transform: uppercase; border-radius: 8px;
    padding: 1px 6px; white-space: nowrap;
}
.cr-topbar-tier--free[b-tbbhvl1ilx]    { background: rgba(150,150,150,.15); color: var(--muted); }
.cr-topbar-tier--seeker[b-tbbhvl1ilx]  { background: rgba(99,102,241,.18); color: #818cf8; }
.cr-topbar-tier--scholar[b-tbbhvl1ilx] { background: rgba(245,158,11,.18); color: #f59e0b; }
.cr-topbar-btn[b-tbbhvl1ilx] { font-size: 14px; padding: 4px 10px; white-space: nowrap; }

/* ══════════════════════════════════════════════════════════════════════════
   6-HUB NAVIGATION BAR
   ══════════════════════════════════════════════════════════════════════════ */
.cr-hubs[b-tbbhvl1ilx] {
    flex-shrink: 0;
    display: flex;
    align-items: stretch;
    height: 48px;
    background: var(--surface);
    border-bottom: 1px solid var(--border);
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.cr-hubs[b-tbbhvl1ilx]::-webkit-scrollbar { display: none; }

.cr-hub-tab[b-tbbhvl1ilx] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 18px;
    flex-shrink: 0;
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    font-size: 13px; font-weight: 600;
    color: var(--muted);
    cursor: pointer;
    transition: color .15s, border-color .15s;
    white-space: nowrap;
}
.cr-hub-tab:hover[b-tbbhvl1ilx]                        { color: var(--text); }
.cr-hub-tab--active[b-tbbhvl1ilx]                      { color: var(--accent); border-bottom-color: var(--accent); }
.cr-hub-tab--locked[b-tbbhvl1ilx]                      { opacity: .6; }
.cr-hub-tab--locked:hover[b-tbbhvl1ilx]                { opacity: .85; }

.cr-hub-icon[b-tbbhvl1ilx]  { font-size: 14px; line-height: 1; }
.cr-hub-label[b-tbbhvl1ilx] { /* inherits from .cr-hub-tab */ }
.cr-hub-lock[b-tbbhvl1ilx]  { font-size: 10px; opacity: .8; }

/* ══════════════════════════════════════════════════════════════════════════
   SUB-TAB STRIP
   ══════════════════════════════════════════════════════════════════════════ */
.cr-subtabs[b-tbbhvl1ilx] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 2px;
    height: 40px;
    padding: 0 10px;
    background: var(--surface2, var(--surface));
    border-bottom: 1px solid var(--border);
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.cr-subtabs[b-tbbhvl1ilx]::-webkit-scrollbar { display: none; }

.cr-subtab[b-tbbhvl1ilx] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    flex-shrink: 0;
    background: none;
    border: none;
    border-radius: 6px;
    font-size: 14px; font-weight: 500;
    color: var(--muted);
    cursor: pointer;
    transition: background .12s, color .12s;
    white-space: nowrap;
}
.cr-subtab:hover[b-tbbhvl1ilx]          { background: var(--surface); color: var(--text); }
.cr-subtab--active[b-tbbhvl1ilx]        { background: var(--surface); color: var(--accent); font-weight: 700; }
.cr-subtab--locked[b-tbbhvl1ilx]        { opacity: .65; }
.cr-subtab-badge[b-tbbhvl1ilx] {
    font-size: 10px; font-weight: 700;
    border-radius: 8px; padding: 1px 4px;
}
.cr-subtab-badge--yoga[b-tbbhvl1ilx]  { color: var(--success, #22c55e); }
.cr-subtab-badge--dosha[b-tbbhvl1ilx] { color: var(--danger,  #ef4444); }
.cr-subtab-unique[b-tbbhvl1ilx] { font-size: 9px; color: var(--accent); opacity: .8; }
.cr-subtab-lock[b-tbbhvl1ilx]   { font-size: 10px; opacity: .7; }

/* ══════════════════════════════════════════════════════════════════════════
   HUB-LEVEL LOCK CARD
   ══════════════════════════════════════════════════════════════════════════ */
.cr-hub-locked[b-tbbhvl1ilx] {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 24px;
    overflow-y: auto;
}
.cr-hub-locked-card[b-tbbhvl1ilx] {
    text-align: center;
    max-width: 380px;
    padding: 40px 32px;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
}
.cr-hub-locked-emoji[b-tbbhvl1ilx] {
    display: block;
    font-size: 44px;
    margin-bottom: 14px;
    opacity: .45;
    filter: grayscale(40%);
}
.cr-hub-locked-title[b-tbbhvl1ilx] {
    font-size: 20px; font-weight: 700;
    color: var(--text);
    margin: 0 0 10px;
}
.cr-hub-locked-body[b-tbbhvl1ilx] {
    font-size: 14px; color: var(--muted);
    line-height: 1.65;
    margin: 0 0 22px;
}
.cr-hub-locked-cta[b-tbbhvl1ilx] {
    display: inline-block;
    background: var(--accent);
    color: #fff;
    border-radius: 10px;
    padding: 11px 26px;
    font-size: 14px; font-weight: 700;
    text-decoration: none;
    transition: opacity .15s, transform .1s;
}
.cr-hub-locked-cta:hover[b-tbbhvl1ilx] { opacity: .85; transform: translateY(-1px); }

/* ══════════════════════════════════════════════════════════════════════════
   TAB-LEVEL LOCK CARD
   ══════════════════════════════════════════════════════════════════════════ */
.cr-tab-locked[b-tbbhvl1ilx] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px 24px;
}
.cr-tab-locked-card[b-tbbhvl1ilx] {
    text-align: center;
    max-width: 320px;
    padding: 28px 24px;
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface);
}
.cr-tab-locked-msg[b-tbbhvl1ilx] {
    font-size: 14px; color: var(--muted);
    line-height: 1.6;
    margin: 0 0 4px;
}

/* Locked-tab toast — visible on all widths, especially useful on mobile */
.cr-locked-toast[b-tbbhvl1ilx] {
    display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
    padding: 7px 12px;
    background: color-mix(in srgb, var(--accent) 8%, var(--surface));
    border-bottom: 1px solid color-mix(in srgb, var(--accent) 25%, var(--border));
    font-size: 14px; color: var(--text);
    animation: cr-toast-in-b-tbbhvl1ilx .2s ease;
}
@keyframes cr-toast-in-b-tbbhvl1ilx {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: translateY(0); }
}
.cr-locked-toast-cta[b-tbbhvl1ilx] {
    font-size: 13px; font-weight: 700; color: var(--accent);
    text-decoration: none; margin-left: auto;
}
.cr-locked-toast-cta:hover[b-tbbhvl1ilx] { text-decoration: underline; }
.cr-locked-toast-close[b-tbbhvl1ilx] {
    background: none; border: none; color: var(--muted);
    font-size: 14px; cursor: pointer; padding: 0 2px; flex-shrink: 0;
}
.cr-locked-toast-close:hover[b-tbbhvl1ilx] { color: var(--text); }

/* Panel content */
.cr-content[b-tbbhvl1ilx] {
    flex: 1 1 auto;
    padding: 24px 28px;
    overflow-y: auto;
}

.cr-hn-group[b-tbbhvl1ilx] { display: flex; flex-direction: column; }

.cr-hn-hub[b-tbbhvl1ilx] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 11px 12px 11px 14px;
    background: none;
    border: none;
    border-left: 2.5px solid transparent;
    cursor: pointer;
    text-align: left;
    color: var(--muted);
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: .02em;
    transition: background .12s, color .12s, border-color .12s;
}
.cr-hn-hub:hover[b-tbbhvl1ilx] { background: var(--surface2); color: var(--text); }
.cr-hn-group--active > .cr-hn-hub[b-tbbhvl1ilx] {
    color: var(--accent);
    background: color-mix(in srgb, var(--accent) 8%, var(--surface));
    border-left-color: var(--accent);
}
.cr-hn-hub--locked[b-tbbhvl1ilx] { opacity: .7; cursor: pointer; }
.cr-hn-upgrade-btn[b-tbbhvl1ilx] {
    margin-left: auto;
    font-size: 10px; font-weight: 700;
    color: var(--accent); text-decoration: none;
    background: color-mix(in srgb, var(--accent) 12%, transparent);
    border: 1px solid color-mix(in srgb, var(--accent) 35%, transparent);
    border-radius: 8px;
    padding: 2px 7px;
    white-space: nowrap;
    flex-shrink: 0;
}
.cr-hn-upgrade-btn:hover[b-tbbhvl1ilx] { background: color-mix(in srgb, var(--accent) 22%, transparent); }

.cr-hn-icon[b-tbbhvl1ilx]    { font-size: 15px; line-height: 1; flex-shrink: 0; }
.cr-hn-label[b-tbbhvl1ilx]   { flex: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.cr-hn-lock[b-tbbhvl1ilx]    { font-size: 10px; opacity: .8; flex-shrink: 0; }
.cr-hn-chevron[b-tbbhvl1ilx] {
    font-size: 14px; color: var(--muted); flex-shrink: 0; opacity: .5;
    transition: transform .15s;
}
.cr-hn-group--active > .cr-hn-hub .cr-hn-chevron[b-tbbhvl1ilx] {
    transform: rotate(90deg); color: var(--accent); opacity: 1;
}

/* Sub-tab list (shown when hub is active) */
.cr-hn-tabs[b-tbbhvl1ilx] {
    display: flex; flex-direction: column;
    background: color-mix(in srgb, var(--surface2, var(--surface)) 60%, var(--surface));
    padding: 3px 0 6px;
}
.cr-hn-tab[b-tbbhvl1ilx] {
    display: flex; align-items: center; gap: 4px;
    width: 100%;
    padding: 8px 10px 8px 36px;
    background: none; border: none; cursor: pointer;
    text-align: left;
    color: var(--muted);
    font-size: 13.5px; font-weight: 500;
    line-height: 1.4;
    transition: background .1s, color .1s;
    white-space: nowrap; overflow: hidden;
}
.cr-hn-tab:hover[b-tbbhvl1ilx]          { background: var(--surface2); color: var(--text); }
.cr-hn-tab--active[b-tbbhvl1ilx]        { color: var(--accent); font-weight: 700; background: color-mix(in srgb, var(--accent) 6%, var(--surface)); }
.cr-hn-tab--locked[b-tbbhvl1ilx]        { opacity: .6; }
.cr-hn-tab-label[b-tbbhvl1ilx]          { flex: 1; overflow: hidden; text-overflow: ellipsis; }
.cr-hn-tab-unique[b-tbbhvl1ilx]         { font-size: 9px; color: var(--accent); opacity: .7; flex-shrink: 0; }
.cr-hn-tab-lock[b-tbbhvl1ilx]           { font-size: 9px; opacity: .7; flex-shrink: 0; }

/* Mobile sidebar backdrop */
.cr-sidebar-backdrop[b-tbbhvl1ilx] {
    display: none;
    position: fixed; inset: 0;
    background: rgba(0,0,0,.4);
    z-index: 199;
}

/* ══════════════════════════════════════════════════════════════════════════
   MOBILE (<768px)
   ══════════════════════════════════════════════════════════════════════════ */
@media (max-width: 767px) {
    .cr-sidebar[b-tbbhvl1ilx] {
        position: fixed; left: 0; top: 0; bottom: 0;
        transform: translateX(-100%);
        transition: transform .22s ease;
        box-shadow: 4px 0 24px rgba(0,0,0,.18);
    }
    .cr-shell.sidebar-open .cr-sidebar[b-tbbhvl1ilx]           { transform: translateX(0); }
    .cr-shell.sidebar-open .cr-sidebar-backdrop[b-tbbhvl1ilx]  { display: block; }

    .cr-topbar-menu-btn[b-tbbhvl1ilx] { display: flex; }

    .cr-hub-tab[b-tbbhvl1ilx]   { padding: 0 12px; font-size: 14px; }
    .cr-hub-label[b-tbbhvl1ilx] { display: none; }    /* icon-only on mobile */
    .cr-hub-icon[b-tbbhvl1ilx]  { font-size: 18px; }

    .cr-content[b-tbbhvl1ilx]   { padding: 14px 16px; }
    .cr-hub-locked-card[b-tbbhvl1ilx] { padding: 28px 18px; }

    /* Innovation #1: Bottom nav — thumb-zone optimized */
    .cr-hubs[b-tbbhvl1ilx] {
        padding-bottom: env(safe-area-inset-bottom);
        background: var(--surface);
        border-top: 1px solid var(--border);
        box-shadow: 0 -2px 12px rgba(0,0,0,.07);
    }
    .cr-hub-tab[b-tbbhvl1ilx] {
        min-height: 52px;
        min-width: 52px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
        border-radius: 12px;
        transition: background .14s;
    }
    .cr-hub-tab:active[b-tbbhvl1ilx] {
        background: color-mix(in srgb, var(--accent) 12%, transparent);
        transform: scale(.94);
    }
    .cr-hub-tab--active[b-tbbhvl1ilx] {
        color: var(--accent);
        background: color-mix(in srgb, var(--accent) 10%, transparent);
    }
    .cr-hub-label[b-tbbhvl1ilx] { font-size: 10px; font-weight: 600; display: block; }
    /* Fade cue on section strip (Innovation #7) */
    .cr-section-strip[b-tbbhvl1ilx] { position: relative; }
    .cr-section-strip[b-tbbhvl1ilx]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 36px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
}

/* ══════════════════════════════════════════════════════════════════════════
   TABLET (768–1099px)
   ══════════════════════════════════════════════════════════════════════════ */
@media (min-width: 768px) and (max-width: 1099px) {
    .cr-sidebar[b-tbbhvl1ilx]  { flex: 0 0 230px; width: 230px; }
    .cr-hub-tab[b-tbbhvl1ilx]  { padding: 0 14px; font-size: 14px; }
    .cr-content[b-tbbhvl1ilx]  { padding: 16px 20px; }
    .cr-topbar-btn[b-tbbhvl1ilx] { font-size: 13px; padding: 3px 8px; }
    .cr-topbar-meta[b-tbbhvl1ilx], .cr-topbar-sep[b-tbbhvl1ilx] { display: none; }
}

/* ══════════════════════════════════════════════════════════════════════════
   DESKTOP (≥1100px) — hide horizontal hub/sub-tab bars (sidebar has accordion)
   ══════════════════════════════════════════════════════════════════════════ */
@media (min-width: 1100px) {
    .cr-hubs[b-tbbhvl1ilx]     { display: none; }
    .cr-subtabs[b-tbbhvl1ilx]  { display: none; }
    .cr-sidebar[b-tbbhvl1ilx]  { flex: 0 0 280px; width: 280px; }
    .cr-topbar-menu-btn[b-tbbhvl1ilx] { display: none; }
}
/* /Pages/DailyPanchanga.razor.rz.scp.css */
/* Header removed — AppHeader component handles site nav */

.dp-container[b-w10f2wlefw] { max-width: 900px; margin: 0 auto; padding: 40px 24px 96px; width: 100%; }
.dp-title[b-w10f2wlefw]     { font-family: Palatino Linotype, Palatino, Georgia, serif; font-size: 26px; line-height: 1.2; color: var(--accent); margin: 0 0 8px; }
.dp-sub[b-w10f2wlefw]       { color: var(--muted); font-size: 14px; line-height: 1.6; max-width: 62ch; margin: 0 0 28px; }

.dp-controls[b-w10f2wlefw]  {
    display: grid; grid-template-columns: 2fr 1.3fr 1fr; gap: 14px;
    background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius);
    padding: 16px; margin-bottom: 28px;
}
.dp-field[b-w10f2wlefw]       { position: relative; display: flex; flex-direction: column; gap: 5px; }
.dp-field label[b-w10f2wlefw] { font-size: 13px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; color: var(--muted); }
.dp-field input[b-w10f2wlefw], .dp-field select[b-w10f2wlefw] {
    background: var(--surface2); border: 1px solid var(--border); border-radius: 8px;
    color: var(--text); font-size: 13px; padding: 8px 10px;
}
.dp-date-row[b-w10f2wlefw]  { display: flex; gap: 8px; }
.dp-date-row input[b-w10f2wlefw] { flex: 1 1 auto; }

.dp-empty[b-w10f2wlefw]  { color: var(--muted); font-size: 14px; padding: 40px 0; text-align: center; }
.dp-muted[b-w10f2wlefw]  { color: var(--muted); font-size: 13px; }
.dp-loading[b-w10f2wlefw] { color: var(--muted); font-size: 13px; padding: 12px 0; }

.dp-section[b-w10f2wlefw]       { margin-top: 32px; }
.dp-section-title[b-w10f2wlefw] { font-size: 16px; font-weight: 700; color: var(--text); margin: 0 0 12px; }

.dp-share-btn[b-w10f2wlefw] {
    display: inline-flex; align-items: center; gap: 8px; margin-top: 16px;
    background: #25D366; color: #06210f; border: none; border-radius: 999px;
    font-size: 13px; font-weight: 700; padding: 10px 18px; cursor: pointer;
    transition: filter 120ms ease;
}
.dp-share-btn:hover[b-w10f2wlefw] { filter: brightness(1.08); }
.dp-share-icon[b-w10f2wlefw] { font-size: 15px; }

.dp-highlight-banner[b-w10f2wlefw] {
    display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px;
    padding: 12px 16px; border-radius: var(--radius); font-size: 13px; font-weight: 600;
    border: 1px solid var(--border); margin-bottom: 12px;
}
.dp-quality-good[b-w10f2wlefw] { background: color-mix(in srgb, var(--success) 12%, transparent); border-color: color-mix(in srgb, var(--success) 35%, transparent); }
.dp-quality-mid[b-w10f2wlefw]  { background: var(--surface2); }
.dp-quality-bad[b-w10f2wlefw]  { background: color-mix(in srgb, var(--danger) 12%, transparent);  border-color: color-mix(in srgb, var(--danger) 35%, transparent); }

.dp-highlight-list[b-w10f2wlefw] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
.dp-highlight-good[b-w10f2wlefw]  { font-size: 13px; color: var(--text); }

/* ── Hora / Lagna tables ───────────────────────────────────────────────── */
.dp-table-wrap[b-w10f2wlefw] {
    overflow-x: auto;
    border: 1px solid var(--border);
    border-radius: var(--radius);
}

.dp-table[b-w10f2wlefw] {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.dp-table thead th[b-w10f2wlefw] {
    background: var(--surface);
    color: var(--muted);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: 10px 14px;
    text-align: left;
    border-bottom: 1px solid var(--border);
}

.dp-table tbody tr[b-w10f2wlefw] {
    border-bottom: 1px solid var(--border);
    transition: background .1s;
}

.dp-table tbody tr:last-child[b-w10f2wlefw] {
    border-bottom: none;
}

.dp-table tbody tr:hover[b-w10f2wlefw] {
    background: var(--surface);
}

.dp-table td[b-w10f2wlefw] {
    padding: 10px 14px;
    vertical-align: middle;
    color: var(--text);
}

/* Current row highlight */
.dp-row-current[b-w10f2wlefw] {
    background: rgba(var(--accent-rgb, 130, 90, 200), .12) !important;
    font-weight: 600;
}

/* Benefic / malefic colour cue on the planet cell */
.dp-row-benefic .dp-cell-lord[b-w10f2wlefw] { color: var(--success, #3aa76d); }
.dp-row-malefic .dp-cell-lord[b-w10f2wlefw] { color: var(--danger,  #d64d72); }

.dp-cell-lord[b-w10f2wlefw] {
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 7px;
    white-space: nowrap;
}

.dp-cell-time[b-w10f2wlefw] {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    color: var(--muted);
}

.dp-cell-nature[b-w10f2wlefw] {
    white-space: nowrap;
    font-size: 13px;
    color: var(--muted);
}

.dp-cell-now[b-w10f2wlefw] {
    font-size: 13px;
    font-weight: 700;
    color: var(--accent);
    white-space: nowrap;
}

/* Animated dot for the current-period row */
.dp-now-pip[b-w10f2wlefw] {
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--accent);
    flex-shrink: 0;
    animation: dp-pip-pulse-b-w10f2wlefw 1.8s ease-in-out infinite;
}

@keyframes dp-pip-pulse-b-w10f2wlefw {
    0%, 100% { opacity: 1; transform: scale(1);    }
    50%       { opacity: .4; transform: scale(.7); }
}

/* ── DARE Timing Card ────────────────────────────────────────────────────── */
.dp-dare-section[b-w10f2wlefw] { margin-top: 12px; }

.dp-dare-card[b-w10f2wlefw] {
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface);
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    border-left: 4px solid var(--accent, #7c3aed);
}
.dp-dare-tone-cautionary[b-w10f2wlefw] { border-left-color: var(--danger, #b3452f); }
.dp-dare-tone-supportive[b-w10f2wlefw]  { border-left-color: var(--success, #2e7d52); }

.dp-dare-head[b-w10f2wlefw] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    flex-wrap: wrap;
}
.dp-dare-pillar[b-w10f2wlefw] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--accent, #7c3aed);
}
.dp-dare-window[b-w10f2wlefw] { font-size: 11px; color: var(--muted); margin-left: auto; }
.dp-dare-headline[b-w10f2wlefw] { font-size: 15px; font-weight: 700; line-height: 1.35; }
.dp-dare-focus[b-w10f2wlefw]    { font-size: 13px; line-height: 1.5; }
.dp-dare-caution[b-w10f2wlefw]  { font-size: 12.5px; color: var(--danger, #b3452f); background: rgba(179,69,47,.07); border-radius: 6px; padding: 6px 10px; }
.dp-dare-card--kala[b-w10f2wlefw] { border-left-color: var(--muted, #888); }
.dp-dare-card + .dp-dare-card[b-w10f2wlefw] { margin-top: 10px; }
.dp-dare-sub[b-w10f2wlefw] { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); margin: -4px 0 12px; font-weight: 500; }
.dp-dare-locked[b-w10f2wlefw] { font-size: 12.5px; color: var(--muted); padding: 10px 14px; border: 1px dashed var(--border); border-radius: 10px; margin-top: 10px; }
.dp-dare-locked a[b-w10f2wlefw] { color: var(--accent, #7c3aed); font-weight: 700; text-decoration: none; }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .dp-container[b-w10f2wlefw] { padding: 20px 14px; padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .dp-title[b-w10f2wlefw]     { font-size: 20px; }
    .dp-sub[b-w10f2wlefw]       { font-size: 13px; margin-bottom: 18px; }

    /* Stack the 3-column controls to a single column */
    .dp-controls[b-w10f2wlefw]  {
        grid-template-columns: 1fr;
        gap: 10px;
        padding: 12px;
        margin-bottom: 18px;
    }
    .dp-date-row[b-w10f2wlefw]  { gap: 6px; }

    .dp-section[b-w10f2wlefw]       { margin-top: 22px; }
    .dp-section-title[b-w10f2wlefw] { font-size: 14px; }

    .dp-highlight-banner[b-w10f2wlefw] { padding: 10px 12px; font-size: 12px; }

    /* DARE card — compact on mobile */
    .dp-dare-card[b-w10f2wlefw] { padding: 12px 14px; }
    .dp-dare-headline[b-w10f2wlefw] { font-size: 14px; }

/* Share button — full-width on mobile */
    .dp-share-btn[b-w10f2wlefw] { width: 100%; justify-content: center; padding: 12px 18px; font-size: 13px; }

    /* Table — horizontal scroll already set; reduce cell padding */
    .dp-table thead th[b-w10f2wlefw] { padding: 8px 10px; font-size: 9px; }
    .dp-table td[b-w10f2wlefw]       { padding: 9px 10px; font-size: 12px; }
    .dp-cell-lord[b-w10f2wlefw]      { gap: 5px; }
    .dp-cell-time[b-w10f2wlefw],
    .dp-cell-nature[b-w10f2wlefw]    { font-size: 11.5px; }
}
/* /Pages/DiwaliMuhurtaPage.razor.rz.scp.css */
.dm-wrap[b-58c4n0de1j] {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 16px 80px;
}


.dm-hero[b-58c4n0de1j] { margin-bottom: 24px; }

.dm-title[b-58c4n0de1j] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 10px;
    line-height: 1.2;
}

.dm-sub[b-58c4n0de1j] {
    color: var(--color-muted);
    line-height: 1.65;
    margin: 0;
}

.dm-controls[b-58c4n0de1j] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-end;
    margin-bottom: 28px;
}

.dm-field[b-58c4n0de1j] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.dm-field label[b-58c4n0de1j] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.dm-field input[b-58c4n0de1j] {
    padding: 9px 12px;
    border-radius: 6px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.9rem;
}

.dm-field-place[b-58c4n0de1j] {
    position: relative;
    flex: 1;
    min-width: 240px;
}

.dm-dropdown[b-58c4n0de1j] {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    right: 0;
    z-index: 50;
    list-style: none;
    margin: 0;
    padding: 4px 0;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,.12);
}

.dm-dropdown-item[b-58c4n0de1j] {
    display: flex;
    flex-direction: column;
    padding: 8px 12px;
    cursor: pointer;
    gap: 2px;
}

.dm-dropdown-item:hover[b-58c4n0de1j] { background: color-mix(in srgb, var(--color-accent) 8%, transparent); }
.dm-place-name[b-58c4n0de1j] { font-size: 0.88rem; color: var(--color-text); }
.dm-place-tz[b-58c4n0de1j]   { font-size: 0.75rem; color: var(--color-muted); }

/* Trading card */
.dm-card[b-58c4n0de1j] {
    border-radius: 14px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    overflow: hidden;
    margin-bottom: 16px;
}

.dm-card-top[b-58c4n0de1j] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 20px 16px;
    background: linear-gradient(135deg,
        color-mix(in srgb, #ff8f00 15%, transparent),
        color-mix(in srgb, #e91e63 8%, transparent));
    border-bottom: 1px solid var(--color-border);
}

.dm-diya[b-58c4n0de1j] { font-size: 2.2rem; line-height: 1; }

.dm-card-brand[b-58c4n0de1j] {
    font-size: 0.7rem;
    font-weight: 700;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.dm-card-year[b-58c4n0de1j] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-text);
}

.dm-card-city[b-58c4n0de1j] {
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--color-text);
    margin: 0;
    padding: 14px 20px 8px;
}

.dm-festival-block[b-58c4n0de1j] {
    padding: 12px 20px 16px;
    border-top: 1px solid var(--color-border);
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.dm-festival-name[b-58c4n0de1j] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-text);
}

.dm-festival-date[b-58c4n0de1j] {
    font-size: 0.8rem;
    color: var(--color-muted);
}

.dm-muhurta-row[b-58c4n0de1j] {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    margin-top: 4px;
}

.dm-muhurta-block[b-58c4n0de1j] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.dm-muhurta-label[b-58c4n0de1j] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.dm-muhurta-time[b-58c4n0de1j] {
    font-size: 1.35rem;
    font-weight: 700;
    color: #ff8f00;
    font-variant-numeric: tabular-nums;
}

.dm-card-footer[b-58c4n0de1j] {
    padding: 10px 20px;
    font-size: 0.7rem;
    color: var(--color-muted);
    border-top: 1px solid var(--color-border);
    letter-spacing: 0.04em;
}

/* Share */
.dm-share-row[b-58c4n0de1j] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 28px;
}

.dm-share-btn[b-58c4n0de1j] {
    padding: 9px 18px;
    border-radius: 8px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.86rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

.dm-share-btn:hover[b-58c4n0de1j] { border-color: var(--color-accent); background: color-mix(in srgb, var(--color-accent) 5%, transparent); }

.dm-share-wa[b-58c4n0de1j]  { background: #25d366; color: #fff; border-color: #25d366; }
.dm-share-wa:hover[b-58c4n0de1j] { background: #1da851; border-color: #1da851; }

/* Info */
.dm-info[b-58c4n0de1j] { margin-top: 4px; }
.dm-info h3[b-58c4n0de1j] { font-size: 1rem; font-weight: 700; color: var(--color-text); margin: 0 0 10px; }
.dm-info p[b-58c4n0de1j]  { font-size: 0.86rem; color: var(--color-muted); line-height: 1.65; margin: 0 0 10px; }
.dm-info a[b-58c4n0de1j]  { color: var(--color-accent); text-decoration: none; }

.dm-state[b-58c4n0de1j] {
    text-align: center;
    padding: 48px 0;
    color: var(--color-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 0.9rem;
}

.dm-error[b-58c4n0de1j] { color: var(--danger); }
.dm-empty a[b-58c4n0de1j] { color: var(--color-accent); }

@media (max-width: 480px) {
    .dm-title[b-58c4n0de1j] { font-size: 1.5rem; }
    .dm-muhurta-time[b-58c4n0de1j] { font-size: 1.15rem; }
}
/* /Pages/FamilyVault.razor.rz.scp.css */
/* ── Page shell ─────────────────────────────────────────────────────── */
.fv-page[b-n65rqejfyl] {
    max-width: 680px;
    margin: 0 auto;
    padding: 1.5rem 1rem 4rem;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.fv-header[b-n65rqejfyl] {
    text-align: center;
    padding-bottom: 0.25rem;
}

.fv-title[b-n65rqejfyl] {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--text);
    margin: 0 0 0.4rem;
}

.fv-subtitle[b-n65rqejfyl] {
    font-size: 0.875rem;
    color: var(--muted);
    margin: 0;
}

/* ── Capacity bar ────────────────────────────────────────────────────── */
.fv-capacity[b-n65rqejfyl] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.8rem;
    color: var(--muted);
}

.fv-upgrade-nudge[b-n65rqejfyl] {
    font-size: 0.78rem;
    color: var(--accent);
    text-decoration: none;
    font-weight: 600;
}

/* ── Member grid ─────────────────────────────────────────────────────── */
.fv-grid[b-n65rqejfyl] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1rem;
}

.fv-card[b-n65rqejfyl] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 1rem;
    padding: 1.1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    transition: box-shadow .15s;
}

.fv-card:hover[b-n65rqejfyl] {
    box-shadow: 0 2px 12px color-mix(in srgb, var(--accent) 12%, transparent);
}

/* Band accent on left edge */
.fv-card--excellent[b-n65rqejfyl] { border-left: 3px solid #22c55e; }
.fv-card--good[b-n65rqejfyl]      { border-left: 3px solid #3b82f6; }
.fv-card--moderate[b-n65rqejfyl]  { border-left: 3px solid #f59e0b; }
.fv-card--challenging[b-n65rqejfyl] { border-left: 3px solid #ef4444; }

.fv-card-top[b-n65rqejfyl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}

.fv-card-name[b-n65rqejfyl] {
    font-weight: 600;
    font-size: 1rem;
    color: var(--text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fv-relation-chip[b-n65rqejfyl] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: .04em;
    background: color-mix(in srgb, var(--accent) 12%, transparent);
    color: var(--accent);
    border-radius: 2rem;
    padding: 0.15rem 0.55rem;
    white-space: nowrap;
    flex-shrink: 0;
}

/* ── DayScore mini-badge ─────────────────────────────────────────────── */
.fv-card-score[b-n65rqejfyl] {
    display: flex;
    align-items: baseline;
    gap: 0.35rem;
}

.fv-score-num[b-n65rqejfyl] {
    font-size: 1.5rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.fv-score-label[b-n65rqejfyl] {
    font-size: 0.78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.fv-card-score--excellent  .fv-score-num[b-n65rqejfyl],
.fv-card-score--excellent  .fv-score-label[b-n65rqejfyl] { color: #22c55e; }
.fv-card-score--good       .fv-score-num[b-n65rqejfyl],
.fv-card-score--good       .fv-score-label[b-n65rqejfyl] { color: #3b82f6; }
.fv-card-score--moderate   .fv-score-num[b-n65rqejfyl],
.fv-card-score--moderate   .fv-score-label[b-n65rqejfyl] { color: #f59e0b; }
.fv-card-score--challenging .fv-score-num[b-n65rqejfyl],
.fv-card-score--challenging .fv-score-label[b-n65rqejfyl] { color: #ef4444; }
.fv-card-score--loading[b-n65rqejfyl] { color: var(--muted); font-size: 1.25rem; }

/* ── Card action buttons ─────────────────────────────────────────────── */
.fv-card-actions[b-n65rqejfyl] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.fv-btn[b-n65rqejfyl] {
    font-size: 0.76rem;
    font-weight: 600;
    padding: 0.3rem 0.7rem;
    border-radius: 2rem;
    border: none;
    cursor: pointer;
    transition: opacity .15s;
}

.fv-btn:disabled[b-n65rqejfyl] { opacity: 0.5; cursor: not-allowed; }

.fv-btn--synastry[b-n65rqejfyl]  { background: color-mix(in srgb, #3b82f6 12%, transparent); color: #3b82f6; }
.fv-btn--claim[b-n65rqejfyl]     { background: color-mix(in srgb, var(--accent) 12%, transparent); color: var(--accent); }
.fv-btn--copy[b-n65rqejfyl]      { background: color-mix(in srgb, #22c55e 12%, transparent); color: #22c55e; }
.fv-btn--delete[b-n65rqejfyl]    { background: color-mix(in srgb, #ef4444 10%, transparent); color: #ef4444; }
.fv-btn--primary[b-n65rqejfyl]   { background: var(--accent); color: var(--accent-fg, #fff); }
.fv-btn--secondary[b-n65rqejfyl] { background: transparent; border: 1px solid var(--border); color: var(--muted); }

/* ── Add button ──────────────────────────────────────────────────────── */
.fv-add-btn[b-n65rqejfyl] {
    align-self: flex-start;
    background: var(--accent);
    color: var(--accent-fg, #fff);
    border: none;
    border-radius: 2rem;
    padding: 0.55rem 1.3rem;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity .15s;
}

.fv-add-btn:hover[b-n65rqejfyl] { opacity: 0.88; }

/* ── Add / edit form ─────────────────────────────────────────────────── */
.fv-form[b-n65rqejfyl] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 1rem;
    padding: 1.5rem 1.75rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.fv-form-title[b-n65rqejfyl] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text);
    margin: 0;
}

.fv-form-label[b-n65rqejfyl] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--muted);
}

.fv-form-input[b-n65rqejfyl],
.fv-form-select[b-n65rqejfyl] {
    font-size: 0.9rem;
    padding: 0.45rem 0.75rem;
    border: 1px solid var(--border);
    border-radius: 0.5rem;
    background: var(--input-bg, var(--surface));
    color: var(--text);
    width: 100%;
}

.fv-form-buttons[b-n65rqejfyl] {
    display: flex;
    gap: 0.75rem;
}

.fv-form-error[b-n65rqejfyl] {
    font-size: 0.8rem;
    color: var(--danger, #c0392b);
    margin: 0;
}

/* ── Empty / loading ─────────────────────────────────────────────────── */
.fv-loading[b-n65rqejfyl],
.fv-empty[b-n65rqejfyl] {
    text-align: center;
    color: var(--muted);
    font-size: 0.9rem;
    padding: 2rem 0;
}

/* ── Responsive ──────────────────────────────────────────────────────── */
@media (max-width: 480px) {
    .fv-grid[b-n65rqejfyl] {
        grid-template-columns: 1fr;
    }

    .fv-form[b-n65rqejfyl] {
        padding: 1.25rem 1rem;
    }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .fv-btn[b-n65rqejfyl]     { min-height: 44px; padding: .65rem 1rem; font-size: .84rem; }
    .fv-add-btn[b-n65rqejfyl] { min-height: 48px; padding: .75rem 1.5rem; font-size: .94rem; width: 100%; }
    .fv-member-card[b-n65rqejfyl] { padding: 14px 14px; }
    .fv-relation-chip[b-n65rqejfyl] { font-size: 12px; }
    .fv-actions[b-n65rqejfyl] { flex-wrap: wrap; gap: 8px; }
}
/* /Pages/FreeReport.razor.rz.scp.css */
/* ── Page shell ────────────────────────────────────────────────────── */
.fr-page[b-ip4u6kwit6] {
    max-width: 680px;
    margin: 0 auto;
    padding: 0 1rem 6rem;
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
}

/* ── Progress rail (sticky top) ────────────────────────────────────── */
.fr-progress-rail[b-ip4u6kwit6] {
    position: sticky;
    top: 0;
    z-index: 100;
    height: 3px;
    background: var(--border);
}
.fr-progress-fill[b-ip4u6kwit6] {
    height: 100%;
    background: var(--accent);
    transition: width 0.3s ease;
}

/* ── Loading / empty ───────────────────────────────────────────────── */
.fr-loading[b-ip4u6kwit6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 5rem 0;
    color: var(--muted);
}
.fr-spinner[b-ip4u6kwit6] {
    width: 2rem; height: 2rem;
    border: 2px solid var(--border);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: fr-spin-b-ip4u6kwit6 .8s linear infinite;
}
@keyframes fr-spin-b-ip4u6kwit6 { to { transform: rotate(360deg); } }
.fr-loading-text[b-ip4u6kwit6] { font-size: .9rem; color: var(--muted); }
.fr-empty[b-ip4u6kwit6], .fr-error[b-ip4u6kwit6] {
    text-align: center;
    padding: 4rem 1rem;
    color: var(--muted);
    font-size: 1rem;
    display: flex; flex-direction: column; align-items: center; gap: 1rem;
}
.fr-error[b-ip4u6kwit6] { color: var(--danger); }

/* ── Scroll-in animation ────────────────────────────────────────────── */
.animate-in[b-ip4u6kwit6] {
    opacity: 0;
    transform: translateY(24px);
    animation: fr-fadein-b-ip4u6kwit6 .5s ease forwards;
}
.animate-in:nth-child(1)[b-ip4u6kwit6]  { animation-delay: .05s; }
.animate-in:nth-child(2)[b-ip4u6kwit6]  { animation-delay: .12s; }
.animate-in:nth-child(3)[b-ip4u6kwit6]  { animation-delay: .18s; }
.animate-in:nth-child(4)[b-ip4u6kwit6]  { animation-delay: .24s; }
.animate-in:nth-child(5)[b-ip4u6kwit6]  { animation-delay: .30s; }
.animate-in:nth-child(6)[b-ip4u6kwit6]  { animation-delay: .36s; }
.animate-in:nth-child(7)[b-ip4u6kwit6]  { animation-delay: .42s; }
.animate-in:nth-child(8)[b-ip4u6kwit6]  { animation-delay: .48s; }
.animate-in:nth-child(9)[b-ip4u6kwit6]  { animation-delay: .54s; }
@keyframes fr-fadein-b-ip4u6kwit6 {
    to { opacity: 1; transform: none; }
}

/* ── Hero ───────────────────────────────────────────────────────────── */
.fr-hero[b-ip4u6kwit6] {
    padding: 2rem 0 1rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .75rem;
}
.fr-hero-badge[b-ip4u6kwit6] {
    font-size: .75rem;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--accent);
}
.fr-hero-name[b-ip4u6kwit6] {
    font-size: 2rem;
    font-weight: 700;
    margin: 0;
    color: var(--text);
}
.fr-hero-birth[b-ip4u6kwit6] {
    font-size: .85rem;
    color: var(--muted);
    margin: 0;
}
.fr-hook-card[b-ip4u6kwit6] {
    margin-top: .5rem;
    background: var(--surface2, #1c2035);
    border: 1px solid var(--accent);
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .6rem;
    max-width: 520px;
    text-align: center;
}
.fr-hook-icon[b-ip4u6kwit6] { font-size: 1.4rem; color: var(--accent); }
.fr-hook-text[b-ip4u6kwit6] {
    font-size: 1rem;
    font-style: italic;
    color: var(--text);
    line-height: 1.5;
    margin: 0;
}
.fr-lock-pill[b-ip4u6kwit6] {
    font-size: .8rem;
    color: var(--muted);
    background: var(--surface, #141726);
    border: 1px solid var(--border);
    border-radius: 20px;
    padding: .3rem .9rem;
    text-decoration: none;
    transition: border-color .2s;
}
.fr-lock-pill:hover[b-ip4u6kwit6] { border-color: var(--accent); color: var(--accent); }

/* ── Section frame ─────────────────────────────────────────────────── */
.fr-section[b-ip4u6kwit6] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding-top: .25rem;
}
.fr-section-header[b-ip4u6kwit6] {
    display: flex;
    align-items: baseline;
    gap: .6rem;
    border-left: 3px solid var(--accent);
    padding-left: .75rem;
}
.fr-section-num[b-ip4u6kwit6]  { font-size: .8rem; color: var(--accent); font-weight: 600; }
.fr-section-title[b-ip4u6kwit6] { font-size: 1.2rem; font-weight: 700; color: var(--text); margin: 0; }

/* ── Cosmic identity grid ──────────────────────────────────────────── */
.fr-identity-grid[b-ip4u6kwit6] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .5rem;
}
.fr-id-cell[b-ip4u6kwit6] {
    background: var(--surface2, #1c2035);
    border-radius: 8px;
    padding: .6rem .8rem;
    display: flex;
    flex-direction: column;
    gap: .2rem;
}
.fr-id-label[b-ip4u6kwit6] { font-size: .72rem; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); }
.fr-id-value[b-ip4u6kwit6]  { font-size: .9rem; color: var(--text); font-weight: 600; }

/* ── Prose ─────────────────────────────────────────────────────────── */
.fr-prose[b-ip4u6kwit6] { font-size: .95rem; line-height: 1.65; color: var(--text); margin: 0; }
.fr-prose--muted[b-ip4u6kwit6] { color: var(--muted); }
.fr-sub-note[b-ip4u6kwit6] { font-size: .82rem; color: var(--muted); margin: 0; }

/* ── Pillars ────────────────────────────────────────────────────────── */
.fr-pillar-card[b-ip4u6kwit6] {
    background: var(--surface, #141726);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 1rem 1.1rem;
    display: flex;
    flex-direction: column;
    gap: .6rem;
}
.fr-pillar-head[b-ip4u6kwit6] { display: flex; align-items: center; justify-content: space-between; }
.fr-pillar-graha[b-ip4u6kwit6] { font-size: 1rem; font-weight: 700; color: var(--accent); }
.fr-dignity-badge[b-ip4u6kwit6] {
    font-size: .72rem;
    padding: .2rem .6rem;
    border-radius: 20px;
    border: 1px solid var(--border);
    color: var(--muted);
}
.fr-dignity--exalted[b-ip4u6kwit6]     { border-color: #10B981; color: #10B981; }
.fr-dignity--debilitated[b-ip4u6kwit6] { border-color: #F03F5E; color: #F03F5E; }
.fr-dignity--own-sign[b-ip4u6kwit6], .fr-dignity--moolatrikona[b-ip4u6kwit6] { border-color: var(--accent); color: var(--accent); }

/* ── Lock row ───────────────────────────────────────────────────────── */
.fr-lock-row[b-ip4u6kwit6] {
    display: flex;
    align-items: center;
    gap: .5rem;
    flex-wrap: wrap;
    font-size: .8rem;
}
.fr-lock-icon[b-ip4u6kwit6]  { flex-shrink: 0; }
.fr-lock-text[b-ip4u6kwit6]  { color: var(--muted); flex: 1; }
.fr-lock-link[b-ip4u6kwit6]  { color: var(--accent); text-decoration: none; white-space: nowrap; }
.fr-lock-link:hover[b-ip4u6kwit6] { text-decoration: underline; }

/* ── Strength bars ─────────────────────────────────────────────────── */
.fr-strength-meta[b-ip4u6kwit6] { display: flex; gap: .75rem; flex-wrap: wrap; }
.fr-tag[b-ip4u6kwit6] {
    font-size: .78rem;
    padding: .25rem .7rem;
    border-radius: 20px;
    border: 1px solid var(--border);
}
.fr-tag--green[b-ip4u6kwit6] { border-color: #10B981; color: #10B981; }
.fr-tag--red[b-ip4u6kwit6]   { border-color: #F03F5E; color: #F03F5E; }

.fr-bar-list[b-ip4u6kwit6] { display: flex; flex-direction: column; gap: .45rem; }
.fr-bar-row[b-ip4u6kwit6]  { display: flex; align-items: center; gap: .6rem; }
.fr-bar-label[b-ip4u6kwit6] {
    width: 72px;
    font-size: .82rem;
    color: var(--muted);
    flex-shrink: 0;
}
.fr-bar-track[b-ip4u6kwit6] {
    flex: 1;
    height: 10px;
    background: var(--surface2, #1c2035);
    border-radius: 5px;
    overflow: hidden;
}
.fr-bar-fill[b-ip4u6kwit6] {
    height: 100%;
    border-radius: 5px;
    transition: width .6s ease;
}
.fr-bar-fill--green[b-ip4u6kwit6] { background: #10B981; }
.fr-bar-fill--gold[b-ip4u6kwit6]  { background: var(--accent); }
.fr-bar-fill--red[b-ip4u6kwit6]   { background: #F03F5E; }
.fr-bar-pct[b-ip4u6kwit6] { font-size: .78rem; width: 38px; text-align: right; flex-shrink: 0; }
.fr-bar-pct--ok[b-ip4u6kwit6]  { color: #10B981; }
.fr-bar-pct--low[b-ip4u6kwit6] { color: #F03F5E; }

/* ── Yoga / Dosha cards ─────────────────────────────────────────────── */
.fr-count-bar[b-ip4u6kwit6] { display: flex; gap: .6rem; }
.fr-count-chip[b-ip4u6kwit6] {
    font-size: .8rem;
    padding: .3rem .8rem;
    border-radius: 20px;
    background: var(--surface2, #1c2035);
    color: var(--accent);
    border: 1px solid var(--accent);
}
.fr-count-chip--warn[b-ip4u6kwit6] { border-color: #F03F5E; color: #F03F5E; }

.fr-yoga-card[b-ip4u6kwit6], .fr-dosha-card[b-ip4u6kwit6] {
    background: var(--surface, #141726);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 1rem 1.1rem;
    display: flex;
    flex-direction: column;
    gap: .6rem;
}
.fr-yoga-head[b-ip4u6kwit6], .fr-dosha-head[b-ip4u6kwit6] {
    display: flex;
    align-items: center;
    gap: .6rem;
    flex-wrap: wrap;
}
.fr-yoga-name[b-ip4u6kwit6]   { font-size: 1rem; font-weight: 700; color: var(--accent); }
.fr-flavour-tag[b-ip4u6kwit6] {
    font-size: .72rem;
    padding: .15rem .55rem;
    border-radius: 10px;
    background: var(--surface2, #1c2035);
    color: var(--muted);
}
.fr-dosha-icon[b-ip4u6kwit6]  { font-size: 1rem; color: #F03F5E; }

.fr-stub-block[b-ip4u6kwit6] {
    background: var(--surface2, #1c2035);
    border: 1px dashed var(--border);
    border-radius: 10px;
    padding: 1rem 1.1rem;
    display: flex;
    flex-direction: column;
    gap: .6rem;
}
.fr-stub-block--warn[b-ip4u6kwit6] { border-color: #F03F5E44; }
.fr-stub-label[b-ip4u6kwit6] { font-size: .85rem; color: var(--muted); }
.fr-stub-chips[b-ip4u6kwit6] { display: flex; flex-wrap: wrap; gap: .4rem; }
.fr-stub-chip[b-ip4u6kwit6] {
    font-size: .78rem;
    padding: .2rem .6rem;
    border-radius: 8px;
    background: var(--surface, #141726);
    border: 1px solid var(--border);
    color: var(--muted);
}
.fr-stub-chip em[b-ip4u6kwit6] { font-style: normal; color: var(--accent); margin-left: .3rem; }

/* ── Dasha ──────────────────────────────────────────────────────────── */
.fr-dasha-card[b-ip4u6kwit6] {
    background: var(--surface, #141726);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 1.1rem 1.2rem;
    display: flex;
    flex-direction: column;
    gap: .6rem;
}
.fr-dasha-card--maha[b-ip4u6kwit6]  { border-color: var(--accent); }
.fr-dasha-card--sandhi[b-ip4u6kwit6] { border-color: #F03F5E; }
.fr-dasha-head[b-ip4u6kwit6] { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; }
.fr-dasha-label[b-ip4u6kwit6] { font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.fr-dasha-lord[b-ip4u6kwit6]  { font-size: 1.15rem; font-weight: 700; color: var(--accent); }
.fr-dasha-dates[b-ip4u6kwit6] { font-size: .8rem; color: var(--muted); }
.fr-sandhi-badge[b-ip4u6kwit6] {
    font-size: .72rem;
    padding: .15rem .55rem;
    border-radius: 10px;
    background: #F03F5E22;
    border: 1px solid #F03F5E;
    color: #F03F5E;
    margin-left: auto;
}
.fr-dasha-next[b-ip4u6kwit6] {
    background: var(--surface2, #1c2035);
    border-radius: 10px;
    padding: 1rem 1.1rem;
    display: flex;
    flex-direction: column;
    gap: .55rem;
}
.fr-dasha-next-label[b-ip4u6kwit6] { font-size: .9rem; color: var(--text); }

/* ── Life-area radar ─────────────────────────────────────────────────── */
.fr-radar-list[b-ip4u6kwit6] { display: flex; flex-direction: column; gap: .5rem; }
.fr-radar-row[b-ip4u6kwit6]  { display: flex; align-items: center; gap: .6rem; }
.fr-radar-label[b-ip4u6kwit6] {
    width: 90px;
    font-size: .85rem;
    color: var(--text);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: .25rem;
}
.fr-radar-label--high[b-ip4u6kwit6] { color: #10B981; }
.fr-radar-label--low[b-ip4u6kwit6]  { color: #F03F5E; }
.fr-star[b-ip4u6kwit6] { color: #10B981; font-size: .9rem; }
.fr-drop[b-ip4u6kwit6] { color: #F03F5E; font-size: .9rem; }

.fr-radar-track[b-ip4u6kwit6] {
    flex: 1;
    height: 10px;
    background: var(--surface2, #1c2035);
    border-radius: 5px;
    overflow: hidden;
}
.fr-radar-fill[b-ip4u6kwit6] {
    height: 100%;
    background: var(--accent);
    border-radius: 5px;
    transition: width .6s ease;
}
.fr-radar-fill--high[b-ip4u6kwit6] { background: #10B981; }
.fr-radar-fill--low[b-ip4u6kwit6]  { background: #F03F5E; }
.fr-radar-score[b-ip4u6kwit6] { font-size: .8rem; width: 34px; text-align: right; color: var(--muted); flex-shrink: 0; }
.fr-radar-score--high[b-ip4u6kwit6] { color: #10B981; }
.fr-radar-score--low[b-ip4u6kwit6]  { color: #F03F5E; }

/* ── Month strip ────────────────────────────────────────────────────── */
.fr-month-strip[b-ip4u6kwit6] {
    display: flex;
    gap: 3px;
    align-items: flex-end;
}
.fr-month-cell[b-ip4u6kwit6] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
}
.fr-month-bar[b-ip4u6kwit6] {
    width: 100%;
    height: 32px;
    border-radius: 4px 4px 0 0;
}
.fr-month-lbl[b-ip4u6kwit6] { font-size: .6rem; color: var(--muted); text-align: center; }
.fr-strip-legend[b-ip4u6kwit6] {
    display: flex;
    gap: 1.2rem;
    font-size: .78rem;
    color: var(--muted);
    flex-wrap: wrap;
    align-items: center;
}
.fr-legend-dot[b-ip4u6kwit6] {
    display: inline-block;
    width: 10px; height: 10px;
    border-radius: 50%;
    margin-right: .3rem;
    vertical-align: middle;
}
.fr-legend-dot--good[b-ip4u6kwit6]    { background: var(--success); }
.fr-legend-dot--neutral[b-ip4u6kwit6] { background: var(--muted); }
.fr-legend-dot--bad[b-ip4u6kwit6]     { background: var(--danger); }
.fr-accent[b-ip4u6kwit6] { color: var(--accent); }

/* ── Planet table ────────────────────────────────────────────────────── */
.fr-table-wrap[b-ip4u6kwit6] { overflow-x: auto; border-radius: 8px; }
.fr-table[b-ip4u6kwit6] {
    width: 100%;
    border-collapse: collapse;
    font-size: .82rem;
}
.fr-table th[b-ip4u6kwit6] {
    background: var(--surface2, #1c2035);
    color: var(--accent);
    padding: .5rem .6rem;
    text-align: left;
    font-weight: 600;
    white-space: nowrap;
}
.fr-table td[b-ip4u6kwit6] {
    padding: .45rem .6rem;
    border-bottom: 1px solid var(--border);
    color: var(--text);
}
.fr-table tr:last-child td[b-ip4u6kwit6] { border-bottom: none; }
.fr-td--graha[b-ip4u6kwit6]   { font-weight: 600; }
.fr-td--exalted[b-ip4u6kwit6]     { color: #10B981; }
.fr-td--debilitated[b-ip4u6kwit6] { color: #F03F5E; }
.fr-td--own[b-ip4u6kwit6]         { color: var(--accent); }
.fr-td--retro[b-ip4u6kwit6]       { color: var(--accent); font-weight: 600; }
.fr-td--combust[b-ip4u6kwit6]     { color: #F03F5E; font-weight: 600; }
.fr-td--dim[b-ip4u6kwit6]         { color: var(--border); }

/* SAV row */
.fr-sav-row[b-ip4u6kwit6] {
    display: flex;
    gap: 4px;
    margin-top: .5rem;
}
.fr-sav-cell[b-ip4u6kwit6] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    background: var(--surface2, #1c2035);
    border-radius: 6px;
    padding: .35rem .1rem;
}
.fr-sav-val[b-ip4u6kwit6]       { font-size: .85rem; font-weight: 700; color: var(--text); }
.fr-sav-val--high[b-ip4u6kwit6] { color: #10B981; }
.fr-sav-val--low[b-ip4u6kwit6]  { color: #F03F5E; }
.fr-sav-rasi[b-ip4u6kwit6]      { font-size: .6rem; color: var(--muted); }

/* ── Gap Ledger (closing) ────────────────────────────────────────────── */
.fr-gap-ledger[b-ip4u6kwit6] {
    background: linear-gradient(160deg, #1a1040 0%, #0d0f1a 100%);
    border: 1px solid var(--accent);
    border-radius: 16px;
    padding: 2rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}
.fr-gap-title[b-ip4u6kwit6] {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--accent);
    text-align: center;
    margin: 0;
}
.fr-gap-note[b-ip4u6kwit6] {
    font-size: .9rem;
    font-style: italic;
    color: var(--text);
    text-align: center;
    line-height: 1.5;
    margin: 0;
}
.fr-gap-counters[b-ip4u6kwit6] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .6rem;
}

/* GapCounter tile (component scope) */
:global(.gap-counter)[b-ip4u6kwit6] {
    background: var(--surface, #141726);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: .65rem .8rem;
    display: flex;
    flex-direction: column;
    gap: .2rem;
}
:global(.gap-counter-label)[b-ip4u6kwit6]  { font-size: .75rem; color: var(--muted); text-transform: uppercase; letter-spacing: .06em; }
:global(.gap-counter-shown)[b-ip4u6kwit6]  { font-size: .82rem; color: var(--text); }
:global(.gap-counter-locked)[b-ip4u6kwit6] { font-size: .78rem; color: #F03F5E; }
:global(.gap-counter-ok)[b-ip4u6kwit6]     { font-size: .78rem; color: #10B981; }

.fr-locked-list[b-ip4u6kwit6] {
    display: flex;
    flex-direction: column;
    gap: .45rem;
}
.fr-locked-list-title[b-ip4u6kwit6] { font-size: .85rem; color: var(--muted); margin: 0; }
.fr-locked-item[b-ip4u6kwit6] {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .85rem;
}
.fr-locked-icon[b-ip4u6kwit6] { flex-shrink: 0; }
.fr-locked-text[b-ip4u6kwit6] { color: var(--muted); }

/* ── CTA block ──────────────────────────────────────────────────────── */
.fr-cta-block[b-ip4u6kwit6] {
    background: #4B008244;
    border: 1px solid #7c6af7;
    border-radius: 12px;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .75rem;
    text-align: center;
}
.fr-cta-title[b-ip4u6kwit6] { font-size: 1.15rem; font-weight: 700; color: var(--accent); margin: 0; }
.fr-cta-sub[b-ip4u6kwit6]   { font-size: .85rem; color: var(--muted); margin: 0; line-height: 1.45; }

/* ── Buttons ─────────────────────────────────────────────────────────── */
.fr-btn[b-ip4u6kwit6] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .65rem 1.5rem;
    border-radius: 8px;
    font-size: .9rem;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: opacity .2s, transform .1s;
    border: none;
}
.fr-btn:hover[b-ip4u6kwit6] { opacity: .88; transform: translateY(-1px); }
.fr-btn--gold[b-ip4u6kwit6]  { background: var(--accent); color: #0d0f1a; }
.fr-btn--ghost[b-ip4u6kwit6] {
    background: transparent;
    border: 1px solid var(--border);
    color: var(--text);
}
.fr-btn--ghost:hover[b-ip4u6kwit6] { border-color: var(--accent); color: var(--accent); }
.fr-btn--lg[b-ip4u6kwit6] { padding: .8rem 2rem; font-size: 1rem; }
.fr-btn--sm[b-ip4u6kwit6] { padding: .4rem 1rem; font-size: .82rem; }

/* ── Sticky bottom bar ───────────────────────────────────────────────── */
.fr-sticky-bar[b-ip4u6kwit6] {
    position: fixed;
    bottom: 0; left: 0; right: 0;
    z-index: 200;
    background: var(--surface, #141726);
    border-top: 1px solid var(--border);
    padding: .75rem 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    box-shadow: 0 -4px 20px #00000066;
}
.fr-sticky-text[b-ip4u6kwit6] { font-size: .82rem; color: var(--muted); }

/* ── Responsive ─────────────────────────────────────────────────────── */
@media (max-width: 500px) {
    .fr-identity-grid[b-ip4u6kwit6] { grid-template-columns: 1fr; }
    .fr-gap-counters[b-ip4u6kwit6]  { grid-template-columns: 1fr; }
    .fr-hero-name[b-ip4u6kwit6]     { font-size: 1.5rem; }
    .fr-month-strip[b-ip4u6kwit6]   { gap: 2px; }
}

/* ── §8 DARE Guidance Cards ──────────────────────────────────────────────── */
.fr-section-sub[b-ip4u6kwit6] {
    font-size: 11px;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--muted);
    font-weight: 500;
}

.fr-dare-card[b-ip4u6kwit6] {
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface);
    padding: 14px 16px;
    margin-bottom: 10px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    border-left: 4px solid var(--accent, #7c3aed);
}
.fr-dare-card--kala[b-ip4u6kwit6] { border-left-color: var(--muted, #888); }
.fr-dare-tone-cautionary[b-ip4u6kwit6] { border-left-color: var(--danger, #b3452f); }
.fr-dare-tone-supportive[b-ip4u6kwit6] { border-left-color: var(--success, #2e7d52); }

.fr-dare-head[b-ip4u6kwit6] {
    display: flex;
    align-items: baseline;
    gap: 8px;
    flex-wrap: wrap;
}
.fr-dare-pillar[b-ip4u6kwit6] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--accent, #7c3aed);
}
.fr-dare-tone[b-ip4u6kwit6]  { font-size: 10px; color: var(--muted); text-transform: uppercase; letter-spacing: .06em; }
.fr-dare-window[b-ip4u6kwit6] { font-size: 11px; color: var(--muted); margin-left: auto; }
.fr-dare-headline[b-ip4u6kwit6] { font-size: 15px; font-weight: 700; line-height: 1.35; }
.fr-dare-focus[b-ip4u6kwit6]    { font-size: 13px; line-height: 1.5; }

.fr-dare-upgrade[b-ip4u6kwit6] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border: 1px dashed var(--border);
    border-radius: 10px;
    font-size: 13px;
    color: var(--muted);
}
.fr-dare-lock[b-ip4u6kwit6] { font-size: 16px; }
.fr-dare-upgrade-link[b-ip4u6kwit6] { font-weight: 700; color: var(--accent, #7c3aed); text-decoration: none; margin-left: auto; }

.fr-loading-row[b-ip4u6kwit6], .fr-empty-row[b-ip4u6kwit6] {
    font-size: 13px;
    color: var(--muted);
    padding: 14px 0;
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .fr-month-lbl[b-ip4u6kwit6]   { font-size: .76rem; }
    .fr-sav-rasi[b-ip4u6kwit6]    { font-size: .76rem; }
    .fr-id-label[b-ip4u6kwit6]    { font-size: .82rem; }
    .fr-btn--sm[b-ip4u6kwit6]     { min-height: 44px; padding: .65rem 1.2rem; font-size: .88rem; }
    .fr-btn[b-ip4u6kwit6]         { min-height: 48px; }
    .fr-section-hd[b-ip4u6kwit6]  { font-size: .76rem; }
    .fr-chart-strip[b-ip4u6kwit6] { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    /* Fade cue (Innovation #7) */
    .fr-strip-wrap[b-ip4u6kwit6] { position: relative; }
    .fr-strip-wrap[b-ip4u6kwit6]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 28px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
}
/* /Pages/Gift.razor.rz.scp.css */
/* ── Gift Codes Page ──────────────────────────────────────────────────────── */

.gift-code-input[b-l20p65ste0] {
    text-transform: uppercase;
    letter-spacing: 2px;
    font-family: monospace;
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .gift-page[b-l20p65ste0] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
}
/* /Pages/GoalsPage.razor.rz.scp.css */
/* ── Goals Page ─────────────────────────────────────────────────────────────── */

.gl-wrap[b-rfs1p6liqt] {
    max-width: 860px;
    margin: 0 auto;
    padding: 1.5rem 1rem 4rem;
}

.gl-header[b-rfs1p6liqt] {
    margin-bottom: 2rem;
}

.gl-title[b-rfs1p6liqt] {
    font-size: 1.6rem;
    font-weight: 700;
    margin: 0 0 .3rem;
    color: var(--color-heading, inherit);
}

.gl-subtitle[b-rfs1p6liqt] {
    font-size: .92rem;
    opacity: .7;
    margin: 0;
}

.gl-loading[b-rfs1p6liqt],
.gl-empty[b-rfs1p6liqt] {
    text-align: center;
    padding: 3rem 1rem;
    opacity: .6;
    font-size: .95rem;
}

/* ── Create card ─────────────────────────────────────────────────────────────── */

.gl-create-card[b-rfs1p6liqt] {
    background: var(--color-surface, #f8f8f8);
    border: 1px solid var(--color-border, #e0e0e0);
    border-radius: 10px;
    padding: 1.2rem 1.4rem;
    margin-bottom: 2rem;
}

.gl-section-title[b-rfs1p6liqt] {
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 .9rem;
    opacity: .8;
}

.gl-form-row[b-rfs1p6liqt] {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    align-items: center;
}

.gl-input[b-rfs1p6liqt] {
    padding: .5rem .75rem;
    border: 1px solid var(--color-border, #d0d0d0);
    border-radius: 6px;
    font-size: .9rem;
    background: var(--color-bg, #fff);
    color: inherit;
    min-width: 0;
}

.gl-input--title[b-rfs1p6liqt] { flex: 1 1 220px; }
.gl-select[b-rfs1p6liqt]       { flex: 0 0 130px; }
.gl-input--date[b-rfs1p6liqt]  { flex: 0 0 150px; }

.gl-btn[b-rfs1p6liqt] {
    padding: .5rem 1.1rem;
    border: none;
    border-radius: 6px;
    font-size: .9rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity .15s;
}

.gl-btn:disabled[b-rfs1p6liqt] { opacity: .5; cursor: default; }

.gl-btn--primary[b-rfs1p6liqt] {
    background: var(--color-accent, #7c5cbf);
    color: #fff;
}

.gl-btn--primary:not(:disabled):hover[b-rfs1p6liqt] { opacity: .85; }

.gl-error[b-rfs1p6liqt] {
    font-size: .85rem;
    color: #c0392b;
    margin: .5rem 0 0;
}

/* ── Goal cards ─────────────────────────────────────────────────────────────── */

.gl-goals-grid[b-rfs1p6liqt] {
    display: grid;
    gap: 1rem;
}

.gl-goal-card[b-rfs1p6liqt] {
    display: flex;
    border: 1px solid var(--color-border, #e0e0e0);
    border-radius: 10px;
    overflow: hidden;
    background: var(--color-surface, #fff);
}

.gl-goal-catbar[b-rfs1p6liqt] {
    width: 5px;
    flex-shrink: 0;
}

.gl-goal-catbar--health[b-rfs1p6liqt]       { background: #27ae60; }
.gl-goal-catbar--career[b-rfs1p6liqt]       { background: #2980b9; }
.gl-goal-catbar--financial[b-rfs1p6liqt]    { background: #f39c12; }
.gl-goal-catbar--relationship[b-rfs1p6liqt] { background: #e91e63; }
.gl-goal-catbar--spiritual[b-rfs1p6liqt]    { background: #8e44ad; }
.gl-goal-catbar--other[b-rfs1p6liqt]        { background: #7f8c8d; }

.gl-goal-body[b-rfs1p6liqt] {
    flex: 1;
    padding: 1rem 1.1rem;
    display: flex;
    flex-direction: column;
    gap: .55rem;
    min-width: 0;
}

.gl-goal-top[b-rfs1p6liqt] {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
}

.gl-goal-title[b-rfs1p6liqt] {
    flex: 1;
    font-size: .97rem;
    font-weight: 600;
    line-height: 1.35;
    word-break: break-word;
}

.gl-goal-actions[b-rfs1p6liqt] {
    display: flex;
    gap: .3rem;
    flex-shrink: 0;
}

.gl-icon-btn[b-rfs1p6liqt] {
    width: 28px;
    height: 28px;
    border: 1px solid var(--color-border, #ccc);
    border-radius: 5px;
    background: transparent;
    cursor: pointer;
    font-size: .85rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: inherit;
    transition: background .15s;
}

.gl-icon-btn:hover[b-rfs1p6liqt] { background: var(--color-border, #e0e0e0); }
.gl-icon-btn--danger:hover[b-rfs1p6liqt] { background: #fde8e8; color: #c0392b; }

.gl-goal-meta[b-rfs1p6liqt] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    align-items: center;
}

.gl-chip[b-rfs1p6liqt] {
    font-size: .75rem;
    padding: .15rem .55rem;
    border-radius: 20px;
    font-weight: 500;
    white-space: nowrap;
}

.gl-chip--cat[b-rfs1p6liqt]     { background: var(--color-surface, #f0f0f0); border: 1px solid var(--color-border, #ddd); }
.gl-chip--days[b-rfs1p6liqt]    { background: #eaf4ff; color: #1a66cc; border: 1px solid #bee3f8; }
.gl-chip--urgent[b-rfs1p6liqt]  { background: #fff0f0; color: #c0392b; border: 1px solid #f5c6cb; }
.gl-chip--portal[b-rfs1p6liqt]  { background: #f3eeff; color: #6b3fa0; border: 1px solid #d4c5ef; cursor: help; }

/* ── Progress bar ────────────────────────────────────────────────────────────── */

.gl-progress-bar[b-rfs1p6liqt] {
    height: 4px;
    background: var(--color-border, #e0e0e0);
    border-radius: 2px;
    overflow: hidden;
}

.gl-progress-fill[b-rfs1p6liqt] {
    height: 100%;
    background: var(--color-accent, #7c5cbf);
    border-radius: 2px;
    transition: width .3s;
}

/* ── Scripture note & planner link ───────────────────────────────────────────── */

.gl-scripture-note[b-rfs1p6liqt] {
    font-size: .8rem;
    opacity: .7;
    margin: 0;
    line-height: 1.4;
    font-style: italic;
}

.gl-planner-link[b-rfs1p6liqt] {
    font-size: .82rem;
    color: var(--color-accent, #7c5cbf);
    text-decoration: none;
    font-weight: 500;
}

.gl-planner-link:hover[b-rfs1p6liqt] { text-decoration: underline; }

/* ── Notes textarea ──────────────────────────────────────────────────────────── */

.gl-notes[b-rfs1p6liqt] {
    width: 100%;
    box-sizing: border-box;
    min-height: 56px;
    resize: vertical;
    padding: .45rem .6rem;
    border: 1px solid var(--color-border, #ddd);
    border-radius: 6px;
    font-size: .85rem;
    background: var(--color-bg, #fff);
    color: inherit;
    line-height: 1.4;
}

.gl-notes:focus[b-rfs1p6liqt] { outline: none; border-color: var(--color-accent, #7c5cbf); }

/* ── Completed accordion ─────────────────────────────────────────────────────── */

.gl-completed-section[b-rfs1p6liqt] {
    margin-top: 2.5rem;
    border: 1px solid var(--color-border, #e0e0e0);
    border-radius: 10px;
    overflow: hidden;
}

.gl-completed-toggle[b-rfs1p6liqt] {
    padding: .8rem 1.1rem;
    cursor: pointer;
    font-size: .92rem;
    font-weight: 600;
    opacity: .7;
    user-select: none;
    list-style: none;
    background: var(--color-surface, #f8f8f8);
}

.gl-completed-toggle[b-rfs1p6liqt]::-webkit-details-marker { display: none; }
.gl-completed-toggle[b-rfs1p6liqt]::before { content: "▶ "; font-size: .7rem; }
details[open] .gl-completed-toggle[b-rfs1p6liqt]::before { content: "▼ "; }

.gl-completed-list[b-rfs1p6liqt] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.gl-completed-item[b-rfs1p6liqt] {
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: .6rem 1.1rem;
    border-top: 1px solid var(--color-border, #eee);
    font-size: .88rem;
    opacity: .7;
}

.gl-completed-dot[b-rfs1p6liqt] {
    color: #27ae60;
    font-weight: 700;
    flex-shrink: 0;
}

.gl-completed-title[b-rfs1p6liqt] {
    flex: 1;
    text-decoration: line-through;
}

.gl-completed-date[b-rfs1p6liqt] {
    font-size: .78rem;
    opacity: .6;
}

/* ── Dark theme ──────────────────────────────────────────────────────────────── */

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .gl-chip--days[b-rfs1p6liqt]   { background: #0a2a4a; color: #7ab8f5; border-color: #1a4a7a; }
    :root:not([data-theme="light"]) .gl-chip--urgent[b-rfs1p6liqt] { background: #3b0a0a; color: #f5a0a0; border-color: #6b1a1a; }
    :root:not([data-theme="light"]) .gl-chip--portal[b-rfs1p6liqt] { background: #1e0f3a; color: #c4a0f5; border-color: #4a2a7a; }
}

:root[data-theme="dark"] .gl-chip--days[b-rfs1p6liqt]   { background: #0a2a4a; color: #7ab8f5; border-color: #1a4a7a; }
:root[data-theme="dark"] .gl-chip--urgent[b-rfs1p6liqt] { background: #3b0a0a; color: #f5a0a0; border-color: #6b1a1a; }
:root[data-theme="dark"] .gl-chip--portal[b-rfs1p6liqt] { background: #1e0f3a; color: #c4a0f5; border-color: #4a2a7a; }
/* /Pages/JournalPage.razor.rz.scp.css */
.jn-wrap[b-qyua3l0yxj] {
    max-width: 760px;
    margin: 0 auto;
    padding: 24px 16px 72px;
}

.jn-header[b-qyua3l0yxj] { margin-bottom: 24px; }

.jn-title[b-qyua3l0yxj] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 6px;
}

.jn-subtitle[b-qyua3l0yxj] {
    font-size: 0.9rem;
    color: var(--color-muted);
    margin: 0;
    line-height: 1.5;
}

.jn-gate[b-qyua3l0yxj] {
    color: var(--color-muted);
    text-align: center;
    padding: 48px 0;
}

/* Tabs */

.jn-tabs[b-qyua3l0yxj] {
    display: flex;
    gap: 4px;
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 24px;
}

.jn-tab[b-qyua3l0yxj] {
    padding: 8px 20px;
    border: none;
    background: none;
    color: var(--color-muted);
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    transition: color 0.15s, border-color 0.15s;
}

.jn-tab--active[b-qyua3l0yxj] {
    color: var(--color-accent);
    border-bottom-color: var(--color-accent);
}

/* Form */

.jn-form-section[b-qyua3l0yxj] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 28px;
}

.jn-section-title[b-qyua3l0yxj] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--color-text);
    margin: 0 0 16px;
}

.jn-form[b-qyua3l0yxj] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 16px;
}

@media (max-width: 540px) {
    .jn-form[b-qyua3l0yxj] { grid-template-columns: 1fr; }
}

.jn-label[b-qyua3l0yxj] {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: 0.82rem;
    color: var(--color-muted);
    font-weight: 500;
}

.jn-label--full[b-qyua3l0yxj] { grid-column: 1 / -1; }

.jn-input[b-qyua3l0yxj] {
    padding: 7px 10px;
    border-radius: 6px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.88rem;
}

.jn-textarea[b-qyua3l0yxj] { resize: vertical; font-family: inherit; }

.jn-error[b-qyua3l0yxj] {
    color: #ef4444;
    font-size: 0.82rem;
    margin: 0 0 10px;
}

.jn-btn-add[b-qyua3l0yxj] {
    padding: 9px 22px;
    border-radius: 6px;
    border: none;
    background: var(--color-accent);
    color: #fff;
    font-size: 0.88rem;
    font-weight: 600;
    cursor: pointer;
}

.jn-btn-add:disabled[b-qyua3l0yxj] { opacity: 0.6; cursor: not-allowed; }

/* List */

.jn-loading[b-qyua3l0yxj], .jn-empty[b-qyua3l0yxj] {
    text-align: center;
    padding: 32px 0;
    color: var(--color-muted);
}

.jn-empty-icon[b-qyua3l0yxj] { font-size: 2rem; display: block; margin-bottom: 8px; }

.jn-list[b-qyua3l0yxj] { display: flex; flex-direction: column; gap: 12px; }

.jn-entry[b-qyua3l0yxj] {
    position: relative;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-left: 4px solid var(--color-border);
    border-radius: 8px;
    padding: 14px 16px;
}

.jn-entry.jn-positive[b-qyua3l0yxj] { border-left-color: #22c55e; }
.jn-entry.jn-negative[b-qyua3l0yxj] { border-left-color: #ef4444; }

.jn-entry-head[b-qyua3l0yxj] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 8px;
}

.jn-entry-title[b-qyua3l0yxj] {
    display: block;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--color-text);
}

.jn-entry-date[b-qyua3l0yxj] {
    display: block;
    font-size: 0.78rem;
    color: var(--color-muted);
    margin-top: 2px;
}

.jn-entry-badges[b-qyua3l0yxj] { display: flex; gap: 6px; flex-shrink: 0; }

.jn-badge[b-qyua3l0yxj] {
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 0.72rem;
    font-weight: 600;
    background: var(--color-border);
    color: var(--color-muted);
}

.jn-badge--positive[b-qyua3l0yxj] { background: #16a34a22; color: #22c55e; }
.jn-badge--negative[b-qyua3l0yxj] { background: #dc262622; color: #ef4444; }
.jn-badge--neutral[b-qyua3l0yxj]  { background: var(--color-border); color: var(--color-muted); }

.jn-tags[b-qyua3l0yxj] {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: 8px;
}

.jn-tag[b-qyua3l0yxj] {
    background: var(--color-border);
    color: var(--color-text);
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 0.73rem;
    font-weight: 500;
}

.jn-tag--excellent[b-qyua3l0yxj]  { background: #16a34a22; color: #22c55e; }
.jn-tag--good[b-qyua3l0yxj]       { background: #d4af3722; color: #D4AF37; }
.jn-tag--moderate[b-qyua3l0yxj]   { background: #6366f122; color: #818cf8; }
.jn-tag--challenging[b-qyua3l0yxj]{ background: #ef444422; color: #ef4444; }

.jn-notes[b-qyua3l0yxj] {
    font-size: 0.83rem;
    color: var(--color-muted);
    margin: 6px 0 0;
    line-height: 1.5;
}

.jn-delete[b-qyua3l0yxj] {
    position: absolute;
    top: 10px;
    right: 10px;
    border: none;
    background: none;
    color: var(--color-muted);
    font-size: 1.1rem;
    cursor: pointer;
    line-height: 1;
    padding: 2px 5px;
    border-radius: 4px;
    opacity: 0.5;
    transition: opacity 0.15s;
}

.jn-delete:hover[b-qyua3l0yxj] { opacity: 1; }

/* Correlations */

.jn-insight[b-qyua3l0yxj] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-left: 4px solid var(--color-accent);
    border-radius: 8px;
    padding: 14px 16px;
    font-size: 0.9rem;
    color: var(--color-text);
    margin-bottom: 20px;
    line-height: 1.6;
}

.jn-corr-band[b-qyua3l0yxj] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 8px;
    padding: 14px 16px;
    margin-bottom: 12px;
}

.jn-corr-label[b-qyua3l0yxj] {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--color-text);
    margin-bottom: 10px;
}

.jn-corr-total[b-qyua3l0yxj] {
    font-size: 0.78rem;
    font-weight: 400;
    color: var(--color-muted);
    margin-left: 4px;
}

.jn-corr-row[b-qyua3l0yxj] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 6px;
}

.jn-corr-sent[b-qyua3l0yxj] {
    width: 80px;
    font-size: 0.78rem;
    color: var(--color-muted);
    flex-shrink: 0;
}

.jn-bar-wrap[b-qyua3l0yxj] {
    flex: 1;
    background: var(--color-border);
    border-radius: 3px;
    height: 10px;
    overflow: hidden;
}

.jn-bar[b-qyua3l0yxj] {
    height: 100%;
    border-radius: 3px;
    min-width: 2px;
    transition: width 0.4s;
}

.jn-bar--positive[b-qyua3l0yxj] { background: #22c55e; }
.jn-bar--negative[b-qyua3l0yxj] { background: #ef4444; }
.jn-bar--neutral[b-qyua3l0yxj]  { background: var(--color-muted); }

.jn-corr-count[b-qyua3l0yxj] {
    width: 24px;
    text-align: right;
    font-size: 0.78rem;
    color: var(--color-muted);
    font-variant-numeric: tabular-nums;
}

.jn-empty-text[b-qyua3l0yxj] {
    color: var(--color-muted);
    font-size: 0.88rem;
    text-align: center;
    padding: 24px 0;
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .jn-wrap[b-qyua3l0yxj] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .jn-delete[b-qyua3l0yxj] {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 10px;
    }
    .jn-tab[b-qyua3l0yxj]     { min-height: 44px; padding: 10px 22px; font-size: .92rem; }
    .jn-btn-add[b-qyua3l0yxj] { min-height: 44px; padding: 11px 24px; }
    .jn-badge[b-qyua3l0yxj]   { font-size: 12px; }
    .jn-tag[b-qyua3l0yxj]     { font-size: 12px; }
    .jn-entry-head[b-qyua3l0yxj] { flex-wrap: wrap; gap: 8px; }
}
/* /Pages/KarwaChauthPage.razor.rz.scp.css */
.kc-wrap[b-jyupn2wucp] {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 16px 80px;
}

.kc-header[b-jyupn2wucp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0 16px;
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 32px;
}

.kc-logo[b-jyupn2wucp] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-accent);
    text-decoration: none;
}

.kc-hero[b-jyupn2wucp] {
    margin-bottom: 28px;
}

.kc-title[b-jyupn2wucp] {
    font-size: 1.9rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 10px;
    line-height: 1.25;
}

.kc-sub[b-jyupn2wucp] {
    color: var(--color-muted);
    line-height: 1.65;
    margin: 0;
}

.kc-controls[b-jyupn2wucp] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-end;
    margin-bottom: 28px;
}

.kc-field[b-jyupn2wucp] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.kc-field label[b-jyupn2wucp] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.kc-field input[b-jyupn2wucp] {
    padding: 9px 12px;
    border-radius: 6px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.9rem;
}

.kc-field-place[b-jyupn2wucp] {
    position: relative;
    flex: 1;
    min-width: 240px;
}

.kc-dropdown[b-jyupn2wucp] {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    right: 0;
    z-index: 50;
    list-style: none;
    margin: 0;
    padding: 4px 0;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,.12);
}

.kc-dropdown-item[b-jyupn2wucp] {
    display: flex;
    flex-direction: column;
    padding: 8px 12px;
    cursor: pointer;
    gap: 2px;
}

.kc-dropdown-item:hover[b-jyupn2wucp] { background: color-mix(in srgb, var(--color-accent) 8%, transparent); }

.kc-place-name[b-jyupn2wucp] { font-size: 0.88rem; color: var(--color-text); }
.kc-place-tz[b-jyupn2wucp]   { font-size: 0.75rem; color: var(--color-muted); }

/* Result card */
.kc-card[b-jyupn2wucp] {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    padding: 28px 24px;
    border-radius: 12px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    margin-bottom: 28px;
}

.kc-card-moon[b-jyupn2wucp] {
    font-size: 3rem;
    line-height: 1;
    flex-shrink: 0;
}

.kc-card-body[b-jyupn2wucp] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.kc-card-title[b-jyupn2wucp] {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0;
}

.kc-card-date[b-jyupn2wucp] {
    font-size: 0.88rem;
    color: var(--color-muted);
}

.kc-card-row[b-jyupn2wucp] {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}

.kc-card-block[b-jyupn2wucp] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.kc-label[b-jyupn2wucp] {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.kc-value[b-jyupn2wucp] {
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--color-text);
    font-variant-numeric: tabular-nums;
}

.kc-value-moonrise[b-jyupn2wucp] {
    color: var(--color-accent);
    font-size: 1.6rem;
}

.kc-caption[b-jyupn2wucp] {
    font-size: 0.75rem;
    color: var(--color-muted);
}

.kc-muhurta-label[b-jyupn2wucp] {
    font-size: 0.82rem;
    color: var(--color-muted);
    font-style: italic;
}

.kc-meta[b-jyupn2wucp] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.kc-meta-chip[b-jyupn2wucp] {
    padding: 3px 10px;
    border-radius: 12px;
    background: color-mix(in srgb, var(--color-accent) 10%, transparent);
    color: var(--color-accent);
    font-size: 0.78rem;
    font-weight: 600;
}

/* How-it-works + FAQ */
.kc-how[b-jyupn2wucp],
.kc-faq[b-jyupn2wucp] {
    margin-top: 28px;
}

.kc-how h3[b-jyupn2wucp],
.kc-faq h3[b-jyupn2wucp] {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 12px;
}

.kc-how p[b-jyupn2wucp] {
    color: var(--color-muted);
    font-size: 0.88rem;
    line-height: 1.65;
    margin: 0 0 10px;
}

.kc-faq-item[b-jyupn2wucp] {
    border-bottom: 1px solid var(--color-border);
    padding: 12px 0;
}

.kc-faq-item summary[b-jyupn2wucp] {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--color-text);
    cursor: pointer;
    list-style: none;
}

.kc-faq-item summary[b-jyupn2wucp]::-webkit-details-marker { display: none; }
.kc-faq-item summary[b-jyupn2wucp]::before {
    content: "+ ";
    color: var(--color-accent);
}
.kc-faq-item[open] summary[b-jyupn2wucp]::before { content: "– "; }

.kc-faq-item p[b-jyupn2wucp] {
    margin: 10px 0 2px;
    font-size: 0.87rem;
    color: var(--color-muted);
    line-height: 1.65;
}

.kc-state[b-jyupn2wucp] {
    text-align: center;
    padding: 48px 0;
    color: var(--color-muted);
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.kc-error[b-jyupn2wucp]  { color: var(--danger); }
.kc-empty a[b-jyupn2wucp] { color: var(--color-accent); }

@media (max-width: 560px) {
    .kc-title[b-jyupn2wucp] { font-size: 1.45rem; }
    .kc-card[b-jyupn2wucp]  { flex-direction: column; }
    .kc-value-moonrise[b-jyupn2wucp] { font-size: 1.3rem; }
}
/* /Pages/KpCslPage.razor.rz.scp.css */
/* ── CSL Console page ─────────────────────────────────────────────────────── */

.csl-wrap[b-t6h7rp02rs] {
    max-width: 900px;
    margin: 0 auto;
    padding: 1.5rem 1rem 4rem;
    color: var(--text);
    font-family: system-ui, sans-serif;
}
.csl-header[b-t6h7rp02rs] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}
.csl-title[b-t6h7rp02rs] {
    font-size: 1.6rem;
    font-weight: 700;
    margin: 0 0 .2rem;
    letter-spacing: -.02em;
}
.csl-subtitle[b-t6h7rp02rs] {
    font-size: .85rem;
    color: var(--muted);
    margin: 0;
}
.csl-tier-badge[b-t6h7rp02rs] {
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    background: var(--accent2);
    color: #fff;
    padding: .25rem .65rem;
    border-radius: 999px;
}

/* Gate screens */
.csl-gate[b-t6h7rp02rs] {
    text-align: center;
    padding: 4rem 1rem;
    border: 1px dashed var(--border);
    border-radius: 12px;
}
.csl-gate-symbol[b-t6h7rp02rs] { font-size: 2.5rem; margin-bottom: .75rem; opacity: .4; }
.csl-gate-msg[b-t6h7rp02rs]    { color: var(--muted); margin-bottom: 1.25rem; }
.csl-gate-btn[b-t6h7rp02rs] {
    display: inline-block;
    background: var(--accent2);
    color: #fff;
    padding: .55rem 1.4rem;
    border-radius: 8px;
    font-weight: 600;
    text-decoration: none;
    font-size: .9rem;
}

/* Controls row */
.csl-controls[b-t6h7rp02rs] {
    display: flex;
    align-items: center;
    gap: .75rem;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
}
.csl-label[b-t6h7rp02rs] {
    font-size: .85rem;
    font-weight: 600;
    color: var(--muted);
    white-space: nowrap;
}
.csl-select[b-t6h7rp02rs] {
    flex: 1;
    min-width: 200px;
    padding: .5rem .75rem;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--surface2);
    color: var(--text);
    font-size: .9rem;
}
.csl-btn-analyse[b-t6h7rp02rs] {
    padding: .5rem 1.25rem;
    background: var(--accent2);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: .9rem;
    font-weight: 600;
    cursor: pointer;
}
.csl-btn-analyse:disabled[b-t6h7rp02rs] { opacity: .5; cursor: default; }
.csl-loading-inline[b-t6h7rp02rs] { color: var(--muted); font-size: .9rem; }

/* Verdict banner */
.csl-verdict[b-t6h7rp02rs] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-radius: 10px;
    margin-bottom: 1rem;
    border: 1px solid var(--border);
    background: var(--surface2);
}
.csl-verdict-label[b-t6h7rp02rs]  { font-weight: 700; font-size: 1rem; flex: 1; color: var(--text); }
.csl-verdict-pill[b-t6h7rp02rs] {
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: .3rem .85rem;
    border-radius: 999px;
    color: #fff;
}
.csl-verdict--promised     .csl-verdict-pill[b-t6h7rp02rs] { background: var(--success); }
.csl-verdict--denied       .csl-verdict-pill[b-t6h7rp02rs] { background: var(--danger); }
.csl-verdict--mixed        .csl-verdict-pill[b-t6h7rp02rs] { background: #d97706; }
.csl-verdict--inconclusive .csl-verdict-pill[b-t6h7rp02rs] { background: var(--muted); }
.csl-verdict-counts[b-t6h7rp02rs] { font-size: .82rem; color: var(--muted); white-space: nowrap; }

/* House legend */
.csl-legend[b-t6h7rp02rs] {
    display: flex;
    gap: 1.5rem;
    font-size: .82rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}
.csl-legend-item[b-t6h7rp02rs]    { display: flex; align-items: center; gap: .4rem; }
.csl-legend--support[b-t6h7rp02rs] { color: var(--success); font-weight: 600; }
.csl-legend--negate[b-t6h7rp02rs]  { color: var(--danger);  font-weight: 600; }

/* CSL table */
.csl-table-wrap[b-t6h7rp02rs] {
    overflow-x: auto;
    border: 1px solid var(--border);
    border-radius: 10px;
    margin-bottom: 1.25rem;
}
.csl-table[b-t6h7rp02rs] {
    width: 100%;
    border-collapse: collapse;
    font-size: .875rem;
    font-variant-numeric: tabular-nums;
    background: var(--surface);
}
.csl-table th[b-t6h7rp02rs] {
    background: var(--surface2);
    text-align: left;
    padding: .65rem .9rem;
    font-size: .75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--muted);
    border-bottom: 1px solid var(--border);
    white-space: nowrap;
}
.csl-table td[b-t6h7rp02rs] {
    padding: .6rem .9rem;
    border-bottom: 1px solid var(--border);
    vertical-align: middle;
    color: var(--text);
}
.csl-table tr:last-child td[b-t6h7rp02rs]  { border-bottom: none; }
.csl-row--promise td:first-child[b-t6h7rp02rs] { border-left: 3px solid var(--success); }
.csl-row--deny    td:first-child[b-t6h7rp02rs] { border-left: 3px solid var(--danger); }
.csl-row--promise[b-t6h7rp02rs] { background: color-mix(in srgb, var(--success) 6%, transparent); }
.csl-row--deny[b-t6h7rp02rs]    { background: color-mix(in srgb, var(--danger)  6%, transparent); }
.csl-house-cell[b-t6h7rp02rs]   { font-weight: 700; }
.csl-num[b-t6h7rp02rs]          { color: var(--muted); }
.csl-planet[b-t6h7rp02rs]       { font-weight: 600; color: var(--accent2); }
.csl-houses-list[b-t6h7rp02rs]  { color: var(--muted); font-size: .8rem; }
.csl-tick[b-t6h7rp02rs]         { color: var(--success); font-weight: 700; text-align: center; }
.csl-cross[b-t6h7rp02rs]        { color: var(--danger);  font-weight: 700; text-align: center; }

/* Save row */
.csl-save-row[b-t6h7rp02rs] {
    display: flex;
    gap: .75rem;
    flex-wrap: wrap;
    align-items: flex-start;
}
.csl-note-input[b-t6h7rp02rs] {
    flex: 1;
    min-width: 200px;
    padding: .5rem .75rem;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--surface2);
    color: var(--text);
    font-size: .875rem;
    resize: vertical;
}
.csl-btn-save[b-t6h7rp02rs] {
    padding: .5rem 1.25rem;
    background: var(--surface2);
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: .9rem;
    font-weight: 600;
    color: var(--text);
    cursor: pointer;
    align-self: flex-end;
}
.csl-btn-save:disabled[b-t6h7rp02rs] { opacity: .5; cursor: default; }
.csl-saved-msg[b-t6h7rp02rs] {
    color: var(--success);
    font-size: .9rem;
    font-weight: 600;
    padding: .5rem 0;
}

.csl-error[b-t6h7rp02rs] {
    background: color-mix(in srgb, var(--danger) 8%, var(--surface));
    color: var(--danger);
    border: 1px solid color-mix(in srgb, var(--danger) 30%, var(--border));
    border-radius: 8px;
    padding: .75rem 1rem;
    font-size: .875rem;
    margin-bottom: 1rem;
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .csl-wrap[b-t6h7rp02rs] { padding: 1rem .875rem 5rem; }

    /* Header — stack title and badge */
    .csl-header[b-t6h7rp02rs]    { flex-direction: column; align-items: flex-start; gap: .4rem; margin-bottom: 1.1rem; }
    .csl-title[b-t6h7rp02rs]     { font-size: 1.3rem; }
    .csl-subtitle[b-t6h7rp02rs]  { font-size: .8rem; }
    .csl-tier-badge[b-t6h7rp02rs] { align-self: flex-start; }

    /* Controls — stack label, select, button */
    .csl-controls[b-t6h7rp02rs]  { flex-direction: column; gap: .65rem; align-items: stretch; }
    .csl-label[b-t6h7rp02rs]     { font-size: .8rem; }
    .csl-select[b-t6h7rp02rs]    { min-width: 0; width: 100%; font-size: .875rem; min-height: 44px; }
    .csl-btn-analyse[b-t6h7rp02rs] { min-height: 44px; font-size: .9rem; }

    /* Verdict banner — wrap score to second line on small screens */
    .csl-verdict[b-t6h7rp02rs]       { flex-wrap: wrap; gap: .5rem .75rem; padding: .85rem 1rem; }
    .csl-verdict-label[b-t6h7rp02rs] { font-size: .9rem; flex-basis: 100%; }
    .csl-verdict-counts[b-t6h7rp02rs] { font-size: .78rem; }

    /* Legend — compact */
    .csl-legend[b-t6h7rp02rs] { gap: 1rem; font-size: .78rem; margin-bottom: .75rem; }

    /* Table — already has overflow-x:auto; tighten cell padding */
    .csl-table th[b-t6h7rp02rs] { padding: .5rem .7rem; font-size: .7rem; }
    .csl-table td[b-t6h7rp02rs] { padding: .5rem .7rem; font-size: .82rem; }

    /* Save row — stack inputs */
    .csl-save-row[b-t6h7rp02rs]    { flex-direction: column; gap: .6rem; }
    .csl-note-input[b-t6h7rp02rs]  { min-width: 0; width: 100%; font-size: .875rem; }
    .csl-btn-save[b-t6h7rp02rs]    { align-self: flex-start; min-height: 40px; font-size: .875rem; }
}
/* /Pages/KumbhSnanPage.razor.rz.scp.css */
.ks-wrap[b-u1kjzvu4sf] {
    max-width: 820px;
    margin: 0 auto;
    padding: 0 16px 80px;
}

.ks-header[b-u1kjzvu4sf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0 16px;
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 32px;
}

.ks-logo[b-u1kjzvu4sf] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-accent);
    text-decoration: none;
}

.ks-nav[b-u1kjzvu4sf] { display: flex; gap: .5rem; }

.ks-hero[b-u1kjzvu4sf] { margin-bottom: 28px; }

.ks-title[b-u1kjzvu4sf] {
    font-size: 1.85rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 10px;
    line-height: 1.25;
}

.ks-sub[b-u1kjzvu4sf] {
    color: var(--color-muted);
    line-height: 1.65;
    margin: 0;
}

/* Event badge */
.ks-event-badge[b-u1kjzvu4sf] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    align-items: center;
    padding: 14px 20px;
    border-radius: 10px;
    border: 1.5px solid color-mix(in srgb, var(--color-accent) 30%, transparent);
    background: color-mix(in srgb, var(--color-accent) 6%, transparent);
    margin-bottom: 32px;
}

.ks-event-label[b-u1kjzvu4sf] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-accent);
}

.ks-event-place[b-u1kjzvu4sf] {
    font-size: 0.88rem;
    color: var(--color-muted);
}

.ks-event-dates[b-u1kjzvu4sf] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--color-muted);
    border-left: 1.5px solid var(--color-border);
    padding-left: 12px;
}

/* Section titles */
.ks-section-title[b-u1kjzvu4sf] {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--color-border);
}

.ks-section-note[b-u1kjzvu4sf] {
    font-size: 0.86rem;
    color: var(--color-muted);
    line-height: 1.6;
    margin: 0 0 16px;
}

/* Snan table */
.ks-table-wrap[b-u1kjzvu4sf] {
    overflow-x: auto;
    border: 1px solid var(--color-border);
    border-radius: 10px;
    margin-bottom: 32px;
}

.ks-table[b-u1kjzvu4sf] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.87rem;
}

.ks-table th[b-u1kjzvu4sf] {
    text-align: left;
    padding: 10px 14px;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-muted);
    border-bottom: 1px solid var(--color-border);
    background: color-mix(in srgb, var(--color-accent) 4%, transparent);
}

.ks-table td[b-u1kjzvu4sf] {
    padding: 10px 14px;
    border-bottom: 1px solid var(--color-border);
    vertical-align: middle;
}

.ks-table tbody tr:last-child td[b-u1kjzvu4sf] { border-bottom: none; }
.ks-row-main[b-u1kjzvu4sf] { background: color-mix(in srgb, var(--color-accent) 5%, transparent); }

.ks-td-num[b-u1kjzvu4sf]   { font-size: 0.75rem; color: var(--color-muted); width: 28px; }
.ks-td-date[b-u1kjzvu4sf]  { white-space: nowrap; font-size: 0.82rem; color: var(--color-muted); }
.ks-td-name[b-u1kjzvu4sf]  { font-weight: 600; color: var(--color-text); }
.ks-td-tithi[b-u1kjzvu4sf] { font-size: 0.82rem; color: var(--color-muted); }
.ks-td-status[b-u1kjzvu4sf] { font-size: 0.78rem; }
.ks-past[b-u1kjzvu4sf]     { color: var(--color-muted); }
.ks-upcoming[b-u1kjzvu4sf] { color: var(--success); font-weight: 600; }

.ks-main-badge[b-u1kjzvu4sf] {
    display: inline-block;
    margin-left: 8px;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    background: var(--color-accent);
    color: #fff;
    vertical-align: middle;
}

/* Info block */
.ks-info-block[b-u1kjzvu4sf] {
    padding: 20px;
    border-radius: 10px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    margin-bottom: 36px;
}

.ks-info-block h3[b-u1kjzvu4sf] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 10px;
}

.ks-info-block p[b-u1kjzvu4sf] {
    font-size: 0.87rem;
    color: var(--color-muted);
    line-height: 1.65;
    margin: 0 0 10px;
}

.ks-info-block p:last-child[b-u1kjzvu4sf] { margin-bottom: 0; }

/* Upcoming grid */
.ks-upcoming-grid[b-u1kjzvu4sf] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
    margin-bottom: 36px;
}

.ks-upcoming-card[b-u1kjzvu4sf] {
    display: flex;
    gap: 14px;
    padding: 16px;
    border-radius: 10px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
}

.ks-up-icon[b-u1kjzvu4sf] { font-size: 1.8rem; flex-shrink: 0; line-height: 1; }
.ks-up-body[b-u1kjzvu4sf] { display: flex; flex-direction: column; gap: 2px; }
.ks-up-name[b-u1kjzvu4sf] { font-size: 0.9rem; font-weight: 700; color: var(--color-text); }
.ks-up-place[b-u1kjzvu4sf] { font-size: 0.78rem; color: var(--color-muted); }
.ks-up-year[b-u1kjzvu4sf]  { font-size: 1rem; font-weight: 700; color: var(--color-accent); margin: 4px 0; }
.ks-up-note[b-u1kjzvu4sf]  { font-size: 0.76rem; color: var(--color-muted); line-height: 1.5; }

/* FAQ */
.ks-faq[b-u1kjzvu4sf] { margin-top: 28px; }

.ks-faq h3[b-u1kjzvu4sf] {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 12px;
}

.ks-faq-item[b-u1kjzvu4sf] {
    border-bottom: 1px solid var(--color-border);
    padding: 12px 0;
}

.ks-faq-item summary[b-u1kjzvu4sf] {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--color-text);
    cursor: pointer;
    list-style: none;
}

.ks-faq-item summary[b-u1kjzvu4sf]::-webkit-details-marker { display: none; }
.ks-faq-item summary[b-u1kjzvu4sf]::before { content: "+ "; color: var(--color-accent); }
.ks-faq-item[open] summary[b-u1kjzvu4sf]::before { content: "– "; }

.ks-faq-item p[b-u1kjzvu4sf] {
    margin: 10px 0 2px;
    font-size: 0.87rem;
    color: var(--color-muted);
    line-height: 1.65;
}

@media (max-width: 560px) {
    .ks-title[b-u1kjzvu4sf] { font-size: 1.45rem; }
    .ks-td-tithi[b-u1kjzvu4sf] { display: none; }
}
/* /Pages/Login.razor.rz.scp.css */
/* Auth page styles are global — see wwwroot/css/app.css under "Auth pages" section */
/* /Pages/MarriageMuhurtaPage.razor.rz.scp.css */
.mm-wrap[b-6i0we61u7s] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 16px 80px;
}


.mm-hero[b-6i0we61u7s] {
    margin-bottom: 32px;
}

.mm-title[b-6i0we61u7s] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 10px;
    line-height: 1.2;
}

.mm-sub[b-6i0we61u7s] {
    color: var(--color-muted);
    line-height: 1.65;
    max-width: 680px;
    margin: 0;
}

.mm-controls[b-6i0we61u7s] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-end;
    margin-bottom: 20px;
}

.mm-field[b-6i0we61u7s] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.mm-field label[b-6i0we61u7s] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.mm-field input[b-6i0we61u7s],
.mm-field select[b-6i0we61u7s] {
    padding: 8px 12px;
    border-radius: 6px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.88rem;
    min-width: 180px;
}

.mm-field-place[b-6i0we61u7s] {
    position: relative;
    flex: 1;
    min-width: 220px;
    max-width: 360px;
}

.mm-dropdown[b-6i0we61u7s] {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    right: 0;
    z-index: 50;
    list-style: none;
    margin: 0;
    padding: 4px 0;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,.12);
}

.mm-dropdown-item[b-6i0we61u7s] {
    display: flex;
    flex-direction: column;
    padding: 8px 12px;
    cursor: pointer;
    gap: 2px;
}

.mm-dropdown-item:hover[b-6i0we61u7s] { background: color-mix(in srgb, var(--color-accent) 8%, transparent); }

.mm-place-name[b-6i0we61u7s] {
    font-size: 0.88rem;
    color: var(--color-text);
}

.mm-place-tz[b-6i0we61u7s] {
    font-size: 0.75rem;
    color: var(--color-muted);
}

.mm-upgrade-banner[b-6i0we61u7s] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 18px;
    border-radius: 8px;
    background: color-mix(in srgb, var(--color-accent) 8%, transparent);
    border: 1px solid color-mix(in srgb, var(--color-accent) 25%, transparent);
    font-size: 0.88rem;
    color: var(--color-text);
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.mm-upgrade-icon[b-6i0we61u7s] {
    color: var(--color-accent);
    font-size: 1.1rem;
    flex-shrink: 0;
}

.mm-upgrade-banner span:not(.mm-upgrade-icon)[b-6i0we61u7s] {
    flex: 1;
    color: var(--color-muted);
}

.mm-upgrade-cta[b-6i0we61u7s] {
    padding: 6px 16px;
    border-radius: 6px;
    background: var(--color-accent);
    color: #fff;
    font-weight: 600;
    font-size: 0.85rem;
    text-decoration: none;
    white-space: nowrap;
}

.mm-count[b-6i0we61u7s] {
    font-size: 0.88rem;
    color: var(--color-muted);
    margin: 0 0 12px;
}

.mm-table-wrap[b-6i0we61u7s] {
    overflow-x: auto;
    border-radius: 8px;
    border: 1px solid var(--color-border);
}

.mm-table[b-6i0we61u7s] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.88rem;
}

.mm-table th[b-6i0we61u7s] {
    padding: 10px 14px;
    text-align: left;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    background: var(--color-surface);
    border-bottom: 1px solid var(--color-border);
    white-space: nowrap;
}

.mm-table td[b-6i0we61u7s] {
    padding: 10px 14px;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-text);
}

.mm-row:last-child td[b-6i0we61u7s] { border-bottom: none; }
.mm-row:hover[b-6i0we61u7s] { background: color-mix(in srgb, var(--color-accent) 4%, transparent); }

.mm-date-cell[b-6i0we61u7s] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.mm-date-label[b-6i0we61u7s] {
    font-weight: 600;
    white-space: nowrap;
}

.mm-score-hi[b-6i0we61u7s]  { font-size: 0.72rem; padding: 2px 6px; border-radius: 10px; background: color-mix(in srgb, var(--success) 15%, transparent); color: var(--success); font-weight: 600; }
.mm-score-mid[b-6i0we61u7s] { font-size: 0.72rem; padding: 2px 6px; border-radius: 10px; background: color-mix(in srgb, var(--warning) 13%, transparent); color: var(--warning); font-weight: 600; }
.mm-score-lo[b-6i0we61u7s]  { font-size: 0.72rem; padding: 2px 6px; border-radius: 10px; background: var(--surface); color: var(--muted); font-weight: 600; }

.mm-window-cell[b-6i0we61u7s] {
    white-space: nowrap;
}

.mm-plan-link[b-6i0we61u7s] {
    color: var(--color-accent);
    font-weight: 600;
    text-decoration: none;
    font-size: 0.82rem;
}

.mm-lock[b-6i0we61u7s] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.mm-lock-blur[b-6i0we61u7s] {
    font-size: 0.82rem;
    filter: blur(4px);
    user-select: none;
    color: var(--color-muted);
}

.mm-loading[b-6i0we61u7s],
.mm-error[b-6i0we61u7s],
.mm-empty[b-6i0we61u7s] {
    text-align: center;
    padding: 40px 0;
    color: var(--color-muted);
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.mm-footer-note[b-6i0we61u7s] {
    margin-top: 24px;
    padding: 16px;
    border-radius: 8px;
    background: var(--color-surface);
    font-size: 0.83rem;
    color: var(--color-muted);
    line-height: 1.6;
}

.mm-footer-note a[b-6i0we61u7s] {
    color: var(--color-accent);
    text-decoration: none;
}

@media (max-width: 600px) {
    .mm-title[b-6i0we61u7s] { font-size: 1.5rem; }
    .mm-controls[b-6i0we61u7s] { flex-direction: column; }
    .mm-field-place[b-6i0we61u7s] { max-width: 100%; }
}
/* /Pages/MarriageSuitePage.razor.rz.scp.css */
.ms-wrap[b-y6bj9lomxo] {
    max-width: 760px;
    margin: 0 auto;
    padding: 24px 16px 72px;
}

.ms-header[b-y6bj9lomxo] { margin-bottom: 28px; }

.ms-title[b-y6bj9lomxo] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 6px;
}

.ms-subtitle[b-y6bj9lomxo] {
    font-size: 0.9rem;
    color: var(--color-muted);
    margin: 0;
    line-height: 1.55;
}

.ms-gate[b-y6bj9lomxo] {
    color: var(--color-muted);
    text-align: center;
    padding: 48px 0;
    font-size: 0.95rem;
}

.ms-gate a[b-y6bj9lomxo] { color: var(--color-accent); text-decoration: none; }

/* Sections */

.ms-section[b-y6bj9lomxo] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 10px;
    padding: 20px 24px;
    margin-bottom: 20px;
}

.ms-section--row[b-y6bj9lomxo] {
    display: flex;
    align-items: flex-end;
    gap: 16px;
}

.ms-section-title[b-y6bj9lomxo] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 14px;
}

.ms-label[b-y6bj9lomxo] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 0.83rem;
    color: var(--color-muted);
    font-weight: 500;
    flex: 1;
}

.ms-input[b-y6bj9lomxo], .ms-select[b-y6bj9lomxo] {
    padding: 8px 10px;
    border-radius: 6px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.9rem;
}

.ms-person-fixed[b-y6bj9lomxo] { display: flex; flex-direction: column; gap: 12px; }

.ms-info-pill[b-y6bj9lomxo] {
    display: inline-block;
    background: var(--color-border);
    color: var(--color-muted);
    border-radius: 4px;
    padding: 4px 10px;
    font-size: 0.78rem;
}

.ms-info-pill--selected[b-y6bj9lomxo] {
    background: color-mix(in srgb, #22c55e 15%, transparent);
    color: #22c55e;
}

.ms-no-members[b-y6bj9lomxo], .ms-loading[b-y6bj9lomxo] {
    font-size: 0.88rem;
    color: var(--color-muted);
    margin: 0;
}

.ms-no-members a[b-y6bj9lomxo] { color: var(--color-accent); text-decoration: none; }

.ms-btn[b-y6bj9lomxo] {
    padding: 10px 22px;
    border-radius: 6px;
    border: none;
    background: var(--color-accent);
    color: #fff;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    transition: opacity 0.15s;
}

.ms-btn:disabled[b-y6bj9lomxo] { opacity: 0.55; cursor: not-allowed; }

.ms-error[b-y6bj9lomxo] {
    color: #ef4444;
    font-size: 0.85rem;
    margin: -10px 0 16px;
}

/* Results */

.ms-results[b-y6bj9lomxo] { margin-top: 8px; }

/* Ashtakoota panel */

.ms-compat[b-y6bj9lomxo] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-left: 4px solid var(--color-border);
    border-radius: 10px;
    padding: 20px 24px;
    margin-bottom: 28px;
}

.ms-compat--good[b-y6bj9lomxo]    { border-left-color: #22c55e; }
.ms-compat--ok[b-y6bj9lomxo]      { border-left-color: var(--color-accent); }
.ms-compat--caution[b-y6bj9lomxo] { border-left-color: #f59e0b; }

.ms-compat-head[b-y6bj9lomxo] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 6px;
}

.ms-compat-title[b-y6bj9lomxo] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-text);
}

.ms-compat-score[b-y6bj9lomxo] {
    font-size: 1.8rem;
    font-weight: 800;
    color: var(--color-accent);
    line-height: 1;
}

.ms-compat-verdict[b-y6bj9lomxo] {
    font-size: 0.88rem;
    color: var(--color-text);
    margin: 0 0 10px;
    font-style: italic;
}

.ms-dosha-warn[b-y6bj9lomxo] {
    font-size: 0.83rem;
    color: #f59e0b;
    margin: 4px 0;
}

.ms-koota-table[b-y6bj9lomxo] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
    margin-top: 14px;
    overflow-x: auto;
    display: block;
}

.ms-koota-table th[b-y6bj9lomxo] {
    text-align: left;
    color: var(--color-muted);
    font-weight: 600;
    padding: 4px 8px 6px;
    border-bottom: 1px solid var(--color-border);
}

.ms-koota-table td[b-y6bj9lomxo] {
    padding: 5px 8px;
    color: var(--color-text);
    border-bottom: 1px solid var(--color-border);
}

.ms-kt-zero td[b-y6bj9lomxo] { color: var(--color-muted); }
.ms-kt-score[b-y6bj9lomxo], .ms-kt-max[b-y6bj9lomxo] { font-weight: 700; }
.ms-kt-qual[b-y6bj9lomxo] { font-style: italic; color: var(--color-muted); }

/* Wedding windows */

.ms-windows-title[b-y6bj9lomxo] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 4px;
}

.ms-windows-range[b-y6bj9lomxo] {
    font-size: 0.8rem;
    color: var(--color-muted);
    margin: 0 0 20px;
}

.ms-win[b-y6bj9lomxo] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-left: 4px solid var(--color-border);
    border-radius: 10px;
    padding: 18px 20px;
    margin-bottom: 14px;
}

.ms-win--excellent[b-y6bj9lomxo] { border-left-color: #22c55e; }
.ms-win--good[b-y6bj9lomxo]      { border-left-color: var(--color-accent); }

.ms-win-head[b-y6bj9lomxo] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 10px;
}

.ms-win-date[b-y6bj9lomxo] {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--color-text);
    display: block;
}

.ms-win-day[b-y6bj9lomxo] { font-size: 0.78rem; color: var(--color-muted); }

.ms-win-score[b-y6bj9lomxo] {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--color-accent);
    line-height: 1;
}

.ms-win-denom[b-y6bj9lomxo] { font-size: 0.72rem; font-weight: 400; color: var(--color-muted); }

.ms-tags[b-y6bj9lomxo] { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }

.ms-tag[b-y6bj9lomxo] {
    background: var(--color-border);
    color: var(--color-text);
    border-radius: 4px;
    padding: 3px 8px;
    font-size: 0.77rem;
    font-weight: 500;
}

.ms-detail[b-y6bj9lomxo] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.82rem;
    margin-bottom: 5px;
}

.ms-dl[b-y6bj9lomxo] { color: var(--color-muted); min-width: 90px; }
.ms-dv[b-y6bj9lomxo] { color: var(--color-text); font-weight: 500; }
.ms-dv--caution[b-y6bj9lomxo] { color: #f59e0b; }

.ms-list[b-y6bj9lomxo] {
    margin: 10px 0 0;
    padding-left: 18px;
    font-size: 0.82rem;
    line-height: 1.7;
    list-style: disc;
}

.ms-list--highlight[b-y6bj9lomxo] { color: var(--color-text); }

.ms-pdf-row[b-y6bj9lomxo] { margin-top: 14px; }

.ms-pdf-btn[b-y6bj9lomxo] {
    display: inline-block;
    padding: 7px 16px;
    border-radius: 6px;
    border: 1px solid var(--color-accent);
    color: var(--color-accent);
    font-size: 0.83rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
}

.ms-pdf-btn:hover[b-y6bj9lomxo] { background: var(--color-accent); color: #fff; }

@media (max-width: 540px) {
    .ms-section--row[b-y6bj9lomxo] { flex-direction: column; align-items: stretch; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .ms-wrap[b-y6bj9lomxo] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .ms-pdf-btn[b-y6bj9lomxo]    { min-height: 44px; padding: 10px 18px; font-size: .88rem; }
    .ms-win-denom[b-y6bj9lomxo]  { font-size: .78rem; }
    .ms-tab[b-y6bj9lomxo]        { min-height: 44px; }
    .ms-header[b-y6bj9lomxo]     { padding: 14px 16px; }
    .ms-section[b-y6bj9lomxo]    { padding: 14px 16px; }
}
/* /Pages/MatchInput.razor.rz.scp.css */
.mi-person-section[b-lq5wv097ix] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 18px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.mi-person-label[b-lq5wv097ix] {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--accent);
    margin-bottom: 4px;
}

.mi-person-heading[b-lq5wv097ix] {
    font-size: 14px;
    font-weight: 700;
    color: var(--accent);
    margin: 0 0 4px;
    letter-spacing: .04em;
}

.mi-divider[b-lq5wv097ix] {
    text-align: center;
    color: var(--muted);
    font-size: 18px;
    letter-spacing: .3em;
    margin: 2px 0;
}

.mi-type-tabs[b-lq5wv097ix] {
    display: flex;
    gap: 8px;
    margin-bottom: 20px;
}

.mi-type-tab[b-lq5wv097ix] {
    flex: 1;
    text-align: center;
    padding: 9px 12px;
    border-radius: var(--radius);
    border: 1px solid var(--border);
    font-size: 13px;
    font-weight: 600;
    color: var(--muted);
    text-decoration: none;
    transition: background .15s, color .15s;
}

.mi-type-tab:hover[b-lq5wv097ix] {
    background: var(--surface);
    color: var(--fg);
}

.mi-type-tab--active[b-lq5wv097ix] {
    background: var(--accent);
    border-color: var(--accent);
    color: #fff;
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .ci-wrap[b-lq5wv097ix] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .mi-person-section[b-lq5wv097ix] { padding: 14px 16px; gap: 10px; }
    .mi-person-label[b-lq5wv097ix]   { font-size: 12px; letter-spacing: .05em; }
    .mi-person-heading[b-lq5wv097ix] { font-size: 13px; }
    .mi-divider[b-lq5wv097ix]        { margin: 4px 0; font-size: 16px; }

    /* Type tabs — equal-width, taller tap targets */
    .mi-type-tabs[b-lq5wv097ix] { gap: 6px; margin-bottom: 16px; }
    .mi-type-tab[b-lq5wv097ix]  { padding: 11px 10px; font-size: 12.5px; min-height: 44px; }
}
/* /Pages/MatchResult.razor.rz.scp.css */
/* ── Header (matches ChartResult nav bar) ───────────────────────────────── */
.cr-header[b-ai3796sm6z]       { display: flex; align-items: center; justify-content: space-between; padding: 0 20px; height: 52px; background: var(--surface); border-bottom: 1px solid var(--border); }
.cr-header-left[b-ai3796sm6z]  { display: flex; align-items: center; gap: 14px; }
.cr-header-right[b-ai3796sm6z] { display: flex; align-items: center; gap: 10px; }
.cr-logo[b-ai3796sm6z]         { font-family: Palatino Linotype, Palatino, Georgia, serif; font-size: 16px; font-weight: 700; color: var(--accent); text-decoration: none; }
.cr-chart-name[b-ai3796sm6z]   { font-size: 14px; font-weight: 600; }
.cr-chart-meta[b-ai3796sm6z]   { font-size: 13px; color: var(--muted); }
.cr-lang-select[b-ai3796sm6z]  { background: var(--surface2); border: 1px solid var(--border); border-radius: 8px; color: var(--text); font-size: 14px; padding: 4px 8px; cursor: pointer; }

/* ── Score pills (top summary row) ──────────────────────────────────────── */
.mr-summary-row[b-ai3796sm6z] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    padding: 20px 24px 0;
}

.mr-score-pill[b-ai3796sm6z] {
    flex: 1;
    min-width: 160px;
    border-radius: var(--radius);
    padding: 16px 20px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    border: 1px solid var(--border);
    transition: transform .15s;
}
.mr-score-pill:hover[b-ai3796sm6z] { transform: translateY(-2px); }

.mr-pill-good[b-ai3796sm6z]  { background: color-mix(in srgb, var(--success) 12%, var(--surface)); border-color: var(--success); }
.mr-pill-warn[b-ai3796sm6z]  { background: color-mix(in srgb, var(--warning, #b8860b) 12%, var(--surface)); border-color: var(--warning, #b8860b); }
.mr-pill-bad[b-ai3796sm6z]   { background: color-mix(in srgb, var(--danger) 12%, var(--surface)); border-color: var(--danger); }

.mr-score-sys[b-ai3796sm6z]     { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); }
.mr-score-val[b-ai3796sm6z]     { font-size: 26px; font-weight: 800; font-variant-numeric: tabular-nums; color: var(--text); line-height: 1.1; }
.mr-score-verdict[b-ai3796sm6z] { font-size: 14px; color: var(--muted); line-height: 1.4; }

/* ── Dosha alerts ────────────────────────────────────────────────────────── */
.mr-dosha-alerts[b-ai3796sm6z] { padding: 14px 24px 0; display: flex; flex-direction: column; gap: 8px; }
.mr-dosha-alert[b-ai3796sm6z]  { padding: 11px 16px; border-radius: var(--radius); font-size: 13.5px; border: 1px solid; line-height: 1.5; }
.mr-alert-danger[b-ai3796sm6z] { background: color-mix(in srgb, var(--danger) 10%, var(--surface)); border-color: var(--danger); color: var(--danger); }
.mr-alert-warn[b-ai3796sm6z]   { background: color-mix(in srgb, var(--warning, #b8860b) 10%, var(--surface)); border-color: var(--warning, #b8860b); }
.mr-alert-info[b-ai3796sm6z]   { background: color-mix(in srgb, var(--accent2) 12%, transparent); border-color: color-mix(in srgb, var(--accent2) 40%, transparent); }

/* ── Horizontal tab bar ──────────────────────────────────────────────────── */
.mr-tab-bar[b-ai3796sm6z] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 18px 24px 0;
    border-bottom: 1px solid var(--border);
    margin-bottom: 0;
}

.mr-tab[b-ai3796sm6z] {
    padding: 9px 18px;
    border: 1px solid var(--border);
    border-bottom: none;
    border-radius: 8px 8px 0 0;
    background: var(--surface);
    color: var(--muted);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background .12s, color .12s;
    position: relative;
    bottom: -1px;
}
.mr-tab:hover[b-ai3796sm6z]         { color: var(--text); background: var(--surface2); }
.mr-tab.mr-tab-active[b-ai3796sm6z] {
    background: var(--bg);
    color: var(--accent);
    border-color: var(--border);
    border-bottom-color: var(--bg);
    box-shadow: 0 -2px 0 0 var(--accent) inset;
}

/* ── Content area ────────────────────────────────────────────────────────── */
.cr-content[b-ai3796sm6z] {
    flex: 1 1 auto;
    padding: 28px 28px;
    overflow-y: auto;
}

/* ── Section ─────────────────────────────────────────────────────────────── */
.mr-section[b-ai3796sm6z]         { max-width: 900px; padding: 24px 24px 0; }
.mr-section-header[b-ai3796sm6z]  { display: flex; align-items: center; justify-content: space-between; margin-bottom: 10px; }
.mr-section-header h2[b-ai3796sm6z] { font-family: Palatino Linotype, Palatino, Georgia, serif; font-size: 22px; color: var(--accent); margin: 0; }
.mr-section-desc[b-ai3796sm6z]    { color: var(--muted); font-size: 14px; margin-bottom: 22px; line-height: 1.7; }
.mr-section-note[b-ai3796sm6z]    { font-size: 13px; color: var(--muted); font-style: italic; background: var(--surface); border-radius: 6px; padding: .55rem .85rem; margin-bottom: 18px; line-height: 1.7; border: 1px solid var(--border); }
.mr-total-score[b-ai3796sm6z]     { font-size: 18px; font-weight: 700; padding: 5px 14px; border-radius: 20px; }
.mr-score-good[b-ai3796sm6z]      { background: color-mix(in srgb, var(--success) 15%, var(--surface)); color: var(--success); }
.mr-score-warn[b-ai3796sm6z]      { background: color-mix(in srgb, var(--warning, #b8860b) 15%, var(--surface)); color: var(--warning, #b8860b); }

/* ── Ashta Koota grid ────────────────────────────────────────────────────── */
.mr-koota-grid[b-ai3796sm6z] { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 14px; }
.mr-koota-card[b-ai3796sm6z] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    transition: box-shadow .15s;
}
.mr-koota-card:hover[b-ai3796sm6z] { box-shadow: 0 4px 16px rgba(0,0,0,.08); }
.mr-card-zero[b-ai3796sm6z]   { border-color: var(--danger); background: color-mix(in srgb, var(--danger) 5%, var(--surface)); }
.mr-card-full[b-ai3796sm6z]   { border-color: var(--success); background: color-mix(in srgb, var(--success) 5%, var(--surface)); }
.mr-koota-name[b-ai3796sm6z]  { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); }
.mr-koota-score[b-ai3796sm6z] { display: flex; align-items: baseline; gap: 2px; }
.mr-kscore-val[b-ai3796sm6z]  { font-size: 28px; font-weight: 800; font-variant-numeric: tabular-nums; color: var(--text); }
.mr-kscore-max[b-ai3796sm6z]  { font-size: 14px; color: var(--muted); }
.mr-koota-bar[b-ai3796sm6z]   { height: 5px; background: var(--border); border-radius: 3px; overflow: hidden; }
.mr-koota-fill[b-ai3796sm6z]  { height: 100%; background: var(--accent); border-radius: 3px; transition: width .4s ease; }
.mr-koota-quality[b-ai3796sm6z] { font-size: 13px; font-weight: 600; color: var(--accent); }
.mr-koota-notes[b-ai3796sm6z]   { font-size: 13px; color: var(--muted); line-height: 1.6; }

/* ── Dasa Porutham ───────────────────────────────────────────────────────── */
.mr-poruttham-list[b-ai3796sm6z] { display: flex; flex-direction: column; gap: 8px; }
.mr-poruttham-row[b-ai3796sm6z]  {
    display: grid;
    grid-template-columns: 28px 160px 1fr;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    border-radius: var(--radius);
    border: 1px solid var(--border);
}
.mr-por-match[b-ai3796sm6z] { background: color-mix(in srgb, var(--success) 8%, var(--surface)); border-color: color-mix(in srgb, var(--success) 40%, var(--border)); }
.mr-por-fail[b-ai3796sm6z]  { background: color-mix(in srgb, var(--danger) 8%, var(--surface)); border-color: color-mix(in srgb, var(--danger) 30%, var(--border)); }
.mr-por-icon[b-ai3796sm6z]  { font-size: 16px; font-weight: 700; }
.mr-por-match .mr-por-icon[b-ai3796sm6z] { color: var(--success); }
.mr-por-fail  .mr-por-icon[b-ai3796sm6z] { color: var(--danger); }
.mr-por-name[b-ai3796sm6z]  { font-size: 14px; font-weight: 600; }
.mr-por-notes[b-ai3796sm6z] { font-size: 13px; color: var(--muted); line-height: 1.5; }
.mr-dasa-count[b-ai3796sm6z] { font-size: .8rem; font-weight: 700; padding: .2rem .6rem; border-radius: 10px; }

/* ── Papasamya ───────────────────────────────────────────────────────────── */
.mr-papa-compare[b-ai3796sm6z] { display: grid; grid-template-columns: 1fr auto 1fr; gap: 20px; align-items: start; margin-bottom: 18px; }
.mr-papa-person[b-ai3796sm6z]  { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius); padding: 18px; display: flex; flex-direction: column; gap: 7px; }
.mr-papa-label[b-ai3796sm6z]   { font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); }
.mr-papa-score[b-ai3796sm6z]   { font-size: 32px; font-weight: 800; font-variant-numeric: tabular-nums; color: var(--text); }
.mr-papa-detail[b-ai3796sm6z]  { font-size: 13px; color: var(--muted); line-height: 1.5; }
.mr-papa-vs[b-ai3796sm6z]      { font-size: 20px; color: var(--muted); align-self: center; }
.mr-papa-diff[b-ai3796sm6z]    { padding: 14px 18px; border-radius: var(--radius); font-size: 15px; font-weight: 600; border: 1px solid; }
.mr-diff-ok[b-ai3796sm6z]      { background: color-mix(in srgb, var(--success) 10%, var(--surface)); border-color: var(--success); color: var(--success); }
.mr-diff-warn[b-ai3796sm6z]    { background: color-mix(in srgb, var(--danger) 10%, var(--surface)); border-color: var(--danger); color: var(--danger); }

/* ── Mangal Dosha ────────────────────────────────────────────────────────── */
.mr-manglik-yes[b-ai3796sm6z] { color: #f87171; font-size: 18px; font-weight: 700; }
.mr-manglik-no[b-ai3796sm6z]  { color: #34d399; font-size: 18px; font-weight: 700; }
.mr-remedies-box[b-ai3796sm6z] { background: rgba(245,200,66,.06); border: 1px solid rgba(245,200,66,.25); border-radius: var(--radius); padding: 16px 18px; margin-top: 16px; }
.mr-remedies-label[b-ai3796sm6z] { font-size: 13px; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); font-weight: 700; margin-bottom: 8px; }
.mr-remedies-text[b-ai3796sm6z]  { font-size: 14px; color: var(--text); line-height: 1.7; }

/* ── Dual Charts ─────────────────────────────────────────────────────────── */
.mr-charts-section[b-ai3796sm6z] { }
.mr-dual-chart[b-ai3796sm6z] { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin-top: 16px; }
.mr-chart-box[b-ai3796sm6z]  { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.mr-chart-name[b-ai3796sm6z] { font-size: 15px; font-weight: 700; color: var(--text); text-align: center; padding: 8px 20px; background: var(--surface); border: 1px solid var(--border); border-radius: 20px; }

/* ── Synastry ────────────────────────────────────────────────────────────── */
.syn-overview[b-ai3796sm6z] { display: grid; grid-template-columns: 1fr auto 1fr; gap: 1.2rem; align-items: center; background: var(--surface); border: 1px solid var(--border); border-radius: 10px; padding: 1.1rem 1.4rem; margin-bottom: 1.2rem; }
.syn-person[b-ai3796sm6z]        { display: flex; flex-direction: column; gap: .3rem; font-size: 14px; }
.syn-person strong[b-ai3796sm6z] { font-size: 16px; font-weight: 700; }
.syn-person span[b-ai3796sm6z]   { color: var(--muted); }
.syn-theme[b-ai3796sm6z]         { text-align: center; }
.syn-band[b-ai3796sm6z]          { display: inline-block; padding: .3rem .9rem; border-radius: 20px; font-weight: 700; font-size: 14px; margin-bottom: .35rem; }
.syn-band-excellent[b-ai3796sm6z]   { background: color-mix(in srgb, var(--success) 20%, transparent); color: var(--success); }
.syn-band-good[b-ai3796sm6z]        { background: color-mix(in srgb, var(--success) 14%, transparent); color: color-mix(in srgb, var(--success) 80%, var(--text)); }
.syn-band-moderate[b-ai3796sm6z]    { background: color-mix(in srgb, var(--warning) 14%, transparent); color: var(--warning); }
.syn-band-challenging[b-ai3796sm6z] { background: color-mix(in srgb, var(--danger) 14%, transparent); color: var(--danger); }
.syn-key-theme[b-ai3796sm6z]     { font-size: 13px; color: var(--muted); font-style: italic; }
.syn-sc-row[b-ai3796sm6z]        { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; margin-bottom: 1.4rem; }
.syn-strengths[b-ai3796sm6z], .syn-challenges[b-ai3796sm6z] { background: var(--surface); border: 1px solid var(--border); border-radius: 10px; padding: 1.1rem 1.2rem; }
.syn-strengths h4[b-ai3796sm6z]  { color: var(--success); font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; margin: 0 0 .7rem; }
.syn-challenges h4[b-ai3796sm6z] { color: var(--danger); font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; margin: 0 0 .7rem; }
.syn-strengths p[b-ai3796sm6z], .syn-challenges p[b-ai3796sm6z] { font-size: 14px; margin: .35rem 0; color: var(--text); line-height: 1.6; }
.syn-subtitle[b-ai3796sm6z] { font-size: 15px; font-weight: 700; margin: 1.4rem 0 .7rem; border-bottom: 1px solid var(--border); padding-bottom: .4rem; color: var(--text); }
.syn-aspects-grid[b-ai3796sm6z] { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: .8rem; margin-bottom: 1.2rem; }
.syn-aspect-card[b-ai3796sm6z]  { border: 1px solid var(--border); border-left-width: 4px; border-radius: 8px; padding: .9rem 1.1rem; background: var(--surface); }
.syn-nature-harmonious[b-ai3796sm6z]  { border-left-color: var(--success); }
.syn-nature-mixed[b-ai3796sm6z]       { border-left-color: var(--warning); }
.syn-nature-challenging[b-ai3796sm6z] { border-left-color: var(--danger); }
.syn-aspect-header[b-ai3796sm6z] { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; margin-bottom: .45rem; font-size: 15px; font-weight: 700; }
.syn-conj-sym[b-ai3796sm6z]     { font-size: 13px; color: var(--muted); }
.syn-rasi-tag[b-ai3796sm6z]     { font-size: 14px; color: var(--muted); margin-left: auto; }
.syn-nature-badge[b-ai3796sm6z] { font-size: 13px; font-weight: 700; padding: .15rem .45rem; border-radius: 10px; }
.syn-nbadge-harmonious[b-ai3796sm6z]  { background: color-mix(in srgb, var(--success) 18%, transparent); color: var(--success); }
.syn-nbadge-mixed[b-ai3796sm6z]       { background: color-mix(in srgb, var(--warning) 14%, transparent); color: var(--warning); }
.syn-nbadge-challenging[b-ai3796sm6z] { background: color-mix(in srgb, var(--danger) 14%, transparent); color: var(--danger); }
.syn-aspect-text[b-ai3796sm6z]  { font-size: 14px; margin: 0; color: var(--muted); line-height: 1.65; }
.syn-overlay-grid[b-ai3796sm6z] { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: .7rem; margin-bottom: 1.2rem; }
.syn-overlay-card[b-ai3796sm6z] { background: var(--surface); border: 1px solid var(--border); border-radius: 8px; padding: .75rem .9rem; }
.syn-overlay-header[b-ai3796sm6z] { display: flex; align-items: center; gap: .45rem; margin-bottom: .3rem; }
.syn-ov-planet[b-ai3796sm6z]    { font-weight: 700; font-size: 15px; }
.syn-ov-rasi[b-ai3796sm6z]      { font-size: 13px; color: var(--muted); }
.syn-ov-house[b-ai3796sm6z]     { margin-left: auto; font-size: 14px; background: var(--surface2); padding: .15rem .4rem; border-radius: 4px; }
.syn-ov-theme[b-ai3796sm6z]     { font-size: 13px; color: var(--accent); text-transform: uppercase; letter-spacing: .05em; margin-bottom: .3rem; font-weight: 600; }
.syn-ov-text[b-ai3796sm6z]      { font-size: 13.5px; margin: 0; color: var(--muted); line-height: 1.6; }
.syn-disclaimer[b-ai3796sm6z]   { font-size: 13px; color: var(--muted); font-style: italic; border-top: 1px solid var(--border); padding-top: .6rem; margin-top: 1.2rem; }
.mr-western-badge[b-ai3796sm6z] { display: inline-block; background: #e8eaf6; color: #3949ab; font-size: .65rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: .1rem .4rem; border-radius: 10px; margin-left: .4rem; vertical-align: middle; }
.mr-pill-western[b-ai3796sm6z]  { border-color: #7986cb !important; opacity: .85; }
.mr-synastry-notice[b-ai3796sm6z] { background: #f3f4fd; border: 1px solid #c5cae9; border-left: 4px solid #7986cb; border-radius: 8px; padding: .75rem 1.1rem; margin-bottom: 1rem; font-size: 13px; color: #3949ab; line-height: 1.7; }

@media (max-width: 640px) {
    .mr-summary-row[b-ai3796sm6z] { flex-direction: column; }
    .mr-papa-compare[b-ai3796sm6z] { grid-template-columns: 1fr; }
    .mr-papa-vs[b-ai3796sm6z]      { text-align: center; }
    .syn-overview[b-ai3796sm6z] { grid-template-columns: 1fr; }
    .syn-sc-row[b-ai3796sm6z]   { grid-template-columns: 1fr; }
    .mr-dual-chart[b-ai3796sm6z] { grid-template-columns: 1fr; }
    .mr-tab-bar[b-ai3796sm6z] { gap: 4px; }
    .mr-tab[b-ai3796sm6z] { font-size: 14px; padding: 7px 12px; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .mr-tab[b-ai3796sm6z]         { min-height: 44px; padding: 10px 16px; font-size: .88rem; }
    /* Innovation #3: Score pills as donut-style gauge cards */
    .mr-score-pill[b-ai3796sm6z] {
        flex: 1 1 calc(50% - 6px);
        min-width: 0;
        border-radius: 14px;
        padding: 14px 12px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 6px;
        position: relative;
        overflow: hidden;
    }
    .mr-score-pill[b-ai3796sm6z]::before {
        content: '';
        position: absolute;
        inset: 0;
        background: conic-gradient(
            var(--accent) calc(var(--score, 0) * 1%),
            transparent 0
        );
        opacity: .1;
        border-radius: inherit;
    }
    .mr-summary-row[b-ai3796sm6z]  { flex-wrap: wrap; gap: 10px; padding: 14px 16px 0; }
    .mr-score-sys[b-ai3796sm6z]    { font-size: .72rem; }
    .mr-tab-bar[b-ai3796sm6z]      { padding: 12px 14px 0; gap: 4px; overflow-x: auto; flex-wrap: nowrap; }
    .mr-tab-bar[b-ai3796sm6z]::-webkit-scrollbar { display: none; }
    /* Innovation #6: Swipe-compare chart strip */
    .mr-charts-row[b-ai3796sm6z] {
        display: flex;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        gap: 0;
    }
    .mr-charts-row[b-ai3796sm6z]::-webkit-scrollbar { display: none; }
    .mr-chart-item[b-ai3796sm6z] {
        flex: 0 0 100%;
        scroll-snap-align: start;
    }
    /* Scroll fade cue (Innovation #7) */
    .mr-tab-bar-wrap[b-ai3796sm6z] { position: relative; }
    .mr-tab-bar-wrap[b-ai3796sm6z]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 28px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
    .cr-content[b-ai3796sm6z]    { padding: 14px 16px; }
    .mr-score-label[b-ai3796sm6z] { font-size: .76rem; text-align: center; }
}

/* ── Sambandha guidance cards (Rule Engine) ──────────────────────────────── */

.mr-guidance-grid[b-ai3796sm6z] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 14px;
    margin-top: 10px;
}

.mrg-card[b-ai3796sm6z] {
    border: 1px solid var(--border);
    border-radius: 10px;
    background: var(--surface);
    padding: 14px 16px;
    border-top: 3px solid var(--accent, #7c3aed);
}

.mrg-tone-supportive[b-ai3796sm6z] { border-top-color: var(--success, #2e7d52); }
.mrg-tone-cautionary[b-ai3796sm6z] { border-top-color: var(--danger, #b3452f); }

.mrg-headline[b-ai3796sm6z] { font-size: 15px; font-weight: 700; margin-bottom: 6px; }
.mrg-text[b-ai3796sm6z]     { font-size: 13.5px; line-height: 1.5; margin: 0 0 6px; }
.mrg-focus[b-ai3796sm6z]    { font-size: 13px; line-height: 1.5; margin: 0 0 6px; }
.mrg-caution[b-ai3796sm6z]  { font-size: 12.5px; color: var(--danger, #b3452f); margin: 0 0 6px; }

.mrg-notes[b-ai3796sm6z] { border-top: 1px dashed var(--border); padding-top: 6px; font-size: 12px; }
.mrg-notes summary[b-ai3796sm6z] { cursor: pointer; color: var(--muted); font-weight: 600; }
.mrg-notes p[b-ai3796sm6z] { margin: 6px 0 0; color: var(--muted); }
/* /Pages/MyOrders.razor.rz.scp.css */
/* ── Layout ─────────────────────────────────────────────────────────────── */
.ord-container[b-3tfndqz3ua] {
    max-width: 860px;
    margin: 0 auto;
    padding: 24px 16px;
}

@media (max-width: 767px) {
    .ord-container[b-3tfndqz3ua] {
        padding-bottom: calc(var(--bottom-nav-h, 62px) + 2rem);
    }
}

.ord-heading[b-3tfndqz3ua] {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 4px;
}

.ord-subheading[b-3tfndqz3ua] {
    color: var(--muted);
    margin-bottom: 24px;
}

/* ── States ─────────────────────────────────────────────────────────────── */
.ord-state[b-3tfndqz3ua] {
    text-align: center;
    padding: 40px;
    color: var(--muted);
}

.ord-empty[b-3tfndqz3ua] {
    text-align: center;
    padding: 48px;
    background: var(--surface2);
    border-radius: 12px;
}

.ord-empty-icon[b-3tfndqz3ua] {
    font-size: 36px;
    margin-bottom: 12px;
}

.ord-empty-title[b-3tfndqz3ua] {
    font-weight: 600;
    margin-bottom: 8px;
}

.ord-empty-text[b-3tfndqz3ua] {
    color: var(--muted);
    margin-bottom: 20px;
}

.ord-btn-primary[b-3tfndqz3ua] {
    display: inline-block;
    text-decoration: none;
    padding: 10px 24px;
    background: var(--accent);
    color: #fff;
    border-radius: var(--radius, 8px);
    font-weight: 600;
    font-size: 14px;
}

/* ── Table wrapper ──────────────────────────────────────────────────────── */
.ord-table-wrap[b-3tfndqz3ua] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
}

.ord-table-scroll[b-3tfndqz3ua] {
    overflow-x: auto;
}

/* ── Table ──────────────────────────────────────────────────────────────── */
.ord-table[b-3tfndqz3ua] {
    width: 100%;
    border-collapse: collapse;
}

.ord-thead-row[b-3tfndqz3ua] {
    background: color-mix(in srgb, var(--accent) 8%, var(--surface));
}

.ord-th[b-3tfndqz3ua] {
    padding: 12px 16px;
    text-align: left;
    font-size: 12px;
    font-weight: 600;
    color: var(--muted);
}

.ord-th--right[b-3tfndqz3ua] {
    text-align: right;
}

.ord-th--center[b-3tfndqz3ua] {
    text-align: center;
}

.ord-tr[b-3tfndqz3ua] {
    border-top: 1px solid var(--border);
}

.ord-td[b-3tfndqz3ua] {
    padding: 14px 16px;
    font-size: 13px;
}

.ord-td--center[b-3tfndqz3ua] {
    text-align: center;
}

.ord-td--right[b-3tfndqz3ua] {
    text-align: right;
}

/* ── Cell variants ──────────────────────────────────────────────────────── */
.ord-date[b-3tfndqz3ua] {
    color: var(--muted);
    white-space: nowrap;
}

.ord-plan[b-3tfndqz3ua] {
    font-weight: 500;
}

.ord-amount[b-3tfndqz3ua] {
    text-align: right;
    font-weight: 600;
}

.ord-dash[b-3tfndqz3ua] {
    color: var(--muted);
}

/* ── Status badges ──────────────────────────────────────────────────────── */
.ord-badge[b-3tfndqz3ua] {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
}

.ord-badge--paid[b-3tfndqz3ua] {
    background: color-mix(in srgb, var(--success) 15%, transparent);
    color: var(--success);
}

.ord-badge--refunded[b-3tfndqz3ua] {
    background: var(--surface2);
    color: var(--text);
    font-weight: 400;
}

.ord-badge--pending[b-3tfndqz3ua] {
    background: color-mix(in srgb, var(--warning) 15%, transparent);
    color: var(--warning);
}

/* ── PDF link ───────────────────────────────────────────────────────────── */
.ord-pdf-link[b-3tfndqz3ua] {
    color: var(--accent);
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
}

/* ── Pagination ─────────────────────────────────────────────────────────── */
.ord-pagination[b-3tfndqz3ua] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
}

.ord-page-btn[b-3tfndqz3ua] {
    padding: 8px 20px;
    border: 1px solid var(--border);
    border-radius: var(--radius, 8px);
    background: var(--surface);
    color: var(--text);
    cursor: pointer;
    font-size: 13px;
}

.ord-page-btn:disabled[b-3tfndqz3ua] {
    opacity: 0.4;
    cursor: not-allowed;
}

.ord-page-label[b-3tfndqz3ua] {
    padding: 8px 16px;
    color: var(--muted);
    font-size: 13px;
}
/* /Pages/MyReports.razor.rz.scp.css */
/* ── My Reports page ────────────────────────────────────────────────────── */

.mr-wrap[b-9fzrron0aq] {
    max-width: 720px;
    margin: 0 auto;
    padding: 28px 16px 5rem;
}

/* Header */
.mr-header[b-9fzrron0aq]  { margin-bottom: 28px; }
.mr-title[b-9fzrron0aq]   {
    font-size: 1.4rem;
    font-weight: 700;
    margin: 0 0 6px;
    font-family: var(--font-display, 'Cinzel', serif);
    color: var(--text);
}
.mr-subtitle[b-9fzrron0aq] { font-size: 0.84rem; color: var(--muted); margin: 0; }

/* Gate */
.mr-gate[b-9fzrron0aq] {
    padding: 18px;
    border-radius: 12px;
    border: 1px solid var(--border);
    background: var(--surface);
    font-size: 0.9rem;
}
.mr-gate a[b-9fzrron0aq] { color: var(--accent); }

/* Section label */
.mr-section-label[b-9fzrron0aq] {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.13em;
    color: var(--muted);
    margin: 0 0 10px;
}

/* Generate grid */
.mr-gen-grid[b-9fzrron0aq] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 28px;
}

@media (max-width: 520px) {
    .mr-gen-grid[b-9fzrron0aq] { grid-template-columns: 1fr; }
}

.mr-gen-card[b-9fzrron0aq] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 16px;
    border-radius: 14px;
    border: 1.5px solid var(--border);
    background: var(--surface);
    transition: border-color .15s, box-shadow .15s;
}
.mr-gen-card:hover:not(.mr-gen-card--locked)[b-9fzrron0aq] {
    border-color: var(--accent);
    box-shadow: 0 2px 12px rgba(0,0,0,.06);
}
.mr-gen-card--locked[b-9fzrron0aq] { opacity: 0.65; }

.mr-gen-icon[b-9fzrron0aq] { font-size: 1.5rem; line-height: 1; }
.mr-gen-body[b-9fzrron0aq] { flex: 1; }
.mr-gen-name[b-9fzrron0aq] { font-size: 0.88rem; font-weight: 700; color: var(--text); margin-bottom: 3px; }
.mr-gen-desc[b-9fzrron0aq] { font-size: 0.74rem; color: var(--muted); line-height: 1.45; }
.mr-gen-tier[b-9fzrron0aq] {
    display: inline-block;
    margin-top: 5px;
    padding: 2px 8px;
    border-radius: 8px;
    background: var(--surface2);
    border: 1px solid var(--border);
    font-size: 0.65rem;
    color: var(--muted);
    font-weight: 600;
}
.mr-gen-btn[b-9fzrron0aq] {
    display: inline-block;
    padding: 7px 14px;
    border-radius: 8px;
    font-size: 0.78rem;
    font-weight: 600;
    text-decoration: none;
    background: var(--accent, #e5a32d);
    color: #fff;
    text-align: center;
    transition: opacity .15s;
    align-self: flex-start;
}
.mr-gen-btn:hover[b-9fzrron0aq] { opacity: 0.88; }
.mr-gen-btn--upgrade[b-9fzrron0aq] {
    background: transparent;
    border: 1.5px solid var(--border);
    color: var(--muted);
}

/* Loading */
.mr-loading[b-9fzrron0aq] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 20px 0;
    font-size: 0.84rem;
    color: var(--muted);
}
.mr-spinner[b-9fzrron0aq] {
    width: 18px;
    height: 18px;
    border: 2px solid var(--border);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: spin-b-9fzrron0aq .8s linear infinite;
}
@keyframes spin-b-9fzrron0aq { to { transform: rotate(360deg); } }

/* Generic card */
.mr-card[b-9fzrron0aq] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 18px 20px;
    margin-bottom: 10px;
}
.mr-card--error[b-9fzrron0aq] { border-color: rgba(214,77,114,.3); }
.mr-hint[b-9fzrron0aq] { font-size: 0.82rem; color: var(--muted); line-height: 1.55; margin: 0; }

/* Jobs list */
.mr-jobs[b-9fzrron0aq] { display: flex; flex-direction: column; gap: 10px; margin-bottom: 14px; }
.mr-job[b-9fzrron0aq] {
    background: var(--surface);
    border: 1.5px solid var(--border);
    border-radius: 14px;
    padding: 16px 18px;
    transition: border-color .15s;
}
.mr-job--done[b-9fzrron0aq]      { border-color: rgba(76,175,120,.35); }
.mr-job--rendering[b-9fzrron0aq] { border-color: rgba(229,163,45,.35); }
.mr-job--failed[b-9fzrron0aq]    { border-color: rgba(214,77,114,.35); }

.mr-job-head[b-9fzrron0aq] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
}
.mr-job-icon[b-9fzrron0aq] { font-size: 1.4rem; flex-shrink: 0; }
.mr-job-meta[b-9fzrron0aq] { flex: 1; min-width: 0; }
.mr-job-type[b-9fzrron0aq] { font-size: 0.86rem; font-weight: 700; color: var(--text); text-transform: capitalize; }
.mr-job-id[b-9fzrron0aq]   { font-size: 0.68rem; color: var(--muted); margin-top: 2px; font-family: monospace; }

.mr-job-status-pill[b-9fzrron0aq] {
    flex-shrink: 0;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 4px;
}
.mr-job-status-pill--done[b-9fzrron0aq]      { background: rgba(76,175,120,.15);  color: #4caf78; }
.mr-job-status-pill--rendering[b-9fzrron0aq] { background: rgba(229,163,45,.15);  color: var(--accent); }
.mr-job-status-pill--queued[b-9fzrron0aq]    { background: var(--surface2);        color: var(--muted); border:1px solid var(--border); }
.mr-job-status-pill--failed[b-9fzrron0aq]    { background: rgba(214,77,114,.12);   color: var(--danger, #d64d72); }

.mr-download-btn[b-9fzrron0aq] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    border-radius: 9px;
    background: #4caf78;
    color: #fff;
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
    transition: opacity .15s;
}
.mr-download-btn:hover[b-9fzrron0aq] { opacity: 0.88; }

.mr-job-progress[b-9fzrron0aq] {
    height: 4px;
    border-radius: 2px;
    background: var(--surface2);
    overflow: hidden;
    margin-bottom: 8px;
}
.mr-job-bar[b-9fzrron0aq] {
    height: 100%;
    background: var(--accent);
    border-radius: 2px;
    animation: progress-pulse-b-9fzrron0aq 1.8s ease-in-out infinite;
    width: 60%;
}
@keyframes progress-pulse-b-9fzrron0aq {
    0%   { opacity: 1; width: 30%; }
    50%  { opacity: .7; width: 80%; }
    100% { opacity: 1; width: 30%; }
}
.mr-job-note[b-9fzrron0aq]  { font-size: 0.76rem; color: var(--muted); margin: 0; }
.mr-job-error[b-9fzrron0aq] { font-size: 0.76rem; color: var(--danger, #d64d72); margin: 0; }

/* Refresh button */
.mr-refresh-btn[b-9fzrron0aq] {
    padding: 8px 18px;
    border-radius: 9px;
    border: 1.5px solid var(--border);
    background: transparent;
    color: var(--muted);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: border-color .15s, color .15s;
}
.mr-refresh-btn:hover:not(:disabled)[b-9fzrron0aq] { border-color: var(--accent); color: var(--accent); }
.mr-refresh-btn:disabled[b-9fzrron0aq] { opacity: 0.5; cursor: default; }

/* Empty state */
.mr-empty[b-9fzrron0aq] {
    padding: 36px 24px;
    border-radius: 14px;
    border: 1.5px dashed var(--border);
    background: var(--surface);
    text-align: center;
}
.mr-empty-icon[b-9fzrron0aq]  { font-size: 2.4rem; margin-bottom: 10px; }
.mr-empty-title[b-9fzrron0aq] { font-size: 1rem; font-weight: 700; color: var(--text); margin-bottom: 8px; }
.mr-empty-sub[b-9fzrron0aq]   { font-size: 0.82rem; color: var(--muted); margin-bottom: 14px; line-height: 1.5; }
.mr-empty-note[b-9fzrron0aq]  {
    font-size: 0.76rem;
    color: var(--muted);
    line-height: 1.5;
    background: var(--surface2);
    border-radius: 8px;
    padding: 10px 14px;
    text-align: left;
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .mr-wrap[b-9fzrron0aq] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
}

/* Recent downloads */
.mr-recent[b-9fzrron0aq] { display: flex; flex-direction: column; gap: 8px; }
.mr-recent-item[b-9fzrron0aq] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    border-radius: 10px;
    border: 1px solid var(--border);
    background: var(--surface);
}
.mr-recent-icon[b-9fzrron0aq] { font-size: 1.1rem; flex-shrink: 0; }
.mr-recent-body[b-9fzrron0aq] { flex: 1; min-width: 0; }
.mr-recent-name[b-9fzrron0aq] { font-size: 0.82rem; font-weight: 600; color: var(--text); }
.mr-recent-date[b-9fzrron0aq] { font-size: 0.68rem; color: var(--muted); margin-top: 1px; }
.mr-recent-link[b-9fzrron0aq] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--accent);
    text-decoration: none;
    white-space: nowrap;
}
.mr-recent-link:hover[b-9fzrron0aq] { text-decoration: underline; }
/* /Pages/NotFound.razor.rz.scp.css */
.nf-wrap[b-jvnodoh0yh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: calc(100dvh - var(--header-h, 56px));
    padding: 40px 24px calc(var(--bottom-nav-h, 62px) + 40px);
    gap: 12px;
}
.nf-code[b-jvnodoh0yh] {
    font-family: var(--font-display);
    font-size: 5rem;
    font-weight: 700;
    color: var(--accent);
    line-height: 1;
    margin: 0;
}
.nf-heading[b-jvnodoh0yh] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text);
    margin: 0;
}
.nf-body[b-jvnodoh0yh] {
    font-size: 0.92rem;
    color: var(--muted);
    line-height: 1.65;
    max-width: 380px;
    margin: 0;
}
.nf-links[b-jvnodoh0yh] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-top: 8px;
}
.nf-link[b-jvnodoh0yh] {
    padding: 10px 22px;
    border-radius: var(--radius, 8px);
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
    text-decoration: none;
    font-size: 0.88rem;
    transition: border-color 120ms, background 120ms;
}
.nf-link:hover[b-jvnodoh0yh] { border-color: var(--accent); background: var(--surface2); }
.nf-link--primary[b-jvnodoh0yh] {
    background: var(--accent);
    color: #fff;
    border-color: var(--accent);
}
.nf-link--primary:hover[b-jvnodoh0yh] { opacity: 0.88; background: var(--accent); }
/* /Pages/PaymentReturnPage.razor.rz.scp.css */
.pay-return-wrap[b-dzycpmx256] {
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}
.pay-return-card[b-dzycpmx256] {
    text-align: center;
    max-width: 400px;
    width: 100%;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 48px 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}
.pay-return-spinner[b-dzycpmx256] { width: 56px; height: 56px; position: relative; }
.pay-return-ring[b-dzycpmx256] {
    width: 100%; height: 100%;
    border: 4px solid var(--border);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: pay-spin-b-dzycpmx256 0.9s linear infinite;
}
@keyframes pay-spin-b-dzycpmx256 { to { transform: rotate(360deg); } }
.pay-return-icon[b-dzycpmx256] {
    width: 64px; height: 64px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 28px; font-weight: 700;
}
.pay-return-icon--ok[b-dzycpmx256]  { background: rgba(52,211,153,.15); color: #34d399; }
.pay-return-icon--err[b-dzycpmx256] { background: rgba(239,68,68,.15);  color: #ef4444; }
.pay-return-title[b-dzycpmx256]  { font-size: 20px; font-weight: 700; color: var(--text); margin: 0; }
.pay-return-status[b-dzycpmx256] { font-size: 14px; color: var(--muted); margin: 0; }
.pay-return-btn[b-dzycpmx256] {
    display: inline-block;
    padding: 11px 24px;
    border-radius: 10px;
    font-size: 14px; font-weight: 700;
    background: #6366f1; color: #fff;
    text-decoration: none;
    transition: background .15s;
}
.pay-return-btn:hover[b-dzycpmx256] { background: #4f46e5; }
.pay-return-btn--ghost[b-dzycpmx256] {
    background: transparent;
    border: 1px solid var(--border);
    color: var(--muted);
}
.pay-return-btn--ghost:hover[b-dzycpmx256] { background: rgba(255,255,255,.06); }

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .pay-return-wrap[b-dzycpmx256] { padding: 16px; align-items: flex-start; padding-top: 48px; }
    .pay-return-card[b-dzycpmx256] { padding: 36px 20px; border-radius: 14px; }
    .pay-return-title[b-dzycpmx256]  { font-size: 18px; }
    .pay-return-status[b-dzycpmx256] { font-size: 13px; }
    .pay-return-btn[b-dzycpmx256]    { padding: 12px 20px; font-size: 14px; min-height: 48px; width: 100%; text-align: center; }
}
/* /Pages/PitruPakshaPage.razor.rz.scp.css */
.pp-wrap[b-8f75de22ii] {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 16px 80px;
}

.pp-header[b-8f75de22ii] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0 16px;
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 32px;
}

.pp-logo[b-8f75de22ii] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-accent);
    text-decoration: none;
}

.pp-hero[b-8f75de22ii] {
    margin-bottom: 28px;
}

.pp-title[b-8f75de22ii] {
    font-size: 1.85rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 10px;
    line-height: 1.25;
}

.pp-sub[b-8f75de22ii] {
    color: var(--color-muted);
    line-height: 1.65;
    margin: 0;
}

/* Finder */
.pp-finder[b-8f75de22ii] {
    padding: 24px;
    border-radius: 10px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    margin-bottom: 32px;
}

.pp-finder-title[b-8f75de22ii] {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 16px;
}

.pp-finder-row[b-8f75de22ii] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: flex-end;
}

.pp-field[b-8f75de22ii] {
    display: flex;
    flex-direction: column;
    gap: 5px;
    flex: 1;
    min-width: 260px;
}

.pp-field label[b-8f75de22ii] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.pp-field select[b-8f75de22ii] {
    padding: 9px 12px;
    border-radius: 6px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.9rem;
}

/* Result */
.pp-result[b-8f75de22ii] {
    margin-top: 16px;
    padding: 16px;
    border-radius: 8px;
    border: 2px solid var(--color-accent);
    background: color-mix(in srgb, var(--color-accent) 6%, transparent);
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.pp-result-date[b-8f75de22ii] {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--color-text);
    display: flex;
    align-items: center;
    gap: 10px;
}

.pp-result-day[b-8f75de22ii] {
    font-size: 0.85rem;
    font-weight: 400;
    color: var(--color-muted);
}

.pp-result-tithi[b-8f75de22ii] {
    font-size: 0.88rem;
    color: var(--color-accent);
    font-weight: 600;
}

.pp-badge[b-8f75de22ii] {
    display: inline-block;
    padding: 4px 12px;
    border-radius: 12px;
    font-size: 0.78rem;
    font-weight: 600;
}

.pp-badge-matri[b-8f75de22ii]   { background: color-mix(in srgb, var(--danger) 12%, transparent); color: var(--danger); }
.pp-badge-ghata[b-8f75de22ii]   { background: color-mix(in srgb, var(--warning) 12%, transparent); color: var(--warning); }
.pp-badge-mahalaya[b-8f75de22ii] { background: color-mix(in srgb, var(--accent2) 12%, transparent); color: var(--accent2); }

.pp-result-note[b-8f75de22ii] {
    font-size: 0.85rem;
    color: var(--color-muted);
    margin: 0;
    line-height: 1.55;
}

.pp-result-cta[b-8f75de22ii] {
    display: inline-block;
    align-self: flex-start;
    padding: 6px 16px;
    border-radius: 6px;
    background: var(--color-accent);
    color: #fff;
    font-size: 0.83rem;
    font-weight: 600;
    text-decoration: none;
}

/* Calendar header */
.pp-cal-header[b-8f75de22ii] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.pp-cal-header h2[b-8f75de22ii] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0;
}

.pp-cal-meta[b-8f75de22ii] {
    display: flex;
    gap: 20px;
    font-size: 0.82rem;
    color: var(--color-muted);
}

.pp-cal-meta strong[b-8f75de22ii] { color: var(--color-text); }

/* Table */
.pp-table-wrap[b-8f75de22ii] {
    overflow-x: auto;
    border-radius: 8px;
    border: 1px solid var(--color-border);
    margin-bottom: 28px;
}

.pp-table[b-8f75de22ii] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.88rem;
}

.pp-table th[b-8f75de22ii] {
    padding: 10px 12px;
    text-align: left;
    font-size: 0.73rem;
    font-weight: 600;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    background: var(--color-surface);
    border-bottom: 1px solid var(--color-border);
    white-space: nowrap;
}

.pp-table td[b-8f75de22ii] {
    padding: 9px 12px;
    border-bottom: 1px solid var(--color-border);
    color: var(--color-text);
}

.pp-row:last-child td[b-8f75de22ii] { border-bottom: none; }
.pp-row:hover[b-8f75de22ii] { background: color-mix(in srgb, var(--color-accent) 3%, transparent); }

.pp-row-hi[b-8f75de22ii] {
    background: color-mix(in srgb, var(--color-accent) 8%, transparent) !important;
}

.pp-row-mahalaya .pp-date[b-8f75de22ii],
.pp-row-mahalaya .pp-day-num[b-8f75de22ii] {
    font-weight: 700;
    color: var(--color-accent);
}

.pp-day-num[b-8f75de22ii] {
    font-variant-numeric: tabular-nums;
    color: var(--color-muted);
    font-size: 0.82rem;
}

.pp-date[b-8f75de22ii] { font-weight: 600; white-space: nowrap; }

.pp-shradha-for[b-8f75de22ii] {
    font-size: 0.82rem;
    color: var(--color-muted);
    max-width: 320px;
}

.pp-tag[b-8f75de22ii] {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 8px;
    border-radius: 10px;
    font-size: 0.7rem;
    font-weight: 600;
}

.pp-tag-matri[b-8f75de22ii]    { background: color-mix(in srgb, var(--danger) 12%, transparent); color: var(--danger); }
.pp-tag-ghata[b-8f75de22ii]    { background: color-mix(in srgb, var(--warning) 12%, transparent); color: var(--warning); }
.pp-tag-mahalaya[b-8f75de22ii] { background: color-mix(in srgb, var(--accent2) 12%, transparent); color: var(--accent2); }

/* FAQ */
.pp-faq[b-8f75de22ii] { margin-top: 28px; }

.pp-faq h3[b-8f75de22ii] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 12px;
}

.pp-faq-item[b-8f75de22ii] {
    border-bottom: 1px solid var(--color-border);
    padding: 10px 0;
}

.pp-faq-item summary[b-8f75de22ii] {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--color-text);
    cursor: pointer;
    list-style: none;
}

.pp-faq-item summary[b-8f75de22ii]::-webkit-details-marker { display: none; }
.pp-faq-item summary[b-8f75de22ii]::before { content: "+ "; color: var(--color-accent); }
.pp-faq-item[open] summary[b-8f75de22ii]::before { content: "– "; }

.pp-faq-item p[b-8f75de22ii] {
    margin: 8px 0 2px;
    font-size: 0.87rem;
    color: var(--color-muted);
    line-height: 1.65;
}

.pp-state[b-8f75de22ii] {
    text-align: center;
    padding: 48px 0;
    color: var(--color-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 0.9rem;
}

.pp-error[b-8f75de22ii] { color: var(--danger); }

@media (max-width: 600px) {
    .pp-title[b-8f75de22ii] { font-size: 1.45rem; }
    .pp-cal-meta[b-8f75de22ii] { flex-direction: column; gap: 4px; }
    .pp-shradha-for[b-8f75de22ii] { max-width: 200px; }
}
/* /Pages/PlannerPage.razor.rz.scp.css */
.pl-wrap[b-jkxdsjfmel] {
    max-width: 760px;
    margin: 0 auto;
    padding: 24px 16px 72px;
}

.pl-header[b-jkxdsjfmel] {
    margin-bottom: 28px;
}

.pl-title[b-jkxdsjfmel] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 6px;
}

.pl-subtitle[b-jkxdsjfmel] {
    font-size: 0.9rem;
    color: var(--color-muted);
    margin: 0;
    line-height: 1.5;
}

.pl-gate[b-jkxdsjfmel] {
    color: var(--color-muted);
    text-align: center;
    padding: 48px 0;
}

/* Tabs */

.pl-tabs[b-jkxdsjfmel] {
    display: flex;
    gap: 4px;
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 24px;
}

.pl-tab[b-jkxdsjfmel] {
    padding: 8px 20px;
    border: none;
    background: none;
    color: var(--color-muted);
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    transition: color 0.15s, border-color 0.15s;
}

.pl-tab--active[b-jkxdsjfmel] {
    color: var(--color-accent);
    border-bottom-color: var(--color-accent);
}

.pl-hora-desc[b-jkxdsjfmel] {
    font-size: 0.85rem;
    color: var(--color-muted);
    margin: 0 0 16px;
    line-height: 1.55;
}

/* Form */

.pl-form-section[b-jkxdsjfmel] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 10px;
    padding: 24px;
    margin-bottom: 32px;
}

.pl-form[b-jkxdsjfmel] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 20px;
}

@media (max-width: 540px) {
    .pl-form[b-jkxdsjfmel] { grid-template-columns: 1fr; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .pl-wrap[b-jkxdsjfmel] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .pl-tab[b-jkxdsjfmel]         { min-height: 44px; padding: 10px 22px; font-size: .92rem; }
    .pl-pdf-btn[b-jkxdsjfmel]     { min-height: 44px; padding: 10px 20px; }
    .pl-btn-search[b-jkxdsjfmel]  { min-height: 44px; width: 100%; }
    .pl-tab-bar[b-jkxdsjfmel]     { overflow-x: auto; flex-wrap: nowrap; }
    .pl-tab-bar[b-jkxdsjfmel]::-webkit-scrollbar { display: none; }
    /* Fade cue (Innovation #7) */
    .pl-tab-bar-wrap[b-jkxdsjfmel] { position: relative; }
    .pl-tab-bar-wrap[b-jkxdsjfmel]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 28px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
    .pl-controls[b-jkxdsjfmel]    { padding: 14px 16px; }
}

.pl-label[b-jkxdsjfmel] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 0.85rem;
    color: var(--color-muted);
    font-weight: 500;
}

.pl-select[b-jkxdsjfmel] {
    padding: 8px 10px;
    border-radius: 6px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.9rem;
}

.pl-btn-search[b-jkxdsjfmel] {
    padding: 10px 24px;
    border-radius: 6px;
    border: none;
    background: var(--color-accent);
    color: #fff;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.15s;
}

.pl-btn-search:disabled[b-jkxdsjfmel] {
    opacity: 0.6;
    cursor: not-allowed;
}

.pl-error[b-jkxdsjfmel] {
    color: #ef4444;
    font-size: 0.85rem;
    margin: 12px 0 0;
}

/* Results */

.pl-results-title[b-jkxdsjfmel] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 4px;
}

.pl-results-range[b-jkxdsjfmel] {
    font-size: 0.8rem;
    color: var(--color-muted);
    margin: 0 0 20px;
}

/* Cards */

.pl-card[b-jkxdsjfmel] {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-left: 4px solid var(--color-border);
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 16px;
    transition: border-left-color 0.2s;
}

.pl-card--excellent[b-jkxdsjfmel] { border-left-color: #22c55e; }
.pl-card--good[b-jkxdsjfmel]      { border-left-color: var(--color-accent, #D4AF37); }

.pl-card-head[b-jkxdsjfmel] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px;
}

.pl-date[b-jkxdsjfmel] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-text);
    display: block;
}

.pl-dayname[b-jkxdsjfmel] {
    font-size: 0.8rem;
    color: var(--color-muted);
}

.pl-score-pill[b-jkxdsjfmel] {
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--color-accent);
    line-height: 1;
}

.pl-score-denom[b-jkxdsjfmel] {
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--color-muted);
    margin-left: 2px;
}

.pl-panchanga[b-jkxdsjfmel] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 14px;
}

.pl-tag[b-jkxdsjfmel] {
    background: var(--color-border);
    color: var(--color-text);
    border-radius: 4px;
    padding: 3px 9px;
    font-size: 0.78rem;
    font-weight: 500;
}

.pl-detail-row[b-jkxdsjfmel] {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 6px;
    font-size: 0.82rem;
}

.pl-detail-label[b-jkxdsjfmel] {
    color: var(--color-muted);
    min-width: 90px;
}

.pl-detail-value[b-jkxdsjfmel] {
    color: var(--color-text);
    font-weight: 500;
}

.pl-detail-value--caution[b-jkxdsjfmel] {
    color: #f59e0b;
}

.pl-detail-sep[b-jkxdsjfmel] {
    color: var(--color-muted);
}

.pl-highlights[b-jkxdsjfmel] {
    margin: 12px 0 0;
    padding-left: 18px;
    list-style: disc;
    font-size: 0.82rem;
    color: var(--color-text);
    line-height: 1.7;
}

.pl-cautions[b-jkxdsjfmel] {
    margin: 6px 0 0;
    padding-left: 18px;
    list-style: disc;
    font-size: 0.82rem;
    color: #f59e0b;
    line-height: 1.7;
}

.pl-pdf-row[b-jkxdsjfmel] {
    margin-top: 16px;
}

.pl-pdf-btn[b-jkxdsjfmel] {
    display: inline-block;
    padding: 8px 18px;
    border-radius: 6px;
    border: 1px solid var(--color-accent, #D4AF37);
    color: var(--color-accent, #D4AF37);
    font-size: 0.85rem;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
}

.pl-pdf-btn:hover[b-jkxdsjfmel] {
    background: var(--color-accent, #D4AF37);
    color: #fff;
}

.pl-upsell[b-jkxdsjfmel] {
    margin-top: 12px;
    font-size: 0.8rem;
    color: var(--color-muted);
}

.pl-upsell a[b-jkxdsjfmel] {
    color: var(--color-accent);
    text-decoration: none;
}
/* /Pages/Portal.razor.rz.scp.css */
/* ── User Portal ──────────────────────────────────────────────────────────── */

.pt-wrap[b-0p4crqll87] {
    min-height: 100vh;
    background: var(--bg);
    color: var(--text);
}

/* Header removed — AppHeader component handles site nav */

/* ── Container ────────────────────────────────────────────────────────────── */
.pt-container[b-0p4crqll87] {
    max-width: 900px;
    margin: 0 auto;
    padding: 32px 20px 60px;
}

.pt-page-title h1[b-0p4crqll87] {
    font-size: 26px;
    font-weight: 700;
    color: var(--text);
    margin: 0 0 6px;
}
.pt-sub[b-0p4crqll87] {
    font-size: 14px;
    color: var(--muted);
    margin: 0 0 12px;
}

/* Quota callout */
.pt-quota[b-0p4crqll87] {
    position: relative; overflow: hidden;
    display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
    margin: 0 0 20px;
    padding: 7px 12px;
    border-radius: 8px;
    border: 1px solid var(--border);
    background: var(--surface2);
    font-size: 14px; color: var(--muted);
}
.pt-quota--warn[b-0p4crqll87] {
    border-color: color-mix(in srgb, #f59e0b 40%, var(--border));
    background: color-mix(in srgb, #f59e0b 6%, var(--surface));
    color: var(--text);
}
.pt-quota--full[b-0p4crqll87] {
    border-color: color-mix(in srgb, #ef4444 40%, var(--border));
    background: color-mix(in srgb, #ef4444 6%, var(--surface));
    color: var(--text);
}
.pt-quota-bar[b-0p4crqll87] {
    position: absolute; top: 0; left: 0; height: 2px;
    background: #f59e0b; border-radius: 8px 8px 0 0;
    transition: width .3s;
}
.pt-quota--full .pt-quota-bar[b-0p4crqll87] { background: #ef4444; }
.pt-quota-text[b-0p4crqll87] { flex: 1; }
.pt-quota-cta[b-0p4crqll87] {
    font-size: 13px; font-weight: 700; color: var(--accent);
    text-decoration: none; white-space: nowrap;
}
.pt-quota-cta:hover[b-0p4crqll87] { text-decoration: underline; }

.pt-error[b-0p4crqll87] {
    background: rgba(220,38,38,.1);
    color: #fca5a5;
    border-radius: 8px;
    padding: 12px 14px;
    margin-bottom: 20px;
    font-size: 13.5px;
}
.pt-empty[b-0p4crqll87] {
    text-align: center;
    color: var(--muted);
    padding: 32px;
    font-size: 14px;
}
.pt-loading[b-0p4crqll87] { display: flex; justify-content: center; padding: 32px; }

/* ── Profile cards ────────────────────────────────────────────────────────── */
/* Sheet trigger — hidden on desktop, visible only in mobile block */
.pt-sheet-trigger[b-0p4crqll87] { display: none; }

.pt-profile-grid[b-0p4crqll87] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
    margin-bottom: 32px;
}

.pt-card[b-0p4crqll87] {
    background: var(--surface, rgba(255,255,255,.05));
    border: 1px solid var(--border, rgba(255,255,255,.08));
    border-radius: 12px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.pt-card-top[b-0p4crqll87] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.pt-card-name[b-0p4crqll87] {
    font-size: 16px;
    font-weight: 700;
    color: var(--text);
}
.pt-card-full[b-0p4crqll87] {
    font-size: 13px;
    color: var(--muted);
    margin-top: 2px;
}
.pt-delete-btn[b-0p4crqll87] {
    background: none;
    border: none;
    color: var(--muted);
    cursor: pointer;
    font-size: 14px;
    padding: 2px 6px;
    border-radius: 4px;
    transition: color .15s, background .15s;
    flex-shrink: 0;
}
.pt-delete-btn:hover[b-0p4crqll87] { color: #f87171; background: rgba(248,113,113,.1); }

.pt-card-meta[b-0p4crqll87] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 12.5px;
    color: var(--muted);
}
.pt-tag[b-0p4crqll87] {
    background: rgba(99,102,241,.15);
    color: #a5b4fc;
    border-radius: 4px;
    padding: 2px 7px;
    font-size: 13px;
    font-weight: 500;
}
.pt-tag-approx[b-0p4crqll87] { background: rgba(245,197,66,.1); color: #fbbf24; }

.pt-view-btn[b-0p4crqll87] {
    display: inline-block;
    padding: 8px 14px;
    background: #6366f1;
    color: #fff;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    text-align: center;
    transition: background .15s;
    margin-top: 4px;
}
.pt-view-btn:hover[b-0p4crqll87] { background: #4f46e5; }

/* ── Delete modal ─────────────────────────────────────────────────────────── */
.pt-modal-backdrop[b-0p4crqll87] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
}
.pt-modal[b-0p4crqll87] {
    background: var(--surface, #1e1e2e);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px;
    max-width: 380px;
    width: 90%;
}
.pt-modal h3[b-0p4crqll87] { margin: 0 0 10px; font-size: 18px; }
.pt-modal p[b-0p4crqll87]  { color: var(--muted); font-size: 14px; margin-bottom: 18px; }
.pt-modal-actions[b-0p4crqll87] { display: flex; gap: 10px; justify-content: flex-end; }
.pt-delete-confirm-btn[b-0p4crqll87] {
    background: #dc2626;
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 8px 18px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
}
.pt-delete-confirm-btn:disabled[b-0p4crqll87] { opacity: .6; }
.pt-delete-confirm-btn:hover:not(:disabled)[b-0p4crqll87] { background: #b91c1c; }

/* ── Add Profile Form ─────────────────────────────────────────────────────── */
.pt-add-section[b-0p4crqll87] { margin-top: 8px; }
.pt-add-toggle[b-0p4crqll87] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 10px 18px;
    cursor: pointer;
    color: var(--text);
    font-size: 14px;
    font-weight: 600;
    transition: background .15s;
}
.pt-add-toggle:hover[b-0p4crqll87] { background: rgba(99,102,241,.1); border-color: #6366f1; }

.pt-add-form[b-0p4crqll87] {
    background: var(--surface, rgba(255,255,255,.04));
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 24px;
    margin-top: 14px;
}
.pt-form-title[b-0p4crqll87] { font-size: 18px; font-weight: 700; margin: 0 0 18px; }

.pt-form-row[b-0p4crqll87] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-bottom: 14px;
}
@media (max-width: 600px) {
    .pt-form-row[b-0p4crqll87] { grid-template-columns: 1fr; }
}

.pt-field[b-0p4crqll87] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.pt-field label[b-0p4crqll87] {
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--muted);
    font-weight: 600;
}
.pt-field input[type="text"][b-0p4crqll87],
.pt-field input[type="date"][b-0p4crqll87],
.pt-field input[type="time"][b-0p4crqll87],
.pt-field select[b-0p4crqll87] {
    background: var(--bg, #0f0f1a);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 10px 12px;
    color: var(--text);
    font-size: 14px;
    outline: none;
    transition: border-color .15s;
}
.pt-field input:focus[b-0p4crqll87], .pt-field select:focus[b-0p4crqll87] { border-color: #6366f1; }
.pt-approx-field[b-0p4crqll87] { justify-content: flex-end; padding-bottom: 2px; }
.pt-approx-field label[b-0p4crqll87] { display: flex; align-items: center; gap: 8px; text-transform: none; letter-spacing: 0; font-size: 13px; }
.pt-approx-hint[b-0p4crqll87] { font-size: 11px; color: var(--color-text-muted, #888); margin-top: 4px; line-height: 1.4; }

/* Place autocomplete */
.pt-place-wrap[b-0p4crqll87] { margin-bottom: 14px; }
.pt-place-input[b-0p4crqll87] { position: relative; }
.pt-place-input input[b-0p4crqll87] { width: 100%; box-sizing: border-box; }
.pt-place-spin[b-0p4crqll87] {
    position: absolute;
    right: 12px; top: 50%;
    transform: translateY(-50%);
    color: var(--muted);
    animation: spin-b-0p4crqll87 1s linear infinite;
}
@keyframes spin-b-0p4crqll87 { to { transform: translateY(-50%) rotate(360deg); } }
.pt-geo-list[b-0p4crqll87] {
    list-style: none;
    margin: 4px 0 0; padding: 0;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0,0,0,.2);
}
.pt-geo-list li[b-0p4crqll87] {
    padding: 10px 14px;
    cursor: pointer;
    font-size: 13.5px;
    transition: background .12s;
}
.pt-geo-list li:hover[b-0p4crqll87] { background: rgba(99,102,241,.1); }

.pt-save-btn[b-0p4crqll87] {
    background: #6366f1;
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 11px 24px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    margin-top: 8px;
    transition: background .15s;
}
.pt-save-btn:disabled[b-0p4crqll87] { opacity: .6; }
.pt-save-btn:hover:not(:disabled)[b-0p4crqll87] { background: #4f46e5; }

/* ── Utility ─────────────────────────────────────────────────────────────── */
.alert-success[b-0p4crqll87] {
    background: rgba(5,150,105,.12);
    color: #6ee7b7;
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 13.5px;
    margin-bottom: 10px;
}

@media (prefers-color-scheme: light) {
    .pt-wrap[b-0p4crqll87] { background: #f8f8fc; }
    .pt-card[b-0p4crqll87] { background: #fff; }
    .pt-modal[b-0p4crqll87] { background: #fff; }
    .pt-add-form[b-0p4crqll87] { background: #fff; }
    .pt-field input[b-0p4crqll87], .pt-field select[b-0p4crqll87] { background: #f8f8fc; }
}
:root[data-theme="light"] .pt-wrap[b-0p4crqll87]    { background: #f8f8fc; }
:root[data-theme="light"] .pt-card[b-0p4crqll87]    { background: #fff; }
:root[data-theme="light"] .pt-add-form[b-0p4crqll87] { background: #fff; }
:root[data-theme="light"] .pt-field input[b-0p4crqll87],
:root[data-theme="light"] .pt-field select[b-0p4crqll87] { background: #f8f8fc; }

/* CRM panel */
.pt-crm-toggle[b-0p4crqll87] {
    margin-top: .65rem;
    background: transparent;
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: .28rem .7rem;
    font-size: .74rem;
    color: var(--muted);
    cursor: pointer;
    transition: border-color .15s, color .15s;
    display: flex;
    align-items: center;
    gap: .4rem;
}
.pt-crm-toggle:hover[b-0p4crqll87] { border-color: #6366f1; color: var(--text); }
.pt-crm-dot[b-0p4crqll87] {
    display: inline-block;
    width: 7px; height: 7px;
    border-radius: 50%;
    background: #6366f1;
}
.pt-crm-panel[b-0p4crqll87] {
    margin-top: .65rem;
    padding: .75rem;
    background: var(--surface2, rgba(255,255,255,.04));
    border: 1px solid var(--border);
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: .25rem;
}
.pt-crm-label[b-0p4crqll87] {
    font-size: .72rem;
    font-weight: 600;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: .04em;
    display: block;
}
.pt-crm-textarea[b-0p4crqll87] {
    width: 100%;
    box-sizing: border-box;
    background: var(--bg, #0f0f1a);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 8px 10px;
    color: var(--text);
    font-size: .83rem;
    font-family: inherit;
    line-height: 1.55;
    resize: vertical;
    outline: none;
    transition: border-color .15s;
}
.pt-crm-textarea:focus[b-0p4crqll87] { border-color: #6366f1; }
.pt-crm-input[b-0p4crqll87] {
    width: 100%;
    box-sizing: border-box;
    background: var(--bg, #0f0f1a);
    border: 1px solid var(--border);
    border-radius: 6px;
    padding: 7px 10px;
    color: var(--text);
    font-size: .83rem;
    outline: none;
    transition: border-color .15s;
}
.pt-crm-input:focus[b-0p4crqll87] { border-color: #6366f1; }
.pt-crm-actions[b-0p4crqll87] { margin-top: .5rem; }
.pt-crm-save[b-0p4crqll87] {
    background: #6366f1;
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: .38rem .9rem;
    font-size: .8rem;
    font-weight: 600;
    cursor: pointer;
    transition: background .15s;
}
.pt-crm-save:hover:not(:disabled)[b-0p4crqll87] { background: #4f46e5; }
.pt-crm-save:disabled[b-0p4crqll87] { opacity: .55; cursor: default; }

/* Email verification banner */
.pt-verify-banner[b-0p4crqll87] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    background: #fef9c3;
    border: 1px solid #fde68a;
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 20px;
}
.pt-verify-banner strong[b-0p4crqll87] { color: #92400e; font-size: 14px; }
.pt-verify-banner p[b-0p4crqll87] { color: #78350f; font-size: 13px; margin: 4px 0 0; }
.pt-verify-btn[b-0p4crqll87] {
    flex-shrink: 0;
    padding: 7px 16px;
    background: #92400e;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
}
.pt-verify-btn:disabled[b-0p4crqll87] { opacity: 0.6; cursor: default; }

/* ── Mobile ── */
@media (max-width: 767px) {
    .pt-wrap[b-0p4crqll87] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .pt-delete-btn[b-0p4crqll87] {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 10px;
    }
    .pt-view-btn[b-0p4crqll87]   { min-height: 44px; padding: 10px 18px; }
    .pt-crm-toggle[b-0p4crqll87] { min-height: 44px; font-size: .82rem; padding: .55rem 1rem; }
    .pt-crm-save[b-0p4crqll87]   { min-height: 44px; font-size: .85rem; padding: .6rem 1.1rem; }
    /* Show sheet trigger on mobile; hide profile grid (sheet replaces it) */
    .pt-sheet-trigger[b-0p4crqll87] {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: 100%;
        min-height: 44px;
        padding: 10px 16px;
        background: var(--surface);
        border: 1px solid var(--border);
        border-radius: var(--radius);
        font-size: .92rem;
        font-weight: 600;
        color: var(--text);
        cursor: pointer;
        margin-bottom: 16px;
    }
    /* Innovation #10: Bottom sheet foundation for profile picker */
    .pt-profile-sheet[b-0p4crqll87] {
        position: fixed;
        left: 0; right: 0; bottom: 0;
        background: var(--surface);
        border-top: 1px solid var(--border);
        border-radius: 20px 20px 0 0;
        padding: 8px 20px 40px;
        transform: translateY(100%);
        transition: transform .32s cubic-bezier(.25,.46,.45,.94);
        z-index: 1000;
        box-shadow: 0 -4px 32px rgba(0,0,0,.12);
    }
    .pt-profile-sheet.open[b-0p4crqll87] { transform: translateY(0); }
    .pt-sheet-handle[b-0p4crqll87] {
        width: 36px; height: 4px;
        background: var(--border2);
        border-radius: 2px;
        margin: 0 auto 16px;
    }
    .pt-sheet-overlay[b-0p4crqll87] {
        position: fixed;
        inset: 0;
        background: rgba(0,0,0,.38);
        opacity: 0;
        pointer-events: none;
        transition: opacity .25s;
        z-index: 999;
    }
    .pt-sheet-overlay.open[b-0p4crqll87] { opacity: 1; pointer-events: auto; }
    .pt-sheet-profile-item[b-0p4crqll87] {
        display: flex;
        align-items: center;
        gap: 14px;
        padding: 14px 0;
        border-bottom: 1px solid var(--border);
        cursor: pointer;
        min-height: 56px;
    }
    .pt-sheet-profile-item:last-child[b-0p4crqll87] { border-bottom: none; }
}
/* /Pages/PrashnaPage.razor.rz.scp.css */
/* ── Prasna / Horary Page ─────────────────────────────────────────────────── */

.pq-wrap[b-ijkpwk4ca4] {
    min-height: 100vh;
    background: var(--bg, #0f0f1a);
    color: var(--text, #e2e2e8);
}

/* Header removed — AppHeader component handles site nav */

/* ── Container ────────────────────────────────────────────────────────────── */
.pq-container[b-ijkpwk4ca4] {
    max-width: 780px;
    margin: 0 auto;
    padding: 36px 20px 60px;
}

.pq-intro[b-ijkpwk4ca4] { margin-bottom: 28px; }
.pq-title[b-ijkpwk4ca4] {
    font-size: 26px;
    font-weight: 800;
    color: var(--text);
    margin: 0 0 8px;
}
.pq-sub[b-ijkpwk4ca4] {
    font-size: 14px;
    color: var(--muted, #888);
    line-height: 1.6;
    max-width: 600px;
}

/* ── Form card ────────────────────────────────────────────────────────────── */
.pq-form-card[b-ijkpwk4ca4] {
    background: var(--surface, rgba(255,255,255,.05));
    border: 1px solid var(--border, rgba(255,255,255,.08));
    border-radius: 14px;
    padding: 26px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.pq-form-row[b-ijkpwk4ca4] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}
@media (max-width: 560px) {
    .pq-form-row[b-ijkpwk4ca4] { grid-template-columns: 1fr; }
}

.pq-field[b-ijkpwk4ca4] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.pq-field label[b-ijkpwk4ca4] {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--muted);
    font-weight: 600;
}
.pq-field input[type="text"][b-ijkpwk4ca4],
.pq-field select[b-ijkpwk4ca4],
.pq-field textarea[b-ijkpwk4ca4] {
    background: var(--bg, #0f0f1a);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 10px 12px;
    color: var(--text);
    font-size: 14px;
    outline: none;
    transition: border-color .15s;
    resize: vertical;
}
.pq-field input:focus[b-ijkpwk4ca4], .pq-field select:focus[b-ijkpwk4ca4], .pq-field textarea:focus[b-ijkpwk4ca4] {
    border-color: #6366f1;
}

/* Place autocomplete */
.pq-place-wrap[b-ijkpwk4ca4] { position: relative; }
.pq-place-input[b-ijkpwk4ca4] { position: relative; }
.pq-place-input input[b-ijkpwk4ca4] { width: 100%; box-sizing: border-box; }
.pq-place-spin[b-ijkpwk4ca4] {
    position: absolute; right: 12px; top: 50%;
    transform: translateY(-50%);
    color: var(--muted);
    animation: pq-spin-b-ijkpwk4ca4 1s linear infinite;
}
@keyframes pq-spin-b-ijkpwk4ca4 { to { transform: translateY(-50%) rotate(360deg); } }
.pq-place-confirmed[b-ijkpwk4ca4] {
    font-size: 14px;
    color: #6ee7b7;
    margin-top: 4px;
}
.pq-geo-list[b-ijkpwk4ca4] {
    list-style: none; margin: 4px 0 0; padding: 0;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0,0,0,.25);
    position: relative; z-index: 10;
}
.pq-geo-list li[b-ijkpwk4ca4] {
    padding: 10px 14px; cursor: pointer; font-size: 13.5px;
    transition: background .12s;
}
.pq-geo-list li:hover[b-ijkpwk4ca4] { background: rgba(99,102,241,.1); }

.pq-cast-btn[b-ijkpwk4ca4] {
    background: #6366f1;
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 13px 24px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    letter-spacing: .02em;
    transition: background .15s, transform .1s;
    align-self: flex-start;
}
.pq-cast-btn:disabled[b-ijkpwk4ca4] { opacity: .6; cursor: not-allowed; }
.pq-cast-btn:hover:not(:disabled)[b-ijkpwk4ca4] { background: #4f46e5; transform: translateY(-1px); }

/* ── Results ─────────────────────────────────────────────────────────────── */
.pq-back-btn[b-ijkpwk4ca4] {
    background: none;
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 7px 14px;
    color: var(--muted);
    cursor: pointer;
    font-size: 13px;
    margin-bottom: 20px;
    transition: color .15s, border-color .15s;
}
.pq-back-btn:hover[b-ijkpwk4ca4] { color: var(--text); border-color: var(--text); }

/* Verdict banner */
.pq-verdict[b-ijkpwk4ca4] {
    border-radius: 12px;
    padding: 20px 24px;
    margin-bottom: 24px;
    border-left: 5px solid;
}
.pq-verdict-favourable[b-ijkpwk4ca4]  { background: rgba(5,150,105,.1);  border-color: #059669; }
.pq-verdict-mixed[b-ijkpwk4ca4]        { background: rgba(99,102,241,.1); border-color: #6366f1; }
.pq-verdict-challenging[b-ijkpwk4ca4]  { background: rgba(220,38,38,.1);  border-color: #dc2626; }
.pq-verdict-cancelled[b-ijkpwk4ca4]    { background: rgba(148,163,184,.1); border-color: #94a3b8; }

.pq-verdict-label[b-ijkpwk4ca4] {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--muted);
    margin-bottom: 6px;
}
.pq-verdict-text[b-ijkpwk4ca4] {
    font-size: 24px;
    font-weight: 800;
    color: var(--text);
    margin-bottom: 4px;
}
.pq-verdict-favourable  .pq-verdict-text[b-ijkpwk4ca4] { color: #6ee7b7; }
.pq-verdict-challenging .pq-verdict-text[b-ijkpwk4ca4] { color: #fca5a5; }
.pq-verdict-sub[b-ijkpwk4ca4] { font-size: 13px; color: var(--muted); }

/* Hero cards */
.pq-hero-grid[b-ijkpwk4ca4] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 20px;
}
.pq-hero-card[b-ijkpwk4ca4] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 12px 16px;
    min-width: 120px;
    flex: 1;
}
.pq-hc-label[b-ijkpwk4ca4] {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .09em;
    color: var(--muted);
    margin-bottom: 4px;
}
.pq-hc-value[b-ijkpwk4ca4] { font-size: 16px; font-weight: 700; color: var(--text); }
.pq-hc-sub[b-ijkpwk4ca4]   { font-size: 14px; color: var(--muted); margin-top: 2px; }

/* Question box */
.pq-question-box[b-ijkpwk4ca4] {
    background: var(--surface);
    border-left: 3px solid #6366f1;
    border-radius: 0 8px 8px 0;
    padding: 12px 14px;
    margin-bottom: 16px;
    font-size: 14px;
    display: flex;
    gap: 10px;
    align-items: flex-start;
}
.pq-q-label[b-ijkpwk4ca4] {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .09em;
    color: var(--muted);
    white-space: nowrap;
    padding-top: 2px;
}
.pq-q-text[b-ijkpwk4ca4] { color: var(--text); line-height: 1.5; font-style: italic; }

/* Analysis */
.pq-analysis[b-ijkpwk4ca4] {
    background: var(--surface);
    border-radius: 10px;
    padding: 14px 16px;
    font-size: 14.5px;
    line-height: 1.7;
    color: var(--text);
    margin-bottom: 16px;
}
.pq-analysis p[b-ijkpwk4ca4] { margin: 0; }

/* Section labels + lists */
.pq-section-label[b-ijkpwk4ca4] {
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .09em;
    color: var(--muted);
    margin: 18px 0 8px;
    font-weight: 600;
}
.pq-indicators[b-ijkpwk4ca4] { display: flex; flex-direction: column; gap: 6px; margin-bottom: 4px; }
.pq-indicator-item[b-ijkpwk4ca4] {
    font-size: 13.5px;
    color: var(--text);
    padding: 8px 12px;
    background: var(--surface);
    border-radius: 6px;
    line-height: 1.4;
}
.pq-sig-list[b-ijkpwk4ca4] { display: flex; flex-direction: column; gap: 5px; }
.pq-sig-item[b-ijkpwk4ca4] {
    font-size: 13px;
    color: var(--muted);
    padding: 6px 10px;
    background: var(--surface);
    border-radius: 6px;
    font-family: monospace;
}

/* Planet table */
.pq-table-wrap[b-ijkpwk4ca4] { overflow-x: auto; margin-bottom: 20px; }
.pq-table[b-ijkpwk4ca4] {
    width: 100%;
    border-collapse: collapse;
    font-size: 13.5px;
}
.pq-table th[b-ijkpwk4ca4] {
    text-align: left;
    padding: 10px 12px;
    background: var(--surface);
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--muted);
    border-bottom: 1px solid var(--border);
}
.pq-table td[b-ijkpwk4ca4] {
    padding: 10px 12px;
    border-bottom: 1px solid var(--border);
}
.pq-graha[b-ijkpwk4ca4] { font-weight: 600; }
.pq-deg[b-ijkpwk4ca4]   { font-variant-numeric: tabular-nums; }

/* Dignity colouring */
.dig-exalted[b-ijkpwk4ca4]  { color: #fbbf24; font-weight: 600; }
.dig-own[b-ijkpwk4ca4]      { color: #34d399; font-weight: 600; }
.dig-friendly[b-ijkpwk4ca4] { color: #6ee7b7; }
.dig-debi[b-ijkpwk4ca4]     { color: #f87171; }
.dig-enemy[b-ijkpwk4ca4]    { color: #fb923c; }

/* Caution */
.pq-caution[b-ijkpwk4ca4] {
    background: rgba(148,163,184,.06);
    border: 1px solid rgba(148,163,184,.15);
    border-radius: 8px;
    padding: 12px 14px;
    font-size: 12.5px;
    color: var(--muted);
    line-height: 1.5;
    display: flex;
    gap: 8px;
    align-items: flex-start;
}
.pq-caution-icon[b-ijkpwk4ca4] { font-size: 14px; margin-top: 1px; flex-shrink: 0; }

/* SBC Prashna Check */
.pq-sbc-check[b-ijkpwk4ca4] {
    border-radius: 10px;
    padding: 14px 18px;
    margin-bottom: 16px;
    border-left: 4px solid;
}
.pq-sbc-auspicious[b-ijkpwk4ca4]         { background: rgba(5,150,105,.08);  border-color: #059669; }
.pq-sbc-mildly-auspicious[b-ijkpwk4ca4]  { background: rgba(5,150,105,.05);  border-color: #6ee7b7; }
.pq-sbc-neutral[b-ijkpwk4ca4]            { background: rgba(148,163,184,.06); border-color: #94a3b8; }
.pq-sbc-mildly-inauspicious[b-ijkpwk4ca4]{ background: rgba(251,146,60,.08);  border-color: #f97316; }
.pq-sbc-inauspicious[b-ijkpwk4ca4]       { background: rgba(220,38,38,.08);   border-color: #dc2626; }
.pq-sbc-badge[b-ijkpwk4ca4] { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 6px; }
.pq-sbc-label[b-ijkpwk4ca4]  { font-size: 10px; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.pq-sbc-verdict[b-ijkpwk4ca4] { font-size: 14px; font-weight: 700; }
.pq-sbc-auspicious         .pq-sbc-verdict[b-ijkpwk4ca4] { color: #6ee7b7; }
.pq-sbc-mildly-auspicious  .pq-sbc-verdict[b-ijkpwk4ca4] { color: #34d399; }
.pq-sbc-neutral            .pq-sbc-verdict[b-ijkpwk4ca4] { color: var(--muted); }
.pq-sbc-mildly-inauspicious .pq-sbc-verdict[b-ijkpwk4ca4] { color: #fb923c; }
.pq-sbc-inauspicious       .pq-sbc-verdict[b-ijkpwk4ca4] { color: #f87171; }
.pq-sbc-score[b-ijkpwk4ca4]  { font-size: 12px; color: var(--muted); margin-left: auto; }
.pq-sbc-summary[b-ijkpwk4ca4] { font-size: 13px; color: var(--muted); margin: 0; line-height: 1.5; }

@media (prefers-color-scheme: light) {
    .pq-wrap[b-ijkpwk4ca4] { background: #f8f8fc; }
    .pq-form-card[b-ijkpwk4ca4] { background: #fff; }
    .pq-field input[b-ijkpwk4ca4], .pq-field select[b-ijkpwk4ca4], .pq-field textarea[b-ijkpwk4ca4] { background: #f8f8fc; }
}
:root[data-theme="light"] .pq-wrap[b-ijkpwk4ca4]    { background: #f8f8fc; }
:root[data-theme="light"] .pq-form-card[b-ijkpwk4ca4] { background: #fff; }
:root[data-theme="light"] .pq-field input[b-ijkpwk4ca4],
:root[data-theme="light"] .pq-field select[b-ijkpwk4ca4],
:root[data-theme="light"] .pq-field textarea[b-ijkpwk4ca4] { background: #f8f8fc; }

/* ── KP Horary mode (migrated from inline <style>) ───────────────────────── */

.pq-mode-toggle[b-ijkpwk4ca4]    { display: flex; gap: .5rem; margin-bottom: 1.25rem; }
.pq-mode-btn[b-ijkpwk4ca4] {
    padding: .45rem 1.1rem;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: transparent;
    color: var(--text);
    font-size: .875rem;
    font-weight: 500;
    cursor: pointer;
    transition: background .15s, color .15s;
}
.pq-mode-btn--active[b-ijkpwk4ca4] { background: var(--accent2); color: #fff; border-color: var(--accent2); }

.pq-horary-num[b-ijkpwk4ca4] {
    width: 120px;
    padding: .45rem .75rem;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 1rem;
    font-variant-numeric: tabular-nums;
    background: var(--surface2);
    color: var(--text);
}
.pq-hint[b-ijkpwk4ca4]         { font-size: .78rem; font-weight: 400; color: var(--muted); margin-left: .4rem; }
.pq-loading-hint[b-ijkpwk4ca4] { color: var(--muted); font-size: .875rem; }

.pq-kp-detail[b-ijkpwk4ca4] {
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: .75rem 1rem;
    margin: 1rem 0;
    display: flex;
    flex-direction: column;
    gap: .6rem;
    background: var(--surface2);
}
.pq-kp-row[b-ijkpwk4ca4]          { display: flex; align-items: baseline; gap: .75rem; flex-wrap: wrap; }
.pq-kp-lbl[b-ijkpwk4ca4]          { font-size: .78rem; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); min-width: 150px; }
.pq-kp-val[b-ijkpwk4ca4]          { font-weight: 700; font-size: .95rem; color: var(--text); }
.pq-kp-val--support[b-ijkpwk4ca4] { color: var(--success); }
.pq-kp-val--negate[b-ijkpwk4ca4]  { color: var(--danger); }
.pq-kp-houses[b-ijkpwk4ca4]       { font-size: .82rem; color: var(--muted); }

.pq-verdict-arc[b-ijkpwk4ca4] {
    font-size: .75rem;
    opacity: .75;
    margin-top: .25rem;
    font-variant-numeric: tabular-nums;
    letter-spacing: .01em;
}
.pq-verdict-inconclusive[b-ijkpwk4ca4] {
    background: color-mix(in srgb, var(--muted) 12%, transparent);
    border-left: 4px solid var(--muted);
}

.pq-rp-sorted[b-ijkpwk4ca4]      { display: flex; align-items: center; gap: .4rem; flex-wrap: wrap; margin-bottom: .75rem; }
.pq-rp-sorted-lbl[b-ijkpwk4ca4]  { font-size: .7rem; font-weight: 600; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); margin-right: .2rem; }
.pq-rp-chip[b-ijkpwk4ca4]        { background: color-mix(in srgb, var(--accent2) 12%, transparent); color: var(--accent2); border-radius: 999px; padding: .15rem .65rem; font-size: .78rem; font-weight: 600; }

.pq-hero-grid--7[b-ijkpwk4ca4]   { grid-template-columns: repeat(auto-fill, minmax(90px, 1fr)); }

.pq-sig-details[b-ijkpwk4ca4] {
    margin: 1rem 0 .75rem;
    border: 1px solid var(--border);
    border-radius: 10px;
    overflow: hidden;
}
.pq-sig-summary[b-ijkpwk4ca4] {
    padding: .6rem 1rem;
    cursor: pointer;
    font-size: .82rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--muted);
    user-select: none;
    background: var(--surface2);
}
.pq-sig-details[open] .pq-sig-summary[b-ijkpwk4ca4] { border-bottom: 1px solid var(--border); }
.pq-table--sig[b-ijkpwk4ca4]        { font-size: .8rem; }
.pq-sig-strong td[b-ijkpwk4ca4]     { font-weight: 600; }
.pq-sig-star[b-ijkpwk4ca4]          { margin-left: .3rem; color: #ca8a04; font-size: .75rem; }
.pq-csl-planet[b-ijkpwk4ca4]        { font-weight: 600; color: var(--accent2); }

.pq-save-panel[b-ijkpwk4ca4] {
    margin: 1rem 0;
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: .6rem;
}
.pq-save-label[b-ijkpwk4ca4] {
    font-size: .82rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--muted);
}
.pq-save-note[b-ijkpwk4ca4] {
    width: 100%;
    padding: .5rem .75rem;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: .875rem;
    resize: vertical;
    box-sizing: border-box;
    background: var(--surface2);
    color: var(--text);
}
.pq-save-btn[b-ijkpwk4ca4] {
    align-self: flex-start;
    padding: .45rem 1.1rem;
    background: var(--accent2);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: .875rem;
    font-weight: 600;
    cursor: pointer;
}
.pq-save-btn:disabled[b-ijkpwk4ca4] { opacity: .6; cursor: not-allowed; }
.pq-save-err[b-ijkpwk4ca4]          { margin: 0; padding: .4rem .75rem; font-size: .82rem; }
.pq-saved-confirm[b-ijkpwk4ca4] {
    margin: 1rem 0;
    padding: .75rem 1rem;
    border-radius: 8px;
    background: color-mix(in srgb, var(--success) 12%, transparent);
    color: var(--success);
    font-size: .875rem;
    font-weight: 600;
}
.pq-saved-confirm a[b-ijkpwk4ca4] { color: inherit; }

/* ── Mobile ── */
@media (max-width: 767px) {
    .pq-save-btn[b-ijkpwk4ca4]    { min-height: 44px; align-self: stretch; width: 100%; }
    .pq-mode-btn[b-ijkpwk4ca4]    { min-height: 44px; padding: .7rem 1.3rem; }
    .pq-back-btn[b-ijkpwk4ca4]    { min-height: 44px; padding: 10px 16px; }
    .pq-cast-btn[b-ijkpwk4ca4]    { min-height: 48px; width: 100%; }
    .pq-verdict-label[b-ijkpwk4ca4] { font-size: .72rem; }
    .pq-hc-label[b-ijkpwk4ca4]    { font-size: .72rem; }
    .pq-q-label[b-ijkpwk4ca4]     { font-size: .72rem; }
    .pq-sbc-label[b-ijkpwk4ca4]   { font-size: .72rem; }
    .pq-rp-sorted-lbl[b-ijkpwk4ca4] { font-size: .78rem; }
    .pq-controls[b-ijkpwk4ca4]    { flex-wrap: wrap; gap: 8px; }
}
/* /Pages/RakhiBhadraPage.razor.rz.scp.css */
.rb-wrap[b-smlk9eup0n] {
    max-width: 820px;
    margin: 0 auto;
    padding: 0 16px 80px;
}

.rb-header[b-smlk9eup0n] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0 16px;
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 32px;
}

.rb-logo[b-smlk9eup0n] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-accent);
    text-decoration: none;
}

.rb-nav[b-smlk9eup0n] { display: flex; gap: .5rem; }

.rb-hero[b-smlk9eup0n] { margin-bottom: 28px; }

.rb-title[b-smlk9eup0n] {
    font-size: 1.85rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 10px;
    line-height: 1.25;
}

.rb-sub[b-smlk9eup0n] {
    color: var(--color-muted);
    line-height: 1.65;
    margin: 0;
}

/* Controls */
.rb-controls[b-smlk9eup0n] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-end;
    margin-bottom: 32px;
}

.rb-field[b-smlk9eup0n] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.rb-field label[b-smlk9eup0n] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.rb-field input[b-smlk9eup0n] {
    padding: 9px 12px;
    border-radius: 6px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.9rem;
}

.rb-field-place[b-smlk9eup0n] {
    position: relative;
    flex: 1;
    min-width: 240px;
}

.rb-dropdown[b-smlk9eup0n] {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    right: 0;
    z-index: 50;
    list-style: none;
    margin: 0;
    padding: 4px 0;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,.12);
}

.rb-dropdown-item[b-smlk9eup0n] {
    display: flex;
    flex-direction: column;
    padding: 8px 12px;
    cursor: pointer;
    gap: 2px;
}

.rb-dropdown-item:hover[b-smlk9eup0n] { background: color-mix(in srgb, var(--color-accent) 8%, transparent); }
.rb-place-name[b-smlk9eup0n] { font-size: 0.88rem; color: var(--color-text); }
.rb-place-tz[b-smlk9eup0n]   { font-size: 0.75rem; color: var(--color-muted); }

/* Sections */
.rb-section[b-smlk9eup0n] {
    margin-bottom: 40px;
    padding-bottom: 36px;
    border-bottom: 1px solid var(--color-border);
}

.rb-section-title[b-smlk9eup0n] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 16px;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.rb-section-icon[b-smlk9eup0n] { font-size: 1.3rem; }

.rb-fest-date[b-smlk9eup0n] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--color-muted);
    border: 1px solid var(--color-border);
    border-radius: 20px;
    padding: 3px 12px;
}

/* Bhadra warning card */
.rb-bhadra-card[b-smlk9eup0n] {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 16px;
    border-radius: 10px;
    margin-bottom: 16px;
}

.rb-bhadra-card--warn[b-smlk9eup0n] {
    background: #fff8e1;
    border: 1.5px solid #f9a825;
}

.rb-bh-icon[b-smlk9eup0n] { font-size: 1.4rem; flex-shrink: 0; }

.rb-bh-body[b-smlk9eup0n] { display: flex; flex-direction: column; gap: 4px; }

.rb-bh-title[b-smlk9eup0n] {
    font-size: 0.88rem;
    font-weight: 700;
    color: #7a5800;
}

.rb-bh-label[b-smlk9eup0n] {
    font-size: 0.85rem;
    color: #7a5800;
}

.rb-bh-desc[b-smlk9eup0n] {
    font-size: 0.8rem;
    color: #9a7000;
    line-height: 1.5;
}

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .rb-bhadra-card--warn[b-smlk9eup0n] {
        background: #2a2000;
        border-color: #f9a825;
    }
    :root:not([data-theme="light"]) .rb-bh-title[b-smlk9eup0n],
    :root:not([data-theme="light"]) .rb-bh-label[b-smlk9eup0n] { color: #f9c84a; }
    :root:not([data-theme="light"]) .rb-bh-desc[b-smlk9eup0n]  { color: #c9a840; }
}

:root[data-theme="dark"] .rb-bhadra-card--warn[b-smlk9eup0n] {
    background: #2a2000;
    border-color: #f9a825;
}
:root[data-theme="dark"] .rb-bh-title[b-smlk9eup0n],
:root[data-theme="dark"] .rb-bh-label[b-smlk9eup0n] { color: #f9c84a; }
:root[data-theme="dark"] .rb-bh-desc[b-smlk9eup0n]  { color: #c9a840; }

/* Muhurta result card */
.rb-muhurta-card[b-smlk9eup0n] {
    padding: 20px 24px;
    border-radius: 10px;
    border: 1.5px solid var(--color-border);
    background: var(--color-surface);
    margin-bottom: 16px;
}

.rb-muhurta-card--clear[b-smlk9eup0n] {
    border-color: var(--success);
    background: color-mix(in srgb, var(--success) 6%, transparent);
}

.rb-mu-label[b-smlk9eup0n] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-muted);
    margin-bottom: 6px;
}

.rb-mu-time[b-smlk9eup0n] {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--color-accent);
    font-variant-numeric: tabular-nums;
    margin-bottom: 4px;
}

.rb-mu-sep[b-smlk9eup0n] { font-size: 1rem; font-weight: 400; color: var(--color-muted); }

.rb-mu-note[b-smlk9eup0n] {
    font-size: 0.8rem;
    color: var(--color-muted);
    font-style: italic;
    margin-bottom: 4px;
}

.rb-mu-city[b-smlk9eup0n] {
    font-size: 0.78rem;
    color: var(--color-muted);
}

/* Classical rule box */
.rb-rule[b-smlk9eup0n] {
    margin-top: 16px;
    padding: 14px 18px;
    border-radius: 8px;
    border-left: 3px solid var(--color-accent);
    background: var(--color-surface);
}

.rb-rule h4[b-smlk9eup0n] {
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--color-accent);
    margin: 0 0 8px;
}

.rb-rule p[b-smlk9eup0n] {
    font-size: 0.85rem;
    color: var(--color-muted);
    line-height: 1.65;
    margin: 0;
}

/* Explainer */
.rb-explainer[b-smlk9eup0n] {
    padding: 20px;
    border-radius: 10px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    margin-top: 8px;
}

.rb-explainer h3[b-smlk9eup0n] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 10px;
}

.rb-explainer p[b-smlk9eup0n] {
    font-size: 0.87rem;
    color: var(--color-muted);
    line-height: 1.65;
    margin: 0 0 10px;
}

.rb-explainer p:last-child[b-smlk9eup0n] { margin-bottom: 0; }

/* States */
.rb-state[b-smlk9eup0n] {
    text-align: center;
    padding: 48px 0;
    color: var(--color-muted);
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.rb-error[b-smlk9eup0n]  { color: var(--danger); }
.rb-empty[b-smlk9eup0n]  { font-size: 0.87rem; color: var(--muted); }
.rb-empty a[b-smlk9eup0n] { color: var(--accent); }

@media (max-width: 560px) {
    .rb-title[b-smlk9eup0n] { font-size: 1.4rem; }
    .rb-mu-time[b-smlk9eup0n] { font-size: 1.25rem; }
}
/* /Pages/RashiPhala.razor.rz.scp.css */
/* ── Rāśi Phala Page ──────────────────────────────────────────────────────── */

/* ── Mobile ── */
@media (max-width: 767px) {
    .rp-page[b-nmvimngb5j] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
}
/* /Pages/SadhanaPage.razor.rz.scp.css */
.sd-wrap[b-lawj7va5sc] {
    max-width: 900px;
    margin: 0 auto;
    padding: 24px 16px 64px;
}

.sd-header[b-lawj7va5sc] {
    margin-bottom: 28px;
}

.sd-title[b-lawj7va5sc] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--color-accent, #D4AF37);
    margin: 0 0 6px;
}

.sd-subtitle[b-lawj7va5sc] {
    font-size: 0.875rem;
    color: var(--color-muted, #7B7FA8);
    margin: 0;
}

.sd-gate[b-lawj7va5sc],
.sd-loading[b-lawj7va5sc] {
    color: var(--color-muted, #7B7FA8);
    padding: 24px 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.sd-spinner[b-lawj7va5sc] {
    width: 18px;
    height: 18px;
    border: 2px solid var(--border, #2a2d4a);
    border-top-color: var(--color-accent, #D4AF37);
    border-radius: 50%;
    animation: sd-spin-b-lawj7va5sc .8s linear infinite;
    flex-shrink: 0;
}
@keyframes sd-spin-b-lawj7va5sc { to { transform: rotate(360deg); } }

.sd-empty[b-lawj7va5sc] {
    text-align: center;
    padding: 48px 0;
    color: var(--color-muted, #7B7FA8);
}

.sd-empty-icon[b-lawj7va5sc] {
    font-size: 2.5rem;
    display: block;
    margin-bottom: 12px;
}

/* ── Card grid ────────────────────────────────────────────────────────────── */

.sd-grid[b-lawj7va5sc] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
    margin-bottom: 40px;
}

.sd-card[b-lawj7va5sc] {
    background: var(--color-surface, #111325);
    border-radius: 10px;
    padding: 18px;
    border-left: 3px solid var(--color-border, #2a2d4a);
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sd-card--excellent[b-lawj7va5sc] { border-left-color: #22c55e; }
.sd-card--good[b-lawj7va5sc]      { border-left-color: #D4AF37; }
.sd-card--complete[b-lawj7va5sc]  { opacity: 0.75; }

.sd-card-head[b-lawj7va5sc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
}

.sd-practice[b-lawj7va5sc] {
    font-size: 0.75rem;
    color: var(--color-accent, #D4AF37);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.sd-badge[b-lawj7va5sc] {
    font-size: 0.7rem;
    padding: 2px 8px;
    border-radius: 99px;
    font-weight: 600;
}

.sd-badge--done[b-lawj7va5sc] {
    background: #22c55e22;
    color: #22c55e;
}

.sd-days-left[b-lawj7va5sc] {
    font-size: 0.75rem;
    color: var(--color-muted, #7B7FA8);
}

.sd-card-title[b-lawj7va5sc] {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--color-text, #E8EAF6);
    line-height: 1.3;
}

.sd-upaya[b-lawj7va5sc] {
    font-size: 0.75rem;
    color: var(--color-muted, #7B7FA8);
    font-style: italic;
}

/* ── Progress ring ─────────────────────────────────────────────────────────── */

.sd-ring-wrap[b-lawj7va5sc] {
    position: relative;
    width: 80px;
    height: 80px;
    margin: 8px auto 0;
}

.sd-ring[b-lawj7va5sc] {
    width: 80px;
    height: 80px;
    transform: rotate(-90deg);
}

.sd-ring-track[b-lawj7va5sc] {
    fill: none;
    stroke: var(--color-border, #2a2d4a);
    stroke-width: 7;
}

.sd-ring-fill[b-lawj7va5sc] {
    fill: none;
    stroke: var(--color-accent, #D4AF37);
    stroke-width: 7;
    stroke-linecap: round;
    transition: stroke-dashoffset 0.6s ease;
}

.sd-ring-pct[b-lawj7va5sc] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--color-text, #E8EAF6);
}

.sd-ring-label[b-lawj7va5sc] {
    text-align: center;
    font-size: 0.7rem;
    color: var(--color-muted, #7B7FA8);
}

/* ── Milestones ─────────────────────────────────────────────────────────────── */

.sd-milestones[b-lawj7va5sc] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 4px;
}

.sd-milestone[b-lawj7va5sc] {
    font-size: 0.7rem;
    padding: 2px 6px;
    border-radius: 99px;
    border: 1px solid var(--color-border, #2a2d4a);
    color: var(--color-muted, #7B7FA8);
}

.sd-milestone--reached[b-lawj7va5sc] {
    border-color: var(--color-accent, #D4AF37);
    color: var(--color-accent, #D4AF37);
    font-weight: 700;
}

/* ── Actions ────────────────────────────────────────────────────────────────── */

.sd-card-actions[b-lawj7va5sc] {
    display: flex;
    gap: 8px;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 4px;
}

.sd-btn[b-lawj7va5sc] {
    font-size: 0.8rem;
    padding: 6px 14px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    font-weight: 600;
    transition: opacity 0.15s;
}

.sd-btn:disabled[b-lawj7va5sc] { opacity: 0.5; cursor: not-allowed; }

.sd-btn--checkin[b-lawj7va5sc] {
    background: var(--color-accent, #D4AF37);
    color: #0B0D1A;
}

.sd-btn--abandon[b-lawj7va5sc] {
    background: transparent;
    border: 1px solid var(--color-border, #2a2d4a);
    color: var(--color-muted, #7B7FA8);
}

.sd-btn--abandon:hover:not(:disabled)[b-lawj7va5sc] { border-color: #F03F5E; color: #F03F5E; }

.sd-checked[b-lawj7va5sc] {
    font-size: 0.78rem;
    color: #22c55e;
    font-weight: 600;
}

/* ── Start form ──────────────────────────────────────────────────────────────── */

.sd-form-section[b-lawj7va5sc] {
    margin-top: 48px;
    border-top: 1px solid var(--color-border, #2a2d4a);
    padding-top: 28px;
}

.sd-form-title[b-lawj7va5sc] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-accent, #D4AF37);
    margin: 0 0 20px;
}

.sd-form[b-lawj7va5sc] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    max-width: 480px;
}

.sd-label[b-lawj7va5sc] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 0.8rem;
    color: var(--color-muted, #7B7FA8);
    font-weight: 600;
}

.sd-input[b-lawj7va5sc] {
    padding: 8px 12px;
    border-radius: 6px;
    border: 1px solid var(--color-border, #2a2d4a);
    background: var(--color-surface, #111325);
    color: var(--color-text, #E8EAF6);
    font-size: 0.875rem;
}

.sd-input:focus[b-lawj7va5sc] {
    outline: none;
    border-color: var(--color-accent, #D4AF37);
}

.sd-form-error[b-lawj7va5sc] {
    font-size: 0.8rem;
    color: #F03F5E;
    margin: 0;
}

.sd-btn--start[b-lawj7va5sc] {
    background: var(--color-accent, #D4AF37);
    color: #0B0D1A;
    align-self: flex-start;
    padding: 8px 24px;
}

/* ── Mobile ─────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
    .sd-wrap[b-lawj7va5sc]    { padding: 16px 14px 80px; padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .sd-title[b-lawj7va5sc]   { font-size: 1.45rem; }
    .sd-subtitle[b-lawj7va5sc] { font-size: 0.82rem; }

    /* Single-column card grid on mobile */
    .sd-grid[b-lawj7va5sc] { grid-template-columns: 1fr; gap: 12px; margin-bottom: 28px; }

    .sd-card[b-lawj7va5sc] { padding: 14px 16px; }

    /* Larger tap targets for action buttons */
    .sd-btn[b-lawj7va5sc] { min-height: 40px; font-size: 0.85rem; padding: 8px 16px; }
    .sd-btn--start[b-lawj7va5sc] { align-self: stretch; justify-content: center; min-height: 44px; font-size: 0.9rem; }

    /* Full-width form */
    .sd-form[b-lawj7va5sc] { max-width: 100%; }
    .sd-input[b-lawj7va5sc] { font-size: 0.9rem; padding: 10px 12px; }

    .sd-ring-wrap[b-lawj7va5sc] { width: 72px; height: 72px; }
    .sd-ring[b-lawj7va5sc]      { width: 72px; height: 72px; }
    .sd-ring-pct[b-lawj7va5sc]  { font-size: 0.75rem; }

    .sd-form-section[b-lawj7va5sc] { margin-top: 32px; padding-top: 20px; }
    .sd-card-actions[b-lawj7va5sc] { gap: 10px; }
}
/* /Pages/SankashtiPage.razor.rz.scp.css */
.sc-wrap[b-zc0x3yu1vd] {
    max-width: 820px;
    margin: 0 auto;
    padding: 0 16px 80px;
}

.sc-header[b-zc0x3yu1vd] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0 16px;
    border-bottom: 1px solid var(--color-border);
    margin-bottom: 32px;
}

.sc-logo[b-zc0x3yu1vd] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-accent);
    text-decoration: none;
}

.sc-nav[b-zc0x3yu1vd] { display: flex; gap: .5rem; }

.sc-hero[b-zc0x3yu1vd] { margin-bottom: 28px; }

.sc-title[b-zc0x3yu1vd] {
    font-size: 1.85rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 10px;
    line-height: 1.25;
}

.sc-sub[b-zc0x3yu1vd] {
    color: var(--color-muted);
    line-height: 1.65;
    margin: 0;
}

.sc-controls[b-zc0x3yu1vd] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: flex-end;
    margin-bottom: 28px;
}

.sc-field[b-zc0x3yu1vd] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.sc-field label[b-zc0x3yu1vd] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--color-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.sc-field input[b-zc0x3yu1vd] {
    padding: 9px 12px;
    border-radius: 6px;
    border: 1px solid var(--color-border);
    background: var(--color-surface);
    color: var(--color-text);
    font-size: 0.9rem;
}

.sc-field-place[b-zc0x3yu1vd] {
    position: relative;
    flex: 1;
    min-width: 240px;
}

.sc-dropdown[b-zc0x3yu1vd] {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    right: 0;
    z-index: 50;
    list-style: none;
    margin: 0;
    padding: 4px 0;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,.12);
}

.sc-dropdown-item[b-zc0x3yu1vd] {
    display: flex;
    flex-direction: column;
    padding: 8px 12px;
    cursor: pointer;
    gap: 2px;
}

.sc-dropdown-item:hover[b-zc0x3yu1vd] { background: color-mix(in srgb, var(--color-accent) 8%, transparent); }
.sc-place-name[b-zc0x3yu1vd] { font-size: 0.88rem; color: var(--color-text); }
.sc-place-tz[b-zc0x3yu1vd]   { font-size: 0.75rem; color: var(--color-muted); }

.sc-card-header[b-zc0x3yu1vd] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
}

.sc-city-badge[b-zc0x3yu1vd] {
    font-size: 0.82rem;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 20px;
    background: color-mix(in srgb, var(--color-accent) 10%, transparent);
    color: var(--color-accent);
}

.sc-table-wrap[b-zc0x3yu1vd] {
    overflow-x: auto;
    border: 1px solid var(--color-border);
    border-radius: 10px;
    margin-bottom: 32px;
}

.sc-table[b-zc0x3yu1vd] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.88rem;
}

.sc-table th[b-zc0x3yu1vd] {
    text-align: left;
    padding: 10px 14px;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-muted);
    border-bottom: 1px solid var(--color-border);
    background: color-mix(in srgb, var(--color-accent) 4%, transparent);
}

.sc-table td[b-zc0x3yu1vd] {
    padding: 10px 14px;
    border-bottom: 1px solid var(--color-border);
    vertical-align: middle;
}

.sc-table tbody tr:last-child td[b-zc0x3yu1vd] { border-bottom: none; }
.sc-table tbody tr:hover td[b-zc0x3yu1vd] { background: color-mix(in srgb, var(--color-accent) 4%, transparent); }

.sc-row-past[b-zc0x3yu1vd] { opacity: 0.55; }

.sc-td-date[b-zc0x3yu1vd]  { white-space: nowrap; color: var(--color-muted); font-size: 0.82rem; }
.sc-td-name[b-zc0x3yu1vd]  { font-weight: 600; color: var(--color-text); }
.sc-td-masa[b-zc0x3yu1vd]  { color: var(--color-muted); font-size: 0.82rem; }
.sc-td-moon[b-zc0x3yu1vd]  { font-variant-numeric: tabular-nums; white-space: nowrap; }

.sc-moonrise[b-zc0x3yu1vd] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--color-muted);
}

.sc-moonrise--live[b-zc0x3yu1vd] {
    color: var(--color-accent);
    font-size: 1rem;
}

.sc-no-moon[b-zc0x3yu1vd] { color: var(--color-muted); }

/* How + FAQ */
.sc-how[b-zc0x3yu1vd], .sc-faq[b-zc0x3yu1vd] { margin-top: 28px; }

.sc-how h3[b-zc0x3yu1vd], .sc-faq h3[b-zc0x3yu1vd] {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--color-text);
    margin: 0 0 12px;
}

.sc-how p[b-zc0x3yu1vd] {
    color: var(--color-muted);
    font-size: 0.88rem;
    line-height: 1.65;
    margin: 0;
}

.sc-faq-item[b-zc0x3yu1vd] {
    border-bottom: 1px solid var(--color-border);
    padding: 12px 0;
}

.sc-faq-item summary[b-zc0x3yu1vd] {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--color-text);
    cursor: pointer;
    list-style: none;
}

.sc-faq-item summary[b-zc0x3yu1vd]::-webkit-details-marker { display: none; }
.sc-faq-item summary[b-zc0x3yu1vd]::before { content: "+ "; color: var(--color-accent); }
.sc-faq-item[open] summary[b-zc0x3yu1vd]::before { content: "– "; }

.sc-faq-item p[b-zc0x3yu1vd] {
    margin: 10px 0 2px;
    font-size: 0.87rem;
    color: var(--color-muted);
    line-height: 1.65;
}

.sc-state[b-zc0x3yu1vd] {
    text-align: center;
    padding: 48px 0;
    color: var(--color-muted);
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.sc-error[b-zc0x3yu1vd] { color: var(--danger); }
.sc-state a[b-zc0x3yu1vd] { color: var(--color-accent); }

@media (max-width: 560px) {
    .sc-title[b-zc0x3yu1vd] { font-size: 1.45rem; }
    .sc-td-masa[b-zc0x3yu1vd] { display: none; }
}
/* /Pages/SbcCalendarPage.razor.rz.scp.css */
/* ── SBC Calendar Page ─────────────────────────────────────────────────────── */

.sbc-wrap[b-rqwnpa2wtq] {
    max-width: 100%;
    margin: 0 auto;
    padding: 24px 28px 56px;
}

/* ── Header ── */
.sbc-header[b-rqwnpa2wtq] { margin-bottom: 20px; }
.sbc-header-row[b-rqwnpa2wtq] { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.sbc-title[b-rqwnpa2wtq] { font-family: var(--font-display); font-size: 22px; font-weight: 700; letter-spacing: .04em; color: var(--text); margin-bottom: 6px; }
.sbc-subtitle[b-rqwnpa2wtq] { font-size: 13px; color: var(--muted); line-height: 1.6; max-width: 540px; }
.sbc-plan-badge[b-rqwnpa2wtq] {
    font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
    padding: 4px 10px; border-radius: 20px; flex-shrink: 0; white-space: nowrap;
    background: color-mix(in srgb, var(--accent) 12%, transparent); border: 1px solid color-mix(in srgb, var(--accent) 30%, transparent); color: var(--accent);
}

/* ── Gate ── */
.sbc-gate[b-rqwnpa2wtq] { text-align: center; padding: 56px 24px; background: var(--surface); border: 1px solid var(--border); border-radius: 14px; }
.sbc-gate--locked[b-rqwnpa2wtq] { border-color: rgba(212,175,55,.2); }
.sbc-gate-symbol[b-rqwnpa2wtq] { font-size: 40px; margin-bottom: 14px; opacity: .5; }
.sbc-gate-msg[b-rqwnpa2wtq] { font-size: 14px; color: var(--muted); line-height: 1.6; margin-bottom: 20px; }
.sbc-gate-msg strong[b-rqwnpa2wtq] { color: var(--text); }
.sbc-gate-btn[b-rqwnpa2wtq] { display: inline-block; padding: 10px 24px; border-radius: 9px; background: var(--accent); color: #fff; font-size: 14px; font-weight: 700; text-decoration: none; transition: opacity .15s; }
.sbc-gate-btn:hover[b-rqwnpa2wtq] { opacity: .85; }
.sbc-gate-btn--sm[b-rqwnpa2wtq] { font-size: 13px; padding: 8px 18px; margin-top: 12px; }

/* ── Month nav ── */
.sbc-controls[b-rqwnpa2wtq] { display: flex; align-items: center; justify-content: center; margin-bottom: 20px; }
.sbc-month-nav[b-rqwnpa2wtq] { display: flex; align-items: center; gap: 0; background: var(--surface); border: 1px solid var(--border); border-radius: 10px; overflow: hidden; }
.sbc-nav-btn[b-rqwnpa2wtq] { background: none; border: none; padding: 9px 18px; cursor: pointer; font-size: 20px; color: var(--muted); transition: background .13s, color .13s; line-height: 1; }
.sbc-nav-btn:hover[b-rqwnpa2wtq] { background: var(--surface2); color: var(--accent); }
.sbc-month-label[b-rqwnpa2wtq] { font-size: 15px; font-weight: 700; color: var(--text); padding: 0 20px; white-space: nowrap; border-left: 1px solid var(--border); border-right: 1px solid var(--border); }

/* ── Loading / Error ── */
.sbc-loading-wrap[b-rqwnpa2wtq] { text-align: center; padding: 48px 24px; }
.sbc-spinner[b-rqwnpa2wtq] { width: 36px; height: 36px; border-radius: 50%; border: 3px solid var(--border); border-top-color: var(--accent); animation: sbc-spin-b-rqwnpa2wtq .8s linear infinite; margin: 0 auto 14px; }
@keyframes sbc-spin-b-rqwnpa2wtq { to { transform: rotate(360deg); } }
.sbc-loading-msg[b-rqwnpa2wtq] { font-size: 13px; color: var(--muted); }
.sbc-error-wrap[b-rqwnpa2wtq] { text-align: center; padding: 32px 24px; }
.sbc-error-msg[b-rqwnpa2wtq] { font-size: 13px; color: var(--danger); margin-bottom: 12px; line-height: 1.5; }

/* ── Nakshatra strip ── */
.sbc-nak-strip[b-rqwnpa2wtq] {
    display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
    padding: 10px 14px; margin-bottom: 14px;
    background: color-mix(in srgb, var(--accent) 6%, var(--surface));
    border: 1px solid color-mix(in srgb, var(--accent) 20%, var(--border));
    border-radius: 9px;
}
.sbc-nak-lbl[b-rqwnpa2wtq] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .09em; color: var(--accent); }
.sbc-nak-val[b-rqwnpa2wtq] { font-size: 14px; font-weight: 700; color: var(--text); }
.sbc-nak-hint[b-rqwnpa2wtq] { font-size: 11px; color: var(--muted); margin-left: auto; }

/* ── Legend ── */
.sbc-legend[b-rqwnpa2wtq] { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-bottom: 16px; font-size: 11.5px; font-weight: 600; }
.sbc-l-item[b-rqwnpa2wtq] { display: flex; align-items: center; gap: 5px; color: var(--muted); }
.sbc-l-dot[b-rqwnpa2wtq] { width: 9px; height: 9px; border-radius: 50%; display: inline-block; }
.sbc-aus  .sbc-l-dot[b-rqwnpa2wtq] { background: #16a34a; }
.sbc-maus .sbc-l-dot[b-rqwnpa2wtq] { background: #65a30d; }
.sbc-neu  .sbc-l-dot[b-rqwnpa2wtq] { background: var(--muted); }
.sbc-min  .sbc-l-dot[b-rqwnpa2wtq] { background: #d97706; }
.sbc-inaus .sbc-l-dot[b-rqwnpa2wtq] { background: #dc2626; }

/* ── TWO-PANEL LAYOUT ── */
.sbc-two-panel[b-rqwnpa2wtq] {
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: 20px;
    align-items: start;
}

/* ── LEFT: Calendar ── */
.sbc-panel-left[b-rqwnpa2wtq] { min-width: 0; }

.sbc-cal-outer[b-rqwnpa2wtq] { border: 1px solid var(--border); border-radius: 12px; overflow: hidden; }
.sbc-col-heads[b-rqwnpa2wtq] { display: grid; grid-template-columns: repeat(7, 1fr); background: var(--surface2); border-bottom: 1px solid var(--border); }
.sbc-col-hd[b-rqwnpa2wtq] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); text-align: center; padding: 8px 4px; }
.sbc-cells[b-rqwnpa2wtq] { display: grid; grid-template-columns: repeat(7, 1fr); background: var(--surface); }

.sbc-cell[b-rqwnpa2wtq] {
    min-height: 72px; padding: 7px 6px 5px;
    border-right: 1px solid var(--border); border-bottom: 1px solid var(--border);
    cursor: pointer; position: relative;
    transition: filter .12s, box-shadow .12s;
    outline: none;
}
.sbc-cell:hover[b-rqwnpa2wtq] { filter: brightness(1.05); }
.sbc-cell:focus-visible[b-rqwnpa2wtq] { box-shadow: inset 0 0 0 2px var(--accent); }
.sbc-cell:nth-child(7n)[b-rqwnpa2wtq] { border-right: none; }
.sbc-cell:nth-last-child(-n+7)[b-rqwnpa2wtq] { border-bottom: none; }
.sbc-cell--blank[b-rqwnpa2wtq] { background: transparent !important; border-right: 1px solid var(--border); cursor: default; }

/* Status tint backgrounds */
.sbc-aus[b-rqwnpa2wtq]   { background: rgba(22,163,74,.08); }
.sbc-maus[b-rqwnpa2wtq]  { background: rgba(101,163,13,.07); }
.sbc-neu[b-rqwnpa2wtq]   { background: var(--surface); }
.sbc-min[b-rqwnpa2wtq]   { background: rgba(217,119,6,.07); }
.sbc-inaus[b-rqwnpa2wtq] { background: rgba(220,38,38,.08); }

/* Today */
.sbc-cell--today[b-rqwnpa2wtq] { box-shadow: inset 0 0 0 2px var(--accent); }

/* Selected day */
.sbc-cell--selected[b-rqwnpa2wtq] {
    box-shadow: inset 0 0 0 2.5px var(--accent);
    filter: brightness(1.06);
}
.sbc-cell--selected[b-rqwnpa2wtq]::after {
    content: '';
    position: absolute; bottom: 3px; right: 3px;
    width: 5px; height: 5px; border-radius: 50%;
    background: var(--accent);
}

/* Cell internals */
.sbc-cell-top[b-rqwnpa2wtq] { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 3px; }
.sbc-day-num[b-rqwnpa2wtq] { font-size: 12px; font-weight: 700; color: var(--text); }
.sbc-day-num--today[b-rqwnpa2wtq] {
    background: var(--accent); color: #fff;
    width: 20px; height: 20px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 10px; font-weight: 800;
}
.sbc-net-score[b-rqwnpa2wtq] { font-size: 10px; font-weight: 700; font-variant-numeric: tabular-nums; }
.sbc-aus   .sbc-net-score[b-rqwnpa2wtq] { color: #16a34a; }
.sbc-maus  .sbc-net-score[b-rqwnpa2wtq] { color: #65a30d; }
.sbc-neu   .sbc-net-score[b-rqwnpa2wtq] { color: var(--muted); }
.sbc-min   .sbc-net-score[b-rqwnpa2wtq] { color: #d97706; }
.sbc-inaus .sbc-net-score[b-rqwnpa2wtq] { color: #dc2626; }

.sbc-bm-row[b-rqwnpa2wtq] { display: flex; gap: 3px; }
.sbc-ben-chip[b-rqwnpa2wtq], .sbc-mal-chip[b-rqwnpa2wtq] {
    font-size: 9px; font-weight: 700; padding: 1px 4px; border-radius: 3px;
    font-variant-numeric: tabular-nums;
}
.sbc-ben-chip[b-rqwnpa2wtq] { background: rgba(22,163,74,.1); color: #16a34a; }
.sbc-mal-chip[b-rqwnpa2wtq] { background: rgba(220,38,38,.1); color: #dc2626; }

/* Footnote */
.sbc-footnote[b-rqwnpa2wtq] { font-size: 11px; color: var(--muted); margin-top: 10px; line-height: 1.6; }

/* ── RIGHT: Detail panel ── */
.sbc-panel-right[b-rqwnpa2wtq] {
    position: sticky;
    top: 80px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* Empty state */
.sbc-panel-right--empty .sbc-detail-empty[b-rqwnpa2wtq] {
    background: var(--surface);
    border: 1.5px dashed var(--border);
    border-radius: 14px;
    padding: 36px 24px;
    text-align: center;
}
.sbc-detail-empty-icon[b-rqwnpa2wtq] { font-size: 32px; opacity: .3; margin-bottom: 12px; }
.sbc-detail-empty-title[b-rqwnpa2wtq] { font-size: 15px; font-weight: 700; color: var(--text); margin-bottom: 8px; }
.sbc-detail-empty-hint[b-rqwnpa2wtq] { font-size: 13px; color: var(--muted); line-height: 1.6; }

/* Detail card */
.sbc-detail-card[b-rqwnpa2wtq] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    overflow: hidden;
}

/* Date header */
.sbc-det-header[b-rqwnpa2wtq] {
    display: flex; align-items: flex-start; justify-content: space-between;
    padding: 16px 18px 14px;
    border-bottom: 1px solid var(--border);
    background: var(--surface2);
}
.sbc-det-weekday[b-rqwnpa2wtq] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .09em; color: var(--muted); margin-bottom: 3px; }
.sbc-det-date[b-rqwnpa2wtq] { font-size: 18px; font-weight: 800; color: var(--text); font-family: var(--font-display); }
.sbc-det-badge[b-rqwnpa2wtq] {
    font-size: 10px; font-weight: 700; padding: 4px 10px; border-radius: 20px;
    text-transform: uppercase; letter-spacing: .06em; white-space: nowrap;
}
.sbc-det-badge.sbc-aus[b-rqwnpa2wtq]   { background: rgba(22,163,74,.12);  color: #16a34a; border: 1px solid rgba(22,163,74,.3); }
.sbc-det-badge.sbc-maus[b-rqwnpa2wtq]  { background: rgba(101,163,13,.12); color: #65a30d; border: 1px solid rgba(101,163,13,.3); }
.sbc-det-badge.sbc-neu[b-rqwnpa2wtq]   { background: var(--surface2);      color: var(--muted); border: 1px solid var(--border); }
.sbc-det-badge.sbc-min[b-rqwnpa2wtq]   { background: rgba(217,119,6,.12);  color: #d97706; border: 1px solid rgba(217,119,6,.3); }
.sbc-det-badge.sbc-inaus[b-rqwnpa2wtq] { background: rgba(220,38,38,.12);  color: #dc2626; border: 1px solid rgba(220,38,38,.3); }

/* Score section */
.sbc-score-section[b-rqwnpa2wtq] { padding: 16px 18px; border-bottom: 1px solid var(--border); }
.sbc-score-row[b-rqwnpa2wtq] { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 12px; }
.sbc-score-label[b-rqwnpa2wtq] { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }
.sbc-score-net[b-rqwnpa2wtq] { font-size: 28px; font-weight: 900; font-variant-numeric: tabular-nums; font-family: var(--font-display); }

/* Score bars */
.sbc-score-bars[b-rqwnpa2wtq] { display: flex; flex-direction: column; gap: 8px; margin-bottom: 10px; }
.sbc-bar-row[b-rqwnpa2wtq] { display: flex; align-items: center; gap: 8px; }
.sbc-bar-label[b-rqwnpa2wtq] { font-size: 11px; font-weight: 600; width: 52px; flex-shrink: 0; }
.sbc-bar-label.sbc-bar-ben[b-rqwnpa2wtq] { color: #16a34a; }
.sbc-bar-label.sbc-bar-mal[b-rqwnpa2wtq] { color: #dc2626; }
.sbc-bar-track[b-rqwnpa2wtq] { flex: 1; height: 8px; background: var(--surface2); border-radius: 99px; overflow: hidden; }
.sbc-bar-fill[b-rqwnpa2wtq] { height: 100%; border-radius: 99px; transition: width .4s ease; }
.sbc-bar-fill--ben[b-rqwnpa2wtq] { background: #16a34a; }
.sbc-bar-fill--mal[b-rqwnpa2wtq] { background: #dc2626; }
.sbc-bar-val[b-rqwnpa2wtq] { font-size: 11px; font-weight: 700; width: 24px; text-align: right; flex-shrink: 0; font-variant-numeric: tabular-nums; }
.sbc-bar-val.sbc-bar-ben[b-rqwnpa2wtq] { color: #16a34a; }
.sbc-bar-val.sbc-bar-mal[b-rqwnpa2wtq] { color: #dc2626; }

.sbc-score-caption[b-rqwnpa2wtq] { font-size: 11.5px; color: var(--muted); line-height: 1.5; }
.sbc-score-caption strong[b-rqwnpa2wtq] { color: var(--text); }

/* Detail sections */
.sbc-det-section[b-rqwnpa2wtq] { padding: 14px 18px; border-bottom: 1px solid var(--border); }
.sbc-det-section:last-child[b-rqwnpa2wtq] { border-bottom: none; }
.sbc-det-section-title[b-rqwnpa2wtq] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .09em; color: var(--accent); margin-bottom: 8px; }
.sbc-det-meaning[b-rqwnpa2wtq] { font-size: 13px; color: var(--text); line-height: 1.65; }
.sbc-det-summary[b-rqwnpa2wtq] { font-size: 12px; color: var(--muted); line-height: 1.6; font-style: italic; }

/* Guidance grid */
.sbc-guidance-grid[b-rqwnpa2wtq] { display: flex; flex-direction: column; gap: 5px; }
.sbc-guidance-item[b-rqwnpa2wtq] { display: flex; align-items: flex-start; gap: 7px; font-size: 12.5px; line-height: 1.45; }
.sbc-guidance-icon[b-rqwnpa2wtq] { font-size: 11px; font-weight: 800; flex-shrink: 0; margin-top: 2px; }
.sbc-guidance-item--good[b-rqwnpa2wtq] { color: var(--text); }
.sbc-guidance-item--good .sbc-guidance-icon[b-rqwnpa2wtq] { color: #16a34a; }
.sbc-guidance-item--avoid[b-rqwnpa2wtq] { color: var(--muted); }
.sbc-guidance-item--avoid .sbc-guidance-icon[b-rqwnpa2wtq] { color: #dc2626; }

/* ── Explainer (collapsible) ── */
.sbc-explainer[b-rqwnpa2wtq] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
}
.sbc-exp-toggle[b-rqwnpa2wtq] {
    width: 100%; display: flex; align-items: center; justify-content: space-between;
    padding: 13px 16px; background: none; border: none; cursor: pointer;
    font-size: 13px; font-weight: 600; color: var(--text);
    transition: background .12s;
}
.sbc-exp-toggle:hover[b-rqwnpa2wtq] { background: var(--surface2); }
.sbc-exp-arrow[b-rqwnpa2wtq] { font-size: 10px; color: var(--muted); }

.sbc-exp-body[b-rqwnpa2wtq] { border-top: 1px solid var(--border); }
.sbc-exp-content[b-rqwnpa2wtq] { padding: 16px; }
.sbc-exp-intro[b-rqwnpa2wtq] { font-size: 12.5px; color: var(--text); line-height: 1.65; margin-bottom: 14px; }
.sbc-exp-note[b-rqwnpa2wtq] { font-size: 12px; color: var(--muted); line-height: 1.6; margin-top: 14px; }

/* Score threshold table */
.sbc-exp-table[b-rqwnpa2wtq] { display: flex; flex-direction: column; gap: 1px; border-radius: 8px; overflow: hidden; border: 1px solid var(--border); font-size: 12px; }
.sbc-exp-row[b-rqwnpa2wtq] { display: grid; grid-template-columns: 90px 1fr 1fr; gap: 0; padding: 8px 12px; background: var(--surface2); }
.sbc-exp-row + .sbc-exp-row[b-rqwnpa2wtq] { background: var(--surface); }
.sbc-exp-head[b-rqwnpa2wtq] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); background: var(--surface2); }

.sbc-aus-txt[b-rqwnpa2wtq]  { color: #16a34a; font-weight: 700; }
.sbc-maus-txt[b-rqwnpa2wtq] { color: #65a30d; font-weight: 700; }
.sbc-neu-txt[b-rqwnpa2wtq]  { color: var(--muted); font-weight: 700; }
.sbc-min-txt[b-rqwnpa2wtq]  { color: #d97706; font-weight: 700; }
.sbc-inaus-txt[b-rqwnpa2wtq] { color: #dc2626; font-weight: 700; }

/* ── Responsive ── */
@media (max-width: 900px) {
    .sbc-two-panel[b-rqwnpa2wtq] {
        grid-template-columns: 1fr;
    }
    .sbc-panel-right[b-rqwnpa2wtq] {
        position: static;
        order: -1;   /* detail panel appears above calendar on mobile */
    }
    .sbc-cell[b-rqwnpa2wtq] { min-height: 58px; padding: 5px 4px 4px; }
    .sbc-bm-row[b-rqwnpa2wtq] { display: none; }
}
@media (max-width: 600px) {
    .sbc-wrap[b-rqwnpa2wtq] { padding: 16px 12px 36px; }
    .sbc-title[b-rqwnpa2wtq] { font-size: 18px; }
    .sbc-col-hd[b-rqwnpa2wtq] { font-size: 9px; padding: 6px 2px; }
    .sbc-cell[b-rqwnpa2wtq] { min-height: 48px; }
    .sbc-nak-hint[b-rqwnpa2wtq] { display: none; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .sbc-wrap[b-rqwnpa2wtq] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .sbc-grid-outer[b-rqwnpa2wtq]  { overflow-x: auto; -webkit-overflow-scrolling: touch; position: relative; }
    .sbc-grid-outer[b-rqwnpa2wtq]::after {
        content: '';
        position: absolute;
        top: 0; right: 0; bottom: 0;
        width: 32px;
        background: linear-gradient(to right, transparent, var(--surface));
        pointer-events: none;
    }
    .sbc-cells[b-rqwnpa2wtq]       { min-width: 500px; }
    .sbc-cell[b-rqwnpa2wtq]        { padding: 4px 3px; min-height: auto; }
    .sbc-nav-btn[b-rqwnpa2wtq]     { min-height: 44px; min-width: 44px; padding: 10px 14px; display: inline-flex; align-items: center; justify-content: center; }
    .sbc-ben-chip[b-rqwnpa2wtq], .sbc-mal-chip[b-rqwnpa2wtq] { font-size: .68rem; }
    .sbc-col-hd[b-rqwnpa2wtq]      { font-size: .68rem; }
    .sbc-nak-lbl[b-rqwnpa2wtq]     { font-size: .68rem; }
    .sbc-footnote[b-rqwnpa2wtq]    { font-size: .76rem; }
    .sbc-header[b-rqwnpa2wtq]      { padding: 14px 16px; }
}
/* /Pages/SbcCompatPage.razor.rz.scp.css */
/* ── SBC Compatibility Page ────────────────────────────────────────────────── */

.scc-wrap[b-vplvvkk14k] {
    max-width: 900px;
    margin: 0 auto;
    padding: 24px 20px 56px;
}

/* ── Purpose Tabs ── */
.scc-tabs[b-vplvvkk14k] {
    display: flex; gap: 6px; flex-wrap: wrap;
    margin-bottom: 16px;
    padding: 6px;
    background: var(--surface2);
    border: 1px solid var(--border);
    border-radius: 12px;
}
.scc-tab[b-vplvvkk14k] {
    flex: 1; min-width: 100px;
    display: flex; align-items: center; justify-content: center; gap: 6px;
    padding: 10px 14px; border-radius: 8px;
    background: none; border: none; cursor: pointer;
    font-size: 13px; font-weight: 600; color: var(--muted);
    transition: background .13s, color .13s;
    white-space: nowrap;
}
.scc-tab:hover[b-vplvvkk14k] { background: var(--surface); color: var(--text); }
.scc-tab--active[b-vplvvkk14k] {
    background: var(--surface);
    color: var(--accent);
    box-shadow: 0 1px 4px rgba(0,0,0,.08);
}
.scc-tab-icon[b-vplvvkk14k] { font-size: 15px; }
.scc-tab-label[b-vplvvkk14k] { font-size: 12.5px; }

/* ── Purpose strip ── */
.scc-purpose-strip[b-vplvvkk14k] {
    display: flex; align-items: flex-start; gap: 14px; flex-wrap: wrap;
    padding: 14px 16px; margin-bottom: 20px;
    border-radius: 11px; border-left: 3px solid;
}
.scc-purpose-marriage[b-vplvvkk14k]  { background: rgba(229,115,115,.06); border-color: #e57373; }
.scc-purpose-business[b-vplvvkk14k]  { background: rgba(79,195,247,.06);  border-color: #4fc3f7; }
.scc-purpose-friendship[b-vplvvkk14k] { background: rgba(129,199,132,.06); border-color: #81c784; }
.scc-purpose-family[b-vplvvkk14k]    { background: rgba(255,183,77,.06);  border-color: #ffb74d; }

.scc-purpose-icon[b-vplvvkk14k] { font-size: 22px; flex-shrink: 0; margin-top: 2px; }
.scc-purpose-title[b-vplvvkk14k] { font-size: 13px; font-weight: 700; color: var(--text); margin-bottom: 4px; }
.scc-purpose-desc[b-vplvvkk14k] { font-size: 12px; color: var(--muted); line-height: 1.55; }
.scc-purpose-alt[b-vplvvkk14k] {
    margin-left: auto; flex-shrink: 0;
    font-size: 11.5px; font-weight: 600; color: var(--accent2);
    text-decoration: none; white-space: nowrap; align-self: flex-start;
    padding: 4px 10px; border-radius: 6px; border: 1px solid var(--border);
    background: var(--surface); transition: background .12s;
}
.scc-purpose-alt:hover[b-vplvvkk14k] { background: var(--surface2); }

/* ── Result: context header ── */
.scc-result-context[b-vplvvkk14k] {
    display: flex; align-items: center; gap: 8px;
    padding: 10px 20px; border-bottom: 1px solid var(--border);
}
.scc-rc-icon[b-vplvvkk14k] { font-size: 16px; }
.scc-rc-label[b-vplvvkk14k] { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); }

/* ── Also-check footer ── */
.scc-also-check[b-vplvvkk14k] {
    padding: 16px 20px 14px;
    border-top: 1px solid var(--border);
    background: var(--surface2);
}
.scc-also-title[b-vplvvkk14k] { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); margin-bottom: 10px; }
.scc-also-items[b-vplvvkk14k] { display: flex; gap: 8px; flex-wrap: wrap; }
.scc-also-item[b-vplvvkk14k] {
    display: flex; align-items: center; gap: 6px;
    padding: 7px 12px; border-radius: 8px;
    background: var(--surface); border: 1px solid var(--border);
    font-size: 12px; color: var(--text); text-decoration: none;
    transition: border-color .12s, color .12s;
}
.scc-also-item:hover[b-vplvvkk14k] { border-color: var(--accent); color: var(--accent); }
.scc-also-arrow[b-vplvvkk14k] { color: var(--muted); font-size: 11px; }

/* Classical reading variant */
.scc-interp--classical[b-vplvvkk14k] {
    background: var(--surface2);
    border-top: 1px solid var(--border);
    padding: 16px 20px;
}
.scc-interp--classical .scc-interp-hd[b-vplvvkk14k] { color: var(--muted); }
.scc-interp--classical .scc-interp-text[b-vplvvkk14k] { font-style: italic; }

/* Header */
.scc-header[b-vplvvkk14k] { margin-bottom: 16px; }
.scc-header-row[b-vplvvkk14k] { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.scc-title[b-vplvvkk14k] { font-family: var(--font-display); font-size: 22px; font-weight: 700; letter-spacing: .04em; color: var(--text); margin-bottom: 6px; }
.scc-subtitle[b-vplvvkk14k] { font-size: 13px; color: var(--muted); line-height: 1.6; max-width: 580px; }
.scc-plan-badge[b-vplvvkk14k] {
    font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
    padding: 4px 10px; border-radius: 20px;
    background: rgba(212,175,55,.12); border: 1px solid rgba(212,175,55,.3); color: #D4AF37;
    flex-shrink: 0; white-space: nowrap;
}

/* Gate */
.scc-gate[b-vplvvkk14k] {
    text-align: center; padding: 56px 24px;
    background: var(--surface); border: 1px solid var(--border); border-radius: 14px;
}
.scc-gate--locked[b-vplvvkk14k] { border-color: rgba(212,175,55,.2); }
.scc-gate-symbol[b-vplvvkk14k] { font-size: 40px; margin-bottom: 14px; opacity: .5; }
.scc-gate-msg[b-vplvvkk14k] { font-size: 14px; color: var(--muted); line-height: 1.6; margin-bottom: 20px; }
.scc-gate-msg strong[b-vplvvkk14k] { color: var(--text); }
.scc-gate-btn[b-vplvvkk14k] {
    display: inline-block; padding: 10px 24px; border-radius: 9px;
    background: var(--accent); color: #fff; font-size: 14px; font-weight: 700;
    text-decoration: none; transition: opacity .15s;
}
.scc-gate-btn:hover[b-vplvvkk14k] { opacity: .85; }

/* Two-person layout */
.scc-persons[b-vplvvkk14k] { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 20px; }

.scc-person-card[b-vplvvkk14k] {
    background: var(--surface); border: 1px solid var(--border); border-radius: 12px; padding: 18px;
}
.scc-person-hd[b-vplvvkk14k] { display: flex; align-items: center; gap: 10px; margin-bottom: 14px; }
.scc-person-badge[b-vplvvkk14k] {
    width: 28px; height: 28px; border-radius: 50%;
    font-size: 13px; font-weight: 800; color: #fff;
    display: flex; align-items: center; justify-content: center; flex-shrink: 0;
}
.scc-badge-a[b-vplvvkk14k] { background: var(--accent); }
.scc-badge-b[b-vplvvkk14k] { background: var(--accent2); }
.scc-person-title[b-vplvvkk14k] { font-size: 13px; font-weight: 700; color: var(--text); }

/* Person A info */
.scc-no-chart[b-vplvvkk14k] { font-size: 13px; color: var(--muted); }
.scc-link[b-vplvvkk14k] { color: var(--accent); text-decoration: none; font-weight: 600; }
.scc-link:hover[b-vplvvkk14k] { text-decoration: underline; }
.scc-person-info[b-vplvvkk14k] { display: flex; flex-direction: column; gap: 7px; }
.scc-info-row[b-vplvvkk14k] { display: flex; justify-content: space-between; font-size: 12.5px; }
.scc-info-lbl[b-vplvvkk14k] { color: var(--muted); }
.scc-info-val[b-vplvvkk14k] { font-weight: 600; color: var(--text); text-align: right; max-width: 62%; word-break: break-all; }

/* Person B form */
.scc-form[b-vplvvkk14k] { display: flex; flex-direction: column; gap: 12px; }
.scc-label[b-vplvvkk14k] { display: flex; flex-direction: column; gap: 5px; font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--muted); }
.scc-opt[b-vplvvkk14k] { font-weight: 400; text-transform: none; letter-spacing: 0; }
.scc-input[b-vplvvkk14k], .scc-select[b-vplvvkk14k] {
    padding: 8px 10px; border-radius: 8px;
    background: var(--surface2); border: 1px solid var(--border);
    color: var(--text); font-size: 13px; font-family: inherit;
}
.scc-input:focus[b-vplvvkk14k], .scc-select:focus[b-vplvvkk14k] { outline: none; border-color: var(--accent); }
.scc-row-2[b-vplvvkk14k] { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.scc-coord-hint[b-vplvvkk14k] { font-size: 11px; color: var(--muted); line-height: 1.5; margin-top: -4px; }

/* Submit */
.scc-submit-row[b-vplvvkk14k] { display: flex; flex-direction: column; align-items: center; gap: 8px; margin-bottom: 28px; }
.scc-btn-check[b-vplvvkk14k] {
    padding: 12px 32px; border-radius: 10px; border: none; cursor: pointer;
    background: var(--accent); color: #fff;
    font-size: 15px; font-weight: 700; font-family: inherit;
    transition: opacity .15s, transform .1s;
}
.scc-btn-check:hover:not(:disabled)[b-vplvvkk14k] { opacity: .88; transform: translateY(-1px); }
.scc-btn-check:disabled[b-vplvvkk14k] { opacity: .45; cursor: not-allowed; }
.scc-hint[b-vplvvkk14k] { font-size: 12px; color: var(--muted); }
.scc-error[b-vplvvkk14k] { font-size: 13px; color: var(--danger); }

/* Result card */
.scc-result-card[b-vplvvkk14k] {
    background: var(--surface); border: 1px solid var(--border); border-radius: 14px;
    padding: 24px; display: flex; flex-direction: column; gap: 22px;
}

/* Score hero */
.scc-score-hero[b-vplvvkk14k] { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.scc-score-ring[b-vplvvkk14k] {
    width: 90px; height: 90px; border-radius: 50%;
    border: 4px solid;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    flex-shrink: 0; position: relative;
}
.scc-ring-high[b-vplvvkk14k]  { border-color: #16a34a; color: #16a34a; }
.scc-ring-mid[b-vplvvkk14k]   { border-color: var(--accent); color: var(--accent); }
.scc-ring-low[b-vplvvkk14k]   { border-color: #d97706; color: #d97706; }
.scc-ring-none[b-vplvvkk14k]  { border-color: var(--border); color: var(--muted); }
.scc-score-num[b-vplvvkk14k]  { font-size: 2.1rem; font-weight: 800; line-height: 1; }
.scc-score-denom[b-vplvvkk14k] { font-size: .75rem; font-weight: 500; color: var(--muted); }

.scc-score-right[b-vplvvkk14k] { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
.scc-result-names[b-vplvvkk14k] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.scc-nm-badge[b-vplvvkk14k] {
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 12px; font-weight: 700; color: #fff;
    padding: 4px 12px; border-radius: 20px;
}
.scc-vs[b-vplvvkk14k] { font-size: 18px; color: var(--muted); }

.scc-nak-pair[b-vplvvkk14k] { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 700; }
.scc-nak-a[b-vplvvkk14k] { color: var(--accent); }
.scc-nak-b[b-vplvvkk14k] { color: var(--accent2); }
.scc-nak-sep[b-vplvvkk14k] { color: var(--muted); font-size: 14px; }

.scc-mutual-badge[b-vplvvkk14k] {
    display: inline-flex; align-items: center; gap: 5px;
    font-size: 12px; font-weight: 700; padding: 5px 12px; border-radius: 20px;
    align-self: flex-start;
}
.scc-mutual--gold[b-vplvvkk14k] { background: rgba(212,175,55,.15); border: 1px solid rgba(212,175,55,.4); color: #D4AF37; }
.scc-mutual--silver[b-vplvvkk14k] { background: var(--surface2); border: 1px solid var(--border); color: var(--text); }

/* Vedha direction grid */
.scc-vedha-grid[b-vplvvkk14k] {
    display: grid; grid-template-columns: 1fr 1fr; gap: 12px;
    padding: 16px; background: var(--surface2); border-radius: 10px; border: 1px solid var(--border);
}
.scc-vedha-item[b-vplvvkk14k] { display: flex; flex-direction: column; gap: 6px; }
.scc-vedha-label[b-vplvvkk14k] { font-size: 11.5px; color: var(--muted); font-weight: 600; }
.scc-vedha-badge[b-vplvvkk14k] {
    display: inline-flex; align-items: center;
    font-size: 11.5px; font-weight: 700; padding: 4px 10px; border-radius: 6px; align-self: flex-start;
}
.scc-vb-direct[b-vplvvkk14k]   { background: rgba(212,175,55,.14); border: 1px solid rgba(212,175,55,.35); color: #D4AF37; }
.scc-vb-forward[b-vplvvkk14k]  { background: rgba(6,182,212,.12); border: 1px solid rgba(6,182,212,.3); color: #06b6d4; }
.scc-vb-backward[b-vplvvkk14k] { background: rgba(124,106,247,.12); border: 1px solid rgba(124,106,247,.3); color: var(--accent2); }
.scc-vb-none[b-vplvvkk14k]     { background: var(--surface2); border: 1px solid var(--border); color: var(--muted); }

/* Interpretation */
.scc-interpretation[b-vplvvkk14k] {
    padding: 16px; background: color-mix(in srgb, var(--accent) 4%, var(--surface));
    border: 1px solid color-mix(in srgb, var(--accent) 18%, var(--border));
    border-radius: 10px; border-left: 3px solid var(--accent);
}
.scc-interp-hd[b-vplvvkk14k] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--accent); margin-bottom: 7px; }
.scc-interp-text[b-vplvvkk14k] { font-size: 14px; color: var(--text); line-height: 1.65; margin: 0; }

/* Vedha legend */
.scc-vedha-legend[b-vplvvkk14k] { }
.scc-vleg-title[b-vplvvkk14k] { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--muted); margin-bottom: 10px; }
.scc-vleg-items[b-vplvvkk14k] { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.scc-vleg-item[b-vplvvkk14k] {
    display: flex; flex-direction: column; gap: 6px;
    padding: 12px; background: var(--surface2); border: 1px solid var(--border); border-radius: 9px;
}
.scc-vleg-item p[b-vplvvkk14k] { font-size: 12px; color: var(--muted); margin: 0; line-height: 1.5; }

/* Source note */
.scc-source-note[b-vplvvkk14k] { font-size: 11px; color: var(--muted); line-height: 1.6; text-align: center; border-top: 1px solid var(--border); padding-top: 14px; margin: 0; }

@media (max-width: 700px) {
    .scc-persons[b-vplvvkk14k]    { grid-template-columns: 1fr; }
    .scc-vleg-items[b-vplvvkk14k] { grid-template-columns: 1fr; }
    .scc-vedha-grid[b-vplvvkk14k] { grid-template-columns: 1fr; }
    .scc-score-hero[b-vplvvkk14k] { flex-direction: column; align-items: flex-start; }
    .scc-wrap[b-vplvvkk14k]       { padding: 16px 12px 40px; }
    .scc-title[b-vplvvkk14k]      { font-size: 18px; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .scc-row-2[b-vplvvkk14k]       { grid-template-columns: 1fr; gap: 16px; }
    .scc-gate-btn[b-vplvvkk14k]    { min-height: 48px; width: 100%; font-size: 1rem; }
    .scc-rc-label[b-vplvvkk14k]    { font-size: .76rem; }
    .scc-interp-hd[b-vplvvkk14k]   { font-size: .72rem; }
    .scc-plan-badge[b-vplvvkk14k]  { font-size: .72rem; }
    .scc-source-note[b-vplvvkk14k] { font-size: .76rem; }
    .scc-chart-wrap[b-vplvvkk14k]  { overflow-x: auto; -webkit-overflow-scrolling: touch; }
}
/* /Pages/Services.razor.rz.scp.css */
/* Header removed — AppHeader component handles site nav */

.sv-wrap[b-ui3le670g1]      { display: flex; flex-direction: column; min-height: 100vh; }
.sv-container[b-ui3le670g1] { max-width: 1040px; margin: 0 auto; padding: 52px 24px 80px; width: 100%; flex: 1; }

.sv-title[b-ui3le670g1] {
    font-family: var(--font-display, 'Cinzel', Georgia, serif);
    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;
    color: var(--accent);
    margin: 0 0 14px;
    max-width: 28ch;
    letter-spacing: .03em;
}
.sv-sub[b-ui3le670g1] {
    color: var(--muted);
    font-size: 15px;
    line-height: 1.65;
    max-width: 62ch;
    margin: 0 0 44px;
}

/* ── Portal card grid ──────────────────────────────── */
.sv-grid[b-ui3le670g1] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
}

@media (max-width: 600px) {
    .sv-grid[b-ui3le670g1] { grid-template-columns: 1fr; gap: 12px; }
    .sv-title[b-ui3le670g1] { font-size: 22px; }
    .sv-container[b-ui3le670g1] { padding: 36px 16px 64px; }
}

/* ── Card — Material-elevation style ───────────────── */
.sv-card[b-ui3le670g1] {
    display: flex;
    flex-direction: column;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 22px 22px 20px;
    text-decoration: none;
    color: inherit;
    transition:
        border-color 180ms ease,
        box-shadow 180ms ease,
        transform 180ms ease;
    position: relative;
    overflow: hidden;
}

/* Subtle top accent line */
.sv-card[b-ui3le670g1]::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--accent), var(--accent2));
    opacity: 0;
    transition: opacity 200ms ease;
}

.sv-card:hover[b-ui3le670g1] {
    border-color: var(--accent);
    box-shadow: 0 6px 24px rgba(229,163,45,.12), var(--shadow-sm);
    transform: translateY(-3px);
}
.sv-card:hover[b-ui3le670g1]::before { opacity: 1; }
.sv-card:active[b-ui3le670g1] { transform: translateY(-1px); }
.sv-card:focus-visible[b-ui3le670g1] { outline: 2px solid var(--accent); outline-offset: 3px; }

.sv-card-num[b-ui3le670g1] {
    font-family: var(--font-display, 'Cinzel', Georgia, serif);
    font-size: 13px;
    font-weight: 400;
    color: var(--muted);
    letter-spacing: .06em;
    margin-bottom: 10px;
}
.sv-card-title[b-ui3le670g1] {
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 4px;
    line-height: 1.25;
}
.sv-card-sanskrit[b-ui3le670g1] {
    font-size: 14px;
    color: var(--accent2);
    font-weight: 500;
    font-style: italic;
    margin-bottom: 10px;
    letter-spacing: .02em;
}
.sv-card-desc[b-ui3le670g1] {
    font-size: 13px;
    color: var(--muted);
    line-height: 1.6;
    margin: 0 0 16px;
    flex-grow: 1;
}
.sv-card-cta[b-ui3le670g1] {
    font-size: 14px;
    font-weight: 700;
    color: var(--accent);
    letter-spacing: .03em;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: gap 160ms ease;
}
.sv-card:hover .sv-card-cta[b-ui3le670g1] { gap: 8px; }

.sv-card-tier-badge[b-ui3le670g1] {
    display: inline-block;
    font-size: 10px; font-weight: 700; letter-spacing: .06em;
    text-transform: uppercase;
    background: color-mix(in srgb, var(--accent) 12%, var(--surface));
    border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border));
    color: var(--accent);
    border-radius: 6px;
    padding: 2px 7px;
    margin-bottom: 8px;
    width: fit-content;
}
.sv-card--locked[b-ui3le670g1] { opacity: .9; }

@media (prefers-reduced-motion: reduce) {
    .sv-card[b-ui3le670g1], .sv-card[b-ui3le670g1]::before, .sv-card-cta[b-ui3le670g1] { transition: none; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .sv-wrap[b-ui3le670g1] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
}
/* /Pages/SupportPage.razor.rz.scp.css */
/* ── Support Page ─────────────────────────────────────────────────────────── */

/* ── Mobile ── */
@media (max-width: 767px) {
    .sup-wrap[b-jxw48btmt7] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
}
/* /Pages/TimingConsolePage.razor.rz.scp.css */
/* ── Timing Console — scoped styles ─────────────────────────────────────
   Local --tc-* tokens map to project tokens so theme switching is free.
   All theme-switching happens at :root via the project token system.
   ─────────────────────────────────────────────────────────────────────── */

.tc-wrap[b-au2rs2njn2] {
    --tc-bg:         var(--surface);
    --tc-surface:    var(--surface2);
    --tc-border:     var(--border);
    --tc-text:       var(--text);
    --tc-muted:      var(--muted);
    --tc-accent:     var(--accent2);
    --tc-active-bg:  color-mix(in srgb, var(--accent2) 10%, var(--surface));
    --tc-active-brd: var(--accent2);
    --tc-sel-bg:     color-mix(in srgb, var(--success)  10%, var(--surface));
    --tc-sel-brd:    var(--success);
    --tc-sandhi:     #b45309;
    --tc-ben:        var(--success);
    --tc-mal:        var(--danger);
    --tc-neu:        var(--accent2);
    --tc-badge:      var(--accent2);
    --tc-radius:     6px;

    min-height: 100vh;
    background: var(--tc-bg);
    color: var(--tc-text);
    font-family: 'Inter', system-ui, sans-serif;
    padding-bottom: 3rem;
}

/* ── Header ─────────────────────────────────────────────────── */
.tc-header[b-au2rs2njn2] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1.5rem 2rem 1rem;
    border-bottom: 1px solid var(--tc-border);
    gap: 1rem;
    flex-wrap: wrap;
}
.tc-title[b-au2rs2njn2] {
    font-size: 1.35rem;
    font-weight: 700;
    margin: 0 0 .2rem;
    letter-spacing: -.01em;
}
.tc-subtitle[b-au2rs2njn2] {
    font-size: .8rem;
    color: var(--tc-muted);
    margin: 0;
}
.tc-header-right[b-au2rs2njn2] {
    display: flex;
    align-items: center;
    gap: .75rem;
    flex-wrap: wrap;
}
.tc-asof[b-au2rs2njn2] {
    font-size: .75rem;
    color: var(--tc-muted);
    font-variant-numeric: tabular-nums;
}
.tc-btn-now[b-au2rs2njn2] {
    padding: .35rem .9rem;
    border-radius: var(--tc-radius);
    border: 1px solid var(--tc-border);
    background: var(--tc-surface);
    color: var(--tc-text);
    font-size: .8rem;
    cursor: pointer;
    transition: border-color .15s;
}
.tc-btn-now:hover:not(:disabled)[b-au2rs2njn2] { border-color: var(--tc-accent); }
.tc-btn-now:disabled[b-au2rs2njn2] { opacity: .5; cursor: default; }
.tc-tier-badge[b-au2rs2njn2] {
    font-size: .7rem;
    padding: .2rem .6rem;
    border-radius: 999px;
    background: color-mix(in srgb, var(--tc-accent) 15%, transparent);
    color: var(--tc-accent);
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
}

/* ── Gate ────────────────────────────────────────────────────── */
.tc-gate[b-au2rs2njn2] {
    text-align: center;
    padding: 4rem 2rem;
}
.tc-gate-symbol[b-au2rs2njn2] {
    font-size: 3rem;
    margin-bottom: 1rem;
    opacity: .4;
}
.tc-gate-msg[b-au2rs2njn2] { color: var(--tc-muted); margin-bottom: 1.5rem; }
.tc-gate-btn[b-au2rs2njn2] {
    display: inline-block;
    padding: .55rem 1.4rem;
    border-radius: var(--tc-radius);
    background: var(--tc-accent);
    color: #fff;
    text-decoration: none;
    font-size: .85rem;
    font-weight: 600;
}

/* ── Loading / error ─────────────────────────────────────────── */
.tc-loading[b-au2rs2njn2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 4rem;
    gap: 1rem;
    color: var(--tc-muted);
}
.tc-spinner[b-au2rs2njn2] {
    width: 28px;
    height: 28px;
    border: 2px solid var(--tc-border);
    border-top-color: var(--tc-accent);
    border-radius: 50%;
    animation: tc-spin-b-au2rs2njn2 .8s linear infinite;
}
@keyframes tc-spin-b-au2rs2njn2 { to { transform: rotate(360deg); } }
.tc-error[b-au2rs2njn2] {
    padding: 2rem;
    color: var(--tc-mal);
    text-align: center;
}

/* ── Body layout ─────────────────────────────────────────────── */
.tc-body[b-au2rs2njn2] {
    display: flex;
    gap: 0;
    align-items: flex-start;
    padding: 0;
}

/* ── 5-column cascade ────────────────────────────────────────── */
.tc-columns[b-au2rs2njn2] {
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    border-right: 1px solid var(--tc-border);
    overflow-x: auto;
}
.tc-col[b-au2rs2njn2] {
    flex: 1 1 0;
    min-width: 110px;
    border-right: 1px solid var(--tc-border);
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    max-height: 70vh;
}
.tc-col:last-child[b-au2rs2njn2] { border-right: none; }
.tc-col-head[b-au2rs2njn2] {
    padding: .6rem .75rem;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--tc-muted);
    border-bottom: 1px solid var(--tc-border);
    background: var(--tc-surface);
    position: sticky;
    top: 0;
    z-index: 1;
    flex-shrink: 0;
}

/* ── Period rows ─────────────────────────────────────────────── */
.tc-row[b-au2rs2njn2] {
    display: flex;
    flex-direction: column;
    padding: .55rem .75rem;
    cursor: pointer;
    border-bottom: 1px solid var(--tc-border);
    transition: background .1s;
    gap: .1rem;
    position: relative;
}
.tc-row:hover[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-accent) 8%, transparent); }
.tc-row--active[b-au2rs2njn2] {
    background: var(--tc-active-bg);
    border-left: 3px solid var(--tc-active-brd);
    padding-left: calc(.75rem - 3px);
}
.tc-row--selected[b-au2rs2njn2] {
    background: var(--tc-sel-bg);
    border-left: 3px solid var(--tc-sel-brd);
    padding-left: calc(.75rem - 3px);
}
.tc-row--active.tc-row--selected[b-au2rs2njn2] { border-left: 3px solid var(--tc-active-brd); }
.tc-row--sandhi[b-au2rs2njn2] { opacity: .7; }
.tc-row-sym[b-au2rs2njn2] { font-size: .9rem; line-height: 1; color: var(--tc-accent); }
.tc-row-lord[b-au2rs2njn2] { font-size: .82rem; font-weight: 600; }
.tc-row-dates[b-au2rs2njn2] { font-size: .68rem; color: var(--tc-muted); font-variant-numeric: tabular-nums; }
.tc-row-badge[b-au2rs2njn2] {
    position: absolute;
    top: .4rem;
    right: .5rem;
    font-size: .6rem;
    padding: .1rem .35rem;
    border-radius: 999px;
    background: var(--tc-badge);
    color: #fff;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.tc-row-sandhi-dot[b-au2rs2njn2] {
    position: absolute;
    bottom: .4rem;
    right: .5rem;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--tc-sandhi);
}

/* ── Dossier panel ───────────────────────────────────────────── */
.tc-dossier[b-au2rs2njn2] {
    width: 280px;
    flex-shrink: 0;
    padding: 1.25rem 1.5rem;
    background: var(--tc-surface);
    min-height: 60vh;
}
.tc-dos-empty[b-au2rs2njn2] {
    color: var(--tc-muted);
    font-size: .82rem;
    text-align: center;
    padding-top: 3rem;
}
.tc-dos-header[b-au2rs2njn2] { display: flex; align-items: center; gap: .6rem; margin-bottom: 1rem; }
.tc-dos-sym[b-au2rs2njn2] { font-size: 1.6rem; }
.tc-dos-name[b-au2rs2njn2] { font-size: 1.1rem; font-weight: 700; }
.tc-dos-quality[b-au2rs2njn2] {
    margin-left: auto;
    font-size: .7rem;
    padding: .2rem .55rem;
    border-radius: 999px;
    font-weight: 700;
    letter-spacing: .04em;
}
.tc-quality-benefic[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-ben) 18%, transparent); color: var(--tc-ben); }
.tc-quality-malefic[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-mal) 18%, transparent); color: var(--tc-mal); }
.tc-quality-neutral[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-neu) 18%, transparent); color: var(--tc-neu); }

.tc-dos-chain[b-au2rs2njn2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .25rem;
    margin-bottom: 1.25rem;
    padding: .6rem .75rem;
    background: var(--tc-bg);
    border-radius: var(--tc-radius);
    border: 1px solid var(--tc-border);
}
.tc-dos-chain-label[b-au2rs2njn2] {
    font-size: .65rem;
    color: var(--tc-muted);
    text-transform: uppercase;
    letter-spacing: .06em;
    width: 100%;
    margin-bottom: .2rem;
}
.tc-chain-pill[b-au2rs2njn2] {
    font-size: .72rem;
    padding: .15rem .4rem;
    border-radius: 4px;
    background: var(--tc-surface);
    border: 1px solid var(--tc-border);
    white-space: nowrap;
}
.tc-chain-pill--match[b-au2rs2njn2] {
    background: var(--tc-active-bg);
    border-color: var(--tc-active-brd);
    color: var(--tc-accent);
    font-weight: 700;
}
.tc-chain-sep[b-au2rs2njn2] { color: var(--tc-muted); font-size: .7rem; }

.tc-dos-table[b-au2rs2njn2] { width: 100%; border-collapse: collapse; font-size: .82rem; }
.tc-dos-table th[b-au2rs2njn2] {
    text-align: left;
    color: var(--tc-muted);
    font-weight: 500;
    padding: .45rem 0;
    border-bottom: 1px solid var(--tc-border);
    width: 45%;
    font-size: .78rem;
}
.tc-dos-table td[b-au2rs2njn2] {
    padding: .45rem 0 .45rem .5rem;
    border-bottom: 1px solid var(--tc-border);
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}
.tc-dos-note[b-au2rs2njn2] { font-size: .68rem; color: var(--tc-muted); margin-top: 1rem; line-height: 1.5; }

/* ── Engine toggle ──────────────────────────────────────────── */
.tc-engine-toggle[b-au2rs2njn2] {
    display: flex;
    border: 1px solid var(--tc-border);
    border-radius: var(--tc-radius);
    overflow: hidden;
}
.tc-eng-btn[b-au2rs2njn2] {
    padding: .3rem .7rem;
    font-size: .75rem;
    font-weight: 600;
    background: var(--tc-surface);
    color: var(--tc-muted);
    border: none;
    cursor: pointer;
    letter-spacing: .02em;
    transition: background .1s, color .1s;
}
.tc-eng-btn:first-child[b-au2rs2njn2] { border-right: 1px solid var(--tc-border); }
.tc-eng-btn--active[b-au2rs2njn2] { background: var(--tc-active-bg); color: var(--tc-accent); }

.tc-agree-badge[b-au2rs2njn2] {
    display: inline-flex;
    align-items: center;
    margin-left: .5rem;
    padding: .15rem .5rem;
    border-radius: 99px;
    font-size: .72rem;
    font-weight: 600;
    cursor: default;
    border: 1px solid transparent;
}
.tc-agree-badge--high[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-ben) 15%, transparent); color: var(--tc-ben); border-color: color-mix(in srgb, var(--tc-ben) 30%, transparent); }
.tc-agree-badge--mid[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-neu) 15%, transparent); color: var(--tc-neu); border-color: color-mix(in srgb, var(--tc-neu) 30%, transparent); }
.tc-agree-badge--low[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-mal) 15%, transparent); color: var(--tc-mal); border-color: color-mix(in srgb, var(--tc-mal) 30%, transparent); }

/* ── Per-row engine chip ─────────────────────────────────────── */
.tc-eng-chip[b-au2rs2njn2] {
    display: inline-block;
    font-size: .6rem;
    font-weight: 700;
    padding: .05rem .3rem;
    border-radius: 3px;
    letter-spacing: .02em;
    margin-top: .1rem;
}
.tc-eng-chip--fit[b-au2rs2njn2]    { background: color-mix(in srgb, var(--tc-ben)   15%, transparent); color: var(--tc-ben); }
.tc-eng-chip--nofit[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-muted) 15%, transparent); color: var(--tc-muted); }
.tc-eng-chip--strong[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-ben)   15%, transparent); color: var(--tc-ben); }
.tc-eng-chip--mid[b-au2rs2njn2]    { background: color-mix(in srgb, var(--tc-neu)   15%, transparent); color: var(--tc-neu); }
.tc-eng-chip--weak[b-au2rs2njn2]   { background: color-mix(in srgb, var(--tc-mal)   15%, transparent); color: var(--tc-mal); }

/* ── Ruling Planets panel ────────────────────────────────────── */
.tc-rp-panel[b-au2rs2njn2] {
    padding: .75rem 2rem;
    border-top: 1px solid var(--tc-border);
    background: var(--tc-surface);
    display: flex;
    flex-direction: column;
    gap: .5rem;
}
.tc-rp-header[b-au2rs2njn2] { display: flex; justify-content: space-between; align-items: center; }
.tc-rp-title[b-au2rs2njn2] {
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--tc-muted);
}
.tc-rp-agree[b-au2rs2njn2] { font-size: .7rem; color: var(--tc-accent); font-weight: 600; }
.tc-rp-chips[b-au2rs2njn2] { display: flex; flex-wrap: wrap; gap: .35rem; }
.tc-rp-chip[b-au2rs2njn2] {
    font-size: .75rem;
    font-weight: 700;
    padding: .2rem .55rem;
    border-radius: 4px;
    background: var(--tc-active-bg);
    border: 1px solid var(--tc-active-brd);
    color: var(--tc-accent);
    white-space: nowrap;
}
.tc-rp-row-labels[b-au2rs2njn2] { display: flex; flex-wrap: wrap; gap: .5rem .9rem; }
.tc-rp-detail-item[b-au2rs2njn2] { font-size: .72rem; color: var(--tc-text); }
.tc-rp-role[b-au2rs2njn2] { font-size: .65rem; color: var(--tc-muted); margin-right: .25rem; font-weight: 500; }

/* ── Dossier AP (Ashtakavarga) block ─────────────────────────── */
.tc-ap-block[b-au2rs2njn2] {
    margin-top: 1rem;
    padding: .6rem .75rem;
    border-radius: var(--tc-radius);
    background: var(--tc-bg);
    border: 1px solid var(--tc-border);
    display: flex;
    flex-direction: column;
    gap: .4rem;
}
.tc-ap-row[b-au2rs2njn2] { display: flex; justify-content: space-between; align-items: center; font-size: .78rem; }
.tc-ap-label[b-au2rs2njn2] { color: var(--tc-muted); font-weight: 500; }
.tc-ap-val[b-au2rs2njn2]   { font-weight: 700; font-variant-numeric: tabular-nums; }
.tc-ap-strong[b-au2rs2njn2] { color: var(--tc-ben); }
.tc-ap-mid[b-au2rs2njn2]    { color: var(--tc-neu); }
.tc-ap-weak[b-au2rs2njn2]   { color: var(--tc-mal); }
.tc-rp-fit[b-au2rs2njn2] { font-size: .72rem; font-weight: 700; padding: .1rem .4rem; border-radius: 4px; }
.tc-rp-fit--yes[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-ben)   15%, transparent); color: var(--tc-ben); }
.tc-rp-fit--no[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-muted) 15%, transparent); color: var(--tc-muted); }

/* ── Vedha dot on period rows ────────────────────────────────── */
.tc-vedha-dot[b-au2rs2njn2] {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    margin-top: .15rem;
    flex-shrink: 0;
}
.tc-vedha-dot--ben[b-au2rs2njn2] { background: var(--tc-ben); }
.tc-vedha-dot--mal[b-au2rs2njn2] { background: var(--tc-mal); }

/* ── SBC block in dossier ────────────────────────────────────── */
.tc-sbc-block[b-au2rs2njn2] {
    margin-top: 1.25rem;
    padding: .75rem;
    border-radius: var(--tc-radius);
    background: var(--tc-bg);
    border: 1px solid var(--tc-border);
    display: flex;
    flex-direction: column;
    gap: .5rem;
}
.tc-sbc-row[b-au2rs2njn2] { display: flex; justify-content: space-between; align-items: center; gap: .5rem; font-size: .78rem; }
.tc-sbc-label[b-au2rs2njn2] { color: var(--tc-muted); font-weight: 500; white-space: nowrap; }
.tc-sbc-val[b-au2rs2njn2] { font-weight: 600; }
.tc-sbc-score[b-au2rs2njn2] { font-weight: 700; font-variant-numeric: tabular-nums; font-size: .85rem; }
.tc-sbc-score--pos[b-au2rs2njn2] { color: var(--tc-ben); }
.tc-sbc-score--neg[b-au2rs2njn2] { color: var(--tc-mal); }
.tc-sbc-vedha[b-au2rs2njn2] { font-weight: 600; font-size: .75rem; padding: .15rem .45rem; border-radius: 4px; }
.tc-sbc-vedha--ben[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-ben) 15%, transparent); color: var(--tc-ben); }
.tc-sbc-vedha--mal[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-mal) 15%, transparent); color: var(--tc-mal); }
.tc-sbc-clear[b-au2rs2njn2] { color: var(--tc-muted); font-size: .75rem; }

/* ── Section label ───────────────────────────────────────────── */
.tc-sbc-section-label[b-au2rs2njn2] {
    font-size: .67rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--tc-muted);
    border-top: 1px solid var(--tc-border);
    padding-top: .45rem;
    margin-top: .15rem;
}

/* ── Vedha windows ───────────────────────────────────────────── */
.tc-sbc-window[b-au2rs2njn2] { display: flex; align-items: center; gap: .4rem; font-size: .75rem; padding: .2rem .35rem; border-radius: 5px; }
.tc-sbc-window--ben[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-ben) 10%, transparent); }
.tc-sbc-window--mal[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-mal) 10%, transparent); }
.tc-sbc-window-planet[b-au2rs2njn2] { font-weight: 600; min-width: 4.5rem; color: var(--tc-text); }
.tc-sbc-window-dir[b-au2rs2njn2] { font-size: .7rem; color: var(--tc-muted); min-width: 4rem; }
.tc-sbc-window-range[b-au2rs2njn2] { color: var(--tc-muted); font-size: .72rem; font-variant-numeric: tabular-nums; }

/* ── Dasha-chain table ───────────────────────────────────────── */
.tc-sbc-chain-tbl[b-au2rs2njn2] { width: 100%; border-collapse: collapse; font-size: .74rem; }
.tc-sbc-chain-tbl th[b-au2rs2njn2] {
    text-align: left;
    font-weight: 600;
    color: var(--tc-muted);
    font-size: .67rem;
    text-transform: uppercase;
    letter-spacing: .04em;
    padding: .25rem .3rem;
    border-bottom: 1px solid var(--tc-border);
}
.tc-sbc-chain-tbl td[b-au2rs2njn2] {
    padding: .22rem .3rem;
    border-bottom: 1px solid color-mix(in srgb, var(--tc-border) 50%, transparent);
    vertical-align: middle;
}
.tc-sbc-chain-tbl tr:last-child td[b-au2rs2njn2] { border-bottom: none; }
.tc-sbc-chain-level[b-au2rs2njn2] { font-weight: 700; font-size: .7rem; color: var(--tc-muted); width: 2.2rem; }
.tc-sbc-chain-nak[b-au2rs2njn2]  { color: var(--tc-muted); }
.tc-sbc-chain-score[b-au2rs2njn2] { text-align: right; font-variant-numeric: tabular-nums; }
.tc-sbc-chain-vedha[b-au2rs2njn2] { text-align: right; }
.tc-sbc-chain-ben[b-au2rs2njn2] { color: var(--tc-ben); font-weight: 600; margin-right: .2rem; }
.tc-sbc-chain-mal[b-au2rs2njn2] { color: var(--tc-mal); font-weight: 600; }
.tc-sbc-chain--pos td[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-ben) 5%, transparent); }
.tc-sbc-chain--neg td[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-mal) 5%, transparent); }

/* ── Footnote ────────────────────────────────────────────────── */
.tc-footnote[b-au2rs2njn2] {
    font-size: .7rem;
    color: var(--tc-muted);
    padding: 1rem 2rem 0;
    line-height: 1.6;
}

/* ═══════════════════════════════════════════════════════════════
   M6 — Engine Agreement Panel
   ═══════════════════════════════════════════════════════════════ */
.tc-agree-panel[b-au2rs2njn2] {
    background: var(--tc-surface);
    border: 1px solid var(--tc-border);
    border-radius: var(--tc-radius);
    overflow: hidden;
    margin-bottom: 1.25rem;
}

.tc-agree-header[b-au2rs2njn2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .65rem 1rem;
    border-bottom: 1px solid var(--tc-border);
    gap: .75rem;
    flex-wrap: wrap;
}

.tc-agree-title[b-au2rs2njn2] {
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--tc-muted);
    flex-shrink: 0;
}

.tc-agree-score[b-au2rs2njn2] {
    font-size: .75rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    padding: .18rem .55rem;
    border-radius: 1rem;
    flex-shrink: 0;
}
.tc-agree-score--high[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-ben) 18%, transparent); color: var(--tc-ben); }
.tc-agree-score--mid[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-sandhi) 18%, transparent); color: var(--tc-sandhi); }
.tc-agree-score--low[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-mal) 18%, transparent); color: var(--tc-mal); }

.tc-agree-note[b-au2rs2njn2] {
    font-size: .72rem;
    color: var(--tc-muted);
    flex: 1 1 auto;
}

.tc-agree-levels[b-au2rs2njn2] {
    width: 100%;
    border-collapse: collapse;
    font-size: .74rem;
}
.tc-agree-levels th[b-au2rs2njn2] {
    text-align: left;
    font-size: .65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--tc-muted);
    padding: .28rem .75rem;
    border-bottom: 1px solid var(--tc-border);
    white-space: nowrap;
}
.tc-agree-levels td[b-au2rs2njn2] {
    padding: .28rem .75rem;
    border-bottom: 1px solid color-mix(in srgb, var(--tc-border) 50%, transparent);
    vertical-align: middle;
}
.tc-agree-levels tr:last-child td[b-au2rs2njn2] { border-bottom: none; }

.tc-agree-level[b-au2rs2njn2] {
    font-weight: 700;
    font-size: .7rem;
    color: var(--tc-muted);
    width: 3rem;
}
.tc-agree-lord[b-au2rs2njn2] {
    font-weight: 600;
    min-width: 5rem;
}

.tc-agree-sig[b-au2rs2njn2] {
    display: inline-block;
    font-size: .68rem;
    font-weight: 700;
    padding: .1rem .4rem;
    border-radius: .9rem;
    text-transform: capitalize;
}
.tc-agree-sig--positive[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-ben) 15%, transparent); color: var(--tc-ben); }
.tc-agree-sig--negative[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-mal) 15%, transparent); color: var(--tc-mal); }
.tc-agree-sig--mixed[b-au2rs2njn2]    { background: color-mix(in srgb, var(--tc-sandhi) 12%, transparent); color: var(--tc-sandhi); }

.tc-agree-dot[b-au2rs2njn2] {
    display: inline-block;
    width: .65rem;
    height: .65rem;
    border-radius: 50%;
    vertical-align: middle;
}
.tc-agree-dot--yes[b-au2rs2njn2] { background: var(--tc-ben); }
.tc-agree-dot--no[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-mal) 60%, transparent); }

/* Badge on the header agreement score chip */
.tc-agree-badge[b-au2rs2njn2] {
    font-size: .7rem;
    font-weight: 700;
    padding: .15rem .5rem;
    border-radius: .9rem;
    cursor: default;
}
.tc-agree-badge--high[b-au2rs2njn2] { background: color-mix(in srgb, var(--tc-ben) 18%, transparent); color: var(--tc-ben); }
.tc-agree-badge--mid[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-sandhi) 18%, transparent); color: var(--tc-sandhi); }
.tc-agree-badge--low[b-au2rs2njn2]  { background: color-mix(in srgb, var(--tc-mal) 18%, transparent); color: var(--tc-mal); }

/* ═══════════════════════════════════════════════════════════════
   M6 — Correlation Journal Panel
   ═══════════════════════════════════════════════════════════════ */
.tc-journal-panel[b-au2rs2njn2] {
    background: var(--tc-surface);
    border: 1px solid var(--tc-border);
    border-radius: var(--tc-radius);
    overflow: hidden;
    margin-bottom: 1.25rem;
}

.tc-journal-header[b-au2rs2njn2] {
    display: flex;
    align-items: baseline;
    gap: .6rem;
    padding: .65rem 1rem;
    border-bottom: 1px solid var(--tc-border);
}

.tc-journal-title[b-au2rs2njn2] {
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--tc-muted);
}

.tc-journal-sub[b-au2rs2njn2] {
    font-size: .72rem;
    color: var(--tc-muted);
}

/* Saved confirmation message */
.tc-journal-saved[b-au2rs2njn2] {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: 1rem;
    font-size: .8rem;
    color: var(--tc-ben);
    font-weight: 600;
}

/* Form body */
.tc-journal-form[b-au2rs2njn2] {
    padding: .85rem 1rem;
    display: flex;
    flex-direction: column;
    gap: .6rem;
}

.tc-journal-chain[b-au2rs2njn2] {
    font-size: .75rem;
    color: var(--tc-muted);
    font-variant-numeric: tabular-nums;
}

.tc-journal-signals[b-au2rs2njn2] {
    display: flex;
    gap: .75rem;
    font-size: .73rem;
    flex-wrap: wrap;
}

.tc-journal-textarea[b-au2rs2njn2] {
    width: 100%;
    min-height: 3.5rem;
    padding: .45rem .6rem;
    border: 1px solid var(--tc-border);
    border-radius: var(--tc-radius);
    background: var(--tc-bg);
    color: var(--tc-text);
    font-size: .78rem;
    font-family: inherit;
    resize: vertical;
    box-sizing: border-box;
    transition: border-color .15s;
}
.tc-journal-textarea:focus[b-au2rs2njn2] {
    outline: none;
    border-color: var(--tc-accent);
}

.tc-journal-rating-row[b-au2rs2njn2] {
    display: flex;
    align-items: center;
    gap: .5rem;
    flex-wrap: wrap;
}

.tc-journal-rating-label[b-au2rs2njn2] {
    font-size: .73rem;
    color: var(--tc-muted);
    flex-shrink: 0;
}

.tc-journal-star[b-au2rs2njn2] {
    background: none;
    border: none;
    padding: 0 .1rem;
    cursor: pointer;
    font-size: 1.1rem;
    color: color-mix(in srgb, var(--tc-muted) 40%, transparent);
    transition: color .1s, transform .1s;
    line-height: 1;
}
.tc-journal-star:hover[b-au2rs2njn2],
.tc-journal-star--on[b-au2rs2njn2] {
    color: #f59e0b;
    transform: scale(1.15);
}

.tc-journal-rating-desc[b-au2rs2njn2] {
    font-size: .7rem;
    color: var(--tc-muted);
    margin-left: .2rem;
}

.tc-journal-submit[b-au2rs2njn2] {
    align-self: flex-start;
    padding: .35rem .9rem;
    font-size: .78rem;
    font-weight: 600;
    border: none;
    border-radius: var(--tc-radius);
    background: var(--tc-accent);
    color: #fff;
    cursor: pointer;
    transition: opacity .15s;
}
.tc-journal-submit:disabled[b-au2rs2njn2] {
    opacity: .5;
    cursor: not-allowed;
}

.tc-journal-err[b-au2rs2njn2] {
    font-size: .73rem;
    color: var(--tc-mal);
}

/* Past entries list */
.tc-journal-list[b-au2rs2njn2] {
    border-top: 1px solid var(--tc-border);
}

.tc-journal-list-head[b-au2rs2njn2] {
    font-size: .67rem;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--tc-muted);
    padding: .5rem 1rem .3rem;
}

.tc-journal-entry[b-au2rs2njn2] {
    padding: .5rem 1rem;
    border-bottom: 1px solid color-mix(in srgb, var(--tc-border) 50%, transparent);
    display: flex;
    flex-direction: column;
    gap: .2rem;
}
.tc-journal-entry:last-child[b-au2rs2njn2] { border-bottom: none; }

.tc-journal-entry-meta[b-au2rs2njn2] {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .7rem;
    flex-wrap: wrap;
}

.tc-journal-entry-date[b-au2rs2njn2] {
    color: var(--tc-muted);
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.tc-journal-entry-lords[b-au2rs2njn2] {
    font-weight: 600;
    color: var(--tc-text);
}

.tc-journal-stars[b-au2rs2njn2] {
    color: #f59e0b;
    letter-spacing: -.05rem;
    font-size: .78rem;
}

.tc-journal-entry-note[b-au2rs2njn2] {
    font-size: .75rem;
    color: var(--tc-text);
    line-height: 1.45;
}

/* ══════════════════════════════════════════════════════════════════════════
   MOBILE  (max 767 px)
   Strategy: header stacks vertically; columns panel scrolls horizontally
   with reduced column widths; dossier becomes a full-width bottom section.
   ══════════════════════════════════════════════════════════════════════════ */
@media (max-width: 767px) {
    .tc-wrap[b-au2rs2njn2] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }

    /* Header — stack the title and controls vertically */
    .tc-header[b-au2rs2njn2] {
        flex-direction: column;
        padding: 1rem 1rem .75rem;
        gap: .6rem;
    }
    .tc-title[b-au2rs2njn2]    { font-size: 1.1rem; }
    .tc-subtitle[b-au2rs2njn2] { font-size: .75rem; }
    .tc-header-right[b-au2rs2njn2] { gap: .5rem; }
    .tc-btn-now[b-au2rs2njn2]  { padding: .4rem .85rem; min-height: 36px; font-size: .78rem; }

    /* Engine toggle — equal-width buttons */
    .tc-engine-toggle[b-au2rs2njn2] { width: 100%; }
    .tc-eng-btn[b-au2rs2njn2]       { flex: 1; padding: .4rem .5rem; font-size: .72rem; min-height: 36px; }

    /* Body — stack columns above dossier */
    .tc-body[b-au2rs2njn2] { flex-direction: column; }

    /* 5-column cascade — horizontal scroll, reduced height, narrower columns */
    .tc-columns[b-au2rs2njn2] {
        border-right: none;
        border-bottom: 1px solid var(--tc-border);
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        width: 100%;
    }
    .tc-col[b-au2rs2njn2] {
        min-width: 88px;
        max-height: 42vh;
        flex-shrink: 0;
    }
    .tc-col-head[b-au2rs2njn2] { padding: .5rem .6rem; font-size: .65rem; }
    .tc-row[b-au2rs2njn2]      { padding: .45rem .6rem; }
    .tc-row-sym[b-au2rs2njn2]  { font-size: .82rem; }
    .tc-row-lord[b-au2rs2njn2] { font-size: .76rem; }
    .tc-row-dates[b-au2rs2njn2] { font-size: .62rem; }
    .tc-row-badge[b-au2rs2njn2] { font-size: .55rem; padding: .08rem .28rem; top: .3rem; right: .4rem; }

    /* Dossier — full width below the columns */
    .tc-dossier[b-au2rs2njn2] { width: 100%; min-height: auto; padding: 1rem; }
    .tc-dos-header[b-au2rs2njn2] { margin-bottom: .75rem; }
    .tc-dos-name[b-au2rs2njn2]   { font-size: 1rem; }
    .tc-dos-chain[b-au2rs2njn2]  { padding: .5rem .65rem; }
    .tc-dos-table th[b-au2rs2njn2],
    .tc-dos-table td[b-au2rs2njn2] { padding: .38rem 0; font-size: .78rem; }

    /* Ruling planets panel */
    .tc-rp-panel[b-au2rs2njn2] { padding: .6rem 1rem; gap: .4rem; }
    .tc-rp-title[b-au2rs2njn2] { font-size: .65rem; }
    .tc-rp-chip[b-au2rs2njn2]  { font-size: .7rem; padding: .18rem .48rem; }
    .tc-rp-detail-item[b-au2rs2njn2] { font-size: .68rem; }

    /* Footnote */
    .tc-footnote[b-au2rs2njn2] { padding: 1rem 1rem 0; font-size: .68rem; }

    /* Agreement panel */
    .tc-agree-header[b-au2rs2njn2] { padding: .55rem .85rem; gap: .5rem; }
    .tc-agree-title[b-au2rs2njn2]  { font-size: .74rem; }
    .tc-agree-levels th[b-au2rs2njn2],
    .tc-agree-levels td[b-au2rs2njn2] { padding: .24rem .65rem; font-size: .7rem; }

    /* Journal panel */
    .tc-journal-form[b-au2rs2njn2] { padding: .7rem .85rem; }
    .tc-journal-star[b-au2rs2njn2] { font-size: 1.3rem; } /* bigger tap target */
    .tc-journal-submit[b-au2rs2njn2] { min-height: 38px; padding: .4rem 1rem; font-size: .8rem; }

    /* SBC / AP blocks */
    .tc-sbc-block[b-au2rs2njn2],
    .tc-ap-block[b-au2rs2njn2]  { padding: .55rem .65rem; }
    .tc-sbc-row[b-au2rs2njn2],
    .tc-ap-row[b-au2rs2njn2]    { font-size: .74rem; }
}
/* /Pages/Today.razor.rz.scp.css */
.today-sticky-score[b-xp0oqhbc5k] { display: none; }

/* ── Page container ─────────────────────────────────────────────────────── */
.today-page[b-xp0oqhbc5k] {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 0 4rem;
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* ── Loading / empty states ─────────────────────────────────────────────── */
.today-loading[b-xp0oqhbc5k] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 5rem 1rem;
    color: var(--muted);
    font-size: 0.9rem;
}

.today-spinner[b-xp0oqhbc5k] {
    width: 2.25rem;
    height: 2.25rem;
    border: 2.5px solid var(--border);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: today-spin-b-xp0oqhbc5k 0.75s linear infinite;
}

@keyframes today-spin-b-xp0oqhbc5k { to { transform: rotate(360deg); } }

.today-no-chart[b-xp0oqhbc5k] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 5rem 1.5rem;
    text-align: center;
}

.today-no-chart-icon[b-xp0oqhbc5k] { font-size: 3rem; line-height: 1; }
.today-no-chart-title[b-xp0oqhbc5k] {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--text);
    margin: 0;
}
.today-no-chart-text[b-xp0oqhbc5k] {
    color: var(--muted);
    font-size: 0.95rem;
    max-width: 400px;
    line-height: 1.6;
    margin: 0;
}
.today-cta-link[b-xp0oqhbc5k] {
    display: inline-block;
    margin-top: 0.5rem;
    padding: 0.6rem 1.6rem;
    background: var(--accent);
    color: #fff;
    border-radius: 2rem;
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    transition: opacity 0.15s;
}
.today-cta-link:hover[b-xp0oqhbc5k] { opacity: 0.87; text-decoration: none; }

.today-error[b-xp0oqhbc5k] {
    margin: 1rem 1.5rem;
    padding: 1rem 1.25rem;
    border: 1px solid color-mix(in srgb, var(--danger) 30%, transparent);
    border-radius: 10px;
    color: var(--danger);
    font-size: 0.88rem;
}

/* ── Hero band ──────────────────────────────────────────────────────────── */
.today-hero[b-xp0oqhbc5k] {
    padding: 2.5rem 2rem 2rem;
    border-radius: 0 0 1.5rem 1.5rem;
    margin-bottom: 2rem;
}

.today-hero--excellent[b-xp0oqhbc5k]  { background: linear-gradient(135deg, #78350f 0%, #d97706 100%); }
.today-hero--good[b-xp0oqhbc5k]       { background: linear-gradient(135deg, #064e3b 0%, #059669 100%); }
.today-hero--moderate[b-xp0oqhbc5k]   { background: linear-gradient(135deg, #1e1b4b 0%, #4f46e5 100%); }
.today-hero--challenging[b-xp0oqhbc5k]{ background: linear-gradient(135deg, #7f1d1d 0%, #dc2626 100%); }

.today-hero-inner[b-xp0oqhbc5k] {
    max-width: 860px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 2.25rem;
    flex-wrap: wrap;
}

/* ── Day ring (SVG circle gauge) ────────────────────────────────────────── */
.day-ring[b-xp0oqhbc5k] {
    position: relative;
    width: 8.5rem;
    height: 8.5rem;
    flex-shrink: 0;
}

.day-ring-svg[b-xp0oqhbc5k] {
    width: 100%;
    height: 100%;
    transform: rotate(0deg);
}

.day-ring-text[b-xp0oqhbc5k] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.15rem;
}

.day-ring-score[b-xp0oqhbc5k] {
    font-family: 'Cinzel', serif;
    font-size: 2.4rem;
    font-weight: 700;
    color: #fff;
    line-height: 1;
}

.day-ring-band[b-xp0oqhbc5k] {
    font-size: 0.6rem;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: rgba(255, 255, 255, 0.8);
    line-height: 1;
}

/* ── Hero body ──────────────────────────────────────────────────────────── */
.today-hero-body[b-xp0oqhbc5k] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.today-hero-date[b-xp0oqhbc5k] {
    font-size: 1rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.95);
    margin: 0;
    letter-spacing: 0.02em;
}

.today-moon-pill[b-xp0oqhbc5k] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.8);
    background: rgba(255, 255, 255, 0.12);
    border-radius: 2rem;
    padding: 0.25rem 0.85rem;
    width: fit-content;
}

.moon-glyph[b-xp0oqhbc5k] { font-size: 1rem; }

.reason-chips[b-xp0oqhbc5k] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.reason-chip[b-xp0oqhbc5k] {
    font-size: 0.72rem;
    padding: 3px 11px;
    border-radius: 99px;
    background: rgba(255, 255, 255, 0.18);
    border: 1px solid rgba(255, 255, 255, 0.35);
    color: rgba(255, 255, 255, 0.92);
    line-height: 1.6;
    white-space: nowrap;
    letter-spacing: 0.02em;
}

/* ── Charts section ─────────────────────────────────────────────────────── */
.today-charts[b-xp0oqhbc5k] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
    padding: 0 1.5rem 0;
    margin-bottom: 0.5rem;
}

.today-chart-card[b-xp0oqhbc5k] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 1rem;
    padding: 1.25rem;
    overflow: hidden;
}

[data-theme="dark"] .today-chart-card[b-xp0oqhbc5k] { background: var(--surface2); }

.today-chart-header[b-xp0oqhbc5k] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.9rem;
}

.today-chart-icon-wrap[b-xp0oqhbc5k] {
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.today-chart-icon-wrap--natal[b-xp0oqhbc5k]   { background: color-mix(in srgb, #7c3aed 12%, transparent); }
.today-chart-icon-wrap--gochara[b-xp0oqhbc5k] { background: color-mix(in srgb, #0891b2 12%, transparent); }

.today-chart-title[b-xp0oqhbc5k] {
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--text);
    line-height: 1.2;
}

.today-chart-sub[b-xp0oqhbc5k] {
    font-size: 0.75rem;
    color: var(--muted);
    margin-top: 1px;
}

.today-charts-hint[b-xp0oqhbc5k] {
    padding: 0.4rem 1.5rem 1.5rem;
    font-size: 0.75rem;
    color: var(--muted);
    margin: 0;
    font-style: italic;
}

/* ── Section heading + sub ──────────────────────────────────────────────── */
.today-section-hd[b-xp0oqhbc5k] {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.today-section-title[b-xp0oqhbc5k] {
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.13em;
    color: var(--text);
    margin: 0;
}

.today-section-sub[b-xp0oqhbc5k] {
    font-size: 0.72rem;
    color: var(--muted);
}

/* ── Score breakdown ────────────────────────────────────────────────────── */
.today-breakdown[b-xp0oqhbc5k] {
    padding: 1.75rem 1.5rem 0;
    margin-bottom: 1.75rem;
}

.comp-bars[b-xp0oqhbc5k] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.comp-bar-row[b-xp0oqhbc5k] {
    display: grid;
    grid-template-columns: 11rem 1fr;
    gap: 0.75rem;
    align-items: center;
}

.comp-bar-meta[b-xp0oqhbc5k] {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.comp-bar-label[b-xp0oqhbc5k] {
    font-size: 0.87rem;
    font-weight: 600;
    color: var(--text);
    line-height: 1.2;
}

.comp-bar-hint[b-xp0oqhbc5k] {
    font-size: 0.7rem;
    color: var(--muted);
    line-height: 1.3;
}

.comp-bar-right[b-xp0oqhbc5k] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
}

.comp-bar-track[b-xp0oqhbc5k] {
    flex: 1;
    height: 6px;
    background: var(--border);
    border-radius: 3px;
    overflow: hidden;
}

.comp-bar-fill[b-xp0oqhbc5k] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}
.comp-bar-fill--great[b-xp0oqhbc5k] { background: var(--success); }
.comp-bar-fill--good[b-xp0oqhbc5k]  { background: #14b8a6; }
.comp-bar-fill--mid[b-xp0oqhbc5k]   { background: var(--accent2); }
.comp-bar-fill--low[b-xp0oqhbc5k]   { background: var(--danger); }

.comp-bar-value[b-xp0oqhbc5k] {
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--text);
    text-align: right;
    white-space: nowrap;
    min-width: 3.25rem;
}

.comp-bar-max[b-xp0oqhbc5k] {
    font-size: 0.7rem;
    opacity: 0.45;
    font-weight: 400;
}

/* ── Active Dasha ───────────────────────────────────────────────────────── */
.today-dasha[b-xp0oqhbc5k] {
    padding: 0 1.5rem;
    margin-bottom: 1.75rem;
}

.today-dasha .dasha-card[b-xp0oqhbc5k] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 1rem;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1.1rem;
}

[data-theme="dark"] .today-dasha .dasha-card[b-xp0oqhbc5k] { background: var(--surface2); }

.dasha-lords-row[b-xp0oqhbc5k] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    flex-wrap: wrap;
}

.dasha-lord-block[b-xp0oqhbc5k] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.dasha-lord-name[b-xp0oqhbc5k] {
    font-family: 'Cinzel', serif;
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--text);
    line-height: 1;
}

.dasha-lord-name--md[b-xp0oqhbc5k] { color: var(--accent); }

.dasha-lord-tag[b-xp0oqhbc5k] {
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--muted);
}

.dasha-lord-range[b-xp0oqhbc5k] {
    font-size: 0.78rem;
    color: var(--muted);
    margin-top: 0.15rem;
}

.dasha-arrow[b-xp0oqhbc5k] {
    font-size: 1.75rem;
    color: var(--border);
    line-height: 1;
    flex-shrink: 0;
}

.dasha-bar-wrap[b-xp0oqhbc5k] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.dasha-bar-track[b-xp0oqhbc5k] {
    flex: 1;
    height: 6px;
    background: var(--border);
    border-radius: 3px;
    overflow: hidden;
}

.dasha-bar-fill[b-xp0oqhbc5k] {
    height: 100%;
    border-radius: 3px;
    background: var(--accent);
    transition: width 0.5s ease;
}

.dasha-bar-pct[b-xp0oqhbc5k] {
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--muted);
    min-width: 2.75rem;
    text-align: right;
}

.dasha-bar-label[b-xp0oqhbc5k] {
    font-size: 0.72rem;
    color: var(--muted);
    margin: -0.5rem 0 0;
    font-style: italic;
}

/* ── Share card ─────────────────────────────────────────────────────────── */
.today-share[b-xp0oqhbc5k] {
    padding: 0 1.5rem;
    margin-bottom: 1.75rem;
}

.share-card[b-xp0oqhbc5k] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.25rem 1.5rem;
    border-radius: 1rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
}

/* Share card — intentionally light (shows a physical card preview for sharing) */
.share-card[b-xp0oqhbc5k] {
    color-scheme: light;
    color: #1a1a2e;
}
.share-card--excellent[b-xp0oqhbc5k]   { background: linear-gradient(135deg,#fffbeb,#fef3c7); border-color: rgba(245,158,11,.35); }
.share-card--good[b-xp0oqhbc5k]        { background: linear-gradient(135deg,#ecfdf5,#d1fae5); border-color: rgba(16,185,129,.35); }
.share-card--moderate[b-xp0oqhbc5k]    { background: linear-gradient(135deg,#eef2ff,#e0e7ff); border-color: rgba(99,102,241,.35); }
.share-card--challenging[b-xp0oqhbc5k] { background: linear-gradient(135deg,#fff1f2,#ffe4e6); border-color: rgba(244,55,86,.35);  }
.share-card .share-card-title[b-xp0oqhbc5k] { color: #5a5a7a; }
.share-card .share-card-chip[b-xp0oqhbc5k]  { background: rgba(0,0,0,.07); color: #1a1a2e; border-color: rgba(0,0,0,.1); }

.share-card-score[b-xp0oqhbc5k] {
    font-family: 'Cinzel', serif;
    font-size: 2.75rem;
    font-weight: 700;
    color: var(--text);
    line-height: 1;
    flex-shrink: 0;
}

.share-card-body[b-xp0oqhbc5k] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.share-card-title[b-xp0oqhbc5k] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--muted);
}

.share-card-date[b-xp0oqhbc5k] {
    font-size: 0.88rem;
    color: var(--text);
    font-weight: 500;
}

.share-card-chips[b-xp0oqhbc5k] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-top: 0.25rem;
}

.share-card-chip[b-xp0oqhbc5k] {
    font-size: 0.7rem;
    padding: 2px 9px;
    border-radius: 99px;
    background: rgba(0,0,0,0.07);
    color: var(--text);
    border: 1px solid rgba(0,0,0,0.1);
}

.share-btns[b-xp0oqhbc5k] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.share-btn[b-xp0oqhbc5k] {
    padding: 0.55rem 1.3rem;
    border-radius: 2rem;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    border: none;
    transition: opacity 0.15s, transform 0.1s;
    white-space: nowrap;
}

.share-btn:hover[b-xp0oqhbc5k] { opacity: 0.88; transform: translateY(-1px); }

.share-btn--copy[b-xp0oqhbc5k] {
    background: var(--surface2, #f3f4f6);
    border: 1px solid var(--border);
    color: var(--text);
}

.share-btn--wa[b-xp0oqhbc5k] {
    background: #25d366;
    color: #fff;
}

/* ── Daily Companion push ───────────────────────────────────────────────── */
.today-companion[b-xp0oqhbc5k] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 1rem;
    padding: 1.5rem 1.75rem;
    margin: 0 1.5rem 1.25rem;
}

.companion-hint[b-xp0oqhbc5k] {
    font-size: 0.875rem;
    color: var(--muted);
    line-height: 1.55;
    margin: 0 0 1rem;
}

.companion-hint--muted[b-xp0oqhbc5k] { margin: 0; }

.companion-sub-btn[b-xp0oqhbc5k],
.companion-unsub-btn[b-xp0oqhbc5k] {
    display: inline-block;
    padding: 0.5rem 1.25rem;
    border-radius: 2rem;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    border: none;
    transition: opacity .15s;
}

.companion-sub-btn[b-xp0oqhbc5k] {
    background: var(--accent);
    color: var(--accent-fg, #fff);
}

.companion-sub-btn:disabled[b-xp0oqhbc5k] { opacity: 0.55; cursor: not-allowed; }

.companion-unsub-btn[b-xp0oqhbc5k] {
    background: transparent;
    border: 1px solid var(--border);
    color: var(--muted);
}

.companion-active[b-xp0oqhbc5k] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.companion-active-badge[b-xp0oqhbc5k] {
    display: inline-block;
    background: color-mix(in srgb, var(--accent) 15%, transparent);
    color: var(--accent);
    border-radius: 2rem;
    padding: 0.2rem 0.8rem;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    width: fit-content;
    margin-bottom: 0.25rem;
}

.companion-error[b-xp0oqhbc5k] {
    font-size: 0.8rem;
    color: var(--danger, #c0392b);
    margin: 0.5rem 0 0;
}

/* ── Saṅkalpa Goals ─────────────────────────────────────────────────────── */
.today-goals[b-xp0oqhbc5k] { margin-bottom: 2rem; }
.goals-loading[b-xp0oqhbc5k] { color: #6b7280; font-size: 13px; padding: 8px 0; }
.goals-list[b-xp0oqhbc5k] { display: flex; flex-direction: column; gap: 8px; margin-bottom: 12px; }
.goals-item[b-xp0oqhbc5k] {
    display: flex; align-items: center; justify-content: space-between;
    background: var(--surface); border: 1px solid var(--border);
    border-radius: 8px; padding: 10px 12px;
}
[data-theme="dark"] .goals-item[b-xp0oqhbc5k] { background: var(--surface2); }
.goals-item-body[b-xp0oqhbc5k] { display: flex; flex-direction: column; gap: 2px; flex: 1; }
.goals-cat[b-xp0oqhbc5k]   { font-size: 11px; font-weight: 700; color: #7c3aed; text-transform: uppercase; letter-spacing: .5px; }
.goals-title[b-xp0oqhbc5k] { font-size: 14px; font-weight: 500; color: var(--text); }
.goals-days[b-xp0oqhbc5k]  { font-size: 12px; color: #6b7280; }
.goals-actions[b-xp0oqhbc5k] { display: flex; gap: 6px; margin-left: 12px; }
.goals-btn[b-xp0oqhbc5k]   { padding: 4px 10px; border-radius: 6px; border: none; cursor: pointer; font-size: 13px; }
.goals-btn--done[b-xp0oqhbc5k] { background: #dcfce7; color: #166534; }
.goals-btn--del[b-xp0oqhbc5k]  { background: #fee2e2; color: #991b1b; }
.goals-form[b-xp0oqhbc5k]  { display: flex; flex-direction: column; gap: 8px; margin-top: 8px; }
.goals-input[b-xp0oqhbc5k] {
    padding: 8px 10px; border: 1px solid var(--border, #e5e7eb);
    border-radius: 7px; font-size: 13px;
    background: var(--surface, #fff); color: var(--text);
    outline: none;
}
.goals-input:focus[b-xp0oqhbc5k] { border-color: var(--accent); }

/* ── Responsive ─────────────────────────────────────────────────────────── */
@media (max-width: 720px) {
    .today-charts[b-xp0oqhbc5k] {
        grid-template-columns: 1fr;
        padding: 0 1rem;
    }
    .today-hero[b-xp0oqhbc5k] { border-radius: 0 0 1rem 1rem; padding: 2rem 1.25rem 1.75rem; }
    .today-hero-inner[b-xp0oqhbc5k] { gap: 1.5rem; }
    .day-ring[b-xp0oqhbc5k] { width: 7rem; height: 7rem; }
    .day-ring-score[b-xp0oqhbc5k] { font-size: 2rem; }
    .today-breakdown[b-xp0oqhbc5k], .today-dasha[b-xp0oqhbc5k], .today-share[b-xp0oqhbc5k] { padding-left: 1rem; padding-right: 1rem; }
    .today-companion[b-xp0oqhbc5k] { margin-left: 1rem; margin-right: 1rem; }
    .comp-bar-row[b-xp0oqhbc5k] { grid-template-columns: 9rem 1fr; }
    .today-charts-hint[b-xp0oqhbc5k] { padding-left: 1rem; }
}

@media (max-width: 480px) {
    .today-hero-inner[b-xp0oqhbc5k] { flex-direction: column; align-items: flex-start; }
    .day-ring[b-xp0oqhbc5k] { width: 6rem; height: 6rem; }
    .day-ring-score[b-xp0oqhbc5k] { font-size: 1.75rem; }
    .dasha-lords-row[b-xp0oqhbc5k] { gap: 0.75rem; }
    .dasha-arrow[b-xp0oqhbc5k] { display: none; }
    .share-btns[b-xp0oqhbc5k] { flex-direction: column; }
    .share-btn[b-xp0oqhbc5k] { width: 100%; text-align: center; }
    .comp-bar-row[b-xp0oqhbc5k] { grid-template-columns: 1fr; gap: 0.4rem; }
    .comp-bar-right[b-xp0oqhbc5k] { gap: 0.5rem; }
}

/* ── Rāśi Phala teaser ───────────────────────────────────────────────────── */
.today-rp-teaser[b-xp0oqhbc5k] {
    padding: 1.5rem 1.5rem;
}

.rp-teaser-card[b-xp0oqhbc5k] {
    background: var(--surface2);
    border-radius: 12px;
    padding: 18px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    border: 1px solid var(--border, #e5e7eb);
}

.rp-teaser-card--loading[b-xp0oqhbc5k] {
    justify-content: center;
    min-height: 80px;
}

.rp-teaser-spinner[b-xp0oqhbc5k] {
    width: 28px;
    height: 28px;
    border: 2px solid var(--border);
    border-top-color: var(--accent, #7c3aed);
    border-radius: 50%;
    animation: rp-teaser-spin-b-xp0oqhbc5k 0.8s linear infinite;
}

@keyframes rp-teaser-spin-b-xp0oqhbc5k { to { transform: rotate(360deg); } }

.rp-teaser-main[b-xp0oqhbc5k] { flex: 1; min-width: 0; }
.rp-teaser-rasi[b-xp0oqhbc5k] { font-size: 15px; font-weight: 700; color: var(--text); margin-bottom: 6px; }
.rp-teaser-score-row[b-xp0oqhbc5k] { display: flex; align-items: center; gap: 8px; margin-bottom: 6px; }
.rp-teaser-score[b-xp0oqhbc5k] { font-size: 26px; font-weight: 800; color: var(--accent, #7c3aed); line-height: 1; }
.rp-teaser-stars[b-xp0oqhbc5k]  { font-size: 14px; color: #f5a623; }
.rp-teaser-summary[b-xp0oqhbc5k] { font-size: 13px; color: var(--muted); line-height: 1.5; margin: 0; }
.rp-teaser-spark[b-xp0oqhbc5k]  { width: 80px; height: 24px; flex-shrink: 0; overflow: visible; }
.rp-teaser-no-profile[b-xp0oqhbc5k] { font-size: 13px; color: var(--muted); margin: 0; }

.rp-teaser-link[b-xp0oqhbc5k] {
    flex-shrink: 0;
    display: inline-block;
    background: var(--accent, #7c3aed);
    color: #fff;
    padding: 8px 18px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}

/* ── Companion alerts link ──────────────────────────────────────────────── */
.companion-alerts-link[b-xp0oqhbc5k] {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--accent);
    text-decoration: none;
    margin-left: auto;
    opacity: 0.85;
    transition: opacity .15s;
}
.companion-alerts-link:hover[b-xp0oqhbc5k] { opacity: 1; }

/* ── iCal subscribe ─────────────────────────────────────────────────────── */
.ical-row[b-xp0oqhbc5k] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid var(--border);
}
.ical-link[b-xp0oqhbc5k] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 7px 16px;
    border-radius: 8px;
    background: var(--surface2);
    border: 1px solid var(--border);
    color: var(--text);
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
    transition: border-color .15s, background .15s;
    white-space: nowrap;
}
.ical-link:hover[b-xp0oqhbc5k] { border-color: var(--accent); background: rgba(229,163,45,0.06); }
.ical-hint[b-xp0oqhbc5k] { font-size: 0.71rem; color: var(--muted); }

/* ── Sva-Phala brief card ───────────────────────────────────────────────── */
.today-brief[b-xp0oqhbc5k] { }
.brief-loading[b-xp0oqhbc5k] { display: flex; align-items: center; padding: 6px 0; }
.brief-vrata-row[b-xp0oqhbc5k] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 10px;
}
.brief-vrata-pill[b-xp0oqhbc5k] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 14px;
    border-radius: 20px;
    background: var(--surface2);
    border: 1px solid var(--border);
    font-size: 0.8rem;
    color: var(--text);
    font-weight: 500;
}
.brief-insights[b-xp0oqhbc5k] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.brief-insight-tag[b-xp0oqhbc5k] {
    padding: 3px 10px;
    border-radius: 12px;
    background: rgba(229, 163, 45, 0.1);
    border: 1px solid rgba(229, 163, 45, 0.25);
    color: var(--accent);
    font-size: 0.71rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

/* ── Goal windows ───────────────────────────────────────────────────────── */
.goal-windows[b-xp0oqhbc5k] { margin-top: 10px; }
.goal-windows-loading[b-xp0oqhbc5k] { font-size: 0.78rem; color: var(--muted); padding: 4px 0; }
.goal-windows-label[b-xp0oqhbc5k] {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--muted);
    margin: 0 0 8px;
}
.goal-windows-row[b-xp0oqhbc5k] { display: flex; gap: 8px; flex-wrap: wrap; }
.goal-window-chip[b-xp0oqhbc5k] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 8px 14px;
    border-radius: 10px;
    min-width: 82px;
    border: 1px solid var(--border);
    background: var(--surface2);
    gap: 1px;
    cursor: default;
}
.goal-window-chip--excellent[b-xp0oqhbc5k] { border-color: #f59e0b; background: rgba(245,158,11,.08); }
.goal-window-chip--good[b-xp0oqhbc5k]      { border-color: #22c55e; background: rgba(34,197,94,.08);  }
.goal-window-chip--moderate[b-xp0oqhbc5k]  { border-color: #818cf8; background: rgba(129,140,248,.08);}
.goal-window-chip--challenging[b-xp0oqhbc5k]{ border-color: #f87171; background: rgba(248,113,113,.08);}
.goal-window-date[b-xp0oqhbc5k]  { font-size: 0.68rem; color: var(--muted); white-space: nowrap; }
.goal-window-score[b-xp0oqhbc5k] {
    font-size: 1.05rem;
    font-weight: 700;
    font-family: var(--font-display, 'Cinzel', serif);
    color: var(--text);
    line-height: 1.1;
}
.goal-window-band[b-xp0oqhbc5k]  {
    font-size: 0.62rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--muted);
}

/* ── Mobile: Gap Coverage + Innovations ── */
@media (max-width: 767px) {
    /* === Gap coverage: 480–720px range === */
    .today-charts[b-xp0oqhbc5k]      { grid-template-columns: 1fr; padding: 0 1rem; }
    .today-hero[b-xp0oqhbc5k]        { border-radius: 0 0 1rem 1rem; padding: 1.75rem 1.25rem 1.5rem; }
    .today-hero-inner[b-xp0oqhbc5k]  { gap: 1.25rem; }
    .today-breakdown[b-xp0oqhbc5k]   { padding-left: 1rem; padding-right: 1rem; }
    .today-dasha[b-xp0oqhbc5k]       { padding-left: 1rem; padding-right: 1rem; }
    .today-share[b-xp0oqhbc5k]       { padding-left: 1rem; padding-right: 1rem; }
    .today-companion[b-xp0oqhbc5k]   { margin-left: 1rem; margin-right: 1rem; }
    .comp-bar-row[b-xp0oqhbc5k]      { grid-template-columns: 1fr; gap: 0.5rem; }
    .comp-bar-right[b-xp0oqhbc5k]    { gap: 0.5rem; }
    .dasha-lords-row[b-xp0oqhbc5k]   { gap: 0.75rem; }
    .dasha-arrow[b-xp0oqhbc5k]       { display: none; }
    .share-btns[b-xp0oqhbc5k]        { flex-direction: column; gap: 8px; }
    .share-btn[b-xp0oqhbc5k]         { width: 100%; text-align: center; min-height: 44px; }
    .today-charts-hint[b-xp0oqhbc5k] { padding-left: 1rem; }
    .today-rp-teaser[b-xp0oqhbc5k]   { padding: 1rem; }
    .rp-teaser-card[b-xp0oqhbc5k]    { flex-direction: column; align-items: flex-start; gap: 10px; }
    .rp-teaser-link[b-xp0oqhbc5k]    { width: 100%; text-align: center; min-height: 44px; line-height: 44px; }
    .today-page[b-xp0oqhbc5k] { padding-bottom: calc(4rem + var(--bottom-nav-h, 62px)); }
    .today-guidance[b-xp0oqhbc5k] { padding: 0 1rem; }

    /* === Innovation #4: Sticky mini DayScore chip === */
    /* A small score chip that sticks at top once user scrolls past the hero */
    .today-sticky-score[b-xp0oqhbc5k] {
        position: sticky;
        top: 0;
        z-index: 80;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        padding: 8px 16px;
        background: var(--surface);
        border-bottom: 1px solid var(--border);
        box-shadow: 0 2px 8px rgba(0,0,0,.06);
        font-size: 13px;
        font-weight: 700;
        color: var(--text);
    }
    .today-sticky-score .ss-ring[b-xp0oqhbc5k] {
        width: 28px;
        height: 28px;
        border-radius: 50%;
        border: 2.5px solid var(--accent);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 10px;
        font-weight: 800;
        color: var(--accent);
    }

    /* === Innovation #9: Animated DayScore ring draw on load === */
    .day-ring-svg circle.ring-track[b-xp0oqhbc5k] {
        stroke-dasharray: var(--ring-circumference, 220);
        stroke-dashoffset: var(--ring-offset, 0);
        stroke-linecap: round;
        animation: ringDraw-b-xp0oqhbc5k 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
        transform-origin: center;
        transform: rotate(-90deg);
    }

    @keyframes ringDraw-b-xp0oqhbc5k {
        from { stroke-dashoffset: var(--ring-circumference, 220); opacity: .4; }
        to   { stroke-dashoffset: var(--ring-offset, 0);          opacity: 1; }
    }

    /* Animate the score number counting up */
    .day-ring-score[b-xp0oqhbc5k] {
        animation: scoreReveal-b-xp0oqhbc5k .8s .4s both;
    }

    @keyframes scoreReveal-b-xp0oqhbc5k {
        from { opacity: 0; transform: scale(.7); }
        to   { opacity: 1; transform: scale(1); }
    }

    /* Ring size on mobile */
    .day-ring[b-xp0oqhbc5k] { width: 6.5rem; height: 6.5rem; }
    .day-ring-score[b-xp0oqhbc5k] { font-size: 1.9rem; }
    .day-ring-band[b-xp0oqhbc5k] { font-size: .72rem; }
}

/* ── Guidance hero (Rule Engine directive cards) ─────────────────────────── */

.today-guidance[b-xp0oqhbc5k] {
    margin-top: 20px;
    padding: 0 1.5rem;
}

.tg-card[b-xp0oqhbc5k] {
    border: 1px solid var(--border);
    border-radius: 12px;
    background: var(--surface);
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    border-left: 4px solid var(--accent, #7c3aed);
}

.tg-tone-supportive[b-xp0oqhbc5k] { border-left-color: var(--success, #2e7d52); }
.tg-tone-cautionary[b-xp0oqhbc5k] { border-left-color: var(--danger, #b3452f); }

.tg-head[b-xp0oqhbc5k] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 8px;
    flex-wrap: wrap;
}

.tg-pillar[b-xp0oqhbc5k] {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--accent, #7c3aed);
}

.tg-window[b-xp0oqhbc5k] { font-size: 12px; color: var(--muted); }

.tg-headline[b-xp0oqhbc5k] { font-size: 16px; font-weight: 700; line-height: 1.3; }

.tg-focus[b-xp0oqhbc5k] { font-size: 13.5px; line-height: 1.5; }

.tg-phase[b-xp0oqhbc5k] {
    font-size: 12.5px;
    color: var(--muted);
    border-top: 1px dashed var(--border);
    padding-top: 8px;
}

.tg-phase-sep[b-xp0oqhbc5k] { opacity: .6; }

.tg-link[b-xp0oqhbc5k] {
    align-self: flex-end;
    font-size: 13px;
    font-weight: 600;
    color: var(--accent, #7c3aed);
    text-decoration: none;
}

/* ── Guidance card extensions ───────────────────────────────────────────── */
.tg-card + .tg-card[b-xp0oqhbc5k] { margin-top: 12px; }

.tg-card--kala[b-xp0oqhbc5k] {
    border-left-color: var(--muted, #888);
    background: var(--surface-alt, var(--surface));
}

.tg-tone-chip[b-xp0oqhbc5k] {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: 2px 7px;
    border-radius: 99px;
    background: var(--accent-muted, rgba(124,58,237,.12));
    color: var(--accent, #7c3aed);
}
.tg-tone-chip--cautionary[b-xp0oqhbc5k] { background: rgba(179,69,47,.12); color: var(--danger, #b3452f); }
.tg-tone-chip--supportive[b-xp0oqhbc5k]  { background: rgba(46,125,82,.12); color: var(--success, #2e7d52); }

.tg-caution[b-xp0oqhbc5k] {
    font-size: 12.5px;
    color: var(--danger, #b3452f);
    background: rgba(179,69,47,.07);
    border-radius: 6px;
    padding: 6px 10px;
}

.tg-locked-row[b-xp0oqhbc5k] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    margin-top: 10px;
    border: 1px dashed var(--border);
    border-radius: 10px;
    font-size: 13px;
    color: var(--muted);
}
.tg-locked-icon[b-xp0oqhbc5k] { font-size: 16px; }
.tg-locked-text[b-xp0oqhbc5k] { flex: 1; }
.tg-locked-link[b-xp0oqhbc5k] { font-weight: 700; color: var(--accent, #7c3aed); text-decoration: none; }

/* ── Quick-ask inline section ────────────────────────────────────────────── */
.today-ask[b-xp0oqhbc5k] {
    margin-top: 20px;
    padding: 0 1.5rem;
}

.tq-chips[b-xp0oqhbc5k] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.tq-chip[b-xp0oqhbc5k] {
    font-size: 12.5px;
    padding: 6px 12px;
    border-radius: 99px;
    border: 1px solid var(--border);
    background: var(--surface);
    color: var(--text);
    cursor: pointer;
    transition: background .15s, border-color .15s;
}
.tq-chip:hover[b-xp0oqhbc5k] { background: var(--accent-muted, rgba(124,58,237,.1)); border-color: var(--accent, #7c3aed); }

.tq-row[b-xp0oqhbc5k] {
    display: flex;
    gap: 8px;
}

.tq-input[b-xp0oqhbc5k] {
    flex: 1;
    padding: 9px 14px;
    border: 1px solid var(--border);
    border-radius: 8px;
    font-size: 14px;
    background: var(--surface);
    color: var(--text);
    outline: none;
}
.tq-input:focus[b-xp0oqhbc5k] { border-color: var(--accent, #7c3aed); }

.tq-btn[b-xp0oqhbc5k] {
    padding: 9px 18px;
    border-radius: 8px;
    background: var(--accent, #7c3aed);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    border: none;
    cursor: pointer;
}
.tq-btn:disabled[b-xp0oqhbc5k] { opacity: .5; cursor: default; }

/* ── Goals: additional classes (Fix 8) ─────────────────────────────────── */
.goals-empty-hint[b-xp0oqhbc5k] {
    color: var(--muted);
    font-size: 0.82rem;
    margin-bottom: 10px;
}
.goals-empty-hint--sm[b-xp0oqhbc5k] { font-size: 0.75rem; margin-top: 6px; margin-bottom: 0; }

.goals-toggle-wrap[b-xp0oqhbc5k] { margin-top: 10px; }

.goals-btn--toggle[b-xp0oqhbc5k] {
    background: transparent;
    border: 1px solid var(--border);
    color: var(--muted);
    font-size: 0.75rem;
    border-radius: 6px;
    padding: 5px 12px;
    cursor: pointer;
}
.goals-btn--toggle:hover[b-xp0oqhbc5k] { border-color: var(--accent); color: var(--text); }

.goals-list--completed[b-xp0oqhbc5k] { margin-top: 6px; opacity: 0.65; }

.goals-form-actions[b-xp0oqhbc5k] { display: flex; gap: 8px; margin-top: 4px; }

/* Fix goals buttons for dark mode */
.goals-btn--done[b-xp0oqhbc5k] {
    background: color-mix(in srgb, var(--success) 18%, var(--surface2));
    color: var(--success);
    border: 1px solid color-mix(in srgb, var(--success) 30%, transparent);
}
.goals-btn--del[b-xp0oqhbc5k] {
    background: color-mix(in srgb, var(--danger) 15%, var(--surface2));
    color: var(--danger);
    border: 1px solid color-mix(in srgb, var(--danger) 30%, transparent);
}

/* Fix goals-cat color */
.goals-cat[b-xp0oqhbc5k] { color: var(--accent2); }
/* /Pages/Upgrade.razor.rz.scp.css */
/* ── Upgrade / Billing Page ───────────────────────────────────────────────── */

.up-wrap[b-9vf0z5a6y3] {
    min-height: 100vh;
    background: var(--bg, #0f0f1a);
    color: var(--text, #e2e2e8);
}

.up-container[b-9vf0z5a6y3] {
    max-width: 1100px;
    margin: 0 auto;
    padding: 48px 20px 80px;
}

/* Hero */
.up-hero[b-9vf0z5a6y3] { text-align: center; margin-bottom: 36px; }
.up-badge[b-9vf0z5a6y3] {
    display: inline-block;
    background: linear-gradient(135deg, #f5c842, #f59e0b);
    color: #1a1a1a;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .12em;
    border-radius: 20px;
    padding: 4px 14px;
    margin-bottom: 14px;
}
.up-title[b-9vf0z5a6y3] {
    font-size: 34px;
    font-weight: 800;
    margin: 0 0 12px;
    color: var(--text);
}
.up-sub[b-9vf0z5a6y3] {
    font-size: 15px;
    color: var(--muted, #888);
    max-width: 560px;
    margin: 0 auto;
    line-height: 1.65;
}

/* Annual toggle */
.up-toggle-row[b-9vf0z5a6y3] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 32px;
}
.up-toggle-label[b-9vf0z5a6y3] {
    font-size: 14px;
    color: var(--muted);
    font-weight: 500;
    transition: color .2s;
}
.up-toggle-label.up-toggle-active[b-9vf0z5a6y3] { color: var(--text); font-weight: 700; }
.up-toggle-save[b-9vf0z5a6y3] {
    font-size: 13px;
    font-weight: 700;
    background: #16a34a;
    color: #fff;
    border-radius: 20px;
    padding: 2px 7px;
    margin-left: 4px;
    vertical-align: middle;
}
.up-toggle-btn[b-9vf0z5a6y3] {
    width: 44px; height: 24px;
    border-radius: 12px;
    background: var(--border, rgba(255,255,255,.15));
    border: none;
    cursor: pointer;
    position: relative;
    transition: background .2s;
    padding: 0;
}
.up-toggle-btn:has(.up-toggle-knob--on)[b-9vf0z5a6y3] { background: #C4620A; }
.up-toggle-knob[b-9vf0z5a6y3] {
    position: absolute;
    top: 3px; left: 3px;
    width: 18px; height: 18px;
    border-radius: 50%;
    background: #fff;
    transition: transform .2s;
}
.up-toggle-knob--on[b-9vf0z5a6y3] { transform: translateX(20px); }

/* Plans grid — 3 columns */
.up-plans[b-9vf0z5a6y3] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    align-items: stretch;
    margin-bottom: 48px;
}
@media (max-width: 760px) { .up-plans[b-9vf0z5a6y3] { grid-template-columns: 1fr; } }
@media (min-width: 761px) and (max-width: 960px) {
    .up-plans[b-9vf0z5a6y3] { grid-template-columns: 1fr 1fr; }
    .up-plan-aarambh[b-9vf0z5a6y3] { display: none; } /* hide Aarambh on tablet to keep Sarathi/Acharya side-by-side */
}

.up-plan[b-9vf0z5a6y3] {
    border-radius: 16px;
    padding: 28px 22px;
    position: relative;
    border: 1px solid var(--border, rgba(255,255,255,.1));
    background: var(--surface, rgba(255,255,255,.04));
    display: flex;
    flex-direction: column;
}
.up-features[b-9vf0z5a6y3] {
    flex: 1;
}

/* Active / current plan highlight */
.up-plan-current[b-9vf0z5a6y3] { box-shadow: 0 0 0 2px currentColor; }

/* SARATHI card accent */
.up-plan-sarathi[b-9vf0z5a6y3] {
    border-color: #6366f1;
    background: rgba(99,102,241,.07);
}

/* ACHARYA card accent — saffron brand color */
.up-plan-acharya[b-9vf0z5a6y3] {
    border-color: #C4620A;
    background: rgba(196,98,10,.07);
}

.up-plan-badge[b-9vf0z5a6y3] {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: #6366f1;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .06em;
    border-radius: 20px;
    padding: 3px 14px;
    white-space: nowrap;
}
.up-plan-badge--acharya[b-9vf0z5a6y3] { background: #C4620A; }
.up-plan-badge--current[b-9vf0z5a6y3] { background: #16a34a; }

.up-plan-label[b-9vf0z5a6y3] {
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--muted);
    font-weight: 700;
    margin-bottom: 8px;
}
.up-plan-price[b-9vf0z5a6y3] {
    font-size: 34px;
    font-weight: 800;
    color: var(--text);
    margin-bottom: 4px;
}
.up-plan-per[b-9vf0z5a6y3] { font-size: 15px; font-weight: 400; color: var(--muted); }
.up-plan-equiv[b-9vf0z5a6y3] {
    font-size: 14px;
    color: #16a34a;
    font-weight: 600;
    margin-bottom: 16px;
}

/* Feature list */
.up-features[b-9vf0z5a6y3] {
    list-style: none;
    margin: 0 0 24px;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 9px;
}
.up-feat[b-9vf0z5a6y3] {
    font-size: 13px;
    color: var(--text);
    line-height: 1.4;
    padding-left: 18px;
    position: relative;
}
.up-feat[b-9vf0z5a6y3]::before { content: '✓'; position: absolute; left: 0; color: #16a34a; font-weight: 700; }
.up-feat-limit[b-9vf0z5a6y3] { color: var(--muted); }
.up-feat-limit[b-9vf0z5a6y3]::before { content: '·'; color: var(--muted); }

/* CTA buttons */
.up-cta-btn[b-9vf0z5a6y3] {
    display: block;
    width: 100%;
    background: #6366f1;
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 13px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    transition: background .15s, transform .1s;
}
.up-cta-btn:hover:not(:disabled)[b-9vf0z5a6y3] { background: #4f46e5; transform: translateY(-1px); }
.up-cta-btn:disabled[b-9vf0z5a6y3] { opacity: .6; cursor: not-allowed; }
.up-cta-btn--acharya[b-9vf0z5a6y3] { background: #C4620A; }
.up-cta-btn--acharya:hover:not(:disabled)[b-9vf0z5a6y3] { background: #a3520a; }
.up-cta-btn--ghost[b-9vf0z5a6y3] {
    background: transparent;
    border: 1px solid var(--border, rgba(255,255,255,.2));
    color: var(--text);
}
.up-cta-btn--ghost:hover:not(:disabled)[b-9vf0z5a6y3] { background: rgba(255,255,255,.06); transform: none; }

.up-active-badge[b-9vf0z5a6y3] {
    text-align: center;
    font-size: 13.5px;
    font-weight: 600;
    color: #34d399;
    padding: 11px;
    background: rgba(52,211,153,.1);
    border-radius: 10px;
    border: 1px solid rgba(52,211,153,.25);
}
.up-active-badge--acharya[b-9vf0z5a6y3] {
    color: #f59e0b;
    background: rgba(245,158,11,.1);
    border-color: rgba(245,158,11,.25);
}

/* FAQ */
.up-faq[b-9vf0z5a6y3] {
    max-width: 1100px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 28px;
    align-items: start;
}
.up-faq-title[b-9vf0z5a6y3],
.up-faq-section[b-9vf0z5a6y3] {
    grid-column: 1 / -1;
}
.up-faq-title[b-9vf0z5a6y3] {
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 16px;
    color: var(--text);
}
.up-faq-item[b-9vf0z5a6y3] {
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 14px 16px;
    margin-bottom: 8px;
}
.up-faq-item summary[b-9vf0z5a6y3] {
    cursor: pointer;
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
    list-style: none;
}
.up-faq-item summary[b-9vf0z5a6y3]::before { content: "+ "; color: #C4620A; }
.up-faq-item[open] summary[b-9vf0z5a6y3]::before { content: "− "; }
.up-faq-item p[b-9vf0z5a6y3] { margin: 10px 0 0; font-size: 13.5px; color: var(--muted); line-height: 1.6; }
.up-faq-section[b-9vf0z5a6y3] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--accent, #e5a32d);
    margin: 22px 0 10px;
    padding-left: 2px;
}
@media (max-width: 760px) { .up-faq[b-9vf0z5a6y3] { grid-template-columns: 1fr; } }

/* ── Feature Comparison Table ──────────────────────────────────────────────── */
.up-compare[b-9vf0z5a6y3] {
    margin: 60px 0 40px;
}
.up-compare-title[b-9vf0z5a6y3] {
    text-align: center;
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: .4rem;
    color: var(--text);
}
.up-compare-sub[b-9vf0z5a6y3] {
    text-align: center;
    font-size: 1.0rem;
    color: var(--muted);
    margin-bottom: 28px;
}
.up-compare-wrap[b-9vf0z5a6y3] {
    overflow-x: auto;
    border-radius: 12px;
    border: 1px solid var(--border);
}
.up-ct[b-9vf0z5a6y3] {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.0rem;
    min-width: 560px;
}
.up-ct thead[b-9vf0z5a6y3] {
    position: sticky;
    top: 0;
    z-index: 5;
}
.up-ct thead tr[b-9vf0z5a6y3] {
    background: var(--surface);
    border-bottom: 2px solid var(--border);
}
.up-ct-feat-col[b-9vf0z5a6y3] {
    text-align: left;
    padding: 14px 18px;
    font-size: .85rem;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--muted);
    width: 52%;
}
.up-ct-tier[b-9vf0z5a6y3] {
    text-align: center;
    padding: 10px 10px 14px;
    font-size: .95rem;
    font-weight: 800;
    letter-spacing: .04em;
    width: 16%;
}
.up-ct-aarambh[b-9vf0z5a6y3] { color: var(--muted); }
.up-ct-sarathi[b-9vf0z5a6y3] { color: #818cf8; }
.up-ct-acharya[b-9vf0z5a6y3] { color: #f59e0b; }

/* Tier header pill structure */
.up-ct-th-inner[b-9vf0z5a6y3] { display: flex; flex-direction: column; align-items: center; gap: 2px; }
.up-ct-th-bar[b-9vf0z5a6y3] { width: 100%; height: 3px; border-radius: 2px; margin-bottom: 5px; }
.up-ct-aarambh .up-ct-th-bar[b-9vf0z5a6y3] { background: var(--muted); opacity: .4; }
.up-ct-sarathi .up-ct-th-bar[b-9vf0z5a6y3] { background: #818cf8; }
.up-ct-acharya .up-ct-th-bar[b-9vf0z5a6y3] { background: #f59e0b; }
.up-ct-th-pill[b-9vf0z5a6y3] {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: 2px 8px;
    border-radius: 20px;
    margin-top: 4px;
}
.up-ct-free .up-ct-th-pill[b-9vf0z5a6y3]   { background: rgba(123,127,168,.13); color: var(--muted); }
.up-ct-seeker .up-ct-th-pill[b-9vf0z5a6y3] { background: rgba(129,140,248,.18); color: #818cf8; }
.up-ct-scholar .up-ct-th-pill[b-9vf0z5a6y3]{ background: rgba(245,158,11,.15); color: #f59e0b; }

/* Sarathi column tint */
.up-ct thead th:nth-child(3)[b-9vf0z5a6y3],
.up-ct tbody tr:not(.up-ct-group) td:nth-child(3)[b-9vf0z5a6y3] { background: rgba(129,140,248,.05); }

/* Group header rows */
.up-ct-group td[b-9vf0z5a6y3] {
    background: color-mix(in srgb, var(--accent2, #7c6af7) 6%, var(--surface));
    padding: 9px 18px;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--muted);
    border-top: 1px solid var(--border);
}
.up-ct-group td:first-child[b-9vf0z5a6y3] {
    border-left: 3px solid var(--accent2, #7c6af7);
    padding-left: 15px;
}

/* Data rows */
.up-ct tbody tr:not(.up-ct-group)[b-9vf0z5a6y3] {
    border-bottom: 1px solid var(--border);
    transition: background 100ms;
}
.up-ct tbody tr:not(.up-ct-group):hover[b-9vf0z5a6y3] {
    background: color-mix(in srgb, var(--accent) 4%, transparent);
}
.up-ct tbody tr:not(.up-ct-group) td:first-child[b-9vf0z5a6y3] {
    padding: 11px 18px;
    color: var(--text);
    font-size: 1.0rem;
}
.up-ct tbody tr:not(.up-ct-group) td.y[b-9vf0z5a6y3],
.up-ct tbody tr:not(.up-ct-group) td.n[b-9vf0z5a6y3] {
    text-align: center;
    font-size: 1.05rem;
    font-weight: 700;
    padding: 11px 10px;
}
/* Circle ✓ / — for icon-only cells */
.up-ct tbody tr:not(.up-ct-group) td.y:not(.up-ct-text)[b-9vf0z5a6y3],
.up-ct tbody tr:not(.up-ct-group) td.n:not(.up-ct-text)[b-9vf0z5a6y3] { font-size: 0; }
.up-ct tbody tr:not(.up-ct-group) td.y:not(.up-ct-text)[b-9vf0z5a6y3]::after {
    content: '✓';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: rgba(74,222,128,.14);
    color: #4ade80;
    font-size: 13px;
    font-weight: 700;
}
.up-ct tbody tr:not(.up-ct-group) td.n:not(.up-ct-text)[b-9vf0z5a6y3]::after {
    content: '—';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    border: 1.5px solid rgba(123,127,168,.35);
    color: var(--muted);
    font-size: 11px;
    opacity: .5;
}
/* Text value cells */
.up-ct td.y.up-ct-text[b-9vf0z5a6y3] { color: #4ade80; font-weight: 700; }
.up-ct td.n.up-ct-text[b-9vf0z5a6y3] { color: var(--muted); opacity: .6; }

/* Unique badge — golden */
.up-ct-unique[b-9vf0z5a6y3] {
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .04em;
    color: #f5c842;
    background: rgba(245,200,66,.12);
    border: 1px solid rgba(245,200,66,.36);
    border-radius: 5px;
    padding: 1px 5px;
    margin-left: 6px;
    white-space: nowrap;
    vertical-align: middle;
    text-transform: uppercase;
}

/* Gateway selector */
.up-gw-selector[b-9vf0z5a6y3] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 14px;
}
.up-gw-option[b-9vf0z5a6y3] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    border-radius: 8px;
    border: 1.5px solid var(--border, rgba(255,255,255,.12));
    background: transparent;
    color: var(--muted, #888);
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: border-color .15s, color .15s, background .15s;
}
.up-gw-option:hover[b-9vf0z5a6y3] { border-color: var(--accent, #c4620a); color: var(--text); }
.up-gw-active[b-9vf0z5a6y3] {
    border-color: var(--accent, #c4620a) !important;
    color: var(--text) !important;
    background: rgba(196,98,10,.08) !important;
}

/* Info button (ⓘ) in comparison table */
.up-info-btn[b-9vf0z5a6y3] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px; height: 18px;
    border-radius: 50%;
    border: 1px solid var(--muted, #888);
    background: transparent;
    color: var(--muted, #888);
    font-size: 11px;
    font-weight: 700;
    cursor: pointer;
    margin-left: 6px;
    vertical-align: middle;
    line-height: 1;
    transition: border-color .15s, color .15s, background .15s;
    flex-shrink: 0;
}
.up-info-btn:hover[b-9vf0z5a6y3] {
    border-color: #f5c842;
    color: #f5c842;
    background: rgba(245,200,66,.1);
}

/* Info modal */
.up-info-overlay[b-9vf0z5a6y3] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.65);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    backdrop-filter: blur(3px);
}
.up-info-modal[b-9vf0z5a6y3] {
    background: var(--surface, #1a1a2e);
    border: 1px solid rgba(245,200,66,.25);
    border-radius: 14px;
    padding: 28px 28px 24px;
    max-width: 560px;
    width: 100%;
    max-height: 80vh;
    overflow-y: auto;
    position: relative;
    box-shadow: 0 20px 60px rgba(0,0,0,.6);
}
.up-info-modal-close[b-9vf0z5a6y3] {
    position: absolute;
    top: 14px; right: 16px;
    background: transparent;
    border: none;
    color: var(--muted);
    font-size: 20px;
    cursor: pointer;
    line-height: 1;
    padding: 4px 6px;
    border-radius: 6px;
    transition: color .15s, background .15s;
}
.up-info-modal-close:hover[b-9vf0z5a6y3] { color: var(--text); background: rgba(255,255,255,.08); }
.up-info-modal-source[b-9vf0z5a6y3] {
    font-size: 11px;
    font-weight: 600;
    color: #f5c842;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin: 0 0 10px;
}
.up-info-modal-title[b-9vf0z5a6y3] {
    font-size: 17px;
    font-weight: 800;
    color: var(--text);
    margin: 0 0 10px;
    padding-right: 28px;
}
.up-info-modal-purpose[b-9vf0z5a6y3] {
    font-size: 13.5px;
    color: var(--muted);
    line-height: 1.65;
    margin: 0 0 16px;
    border-left: 3px solid rgba(245,200,66,.35);
    padding-left: 12px;
}
.up-info-modal ul[b-9vf0z5a6y3] {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.up-info-modal li[b-9vf0z5a6y3] {
    font-size: 13.5px;
    color: var(--text);
    line-height: 1.55;
    padding-left: 20px;
    position: relative;
}
.up-info-modal li[b-9vf0z5a6y3]::before {
    content: "✦";
    color: #f5c842;
    font-size: 10px;
    position: absolute;
    left: 2px;
    top: 2px;
}

/* Bottom CTA under table — full table width */
.up-compare-cta[b-9vf0z5a6y3] {
    display: flex;
    gap: 0;
    margin-top: 0;
    flex-wrap: nowrap;
    width: 100%;
}
.up-compare-cta .up-cta-btn[b-9vf0z5a6y3] {
    flex: 1;
    width: auto;
    max-width: none;
    border-radius: 0;
    padding: 14px 8px;
}
.up-compare-cta .up-cta-btn:first-child[b-9vf0z5a6y3] { border-radius: 0 0 0 10px; }
.up-compare-cta .up-cta-btn:last-child[b-9vf0z5a6y3]  { border-radius: 0 0 10px 0; }

@media (prefers-color-scheme: light) {
    .up-wrap[b-9vf0z5a6y3] { background: #f8f8fc; }
}
:root[data-theme="light"] .up-wrap[b-9vf0z5a6y3] { background: #f8f8fc; }

/* ── Lifetime Family SKU banner ─────────────────────────────────────────── */

.up-lifetime-banner[b-9vf0z5a6y3] {
    display: flex;
    align-items: center;
    gap: 24px;
    background: linear-gradient(135deg,
        color-mix(in srgb, var(--color-accent) 14%, var(--color-surface)),
        var(--color-surface));
    border: 1px solid var(--color-accent);
    border-radius: 14px;
    padding: 24px 28px;
    margin: 0 auto 36px;
    max-width: 900px;
    position: relative;
    overflow: hidden;
}

.up-lifetime-badge[b-9vf0z5a6y3] {
    position: absolute;
    top: 14px;
    right: 16px;
    background: var(--color-accent);
    color: #fff;
    border-radius: 20px;
    padding: 3px 12px;
    font-size: 0.75rem;
    font-weight: 700;
    white-space: nowrap;
}

.up-lifetime-content[b-9vf0z5a6y3] { flex: 1; }

.up-lifetime-title[b-9vf0z5a6y3] {
    font-size: 1.15rem;
    font-weight: 800;
    color: var(--color-text);
    margin: 0 0 6px;
    padding-right: 100px;
}

.up-lifetime-desc[b-9vf0z5a6y3] {
    font-size: 0.85rem;
    color: var(--color-muted);
    margin: 0 0 12px;
    line-height: 1.55;
}

.up-lifetime-price[b-9vf0z5a6y3] {
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--color-accent);
}

.up-lifetime-note[b-9vf0z5a6y3] {
    font-size: 0.78rem;
    font-weight: 400;
    color: var(--color-muted);
    margin-left: 6px;
}

.up-lifetime-cta[b-9vf0z5a6y3] {
    display: inline-block;
    padding: 12px 22px;
    border-radius: 8px;
    background: var(--color-accent);
    color: #fff;
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: opacity 0.15s;
    flex-shrink: 0;
}

.up-lifetime-cta:hover[b-9vf0z5a6y3] { opacity: 0.88; }

.up-lifetime-cta--owned[b-9vf0z5a6y3] {
    background: var(--color-success, #22c55e);
    cursor: default;
    pointer-events: none;
    font-size: 0.9rem;
}

.up-lifetime-cta--sold-out[b-9vf0z5a6y3] {
    background: var(--color-muted, #888);
    cursor: not-allowed;
    pointer-events: none;
    opacity: 0.7;
}

.up-lifetime-banner--sold-out[b-9vf0z5a6y3] { opacity: 0.75; }

.up-lifetime-progress[b-9vf0z5a6y3] {
    height: 6px;
    background: rgba(255,255,255,0.2);
    border-radius: 3px;
    margin: 8px 0 12px;
    overflow: hidden;
}

.up-lifetime-progress-bar[b-9vf0z5a6y3] {
    height: 100%;
    background: var(--color-accent, #f97316);
    border-radius: 3px;
    transition: width 0.6s ease;
    min-width: 2px;
}

@media (max-width: 640px) {
    .up-lifetime-banner[b-9vf0z5a6y3] {
        flex-direction: column;
        align-items: flex-start;
        padding: 20px;
        gap: 16px;
    }
    .up-lifetime-title[b-9vf0z5a6y3] { padding-right: 0; }
    .up-lifetime-cta[b-9vf0z5a6y3] { width: 100%; text-align: center; }
}

/* ── Promo code row ─────────────────────────────────────────────────────── */
.up-promo-row[b-9vf0z5a6y3] { display:flex; align-items:center; gap:8px; margin:0 auto 20px; max-width:460px; flex-wrap:wrap; }
.up-promo-input[b-9vf0z5a6y3] { flex:1; min-width:160px; padding:9px 12px; border:1px solid var(--border); border-radius:8px; font-size:14px; background:var(--input-bg,#fff); color:var(--text); }
.up-promo-apply-btn[b-9vf0z5a6y3] { padding:9px 18px; background:#7c3aed; color:#fff; border:none; border-radius:8px; font-size:13px; font-weight:600; cursor:pointer; }
.up-promo-apply-btn:disabled[b-9vf0z5a6y3] { opacity:.55; cursor:not-allowed; }
.up-promo-msg[b-9vf0z5a6y3] { font-size:13px; }
.up-promo-msg--ok[b-9vf0z5a6y3] { color:#166534; }
.up-promo-msg--err[b-9vf0z5a6y3] { color:#9b1c1c; }

/* ── Mobile ── */
@media (max-width: 767px) {
    .up-wrap[b-9vf0z5a6y3] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .up-info-btn[b-9vf0z5a6y3] {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .up-compare-cta[b-9vf0z5a6y3] { flex-wrap: wrap; gap: 8px; }
    .up-compare-cta > *[b-9vf0z5a6y3] { flex: 1 1 100%; text-align: center; min-height: 48px; }
    .up-container[b-9vf0z5a6y3]   { padding: 28px 16px 64px; }
    .up-hero-title[b-9vf0z5a6y3]  { font-size: clamp(22px, 6vw, 32px); }
    .up-plan-name[b-9vf0z5a6y3]   { font-size: 17px; }
}
/* /Pages/VedhaCalendarPage.razor.rz.scp.css */
/* ── Natal Vedha Calendar — scoped styles ────────────────────────────────
   Tokens mirror project palette so theme switching is free.
   ─────────────────────────────────────────────────────────────────────── */

.vc-wrap[b-yhgspa8e8n] {
    --vc-bg:        var(--surface);
    --vc-surface:   var(--surface2);
    --vc-border:    var(--border);
    --vc-text:      var(--text);
    --vc-muted:     var(--muted);
    --vc-accent:    var(--accent2);
    --vc-ben:       var(--success);
    --vc-mal:       var(--danger);
    --vc-radius:    6px;

    min-height: 100vh;
    background: var(--vc-bg);
    color: var(--vc-text);
    font-family: 'Inter', system-ui, sans-serif;
    padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem);
}

/* ── Header ──────────────────────────────────────────────────────────── */
.vc-header[b-yhgspa8e8n] {
    padding: 1.5rem 2rem 1rem;
    border-bottom: 1px solid var(--vc-border);
}
.vc-header-row[b-yhgspa8e8n] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}
.vc-title[b-yhgspa8e8n] {
    font-size: 1.4rem;
    font-weight: 700;
    margin: 0 0 .25rem;
}
.vc-subtitle[b-yhgspa8e8n] {
    font-size: .82rem;
    color: var(--vc-muted);
    margin: 0;
    max-width: 52ch;
    line-height: 1.55;
}
.vc-header-actions[b-yhgspa8e8n] {
    display: flex;
    align-items: center;
    gap: .65rem;
    flex-shrink: 0;
}

.vc-pdf-btn[b-yhgspa8e8n] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .32rem .85rem;
    border-radius: var(--vc-radius);
    border: 1px solid var(--vc-border);
    background: none;
    color: var(--vc-text);
    font-size: .78rem;
    font-weight: 600;
    cursor: pointer;
    transition: background .14s, border-color .14s;
    white-space: nowrap;
}
.vc-pdf-btn:hover:not(:disabled)[b-yhgspa8e8n] {
    background: color-mix(in srgb, var(--vc-accent) 10%, transparent);
    border-color: var(--vc-accent);
    color: var(--vc-accent);
}
.vc-pdf-btn:disabled[b-yhgspa8e8n] {
    opacity: .55;
    cursor: not-allowed;
}
.vc-pdf-spinner[b-yhgspa8e8n] {
    display: inline-block;
    width: .75rem;
    height: .75rem;
    border: 2px solid var(--vc-border);
    border-top-color: var(--vc-accent);
    border-radius: 50%;
    animation: vc-spin-b-yhgspa8e8n .7s linear infinite;
}

.vc-plan-badge[b-yhgspa8e8n] {
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: .2rem .55rem;
    border-radius: .9rem;
    background: color-mix(in srgb, var(--vc-accent) 15%, transparent);
    color: var(--vc-accent);
    white-space: nowrap;
    flex-shrink: 0;
    align-self: flex-start;
    margin-top: .2rem;
}

/* ── Gate ────────────────────────────────────────────────────────────── */
.vc-gate[b-yhgspa8e8n] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 4rem 2rem;
    text-align: center;
}
.vc-gate--locked .vc-gate-symbol[b-yhgspa8e8n] { color: var(--vc-muted); }
.vc-gate-symbol[b-yhgspa8e8n] {
    font-size: 2.5rem;
    color: var(--vc-accent);
}
.vc-gate-msg[b-yhgspa8e8n] {
    font-size: .9rem;
    color: var(--vc-muted);
    max-width: 38ch;
    line-height: 1.6;
    margin: 0;
}
.vc-gate-btn[b-yhgspa8e8n] {
    display: inline-block;
    padding: .45rem 1.2rem;
    border-radius: var(--vc-radius);
    background: var(--vc-accent);
    color: #fff;
    font-weight: 600;
    font-size: .82rem;
    text-decoration: none;
}

/* ── Loading ─────────────────────────────────────────────────────────── */
.vc-loading[b-yhgspa8e8n] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 4rem 2rem;
    color: var(--vc-muted);
    font-size: .85rem;
}
.vc-spinner[b-yhgspa8e8n] {
    width: 2rem;
    height: 2rem;
    border: 3px solid var(--vc-border);
    border-top-color: var(--vc-accent);
    border-radius: 50%;
    animation: vc-spin-b-yhgspa8e8n .8s linear infinite;
}
@keyframes vc-spin-b-yhgspa8e8n { to { transform: rotate(360deg); } }

.vc-error[b-yhgspa8e8n] {
    padding: 1.5rem 2rem;
    color: var(--vc-mal);
    font-size: .85rem;
}

/* ── Snapshot bar ────────────────────────────────────────────────────── */
.vc-snapshot[b-yhgspa8e8n] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: .85rem 2rem;
    background: var(--vc-surface);
    border-bottom: 1px solid var(--vc-border);
    flex-wrap: wrap;
}
.vc-snapshot-nak[b-yhgspa8e8n] {
    display: flex;
    flex-direction: column;
    gap: .1rem;
    flex-shrink: 0;
}
.vc-snapshot-label[b-yhgspa8e8n] {
    font-size: .65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--vc-muted);
}
.vc-snapshot-value[b-yhgspa8e8n] {
    font-size: .95rem;
    font-weight: 700;
    color: var(--vc-accent);
}
.vc-snapshot-refs[b-yhgspa8e8n] {
    display: flex;
    gap: .4rem;
    flex-wrap: wrap;
    flex: 1 1 auto;
}
.vc-ref-chip[b-yhgspa8e8n] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    padding: .18rem .55rem;
    border: 1px solid var(--vc-border);
    border-radius: .9rem;
    font-size: .7rem;
}
.vc-ref-layer[b-yhgspa8e8n] {
    font-weight: 700;
    color: var(--vc-muted);
    font-size: .65rem;
    text-transform: uppercase;
}
.vc-ref-nak[b-yhgspa8e8n] { color: var(--vc-text); }
.vc-snapshot-stats[b-yhgspa8e8n] {
    display: flex;
    gap: .75rem;
    flex-wrap: wrap;
    flex-shrink: 0;
}
.vc-stat[b-yhgspa8e8n] {
    font-size: .75rem;
    color: var(--vc-muted);
    font-variant-numeric: tabular-nums;
}
.vc-stat--ben[b-yhgspa8e8n] { color: var(--vc-ben); }
.vc-stat--mal[b-yhgspa8e8n] { color: var(--vc-mal); }

/* ── Month selector ──────────────────────────────────────────────────── */
.vc-months-bar[b-yhgspa8e8n] {
    display: flex;
    gap: .5rem;
    padding: .85rem 2rem .5rem;
}
.vc-months-btn[b-yhgspa8e8n] {
    padding: .28rem .75rem;
    border-radius: var(--vc-radius);
    border: 1px solid var(--vc-border);
    background: none;
    color: var(--vc-muted);
    font-size: .78rem;
    cursor: pointer;
    transition: background .15s, color .15s, border-color .15s;
}
.vc-months-btn:hover[b-yhgspa8e8n] {
    background: color-mix(in srgb, var(--vc-accent) 8%, transparent);
    border-color: var(--vc-accent);
    color: var(--vc-text);
}
.vc-months-btn--active[b-yhgspa8e8n] {
    background: color-mix(in srgb, var(--vc-accent) 15%, transparent);
    border-color: var(--vc-accent);
    color: var(--vc-accent);
    font-weight: 600;
}

/* ── Month accordion ─────────────────────────────────────────────────── */
.vc-mo[b-yhgspa8e8n] {
    border-bottom: 1px solid var(--vc-border);
}
.vc-mo-head[b-yhgspa8e8n] {
    display: flex;
    align-items: center;
    gap: .75rem;
    width: 100%;
    padding: .7rem 2rem;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
    color: var(--vc-text);
    transition: background .12s;
}
.vc-mo-head:hover[b-yhgspa8e8n] { background: color-mix(in srgb, var(--vc-accent) 4%, transparent); }
.vc-mo--open .vc-mo-head[b-yhgspa8e8n] { background: color-mix(in srgb, var(--vc-accent) 6%, transparent); }
.vc-mo-label[b-yhgspa8e8n] {
    font-size: .85rem;
    font-weight: 600;
    min-width: 6rem;
}
.vc-mo-chips[b-yhgspa8e8n] {
    display: flex;
    gap: .35rem;
    flex: 1 1 auto;
}
.vc-mo-chip[b-yhgspa8e8n] {
    font-size: .68rem;
    font-weight: 700;
    padding: .1rem .4rem;
    border-radius: .9rem;
}
.vc-mo-chip--ben[b-yhgspa8e8n] { background: color-mix(in srgb, var(--vc-ben) 15%, transparent); color: var(--vc-ben); }
.vc-mo-chip--mal[b-yhgspa8e8n] { background: color-mix(in srgb, var(--vc-mal) 15%, transparent); color: var(--vc-mal); }
.vc-mo-net[b-yhgspa8e8n] {
    font-size: .78rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    min-width: 2.5rem;
    text-align: right;
}
.vc-mo-net--ben[b-yhgspa8e8n] { color: var(--vc-ben); }
.vc-mo-net--mal[b-yhgspa8e8n] { color: var(--vc-mal); }
.vc-mo-net--neu[b-yhgspa8e8n] { color: var(--vc-muted); }
.vc-mo-chevron[b-yhgspa8e8n] {
    font-size: .65rem;
    color: var(--vc-muted);
    flex-shrink: 0;
}

/* ── Strike table ────────────────────────────────────────────────────── */
.vc-mo-body[b-yhgspa8e8n] {
    overflow-x: auto;
    padding: 0 2rem .75rem;
}
.vc-tbl[b-yhgspa8e8n] {
    width: 100%;
    border-collapse: collapse;
    font-size: .74rem;
}
.vc-tbl th[b-yhgspa8e8n] {
    text-align: left;
    font-size: .65rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: var(--vc-muted);
    padding: .3rem .4rem;
    border-bottom: 1px solid var(--vc-border);
    white-space: nowrap;
}
.vc-tbl td[b-yhgspa8e8n] {
    padding: .28rem .4rem;
    border-bottom: 1px solid color-mix(in srgb, var(--vc-border) 50%, transparent);
    vertical-align: middle;
}
.vc-tbl tbody tr:last-child td[b-yhgspa8e8n] { border-bottom: none; }
.vc-row--ben td[b-yhgspa8e8n] { background: color-mix(in srgb, var(--vc-ben) 4%, transparent); }
.vc-row--mal td[b-yhgspa8e8n] { background: color-mix(in srgb, var(--vc-mal) 4%, transparent); }
.vc-tbl-date[b-yhgspa8e8n] { font-variant-numeric: tabular-nums; white-space: nowrap; color: var(--vc-muted); }
.vc-tbl-until[b-yhgspa8e8n] { font-variant-numeric: tabular-nums; white-space: nowrap; color: var(--vc-muted); }
.vc-tbl-ref[b-yhgspa8e8n] { font-size: .68rem; color: var(--vc-muted); white-space: nowrap; }
.vc-tbl-wt[b-yhgspa8e8n] { text-align: center; font-variant-numeric: tabular-nums; }

.vc-planet-dot[b-yhgspa8e8n] {
    display: inline-block;
    width: .45rem;
    height: .45rem;
    border-radius: 50%;
    vertical-align: middle;
    margin-right: .3rem;
}
.vc-planet-dot--ben[b-yhgspa8e8n] { background: var(--vc-ben); }
.vc-planet-dot--mal[b-yhgspa8e8n] { background: var(--vc-mal); }

.vc-dir-badge[b-yhgspa8e8n] {
    display: inline-block;
    font-size: .65rem;
    font-weight: 700;
    padding: .1rem .35rem;
    border-radius: .8rem;
    text-transform: capitalize;
}
.vc-dir-badge--janma[b-yhgspa8e8n]   { background: color-mix(in srgb, var(--vc-accent) 18%, transparent); color: var(--vc-accent); }
.vc-dir-badge--direct[b-yhgspa8e8n]  { background: color-mix(in srgb, var(--vc-mal) 15%, transparent); color: var(--vc-mal); }
.vc-dir-badge--forward[b-yhgspa8e8n] { background: color-mix(in srgb, #b45309 15%, transparent); color: #b45309; }
.vc-dir-badge--backward[b-yhgspa8e8n] { background: color-mix(in srgb, var(--vc-muted) 20%, transparent); color: var(--vc-muted); }

/* ── Responsive ──────────────────────────────────────────────────────── */
@media (max-width: 600px) {
    .vc-header[b-yhgspa8e8n], .vc-snapshot[b-yhgspa8e8n], .vc-months-bar[b-yhgspa8e8n], .vc-mo-head[b-yhgspa8e8n] { padding-left: 1rem; padding-right: 1rem; }
    .vc-mo-body[b-yhgspa8e8n] { padding-left: .5rem; padding-right: .5rem; }
    .vc-title[b-yhgspa8e8n] { font-size: 1.15rem; }
    .vc-snapshot[b-yhgspa8e8n] { flex-direction: column; align-items: flex-start; gap: .75rem; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .vc-wrap[b-yhgspa8e8n] { padding-bottom: calc(var(--bottom-nav-h, 62px) + 1.5rem); }
    .vc-months-btn[b-yhgspa8e8n]    { min-height: 44px; padding: .7rem 1.1rem; font-size: .85rem; }
    .vc-pdf-btn[b-yhgspa8e8n]       { min-height: 44px; padding: .7rem 1.1rem; font-size: .85rem; }
    .vc-tbl[b-yhgspa8e8n]           { font-size: .84rem; }
    .vc-tbl th[b-yhgspa8e8n]        { font-size: .74rem; padding: 8px 8px; }
    .vc-snapshot-label[b-yhgspa8e8n] { font-size: .74rem; }
    .vc-mo-chip[b-yhgspa8e8n]       { font-size: .76rem; }
    .vc-dir-badge[b-yhgspa8e8n]     { font-size: .74rem; }
    .vc-nav-row[b-yhgspa8e8n]       { flex-wrap: wrap; gap: 8px; padding: 14px 16px; }
}
