/* CPD Register & Verify pages: panel design language (navy gradient bands, cool grey surfaces, square white cards). */
body.public-area{--rv-ink:#0f172a;--rv-muted:#64748b;--rv-line:#e6e9ee;--rv-soft:#f5f6f8;--rv-tint:#eef4f9;--rv-navy:#0b1220;--rv-blue:#2b5875;--rv-band:radial-gradient(900px 320px at 85% -30%,rgba(127,177,209,.28),transparent 60%),linear-gradient(120deg,#0b1220 0%,#13233b 58%,#1b3550 100%)}

/* ===== CPD Register ===== */
body.public-area .public-register-search-console{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 24px 60px rgba(0,0,0,.28);backdrop-filter:blur(6px)}
body.public-area .register-scope-tabs>*{border-color:rgba(255,255,255,.18)!important}
body.public-area .public-register-input{border:1px solid rgba(255,255,255,.2)!important}
body.public-area .public-register-hero-stats>*{box-shadow:0 10px 30px rgba(0,0,0,.18)}
body.public-area .register-assurance-strip{background:#0d1626!important;border-top:1px solid rgba(255,255,255,.06)}
body.public-area .register-understand-section{background:var(--rv-soft)!important}
body.public-area .register-meaning-grid>*{background:#fff!important;border:1px solid var(--rv-line)!important;box-shadow:0 1px 2px rgba(15,23,42,.04)}
body.public-area .meaning-number{background:var(--rv-band)!important;color:#fff!important}
body.public-area .register-cta{background:var(--rv-band)!important}
body.public-area .register-cta :is(h2,h3,strong){color:#fff!important}
body.public-area .register-cta :is(p,span,small){color:#c7d3e0!important}
body.public-area .register-cta .eyebrow{color:#9fd0ef!important}
body.public-area .register-cta a.btn.btn-dark,body.public-area .register-cta a.btn.btn-primary{background:#fff!important;color:#0b1220!important;border-color:#fff!important}
body.public-area .register-cta a.btn.btn-outline{background:rgba(255,255,255,.06)!important;color:#fff!important;border-color:rgba(255,255,255,.35)!important}

/* Results */
body.public-area .public-register-content{background:var(--rv-soft)!important}
body.public-area .register-query-summary h2,body.public-area .result-title-row h2{color:var(--rv-ink);font-weight:600;letter-spacing:-.03em}
body.public-area .result-count{background:var(--rv-navy);color:#fff!important;padding:4px 10px;font-weight:700}
body.public-area :is(.public-provider-profile,.public-activity-card){background:#fff!important;border:1px solid var(--rv-line)!important;box-shadow:0 1px 2px rgba(15,23,42,.04);transition:box-shadow .18s ease,border-color .18s ease}
body.public-area :is(.public-provider-profile,.public-activity-card):hover{box-shadow:0 18px 40px rgba(15,23,42,.08);border-color:#cbd8e4!important}
body.public-area .public-provider-profile{border-top:3px solid var(--rv-navy)!important}
body.public-area .public-activity-card.is-active{border-top:3px solid #12a150!important}
body.public-area .provider-number-panel{background:var(--rv-band)!important;border:0!important}
body.public-area .provider-number-panel *{color:#fff!important}
body.public-area .provider-public-facts{background:var(--rv-line)!important}
body.public-area :is(.provider-public-detail,.provider-public-detail.full){background:#fbfcfd!important}
body.public-area .public-trainer-card{background:#fff!important;border:1px solid var(--rv-line)!important}
body.public-area .public-trainer-photo{background:var(--rv-tint)!important;color:var(--rv-blue)!important}
body.public-area .activity-type-chip{background:var(--rv-tint)!important;color:var(--rv-blue)!important}
body.public-area :is(.provider-card-link,.trainer-detail-link,.activity-verify-link){color:var(--rv-blue)!important;font-weight:700}
body.public-area .no-logo-mark{background:var(--rv-tint)!important;color:var(--rv-blue)!important}

/* ===== Verify ===== */
body.public-area .verify-search{border:0!important;box-shadow:0 24px 60px rgba(0,0,0,.28)}
body.public-area .verify-search button,body.public-area .verify-search .btn{background:var(--rv-band)!important;color:#fff!important;border:0!important}
body.public-area .verify-section{background:var(--rv-soft)}
body.public-area .verify-start .card{border-top:3px solid var(--rv-navy)!important;transition:transform .18s ease,box-shadow .18s ease}
body.public-area .verify-start .card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(15,23,42,.1)}
body.public-area .verify-main-card{background:#fff!important;border:1px solid var(--rv-line)!important;box-shadow:0 1px 2px rgba(15,23,42,.04)}
body.public-area .verify-detail-grid,body.public-area .verify-record-grid{background:var(--rv-line)!important}
body.public-area .verify-record-card,body.public-area .verify-side-card{border:1px solid var(--rv-line)!important;box-shadow:0 1px 2px rgba(15,23,42,.04)}
body.public-area .verify-side-card .btn-dark,body.public-area .verify-side-card .btn-primary{background:var(--rv-band)!important;border:0!important}
body.public-area .qr-wrap{border:1px solid var(--rv-line)!important}
body.public-area .verify-explainer{background:var(--rv-tint)!important;border-left:3px solid var(--rv-blue)}
body.public-area .verify-full-label{color:var(--rv-blue)!important}

/* ===== Mobile (≤820px) ===== */
@media(max-width:820px){
  /* --- CPD Register landing: title → search → intro → stats --- */
  body.public-area .public-register-modern-hero{padding:24px 0 32px!important}
  body.public-area .public-register-hero-grid{display:flex!important;flex-direction:column;align-items:stretch!important;text-align:left!important;gap:16px!important}
  body.public-area .public-register-hero-copy{display:contents}
  body.public-area .public-register-hero-copy>.eyebrow{order:1;margin-bottom:-8px}
  body.public-area .public-register-hero-copy>h1{order:2;font-size:36px!important;line-height:1.04!important;margin:0!important}
  body.public-area .public-register-search-console{order:3;padding:16px!important}
  body.public-area .public-register-hero-copy>p{order:4;font-size:14.5px!important;margin:0!important}
  body.public-area .public-register-hero-stats{order:5;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important;margin:0!important}
  body.public-area .public-register-hero-stats>*{padding:12px 10px!important;min-height:0!important}
  body.public-area .public-register-hero-stats strong,body.public-area .public-register-hero-stats b{font-size:22px!important}
  body.public-area .public-register-hero-stats small,body.public-area .public-register-hero-stats span{font-size:8.5px!important;letter-spacing:.05em!important;line-height:1.3}
  body.public-area .register-scope-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px!important}
  body.public-area .register-scope-tabs>*{min-height:0!important;padding:8px 4px!important;font-size:10px!important;text-align:center;justify-content:center}
  body.public-area .public-register-search-form :is(input,select,button){font-size:16px}
  body.public-area .register-console-head h2,body.public-area .register-console-head h3{font-size:22px!important}
  body.public-area .register-console-foot{display:none}
  body.public-area .register-assurance-strip .site-wide{display:grid!important;grid-template-columns:1fr 1fr;gap:0!important}
  body.public-area .register-assurance-strip .site-wide>*{padding:14px 12px!important;min-height:0!important}
  body.public-area .register-assurance-strip small{font-size:12px!important}
  body.public-area .register-understand-section{padding:44px 0!important}
  body.public-area .register-understand-section h2{font-size:30px!important;line-height:1.08}
  body.public-area .register-meaning-grid{gap:8px!important}
  body.public-area .register-meaning-grid>*{padding:16px!important;min-height:0!important}
  body.public-area .register-cta{padding:40px 0!important}

  /* --- Search results: compact provider cards --- */
  body.public-area .public-register-content{padding:28px 0!important}
  body.public-area .public-provider-profile{padding:16px!important}
  body.public-area .public-provider-logo{width:64px!important;height:64px!important;min-height:0!important}
  body.public-area .public-provider-profile-head h2,body.public-area .public-provider-profile-head h3{font-size:22px!important;line-height:1.15}
  body.public-area .provider-number-panel{padding:12px 14px!important}
  body.public-area .provider-number-panel strong{font-size:16px!important}
  body.public-area .provider-public-facts{grid-template-columns:1fr 1fr!important}
  body.public-area .provider-public-facts>*{padding:10px!important;min-height:0!important}
  body.public-area .provider-public-details-grid{grid-template-columns:1fr 1fr!important;gap:1px!important}
  body.public-area .provider-public-detail{padding:10px!important}
  /* Long policy texts are shown on the provider's own profile page; hide them in the mobile result list */
  body.public-area .public-register-content .provider-public-detail.full{display:none!important}
  body.public-area .provider-public-details-grid{border:0!important}
  body.public-area .public-trainer-grid{display:flex!important;gap:10px!important;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}
  body.public-area .public-trainer-grid>*{flex:0 0 78%;scroll-snap-align:start;min-height:0!important}
  body.public-area .public-trainer-card{display:flex!important;flex-direction:column;gap:10px}
  body.public-area .public-trainer-photo{width:56px!important;height:56px!important;min-height:0!important;font-size:22px!important}
  body.public-area .trainer-short-summary{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  body.public-area .public-activity-grid{gap:10px!important}
  body.public-area .public-activity-card{padding:14px!important}
  body.public-area .provider-profile-actions{display:grid!important;grid-template-columns:1fr;gap:8px}

  /* --- Verify --- */
  body.public-area .verify-hero{padding:28px 0!important}
  body.public-area .verify-hero h1{font-size:34px!important;line-height:1.05!important}
  body.public-area .verify-hero p{font-size:14.5px!important}
  body.public-area .verify-search{padding:16px!important}
  body.public-area .verify-search input{font-size:16px!important}
  body.public-area .verify-section{padding:28px 0!important}
  body.public-area .verify-main-card{padding:18px!important}
  body.public-area .verify-main-card h2{font-size:24px!important;line-height:1.15}
  body.public-area .verify-detail-grid,body.public-area .verify-record-grid{grid-template-columns:1fr 1fr!important}
  body.public-area .verify-detail-grid>*,body.public-area .verify-record-grid>*{padding:10px!important;min-height:0!important}
  body.public-area .verify-record-card{padding:16px!important}
  body.public-area .verify-side-card{padding:16px!important}
  body.public-area .verify-side-card .qr-wrap img{max-width:150px;height:auto}
  body.public-area .verify-start{gap:10px!important}
  body.public-area .verify-start .card{padding:16px!important}
}
