/* Five calendar readings. Presentation is scoped to their existing application roots. */
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) { --hd-ink:var(--px-text,#f5f1e8); --hd-muted:var(--px-muted,#c8c4d2); --hd-accent:var(--px-accent,#d8bb79); --hd-line:var(--px-line,#c8a96b40); --hd-panel:var(--px-surface,#141827); --hd-soft:var(--px-soft,#c8a96b0c); --hd-heading:var(--px-heading,Georgia,serif); width:100%; max-width:1120px; min-height:0; margin:0 auto; padding:40px 32px 56px; box-sizing:border-box; color:var(--hd-ink); }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-container,.ht-container,.maya-card,.egipcio-card) { width:100%; max-width:none; padding:0; margin:0; background:none; border:0; box-shadow:none; overflow:visible; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-bg-decor { display:none; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-header { display:grid; grid-template-columns:minmax(0,1fr) 240px; align-items:center; gap:32px; padding:0 0 26px; margin:0 0 24px; text-align:left; border:0; border-bottom:1px solid var(--hd-line); }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-header-copy { min-width:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-header .hd-title { font:500 clamp(2rem,3.6vw,2.875rem)/1.2 var(--hd-heading)!important; color:var(--hd-ink)!important; text-align:left; letter-spacing:-.02em!important; text-transform:none; margin:0; text-shadow:none; background:none; -webkit-text-fill-color:currentColor; overflow-wrap:anywhere; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-header .hd-subtitle { font:400 1rem/1.75 Inter,system-ui,sans-serif; color:var(--hd-muted); text-align:left; margin:16px 0 0; letter-spacing:0; max-width:58ch; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-header :is(.hc-icon-wrapper,.hj-deco-subtitle,.ht-deco-subtitle,.hj-header-rule,.ht-header-rule,.maya-divider,.egipcio-divider) { display:none; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-art { margin:0; overflow:hidden; aspect-ratio:1.5; border:1px solid var(--hd-line); border-radius:100px 100px 12px 12px; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-art img { display:block; width:100%; height:100%; object-fit:cover; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.horoscope-variant,.horoscope-result-note) { font:400 .875rem/1.7 Inter,system-ui,sans-serif; color:var(--hd-muted); max-width:none; text-align:left; padding:0; margin:16px 0; letter-spacing:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .horoscope-method { max-width:none; margin:0 0 24px; padding:14px 18px; border:1px solid var(--hd-line); border-radius:var(--px-radius,12px); background:var(--hd-soft); font:400 .875rem/1.7 Inter,system-ui,sans-serif; color:var(--hd-muted); }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .horoscope-method summary { color:var(--hd-accent); min-height:24px; }
/* Native date and year controls keep their validation and deliberate consultation timing. */
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hc-form-card,.hj-form-card,.ht-form-card,.maya-form-section,.egipcio-form-section) { max-width:none; padding:28px; margin:0; border:1px solid var(--hd-line); border-radius:var(--px-radius,12px); background:var(--hd-panel); box-shadow:none; text-align:left; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-form-inner { display:block; padding:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hc-label,.hj-form-main-label,.ht-form-main-label,.maya-input-group label,.egipcio-input-group label) { display:block; font:500 1.375rem/1.45 var(--hd-heading); color:var(--hd-ink); letter-spacing:0; text-transform:none; margin:0 0 14px; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hc-hint,.hj-form-hint,.ht-form-hint) { font:400 .875rem/1.7 Inter,system-ui,sans-serif; color:var(--hd-muted); text-align:left; margin:12px 0 20px; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-year-input-wrap,.ht-year-input-wrap,.maya-input-group,.egipcio-input-group) { width:100%; max-width:none; margin:0; text-align:left; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(input[type=date],select) { display:block; box-sizing:border-box; width:100%; max-width:32rem!important; min-width:0; min-height:54px; padding:12px 16px; border:1px solid var(--hd-line); border-radius:var(--px-radius,10px); background-color:var(--hd-panel); color:var(--hd-ink); font:400 1rem/1.5 Inter,system-ui,sans-serif; text-align:left; letter-spacing:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-year-label,.ht-year-label) { display:block; font:400 .875rem/1.6 Inter,system-ui,sans-serif; color:var(--hd-muted); margin:10px 0 0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hc-btn-primary,.hj-btn-oracle,.ht-btn-oracle,.maya-btn,.egipcio-btn) { width:100%; max-width:none; min-height:54px; padding:14px 20px; margin:22px 0 0; font:600 1rem/1.5 Inter,system-ui,sans-serif; letter-spacing:0; text-transform:none; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(#hj-step-form,#ht-step-form) :is(.hj-ornament,.ht-ornament) { display:none; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-ornament,.ht-ornament) { margin:20px 0 0; font-size:1rem; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hc-btn-secondary,.hj-btn-secondary,.ht-btn-secondary,.maya-btn-secondary,.egipcio-btn-secondary) { min-height:50px; width:100%; max-width:none; padding:12px 20px; font:500 .9375rem/1.5 Inter,system-ui,sans-serif; letter-spacing:0; text-transform:none; }
/* A sign summary sits beside the complete reading, then stacks above it on narrow screens. */
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-result-layout { display:grid; grid-template-columns:minmax(250px,.85fr) minmax(0,1.75fr); gap:24px; align-items:start; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-summary { min-width:0; padding:28px 22px; background:var(--hd-panel); border:1px solid var(--hd-line); border-radius:var(--px-radius,12px); text-align:center; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-reading { min-width:0; display:grid; gap:18px; margin:0; padding:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-result-title,.ht-result-title) { font:500 1.5rem/1.4 var(--hd-heading); color:var(--hd-accent); text-transform:none; letter-spacing:0; text-align:left; margin:0 0 24px; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-result-hero,.ht-result-hero) { margin:0; padding:0; background:none; border:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-kanji-big,.ht-tibetan-big) { font-size:6rem; line-height:1.4; text-shadow:none; margin:0 0 18px; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-animal-name,.ht-animal-name,.hc-animal-name,.maya-sign-name,.egipcio-sign-name) { font:500 2rem/1.35 var(--hd-heading); color:var(--hd-accent); text-transform:none; letter-spacing:0; margin:10px 0; overflow-wrap:anywhere; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-animal-romaji,.ht-animal-romaji,.hj-years-label,.ht-years-label) { font:400 .875rem/1.7 Inter,system-ui,sans-serif; color:var(--hd-muted); text-transform:none; letter-spacing:0; margin:10px 0; overflow-wrap:anywhere; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-chips,.ht-chips) { gap:10px; margin:24px 0 0; justify-content:center; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-chip,.ht-chip) { max-width:100%; box-sizing:border-box; flex-wrap:wrap; justify-content:center; font:500 .875rem/1.6 Inter,system-ui,sans-serif; padding:8px 12px; letter-spacing:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-info-card,.ht-info-card,.maya-result-box,.egipcio-result-box) { min-width:0; margin:0; padding:26px; border:1px solid var(--hd-line); border-radius:var(--px-radius,12px); background:var(--hd-panel); box-shadow:none; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-info-card:first-child,.ht-info-card:first-child,.maya-result-box:first-child,.egipcio-result-box:first-child) { border-top:2px solid var(--hd-accent); }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-info-card-title,.ht-info-card-title,.hc-traits-title,.hc-compat-title,.maya-box-title,.egipcio-box-title) { font:500 1.4375rem/1.4 var(--hd-heading); color:var(--hd-accent); text-transform:none; letter-spacing:0; margin:0 0 16px; padding:0; border:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-info-card-body,.ht-info-card-body,.hc-traits-text,.maya-box-text,.egipcio-box-text) { font:400 1rem/1.85 Inter,system-ui,sans-serif; color:var(--hd-ink); text-align:left; margin:0; overflow-wrap:anywhere; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-traits-list,.ht-traits-list,.hj-compat-animals,.ht-compat-animals) { display:flex; flex-wrap:wrap; gap:10px; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-trait-tag,.ht-trait-tag) { font:400 .875rem/1.6 Inter,system-ui,sans-serif; background:var(--hd-soft); color:var(--hd-ink); border-color:var(--hd-line); padding:8px 12px; letter-spacing:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-compat-label,.ht-compat-label,.hj-lucky-label,.ht-lucky-label) { font:500 .875rem/1.65 Inter,system-ui,sans-serif; color:var(--hd-accent); letter-spacing:0; text-transform:none; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-compat-tag,.ht-compat-tag,.hj-lucky-value,.ht-lucky-value) { font:400 .9375rem/1.7 Inter,system-ui,sans-serif; color:var(--hd-ink); letter-spacing:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-lucky-row,.ht-lucky-row) { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 20px; padding:12px 0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-result-actions,.ht-result-actions,.maya-footer-action,.egipcio-footer-action) { margin:26px 0 0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-result-card { padding:0; margin:0; max-width:none; background:none; border:0; box-shadow:none; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-animal-section { display:flex; flex-direction:column; gap:12px; margin:0; padding:0; border:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-animal-emoji { font-size:5rem; line-height:1.3; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-label-small { font:400 .875rem/1.6 Inter,system-ui,sans-serif; color:var(--hd-muted); letter-spacing:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-element-section { padding:0; margin:22px 0; border:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-element-badge { max-width:100%; flex-wrap:wrap; justify-content:center; font:500 .9375rem/1.6 Inter,system-ui,sans-serif; padding:10px 16px; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-traits-section.hd-reading { padding:28px; border:1px solid var(--hd-line); border-top:2px solid var(--hd-accent); border-radius:var(--px-radius,12px); background:var(--hd-panel); text-align:left; gap:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-compat-section { padding:22px 0 0; margin:22px 0 0; border:0; border-top:1px solid var(--hd-line); }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-compat-title { font-size:1.125rem; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hc-compat-animals { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) #hc-btn-new { margin:26px 0 0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.maya-result-header,.egipcio-result-header) { margin:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.maya-symbol,.egipcio-symbol) { display:block; font-size:5rem; line-height:1.4; margin:0 0 18px; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.maya-result-grid,.egipcio-result-grid) { display:grid; grid-template-columns:1fr; gap:18px; margin:0; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app):has(:is(#hc-step-result,#hj-step-result,#ht-step-result).active) .hd-header,
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app):has(:is(#maya-results,#egipcio-results)[style*="display: block"]) .hd-header { display:none; }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.maya-result-content,.egipcio-result-content).hd-reading { grid-template-columns:minmax(0,1fr); }
html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.maya-result-content,.egipcio-result-content)>.full-width { grid-column:1/-1; }
@media(max-width:760px){
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) { padding:28px 20px 44px; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-header { grid-template-columns:minmax(0,1fr) 125px; gap:20px; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-art { aspect-ratio:.85; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-header .hd-title { font-size:1.875rem!important; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-header .hd-subtitle { font-size:.875rem; margin-top:12px; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-result-layout { grid-template-columns:1fr; gap:20px; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(input[type=date],select) { max-width:none!important; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-kanji-big,.ht-tibetan-big) { font-size:5rem; }
}
@media(max-width:440px){
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) { padding-left:12px; padding-right:12px; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-header { grid-template-columns:minmax(0,1fr) 90px; gap:14px; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) .hd-header .hd-title { font-size:1.6875rem!important; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hd-summary,.hc-form-card,.hj-form-card,.ht-form-card,.maya-form-section,.egipcio-form-section,.hj-info-card,.ht-info-card,.maya-result-box,.egipcio-result-box,.hc-traits-section.hd-reading) { padding:22px 16px; }
 html:root .hd-app:is(#hc-app,#hj-app,#ht-app,.hd-app) :is(.hj-info-card-title,.ht-info-card-title,.hc-traits-title,.maya-box-title,.egipcio-box-title) { font-size:1.375rem; }
}
