/* Shared readability floor for supporting copy across the public experience. */
body{font-size:16px}.eyebrow{font-size:12px}.topbar nav a,.login-link,.profile-chip{font-size:15px}.section-title>span,.person-label{font-size:11px}.profile-menu small{font-size:11px}.profile-actions p,.profile-completion p{font-size:13px}.profile-actions small,.profile-facts small,.profile-facts em{font-size:11px}.footer-inner p,.footer-links{font-size:14px}.footer-inner>small{font-size:12px}
.topbar nav a.active{color:#fff}.topbar nav a.active:after{content:"";position:absolute;left:15%;right:15%;bottom:-27px;height:2px;border-radius:3px;background:linear-gradient(90deg,var(--gold),var(--violet));box-shadow:0 0 12px #8b6cf688}.profile-chip.active{border-color:#8b6cf666;background:#8b6cf614;color:#fff}.profile-menu nav>a.active{background:#8b6cf61a;color:#fff}.profile-menu nav>a.active .menu-icon{background:var(--violet);color:#fff}.bottom-nav a.active{color:#fff}.bottom-nav a.active i{color:var(--gold)}.bottom-nav .bottom-main.active i{background:linear-gradient(135deg,var(--violet),var(--rose));color:#fff;box-shadow:0 0 20px #8b6cf677}
body{display:flex;min-height:100vh;min-height:100dvh;flex-direction:column}body>main{width:100%;flex:1 0 auto}body>footer{width:100%;margin-top:auto;padding:0 20px}.footer-inner{padding-bottom:28px}
@media(max-width:600px){.topbar nav a,.login-link,.profile-chip{font-size:14px}.bottom-nav a span{font-size:11px}}

/* Portal-wide typography floor. Loaded after the shared component styles. */
html{font-size:16px}body{font-size:16px;line-height:1.68}body p{font-size:clamp(14px,1em,16px);line-height:1.68}body small{font-size:clamp(11px,.75em,13px)!important;line-height:1.5}button,input,select,textarea{font:inherit}button,a{line-height:1.35}
.topbar nav a,.login-link,.profile-chip{font-size:15px!important}.nav-cta,.primary-action,.share-day,.share-buttons button,.auth-submit,.sign-cta>a,.compatibility-personal>a{font-size:14px!important}.bottom-nav a span{font-size:12px!important}
.eyebrow,.summary-label,.daily-reading>div>span,.share-section>div>span,.section-title>span,.profile-section-head>span,.card-kicker{font-size:12px!important;line-height:1.45;letter-spacing:1.35px}.date-fields label>span,.date-picker>span,.cosmic-date-fields label>span{font-size:12px!important}.field-error,.editor-error,.share-feedback{font-size:13px!important}
.daily-guides p,.daily-areas p,.reading-copy blockquote,.snapshot-row,.profile-actions p,.profile-completion p,.sign-attributes p,.sign-content>header>p,.sign-cta p,.compatibility-cards article>p,.compatibility-personal p,.animal-main>p,.animal-advice p,.element-insight p,.calendar-note,.auth-card-head p,.auth-switch{font-size:14px!important}
.daily-guides small,.daily-areas>article>small,.snapshot-head small,.lucky-row small,.lucky-row em,.profile-actions small,.profile-facts small,.profile-facts em,.sign-attributes small,.sign-content>header small,.sign-cta small,.sign-related a small,.facet-top small,.facet-foot,.compatibility-showcase header small,.compatibility-personal small,.match-top small,.compat-note,.animal-tags span,.animal-visual>small,.element-insight small,.share-date,.share-card footer{font-size:11px!important}
.daily-areas h3,.snapshot-head h3,.profile-actions h3,.sign-related h3,.animal-advice h4{font-size:17px!important}.lucky-affirmation strong,.profile-actions strong{font-size:14px!important}.footer-inner p,.footer-links{font-size:14px!important}.footer-inner>small{font-size:12px!important}
@media(max-width:600px){html{font-size:16px}body{line-height:1.65}.topbar .login-link,.profile-chip{font-size:14px!important}.eyebrow,.summary-label,.daily-reading>div>span,.share-section>div>span{font-size:11px!important}.bottom-nav a span{font-size:11px!important}}

/* Public UI typography scale: page styles load later, so these floors are intentional. */
:root{--type-caption:12px;--type-support:13px;--type-body:14px}
.container :where(p,li,dd){line-height:1.65}

/* Zodiac directory */
.zodiac-toolbar>p,.explore-count{font-size:var(--type-caption)!important}
.element-filters button{font-size:12px!important}
.sign-number,.sign-dates,.zodiac-card>strong,.zodiac-card footer{font-size:var(--type-caption)!important}
.zodiac-card>p{font-size:var(--type-support)!important;line-height:1.55!important}
.mine-badge{font-size:10px!important}
.guide-kicker{font-size:11px!important}.element-mini b{font-size:13px!important}.element-mini small{font-size:12px!important}
.cusp-note p{font-size:13px!important;line-height:1.6!important}

/* Explore and Chinese zodiac */
.experience-card small,.section-kicker,.coming-section>div>span{font-size:11px!important}
.experience-card p,.chinese-copy>p,.chinese-empty p{font-size:13px!important}
.animal-main small,.animal-advice small,.animal-tags span,.animal-visual>small,.element-insight small{font-size:11px!important}
.animal-main p,.animal-advice p,.element-insight p,.calendar-note{font-size:13px!important}
.coming-list span{font-size:12px!important}

/* Today, biorhythm and compatibility */
.energy-orb small,.daily-guides small,.daily-areas>article>small,.lucky-row small,.lucky-row em,.snapshot-head small{font-size:11px!important}
.energy-orb span,.snapshot-head a,.snapshot-row,.bio-note{font-size:13px!important}
.person-label,.form-privacy,.result-score small,.result-bars>div>span,.compat-note{font-size:11px!important}
.current-main p,.current-person dl>div,.ready-pill,.reading-block p,.strength-list p,.challenge-card p,.advice-card p,.metric-detail-grid p{font-size:13px!important}
.compat-form>label,.compat-form legend{font-size:13px!important}

/* Sign details and account surfaces */
.sign-title-row>div:last-child>p,.sign-attributes small,.facet-top small,.facet-foot,.match-top small,.compatibility-cards article>a,.sign-related a small{font-size:12px!important}
.sign-attributes p,.facet-body>p,.compatibility-cards article>p,.compatibility-personal p,.sign-cta p{font-size:13px!important}
.profile-actions small,.profile-facts small,.profile-facts em,.settings-grid small,.auth-card label small{font-size:12px!important}

/* Share studio controls; exported card keeps its own compact scale. */
.card-style-picker small,.background-picker button:after,.custom-background-tools>small{font-size:11px!important}
.custom-background-tools label,.custom-background-tools button,.preview-label{font-size:12px!important}
html body .state-pill,html body .ready-pill{font-size:11px!important}
html body .interpretation-note{font-size:12px!important}
html body .facet-body>p{font-size:13px!important}
html[data-theme="light"] body .cusp-note strong{color:var(--text)!important}

@media(max-width:600px){
 .zodiac-card{min-height:250px!important}
 .sign-dates,.zodiac-card footer{font-size:11px!important}
 .zodiac-card>p{font-size:12px!important;min-height:38px!important}
 .element-mini b{font-size:12px!important}.element-mini small{font-size:11px!important}
 .cusp-note p{font-size:12px!important}
}
