:root {
    --ink: #211d2e;
    --muted: #706a7b;
    --surface: #ffffff;
    --canvas: #f5f3f8;
    --primary: #6842a3;
    --primary-dark: #4b2c7c;
    --primary-soft: #eee7f7;
    --gold: #d9ad63;
    --gold-soft: #f7eddb;
    --border: #e5e0ea;
    --danger: #b42343;
    --shadow: 0 20px 50px rgba(35, 24, 54, .08);
}

html { font-size: 16px; scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--canvas); font-family: Tahoma, "Segoe UI", Arial, sans-serif; line-height: 1.75; }
a { text-decoration: none; }
.site-header { color: #fff; background: #171329; border-bottom: 1px solid rgba(255, 255, 255, .08); }
.site-header .navbar { min-height: 82px; }
.navbar-brand { color: #fff !important; margin: 0; }
.brand-mark { display: grid; place-items: center; width: 48px; height: 48px; color: #2a1b3e; background: var(--gold); border: 1px solid rgba(255,255,255,.35); border-radius: 15px; font-size: .8rem; font-weight: 800; box-shadow: 0 10px 24px rgba(217,173,99,.22); }
.brand-title { font-size: 1.05rem; line-height: 1.3; }
.brand-subtitle { color: #bdb5ca; font-size: .72rem; }
.site-header .btn-outline-light { border-color: rgba(255,255,255,.38); }
.site-header .btn-outline-light:hover, .site-header .btn-outline-light:focus { color: #171329; background: #fff; }
.site-footer { padding: 24px 0; color: #bcb4c9; background: #171329; font-size: .8rem; }
.footer-note { color: #8e879c; }

.hero-section { position: relative; overflow: hidden; min-height: 340px; padding: 68px 0 105px; color: #fff; background: radial-gradient(circle at 15% 0, rgba(112,69,161,.32), transparent 34%), radial-gradient(circle at 85% 50%, rgba(217,173,99,.13), transparent 28%), #171329; }
.hero-section::after { position: absolute; inset: auto 0 0; height: 1px; content: ""; background: linear-gradient(90deg, transparent, rgba(217,173,99,.45), transparent); }
.eyebrow { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 14px; color: #dfc38f; font-size: .78rem; font-weight: 700; letter-spacing: .02em; }
.eyebrow span { width: 24px; height: 1px; background: currentColor; }
.eyebrow.light { color: #ead8b6; }
.hero-section h1, .result-hero h1 { max-width: 720px; margin: 0 0 18px; font-size: clamp(2rem, 4vw, 3.55rem); font-weight: 900; line-height: 1.35; letter-spacing: -.035em; }
.hero-lead { max-width: 720px; color: #c5bece; font-size: 1.03rem; line-height: 2; }
.hero-orbit { position: relative; width: 240px; height: 240px; margin-inline: auto; border: 1px solid rgba(217,173,99,.25); border-radius: 50%; }
.hero-orbit::before, .hero-orbit::after { position: absolute; content: ""; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; }
.hero-orbit::before { inset: 26px; }
.hero-orbit::after { inset: 64px; background: rgba(255,255,255,.03); }
.orbit-core { position: absolute; z-index: 2; inset: 0; display: grid; place-items: center; color: var(--gold); font-size: 1rem; word-spacing: 6px; }
.orbit-symbol { position: absolute; z-index: 3; display: grid; place-items: center; width: 38px; height: 38px; color: #fff; background: #2b2340; border: 1px solid rgba(217,173,99,.45); border-radius: 50%; box-shadow: 0 8px 22px rgba(0,0,0,.22); }
.orbit-symbol-one { top: 17px; right: 28px; }.orbit-symbol-two { bottom: 10px; right: 74px; }.orbit-symbol-three { top: 92px; left: -18px; }

.calculation-section { position: relative; z-index: 2; margin-top: -55px; }
.calculation-form { display: grid; gap: 18px; }
.form-card, .result-preview-card, .report-card, .simple-state-card { background: var(--surface); border: 1px solid var(--border); border-radius: 22px; box-shadow: var(--shadow); }
.form-card { padding: 28px; }
.section-heading { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid var(--border); }
.section-number { display: grid; flex: 0 0 36px; place-items: center; width: 36px; height: 36px; color: var(--primary); background: var(--primary-soft); border-radius: 11px; font-weight: 800; }
.section-heading h2 { margin: 1px 0 4px; font-size: 1.08rem; font-weight: 800; }
.section-heading p { margin: 0; color: var(--muted); font-size: .8rem; }
.optional-badge { display: inline-block; margin-right: 6px; padding: 3px 8px; color: var(--muted); background: #f2eff4; border-radius: 20px; font-size: .65rem; font-weight: 500; vertical-align: middle; }
.form-label { margin-bottom: 7px; font-size: .84rem; font-weight: 700; }
.required-label::after { margin-right: 3px; color: var(--danger); content: "*"; }
.form-control, .form-select { min-height: 49px; color: var(--ink); background-color: #fbfafc; border: 1px solid #dcd6e2; border-radius: 12px; font-size: .9rem; }
textarea.form-control { min-height: auto; resize: vertical; }
.form-control-lg { min-height: 54px; font-size: .95rem; }
.form-control:hover, .form-select:hover { border-color: #c8bfd2; }
.form-control:focus, .form-select:focus { background-color: #fff; border-color: var(--primary); box-shadow: 0 0 0 .22rem rgba(104,66,163,.12); }
.form-control::placeholder { color: #aaa4b2; }
.ltr-input { direction: ltr; text-align: right; }
input[type="time"].ltr-input, input[type="number"].ltr-input { text-align: left; }
.form-text { margin-top: 6px; color: #8a8491; font-size: .72rem; }
.field-validation { display: block; min-height: 0; margin-top: 5px; color: var(--danger); font-size: .74rem; }
.field-validation:empty { display: none; }
.input-validation-error { border-color: var(--danger) !important; }
.validation-summary-valid { display: none; }
.validation-summary { margin: 0; border: 0; border-radius: 14px; font-size: .82rem; }
.validation-summary ul { margin: 0; }
.submit-panel { padding: 9px 3px; }
.privacy-note { color: var(--muted); font-size: .77rem; }
.privacy-note span { margin-left: 6px; color: #58a47c; font-size: .55rem; }
.calculate-button { min-width: 190px; min-height: 52px; padding-inline: 28px; background: var(--primary); border-color: var(--primary); border-radius: 14px; font-size: .93rem; font-weight: 800; box-shadow: 0 12px 28px rgba(104,66,163,.24); }
.calculate-button:hover, .calculate-button:focus { background: var(--primary-dark); border-color: var(--primary-dark); transform: translateY(-1px); }
.calculate-button:disabled { background: #827295; border-color: #827295; transform: none; }

.result-preview-card { top: 24px; overflow: hidden; padding: 32px; color: #fff; background: radial-gradient(circle at 0 0, rgba(217,173,99,.13), transparent 34%), #241c36; border-color: rgba(255,255,255,.06); }
.preview-kicker { color: #d8b874; font-size: .72rem; font-weight: 700; }
.result-preview-card h2 { margin: 8px 0 26px; font-size: 1.42rem; font-weight: 900; line-height: 1.55; }
.feature-list { display: grid; gap: 18px; margin: 0 0 28px; padding: 0; list-style: none; }
.feature-list li { display: flex; align-items: center; gap: 13px; }
.feature-list > li > span { display: grid; flex: 0 0 34px; place-items: center; height: 34px; color: #e7c98e; background: rgba(217,173,99,.1); border: 1px solid rgba(217,173,99,.2); border-radius: 10px; font-size: .78rem; }
.feature-list strong, .feature-list small { display: block; }.feature-list strong { font-size: .84rem; }.feature-list small { margin-top: 2px; color: #aaa2b6; font-size: .7rem; }
.transparency-box { padding: 18px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); border-radius: 14px; }
.transparency-box strong { color: #e9d4a8; font-size: .78rem; }.transparency-box p { margin: 5px 0 0; color: #b9b1c3; font-size: .72rem; line-height: 1.85; }

.result-hero { padding: 58px 0 85px; color: #fff; background: radial-gradient(circle at 80% 0, rgba(104,66,163,.35), transparent 34%), #171329; }
.result-hero h1 { margin-bottom: 8px; }.result-hero p { margin: 0; color: #c5bece; }
.result-content { position: relative; margin-top: -48px; }
.summary-card { display: grid; grid-template-columns: 1.25fr 1px .9fr 1fr; align-items: center; min-height: 180px; padding: 28px 34px; background: #fff; border: 1px solid var(--border); border-radius: 24px; box-shadow: var(--shadow); }
.summary-primary, .summary-secondary { display: flex; flex-direction: column; }.summary-primary > span, .summary-secondary > span { color: var(--muted); font-size: .76rem; }.summary-primary strong { color: var(--primary); font-size: 3.6rem; font-weight: 900; line-height: 1.2; }.summary-primary small { color: #9a94a0; font-size: .68rem; }.summary-secondary { align-items: center; }.summary-secondary strong { font-size: 2rem; }
.summary-divider { width: 1px; height: 78px; background: var(--border); }
.summary-zodiac { display: flex; align-items: center; justify-content: center; gap: 15px; padding: 18px; background: var(--gold-soft); border-radius: 18px; }.zodiac-symbol { display: grid; place-items: center; width: 60px; height: 60px; color: #76551e; background: #fffaf0; border: 1px solid #ead4ac; border-radius: 50%; font-size: 2rem; }.summary-zodiac small, .summary-zodiac strong { display: block; }.summary-zodiac small { color: #8f764c; font-size: .68rem; }.summary-zodiac strong { font-size: 1.15rem; }
.insight-card { height: 100%; min-height: 150px; padding: 22px; background: #fff; border: 1px solid var(--border); border-radius: 18px; box-shadow: 0 10px 30px rgba(35,24,54,.045); }.insight-symbol { display: grid; place-items: center; width: 42px; height: 42px; margin-bottom: 16px; color: var(--primary); background: var(--primary-soft); border-radius: 12px; font-size: 1.35rem; }.insight-card small { color: var(--muted); font-size: .7rem; }.insight-card h2 { margin: 3px 0 0; font-size: 1.05rem; font-weight: 900; }
.report-card { overflow: hidden; padding: 28px; }.report-heading { margin-bottom: 20px; padding-bottom: 18px; border-bottom: 1px solid var(--border); }.report-heading > div { display: flex; align-items: center; gap: 12px; }.heading-icon { display: grid; place-items: center; width: 40px; height: 40px; color: var(--primary); background: var(--primary-soft); border-radius: 12px; font-weight: 900; }.report-heading h2 { margin: 0; font-size: 1rem; font-weight: 900; }.report-heading p { margin: 1px 0 0; color: var(--muted); font-size: .68rem; }
.calculation-accordion .accordion-item { border: 0; border-bottom: 1px solid var(--border); }.calculation-accordion .accordion-item:last-child { border-bottom: 0; }.calculation-accordion .accordion-button { display: flex; justify-content: space-between; padding: 17px 0; background: transparent; box-shadow: none; }.calculation-accordion .accordion-button::after { margin-right: 12px; margin-left: 0; }.calculation-accordion .accordion-button > span:first-child { display: flex; flex-direction: column; }.calculation-accordion .accordion-button small { color: var(--muted); font-size: .65rem; }.calculation-accordion .accordion-button strong { color: var(--ink); font-size: .92rem; }.name-total { display: flex; align-items: center; gap: 5px; margin-right: auto; color: var(--primary); font-weight: 900; }.name-total small { font-weight: 400; }.calculation-accordion .accordion-body { padding: 2px 0 18px; }
.letter-grid { display: flex; flex-wrap: wrap; gap: 8px; }.letter-value { display: flex; align-items: center; gap: 8px; min-width: 61px; padding: 7px 10px; background: #f7f5f9; border: 1px solid #e9e4ed; border-radius: 10px; }.letter-value strong { font-size: 1rem; }.letter-value span { color: var(--primary); font-size: .72rem; font-weight: 800; }.ignored-characters { margin-top: 12px; color: var(--muted); font-size: .68rem; }
.weekday-result { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px; background: #f7f5f9; border-radius: 14px; }.weekday-result small, .weekday-result strong { display: block; }.weekday-result small { color: var(--muted); font-size: .65rem; }.weekday-result strong { font-size: .9rem; }.planet-pill { display: flex; align-items: center; gap: 7px; padding: 7px 11px; color: #654b20; background: var(--gold-soft); border-radius: 20px; font-size: .72rem; font-weight: 700; }.planet-pill span { font-size: 1rem; }
.planetary-hour-result { margin-top: 18px; padding: 24px; text-align: center; background: #211930; border-radius: 18px; color: #fff; }.planet-large-symbol { display: grid; place-items: center; width: 66px; height: 66px; margin: 0 auto 12px; color: var(--gold); background: rgba(217,173,99,.08); border: 1px solid rgba(217,173,99,.28); border-radius: 50%; font-size: 2rem; }.planetary-hour-result > small { color: #afa7b8; font-size: .68rem; }.planetary-hour-result h3 { margin: 3px 0 16px; font-size: 1.35rem; font-weight: 900; }.hour-meta { display: flex; justify-content: center; gap: 8px; flex-wrap: wrap; }.hour-meta span { padding: 5px 10px; color: #d9d3df; background: rgba(255,255,255,.06); border-radius: 8px; font-size: .7rem; }.timezone-label { display: block; margin-top: 10px; opacity: .75; }.unavailable-box { margin-top: 18px; padding: 20px; color: #665d70; background: #f6f3f8; border: 1px dashed #d9d1df; border-radius: 14px; }.unavailable-box strong { color: var(--ink); font-size: .82rem; }.unavailable-box p { margin: 5px 0 0; font-size: .72rem; }
.cultural-notice { display: flex; align-items: flex-start; gap: 12px; padding: 17px 20px; color: #6a5c43; background: #fbf4e8; border: 1px solid #ead7b8; border-radius: 14px; font-size: .73rem; }.cultural-notice > span { display: grid; flex: 0 0 24px; place-items: center; height: 24px; color: #fff; background: #b98b40; border-radius: 50%; font-family: Georgia, serif; font-weight: 700; }.cultural-notice p { margin: 0; }
.simple-state-section { display: grid; min-height: 65vh; place-items: center; padding: 50px 0; }.simple-state-card { max-width: 580px; margin: auto; padding: 50px 30px; }.state-symbol { display: grid; place-items: center; width: 66px; height: 66px; margin: 0 auto 20px; color: var(--danger); background: #fbe9ee; border-radius: 50%; font-size: 1.5rem; font-weight: 900; }.simple-state-card h1 { font-size: 1.35rem; font-weight: 900; }.simple-state-card p { color: var(--muted); font-size: .85rem; }

.date-picker-group .btn { min-width: 112px; border-color: #dcd6e2; border-radius: 12px 0 0 12px; font-size: .78rem; font-weight: 700; }
.date-picker-group .form-control { border-radius: 0 12px 12px 0 !important; }
.location-map-heading { display: flex; align-items: end; justify-content: space-between; gap: 12px; margin: 8px 0 10px; }
.location-map-heading strong, .location-map-heading small { display: block; }.location-map-heading strong { font-size: .84rem; }.location-map-heading small { margin-top: 3px; color: var(--muted); font-size: .7rem; }
.coordinate-badge { padding: 6px 10px; color: var(--primary); background: var(--primary-soft); border-radius: 9px; font-size: .7rem; font-weight: 700; }
.location-map { z-index: 1; width: 100%; height: 330px; overflow: hidden; background: #ede9f0; border: 1px solid #dcd6e2; border-radius: 16px; }
.location-map-unavailable { display: grid; place-items: center; padding: 24px; color: var(--muted); text-align: center; font-size: .78rem; }
[data-jdp] { cursor: pointer; }

.comprehensive-result { margin-top: 24px; }.comprehensive-result textarea { min-height: 330px; padding: 18px; direction: rtl; line-height: 2; background: #fbfafc; }
.comprehensive-result-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 13px; }.comprehensive-result-actions h2 { margin: 0; font-size: 1rem; font-weight: 900; }.comprehensive-result-actions p { margin: 3px 0 0; color: var(--muted); font-size: .7rem; }

.admin-shell { padding: 44px 0 64px; }.admin-page-heading { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 24px; }.admin-page-heading h1 { margin: 0 0 4px; font-size: 1.55rem; font-weight: 900; }.admin-page-heading p { margin: 0; color: var(--muted); font-size: .8rem; }
.admin-stat { min-width: 115px; padding: 13px 17px; background: var(--primary-soft); border-radius: 14px; text-align: center; }.admin-stat strong, .admin-stat small { display: block; }.admin-stat strong { color: var(--primary); font-size: 1.45rem; }.admin-stat small { color: var(--muted); font-size: .66rem; }
.admin-toolbar, .admin-results-card, .login-card { background: #fff; border: 1px solid var(--border); border-radius: 20px; box-shadow: var(--shadow); }.admin-toolbar { margin-bottom: 18px; padding: 16px; }.admin-results-card { overflow: hidden; }
.admin-table { margin: 0; vertical-align: middle; }.admin-table th { padding: 14px 16px; color: var(--muted); background: #f8f6f9; border-bottom-color: var(--border); font-size: .7rem; font-weight: 700; }.admin-table td { padding: 14px 16px; border-bottom-color: var(--border); font-size: .78rem; }.admin-table tbody tr:last-child td { border-bottom: 0; }.admin-table .applicant-name { display: block; color: var(--ink); font-size: .85rem; font-weight: 800; }.admin-table small { color: var(--muted); }
.admin-mobile-list { display: none; }.admin-mobile-card { padding: 18px; border-bottom: 1px solid var(--border); }.admin-mobile-card:last-child { border-bottom: 0; }.admin-mobile-card h2 { margin: 0; font-size: .95rem; font-weight: 900; }.admin-mobile-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin: 14px 0; }.admin-mobile-meta span { padding: 9px; background: #f8f6f9; border-radius: 10px; color: var(--muted); font-size: .68rem; }.admin-mobile-meta strong { display: block; margin-top: 2px; color: var(--ink); font-size: .75rem; }
.admin-actions { display: flex; flex-wrap: wrap; gap: 6px; }.admin-actions form { display: inline-flex; }.empty-results { padding: 56px 20px; text-align: center; }.empty-results h2 { font-size: 1.05rem; font-weight: 900; }.empty-results p { margin: 5px 0 0; color: var(--muted); font-size: .78rem; }
.admin-pagination { margin-top: 20px; }.admin-pagination .page-link { color: var(--primary); border-color: var(--border); }.admin-pagination .active .page-link { background: var(--primary); border-color: var(--primary); }
.login-section { display: grid; min-height: calc(100vh - 150px); place-items: center; padding: 48px 0; }.login-card { width: min(100%, 460px); padding: 34px; }.login-card h1 { margin: 18px 0 5px; font-size: 1.35rem; font-weight: 900; }.login-card > p { margin-bottom: 24px; color: var(--muted); font-size: .8rem; }
.admin-edit-card { padding: 28px; background: #fff; border: 1px solid var(--border); border-radius: 20px; box-shadow: var(--shadow); }.admin-edit-card + .admin-edit-card { margin-top: 18px; }.admin-edit-card h2 { margin-bottom: 20px; font-size: 1rem; font-weight: 900; }
.header-actions { display: flex; align-items: center; gap: 8px; }.header-logout-form { display: inline-flex; }

.pwa-install-overlay[hidden] { display: none; }
.pwa-install-overlay { position: fixed; z-index: 1090; inset: 0; display: flex; align-items: flex-end; justify-content: center; padding: 18px; background: rgba(19, 14, 29, .64); backdrop-filter: blur(5px); }
.pwa-install-card { position: relative; display: flex; width: min(100%, 560px); gap: 18px; padding: 25px; background: #fff; border: 1px solid rgba(255,255,255,.42); border-radius: 24px; box-shadow: 0 28px 80px rgba(18,12,29,.3); animation: pwa-install-enter .28s ease-out; }
.pwa-install-close { position: absolute; top: 12px; left: 12px; display: grid; width: 34px; height: 34px; padding: 0; place-items: center; color: var(--muted); background: #f3f0f5; border: 0; border-radius: 50%; font-size: 1.3rem; line-height: 1; }
.pwa-install-close:hover, .pwa-install-close:focus { color: var(--ink); background: #e9e4ed; }
.pwa-install-icon { flex: 0 0 68px; border-radius: 18px; box-shadow: 0 10px 25px rgba(23,19,41,.2); }
.pwa-install-content { padding-left: 26px; }.pwa-install-kicker { color: var(--primary); font-size: .7rem; font-weight: 800; }.pwa-install-content h2 { margin: 3px 0 6px; font-size: 1.05rem; font-weight: 900; }.pwa-install-content p { margin: 0; color: var(--muted); font-size: .76rem; line-height: 1.8; }
.pwa-install-actions { display: flex; align-items: center; gap: 7px; margin-top: 17px; }.pwa-install-actions .btn { min-height: 43px; border-radius: 12px; font-size: .78rem; font-weight: 800; }.pwa-install-actions .btn-primary { padding-inline: 22px; background: var(--primary); border-color: var(--primary); }.pwa-install-actions .btn-link { color: var(--muted); text-decoration: none; }
.pwa-ios-instructions { margin: 13px 0 0; padding-right: 20px; color: var(--ink); font-size: .75rem; line-height: 2; }
@keyframes pwa-install-enter { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 991.98px) {
    .hero-section { min-height: auto; padding: 50px 0 92px; }.hero-section h1 { font-size: 2.35rem; }.result-preview-card { margin-top: 2px; }.summary-card { grid-template-columns: 1fr 1fr; gap: 22px; }.summary-divider { display: none; }.summary-zodiac { grid-column: 1 / -1; }.summary-primary, .summary-secondary { align-items: center; text-align: center; }
}
@media (max-width: 575.98px) {
    html { font-size: 15px; }.site-header .navbar { min-height: 70px; }.brand-mark { width: 42px; height: 42px; border-radius: 13px; }.site-header .btn { padding-inline: 12px !important; font-size: .72rem; }
    .hero-section { padding: 38px 0 82px; }.hero-section h1 { font-size: 1.85rem; line-height: 1.45; }.hero-lead { font-size: .88rem; line-height: 1.9; }.calculation-section { margin-top: -43px; }
    .form-card { padding: 21px 17px; border-radius: 18px; }.section-heading { gap: 11px; margin-bottom: 20px; }.section-number { flex-basis: 32px; width: 32px; height: 32px; }.section-heading h2 { font-size: .98rem; }.section-heading p { font-size: .72rem; }.form-control, .form-select { min-height: 50px; font-size: 16px; }
    .submit-panel { align-items: stretch !important; }.calculate-button { width: 100%; }.result-preview-card { padding: 26px 22px; border-radius: 18px; }
    .result-hero { padding: 38px 0 76px; }.result-hero h1 { font-size: 1.85rem; }.result-hero .btn { flex: 1; font-size: .75rem; }.result-content { margin-top: -38px; }.summary-card { grid-template-columns: 1fr; gap: 18px; padding: 24px 18px; }.summary-primary strong { font-size: 3rem; }.summary-secondary { padding-top: 16px; border-top: 1px solid var(--border); }.summary-zodiac { grid-column: auto; }.insight-card { min-height: 136px; padding: 18px 15px; }.insight-card h2 { font-size: .9rem; }.report-card { padding: 22px 17px; border-radius: 18px; }.letter-grid { gap: 6px; }.letter-value { min-width: 56px; padding: 6px 8px; }.cultural-notice { padding: 15px; }
    .date-picker-group .btn { min-width: 96px; font-size: .7rem; }.location-map-heading { align-items: flex-start; flex-direction: column; }.location-map { height: 270px; }.comprehensive-result-actions { align-items: stretch; flex-direction: column; }.comprehensive-result-actions .btn { width: 100%; }.comprehensive-result textarea { min-height: 390px; font-size: .8rem; }
    .admin-shell { padding: 30px 0 48px; }.admin-page-heading { align-items: stretch; flex-direction: column; }.admin-stat { align-self: flex-start; }.admin-results-card .table-responsive { display: none; }.admin-mobile-list { display: block; }.admin-toolbar .btn { width: 100%; }.login-card { padding: 27px 20px; }.admin-edit-card { padding: 22px 17px; }.header-actions { gap: 5px; }.header-actions .btn { padding-inline: 9px !important; }
    .pwa-install-overlay { padding: 10px; }.pwa-install-card { align-items: flex-start; gap: 13px; padding: 21px 17px; border-radius: 21px; }.pwa-install-icon { width: 56px; height: 56px; flex-basis: 56px; border-radius: 15px; }.pwa-install-content { padding-left: 22px; }.pwa-install-content h2 { padding-left: 8px; font-size: .96rem; }.pwa-install-actions { align-items: stretch; flex-direction: column; }.pwa-install-actions .btn { width: 100%; }.pwa-install-close { top: 10px; left: 10px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; } }
@media print {
    body { background: #fff; }.site-header, .site-footer, .no-print, .cultural-notice, .pwa-install-overlay { display: none !important; }.result-hero { padding: 22px 0; color: #000; background: #fff; border-bottom: 2px solid #222; }.result-hero p { color: #444; }.result-content { margin-top: 18px; }.summary-card, .insight-card, .report-card { break-inside: avoid; box-shadow: none; }.accordion-collapse { display: block !important; }.accordion-button::after { display: none; }
}
