/* KundliLive V21 — final, last-loaded inner-page theme layer. */
:root {
    --kl-as-yellow: #ffc107;
    --kl-as-orange: #ff6f00;
    --kl-as-orange-dark: #d95700;
    --kl-as-cream: #fff8df;
    --kl-as-ink: #3f3832;
    --kl-as-muted: #6d655f;
    --kl-as-line: #ded8cf;
    --kl-as-shadow: 0 2px 7px rgba(54, 43, 32, .13);
}

body:not(.has-generated-report),
body.has-generated-report,
.tools-main,
.kl-report-shell,
.ka-wrap {
    font-family: Roboto, "Noto Sans Devanagari", Arial, sans-serif;
}

.tools-main {
    color: var(--kl-as-ink);
    font-size: 16px;
    line-height: 1.62;
}

.tools-main p,
.tools-main li,
.tools-main td,
.tools-main dd {
    font-size: 16px;
}

.tools-main label,
.tools-main th,
.tools-main dt,
.tools-main small {
    font-size: 14px;
}

.tools-main input,
.tools-main select,
.tools-main textarea,
.tools-main button {
    font-family: inherit;
    font-size: 15px;
}

.tools-main input,
.tools-main select,
.tools-main textarea {
    min-height: 43px;
    border-color: #d4cec4;
    border-radius: 3px;
    background: #fff;
}

.tools-main button,
.tools-main input[type="submit"],
.tools-main .matching-submit,
.tools-main .gpm-submit,
.tools-main .mp-submit {
    border-radius: 3px;
}

.tools-main a:not(.tools-btn):not(.tools-brand):not(.tools-nav__link) {
    text-underline-offset: 3px;
}

/* Shared inner-page cards. */
body.matching-page .matching-page-title,
body.matching-page .tools-match-form,
body.matching-page .matching-guide__header,
body.matching-page .matching-overview-grid article,
body.matching-page .matching-kootas,
body.matching-page .matching-consideration-grid article,
body.matching-page .matching-faq,
body.daily-tool-page .daily-page-head,
body.daily-tool-page .daily-tool-filter,
body.daily-tool-page .choghadiya-summary,
body.daily-tool-page .choghadiya-table-card,
body.daily-tool-page .hindu-calendar-card,
body.daily-tool-page .festival-list,
body.panchang-page .panchang-clean-report,
body.panchang-page .panchang-sidebar section,
body.gpm-page .gpm-workspace,
body.gpm-page .gpm-guide,
body.gpm-page .gpm-rules article,
body.gpm-page .gpm-faq,
body.marriage-prediction-page .mp-hero,
body.marriage-prediction-page .mp-calculator,
body.marriage-prediction-page .mp-result,
body.marriage-prediction-page .mp-panel,
body.marriage-prediction-page .mp-guide,
body.marriage-prediction-page .mp-topic-grid article,
body.marriage-prediction-page .mp-faq,
body.info-page .info-hero,
body.info-page .info-card,
body.info-page .info-workflow,
body.info-page .info-transparency,
body.info-page .info-note,
body.info-page .why-hero,
body.info-page .why-identity,
body.info-page .why-difference,
body.info-page .why-statement,
body.info-page .why-process,
body.info-page .why-founder,
body.info-page .why-faq,
body.info-page .why-final-cta,
body.info-page .static-contact-card,
body.info-page .static-related-links {
    border-color: var(--kl-as-line) !important;
    border-radius: 3px !important;
    background-color: #fff !important;
    box-shadow: var(--kl-as-shadow) !important;
}

body.matching-page .matching-page-title,
body.daily-tool-page .daily-page-head,
body.daily-tool-page .hindu-calendar-card,
body.panchang-page .panchang-clean-report,
body.gpm-page .gpm-workspace,
body.marriage-prediction-page .mp-hero,
body.info-page .info-hero,
body.info-page .why-hero {
    border-top: 5px solid var(--kl-as-yellow) !important;
}

body.daily-tool-page .daily-page-head h1,
body.panchang-page .panchang-report-head h1,
body.gpm-page h1,
body.marriage-prediction-page h1,
body.info-page h1 {
    color: #574f48 !important;
    font-size: clamp(31px, 3.2vw, 44px) !important;
    line-height: 1.18 !important;
}

body.daily-tool-page .daily-page-head p,
body.panchang-page .panchang-report-head p,
body.gpm-page .gpm-report-head p,
body.marriage-prediction-page .mp-hero p,
body.info-page .info-hero p,
body.info-page .why-hero p {
    color: var(--kl-as-muted) !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
}

/* Calendar: replace the remaining dark legacy grid with the shared warm theme. */
body.calendar-page .hindu-calendar-card__head,
body.calendar-page .calendar-selected-summary,
body.panchang-page .panchang-day-title,
body.panchang-page .panchang-sidebar h2,
body.gpm-page .gpm-report-head,
body.marriage-prediction-page .mp-panel > h2,
body.info-page .info-card > h2 {
    background: var(--kl-as-cream) !important;
    border-color: #ecd58b !important;
    color: #5c5047 !important;
}

body.calendar-page .hindu-calendar-weekday {
    background: #f6f3ee !important;
    color: #5c554f !important;
    border-color: #ddd7ce !important;
    font-size: 14px !important;
}

body.calendar-page .hindu-calendar-weekday.is-sunday,
body.calendar-page .hindu-calendar-day.is-sunday {
    background: #fff1e8 !important;
    color: #b54225 !important;
}

body.calendar-page .hindu-calendar-day {
    background: #fff !important;
    border-color: #e1dcd4 !important;
    color: var(--kl-as-ink) !important;
}

body.calendar-page .hindu-calendar-day:hover,
body.calendar-page .hindu-calendar-day.has-festival,
body.calendar-page .hindu-calendar-day.is-today {
    background: #fff8dc !important;
    box-shadow: inset 0 0 0 2px var(--kl-as-yellow) !important;
}

body.calendar-page .hindu-calendar-day__number {
    color: #c95325 !important;
    font-size: 18px !important;
}

body.calendar-page .hindu-calendar-day__tithi-end,
body.calendar-page .hindu-calendar-day__nakshatra,
body.calendar-page .hindu-calendar-day__moon,
body.calendar-page .hindu-calendar-day__sun,
body.calendar-page .hindu-calendar-day__yoga {
    color: #6c635c !important;
    font-size: 13px !important;
}

body.panchang-page .panchang-sidebar a,
body.panchang-page .panchang-period-line strong,
body.panchang-page .panchang-period-line > span,
body.panchang-page .panchang-day-title p,
body.panchang-page .panchang-day-title > strong {
    font-size: 14px !important;
}

body.panchang-page .panchang-text-section h2,
body.panchang-page .panchang-day-title h2 {
    color: #5b5048 !important;
}

body.panchang-page .panchang-text-section h2 {
    border-bottom-color: var(--kl-as-orange) !important;
}

/* Forms, CTAs and information links. */
body.matching-page .tools-match-form .tools-button,
body.daily-tool-page .daily-tool-filter button,
body.gpm-page .gpm-submit,
body.marriage-prediction-page .mp-submit,
body.info-page .why-final-cta a,
body.info-page .static-contact-card a {
    border-color: var(--kl-as-orange) !important;
    background: var(--kl-as-orange) !important;
    color: #fff !important;
    box-shadow: 0 2px 5px rgba(164, 72, 0, .22) !important;
    font-size: 15px !important;
}

body.matching-page .tools-match-form .tools-button:hover,
body.daily-tool-page .daily-tool-filter button:hover,
body.gpm-page .gpm-submit:hover,
body.marriage-prediction-page .mp-submit:hover {
    background: var(--kl-as-orange-dark) !important;
}

/* Generated Kundli, summary and Ask Your Kundli workspace. Chart geometry is untouched. */
body.has-generated-report .kl-report-tabs-shell,
body.has-generated-report .kl-report-panel,
body.has-generated-report .kl-chat-card,
body.has-generated-report .kl-chat-chart-companion,
body.has-generated-report .kl-summary-sheet {
    border-radius: 3px !important;
    border-color: #ded7cd !important;
    background: #fff !important;
    box-shadow: var(--kl-as-shadow) !important;
}

body.has-generated-report .kl-report-tabs-shell {
    border-top: 4px solid var(--kl-as-yellow) !important;
}

body.has-generated-report .kl-report-tabs {
    background: #fff !important;
    border-bottom-color: #e0d9d0 !important;
}

body.has-generated-report .kl-report-tab {
    min-height: 50px !important;
    color: #514b46 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
}

body.has-generated-report .kl-report-tab[aria-selected="true"],
body.has-generated-report .kl-report-tab.is-active {
    background: #fff7d5 !important;
    color: #c64e24 !important;
    box-shadow: inset 0 -3px 0 var(--kl-as-orange) !important;
}

body.has-generated-report .kl-sidebar-title,
body.has-generated-report .kl-chat-head,
body.has-generated-report .kl-question-selector-head,
body.has-generated-report .kl-chat-chart-head {
    background: var(--kl-as-cream) !important;
    border-color: #ecd58b !important;
    color: #5a4f47 !important;
}

body.has-generated-report .kl-summary-sheet,
body.has-generated-report .kl-summary-sheet p,
body.has-generated-report .kl-summary-sheet li,
body.has-generated-report .kl-summary-sheet td,
body.has-generated-report .kl-summary-sheet th,
body.has-generated-report .kl-summary-sheet dt,
body.has-generated-report .kl-summary-sheet dd,
body.has-generated-report .kl-summary-sheet span,
body.has-generated-report .kl-summary-sheet strong {
    font-size: 14px !important;
    line-height: 1.48 !important;
}

body.has-generated-report .kl-summary-table-block h3,
body.has-generated-report .kl-summary-table-block h4 {
    color: #5d4f45 !important;
    font-size: 16px !important;
}

body.has-generated-report .kl-question-category-group > summary,
body.has-generated-report .kl-question-item,
body.has-generated-report .kl-chat-bubble,
body.has-generated-report .kl-chat-empty-state > p,
body.has-generated-report .kl-chat-selection-state > p,
body.has-generated-report .kl-chat-trust-points li,
body.has-generated-report .kl-chat-input,
body.has-generated-report .kl-chat-related-option {
    font-size: 14px !important;
    line-height: 1.5 !important;
}

body.has-generated-report .kl-chat-head h2,
body.has-generated-report .kl-chat-head h3,
body.has-generated-report .kl-chat-empty-state h3,
body.has-generated-report .kl-chat-selection-state h3 {
    color: #5b3028 !important;
    font-size: 22px !important;
}

body.has-generated-report .kl-question-item,
body.has-generated-report .kl-question-category-group,
body.has-generated-report .kl-chat-access-bar,
body.has-generated-report .kl-chat-empty-state,
body.has-generated-report .kl-chat-selection-state {
    border-radius: 3px !important;
    border-color: #e1d8cd !important;
    background: #fff !important;
}

body.has-generated-report .kl-chat-send,
body.has-generated-report .kl-chat-related-place-search,
body.has-generated-report .kl-chat-related-use,
body.has-generated-report .kl-generate,
body.has-generated-report .kl-report-birth-sidebar .kl-generate,
body.has-generated-report .kl-place-search-btn,
body.has-generated-report .kl-report-birth-sidebar .kl-place-search-btn,
body.has-generated-report .kl-detail-button,
body.has-generated-report .kl-question-selector-toggle {
    border-color: var(--kl-as-orange) !important;
    border-radius: 3px !important;
    background: var(--kl-as-orange) !important;
    color: #fff !important;
    font-size: 15px !important;
}

body.has-generated-report .kl-credit-pill,
body.has-generated-report .kl-credit-pill strong,
body.has-generated-report .kl-credit-pill small,
body.has-generated-report .kl-chat-verified,
body.has-generated-report .kl-chat-access-label,
body.has-generated-report #kl-chat-access-text,
body.has-generated-report .kl-chat-note,
body.has-generated-report .kl-question-category-group > summary small {
    font-size: 13px !important;
}

/* Account and admin pages share the same typography and practical controls. */
.ka-wrap {
    color: var(--kl-as-ink);
    font-size: 16px;
}

.ka-card,
.ka-stat,
.ka-pay,
.ka-history-item,
.ka-admin-head,
.ka-admin-hero,
.ka-metric,
.ka-admin-action-box {
    border-radius: 3px !important;
}

.ka-form label,
.ka-muted,
.ka-table,
.ka-table th,
.ka-table td,
.ka-history-label,
.ka-answer-preview,
.ka-admin-body .ka-table th,
.ka-admin-body .ka-table td,
.ka-admin-action-box label {
    font-size: 14px !important;
    line-height: 1.5;
}

.ka-form input,
.ka-form select,
.ka-btn {
    min-height: 42px;
    border-radius: 3px !important;
    font-size: 15px !important;
}

.ka-btn:not(.danger):not(.success) {
    background: var(--kl-as-orange) !important;
    color: #fff !important;
}

.ka-badge,
.ka-status-pill,
.ka-admin-body code,
.ka-admin-body .ka-table small,
.ka-metric span,
.ka-metric small {
    font-size: 13px !important;
}

@media (max-width: 760px) {
    .tools-main,
    .tools-main p,
    .tools-main li,
    .tools-main td,
    body.has-generated-report .kl-question-item,
    body.has-generated-report .kl-chat-bubble {
        font-size: 15px !important;
    }

    body.daily-tool-page .daily-page-head h1,
    body.panchang-page .panchang-report-head h1,
    body.gpm-page h1,
    body.marriage-prediction-page h1,
    body.info-page h1 {
        font-size: 28px !important;
    }

    body.has-generated-report .kl-report-tab {
        min-width: 132px;
        font-size: 14px !important;
    }
}
