/* ═══════════════════════════════════════════════════════════════════
   premium.css · premium, professional finish (Nov 3, 2026) · loaded after ui_refresh.css
   • One refined typeface (Plus Jakarta Sans) for headings and text, in sentence case
     (the all-caps display font made every page shout)
   • Calm menu: normal letters instead of ALL CAPS, clearer "you are here"
   • Consistent radius, softer shadows, tighter spacing rhythm, better numbers
   Remove its <link> at the end of index.html to go back.
   ═══════════════════════════════════════════════════════════════════ */
:root{ --pr-font:'Plus Jakarta Sans','Nunito',system-ui,-apple-system,'Segoe UI',sans-serif; --pr-radius:18px; --pr-shadow:0 1px 2px rgba(16,40,24,.05),0 6px 20px rgba(16,40,24,.06); }
body,button,input,select,textarea{ font-family:var(--pr-font); }
body{ -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; letter-spacing:-.005em; }

/* ── Headings: sentence case, one family ── */
h1,h2,h3,h4,.brand,.tb-page-title,.section-title,.hero h1,.hero.hero-v2 h1,.modal-title,.stat-num,.sub-status-title,.rw-total-num,.choose-title,.ab-title,
.pl-sec h3,.ah-sec h3,.gr-card h3,.ah-card h3,.gr-board h3,.gr-inq h3,.mod-title,.link-cat-title,.f10-top .t b{
  font-family:var(--pr-font) !important; text-transform:none !important; letter-spacing:-.015em !important; }
.page > .section-title:first-child,.page > .section-title:first-of-type{ font-size:1.7rem !important; font-weight:800 !important; line-height:1.2 !important; margin-bottom:6px !important; }
.section-desc{ font-size:14.5px; line-height:1.6; color:var(--dim); max-width:760px; }
.tb-page-title{ font-size:1.15rem !important; font-weight:800 !important; }
.hero.hero-v2 h1,.hero h1{ font-size:2rem !important; font-weight:800 !important; line-height:1.15 !important; }
.ab-title{ font-size:2.5rem !important; font-weight:800 !important; line-height:1.12 !important; }
.stat-num,.rw-total-num{ font-weight:800 !important; font-variant-numeric:tabular-nums; }
.dd-val,.pl-today .pts b,.pl-hero .tx b,.ah-kpi b,.gkpi b{ font-variant-numeric:tabular-nums; }

/* ── Menu: calm and readable ── */
.side-link,.side-nav .side-link,.nav-group-body .side-link,.nav-group-hdr,.nav-group-label,.ttab{ text-transform:none !important; letter-spacing:0 !important; }
.side-link,.nav-group-hdr{ font-size:14.5px !important; font-weight:700 !important; }
.nav-group-body .side-link{ font-size:14px !important; font-weight:600 !important; }
.side-nav > .side-link{ font-size:14.5px !important; font-weight:700 !important; }
.side-link.active{ font-weight:800 !important; }
.sidebar-brand .tname{ text-transform:none; letter-spacing:-.01em; font-size:14px; font-weight:800; }
.sidebar-brand .tsub{ text-transform:none; letter-spacing:.1px; font-size:11.5px; font-weight:600; }
.auth-logo .sub{ text-transform:none !important; letter-spacing:.2px !important; font-size:12.5px !important; }
.ab-kicker{ text-transform:none !important; letter-spacing:.2px !important; font-size:14px !important; }

/* ── Surfaces: one radius, soft depth ── */
.dd,.gr-card,.ah-card,.ah-sec,.ah-kpi,.pl-sec,.gr-board,.gr-level,.gr-lvl-top,.f10-day,.f10-top,.mod,.link-card,.panel-card{ border-radius:var(--pr-radius) !important; }
.dd,.ah-sec,.ah-kpi,.pl-sec,.gr-card,.f10-top,.mod{ box-shadow:var(--pr-shadow); }
.ah-card{ border-width:1.5px !important; box-shadow:var(--pr-shadow); }

/* ── Buttons: confident, never shouting ── */
.btn,.btn-gold,.f10-done-btn,.pl-btn,.gr-b,.ah-link button,.auth-tab{ letter-spacing:-.005em; }
.btn-gold{ font-weight:800; }

/* ── Small type: never below 12px on phones ── */
@media (max-width:600px){
  .page > .section-title:first-child,.page > .section-title:first-of-type{ font-size:1.45rem !important; }
  .hero.hero-v2 h1,.hero h1{ font-size:1.65rem !important; }
  .section-desc{ font-size:14px; }
}
