/* Flycoded 2026 interface refresh. Loaded AFTER design-system.css.
   All auth selectors are scoped to the new templates, and footer selectors
   are scoped to public pages. No dashboard styles or backend logic changed. */

/* ---------- Login and registration ---------- */
.public-body .auth-refresh {
  --auth-ink: #112745;
  --auth-muted: #62738a;
  --auth-line: #e0e8f1;
  --auth-orange: #f36b20;
  background:
    radial-gradient(circle at 7% 15%, rgba(233, 125, 57, .12), transparent 29%),
    radial-gradient(circle at 92% 78%, rgba(31, 102, 166, .10), transparent 35%),
    #f6f8fc;
  padding: clamp(26px, 4vw, 68px) 0 clamp(48px, 6vw, 98px);
}
.public-body .auth-refresh .auth-refresh-shell {
  width: min(1250px, calc(100% - 56px)) !important;
  max-width: 1250px !important;
  min-height: 720px;
  display: grid;
  grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr);
  border: 1px solid #e4e9f0;
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 30px 80px rgba(15, 39, 77, .105), 0 4px 12px rgba(15, 39, 77, .035);
  overflow: hidden;
}
.public-body .auth-refresh-register .auth-refresh-shell {grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr)}
.public-body .auth-refresh-visual {min-height: 710px; background: #092343; position: relative; isolation: isolate}
.public-body .auth-refresh-register .auth-refresh-visual {min-height: 880px}
.public-body .auth-refresh-visual .auth-modern-photo {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.85)}
.public-body .auth-refresh-visual .auth-v4-overlay {
  position:absolute; inset:0; z-index:1;
  background: linear-gradient(180deg,rgba(5,19,42,.38) 0%,rgba(6,24,51,.75) 50%,rgba(4,18,39,.97) 100%);
}
.public-body .auth-refresh-story {position:relative;z-index:2;min-height:inherit;height:100%;padding:38px 40px 27px;justify-content:space-between;display:flex;flex-direction:column}
.public-body .auth-refresh .auth-v4-logo {display:inline-flex;position:static;margin:0;align-self:flex-start;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);padding:12px 15px;border-radius:12px;backdrop-filter:blur(8px)}
.public-body .auth-refresh .auth-v4-logo img {height:31px;max-width:155px;width:auto;object-fit:contain}
.public-body .auth-refresh-story-bottom {margin-top:auto;margin-bottom:42px;max-width:515px}
.public-body .auth-refresh-pill {display:inline-flex;align-items:center;gap:10px;padding:9px 14px;border:1px solid rgba(255,255,255,.19);border-radius:100px;background:rgba(255,255,255,.09);color:#f6f9ff;font-size:12px;font-weight:700;letter-spacing:.015em;backdrop-filter:blur(8px)}
.public-body .auth-refresh-live-dot {width:8px;height:8px;border-radius:50%;background:#ff8b45;box-shadow:0 0 0 4px rgba(255,139,69,.18)}
.public-body .auth-refresh-story h1 {margin:25px 0 16px;max-width:580px;font-size:clamp(39px,4.3vw,62px)!important;line-height:1.03;letter-spacing:-.055em;color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.09)}
.public-body .auth-refresh-story h1 span {color:#ffab70}
.public-body .auth-refresh-story-bottom>p {max-width:440px;margin:0 0 27px;color:#d4e1f1;font-size:15px!important;line-height:1.7}
.public-body .auth-refresh-highlights {display:grid;gap:10px;max-width:440px}
.public-body .auth-refresh-highlights>div {display:grid;grid-template-columns:42px 1fr;align-items:center;gap:12px;padding:12px 14px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.075);backdrop-filter:blur(7px)}
.public-body .auth-refresh-highlight-icon {width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:rgba(255,152,78,.16);color:#ffad74}
.public-body .auth-refresh-highlight-icon .site-icon {width:19px;height:19px}
.public-body .auth-refresh-highlights strong,.public-body .auth-refresh-highlights small {display:block}
.public-body .auth-refresh-highlights strong {font-size:13px;color:#fff;line-height:1.4}
.public-body .auth-refresh-highlights small {margin-top:2px;font-size:12px!important;color:#cedbeb;line-height:1.4}
.public-body .auth-refresh-story-foot {padding-top:17px;border-top:1px solid rgba(255,255,255,.2);display:flex;gap:10px;justify-content:space-between;color:#afc1d8;font-size:10px;font-weight:800;letter-spacing:.07em}
.public-body .auth-refresh-journey {list-style:none;padding:0;margin:28px 0 0;display:grid;gap:16px}
.public-body .auth-refresh-journey li {display:grid;grid-template-columns:46px 1fr;align-items:start;gap:14px}
.public-body .auth-refresh-journey li>span {width:43px;height:43px;border:1px solid rgba(255,255,255,.24);border-radius:12px;display:grid;place-items:center;font-size:13px;font-weight:900;color:#ffb682;background:rgba(255,255,255,.08)}
.public-body .auth-refresh-journey strong,.public-body .auth-refresh-journey small {display:block}
.public-body .auth-refresh-journey strong {color:#fff;font-size:14px}
.public-body .auth-refresh-journey small {color:#d3deec;font-size:12px!important;line-height:1.5;margin-top:2px}

/* ---------- Form panel ---------- */
.public-body .auth-refresh .auth-refresh-panel {padding:44px clamp(30px,5vw,70px) 42px;align-self:center;background:#fff}
.public-body .auth-refresh-register .auth-refresh-panel {padding-top:38px;padding-bottom:34px}
.public-body .auth-refresh-form-top {display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:62px}
.public-body .auth-refresh-register .auth-refresh-form-top {margin-bottom:32px}
.public-body .auth-refresh-top-label {color:#8391a3;font-size:10px;letter-spacing:.12em;font-weight:900}
.public-body .auth-refresh-form-top a {display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:800;color:#bd4c10;text-decoration:none}
.public-body .auth-refresh-form-top a:hover,.public-body .auth-refresh-form-bottom a:hover {color:#9b3605;text-decoration:underline}
.public-body .auth-refresh-form-top a .site-icon,.public-body .auth-refresh-form-bottom .site-icon {width:13px;height:13px}
.public-body .auth-refresh-heading {margin-bottom:34px}
.public-body .auth-refresh-register .auth-refresh-heading {margin-bottom:26px}
.public-body .auth-refresh-eyebrow {display:block;margin-bottom:11px;color:#df5b13;font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.public-body .auth-refresh-heading h2 {color:var(--auth-ink);font-size:clamp(30px,3.15vw,44px)!important;line-height:1.09;letter-spacing:-.055em;margin:0 0 14px}
.public-body .auth-refresh-punctuation {color:var(--auth-orange)}
.public-body .auth-refresh-heading p {color:var(--auth-muted);font-size:14px!important;line-height:1.65;margin:0;max-width:475px}
.public-body .auth-refresh-form {display:grid;gap:17px}
.public-body .auth-refresh-form>label,.public-body .auth-refresh-form .auth-form-grid>label {font-size:13px!important;font-weight:800;color:#2a3b53}
.public-body .auth-refresh-form .auth-input-wrap {display:block;position:relative;margin-top:8px}
.public-body .auth-refresh-form .auth-input-wrap input {width:100%;min-height:54px!important;padding:14px 15px 14px 46px;border:1.5px solid #dce4ee;border-radius:12px;background:#fbfcff;color:#142a48;font-size:14px!important;font-weight:500;transition:border-color .2s,background-color .2s,box-shadow .2s}
.public-body .auth-refresh-form .auth-input-wrap input::placeholder {color:#97a4b5;opacity:1}
.public-body .auth-refresh-form .auth-input-wrap input:hover {border-color:#bfcddd;background:#fff}
.public-body .auth-refresh-form .auth-input-wrap input:focus {border-color:#ef7a32;background:#fff;outline:none;box-shadow:0 0 0 4px rgba(243,107,32,.11)}
.public-body .auth-refresh-form .auth-input-wrap>.site-icon {left:16px;color:#8090a6;pointer-events:none}
.public-body .auth-refresh-form .password-field {display:block;padding:0;position:relative}
.public-body .auth-refresh-form .password-field input {padding-right:87px}
.public-body .auth-refresh-form .password-toggle {position:absolute;z-index:3;top:50%;right:9px;transform:translateY(-50%);min-height:35px!important;border:0!important;padding:7px 12px!important;background:#edf2f9!important;color:#315276!important;font-size:12px!important;font-weight:800!important;border-radius:8px!important}
.public-body .auth-refresh-form .password-toggle:hover {background:#dce9f7!important}
.public-body .auth-refresh-form-help {display:flex;justify-content:flex-end;margin:-2px 0 3px}
.public-body .auth-refresh-form-help a {font-size:12px;font-weight:800;color:#c45217}
.public-body .auth-refresh-form .auth-refresh-submit {min-height:56px!important;width:100%;margin-top:2px;padding:15px 21px!important;border-radius:12px!important;background:#f36b20!important;border-color:#f36b20!important;box-shadow:0 12px 24px rgba(243,107,32,.2);font-size:14px!important;font-weight:850!important;transition:transform .18s,box-shadow .18s,background-color .18s}
.public-body .auth-refresh-form .auth-refresh-submit:hover {background:#d95511!important;box-shadow:0 15px 28px rgba(243,107,32,.24);transform:translateY(-1px)}
.public-body .auth-refresh-form .auth-refresh-submit .site-icon {width:17px;height:17px}
.public-body .auth-refresh-help-panel {display:grid;grid-template-columns:39px 1fr;gap:12px;margin-top:32px;padding:17px 18px;border-radius:14px;background:#f3f7fb;border:1px solid #e4ebf3}
.public-body .auth-refresh-help-icon {width:39px;height:39px;display:grid;place-items:center;border-radius:11px;color:#1e5c92;background:#e5eef8}
.public-body .auth-refresh-help-icon .site-icon {width:18px;height:18px}
.public-body .auth-refresh-help-panel strong {font-size:13px;color:#203a58}
.public-body .auth-refresh-help-panel p {margin:5px 0 0;color:#6b7d90;font-size:12px!important;line-height:1.65}
.public-body .auth-refresh-help-panel a,.public-body .auth-refresh-form-bottom a {color:#c65317;font-weight:800}
.public-body .auth-refresh-form-bottom {display:flex;align-items:center;gap:6px;flex-wrap:wrap;border-top:1px solid #e8edf3;margin-top:23px;padding-top:22px;color:#718096;font-size:12px}
.public-body .auth-refresh-form-bottom a {display:inline-flex;align-items:center;gap:5px}
.public-body .auth-refresh-legal {margin:20px 0 0;text-align:center;font-size:11px!important;line-height:1.7;color:#8291a3}
.public-body .auth-refresh-legal a {color:#566e8b;text-decoration:underline}

/* ---------- Registration selections ---------- */
.public-body .auth-refresh-role-fieldset {min-width:0;border:0;padding:0;margin:0}
.public-body .auth-refresh-role-fieldset legend {font-size:13px!important;font-weight:850;color:#243953;margin:0 0 12px}
.public-body .auth-refresh-register .account-type-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.public-body .auth-refresh-register .account-type-card {min-width:0;min-height:156px;position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin:0;padding:17px 13px 14px;border:1.5px solid #dce6ef;border-radius:15px;background:#fff;box-shadow:none;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}
.public-body .auth-refresh-register .account-type-card:hover,.public-body .auth-refresh-register .account-type-card.selected,.public-body .auth-refresh-register .account-type-card:focus-within {border-color:#f28544;background:#fff9f4;box-shadow:0 0 0 3px rgba(243,107,32,.09)}
.public-body .auth-refresh-register .account-type-card input[type="radio"] {width:16px;height:16px;min-height:0!important;top:15px;right:14px;accent-color:#df641f}
.public-body .auth-refresh-register .account-type-icon {display:grid;place-items:center;width:37px;height:37px;border-radius:11px;margin-bottom:3px}
.public-body .auth-refresh-register .account-type-icon .site-icon {width:19px;height:19px}
.public-body .auth-refresh-register .account-type-card strong {font-size:14px;color:#163657;line-height:1.35}
.public-body .auth-refresh-register .account-type-card small {font-size:11px!important;line-height:1.38;color:#697b8e;font-weight:500}
.public-body .auth-refresh-register .account-type-card em {margin-top:auto;color:#c95311;font-size:10px!important;font-style:normal;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.public-body .auth-refresh-fields-label {margin:7px 0 -3px;padding-top:18px;border-top:1px solid #e8edf3;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;font-weight:850;color:#243953}
.public-body .auth-refresh-fields-label span {font-size:11px;font-weight:600;color:#8090a2}
.public-body .auth-refresh-register .auth-form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.public-body .auth-refresh-register .auth-form-grid .full {grid-column:1/-1}
.public-body .auth-refresh-register .field-help {display:block;float:none;margin:3px 0 0;font-size:11px!important;font-weight:500;color:#79899d}
.public-body .auth-refresh-optional {font-size:11px;font-weight:500;color:#8d9baf}
.public-body .auth-refresh-register .password-strength {margin-top:8px}
.public-body .auth-refresh-register .password-strength small {font-size:11px!important}
.public-body .auth-refresh-register .auth-refresh-consent {display:grid!important;grid-template-columns:18px 1fr;align-items:start;gap:11px;margin:5px 0 -3px;padding:14px 16px;border:1px solid #e1e8f0;border-radius:12px;background:#f7f9fc;color:#52647a!important;font-size:12px!important;font-weight:500!important;line-height:1.6}
.public-body .auth-refresh-register .auth-refresh-consent input {margin:4px 0 0;width:17px!important;height:17px!important;min-height:0!important;accent-color:#ed6c25}
.public-body .auth-refresh-register .auth-refresh-consent a {color:#ba5015;font-weight:800}
.public-body .auth-refresh-register .auth-refresh-submit-note {margin:-6px 0 0;text-align:center;color:#8290a2;font-size:11px!important}

/* ---------- Public footer ---------- */
.public-body .footer-refresh-cta {position:relative;overflow:hidden;padding:44px 0 74px;background:linear-gradient(110deg,#12376a 0%,#08244e 58%,#061a3b 100%);border-top:1px solid rgba(255,255,255,.09)}
.public-body .footer-refresh-cta:after {content:"";position:absolute;right:-80px;top:-100px;width:340px;height:340px;border:1px solid rgba(255,255,255,.07);border-radius:50%;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.015);pointer-events:none}
.public-body .footer-refresh-cta .footer-refresh-cta-inner {position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:32px}
.public-body .footer-pre-cta .footer-refresh-cta-inner .footer-refresh-cta-copy {display:block;max-width:660px}
.public-body .footer-refresh-overline {display:inline-block;margin-bottom:9px;font-size:11px;font-weight:850;letter-spacing:.12em;color:#ffb582}
.public-body .footer-refresh-cta h2 {margin:0 0 9px;color:#fff!important;font-size:clamp(23px,2.6vw,35px)!important;line-height:1.16;letter-spacing:-.035em}
.public-body .footer-refresh-cta h2 span {color:#ffad79}
.public-body .footer-refresh-cta p {margin:0;color:#cbdbed;font-size:13px!important;line-height:1.6}
.public-body .footer-pre-cta .footer-refresh-cta-inner .footer-refresh-cta-actions {display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap}
.public-body .footer-refresh-cta-actions .home-btn {width:auto;min-width:155px;min-height:48px!important;border-radius:11px!important;font-size:12px!important;font-weight:850!important;padding:12px 16px!important;white-space:nowrap}
.public-body .footer-refresh-cta-actions .home-btn-light {background:#fb742d!important;border-color:#fb742d!important;color:#fff!important}
.public-body .footer-refresh-cta-actions .home-btn-light:hover {background:#e65b17!important;border-color:#e65b17!important}
.public-body .footer-refresh-cta-actions .home-btn-outline-light {background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.29)!important;color:#fff!important}
.public-body .footer-refresh-cta-actions .home-btn-outline-light:hover {background:rgba(255,255,255,.16)!important}
.public-body .footer-refresh-cta-actions .site-icon {width:16px;height:16px}
.public-body .home-footer {background:#06172e!important;color:#cad7e8;padding-top:0}
.public-body .footer-contact-strip {transform:translateY(-35px);margin-bottom:-35px;position:relative;z-index:2;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.public-body .footer-contact-card {min-width:0;min-height:92px;padding:16px 14px;border:1px solid #243b57;border-radius:13px;background:#102a4b;color:#fff;box-shadow:0 12px 30px rgba(0,10,31,.22);transition:transform .18s,background-color .18s,border-color .18s}
.public-body .footer-contact-card:hover {transform:translateY(-3px);background:#173758;border-color:#395d82;color:#fff}
.public-body .footer-contact-icon {min-width:39px;width:39px;height:39px;border-radius:10px;background:rgba(255,140,80,.14);color:#ffad7a}
.public-body .footer-contact-card.whatsapp .footer-contact-icon {background:rgba(55,205,135,.12);color:#68e2a0}
.public-body .footer-contact-card small {font-size:10px!important;font-weight:800;letter-spacing:.09em;color:#adc0d7}
.public-body .footer-contact-card strong {margin-top:5px;color:#fff;font-size:12px!important;line-height:1.45;overflow-wrap:anywhere}
.public-body .footer-contact-arrow {color:#ffb37f}
.public-body .footer-refresh-main {display:grid;grid-template-columns:minmax(240px,1.6fr) repeat(4,minmax(125px,1fr));gap:clamp(18px,2.5vw,39px);padding-top:63px}
.public-body .footer-refresh-brand-kicker {display:block;margin-bottom:13px;color:#ffb184;font-size:10px;font-weight:900;letter-spacing:.12em}
.public-body .footer-refresh-main .footer-logo img {height:50px;max-width:170px;object-fit:contain}
.public-body .footer-refresh-main .home-footer-brand p {margin:18px 0 12px;font-size:13px!important;line-height:1.8;color:#b8cbe2;max-width:325px}
.public-body .footer-refresh-main .home-footer-brand p strong {font-size:15px;color:#fff}
.public-body .footer-refresh-main .home-footer-badges {gap:7px;margin:16px 0 0}
.public-body .footer-refresh-main .home-footer-badges span {color:#c4d5e9;font-size:10px!important;padding:7px 10px;border:1px solid #244064;border-radius:99px;background:#0c2543}
.public-body .footer-refresh-main .home-footer-socials {gap:9px;margin-top:23px}
.public-body .footer-refresh-main .home-footer-socials a {width:39px;height:39px;border-radius:11px;background:#143153;border:1px solid #2c496d;color:#fff}
.public-body .footer-refresh-main .home-footer-socials a:hover {background:#f36b20;border-color:#f36b20}
.public-body .footer-refresh-main .footer-menu-column h3 {display:flex;align-items:center;gap:8px;margin:0 0 22px!important;color:#fff!important;font-size:14px!important;line-height:1.4}
.public-body .footer-refresh-main .footer-menu-column h3>span {flex:0 0 auto;width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#153252;color:#ffa96e}
.public-body .footer-refresh-main .footer-menu-column>a {display:flex;align-items:center;gap:9px;padding:7px 0;color:#b8c9de;font-size:12px!important;line-height:1.55;text-decoration:none}
.public-body .footer-refresh-main .footer-menu-column>a .site-icon {flex:0 0 auto;width:14px;height:14px;color:#819cb9}
.public-body .footer-refresh-main .footer-menu-column>a:hover {color:#fff;transform:translateX(3px)}
.public-body .footer-refresh-main .footer-menu-column>a:hover .site-icon {color:#f9a16a}
.public-body .footer-refresh-bottom {display:flex;flex-wrap:wrap;gap:14px 25px;align-items:center;justify-content:space-between;margin-top:54px;padding:21px 0 24px;border-top:1px solid #243d59;color:#9cb2cc;font-size:11px!important;line-height:1.7}
.public-body .footer-refresh-bottom nav {display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.public-body .footer-refresh-bottom nav a {color:#c0cfe0;font-size:11px}
.public-body .footer-refresh-bottom nav a:hover {color:#fff}

/* ---------- Responsive ---------- */
@media (max-width:1150px) {
  .public-body .auth-refresh .auth-refresh-shell,.public-body .auth-refresh-register .auth-refresh-shell {grid-template-columns: 1fr 1fr}
  .public-body .auth-refresh .auth-refresh-panel {padding:35px 30px}
  .public-body .auth-refresh-story {padding:30px}
  .public-body .auth-refresh-story h1 {font-size:42px!important}
  .public-body .footer-refresh-main {grid-template-columns:1.4fr repeat(2,1fr)}
  .public-body .footer-refresh-main .home-footer-brand {grid-row:span 2}
  .public-body .footer-refresh-cta .footer-refresh-cta-inner {align-items:flex-start}
}
@media (max-width:880px) {
  .public-body .auth-refresh .auth-refresh-shell,.public-body .auth-refresh-register .auth-refresh-shell {grid-template-columns:1fr!important;max-width:650px!important;min-height:0}
  .public-body .auth-refresh-visual,.public-body .auth-refresh-register .auth-refresh-visual {min-height:330px}
  .public-body .auth-refresh-story {padding:24px;min-height:330px}
  .public-body .auth-refresh-story-bottom {margin:38px 0 15px}
  .public-body .auth-refresh-story h1 {font-size:clamp(30px,5vw,40px)!important;margin:14px 0 8px}
  .public-body .auth-refresh-story-bottom>p {font-size:13px!important;margin:0}
  .public-body .auth-refresh-highlights,.public-body .auth-refresh-journey,.public-body .auth-refresh-story-foot {display:none}
  .public-body .auth-refresh .auth-refresh-panel {padding:36px clamp(24px,5vw,42px)}
  .public-body .auth-refresh-form-top {margin-bottom:30px}
  .public-body .footer-refresh-cta .footer-refresh-cta-inner {flex-direction:column;align-items:flex-start}
  .public-body .footer-pre-cta .footer-refresh-cta-inner .footer-refresh-cta-actions {justify-content:flex-start}
  .public-body .footer-contact-strip {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px) {
  .public-body .auth-refresh {padding:0!important;background:#fff}
  .public-body .auth-refresh .auth-refresh-shell,.public-body .auth-refresh-register .auth-refresh-shell {width:100%!important;max-width:none!important;border:0;border-radius:0;box-shadow:none}
  .public-body .auth-refresh-visual,.public-body .auth-refresh-register .auth-refresh-visual {min-height:245px}
  .public-body .auth-refresh-story {min-height:245px;padding:17px 22px 22px}
  .public-body .auth-refresh .auth-v4-logo {padding:8px 10px}
  .public-body .auth-refresh .auth-v4-logo img {height:25px}
  .public-body .auth-refresh-story-bottom {margin:28px 0 0}
  .public-body .auth-refresh-story h1 {font-size:30px!important;margin:12px 0 7px}
  .public-body .auth-refresh-story-bottom>p {font-size:12px!important;line-height:1.5;max-width:360px}
  .public-body .auth-refresh-pill {font-size:10px;padding:6px 10px}
  .public-body .auth-refresh .auth-refresh-panel {padding:27px 22px 44px!important}
  .public-body .auth-refresh-form-top {margin-bottom:30px}
  .public-body .auth-refresh-top-label {font-size:9px}
  .public-body .auth-refresh-form-top a {font-size:11px}
  .public-body .auth-refresh-heading h2 {font-size:31px!important}
  .public-body .auth-refresh-heading {margin-bottom:26px}
  .public-body .auth-refresh-register .account-type-grid {grid-template-columns:1fr}
  .public-body .auth-refresh-register .account-type-card {min-height:0;display:grid;grid-template-columns:38px 1fr;column-gap:11px;row-gap:1px;padding:12px 15px}
  .public-body .auth-refresh-register .account-type-card .account-type-icon {grid-row:span 3;align-self:center;margin:0}
  .public-body .auth-refresh-register .account-type-card strong {padding-right:28px}
  .public-body .auth-refresh-register .account-type-card small {padding-right:28px}
  .public-body .auth-refresh-register .account-type-card em {margin:0}
  .public-body .auth-refresh-register .auth-form-grid {grid-template-columns:1fr!important}
  .public-body .auth-refresh-register .auth-form-grid .full {grid-column:1}
  .public-body .auth-refresh-fields-label {flex-direction:column;align-items:flex-start;gap:3px}
  .public-body .footer-refresh-cta {padding:40px 0 70px}
  .public-body .footer-refresh-cta h2 {font-size:26px!important}
  .public-body .footer-pre-cta .footer-refresh-cta-inner .footer-refresh-cta-actions {width:100%;display:grid;grid-template-columns:1fr}
  .public-body .footer-refresh-cta-actions .home-btn {width:100%;justify-content:center}
  .public-body .footer-contact-strip {grid-template-columns:1fr;gap:9px}
  .public-body .footer-contact-card {min-height:70px;padding:13px 16px}
  .public-body .footer-refresh-main {grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 17px;padding-top:45px}
  .public-body .footer-refresh-main .home-footer-brand {grid-column:1/-1;grid-row:auto}
  .public-body .footer-refresh-bottom {margin-top:30px;flex-direction:column;align-items:flex-start}
  .public-body .footer-refresh-bottom nav {gap:10px 17px}
}
@media (max-width:390px) {
  .public-body .footer-refresh-main {grid-template-columns:1fr}
  .public-body .auth-refresh .auth-refresh-panel {padding-inline:17px!important}
}
@media (prefers-reduced-motion:reduce) {
  .public-body .auth-refresh *,.public-body .footer-refresh-cta *,.public-body .home-footer * {transition:none!important;animation:none!important;scroll-behavior:auto!important}
}

/* ================================================================
   Flycoded auth refinement · 2026-10-24
   Split-screen form inspired by the simplicity of AfriVibe's auth.
   No icons inside inputs; explicit labels and unambiguous role choice.
   Scoped to .auth-clean so other pages and footer remain unchanged.
   ================================================================ */
.public-body .auth-clean {background:#f2f5f9;padding:48px 0 68px;}
.public-body .auth-clean .auth-clean-shell,
.public-body .auth-clean-register .auth-clean-shell {
  width:min(1130px,calc(100% - 48px))!important;
  max-width:1130px!important;
  min-height:645px;
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr)!important;
  border:1px solid #dfe7f0;
  border-radius:20px;
  background:#fff;
  box-shadow:0 25px 65px rgba(9,26,53,.075);
  overflow:hidden;
}
.public-body .auth-clean-register .auth-clean-shell {grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr)!important;}
.public-body .auth-clean .auth-clean-visual,
.public-body .auth-clean-register .auth-clean-visual {
  position:relative;isolation:isolate;min-height:645px;
  background:linear-gradient(152deg,#102c55 0%,#0a1b3d 54%,#071630 100%);
}
.public-body .auth-clean-register .auth-clean-visual {min-height:840px;}
.public-body .auth-clean-visual::after {content:"";position:absolute;right:-90px;bottom:15%;width:260px;height:260px;border:1px solid rgba(255,255,255,.07);border-radius:50%;box-shadow:0 0 0 58px rgba(255,255,255,.025),0 0 0 119px rgba(255,255,255,.015);pointer-events:none;z-index:0;}
.public-body .auth-clean-visual-inner {display:flex;flex-direction:column;justify-content:space-between;min-height:inherit;height:100%;padding:38px clamp(28px,4vw,47px) 28px;position:relative;z-index:1;}
.public-body .auth-clean-logo {display:inline-flex;align-items:center;width:max-content;max-width:100%;text-decoration:none;}
.public-body .auth-clean-logo img {width:auto;height:35px;max-width:172px;object-fit:contain;}
.public-body .auth-clean-visual-copy {max-width:420px;margin:auto 0;padding:60px 0 52px;}
.public-body .auth-clean-kicker {display:block;color:#ffb17a;font-size:10px;font-weight:850;letter-spacing:.135em;line-height:1.6;}
.public-body .auth-clean-visual h1 {margin:16px 0 18px;color:#fff!important;font-size:clamp(36px,3.8vw,51px)!important;line-height:1.12;letter-spacing:-.042em;max-width:440px;}
.public-body .auth-clean-visual-copy>p {margin:0 0 31px;color:#d1dded;font-size:14px!important;line-height:1.75;max-width:385px;}
.public-body .auth-clean-benefits {display:grid;gap:0;border-top:1px solid rgba(255,255,255,.16);}
.public-body .auth-clean-benefits>div {display:grid;grid-template-columns:31px minmax(0,1fr);align-items:start;gap:13px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.16);}
.public-body .auth-clean-benefits>div>strong {display:block;color:#ffad73;font-size:12px;font-weight:850;padding-top:1px;}
.public-body .auth-clean-benefits b,.public-body .auth-clean-benefits small {display:block;}
.public-body .auth-clean-benefits b {color:#fff;font-size:13px;font-weight:750;line-height:1.4;}
.public-body .auth-clean-benefits small {margin-top:4px;color:#bdcde1;font-size:12px!important;font-weight:450;line-height:1.5;}
.public-body .auth-clean-visual-foot {border:0;margin:0;color:#aabed8;font-size:11px!important;letter-spacing:.02em;line-height:1.5;}

/* Plain, high contrast form. Explicitly override inherited icon padding. */
.public-body .auth-clean .auth-clean-panel {align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:44px clamp(28px,4.4vw,63px) 40px!important;background:#fff;}
.public-body .auth-clean-register .auth-clean-panel {padding-top:33px!important;padding-bottom:33px!important;}
.public-body .auth-clean-tabs {display:flex;align-items:center;gap:30px;border-bottom:1px solid #e9edf3;margin:0 0 44px;padding:0;}
.public-body .auth-clean-register .auth-clean-tabs {margin-bottom:30px;}
.public-body .auth-clean-tabs>a,.public-body .auth-clean-tabs>.is-active {display:inline-flex;align-items:center;min-height:46px;padding:11px 1px 12px;text-decoration:none;color:#697b91;font-size:13px;font-weight:750;line-height:1.2;border-bottom:2px solid transparent;white-space:nowrap;}
.public-body .auth-clean-tabs>.is-active {border-color:#ff6a00;color:#0a1b3d;}
.public-body .auth-clean-tabs>a:hover {color:#cc540b;}
.public-body .auth-clean-heading {margin:0 0 30px;}
.public-body .auth-clean-register .auth-clean-heading {margin-bottom:23px;}
.public-body .auth-clean-eyebrow {display:block;margin-bottom:10px;font-size:11px;font-weight:800;letter-spacing:.115em;color:#d25a14;text-transform:uppercase;}
.public-body .auth-clean-heading h2 {margin:0 0 12px;color:#0a1b3d!important;font-size:clamp(29px,3.15vw,38px)!important;line-height:1.16;letter-spacing:-.045em;}
.public-body .auth-clean-heading p {margin:0;max-width:465px;color:#667990;font-size:13.5px!important;line-height:1.7;}
.public-body .auth-clean .auth-clean-form {display:grid;gap:19px;margin:0;}
.public-body .auth-clean .auth-clean-field {display:block;min-width:0;}
.public-body .auth-clean .auth-clean-field>label,
.public-body .auth-clean .auth-clean-field-label>label {display:block;color:#213650;font-size:13px!important;font-weight:750;line-height:1.35;margin:0;}
.public-body .auth-clean-field-label {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.public-body .auth-clean-field-label>a {color:#be4d0a;font-weight:750;font-size:12px;text-decoration:none;}
.public-body .auth-clean-field-label>a:hover {text-decoration:underline;}
.public-body .auth-clean .auth-clean-input {display:block;position:relative;width:100%;margin:8px 0 0;padding:0!important;border:0!important;}
.public-body .auth-clean .auth-clean-input>.site-icon {display:none!important;}
.public-body .auth-clean .auth-clean-input>input:not([type="checkbox"]):not([type="radio"]) {
  box-sizing:border-box;display:block;width:100%;height:52px;min-height:52px!important;
  padding:13px 16px!important;margin:0!important;border:1px solid #ced8e5!important;
  border-radius:10px!important;background:#fff!important;color:#0a1b3d!important;
  font-size:14px!important;font-weight:500!important;line-height:1.4!important;
  box-shadow:none!important;outline:none;transition:border-color .18s,box-shadow .18s;
}
.public-body .auth-clean .auth-clean-input>input::placeholder {color:#8a9aab;opacity:1;}
.public-body .auth-clean .auth-clean-input>input:not([type="checkbox"]):not([type="radio"]):focus {border-color:#ff6a00!important;box-shadow:0 0 0 3px rgba(255,106,0,.11)!important;}
.public-body .auth-clean .auth-clean-input.password-field>input {padding-right:94px!important;}
.public-body .auth-clean .auth-clean-input .password-toggle {
  display:inline-flex;position:absolute;z-index:2;top:50%;right:8px;transform:translateY(-50%);
  justify-content:center;align-items:center;min-width:65px;min-height:34px!important;
  padding:6px 11px!important;border:1px solid #e5e9ef!important;border-radius:7px!important;
  background:#f2f5f9!important;color:#364c68!important;font-size:12px!important;font-weight:750!important;
}
.public-body .auth-clean .auth-clean-input .password-toggle:hover {background:#e9eef5!important;}
.public-body .auth-clean .auth-clean-submit {display:flex;align-items:center;justify-content:center;width:100%;min-height:53px!important;margin:4px 0 0;padding:13px 22px!important;border:1px solid #ff6a00!important;border-radius:10px!important;background:#ff6a00!important;box-shadow:none!important;color:#fff!important;font-size:14px!important;font-weight:800!important;line-height:1.3;}
.public-body .auth-clean .auth-clean-submit:hover {background:#e45c00!important;border-color:#e45c00!important;transform:none;box-shadow:0 7px 18px rgba(255,106,0,.16)!important;}
.public-body .auth-clean-recovery {margin:27px 0 0;padding:15px 17px;border:1px solid #e3eaf3;border-radius:11px;background:#f7f9fc;}
.public-body .auth-clean-recovery strong {color:#193552;font-size:12px;line-height:1.4;}
.public-body .auth-clean-recovery p {margin:5px 0 0;color:#68798d;font-size:12px!important;line-height:1.6;}
.public-body .auth-clean-recovery a {color:#b94d10;font-weight:750;text-decoration:underline;text-underline-offset:2px;}
.public-body .auth-clean-switch {margin:24px 0 0;color:#667990;text-align:center;font-size:13px!important;line-height:1.6;}
.public-body .auth-clean-switch a,.public-body .auth-clean-support a {color:#b64b0d;font-weight:800;text-decoration:none;}
.public-body .auth-clean-switch a:hover,.public-body .auth-clean-support a:hover {text-decoration:underline;}
.public-body .auth-clean-support {margin:12px 0 0;color:#79899a;text-align:center;font-size:12px!important;}

/* Role selector uses native radios with generous space; no icon decorations. */
.public-body .auth-clean .auth-clean-roles {border:0;padding:0;margin:0;min-width:0;}
.public-body .auth-clean .auth-clean-roles legend {margin:0 0 10px;padding:0;color:#253b57;font-size:13px!important;font-weight:780;}
.public-body .auth-clean-register .account-type-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.public-body .auth-clean-register .account-type-card {
  box-sizing:border-box;position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
  min-width:0;min-height:84px!important;gap:4px;padding:14px 32px 13px 14px!important;margin:0;
  border:1px solid #d9e2ed;border-radius:10px;background:#fff;box-shadow:none;cursor:pointer;
}
.public-body .auth-clean-register .account-type-card.selected,
.public-body .auth-clean-register .account-type-card:has(input:checked) {border-color:#e66a23;background:#fff8f3;box-shadow:inset 0 0 0 1px rgba(230,106,35,.1);}
.public-body .auth-clean-register .account-type-card:focus-within {outline:2px solid rgba(255,106,0,.3);outline-offset:2px;}
.public-body .auth-clean-register .account-type-card input[type="radio"] {position:absolute;top:15px;right:12px;width:16px;height:16px;min-height:16px!important;margin:0;accent-color:#f26b23;}
.public-body .auth-clean-register .account-type-card .auth-clean-role-name {display:block;color:#182f4e;font-size:13px!important;font-weight:800;line-height:1.25;}
.public-body .auth-clean-register .account-type-card small {display:block;margin:0;color:#6d7f94;font-size:11px!important;line-height:1.4;font-weight:500;overflow-wrap:anywhere;}
.public-body .auth-clean-divider-title {display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #e9edf3;padding-top:18px;margin:2px 0 -3px;font-size:13px;font-weight:800;color:#263d58;}
.public-body .auth-clean-divider-title span {font-size:11px;color:#7e8c9d;font-weight:500;}
.public-body .auth-clean-register .auth-clean-fields {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 15px;}
.public-body .auth-clean-register .auth-clean-fields .full {grid-column:1/-1;}
.public-body .auth-clean-optional {color:#8695a8;font-weight:500;font-size:11px;}
.public-body .auth-clean-hint {display:block;margin-top:7px;color:#718297;font-size:11px!important;font-weight:500;line-height:1.5;}
.public-body .auth-clean-register .password-strength {margin-top:8px;}
.public-body .auth-clean-register .password-strength small {font-size:11px!important;}
.public-body .auth-clean-register .auth-clean-consent {display:grid!important;grid-template-columns:17px minmax(0,1fr);align-items:start;gap:11px;margin:0;padding:12px 14px;border:1px solid #e3e9f0;border-radius:10px;background:#f8fafc;color:#52667b!important;font-size:12px!important;font-weight:500!important;line-height:1.6;}
.public-body .auth-clean-register .auth-clean-consent input {width:17px!important;height:17px!important;min-height:17px!important;margin:3px 0 0!important;accent-color:#e66a23;}
.public-body .auth-clean-register .auth-clean-consent a {color:#ae440c;font-weight:750;}
.public-body .auth-clean-submit-note {margin:-9px 0 0;text-align:center;color:#76869a;font-size:11px!important;line-height:1.6;}

@media (max-width:1000px) {
  .public-body .auth-clean .auth-clean-shell,.public-body .auth-clean-register .auth-clean-shell {grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr)!important;}
  .public-body .auth-clean .auth-clean-panel {padding-inline:30px!important;}
  .public-body .auth-clean-visual-inner {padding-inline:28px;}
  .public-body .auth-clean-visual h1 {font-size:clamp(32px,4.2vw,43px)!important;}
}
@media (max-width:820px) {
  .public-body .auth-clean {padding:24px 0 45px;}
  .public-body .auth-clean .auth-clean-shell,.public-body .auth-clean-register .auth-clean-shell {grid-template-columns:1fr!important;max-width:650px!important;min-height:0;}
  .public-body .auth-clean .auth-clean-visual,.public-body .auth-clean-register .auth-clean-visual {min-height:245px;}
  .public-body .auth-clean-visual-inner {min-height:245px;padding:23px 30px;}
  .public-body .auth-clean-visual-copy {margin:auto 0;padding:22px 0 0;}
  .public-body .auth-clean-visual h1 {font-size:32px!important;max-width:480px;margin:10px 0;}
  .public-body .auth-clean-visual-copy>p {font-size:12px!important;margin:0;max-width:455px;}
  .public-body .auth-clean-benefits,.public-body .auth-clean-visual-foot {display:none;}
  .public-body .auth-clean .auth-clean-panel {padding:32px 36px 38px!important;}
  .public-body .auth-clean-tabs {margin-bottom:31px;}
}
@media (max-width:600px) {
  .public-body .auth-clean {padding:0!important;background:#fff;}
  .public-body .auth-clean .auth-clean-shell,.public-body .auth-clean-register .auth-clean-shell {width:100%!important;max-width:none!important;border:0;border-radius:0;box-shadow:none;}
  .public-body .auth-clean .auth-clean-visual,.public-body .auth-clean-register .auth-clean-visual {min-height:220px;}
  .public-body .auth-clean-visual-inner {min-height:220px;padding:18px 22px 23px;}
  .public-body .auth-clean-logo img {height:29px;}
  .public-body .auth-clean-visual-copy {padding:13px 0 0;}
  .public-body .auth-clean-kicker {font-size:9px;}
  .public-body .auth-clean-visual h1 {font-size:29px!important;line-height:1.14;margin:9px 0 7px;}
  .public-body .auth-clean-visual-copy>p {font-size:12px!important;line-height:1.5;}
  .public-body .auth-clean .auth-clean-panel,.public-body .auth-clean-register .auth-clean-panel {padding:26px 22px 39px!important;}
  .public-body .auth-clean-tabs {margin-bottom:25px;gap:25px;}
  .public-body .auth-clean-heading {margin-bottom:22px;}
  .public-body .auth-clean-heading h2 {font-size:29px!important;}
  .public-body .auth-clean-register .account-type-grid {grid-template-columns:1fr;gap:8px;}
  .public-body .auth-clean-register .account-type-card {min-height:64px!important;padding:11px 41px 11px 14px!important;}
  .public-body .auth-clean-register .account-type-card input[type="radio"] {top:50%;transform:translateY(-50%);right:14px;}
  .public-body .auth-clean-register .auth-clean-fields {grid-template-columns:1fr!important;}
  .public-body .auth-clean-register .auth-clean-fields .full {grid-column:auto;}
  .public-body .auth-clean-divider-title {flex-wrap:wrap;gap:4px;}
}
@media (max-width:365px) {
  .public-body .auth-clean .auth-clean-panel {padding-inline:16px!important;}
  .public-body .auth-clean-visual-inner {padding-inline:17px;}
}
.public-body .auth-clean-wordmark {display:block;color:#fff;font-size:27px;font-weight:850;letter-spacing:-.045em;line-height:1.2;}
.public-body .auth-clean-wordmark span {color:#ff6a00;}
@media (max-width:600px) {.public-body .auth-clean-wordmark {font-size:24px;}}


/* Flycoded experience v3 — account flow and responsive dashboard, scoped to avoid legacy collisions */
.public-body .auth-clean {overflow:clip}
.public-body .auth-clean .auth-clean-field-help{display:block;margin:5px 0 0;color:#66788f;font-size:12px;line-height:1.5}
.public-body .auth-clean .auth-clean-field input{min-width:0;box-sizing:border-box}
.public-body .auth-clean .auth-clean-input{min-width:0}
.public-body .auth-clean .auth-clean-input input{padding-inline-start:14px!important}
.public-body .auth-clean .auth-clean-input.password-field input{padding-inline-end:90px!important}
.public-body .auth-clean .auth-clean-input.password-field .password-toggle{z-index:1;position:absolute!important;right:7px;top:50%;transform:translateY(-50%);line-height:1.15}
.public-body .auth-clean .auth-clean-input input:focus-visible{outline:2px solid #cc5a0c;outline-offset:1px}
.public-body .auth-clean .auth-clean-input input:user-invalid{border-color:#b63831!important}
.public-body .auth-clean .auth-caps-warning{color:#8e4512;background:#fff6e8;border:1px solid #ffe2be;padding:9px 12px;border-radius:8px;font-size:12px;margin:0}
.public-body .auth-clean .auth-caps-warning[hidden]{display:none!important}
.public-body .auth-clean .auth-clean-submit[disabled]{opacity:.72;cursor:progress;box-shadow:none!important}
.public-body .auth-clean .auth-clean-submit:focus-visible{outline:3px solid #233b60;outline-offset:3px}
.public-body .auth-clean .auth-notice{display:grid;gap:4px;padding:15px 16px;background:#f4f7fb;border:1px solid #dce5f0;border-radius:10px;color:#233b5c;margin:16px 0 24px;overflow-wrap:anywhere}
.public-body .auth-clean .auth-notice strong{font-size:13px;line-height:1.4}
.public-body .auth-clean .auth-notice span{font-size:12px;line-height:1.55;color:#647890}
.public-body .auth-clean .auth-clean-divider-title{margin-bottom:14px}
.public-body .auth-clean .auth-clean-roles .account-type-card:has(input:focus-visible){outline:3px solid #f18a46;outline-offset:2px}
.auth-compact-footer{border-top:1px solid #e8edf4;background:#fff;color:#65758b}
.auth-compact-footer-inner{min-height:77px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;padding-block:18px}
.auth-compact-footer-inner span{font-size:12px}
.auth-compact-footer-inner nav{display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.auth-compact-footer-inner a{font-size:12px;color:#24466a;text-decoration:none}
.auth-compact-footer-inner a:hover,.auth-compact-footer-inner a:focus-visible{text-decoration:underline;text-underline-offset:3px}
/* Portal design: preserve existing data, roles, theme support and SPA navigation */
.portal-body .dashboard-experience .portal-page-head{padding:26px 30px!important;border:1px solid #dee7f2;border-radius:19px;background:linear-gradient(115deg,#fff 0%,#f5f8fc 100%);box-shadow:0 8px 24px rgba(8,30,68,.04);margin-bottom:16px;gap:16px}
.portal-body .dashboard-experience .portal-page-head h1{font-size:clamp(25px,3.1vw,36px)!important;letter-spacing:-.035em;line-height:1.16}
.portal-body .dashboard-experience .portal-page-head p{font-size:13px!important;max-width:560px;line-height:1.7}
.portal-body .dashboard-experience .portal-page-head .hero-actions{display:flex;gap:8px;flex-wrap:wrap}
.portal-body .dashboard-experience .portal-page-head .hero-actions .btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding-inline:17px}
.portal-body .dashboard-experience .dashboard-quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 19px}
.portal-body .dashboard-experience .dashboard-quick-links a{display:grid;grid-template-columns:39px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-content:center;min-width:0;padding:15px;border:1px solid #e1e8f0;border-radius:13px;background:#fff;color:#152d4f;text-decoration:none;box-shadow:0 3px 12px rgba(10,27,61,.025);transition:border-color .15s ease,transform .15s ease}
.portal-body .dashboard-experience .dashboard-quick-links a>span{grid-row:1/3;width:39px;height:39px;border-radius:11px;background:#fff2e9;color:#c85710;display:grid;place-items:center}
.portal-body .dashboard-experience .dashboard-quick-links a .site-icon{width:19px;height:19px;display:block}
.portal-body .dashboard-experience .dashboard-quick-links strong{font-size:12.5px;line-height:1.3;overflow-wrap:anywhere}
.portal-body .dashboard-experience .dashboard-quick-links small{font-size:11px;color:#70819a;margin-top:4px;line-height:1.35;overflow-wrap:anywhere}
.portal-body .dashboard-experience .dashboard-quick-links a:hover{transform:translateY(-2px);border-color:#efa56f}
.portal-body .dashboard-experience .dashboard-quick-links a:focus-visible{outline:3px solid #ff8e44;outline-offset:2px}
.portal-body .dashboard-experience .portal-panel{border-radius:14px}
.portal-body .dashboard-experience .portal-stat-card,.portal-body .dashboard-experience .student-stat-card{border-radius:14px}
.portal-body .dashboard-experience .portal-empty,.portal-body .dashboard-experience .student-empty-state,.portal-body .dashboard-experience .student-empty-compact{line-height:1.6}
.portal-body .dashboard-experience .portal-list-item{min-width:0}
.portal-body .dashboard-experience .portal-list-item strong,.portal-body .dashboard-experience .portal-list-item small{overflow-wrap:anywhere}
.portal-body .portal-topbar .portal-nav-search{font-size:14px}
.portal-body .portal-topbar .portal-sidebar-toggle:focus-visible,.portal-body .portal-sidebar a:focus-visible,.portal-body .portal-topbar button:focus-visible{outline:3px solid #ff904d;outline-offset:2px}
.portal-body.portal-dark .dashboard-experience .portal-page-head{background:#111d34;border-color:#2b3e58;box-shadow:none}
.portal-body.portal-dark .dashboard-experience .dashboard-quick-links a{background:#111d34;border-color:#2b3e58;color:#e9f0fb}
.portal-body.portal-dark .dashboard-experience .dashboard-quick-links a>span{background:#35251c;color:#ffae7d}
.portal-body.portal-dark .dashboard-experience .dashboard-quick-links small{color:#afbed3}
@media(max-width:1024px){.portal-body .dashboard-experience .dashboard-quick-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){
 .auth-compact-footer-inner{flex-direction:column;align-items:flex-start;justify-content:center;gap:9px;padding:16px 20px}
 .auth-compact-footer-inner nav{gap:10px 17px}
 .public-body .auth-clean .auth-clean-input input{font-size:16px!important}
 .portal-body .dashboard-experience .portal-page-head{padding:20px!important}
 .portal-body .dashboard-experience .portal-page-head .hero-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .portal-body .dashboard-experience .portal-page-head .hero-actions .btn{min-width:0;white-space:normal;font-size:12px}
 .portal-body .dashboard-experience .dashboard-quick-links{gap:9px}
 .portal-body .dashboard-experience .dashboard-quick-links a{grid-template-columns:32px minmax(0,1fr);gap:7px;padding:11px}
 .portal-body .dashboard-experience .dashboard-quick-links a>span{width:32px;height:32px}
 .portal-body .dashboard-experience .dashboard-quick-links strong{font-size:11px}
 .portal-body .dashboard-experience .dashboard-quick-links small{font-size:10px}
 .portal-body .dashboard-experience .portal-page-head h1{font-size:27px!important}
 .portal-body .dashboard-experience .portal-grid,.portal-body .dashboard-experience .student-dashboard-grid{min-width:0}
}
@media(prefers-reduced-motion:reduce){.portal-body .dashboard-experience .dashboard-quick-links a{transition:none}.portal-body .dashboard-experience .dashboard-quick-links a:hover{transform:none}}
