@font-face{font-family:"Dancing Script";font-style:normal;font-weight:400 700;font-display:swap;src:url("/public/fonts/dancing-script-vietnamese.woff2") format("woff2")}
:root{--font-body:"Be Vietnam Pro",Arial,sans-serif;--font-heading:"Noto Serif",Georgia,serif;--font-script:"Dancing Script","Noto Serif",serif;--font-size-body:14px;--font-size-label:12px;--font-size-button:14px;--line-body:1.7;--line-heading:1.35;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--space-type-xs:4px;--space-type-sm:8px;--space-type-md:16px;--space-type-lg:24px;--serif:var(--font-heading)!important;--sans:var(--font-body)!important;--script:var(--font-script)!important;--type-serif:var(--font-heading);--type-sans:var(--font-body)}
body,button,input,select,textarea{font-family:var(--font-body)!important}body{line-height:var(--line-body)}
[data-glass-page]{--glass-script:var(--font-script)}
[data-glass-page=invitation] .cover .guest,[data-glass-page=invitation] .family-profile-details strong{font-family:var(--font-heading)!important}
[data-glass-page=invitation] .cover #openInvitation{font-family:var(--font-body)!important}
[data-glass-page=invitation] .cover .eyebrow{font-family:var(--font-body)!important;font-size:clamp(16px,1.5vw,21px)!important;font-weight:600!important;letter-spacing:.055em!important;text-align:center}
[data-glass-page=invitation] #families>h2,[data-glass-page] #schedule.glass-schedule>h2,[data-glass-page=home] .hero-content .couple-hero-name{font-family:var(--font-script)!important}
[data-glass-page] .family-countdown strong,[data-glass-page] [data-countdown] strong{font-variant-numeric:tabular-nums}
.admin-main,.admin-sidebar,.dashboard,body[data-admin]{font-family:var(--font-body)!important}
.admin-main h1,.admin-main h2,.dashboard h1,.dashboard h2{font-family:var(--font-body)!important}
.parent-groups p,.family-profile-details strong,address strong{overflow-wrap:anywhere}
@media(max-width:600px){[data-glass-page=invitation] .cover .eyebrow{font-size:clamp(16px,4.5vw,18px)!important}}
@media(max-width:900px){.admin-sidebar nav.admin-nav{flex-wrap:wrap;overflow:visible!important;white-space:normal}.admin-sidebar nav.admin-nav a{flex:1 1 calc(50% - 5px);min-width:0;white-space:normal;line-height:1.35}.admin-sidebar nav.admin-nav a span{overflow-wrap:anywhere}}

/* Semantic typography overrides historical theme rules. */
.admin-page,.admin-page *{font-family:var(--font-body)!important}
[data-glass-page] :is(.signature,.couple-script,.cover-names,.invite-couple,.thanks-names),[data-glass-page=invitation] .cover h1{font-family:var(--font-script)!important}
[data-glass-page] :is(.guest-highlight,.cover-date strong,.event-time,.event-card h3,.event-date,.ceremony-family p){font-family:var(--font-heading)!important}
[data-glass-page=invitation] .cover-copy>.eyebrow:not(:first-of-type){font-size:11px!important;letter-spacing:.12em!important}

.admin-group-links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.admin-group-links a{padding:9px 13px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:13px}
[data-glass-page=invitation] .cover-dates p,[data-glass-page=invitation] .cover-dates strong,[data-glass-page=invitation] .countdown-event-label{font-family:var(--font-heading)!important}
