/* Astro Aunty: ruby accents and gold-glass artwork, with calm reading surfaces. */
:root{--ink:#36241f;--muted:#705b4d;--gold:#89501c;--green:#813623;--line:#e5cfb4;--tint:#fff4e2;--warm:#fffdfa;--brand-ruby:#7e3027;--brand-amber:#a96b24}
body{background:#fffdfa;color:var(--ink)}
.header{background:linear-gradient(110deg,#fffefbea,#fff8ecef);border-bottom-color:#ddc39a;box-shadow:0 2px 12px #70401208;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.brand strong{color:#542b20}.brand small{color:#844c20}.brand-emblem-image{filter:drop-shadow(0 2px 3px #5c310c26)}
.header .primary-nav{background:linear-gradient(180deg,#fffefb,#fff5e5);border-color:#dfc39b;box-shadow:inset 0 1px #fff,0 2px 4px #73451608}
.header .primary-nav a{color:#6c4630}.header .primary-nav a[aria-current=page]{color:#6b2820;background:linear-gradient(135deg,#fff0ca,#f4dbad);box-shadow:inset 0 1px #fff8e4;border-color:#cfaa73}
.languages,.menu-toggle{background:#fffaf2;border-color:#e4c8a3}.languages a[aria-current=page]{color:#713322}
.btn.primary,.welcome-copy .btn.primary,.consultation-prompt .btn.primary{color:#fffdf7;background:linear-gradient(145deg,#98472c,#733025);border:1px solid #9f5e31;box-shadow:inset 0 1px #e1a268,0 3px 0 #54271d}
.btn.primary:hover{background:linear-gradient(145deg,#a55130,#793226)}
.btn:not(.primary){color:#704025;border-color:#dcc09a;background:linear-gradient(#fffefb,#fff7ea)}
/* Keep a solid, contrasted base when gradient painting is unavailable. */
.btn.primary,.btn.primary:hover,.welcome-copy .btn.primary,.consultation-prompt .btn.primary{background-color:#813b29}
.btn:not(.primary){background-color:#fff7ea}
.eyebrow{color:#884a20}.welcome-copy h1 em{color:#97502d}
.welcome-hero{background:radial-gradient(ellipse at 95% 20%,#f7d99d38,transparent 60%),radial-gradient(ellipse at 0 100%,#f1c3a621,transparent 65%)}
.portrait-frame{border-color:#e0bc83;box-shadow:0 12px 35px #71451e12}.chamber-portrait{filter:drop-shadow(0 4px 6px #8053150a)}
.concern-section{border-bottom-color:#ead3b2}.concern-art{display:grid;place-items:center;align-self:center}.concern-art img{width:88px;height:88px;object-fit:contain;filter:drop-shadow(0 4px 4px #8c531c20)}
.concern-card{background:radial-gradient(ellipse at 50% 0,#fff1d5b3,transparent 62%),#fff;border-color:#e0c39e;box-shadow:inset 0 1px #fff,0 4px 12px #72421806}
.concern-card:hover{border-color:#bf8a48;box-shadow:0 6px 18px #7e471416}.concern-card:focus-visible{outline:3px solid #934b2b;outline-offset:3px}
.concern-card .concern-picture{width:76px;height:76px;object-fit:contain;margin:0 auto 6px;filter:drop-shadow(0 3px 4px #8c531c16)}
.concern-card strong{color:#502d23}.concern-card .concern-action{color:#813b25}
.form-panel,.kundali-form,.result{border-color:#dec29d;background:linear-gradient(145deg,#fffdf9,#fff8ed);box-shadow:0 10px 28px #70421608}
.kundali-form input,.kundali-form select,.form-panel input,.form-panel select,.panchang-card input,.panchang-card select{background:#fffefc;color:#3c2c24;border-color:#cdb28f}
:is(input,select,textarea):focus-visible{outline:2px solid #9c5a2b;outline-offset:2px}
.panchang-card{background:radial-gradient(ellipse at 100% 0,#f6d59655,transparent 65%),linear-gradient(135deg,#fffdf8,#fff3df);border-color:#ddbc87}
.panchang-sun{filter:drop-shadow(0 3px 4px #8c531c20)}
.mantra-experience{border-color:#dbb781;background:radial-gradient(ellipse at 50% 10%,#fff7e9,#f9e9cc);box-shadow:inset 0 1px 1px #fff,0 8px 30px #80501b0b}
.matching-overview,.kundali-report-cover{background:linear-gradient(125deg,#fffaf1,#fae8c8);border-color:#dabc88}
.matching-category{color:#74502b}.matching-report-nav a{background:#fff9ed;border-color:#e1c49d;color:#754325}
.card,.guide-row,.guide-card{border-color:#e6ceb0}.card-icon{color:#865027;background:#fff2da}
.dock{background:linear-gradient(120deg,#fffefbf5,#fff5e8f5);border-color:#dfc5a0;box-shadow:0 4px 18px #54301a12,inset 0 1px #fff}
.footer{border-top-color:#e2c79f;background:linear-gradient(125deg,#fffcf6,#fff2df)}
dialog{border-color:#d8b17d;background:#fffcf7}.dialog-head{background:linear-gradient(120deg,#fffaf1,#fae9ce);border-bottom-color:#ead4b4}.dialog-body{background:#fffdf9}
.consultation-prompt{border-color:#d8b17d;background:linear-gradient(135deg,#fffdf7,#fff0d9)}
@media(max-width:760px){.concern-art img{width:76px;height:76px}.concern-card .concern-picture{width:68px;height:68px;margin-bottom:5px}}
@media(prefers-reduced-motion:reduce){.brand-emblem-image,.concern-art img,.concern-card{transition:none}}
@media(forced-colors:active){.header,.dock,.btn,.concern-card,.form-panel,.kundali-form,dialog{background:Canvas;color:CanvasText;border:1px solid CanvasText;box-shadow:none}.btn.primary{background:ButtonFace;color:ButtonText}.primary-nav a[aria-current=page]{outline:2px solid Highlight}}
@media print{body,.footer,.form-panel,.kundali-report-cover,.matching-overview{background:#fff;box-shadow:none}.header,.dock{box-shadow:none}}

/* Keep keyboard destinations clear of the fixed action dock and sticky header. */
/* Ruby actions use a tonal edge; gold detailing stays on the lighter controls. */
.btn.primary,.welcome-copy .btn.primary,.consultation-prompt .btn.primary{border:2px solid #7b3527;box-shadow:inset 0 1px 0 #ffffff14,0 2px 0 #562c1f,0 4px 10px #8b572310;background-color:#813b29}
.welcome-copy .btn.welcome-consult{border:2px solid #c39958;box-shadow:inset 0 0 0 1px #fff4d4,inset 0 -2px 2px #d8b47440;color:#653721;background-color:#fff7ea}
.btn:focus-visible{outline:3px solid #633024;outline-offset:4px}
.field-optional{font-size:12px;font-weight:400;color:#705b4d;white-space:nowrap}
.kundali-identity-fields{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:12px}
.kundali-identity-fields>div{min-width:0}
:is(.kundali-form,#birth-inputs,#matching-form,#contact-form) label{font-size:14px;line-height:1.4;margin-block:12px 5px}
:is(.kundali-form,#birth-inputs,#matching-form,#contact-form) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select){font-size:16px;min-height:46px;height:46px;padding:8px 10px}
:is(.kundali-form,#birth-inputs,#contact-form) .birth-parts{margin-top:17px}
:is(.kundali-form,#birth-inputs,#contact-form) .birth-parts legend{font-size:15px}
:is(.kundali-form,#birth-inputs,#contact-form) .birth-parts label{font-size:13px;margin-block:6px 5px}
:is(.kundali-form,#birth-inputs,#contact-form) .birth-parts :is(input,select){min-height:46px}
.birth-time-format{margin-top:7px;padding:2px}.birth-time-format button{padding:7px 10px;min-height:44px;font-size:13px}
#kundali-gender-help,[id$="-gender-help"],#kundali-time-help,#bride-time-help,#groom-time-help{font-size:13px;line-height:1.5;margin-block:7px 0}
@media(max-width:370px){.kundali-identity-fields{grid-template-columns:minmax(0,1fr)}.kundali-identity-fields{gap:0}}
@media(forced-colors:active){.btn.primary,.welcome-copy .btn.primary,.consultation-prompt .btn.primary,.welcome-copy .btn.welcome-consult{background:ButtonFace;color:ButtonText;border:2px solid ButtonText;box-shadow:none}.field-optional{color:CanvasText}.btn:focus-visible{outline-color:Highlight}}
html{scroll-padding-bottom:110px}
main :is(a,button,input,select,textarea,summary){scroll-margin-block:150px 110px}
/* A translucent caption lets the photograph show through without fading the name. */
.portrait-signature{max-width:calc(100% - 30px);left:15px;bottom:14px;padding:8px 11px;border:1px solid #fff8e926;border-radius:10px;background:linear-gradient(110deg,#3422186b,#34221847);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);text-shadow:0 1px 2px #1a100c,0 0 7px #1a100c66}
.portrait-signature span{overflow-wrap:break-word}.portrait-signature small{margin-top:4px}
@media print{.portrait-signature{background:#342218;print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* A warm diya held in welcoming hands, with room for its bounded scroll pose. */
.concern-art.hero-art{position:relative;isolation:isolate;width:95px;min-width:95px;max-width:95px;height:100px;min-height:0;overflow:hidden;contain:layout paint;perspective:none;pointer-events:none}
.concern-art.hero-art::before{content:'';position:absolute;inset:8%;z-index:-1;background:radial-gradient(ellipse,#edb356 0%,#f4ca8566 42%,transparent 72%);opacity:var(--diya-glow,.22)}
.concern-art.hero-art img{display:block;width:82px;min-width:0;max-width:82px;height:82px;max-height:none;margin:0;object-fit:contain;transform:none;transform-origin:50% 65%;filter:drop-shadow(0 3px 3px #8953291a);will-change:auto;transition:none;animation:none}
@media(max-width:760px){.concern-art.hero-art{width:78px;min-width:78px;max-width:78px;height:86px}.concern-art.hero-art img{width:68px;max-width:68px;height:68px}}
@media(prefers-reduced-motion:reduce),(forced-colors:active){.concern-art.hero-art img{transform:none!important}.concern-art.hero-art::before{display:none}}
@media(forced-colors:active){.concern-art.hero-art img{filter:none}}
@media print{.concern-art.hero-art img{transform:none!important;filter:none}.concern-art.hero-art::before{display:none}}

/* Keep field boundaries distinct from both the cream panel and the input surface. */
:is(.kundali-form,#birth-inputs,#matching-form,#contact-form) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select),.chant-choice select{border-color:#a17b55}
@media(forced-colors:active){:is(.kundali-form,#birth-inputs,#matching-form,#contact-form) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select),.chant-choice select{border-color:CanvasText}}
