
  /* Refreshed palette · April 2026 v2: warm paper, true black, soft taupe accents.
     Less brown, more black, with a faint paper grain on the page.
     Editorial, calm, interior-designer-approved. Aristotelica display + Fibra One body.
     Legacy var names (--sage, --olive, --signature, etc.) are kept for stability,
     but their values now lean charcoal/black instead of brown. */
  :root{
    --bg:#F2EDE2;            /* warm paper */
    --bg-2:#E8E1D1;          /* deeper paper */
    --ink:#0E0E0C;           /* near-true black */
    --ink-2:#2A2925;         /* deep charcoal */
    --muted:#7E7A72;         /* cool warm grey */
    --line:#D9D1BE;          /* hairline */
    --line-soft:#E5DEC9;
    --card:#FBF8EE;          /* paper card (warmer than pure white) */
    --card-rim:#EDE5D0;       /* card rim shadow */

    --sage:#1A1916;          /* (legacy var) → near-black accent */
    --sage-dark:#000000;     /* (legacy var) → true black */
    --sage-soft:#EAE3D2;     /* soft beige tint */
    --olive:#2B2A26;         /* charcoal */
    --stone:#BDB4A0;         /* warm taupe */
    --stone-soft:#EFE9D8;
    --charcoal:#2F2D29;      /* graphite */

    --foundation:#B5AC97;    /* warm taupe */
    --curated:#7E776A;       /* deeper warm grey */
    --signature:#3D3A35;     /* charcoal */
    --legacy:#0A0A09;        /* true black */

    --radius:13px;            /* site-wide "bubble" rounding */
    --radius-sm:9px;          /* tighter elements (pills, small inputs) */
    --radius-lg:22px;         /* hero + feature panels */
    --shadow:0 1px 1px rgba(14,14,12,.03), 0 2px 6px rgba(14,14,12,.05), 0 16px 36px -20px rgba(14,14,12,.14);
    --shadow-lift:0 1px 1px rgba(14,14,12,.04), 0 22px 52px -24px rgba(14,14,12,.22);

    /* SVG paper grain — fractal noise at very low opacity. Tiles seamlessly. */
    --paper:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.07  0 0 0 0 0.06  0 0 0 0 0.04  0 0 0 0.055 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
  }
  *{box-sizing:border-box}
  html,body{margin:0;padding:0}
  html{scroll-behavior:smooth}

  /* Accessibility — visible focus ring across the whole UI */
  *:focus{outline:none}
  *:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:2px}

  /* Skip-link for screen readers + keyboard users */
  .skip-link{position:absolute;left:-9999px;top:8px;background:var(--ink);color:var(--bg);padding:10px 14px;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;text-decoration:none;z-index:10001;border-radius:3px}
  .skip-link:focus{left:16px}

  /* Respect users who prefer reduced motion */
  @media (prefers-reduced-motion: reduce){
    *,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}
  }

  /* Print stylesheet — clean black-on-white agent report */
  @media print{
    body{background:#fff !important;color:#000;font-size:11pt}
    body::before,.card::after{display:none !important}
    .topbar,.page-nav-mobile,.switch,.switch-wrap,.user-chip .switch,.login-gate,.welcome-modal,nav.main,.see-all,.btn-pdf,.chart-tabs,.ch-foot{display:none !important}
    .hero{background:#fff !important;color:#000 !important;padding:24px 0;margin:0 0 24px}
    .hero::before,.hero::after{display:none !important}
    .hero h1,.hero h1 em,.hero p.lead,.hero p.lead strong,.hero .tagline,.hero .eyebrow{color:#000 !important}
    .card{box-shadow:none !important;border:1px solid #999 !important;break-inside:avoid;page-break-inside:avoid;background:#fff !important}
    .grid{grid-template-columns:1fr 1fr !important;gap:12px}
    .listings-strip,.welcome-modal,.train-nav{display:none !important}
    a{color:#000 !important;text-decoration:underline}
  }
  body{font-family:var(--font-body);color:var(--ink);background-color:var(--bg);background-image:var(--paper);background-attachment:fixed;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;font-feature-settings:"kern","liga","ss01";border-top:2px solid rgba(184,134,11,.35)}
  .serif{font-family:var(--font-display);font-optical-sizing:auto}
  h1,h2,h3,h4{font-family:var(--font-display);font-optical-sizing:auto;letter-spacing:-0.5px;font-weight:400}
  .container{max-width:1240px;margin:0 auto;padding:0 28px}

  .topbar{border-bottom:1px solid var(--line);background:rgba(224,213,191,.97);position:sticky;top:0;z-index:10;box-shadow:0 1px 8px rgba(14,14,12,.06)}
  .topbar::after{display:none}
  .topbar-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
  .brand{display:flex;flex-direction:row;align-items:center;gap:14px;cursor:pointer;text-decoration:none;color:var(--ink);margin-left:4px}
  /* Clean, crisp solid-black vector wordmark — no stroke, no shadow. */
  .brand-logo{height:42px;width:auto;display:block;opacity:1;transition:opacity .25s;color:#0A0A09;flex-shrink:0}
  .brand-logo path{fill:currentColor;stroke:none}
  .brand:hover .brand-logo{opacity:.82}
  .brand-portal-tag{display:none}
  .brand-mobile-stack{display:none}
  .brand-divider{width:1px;height:34px;background:var(--line);flex-shrink:0}
  .brand-text-group{display:flex;flex-direction:column;gap:0}
  .brand-title{font-family:var(--font-body);font-size:11px;letter-spacing:3.5px;text-transform:uppercase;font-weight:600;color:var(--ink);line-height:1.2}
  .brand-tagline{font-family:var(--font-display);font-style:italic;font-size:12.5px;color:var(--muted);letter-spacing:.2px;font-weight:300;margin-top:1px}
  .brand-mark{width:40px;height:40px;background:var(--ink);color:#fff;display:grid;place-items:center;font-family:var(--font-body);font-size:20px;font-weight:700;letter-spacing:0}
  .brand-text{font-family:var(--font-body);font-size:18px;letter-spacing:4px;text-transform:uppercase;font-weight:600;color:var(--ink)}
  .brand-sub{font-size:10px;letter-spacing:3px;color:rgba(232,223,200,.45);text-transform:uppercase;margin-top:2px;font-weight:400}
  nav.main{display:flex;align-items:center}
  nav.main a{text-decoration:none;font-size:10.5px;letter-spacing:2.5px;text-transform:uppercase;color:var(--muted);margin-left:28px;padding:6px 0;border-bottom:2px solid transparent;font-weight:500;transition:color .2s,border-color .2s;position:relative}
  nav.main a:hover{color:var(--ink)}
  nav.main a.active{border-bottom-color:var(--sage-dark);color:var(--ink);font-weight:600}
  .live-clock{display:flex;flex-direction:column;align-items:flex-end;margin-right:18px;font-family:var(--font-body);line-height:1.1;min-width:108px}
  .live-clock .lc-time{font-family:var(--font-display);font-size:18px;font-weight:400;color:var(--ink);letter-spacing:-0.3px;font-variant-numeric:tabular-nums}
  .live-clock .lc-date{font-size:9px;letter-spacing:1.6px;text-transform:uppercase;color:rgba(232,223,200,.45);margin-top:3px;font-weight:600}
  @media (max-width:880px){.live-clock{display:none}}
  .user-chip{display:flex;align-items:center;gap:10px;font-size:13px;color:rgba(244,240,229,.7)}
  .avatar{width:34px;height:34px;border-radius:50%;background:rgba(184,134,11,.25);border:1.5px solid rgba(184,134,11,.45);color:#F4F0E5;display:grid;place-items:center;font-weight:600;font-size:13px;cursor:pointer;transition:border-color .2s}
  .avatar:hover{border-color:rgba(184,134,11,.8)}
  .switch{margin-left:14px;font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:var(--ink-2);cursor:pointer;background:rgba(43,33,20,.04);border:1px solid rgba(43,33,20,.2);padding:9px 16px;border-radius:999px;font-family:inherit;font-weight:600;transition:all .2s}
  .switch:hover{background:var(--ink);color:#F4EFE2;border-color:var(--ink)}
  .switch:hover{border-color:rgba(184,134,11,.6);color:#F4F0E5}
  .switch-wrap{position:relative}
  .switch-dropdown{display:none;position:absolute;top:100%;right:0;margin-top:6px;background:var(--card);border:1px solid var(--line);border-radius:3px;box-shadow:0 8px 24px rgba(14,14,12,.12);min-width:220px;max-height:340px;overflow-y:auto;z-index:1200;padding:6px 0}
  .switch-dropdown.open{display:block}
  .switch-dropdown .sd-item{display:flex;align-items:center;gap:10px;padding:9px 16px;cursor:pointer;font-size:12px;color:var(--ink);transition:background .1s;border:none;background:none;width:100%;text-align:left;font-family:inherit}
  .switch-dropdown .sd-item:hover{background:var(--bg)}
  .switch-dropdown .sd-item.active{background:var(--bg);font-weight:600}
  .switch-dropdown .sd-item .sd-avatar{width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--bg);display:grid;place-items:center;font-size:10px;font-weight:600;flex-shrink:0}
  .switch-dropdown .sd-branch{font-size:10px;color:var(--muted);letter-spacing:.5px;margin-left:auto}
  .switch-dropdown .sd-divider{height:1px;background:var(--line);margin:6px 0}
  .switch-dropdown .sd-logout{color:var(--muted);font-size:11px;letter-spacing:1px;text-transform:uppercase;padding:10px 16px;cursor:pointer;border:none;background:none;width:100%;text-align:left;font-family:inherit}
  .switch-dropdown .sd-logout:hover{color:var(--ink);background:var(--bg)}

  .hero{position:relative;padding:120px 36px 88px;margin:24px 0 48px;border-radius:var(--radius-lg);overflow:hidden;color:#F4F0E5;
    background:radial-gradient(120% 140% at 12% 0%, #1c2a26 0%, #12100c 46%, #0a0a09 100%);
    box-shadow:0 24px 60px -28px rgba(10,10,9,.6);isolation:isolate;text-align:center}
  .hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
    background:radial-gradient(60% 90% at 92% 8%, rgba(199,154,58,.18), transparent 60%),
               radial-gradient(50% 80% at 0% 100%, rgba(111,158,94,.14), transparent 60%)}
  .hero > *{position:relative;z-index:1}
  .hero::before{content:"";position:absolute;inset:0;background-image:url('https://d21tw07c6rnmp0.cloudfront.net/media/uploads/148/pages/2023/9/148_4ff7bb49e893446c9e2854934797d485_t_w_1440_h_900.avif');background-size:cover;background-position:center;z-index:-2;filter:saturate(.85) brightness(.78)}
  .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,9,.55) 0%,rgba(10,10,9,.78) 60%,rgba(10,10,9,.92) 100%);z-index:-1}
  .eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);font-weight:600}
  .hero .eyebrow{color:#C9C3B5}
  .hero h1{font-family:var(--font-display);font-weight:400;font-size:60px;line-height:1.05;margin:16px 0 14px;color:#F4F0E5;letter-spacing:-1.2px}
  .hero h1 em{font-style:italic;color:#E5DDC5;font-weight:300}
  .hero .tagline{display:inline-block;margin:18px auto 0;font-family:var(--font-display);font-style:italic;font-size:15px;color:#D9D2BD;letter-spacing:.3px;border-top:1px solid rgba(217,210,189,.35);padding-top:14px}
  .hero p.lead{color:#D9D5C8;max-width:640px;margin:0 auto;font-size:14px;line-height:1.7;text-align:center}
  .hero p.lead strong{color:#F4F0E5;font-weight:600}
  .hero .congrats{display:inline-block;max-width:600px;margin:22px auto 0;padding:18px 26px;border:1px solid rgba(217,210,189,.22);background:rgba(244,240,229,.04);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
  .hero .congrats .c-eyebrow{display:block;font-size:9px;letter-spacing:3px;text-transform:uppercase;color:#C9C3B5;font-weight:600;margin-bottom:8px}
  .hero .congrats .c-body{font-family:var(--font-display);font-style:italic;font-size:17px;line-height:1.5;color:#F0EBDA;font-weight:300;letter-spacing:-0.2px}
  .hero .congrats .c-body strong{font-style:normal;color:#F4F0E5;font-weight:500;letter-spacing:0}

  /* ===================== HOME CAROUSEL — welcome + featured tools ===================== */
  .home-carousel{position:relative;margin:24px 0 48px;border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 24px 60px -28px rgba(10,10,9,.6);isolation:isolate;transition:height .5s cubic-bezier(.4,0,.2,1);background:#0a0a09}
  .hc-track{display:flex;width:100%;align-items:stretch;transition:transform .6s cubic-bezier(.4,0,.2,1)}
  .hc-slide{flex:0 0 100%;max-width:100%;display:flex}
  .hc-slide .hero{margin:0;border-radius:0;box-shadow:none;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:80px 36px}
  .hc-slide .hero .eyebrow{font-size:11px;letter-spacing:4px}
  .hc-slide .hero h1{font-size:clamp(56px,7.8vw,100px);line-height:1.0;letter-spacing:-2px;margin:18px 0 18px}
  .hc-slide .tat,.hc-slide .lux-panel{margin:0;border-radius:0;box-shadow:none;width:100%}
  @media (max-width:880px){ .hc-slide .hero h1{font-size:46px;letter-spacing:-1px} }
  .hc-feature{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
    padding:104px 36px 96px;color:#F4F0E5;position:relative;isolation:isolate;
    background:radial-gradient(120% 140% at 12% 0%, #1c2a26 0%, #12100c 46%, #0a0a09 100%)}
  .hc-feature::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
    background:radial-gradient(60% 90% at 92% 8%, rgba(199,154,58,.20), transparent 60%),
               radial-gradient(50% 80% at 0% 100%, rgba(111,158,94,.15), transparent 60%)}
  .hc-feature > *{position:relative;z-index:1}
  .hc-feature .eyebrow{color:#D9B877;letter-spacing:3px}
  .hc-feature h2{font-family:var(--font-display);font-weight:400;font-size:54px;line-height:1.04;margin:16px 0 14px;color:#F4F0E5;letter-spacing:-1.1px}
  .hc-feature h2 em{font-style:italic;color:#E8C886;font-weight:300}
  .hc-feature p{color:#D9D5C8;max-width:560px;font-size:14.5px;line-height:1.7;margin:0 0 28px}
  .hc-cta{font-family:inherit;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:#0E0E0C;background:#E8C886;border:none;padding:14px 28px;border-radius:999px;cursor:pointer;transition:transform .15s,background .15s;box-shadow:0 10px 28px -12px rgba(199,154,58,.6)}
  .hc-cta:hover{background:#F0D7A0;transform:translateY(-1px)}
  .hc-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:42px;height:42px;border-radius:50%;border:1px solid rgba(232,223,200,.22);background:rgba(14,14,12,.32);color:#F4F0E5;font-size:24px;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;transition:.15s}
  .hc-nav:hover{background:rgba(14,14,12,.6);border-color:rgba(232,200,134,.5)}
  .hc-nav.prev{left:16px} .hc-nav.next{right:16px}
  .hc-dots{position:absolute;bottom:18px;left:0;right:0;display:flex;justify-content:center;gap:8px;z-index:5}
  .hc-dot{width:8px;height:8px;border-radius:50%;border:none;background:rgba(244,240,229,.32);cursor:pointer;padding:0;transition:.25s}
  .hc-dot:hover{background:rgba(244,240,229,.6)}
  .hc-dot.active{background:#E8C886;width:24px;border-radius:999px}
  @media (max-width:880px){ .hc-feature{padding:64px 24px 60px} .hc-feature h2{font-size:38px} .hc-nav{display:none} }

  /* ===================== LUX PANEL — reusable "bubble" surface =====================
     A rounded, softly-lit dark panel used for feature moments across the site
     (Top Agent Track, welcome hero). Light text on a warm near-black gradient
     with subtle gold + sage glows. Apply .lux-panel to any full-width section. */
  .lux-panel{position:relative;border-radius:20px;overflow:hidden;color:#F4EFE2;
    background:radial-gradient(120% 140% at 12% 0%, #1c2a26 0%, #12100c 46%, #0a0a09 100%);
    box-shadow:0 24px 60px -28px rgba(10,10,9,.6);isolation:isolate}
  .lux-panel::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
    background:radial-gradient(60% 90% at 92% 8%, rgba(199,154,58,.20), transparent 60%),
               radial-gradient(50% 80% at 0% 100%, rgba(111,158,94,.16), transparent 60%)}
  .lux-panel > *{position:relative;z-index:1}

  /* Top Agent Track feature */
  .tat{margin:0 0 48px}
  .tat-in{padding:38px clamp(22px,4vw,48px) 40px}
  .tat-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:10px;letter-spacing:3px;text-transform:uppercase;color:#cdbf9a;font-weight:600}
  .tat-eyebrow .dot{width:7px;height:7px;border-radius:50%;background:#6f9e5e;box-shadow:0 0 0 4px rgba(111,158,94,.18)}
  .tat-track{display:inline-flex;align-items:center;gap:9px;margin-left:auto;padding:6px 14px;border-radius:999px;border:1px solid rgba(231,200,120,.3);background:rgba(231,200,120,.08);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#e7c878;font-weight:600}
  .tat-head{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
  .tat-title{font-family:var(--font-display);font-weight:300;font-size:clamp(26px,3.4vw,38px);letter-spacing:-.5px;margin:12px 0 0;color:#F8F3E6}
  .tat-title em{font-style:italic;color:#e7c878}
  .tat-archetype{font-size:13.5px;color:#cfc7b3;line-height:1.6;margin:10px 0 0;max-width:560px}
  .tat-figure{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin:22px 0 4px}
  .tat-figure .big{font-family:var(--font-display);font-weight:400;font-size:clamp(40px,6.5vw,72px);line-height:.92;letter-spacing:-1.5px;color:#fff;font-variant-numeric:tabular-nums}
  .tat-figure .big small{font-size:.42em;color:#e7c878;font-weight:400;vertical-align:.18em;margin-right:.06em}
  .tat-figure .cap{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#b7ad96;font-weight:600;line-height:1.4}
  .tat-sub{font-size:13px;color:#cfc7b3;margin:2px 0 26px;line-height:1.5}
  .tat-sub b{color:#e7c878;font-weight:600}
  .tat-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
  @media (max-width:720px){.tat-tiles{grid-template-columns:1fr}}
  .tat-tile{position:relative;padding:18px 18px 16px;border-radius:14px;border:1px solid rgba(231,200,120,.16);
    background:rgba(244,239,226,.04);overflow:hidden}
  .tat-tile .ic{font-size:18px;line-height:1;color:#cdbf9a}
  .tat-tile .pv{font-family:var(--font-display);font-weight:500;font-size:clamp(22px,3vw,30px);letter-spacing:-.5px;color:#fff;margin:10px 0 1px;font-variant-numeric:tabular-nums}
  .tat-tile .pl{font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:#b7ad96;font-weight:600}
  .tat-tile .pm{font-size:12px;color:#d7cfba;margin-top:7px}
  .tat-tile .pm b{color:#f3ecd9;font-weight:600}
  .tat-bar{position:relative;height:6px;border-radius:6px;background:rgba(244,239,226,.10);margin-top:13px;overflow:hidden}
  .tat-bar > span{position:absolute;left:0;top:0;height:100%;border-radius:6px;width:0;
    background:linear-gradient(90deg,#6f9e5e,#e7c878);animation:tatGrow 1.1s cubic-bezier(.22,1,.36,1) forwards}
  @keyframes tatGrow{from{width:0}to{width:var(--w,0%)}}
  .tat-foot{margin-top:24px;padding-top:18px;border-top:1px solid rgba(244,239,226,.12);font-size:13px;color:#d7cfba;line-height:1.55}
  .tat-foot b{color:#e7c878;font-weight:600}

  /* Management all-agent track board */
  .hboard{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}
  .hboard th{font-size:9.5px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:600;padding:10px 12px;text-align:right;border-bottom:1px solid var(--line)}
  .hboard th:first-child,.hboard td:first-child{text-align:left}
  .hboard td{padding:11px 12px;text-align:right;border-bottom:1px solid var(--line-soft)}
  .hboard tr:hover td{background:rgba(184,134,11,.04)}
  .hboard .hb-name{font-weight:600;color:var(--ink)}
  .hboard .hb-track{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--sage-dark);margin-left:8px;font-weight:600}
  .hboard .hb-br{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-left:6px}
  .hboard .hb-strong{color:var(--ink);font-weight:600}

  .listings-strip{margin:0 0 40px}
  .listings-strip{text-align:center}
  .listings-strip .strip-head{display:block;margin-bottom:24px;text-align:center}
  .listings-strip .strip-head::before{content:"\2726";display:block;font-size:12px;color:rgba(184,134,11,.3);margin:0 auto 14px;letter-spacing:8px}
  .listings-strip h2{font-family:var(--font-display);font-weight:400;font-size:30px;line-height:1.1;margin:8px 0 0;color:var(--ink);letter-spacing:-0.5px;text-align:center}
  .listings-strip h2 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .listings-strip .strip-head .note{color:var(--muted);font-size:12.5px;max-width:520px;margin:14px auto 0;text-align:center;line-height:1.65}
  .listings-strip .sort-pill{display:inline-block;margin:14px auto 0;font-size:10px;letter-spacing:1.6px;text-transform:uppercase;color:var(--sage-dark);background:var(--sage-soft);border:1px solid var(--line);padding:6px 12px;border-radius:999px;font-weight:600}
  .listing-tile .cap .listed-on{display:block;margin-top:4px;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:rgba(255,255,255,.72);font-style:normal}
  /* --- Status banner (Under Offer / Sold / Reduced / On Show) --- */
  .listing-tile .status-banner{
    position:absolute;top:0;left:0;right:0;
    padding:10px 14px;
    font-family:var(--font-display);font-weight:600;font-style:italic;
    font-size:15px;letter-spacing:1.2px;text-transform:uppercase;
    text-align:center;color:#fff;
    background:linear-gradient(180deg,rgba(136,19,19,.97) 0%,rgba(136,19,19,.88) 100%);
    border-bottom:1px solid rgba(255,255,255,.18);
    box-shadow:0 2px 10px rgba(0,0,0,.35);
    z-index:2;
    pointer-events:none;
  }
  .listing-tile[data-status="sold"] .status-banner{
    background:linear-gradient(180deg,rgba(14,14,12,.97) 0%,rgba(14,14,12,.88) 100%);
  }
  .listing-tile[data-status="reduced"] .status-banner{
    background:linear-gradient(180deg,rgba(184,134,11,.97) 0%,rgba(184,134,11,.88) 100%);
  }
  .listing-tile[data-status="on_show"] .status-banner{
    background:linear-gradient(180deg,rgba(74,110,93,.97) 0%,rgba(74,110,93,.88) 100%);
  }
  .listing-tile[data-status] .cap{padding-top:44px}
  .listing-tile[data-status="under_offer"]{box-shadow:0 0 0 2px rgba(136,19,19,.55) inset}
  .listings-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
  .listing-tile{position:relative;aspect-ratio:4/3;overflow:hidden;background:#0A0A09;border:1px solid var(--line);background-size:cover;background-position:center;background-repeat:no-repeat;transition:background-size .6s ease;display:block;text-decoration:none}
  .listing-tile:hover{background-size:110%;box-shadow:0 8px 28px rgba(14,14,12,.18)}
  .listing-tile .cap{position:absolute;left:0;right:0;bottom:0;padding:14px 14px 12px;color:#fff;font-size:11px;letter-spacing:.5px;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.78) 100%)}
  .listing-tile .cap .ttl{font-family:var(--font-display);font-size:15px;line-height:1.25;font-style:italic;font-weight:400;display:block;margin-bottom:3px}
  .listing-tile .cap strong{color:#fff;font-weight:600;letter-spacing:.3px}
  .listings-strip .see-all{display:inline-block;margin-top:18px;font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--sage-dark);text-decoration:none;border-bottom:1px solid var(--sage);padding-bottom:3px;font-weight:600}
  .listings-strip .see-all:hover{color:var(--ink)}
  @media (max-width:880px){.listings-grid{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:42px}.hero{padding:80px 24px 44px}}

  .grid{display:grid;gap:24px}
  .grid.cols-3{grid-template-columns:2fr 1fr 1fr}
  .grid.cols-2{grid-template-columns:1.6fr 1fr}
  @media (max-width:1000px){.grid.cols-3,.grid.cols-2{grid-template-columns:1fr}#adminDashboardCards{grid-template-columns:1fr !important}}

  .card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);position:relative;transition:box-shadow .3s ease,transform .3s ease;display:flex;flex-direction:column}
  .card:hover{box-shadow:var(--shadow-lift);transform:translateY(-1px)}
  .card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply;border-radius:var(--radius)}
  .card > *{position:relative;z-index:1}
  .card h3{font-family:var(--font-display);font-weight:400;font-size:22px;margin:0 0 4px;color:var(--ink);letter-spacing:-0.4px}
  .card .eyebrow{margin-bottom:16px;display:block}

  .ytd .figure{font-family:var(--font-display);font-weight:300;font-size:64px;line-height:1;margin:10px 0 16px;letter-spacing:-2px;color:var(--ink)}
  .ytd .figure small{font-family:var(--font-display);font-size:22px;color:var(--muted);margin-right:6px;font-weight:300}
  .ytd .sub{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;color:var(--muted);font-size:12px;margin-top:44px;line-height:1.5;padding-top:16px;border-top:1px solid var(--line)}
  .ytd .sub div{display:flex;align-items:baseline;gap:6px}
  .ytd .sub strong{color:var(--ink);font-weight:700;white-space:nowrap}
  .pill{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:0;font-size:10px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;border:1px solid}
  .pill .dot{width:8px;height:8px;border-radius:50%}
  .pill.foundation{background:var(--stone-soft);color:#3D3A35;border-color:var(--foundation)}.pill.foundation .dot{background:var(--foundation)}
  .pill.curated{background:var(--sage-soft);color:#2B2A26;border-color:var(--curated)}.pill.curated .dot{background:var(--curated)}
  .pill.signature{background:#E0DAC8;color:#1A1916;border-color:var(--signature)}.pill.signature .dot{background:var(--signature)}
  .pill.legacy{background:var(--ink);color:#F2EDE2;border-color:var(--ink)}.pill.legacy .dot{background:var(--stone)}

  .ladder{display:flex;flex-direction:column;gap:8px;margin-top:8px}
  .tier{display:grid;grid-template-columns:4px 1fr auto;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:all .2s}
  .tier .swatch{width:4px;height:42px;border-radius:0}
  .tier .name{font-family:var(--font-display);font-size:17px;font-weight:400;color:var(--ink);letter-spacing:-0.2px}
  .tier .amt{color:var(--muted);font-size:10px;letter-spacing:2px;text-transform:uppercase;margin-top:2px;font-weight:500}
  .tier.active{background:var(--sage-soft);border-color:var(--sage)}
  .tier.cleared .check{color:var(--sage-dark);font-size:12px;font-weight:700}
  .tier .check{font-size:12px;color:var(--line)}
  .sw-foundation{background:var(--foundation)}
  .sw-curated{background:var(--curated)}
  .sw-signature{background:var(--signature)}
  .sw-legacy{background:var(--legacy)}

  .progress-wrap{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
  .progress-label{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
  .progress-label .l{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-weight:600}
  .progress-label .r{font-family:var(--font-display);font-size:19px;font-weight:400;color:var(--ink);letter-spacing:-0.3px}
  .bar{height:6px;background:var(--bg-2);border-radius:0;overflow:hidden}
  .bar > span{display:block;height:100%;background:var(--sage);border-radius:0}
  .bar-foot{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:10px;letter-spacing:1px;text-transform:uppercase;font-weight:500}

  .lb{display:flex;flex-direction:column}
  .lb-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line)}
  #lb .lb-row{grid-template-columns:28px 44px 1fr auto;gap:12px}
  #lb .lb-row.lb-compact{grid-template-columns:28px 1fr;gap:10px;padding:6px 0}
  #lb .lb-row.lb-compact .lb-rank{font-size:16px;color:var(--muted);font-weight:400}
  #lb .lb-row.lb-compact .lb-name{font-size:12px}
  #lb .lb-row.lb-compact .lb-tier{display:none}
  .lb-row:last-child{border-bottom:0}
  #lb .lb-row:last-child{padding-bottom:0;margin-bottom:0}
  .lb-rank{font-family:var(--font-display);font-size:26px;color:var(--sage-dark);text-align:center;font-weight:300;font-style:italic}
  /* Subtle gold / silver / bronze tint on dashboard mini-leaderboard ranks */
  #lb .lb-row:nth-child(1) .lb-rank{color:#9A7B1A;font-weight:500}
  #lb .lb-row:nth-child(2) .lb-rank{color:#7A7A7A;font-weight:500}
  #lb .lb-row:nth-child(3) .lb-rank{color:#9A6930;font-weight:500}
  .lb-name{font-weight:600;color:var(--ink);font-size:13px}
  .lb-tier{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-top:2px;font-weight:500}

  /* Year selector above the leaderboard */
  .lb-year-switch{
    display:flex;gap:12px;flex-wrap:wrap;
    max-width:980px;margin:-18px auto 28px;padding:0 20px;
  }
  .lb-year-pill{
    appearance:none;flex:1 1 220px;
    display:flex;flex-direction:column;align-items:flex-start;gap:3px;
    padding:14px 18px;background:#fff;border:1px solid var(--line);
    border-radius:10px;cursor:pointer;text-align:left;
    transition:border-color .2s, box-shadow .2s, transform .2s, background .2s;
    font-family:inherit;color:var(--ink);
    box-shadow:0 1px 2px rgba(47,34,20,.04);
  }
  .lb-year-pill:hover{border-color:#8A6642;box-shadow:0 8px 22px -14px rgba(47,34,20,.35);transform:translateY(-1px)}
  .lb-year-pill.active{
    background:linear-gradient(135deg,#2F2214 0%,#5B3F26 100%);
    border-color:#2F2214;color:#FAF5E8;
    box-shadow:0 10px 26px -16px rgba(47,34,20,.6);
  }
  .lb-year-pill-label{
    font-family:var(--font-display);font-size:22px;font-weight:400;letter-spacing:-.01em;line-height:1;
  }
  .lb-year-pill.active .lb-year-pill-label{
    background:linear-gradient(135deg,#FAF5E8 0%,#D9C7A3 100%);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  }
  .lb-year-pill-sub{
    font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:600;
  }
  .lb-year-pill.active .lb-year-pill-sub{color:#D9C7A3}

  /* Historical awards view */
  .lb-historical{padding:36px 32px 40px;background:#fff;border:1px solid var(--line);}
  .lb-historical .lbh-intro{
    display:flex;align-items:center;gap:14px;flex-wrap:wrap;
    padding:14px 18px;margin:0 0 26px;
    background:linear-gradient(135deg,#FAF5E8 0%,#F2E9D0 100%);
    border:1px solid #D9C7A3;border-left:3px solid #B08D57;border-radius:6px;
    font-size:12px;color:#5B3F26;
  }
  .lb-historical .lbh-intro strong{font-weight:600;color:#2F2214}
  .lb-historical .lbh-section-title{
    font-family:var(--font-display);font-size:22px;font-weight:400;
    color:#2F2214;margin:0 0 14px;letter-spacing:-.01em;
    display:flex;align-items:baseline;gap:10px;
  }
  .lb-historical .lbh-section-title em{font-style:italic;color:#8A6642;font-weight:400}
  .lb-historical .lbh-section-title .lbh-count{
    font-family:'Inter',sans-serif;font-size:10px;letter-spacing:1.4px;
    text-transform:uppercase;color:#8A6642;font-weight:600;
  }
  .lb-historical .lbh-rank-list{display:flex;flex-direction:column;border-top:1px solid #EDE4CF;margin-bottom:36px}
  .lb-historical .lbh-rank{
    display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:16px;
    padding:14px 6px;border-bottom:1px solid #EDE4CF;
  }
  .lb-historical .lbh-rank:last-child{border-bottom:0}
  .lb-historical .lbh-rank.top1{
    background:linear-gradient(90deg,rgba(212,175,55,.18) 0%,rgba(212,175,55,.04) 55%,transparent 90%);
    border-left:3px solid #D4AF37;padding-left:14px;
  }
  .lb-historical .lbh-rank.top2{
    background:linear-gradient(90deg,rgba(180,184,191,.18) 0%,rgba(180,184,191,.04) 55%,transparent 90%);
    border-left:3px solid #B4B8BF;padding-left:14px;
  }
  .lb-historical .lbh-rank.top3{
    background:linear-gradient(90deg,rgba(205,127,50,.16) 0%,rgba(205,127,50,.03) 55%,transparent 90%);
    border-left:3px solid #CD7F32;padding-left:14px;
  }
  .lb-historical .lbh-place{
    font-family:var(--font-display);font-size:32px;font-style:italic;
    color:#2F2214;text-align:center;line-height:1;font-weight:300;
    position:relative;
  }
  .lb-historical .lbh-rank.top1 .lbh-place,
  .lb-historical .lbh-rank.top2 .lbh-place,
  .lb-historical .lbh-rank.top3 .lbh-place{
    font-style:normal;font-weight:500;font-size:26px;
    width:54px;height:54px;display:inline-flex;align-items:center;justify-content:center;
    border-radius:50%;margin:0 auto;
    box-shadow:0 6px 16px -6px rgba(47,34,20,.5), inset 0 1px 0 rgba(255,255,255,.35);
  }
  .lb-historical .lbh-rank.top1 .lbh-place{
    background:radial-gradient(circle at 30% 25%,#FBE89A 0%,#E8C864 35%,#D4AF37 70%,#9A7C1F 100%);
    color:#3B2708;border:1px solid #B89218;
    text-shadow:0 1px 0 rgba(255,255,255,.45);
  }
  .lb-historical .lbh-rank.top2 .lbh-place{
    background:radial-gradient(circle at 30% 25%,#F4F6F9 0%,#D8DCE1 40%,#B4B8BF 75%,#848890 100%);
    color:#2A2A2E;border:1px solid #9DA2AA;
    text-shadow:0 1px 0 rgba(255,255,255,.5);
  }
  .lb-historical .lbh-rank.top3 .lbh-place{
    background:radial-gradient(circle at 30% 25%,#F0C391 0%,#D88A4A 40%,#B87333 75%,#7A4A1D 100%);
    color:#2A1505;border:1px solid #96551F;
    text-shadow:0 1px 0 rgba(255,230,200,.4);
  }
  .lb-historical .lbh-name{font-family:var(--font-display);font-size:18px;color:#2F2214;font-weight:400}
  .lb-historical .lbh-meta{font-size:11px;color:#8A6642;letter-spacing:.4px;margin-top:3px}
  .lb-historical .lbh-gci{font-family:var(--font-display);font-size:18px;color:#2F2214;font-weight:400}
  .lb-historical .lbh-tier{
    display:inline-flex;align-items:center;gap:6px;
    padding:5px 10px;border-radius:999px;font-size:10px;font-weight:600;
    letter-spacing:1.2px;text-transform:uppercase;
    background:#2F2214;color:#FAF5E8;
  }
  .lb-historical .lbh-tier[data-tier="foundation"]{background:#B5AC97;color:#2F2214}
  .lb-historical .lbh-tier[data-tier="curated"]{background:#7E776A;color:#FAF5E8}
  .lb-historical .lbh-tier[data-tier="signature"]{background:#3D3A35;color:#FAF5E8}
  .lb-historical .lbh-tier[data-tier="legacy"]{
    background:linear-gradient(135deg,#0A0A09 0%,#2F2214 100%);color:#D9C7A3;
    box-shadow:0 0 0 1px #B08D57 inset;
  }
  .lb-historical .lbh-tier[data-tier="none"]{background:#EDE4CF;color:#8A6642}
  .lb-historical .lbh-awards-grid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;
  }
  .lb-historical .lbh-award{
    padding:16px 18px;background:#FAF5E8;border:1px solid #EDE4CF;border-radius:8px;
    border-top:3px solid #8A6642;transition:border-top-color .2s, transform .2s;
  }
  .lb-historical .lbh-award:hover{border-top-color:#B08D57;transform:translateY(-1px)}
  .lb-historical .lbh-award-cat{
    font-size:9px;letter-spacing:1.6px;text-transform:uppercase;
    color:#8A6642;font-weight:700;margin-bottom:6px;
  }
  .lb-historical .lbh-award-winner{
    font-family:var(--font-display);font-size:18px;color:#2F2214;
    font-weight:400;line-height:1.25;
  }
  .lb-historical .lbh-award-note{
    font-size:11px;color:#8A6642;margin-top:4px;font-style:italic;
  }
  .lb-historical .lbh-award-about{
    font-size:11.5px;line-height:1.5;color:#5B3F26;margin-top:10px;
    padding-top:10px;border-top:1px dashed rgba(138,102,66,.3);
  }
  .lb-historical .lbh-award-more{
    font-size:12px;line-height:1.5;color:#2F2214;margin-top:8px;
    font-family:var(--font-display);font-style:italic;font-weight:400;
  }
  @media (max-width:720px){
    .lb-historical{padding:24px 18px 28px}
    .lb-historical .lbh-rank{grid-template-columns:44px 1fr auto;gap:12px}
    .lb-historical .lbh-rank .lbh-tier{grid-column:3;grid-row:1}
  }

  /* ─── Podium row — 1st / 2nd / 3rd side by side ───
     Editorial magazine cards. Clean, minimal, chic.
     Large italic numeral in the corner; hairline metallic accents.
     Desktop: three equal columns, 1-2-3 left to right.
     Mobile: stacks, 1st first. */
  .lbh-podium-row{
    display:grid;grid-template-columns:repeat(3,1fr);gap:22px;
    margin:0 0 56px;align-items:stretch;
  }
  .lbh-spotlight{
    /* Default = GOLD (1st place) — champagne */
    --spot-metal:#A8833A;
    --spot-metal-light:#CBA766;
    --spot-metal-deep:#7A5E1F;
    --spot-bg:#FDFBF5;
    --spot-line:#ECE5D2;
    --spot-ink:#1C1815;
    --spot-muted:#8B8378;
    --spot-quote:#3A322A;

    position:relative;display:flex;flex-direction:column;
    background:var(--spot-bg);
    border:1px solid var(--spot-line);
    border-radius:2px;overflow:hidden;
    box-shadow:0 1px 2px rgba(47,34,20,.03);
    transition:box-shadow .35s ease, transform .35s ease;
  }
  .lbh-spotlight::before{
    /* crisp metallic hairline at the very top */
    content:"";position:absolute;top:0;left:0;right:0;height:1px;
    background:var(--spot-metal);z-index:3;
  }
  .lbh-spotlight::after{
    /* Very whisper-soft radial in the top-right for depth */
    content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
    background:radial-gradient(ellipse 60% 50% at 100% 0%, rgba(168,131,58,.04) 0%, transparent 70%);
  }
  .lbh-spotlight--second::after{background:radial-gradient(ellipse 60% 50% at 100% 0%, rgba(148,145,139,.05) 0%, transparent 70%)}
  .lbh-spotlight--third::after{background:radial-gradient(ellipse 60% 50% at 100% 0%, rgba(166,122,91,.05) 0%, transparent 70%)}

  .lbh-spotlight:hover{
    transform:translateY(-3px);
    box-shadow:0 24px 48px -24px rgba(47,34,20,.18);
  }
  .lbh-spotlight-inner{
    position:relative;z-index:1;
    padding:48px 36px 36px;display:flex;flex-direction:column;height:100%;
    color:var(--spot-ink);
  }

  /* Large editorial ordinal — magazine-style italic serif numeral in the corner */
  .lbh-spotlight-medal{
    position:absolute;top:26px;right:32px;z-index:2;
    width:auto;height:auto;border:none;background:none !important;
    box-shadow:none;padding:0;margin:0;
    font-family:var(--font-display);
    font-weight:200;font-style:italic;font-size:56px;line-height:1;
    letter-spacing:-.04em;
    color:var(--spot-metal);
    -webkit-text-stroke:0;
    display:block;
  }
  .lbh-spotlight-medal::after{
    /* tiny superscript label under the numeral — "st" / "nd" / "rd" */
    content:"";
  }

  .lbh-spotlight-eyebrow{
    display:inline-block;padding:0 0 7px;border:none;background:none;border-radius:0;
    font-size:9px;letter-spacing:3.4px;text-transform:uppercase;
    color:var(--spot-metal);font-weight:600;margin-bottom:26px;
    border-bottom:1px solid var(--spot-metal);
    align-self:flex-start;
  }
  .lbh-spotlight-name{
    font-family:var(--font-display);font-weight:200;font-size:42px;line-height:1;
    letter-spacing:-0.025em;margin:0 0 14px;color:var(--spot-ink);
  }
  .lbh-spotlight-tier{
    display:inline-flex;align-items:center;align-self:flex-start;
    padding:0;background:transparent;color:var(--spot-muted);
    border:none;border-radius:0;
    font-size:10px;letter-spacing:2.4px;text-transform:uppercase;font-weight:500;
    margin-bottom:14px;
  }
  .lbh-spotlight-tier::before{
    content:"";display:inline-block;width:18px;height:1px;
    background:var(--spot-metal);margin-right:10px;
  }
  .lbh-spotlight-tagline{
    font-size:11px;letter-spacing:.5px;color:var(--spot-muted);margin:0 0 26px;font-weight:400;
  }
  .lbh-spotlight-headline{
    font-family:var(--font-display);font-size:15.5px;line-height:1.55;font-weight:300;
    font-style:italic;color:var(--spot-quote);margin:0 0 28px;padding-top:22px;
    border-top:1px solid var(--spot-line);
    position:relative;
  }
  .lbh-spotlight-headline::before{
    content:"";position:absolute;top:-1px;left:0;width:36px;height:1px;
    background:var(--spot-metal);
  }

  /* Stats — clean editorial rows, no boxes */
  .lbh-spotlight-stats{
    display:flex;flex-direction:column;gap:0;margin-bottom:28px;
    border-top:1px solid var(--spot-line);
  }
  .lbh-spot-stat{
    padding:13px 0;background:transparent;
    border:none;border-bottom:1px solid var(--spot-line);border-radius:0;
    display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  }
  .lbh-spot-stat-value{
    font-family:var(--font-display);font-size:20px;line-height:1;font-weight:300;
    color:var(--spot-ink);margin:0;order:2;text-align:right;letter-spacing:-.01em;
  }
  .lbh-spot-stat-label{
    font-size:9.5px;letter-spacing:1.8px;text-transform:uppercase;color:var(--spot-muted);
    font-weight:500;margin:0;order:1;flex:1;
  }
  .lbh-spot-stat-note{display:none}

  .lbh-spotlight-divider{
    display:flex;align-items:center;gap:14px;margin:6px 0 18px;
    color:var(--spot-metal);font-size:9px;letter-spacing:3.2px;text-transform:uppercase;font-weight:600;
  }
  .lbh-spotlight-divider::before,
  .lbh-spotlight-divider::after{
    content:"";flex:1;height:1px;background:var(--spot-line);
  }
  .lbh-spotlight-bio{margin-top:auto}
  .lbh-spotlight-bio p{
    font-family:var(--font-display);font-size:14px;line-height:1.7;font-weight:300;
    color:var(--spot-quote);margin:0 0 10px;
  }
  .lbh-spotlight-bio p:first-child::first-letter{
    /* Cleaner look — drop cap removed */
    font-size:inherit;line-height:inherit;float:none;padding:0;color:inherit;
    font-weight:inherit;font-style:inherit;
  }
  .lbh-spotlight-highlights,
  .lbh-spotlight-footnote{display:none}

  /* ─── 2nd place — soft platinum ─── */
  .lbh-spotlight--second{
    --spot-metal:#9A958B;
    --spot-metal-light:#BDB9B0;
    --spot-metal-deep:#6D6A64;
    --spot-bg:#FBFAF7;
    --spot-line:#E8E5DE;
  }

  /* ─── 3rd place — muted rose bronze ─── */
  .lbh-spotlight--third{
    --spot-metal:#A67A5B;
    --spot-metal-light:#C4987A;
    --spot-metal-deep:#7A5740;
    --spot-bg:#FBF7F2;
    --spot-line:#EAE1D3;
  }

  /* Responsive: stack on mobile in 1-2-3 order (natural DOM order) */
  @media (max-width:980px){
    .lbh-podium-row{grid-template-columns:1fr;gap:18px;margin:0 0 36px}
  }
  @media (max-width:720px){
    .lbh-spotlight-inner{padding:40px 26px 28px}
    .lbh-spotlight-name{font-size:34px}
    .lbh-spotlight-medal{font-size:44px;top:18px;right:22px}
  }

  /* Full leaderboard tab */
  .lb-full-wrap{background:#fff;border:1px solid var(--line);padding:0;margin-bottom:60px}
  .lb-full{display:flex;flex-direction:column}
  .lb-full .lbf-row{display:block;padding:14px 32px;border-bottom:1px solid var(--line);transition:background .2s}
  .lb-full .lbf-row:last-child{border-bottom:0}
  .lb-full .lbf-row:hover{background:#FBFAF6}
  .lb-full .lbf-row.you{background:#EFE9D7;border-left:3px solid var(--ink);padding-left:29px}
  .lb-full .lbf-top{display:grid;grid-template-columns:56px 52px 1fr auto auto;align-items:center;gap:14px}
  .lb-full .lbf-rank{font-family:var(--font-display);font-size:36px;line-height:1;color:var(--ink);font-weight:300;font-style:italic;text-align:center}
  .lb-full .lbf-toggle{background:transparent;border:1px solid var(--line);width:34px;height:34px;border-radius:50%;font-size:14px;color:var(--ink);cursor:pointer;transition:all .2s}
  .lb-full .lbf-toggle:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
  .lb-full .lbf-breakdown{margin-top:18px;padding:18px 20px;background:rgba(255,255,255,0.6);border:1px solid var(--line);border-radius:6px}
  .lb-full .lb-breakdown-title{font-family:var(--font-body);font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:var(--sage-dark);margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}
  .lb-full .lb-breakdown-title:not(:first-child){margin-top:16px}
  .lb-full .lb-deal-list{list-style:none;margin:0;padding:0}
  .lb-full .lb-deal-list li{padding:10px 0;border-bottom:1px dashed rgba(0,0,0,0.08)}
  .lb-full .lb-deal-list li:last-child{border-bottom:0}
  .lb-full .lb-deal-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
  .lb-full .lb-deal-name{font-family:var(--font-display);font-size:16px;color:var(--ink);font-weight:500}
  .lb-full .lb-co{font-family:var(--font-body);font-size:11px;color:var(--muted);font-weight:400;letter-spacing:0}
  .lb-full .lb-deal-gci{font-family:var(--font-body);font-size:14px;color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
  .lb-full .lb-deal-gci em{font-style:normal;font-weight:600;font-size:9px;letter-spacing:1.2px;color:var(--muted);margin-left:4px;text-transform:uppercase}
  .lb-full .lb-deal-take{font-family:var(--font-body);font-size:11px;color:var(--sage-dark);font-weight:700;background:var(--sage-soft);padding:2px 8px;border-radius:999px;letter-spacing:.2px}
  .lb-full .lb-deal-take em{font-style:normal;font-weight:600;font-size:9px;color:var(--muted);margin-left:3px;letter-spacing:1px;text-transform:uppercase}
  .rentals-row .rr-amt em.rr-private{color:var(--muted);font-style:italic;font-weight:400;letter-spacing:.5px;text-transform:none;font-size:11px}
  .lb-full .lb-deal-meta{display:flex;flex-wrap:wrap;gap:14px;margin-top:4px;font-family:var(--font-body);font-size:11px;color:var(--muted)}
  .lb-full .lb-src{display:inline-block;padding:1px 8px;background:var(--sage);color:#fff;border-radius:3px;font-size:9px;font-weight:700;letter-spacing:1.5px}
  .lb-full .lb-deal-list.lb-pipe .lb-deal-gci{color:var(--sage-dark)}
  .lb-full .lb-pipe-heading{padding:36px 32px 16px;border-top:1px solid var(--line);margin-top:12px}
  .lb-full .lb-pipe-heading h3{font-family:var(--font-display);font-size:22px;font-weight:400;color:var(--ink);margin:0 0 6px 0;font-style:italic}
  .lb-full .lb-pipe-heading p{font-family:var(--font-body);font-size:12px;color:var(--muted);margin:0;max-width:560px;line-height:1.6}
  .lb-full .lbf-pipe-row{background:rgba(255,255,255,0.4)}
  .lb-full .lbf-pipe-row .lbf-rank{font-size:24px;color:var(--muted)}
  .lb-full .lbf-row.top1{background:linear-gradient(135deg,#F5E8BF 0%,#EDD998 40%,#F8F0D4 100%);border-bottom:2px solid #D4B85C;border-left:4px solid #C9A420;position:relative;padding-top:22px !important;padding-bottom:22px !important;box-shadow:0 2px 12px rgba(184,134,11,.12)}
  .lb-full .lbf-row.top1::before{content:"";position:absolute;top:10px;left:10px;width:28px;height:28px;z-index:2;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 8 C45 20, 30 18, 20 28 C10 38, 12 52, 18 60 C24 68, 36 72, 50 88 C64 72, 76 68, 82 60 C88 52, 90 38, 80 28 C70 18, 55 20, 50 8Z' fill='none' stroke='%23B8860B' stroke-width='2.5'/%3E%3Cpath d='M50 18 C47 26, 36 25, 28 32 C20 39, 22 48, 26 54 C30 60, 40 64, 50 76 C60 64, 70 60, 74 54 C78 48, 80 39, 72 32 C64 25, 53 26, 50 18Z' fill='%23B8860B' opacity='0.15'/%3E%3Ctext x='50' y='56' text-anchor='middle' font-family='Georgia,serif' font-size='28' font-weight='bold' fill='%23B8860B'%3EI%3C/text%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;filter:drop-shadow(0 1px 3px rgba(139,105,20,.3))}
  .lb-full .lbf-row.top1 .lbf-rank{color:#8B6914;font-style:italic;font-weight:400;font-size:44px}
  .lb-full .lbf-row.top1 .lbf-name{letter-spacing:-0.5px;font-size:26px}
  .lb-full .lbf-bio{display:none;font-family:var(--font-body);font-size:12.5px;line-height:1.65;color:var(--muted);margin-top:8px;max-width:620px;font-style:italic}
  .lb-full .lbf-row.top1 .lbf-bio{display:block}
  .lb-full .lbf-breakdown .lbf-bio-expanded{font-family:var(--font-body);font-size:12.5px;line-height:1.7;color:var(--ink-2,#5A5548);margin:0 0 16px;max-width:620px;font-style:italic;padding:14px 18px;background:rgba(184,134,11,.03);border-left:3px solid var(--sage);border-radius:0 8px 8px 0}
  .lb-full .lbf-row.top2{background:linear-gradient(135deg,#F0EEEA 0%,#E6E4E0 40%,#F5F3EF 100%);border-left:4px solid #A0A0A0;padding-left:29px;box-shadow:0 1px 8px rgba(100,100,100,.08)}
  .lb-full .lbf-row.top2 .lbf-rank{color:#6E6E6E;font-weight:400}
  .lb-full .lbf-row.top3{background:linear-gradient(135deg,#F8EFE2 0%,#F0E0C8 40%,#FBF4EA 100%);border-left:4px solid #B8863B;padding-left:29px;box-shadow:0 1px 8px rgba(160,96,42,.08)}
  .lb-full .lbf-row.top3 .lbf-rank{color:#8B5E2A;font-weight:400}
  .lb-full .lbf-name{font-family:var(--font-display);font-size:21px;line-height:1.15;color:var(--ink);font-weight:400;letter-spacing:-0.3px}
  .lb-full .lbf-name .you-tag{display:inline-block;margin-left:10px;font-family:var(--font-body);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--sage-dark);font-style:normal;font-weight:600;vertical-align:middle;border:1px solid var(--sage);padding:3px 8px}
  .lb-full .lbf-meta{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-top:6px;font-weight:500}
  .lb-full .lbf-tier{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:10px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;color:var(--ink);padding:8px 14px;border:1px solid var(--line);background:#fff}
  .lb-full .lbf-tier .tdot{width:8px;height:8px;border-radius:50%}
  .lb-full .lbf-tier.t-foundation .tdot{background:#B5AC97}
  .lb-full .lbf-tier.t-curated .tdot{background:#7E776A}
  .lb-full .lbf-tier.t-signature .tdot{background:#3D3A35}
  .lb-full .lbf-tier.t-legacy .tdot{background:#0A0A09}
  .lb-full .lbf-tier.t-none{color:var(--muted)}
  .lb-full .lbf-tier.t-none .tdot{background:#D8D5CB}
  @media (max-width:720px){
    .lb-full .lbf-row{padding:12px 14px}
    .lb-full .lbf-row.you{padding-left:11px}
    .lb-full .lbf-top{grid-template-columns:40px 48px 1fr auto;gap:10px}
    .lb-full .lbf-tier{grid-column:1 / span 4;justify-self:start;margin-top:4px}
    .lb-full .lbf-toggle{grid-column:4;grid-row:1}
    .lb-full .lbf-name{font-size:20px}
    .lb-full .lbf-rank{font-size:34px}
    .lb-full .lb-deal-name{font-size:14px}
    .lb-full .lb-deal-meta{font-size:10px;gap:8px}
  }

  /* ─── COMBINED STANDINGS (v67 restoration) ──────────────────────
     Editorial-style board that ranks on banked + pipeline GCI and
     strips every Rand value — only rank · name · deal count · a
     "Tier once pipeline lands" badge on the right. */
  .lb-combined-intro{margin:44px auto 14px;text-align:center;max-width:640px;padding:0 20px;}
  .lb-combined-intro .eyebrow{display:inline-block;font-family:var(--font-body);font-size:10px;letter-spacing:3px;text-transform:uppercase;font-weight:700;color:var(--sage-dark);padding-bottom:8px;position:relative;margin-bottom:10px;}
  .lb-combined-intro .eyebrow::after{content:"";display:block;width:36px;height:1px;background:#C9A420;margin:7px auto 0;opacity:.6;}
  .lb-combined-intro h2{font-family:var(--font-display);font-weight:300;font-size:30px;line-height:1.08;letter-spacing:-0.6px;margin:0 0 10px;color:var(--ink);}
  .lb-combined-intro h2 em{font-style:italic;color:var(--sage-dark);font-weight:300;}
  .lb-combined-intro .lead{font-family:var(--font-body);font-size:13px;line-height:1.6;color:var(--muted);margin:0 auto;max-width:540px;}
  .lb-combined{margin-top:0;}
  /* Hide any element that could leak a Rand value in this board */
  .lb-combined .lbf-tier,
  .lb-combined .lbf-toggle,
  .lb-combined .lbf-breakdown,
  .lb-combined .lb-deal-gci,
  .lb-combined .lb-deal-take,
  .lb-combined .lb-deal-tax{display:none !important;}
  /* Right-side projected-tier block — editorial name + soft caption */
  .lb-combined .lbc-tier{
    display:flex;flex-direction:column;align-items:flex-end;justify-content:center;
    gap:5px;padding-left:22px;border-left:1px solid var(--line);
    min-width:200px;text-align:right;
  }
  .lb-combined .lbc-tier-name{
    font-family:var(--font-display);font-weight:300;font-size:30px;line-height:1;
    color:var(--ink);letter-spacing:-.6px;
    display:inline-flex;align-items:center;gap:10px;
  }
  .lb-combined .lbc-tier-name em{font-style:italic;font-weight:300;}
  .lb-combined .lbc-tier-dot{
    width:10px;height:10px;border-radius:50%;background:#D8D5CB;
    box-shadow:0 0 0 3px rgba(47,34,20,.04);flex-shrink:0;
  }
  .lb-combined .lbc-tier[data-tier="foundation"] .lbc-tier-dot{background:#B5AC97}
  .lb-combined .lbc-tier[data-tier="curated"]    .lbc-tier-dot{background:#7E776A}
  .lb-combined .lbc-tier[data-tier="signature"]  .lbc-tier-dot{background:#3D3A35}
  .lb-combined .lbc-tier[data-tier="legacy"]     .lbc-tier-dot{background:#0A0A09;box-shadow:0 0 0 3px rgba(184,134,11,.12)}
  .lb-combined .lbc-tier-lbl{
    font-family:var(--font-body);font-size:9.5px;letter-spacing:2.2px;
    text-transform:uppercase;font-weight:600;color:var(--muted);white-space:nowrap;
  }
  .lb-combined .lbf-row.top1 .lbc-tier-name{color:#8B6914;font-size:34px;font-weight:400;}
  .lb-combined .lbf-row.top2 .lbc-tier-name{color:#4A4A4A;}
  .lb-combined .lbf-row.top3 .lbc-tier-name{color:#8B5E2A;}
  .lb-combined .lbf-top{grid-template-columns:56px 52px 1fr auto !important;align-items:center;}
  @media (max-width:720px){
    .lb-combined-intro h2{font-size:24px;}
    .lb-combined .lbf-top{grid-template-columns:40px 48px 1fr auto !important;}
    .lb-combined .lbc-tier{min-width:0;padding-left:12px;}
    .lb-combined .lbc-tier-name{font-size:22px;}
    .lb-combined .lbf-row.top1 .lbc-tier-name{font-size:26px;}
    .lb-combined .lbc-tier-lbl{font-size:8.5px;letter-spacing:1.6px;}
    .lb-combined .lbc-tier-dot{width:8px;height:8px;}
  }

  .chart-card{min-width:0}
  .chart-tabs{display:inline-flex;gap:4px;margin:14px 0 14px;background:var(--bg-2);padding:4px;border-radius:999px;border:1px solid var(--line)}
  .chart-tab{appearance:none;background:transparent;border:0;color:var(--muted);font-family:var(--font-body);font-size:10px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;padding:9px 16px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent}
  .chart-tab.active{background:var(--ink);color:#fff;box-shadow:0 1px 3px rgba(0,0,0,0.18)}
  .chart-stage{width:100%;background:#fff;border:1px solid var(--line);border-radius:6px;padding:10px 6px;min-width:0;overflow:hidden}
  svg.chart-svg{display:block;width:100%;height:auto;max-width:100%}
  .chart-summary{display:flex;gap:24px;margin:12px 2px 0;font-size:11px;color:var(--muted);letter-spacing:1px;text-transform:uppercase;font-weight:600;flex-wrap:wrap}
  .chart-summary .ck{display:flex;flex-direction:column;gap:2px}
  .chart-summary .ck strong{font-family:var(--font-display);font-style:italic;font-weight:400;color:var(--ink);font-size:18px;letter-spacing:-0.3px;text-transform:none}
  .legend{display:flex;gap:22px;margin-top:10px;font-size:12px;color:var(--ink-2);flex-wrap:wrap}
  .legend .sw{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:8px;vertical-align:middle}
  /* Critical: prevent grid items with wide content from blowing out the column */
  .grid > *{min-width:0}

  .streaks{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  @media (max-width:720px){.streaks{grid-template-columns:1fr}}
  .streak{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:#fff}
  .streak h4{margin:0 0 6px;font-family:var(--font-display);font-size:20px;font-weight:400;color:var(--ink);letter-spacing:-0.3px}
  .streak .desc{font-size:11px;color:var(--muted);margin-bottom:18px;letter-spacing:1px;text-transform:uppercase;font-weight:500}
  .dots{display:flex;gap:8px;margin-bottom:14px}
  .dots div{flex:1;height:6px;border-radius:0;background:var(--bg-2);position:relative;overflow:hidden}
  .dots div.fill{background:var(--sage)}
  .dots div.partial::after{content:"";position:absolute;inset:0;width:var(--p,0%);background:var(--sage)}
  .streak .foot{font-size:12px;color:var(--muted);line-height:1.6}
  .streak .foot strong{color:var(--ink);font-weight:700}

  .rentals-card{padding:26px 28px}
  .rentals-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}
  .rentals-head h3{margin:4px 0 0;font-family:var(--font-display);font-size:22px;font-weight:400;color:var(--ink);letter-spacing:-0.4px}
  .rentals-head h3 em{color:var(--sage-dark);font-style:italic}
  .rentals-total{font-family:var(--font-display);font-size:26px;color:var(--ink);letter-spacing:-0.5px;white-space:nowrap}
  .rentals-total small{display:block;font-size:10px;color:var(--muted);letter-spacing:2px;text-transform:uppercase;font-family:var(--font-body);margin-bottom:2px}
  .rentals-total span{font-size:11px;color:var(--muted);font-family:var(--font-body);letter-spacing:0}
  .rentals-list{display:grid;gap:10px;margin-bottom:16px}
  .rentals-row{display:grid;grid-template-columns:44px 1fr 2fr auto;gap:14px;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;transition:background .2s}
  .rentals-row.me{background:var(--sage-soft);border-color:var(--sage)}
  .rentals-row .rr-rk{font-family:var(--font-display);font-size:18px;color:var(--sage-dark);text-align:center}
  .rentals-row .rr-name{font-size:13px;font-weight:600;color:var(--ink)}
  .rentals-row .rr-name em{font-style:normal;font-weight:400;color:var(--muted);font-size:11px}
  .rentals-row .rr-bar{height:6px;background:var(--bg-2);border-radius:3px;overflow:hidden}
  .rentals-row .rr-bar span{display:block;height:100%;background:var(--sage);border-radius:3px}
  .rentals-row .rr-amt{font-family:var(--font-display);font-size:15px;color:var(--ink);text-align:right;white-space:nowrap}
  .rentals-row .rr-amt em{font-style:normal;font-size:10px;color:var(--muted);letter-spacing:1px;font-family:var(--font-body);text-transform:uppercase}
  .rentals-foot{font-size:12px;color:var(--muted);line-height:1.6;padding-top:12px;border-top:1px solid var(--line)}
  .rentals-foot strong{color:var(--ink);font-weight:700}
  .rentals-empty{text-align:center;padding:24px;color:var(--muted);font-size:12px;letter-spacing:1px;text-transform:uppercase}
  @media (max-width:720px){.rentals-row{grid-template-columns:36px 1fr auto;gap:10px}.rentals-row .rr-bar{display:none}}

  .incentives ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
  .incentives li{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}
  .incentives .ic{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--sage-soft),rgba(184,134,11,.08));display:grid;place-items:center;font-family:var(--font-display);font-size:13px;color:var(--sage-dark);flex-shrink:0;font-weight:400;letter-spacing:0;font-style:italic;border:1px solid rgba(184,134,11,.12)}
  .incentives .t{font-weight:600;font-size:13px;color:var(--ink)}
  .incentives .d{font-size:11.5px;color:var(--muted);margin-top:2px;line-height:1.5}

  .note{font-size:11.5px;color:var(--muted);margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}

  /* Login gate */
  body.locked{overflow:hidden}
  .login-gate{position:fixed;inset:0;background:var(--bg);z-index:9999;display:none;align-items:center;justify-content:center;padding:24px}
  body.locked .login-gate{display:flex}
  .login-card{width:100%;max-width:420px;text-align:center;position:relative}
  .login-card::before{content:"\201C";position:absolute;top:-38px;left:50%;transform:translateX(-50%);font-family:var(--font-display);font-size:120px;font-weight:300;color:rgba(184,134,11,.06);line-height:1;pointer-events:none;z-index:0}
  .login-logo{height:110px;width:auto;margin:0 auto 36px;display:block;filter:none;color:var(--ink);position:relative;z-index:1}
  .login-eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:10px;position:relative;z-index:1}
  .login-card h2{font-family:var(--font-display);font-weight:400;font-size:36px;margin:0 0 12px;color:var(--ink);letter-spacing:-0.8px;line-height:1.1}
  .login-card h2 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .login-card p.tag{font-family:var(--font-display);font-style:italic;font-size:15px;color:var(--sage-dark);margin:8px 0 14px;letter-spacing:.2px;position:relative;padding-bottom:14px}
  .login-card p.tag::after{content:"";display:block;width:36px;height:1px;background:var(--sage);opacity:.55;margin:14px auto 0}
  .login-card p.sub{color:var(--muted);font-size:13px;margin:0 0 32px;line-height:1.6}
  .login-form{display:flex;flex-direction:column;gap:14px}
  .login-form input{font-family:inherit;font-size:15px;padding:14px 16px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:var(--radius);outline:none;text-align:center;letter-spacing:0.3px}
  .login-form input::placeholder{color:#B8B8B5}
  .login-form input:focus{border-color:var(--sage)}
  .login-form button{font-family:inherit;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;padding:14px 16px;background:var(--ink);color:#fff;border:1px solid var(--ink);cursor:pointer;border-radius:var(--radius);transition:all .15s}
  .login-form button:hover{background:var(--sage-dark);border-color:var(--sage-dark)}
  .login-err{color:#9B3B2E;font-size:12px;margin-top:4px;min-height:16px}
  .login-hint{font-size:11px;color:var(--muted);margin-top:28px;letter-spacing:0.3px;line-height:1.6}
  .login-hint code{background:var(--sage-soft);padding:2px 6px;border-radius:3px;font-size:11px;color:var(--olive)}

  .section-title{display:block;text-align:center;margin:72px auto 28px;max-width:780px;position:relative}
  .section-title::before{content:"\2726";display:block;font-size:14px;color:rgba(184,134,11,.35);margin:0 auto 14px;letter-spacing:8px}
  .section-title h2{font-family:var(--font-display);font-weight:400;font-size:34px;margin:10px 0 0;color:var(--ink);letter-spacing:-0.8px;text-align:center;line-height:1.12}
  .section-title h2 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .section-title .eyebrow{display:block;margin-bottom:4px}
  .section-title .sub{color:var(--muted);font-size:13px;line-height:1.7;margin:18px auto 0;max-width:620px;text-align:center}
  .section-title .sub strong{color:var(--ink);font-weight:600}

  footer{padding:64px 0 44px;text-align:center;color:var(--muted);font-size:10px;letter-spacing:3px;text-transform:uppercase;font-weight:500}
  footer::before{content:"\2726  \2726  \2726";display:block;font-size:10px;color:rgba(184,134,11,.25);margin:0 auto 28px;letter-spacing:6px}
  footer .rule{height:1px;background:linear-gradient(90deg,transparent,rgba(184,134,11,.2),transparent);margin:0 auto 24px;max-width:200px}
  footer .foot-tag{font-family:var(--font-display);font-style:italic;font-size:15px;color:var(--sage-dark);letter-spacing:.2px;text-transform:none;margin-bottom:18px;font-weight:400}

  /* ---------- Training / Admin view hero ---------- */
  .train-hero{position:relative;padding:56px 34px 40px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);margin-bottom:40px;text-align:center;overflow:hidden}
  .train-hero::before{content:"\2726";display:block;font-size:14px;color:rgba(184,134,11,.35);margin:0 auto 14px;letter-spacing:8px}
  .train-hero .eyebrow{display:block;margin-bottom:10px}
  .train-hero h1{font-family:var(--font-display);font-weight:400;font-size:54px;line-height:1.05;margin:14px auto 18px;color:var(--ink);letter-spacing:-1.2px;max-width:780px;text-align:center}
  .train-hero h1 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .train-hero p.lead{color:var(--muted);max-width:680px;margin:0 auto 26px;font-size:15px;line-height:1.7;text-align:center}
  .train-meta{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:center}
  .train-meta .meta{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-weight:600}
  .btn-pdf{display:inline-block;padding:13px 22px;background:var(--ink);color:#fff;text-decoration:none;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;border-radius:var(--radius);transition:all .15s;border:1px solid var(--ink)}
  .btn-pdf:hover{background:var(--sage-dark);border-color:var(--sage-dark)}

  .train-layout{display:grid;grid-template-columns:280px 1fr;gap:48px;align-items:start}
  @media (max-width:900px){.train-layout{grid-template-columns:1fr;gap:24px}}

  .train-nav{position:sticky;top:96px;border-right:1px solid var(--line);padding-right:24px}
  @media (max-width:900px){.train-nav{position:static;border-right:0;border-bottom:1px solid var(--line);padding:0 0 18px}}
  .nav-eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:16px}
  .chapter-list{list-style:none;padding:0;margin:0;counter-reset:chap}
  .chapter-list li{counter-increment:chap;border-bottom:1px solid var(--line)}
  .chapter-list li:last-child{border-bottom:0}
  .chapter-list a{display:flex;gap:14px;align-items:flex-start;padding:13px 4px;text-decoration:none;color:var(--ink-2);font-size:13px;line-height:1.4;transition:color .15s}
  .chapter-list a:hover{color:var(--sage-dark)}
  .chapter-list a.active{color:var(--ink);font-weight:600}
  .chapter-list a.active::before{color:var(--sage-dark)}
  .chapter-list a::before{content:counter(chap, decimal-leading-zero);font-family:var(--font-display);font-style:italic;color:var(--muted);font-size:13px;flex-shrink:0;font-weight:300;letter-spacing:0.3px}

  .train-reader{max-width:720px;padding-bottom:80px}
  .train-reader .chapter{display:none;animation:fadeIn .25s ease}
  .train-reader .chapter.active{display:block}
  @keyframes fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
  @keyframes pulseDot{0%{box-shadow:0 0 0 0 rgba(47,110,62,0.35)}70%{box-shadow:0 0 0 8px rgba(47,110,62,0)}100%{box-shadow:0 0 0 0 rgba(47,110,62,0)}}
  .train-reader .ch-eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);font-weight:600}
  .train-reader h2{font-family:var(--font-display);font-weight:400;font-size:42px;line-height:1.08;margin:12px 0 26px;color:var(--ink);letter-spacing:-1px}
  .train-reader h2 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .train-reader h3{font-family:var(--font-display);font-weight:400;font-size:22px;line-height:1.25;margin:36px 0 12px;color:var(--ink);letter-spacing:-0.4px}
  .train-reader p{font-size:15px;line-height:1.75;color:var(--ink-2);margin:0 0 16px}
  .train-reader p strong{color:var(--ink);font-weight:700}
  .train-reader p em{font-style:italic}
  .train-reader ul,.train-reader ol{padding-left:22px;margin:0 0 18px;color:var(--ink-2)}
  .train-reader li{font-size:15px;line-height:1.75;margin-bottom:6px}
  .train-reader blockquote{margin:22px 0;padding:18px 24px;border-left:3px solid var(--sage);background:var(--sage-soft);font-family:var(--font-display);font-style:italic;font-size:17px;line-height:1.55;color:var(--olive);border-radius:0 var(--radius) var(--radius) 0}
  .train-reader .pull{margin:28px 0;padding:24px 28px;border:1px solid var(--line);background:var(--bg-2);border-radius:var(--radius)}
  .train-reader .pull .pull-eyebrow{font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--sage-dark);font-weight:700;margin-bottom:8px}
  .train-reader .pull h4{font-family:var(--font-display);font-weight:400;font-size:18px;margin:0 0 8px;color:var(--ink);letter-spacing:-0.3px}
  .train-reader .diagram{margin:28px 0;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;text-align:center}
  .train-reader .diagram svg{max-width:100%;height:auto}
  .train-reader .diagram .cap{font-size:11px;color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-top:14px;font-weight:600}
  .train-reader table{width:100%;border-collapse:collapse;margin:22px 0;font-size:13px}
  .train-reader table th,.train-reader table td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top}
  .train-reader table th{font-family:var(--font-display);font-weight:400;font-size:13px;color:var(--sage-dark);background:var(--bg-2);font-style:italic;letter-spacing:0.2px}
  .train-reader .ch-foot{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
  .train-reader .ch-foot button{font-family:inherit;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;padding:13px 20px;background:#fff;color:var(--ink);border:1px solid var(--line);cursor:pointer;border-radius:var(--radius);transition:all .15s}
  .train-reader .ch-foot button:hover{border-color:var(--sage);color:var(--sage-dark)}
  .train-reader .ch-foot button.next{background:var(--ink);color:#fff;border-color:var(--ink)}
  .train-reader .ch-foot button.next:hover{background:var(--sage-dark);border-color:var(--sage-dark)}

  /* ---------- Rules page (Annexures A & B) ---------- */
  .rules-hero{position:relative;margin:24px 0 28px;padding:72px 56px 64px;background:linear-gradient(135deg,#1a1a18 0%,#0E0E0C 55%,#2A2925 100%);color:#F4F0E5;border-radius:var(--radius);overflow:hidden;text-align:center}
  .rules-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 20%,rgba(212,202,170,0.18),transparent 55%),radial-gradient(circle at 80% 85%,rgba(117,131,103,0.25),transparent 55%);pointer-events:none}
  .rules-hero > *{position:relative}
  .rules-hero .eyebrow{color:#D4CAAA;display:inline-block;margin-bottom:6px;font-size:10.5px;letter-spacing:3px;text-transform:uppercase;font-weight:600}
  .rules-hero h1{font-family:var(--font-display);font-weight:400;font-size:54px;line-height:1.05;margin:14px 0 18px;letter-spacing:-1.2px;color:#F4F0E5}
  .rules-hero h1 em{font-style:italic;font-weight:300;color:#E5DDC5}
  .rules-hero p.lead{font-size:15px;line-height:1.7;color:rgba(244,240,229,0.82);max-width:640px;margin:0 auto}
  .rules-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:var(--bg-2);padding:6px;border:1px solid var(--line);border-radius:999px;max-width:720px;margin:0 auto 36px;box-shadow:0 1px 2px rgba(0,0,0,0.03)}
  .rules-tab{appearance:none;background:transparent;border:0;padding:14px 18px;cursor:pointer;border-radius:999px;text-align:center;display:flex;flex-direction:column;gap:2px;align-items:center;transition:background .2s ease,color .2s ease,box-shadow .2s ease;font-family:inherit;-webkit-tap-highlight-color:transparent}
  .rules-tab .rt-label{font-size:9.5px;letter-spacing:2.2px;text-transform:uppercase;font-weight:600;color:var(--muted)}
  .rules-tab .rt-title{font-family:var(--font-display);font-size:17px;font-weight:400;color:var(--ink-2);letter-spacing:-0.2px}
  .rules-tab.active{background:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,0.18)}
  .rules-tab.active .rt-label{color:#D4CAAA}
  .rules-tab.active .rt-title{color:#F4F0E5}
  .rules-doc{max-width:880px;margin:0 auto 48px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:56px 64px;box-shadow:0 1px 2px rgba(0,0,0,0.02)}
  .rules-doc-head{text-align:center;padding-bottom:32px;margin-bottom:40px;border-bottom:1px solid var(--line)}
  .rules-doc-head .eyebrow{display:inline-block;margin-bottom:8px;font-size:10.5px;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--sage-dark)}
  .rules-doc-head h2{font-family:var(--font-display);font-weight:400;font-size:42px;line-height:1.08;margin:10px 0 14px;color:var(--ink);letter-spacing:-1px}
  .rules-doc-head .rd-sub{font-size:14px;line-height:1.7;color:var(--ink-2);max-width:560px;margin:0 auto}
  .rules-section{display:grid;grid-template-columns:64px 1fr;gap:28px;padding:28px 0;border-top:1px solid var(--line)}
  .rules-section:first-of-type{border-top:0;padding-top:0}
  .rules-section .rs-num{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:42px;line-height:1;color:var(--sage-dark);letter-spacing:-1.5px}
  .rules-section .rs-body h3{font-family:var(--font-display);font-weight:400;font-size:26px;line-height:1.15;margin:4px 0 18px;color:var(--ink);letter-spacing:-0.6px}
  .rules-section .rs-body h4{font-family:var(--font-body);font-weight:600;font-size:11.5px;letter-spacing:1.6px;text-transform:uppercase;color:var(--sage-dark);margin:22px 0 8px}
  .rules-section .rs-body h4:first-of-type{margin-top:0}
  .rules-section .rs-body p{font-size:14.5px;line-height:1.75;color:var(--ink-2);margin:0 0 12px}
  .rules-section .rs-body p strong{color:var(--ink);font-weight:700}
  .rules-section .rs-body .rs-list{margin:6px 0 14px;padding:0;list-style:none}
  .rules-section .rs-body .rs-list li{position:relative;padding:6px 0 6px 22px;font-size:14px;line-height:1.7;color:var(--ink-2);border-bottom:1px dashed rgba(0,0,0,0.08)}
  .rules-section .rs-body .rs-list li:last-child{border-bottom:0}
  .rules-section .rs-body .rs-list li::before{content:"";position:absolute;left:2px;top:14px;width:10px;height:1px;background:var(--sage)}
  .rules-section .rs-body .rs-list li strong{color:var(--ink);font-weight:700}
  .rules-section .rs-body .rs-note{font-style:italic;color:var(--muted);font-size:13px;border-left:2px solid var(--sage);padding:4px 0 4px 14px;margin:14px 0 4px}
  .rules-preamble{max-width:680px;margin:0 auto 36px;text-align:center;padding:0 8px}
  .rules-preamble p{font-size:14.5px;line-height:1.85;color:var(--ink-2);margin:0 0 14px}
  .rules-values{margin:0 0 40px}
  .rules-values .rv-head{text-align:center;margin-bottom:24px}
  .rules-values .rv-head .eyebrow{display:inline-block;margin-bottom:6px;font-size:10.5px;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--sage-dark)}
  .rules-values .rv-head h3{font-family:var(--font-display);font-weight:400;font-size:26px;line-height:1.1;margin:6px 0 0;color:var(--ink);letter-spacing:-0.6px}
  .rules-values .rv-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
  .rules-values .rv-card{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:22px 18px;text-align:center;transition:transform .2s ease,box-shadow .2s ease}
  .rules-values .rv-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px -12px rgba(0,0,0,0.12)}
  .rules-values .rv-card .rv-num{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:28px;color:var(--sage-dark);line-height:1;margin-bottom:10px;letter-spacing:-0.5px}
  .rules-values .rv-card h4{font-family:var(--font-display);font-weight:400;font-size:18px;color:var(--ink);margin:0 0 6px;letter-spacing:-0.3px}
  .rules-values .rv-card p{font-size:12.5px;line-height:1.55;color:var(--ink-2);margin:0}
  .rules-closing{margin-top:40px;padding:32px 28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2);text-align:center}
  .rules-closing .eyebrow{display:inline-block;margin-bottom:12px;font-size:10.5px;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--sage-dark)}
  .rules-closing p{font-size:14.5px;line-height:1.8;color:var(--ink-2);margin:0 auto 12px;max-width:620px}
  .rules-closing .rc-tag{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:17px;color:var(--ink);letter-spacing:-0.2px;margin-top:14px}

  /* ---------- Desktop nav fit: shrink gap so 7 items clear the clock ---------- */
  @media (max-width:1240px){
    nav.main a{margin-left:20px;letter-spacing:2px}
    .live-clock{display:none}
  }
  @media (max-width:1100px){
    nav.main a{margin-left:14px;font-size:10.5px;letter-spacing:1.5px}
    .brand-logo{height:48px}
    .user-chip .switch{display:none}
  }
  @media (max-width:960px){
    nav.main a{margin-left:11px;font-size:10px;letter-spacing:1.2px}
    .brand-logo{height:42px}
  }

  /* ---------- Paperwork hero ---------- */
  .paperwork-hero{padding:44px 0 24px;text-align:center;border-bottom:1px solid var(--line);margin-bottom:36px}
  .paperwork-hero .eyebrow{display:inline-block;margin-bottom:14px;font-size:11px;letter-spacing:3px;text-transform:uppercase;font-weight:600;color:var(--sage-dark)}
  .paperwork-hero h1{font-size:clamp(38px,5vw,64px);font-weight:400;letter-spacing:-1.2px;color:var(--ink);margin:0 0 14px}
  .paperwork-hero h1 em{font-family:var(--font-display);font-style:italic;font-weight:400;color:var(--sage-dark)}
  .paperwork-hero .lead{max-width:680px;margin:0 auto;font-size:15px;line-height:1.7;color:var(--ink-2)}
  @media (max-width:720px){
    .paperwork-hero{padding:28px 0 16px;margin-bottom:22px}
    .paperwork-hero h1{font-size:34px;letter-spacing:-0.8px}
    .paperwork-hero .lead{font-size:13.5px}
  }

  /* ---------- Mobile page nav (segmented pill bar) ---------- */
  .page-nav-mobile{display:none}

  /* ---------- Mobile sidebar menu ---------- */
  .mobile-menu-btn{display:none;background:none;border:none;cursor:pointer;padding:8px;color:var(--ink);-webkit-tap-highlight-color:transparent}
  .mobile-menu-btn svg{width:22px;height:22px}
  .sidebar-backdrop{display:none;position:fixed;inset:0;background:rgba(14,14,12,.45);z-index:9990;opacity:0;transition:opacity .3s ease;-webkit-tap-highlight-color:transparent}
  .sidebar-backdrop.open{display:block;opacity:1}
  .sidebar{position:fixed;top:0;left:0;bottom:0;width:min(300px,80vw);background:var(--bg);z-index:9991;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 24px rgba(14,14,12,.15);overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;border-right:1px solid var(--line)}
  .sidebar.open{transform:translateX(0)}
  .sb-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--line)}
  .sb-title{font-family:var(--font-display);font-size:18px;font-weight:400;color:var(--ink);letter-spacing:-0.3px}
  .sb-close{background:none;border:none;cursor:pointer;padding:8px;color:var(--muted);-webkit-tap-highlight-color:transparent}
  .sb-close svg{width:20px;height:20px}
  .sb-body{flex:1;padding:12px 0 calc(24px + env(safe-area-inset-bottom,0px));overflow-y:auto}
  .sb-group-label{font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:var(--muted);font-weight:600;padding:20px 24px 8px;font-family:var(--font-body)}
  .sb-group-label:first-child{padding-top:12px}
  .sb-item{display:flex;align-items:center;gap:14px;padding:13px 24px;font-size:14px;color:var(--ink);text-decoration:none;font-weight:400;font-family:var(--font-body);transition:background .15s;-webkit-tap-highlight-color:transparent;min-height:48px;border:none;background:none;width:100%;text-align:left;cursor:pointer}
  .sb-item:hover,.sb-item:active{background:rgba(184,134,11,.06)}
  .sb-item.active{color:var(--sage-dark);font-weight:600;background:rgba(184,134,11,.08);border-right:3px solid var(--sage-dark)}
  .sb-item svg{width:20px;height:20px;flex-shrink:0;opacity:.65}
  .sb-item.active svg{opacity:1;color:var(--sage-dark)}

  @media (max-width:720px){
    /* Use a clean spacing scale: 8 / 16 / 24 / 32 / 48 */

    /* ---- Topbar: hamburger left, centred logo + AGENTS PORTAL, nothing else ---- */
    .topbar{border-bottom:1px solid var(--line);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:rgba(224,213,191,.95)}
    .topbar-inner{height:60px;display:grid !important;grid-template-columns:44px 1fr 44px;align-items:center;padding:0 12px;gap:0}
    .brand{justify-self:center;gap:8px;flex:none;flex-direction:row !important;align-items:center !important}
    .brand-divider-mobile{display:block !important;width:1px;height:28px;background:var(--line);flex-shrink:0;opacity:.5}
    .brand-divider-desktop{display:none !important}
    .brand-text-group{display:none !important}
    .brand-logo{height:18px;display:block;flex-shrink:0;opacity:.85}
    .brand-portal-tag{display:none !important}
    .brand-mobile-stack{display:flex !important;flex-direction:column;align-items:flex-start;gap:0}
    .brand-mobile-stack .brand-mobile-title{font-size:8.5px;letter-spacing:3.2px;text-transform:uppercase;color:var(--ink);font-weight:700;font-family:var(--font-body);white-space:nowrap;line-height:1.3}
    .brand-mobile-stack .brand-mobile-tagline{font-family:var(--font-display);font-style:italic;font-size:10.5px;color:var(--muted);letter-spacing:.15px;font-weight:300;line-height:1.3;white-space:nowrap}
    nav.main{display:none !important}
    nav.main *{display:none !important}
    .nav-branch-group{display:none !important}
    a.branch-direct-link{display:none !important}
    .user-chip{display:none !important}
    .live-clock{display:none !important}
    .mobile-menu-btn{justify-self:start;display:flex !important;align-items:center;justify-content:center;width:44px;height:44px;background:rgba(184,134,11,.06);border:1px solid rgba(184,134,11,.12);border-radius:10px;color:var(--ink);-webkit-tap-highlight-color:transparent}
    .mobile-menu-btn svg{width:22px;height:22px}

    /* ---- Mobile sidebar + hide old bottom tab bar ---- */
    .page-nav-mobile{display:none !important}
    body{padding-bottom:0 !important}

    /* ---- Rules page on mobile ---- */
    .rules-hero{margin:16px 0 20px;padding:44px 22px 40px;border-radius:14px}
    .rules-hero h1{font-size:34px;letter-spacing:-0.8px;margin:10px 0 14px}
    .rules-hero p.lead{font-size:13px;line-height:1.7}
    .rules-tabs{grid-template-columns:1fr 1fr;gap:6px;padding:5px;margin:0 0 24px;max-width:none}
    .rules-tab{padding:12px 8px}
    .rules-tab .rt-label{font-size:9px;letter-spacing:1.6px}
    .rules-tab .rt-title{font-size:14px;line-height:1.15}
    .rules-doc{padding:28px 20px;margin-bottom:32px;border-radius:14px}
    .rules-doc-head{padding-bottom:22px;margin-bottom:26px}
    .rules-doc-head h2{font-size:28px;letter-spacing:-0.6px;line-height:1.12}
    .rules-doc-head .rd-sub{font-size:13px}
    .rules-section{grid-template-columns:1fr;gap:6px;padding:22px 0}
    .rules-section .rs-num{font-size:30px;color:var(--sage-dark)}
    .rules-section .rs-body h3{font-size:22px;margin:2px 0 14px;letter-spacing:-0.4px}
    .rules-section .rs-body h4{font-size:11px;letter-spacing:1.4px;margin:18px 0 6px}
    .rules-section .rs-body p{font-size:13.5px;line-height:1.7}
    .rules-section .rs-body .rs-list li{font-size:13px;line-height:1.65;padding:7px 0 7px 20px}
    .rules-values .rv-grid{grid-template-columns:repeat(2,1fr);gap:10px}
    .rules-values .rv-card{padding:18px 14px}
    .rules-values .rv-card .rv-num{font-size:24px}
    .rules-values .rv-card h4{font-size:16px}
    .rules-values .rv-card p{font-size:12px;line-height:1.5}
    .rules-values .rv-head h3{font-size:22px}
    .rules-closing{padding:24px 20px;margin-top:28px}
    .rules-closing .rc-tag{font-size:15px}
    .rules-preamble{margin-bottom:28px}
    .rules-preamble p{font-size:13.5px;line-height:1.8}

    /* ---- Container & vertical rhythm ---- */
    .container{padding:0 16px}
    main.container{padding-top:8px}

    /* ---- Hero: centered, balanced ---- */
    .hero{
      margin:0 0 32px;
      padding:64px 24px 56px;
      text-align:center;
    }
    .hero .eyebrow{display:block;margin-bottom:14px}
    .hero h1{font-size:36px;line-height:1.08;margin:0 0 16px;letter-spacing:-1px}
    .hero p.lead{font-size:13.5px;line-height:1.7;max-width:none;margin:0 auto;text-align:center}

    /* ---- Listings strip ---- */
    .listings-strip{margin:0 0 48px;text-align:center}
    .listings-strip .strip-head{
      display:block;
      text-align:center;
      margin-bottom:20px;
    }
    .listings-strip .strip-head .eyebrow{display:block;margin-bottom:8px}
    .listings-strip h2{font-size:26px;margin:0 0 12px;text-align:center}
    .listings-strip .strip-head .note{
      display:block;
      max-width:none;
      text-align:center;
      font-size:12px;
      line-height:1.6;
      margin:0 auto;
    }
    .listings-grid{grid-template-columns:1fr 1fr;gap:12px}
    .listing-tile .cap{padding:12px 12px 11px}
    .listing-tile .cap .ttl{font-size:14px}
    .listings-strip .see-all{display:inline-block;margin-top:20px}

    /* ---- Card grids ---- */
    .grid{gap:16px}
    .grid > *{min-width:0}
    .card{padding:24px 22px;border-radius:10px;min-width:0}
    .card .eyebrow{margin-bottom:14px}
    .card h3{font-size:20px;margin-bottom:6px}

    /* ---- Chart card: fit to width, centered tabs ---- */
    .chart-card{padding:24px 18px}
    .chart-tabs{display:flex;justify-content:center;margin:14px auto;width:fit-content}
    .chart-tab{padding:10px 18px;font-size:10.5px}
    .chart-stage{padding:8px 2px}
    .chart-summary{justify-content:space-between;gap:10px;margin-top:14px}
    .chart-summary .ck{align-items:center;text-align:center;flex:1;min-width:0}
    .chart-summary .ck strong{font-size:16px}

    /* ---- Incentives card: keep tight, no overflow ---- */
    .incentives ul{gap:8px}

    /* ---- YTD card: centered for visual focus ---- */
    .ytd{text-align:center}
    .ytd .eyebrow{display:block}
    .ytd .figure{font-size:54px;margin:14px 0 18px;text-align:center}
    .ytd .figure small{font-size:20px}
    .ytd #tierPill{display:flex;justify-content:center}
    .ytd .progress-wrap{margin-top:24px;padding-top:20px}
    .ytd .sub{
      grid-template-columns:1fr;
      gap:8px;
      font-size:11px;
      margin-top:44px;
      text-align:left;
    }
    .ytd .note{text-align:center;margin-top:14px}

    /* ---- Tier ladder ---- */
    .ladder{gap:8px;margin-top:6px}
    .tier{padding:14px 16px;gap:14px}
    .tier .swatch{height:40px}
    .tier .name{font-size:15px}
    .tier .amt{font-size:9px;letter-spacing:1.6px}

    /* ---- Pills (tier badges) ---- */
    .pill{padding:7px 12px;font-size:9px;letter-spacing:2px}

    /* ---- Section titles: centered ---- */
    .section-title{
      display:block;
      margin:48px 0 20px;
      text-align:center;
    }
    .section-title .eyebrow{display:block;margin-bottom:10px}
    .section-title h2{
      font-size:28px;
      margin:0;
      line-height:1.12;
      letter-spacing:-0.6px;
      text-align:center;
    }

    /* ---- Avatar ovals: ensure images fill on mobile ---- */
    [style*="border-radius:45%"] img,
    [style*="border-radius: 45%"] img{width:100% !important;height:100% !important;object-fit:cover !important;display:block !important}
    [style*="overflow:hidden"]{overflow:hidden !important}

    /* ---- Leaderboard mini ---- */
    .lb-row{padding:14px 0;gap:14px}
    .lb-rank{font-size:24px}
    .lb-name{font-size:13.5px}

    /* ---- Streaks ---- */
    .streak{padding:20px}
    .streak h4{font-size:18px}

    /* ---- Incentives list ---- */
    .incentives li{padding:14px 16px;gap:14px}
    .incentives .ic{width:30px;height:30px;font-size:12px}
    .incentives .t{font-size:13px}
    .incentives .d{font-size:12px}

    /* ---- Training hero ---- */
    .train-hero{
      padding:32px 0 24px;
      margin-bottom:28px;
      text-align:center;
    }
    .train-hero .eyebrow{display:block;margin-bottom:10px}
    .train-hero h1{font-size:32px;margin:0 0 16px;line-height:1.1}
    .train-hero p.lead{font-size:14px;margin:0 auto 22px;text-align:center}
    .train-meta{gap:14px;justify-content:center}
    .btn-pdf{padding:13px 22px;font-size:10.5px}

    /* ---- Training reader ---- */
    .train-layout{gap:24px}
    .train-nav{padding:0 0 20px}
    .nav-eyebrow{margin-bottom:14px;text-align:center}
    .chapter-list a{font-size:14px;padding:14px 4px}
    .train-reader{padding:0 4px 56px}
    .train-reader .ch-eyebrow{display:block;text-align:center}
    .train-reader h2{font-size:30px;margin:12px 0 24px;text-align:center;line-height:1.1}
    .train-reader h3{font-size:19px;margin:32px 0 12px}
    .train-reader p,.train-reader li{font-size:14.5px;line-height:1.75}
    .train-reader blockquote{padding:18px 22px;font-size:15.5px;margin:22px 0}
    .train-reader .pull{padding:22px 24px;margin:24px 0}
    .train-reader .diagram{padding:22px;margin:24px 0}
    .train-reader .ch-foot{
      margin-top:40px;
      padding-top:24px;
      flex-direction:column;
      gap:10px;
    }
    .train-reader .ch-foot button{width:100%;padding:15px 20px}

    /* ---- Login gate ---- */
    .login-gate{padding:32px 24px}
    .login-card h2{font-size:32px}
    .login-logo{height:84px;margin-bottom:28px}
    .login-form input{padding:14px 16px;font-size:15px}

    /* ---- Footer ---- */
    footer{padding:48px 0 32px}

    /* ---- Personnel card mobile ---- */
    .personnel-head{flex-direction:column;align-items:center;text-align:center;gap:14px}
    .personnel-grid{grid-template-columns:1fr;gap:14px}
    .personnel-col{padding:18px 16px}

    /* ---- Admin mobile ---- */
    .admin-stat .figure{font-size:28px;letter-spacing:-0.8px}
    .admin-stat .figure small{font-size:14px}
    .admin-stat-sub{font-size:10px}
    #adminDashboardCards{grid-template-columns:1fr !important}
    .pipeline-figure{font-size:32px}
    .pipeline-figure small{font-size:14px}
    .pipeline-card-inner{padding:22px 24px}
    .admin-table-row{grid-template-columns:28px 1fr;gap:8px;padding:12px 14px}
    .admin-table-row .a-rank{font-size:16px}
    .admin-table-row .a-name{font-size:14px}
    .admin-table-row .a-total{font-size:16px}
    .admin-table-row .a-tier,.admin-table-row .a-total{grid-column:1 / span 2;justify-self:start;margin-top:4px}
    .admin-pending-row{grid-template-columns:1fr auto;padding:12px 14px}
    #adminView .train-hero h1{font-size:24px !important}
    #adminView .train-hero p.lead{font-size:12px !important}
    #adminView .section-title h2{font-size:20px !important}

    /* Touch-friendly tap targets — all interactive elements min 44px */
    .sb-item, .lb-full .lbf-row, .personnel-item, .template-item, .tab, .chart-tab {min-height:44px}

    /* Dashboard mobile */
    .hero h1{font-size:clamp(28px,8vw,42px) !important}
    .hero{padding:48px 20px 32px !important}
    .listings-strip .strip-head h2{font-size:20px}
    .listings-grid{gap:12px !important}

    /* Cards: breathing room */
    .card{padding:18px 16px !important;border-radius:10px !important}
    .section-title{padding:0 4px}
    .section-title h2{font-size:clamp(20px,5.5vw,28px)}

    /* Chart scroll */
    .chart-stage{overflow-x:auto;-webkit-overflow-scrolling:touch}

    /* Leaderboard mobile */
    .lb-full .lbf-row{padding:14px 16px !important}
    .lb-full .lbf-name{font-size:14px !important}
    .lb-full .lbf-rank{font-size:16px !important;width:28px}

    /* KPIs mobile */
    .kpi-hero h1{font-size:clamp(22px,6vw,34px) !important}
    .lb-card{border-radius:10px !important}
    .lb-card .lb-head h3{font-size:16px}

    /* Training mobile */
    .train-reader{padding:24px 20px !important}
    .train-reader p{font-size:15px !important;line-height:1.7 !important}

    /* Team mobile */
    .team-grid{grid-template-columns:1fr !important;gap:14px !important}
    .team-card{padding:20px !important}

    /* Paperwork mobile */
    .personnel-item,.template-item{min-height:52px;padding:14px 16px !important}
    .pi-name{font-size:13px !important}

    /* Streaks mobile */
    .streaks{gap:12px !important}

    /* Rentals mobile */
    .rentals-card{padding:18px 16px !important}
    .rentals-row{min-height:48px}

    /* Admin mobile */
    .admin-row{min-height:48px}
  }

  @media (max-width:480px){
    .listings-grid{grid-template-columns:1fr !important}
    .hero h1{font-size:28px !important}
    .kpi5{grid-template-columns:1fr !important}
  }

  /* ---------- Admin-only nav visibility ---------- */
  .admin-only{display:none !important}
  body.is-admin nav.main .admin-only{display:inline-flex !important}
  body.is-admin .page-nav-mobile .admin-only{display:flex !important}
  body.is-admin .sidebar .admin-only{display:flex !important}
  /* When admin: hide standalone Team link, show grouped dropdown */
  body.is-admin nav.main .team-link-solo{display:none !important}
  /* ---------- Office admin-only nav visibility ---------- */
  .office-admin-only{display:none !important}
  body.is-office-admin .sidebar .office-admin-only{display:flex !important}
  body.is-office-admin nav.main .office-admin-only{display:inline-flex !important}
  body.is-admin .sidebar .office-admin-only{display:flex !important}
  body.is-admin nav.main .office-admin-only{display:inline-flex !important}
  /* Invoices fallback link: shown ONLY to office admins (Sayjel, Adriana) who
     don't see the Management dropdown. Management/admin users access Invoices
     from inside the dropdown, so this link stays hidden for them. */
  .invoices-office-fallback{display:none !important}
  body.is-office-admin:not(.is-admin) nav.main .invoices-office-fallback{display:inline-flex !important}
  body.is-office-admin:not(.is-admin) .sidebar .invoices-office-fallback{display:flex !important}
  body.is-office-admin:not(.is-admin) .page-nav-mobile .invoices-office-fallback{display:flex !important}
  /* ---------- Durban-only nav visibility ---------- */
  .durban-only{display:none !important}
  body.show-durban nav.main .durban-only{display:inline-block !important}
  body.show-durban nav.main .nav-branch-menu .durban-only{display:flex !important}
  body.show-durban .page-nav-mobile .durban-only{display:flex !important}
  body.show-durban .sidebar .durban-only{display:flex !important}
  /* ---------- Southern Suburbs-only nav visibility ---------- */
  .ss-only{display:none !important}
  body.show-ss nav.main .ss-only{display:inline-block !important}
  body.show-ss nav.main .nav-branch-menu .ss-only{display:flex !important}
  body.show-ss .page-nav-mobile .ss-only{display:flex !important}
  body.show-ss .sidebar .ss-only{display:flex !important}
  /* ---------- Cape Town-only nav visibility ---------- */
  .ct-only{display:none !important}
  body.show-ct nav.main .ct-only{display:inline-block !important}
  body.show-ct nav.main .nav-branch-menu .ct-only{display:flex !important}
  body.show-ct .page-nav-mobile .ct-only{display:flex !important}
  body.show-ct .sidebar .ct-only{display:flex !important}
  /* ---------- Branches group: show only when at least one branch is visible ---------- */
  .sb-branches{display:none !important}
  body.show-durban .sidebar .sb-branches,
  body.show-ss .sidebar .sb-branches,
  body.show-ct .sidebar .sb-branches{display:flex !important}
  #branchDropdown{display:none !important}
  body.show-durban #branchDropdown,
  body.show-ss #branchDropdown,
  body.show-ct #branchDropdown{display:inline-flex !important}

  /* ---------- Territory map card ---------- */
  .territory-card{padding:32px;background:#F8F3E2}
  .territory-intro{max-width:720px;margin-bottom:20px}
  .territory-intro p{font-family:var(--font-body);font-size:13px;color:var(--ink);line-height:1.7;margin:0}
  .territory-svg-wrap{background:#FBF7EB;border:1px solid #D6CEB6;border-radius:4px;padding:18px;overflow:hidden}
  .territory-svg{width:100%;height:auto;display:block;max-height:620px}
  .territory-svg .tz{transition:opacity .2s}
  .territory-svg .tz:hover path{fill-opacity:1;filter:brightness(1.05)}
  .territory-svg .tz-label{font-family:var(--font-display);font-size:16px;fill:#2A2925;font-weight:500;letter-spacing:-0.2px}
  .territory-svg .tz-sub{font-family:var(--font-body);font-size:10px;fill:#6C665A;letter-spacing:1.5px;text-transform:uppercase}
  .territory-svg .tz-agent{font-family:var(--font-display);font-size:15px;fill:#5A5347;font-style:italic;font-weight:400;letter-spacing:0.5px}
  .territory-legend{margin-top:18px;padding:14px 18px;background:#F4EEDB;border-left:3px solid var(--sage)}
  .territory-legend .eyebrow{display:block;font-family:var(--font-body);font-size:9px;letter-spacing:2.5px;text-transform:uppercase;color:var(--sage-dark);font-weight:700;margin-bottom:4px}
  .territory-legend p{font-family:var(--font-body);font-size:12px;color:var(--ink);margin:0;line-height:1.6}
  @media (max-width:720px){
    .territory-card{padding:20px}
    .territory-svg-wrap{padding:8px}
    .territory-svg .tz-label{font-size:18px}
    .territory-svg .tz-sub{font-size:11px}
    .territory-svg .tz-agent{font-size:17px}
  }

  /* ---------- Personnel card ---------- */
  .personnel-card{padding:28px}
  .personnel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--line)}
  .personnel-head h3{margin:4px 0 6px}
  .personnel-sub{font-size:12px;color:var(--muted);line-height:1.6;max-width:520px}
  .drive-link{flex-shrink:0;font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:600;color:var(--sage-dark);text-decoration:none;border:1px solid var(--sage);padding:11px 16px;border-radius:var(--radius);background:#fff;transition:all .15s;white-space:nowrap}
  .drive-link:hover{background:var(--sage);color:#fff}
  .personnel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  .personnel-col{border:1px solid var(--line);border-radius:var(--radius);padding:20px;background:#FBFAF6;min-width:0}
  .personnel-col .col-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}
  .personnel-col h4{margin:0;font-family:var(--font-display);font-weight:400;font-size:17px;color:var(--ink);letter-spacing:-0.2px}
  .personnel-col .count{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:600;background:#fff;padding:4px 9px;border:1px solid var(--line);border-radius:999px}
  .personnel-items{display:flex;flex-direction:column;gap:8px}
  .personnel-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);font-size:12.5px}
  .personnel-item .pi-name{color:var(--ink);font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .personnel-item .pi-date{color:var(--muted);font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:600;flex-shrink:0}
  .templates-card{padding:28px;margin-top:24px}
  .templates-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:18px}
  @media (max-width:1100px){.templates-grid{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:640px){.templates-grid{grid-template-columns:1fr}}
  .template-item:hover{background:#F6F2E6;border-color:#C9BFA0}
  .template-item .pi-date{color:#7a6b3c}
  .personnel-empty{font-size:11.5px;color:var(--muted);font-style:italic;padding:14px 4px;text-align:center}
  @media (max-width:900px){.personnel-grid{grid-template-columns:1fr}}

  /* ---------- Welcome modal (login quote / Caileigh letter) ---------- */
  .welcome-modal{position:fixed;inset:0;background:rgba(42,33,26,0.55);z-index:9998;display:none;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:wmFade .35s ease}
  .welcome-modal.show{display:flex}
  .welcome-card{background:var(--bg);max-width:520px;width:100%;padding:48px 44px 40px;border:1px solid var(--line);border-radius:6px;box-shadow:0 24px 80px rgba(42,33,26,0.25);text-align:center;position:relative;animation:wmRise .45s cubic-bezier(.2,.8,.2,1)}
  .welcome-card .wm-eyebrow{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:14px;display:block}
  .welcome-card .wm-divider{width:36px;height:1px;background:var(--sage);margin:0 auto 24px;opacity:.55}
  .welcome-card blockquote{font-family:var(--font-display);font-style:italic;font-size:24px;line-height:1.4;color:var(--ink);margin:0 0 22px;font-weight:300;letter-spacing:-0.4px}
  .welcome-card .wm-author{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--sage-dark);font-weight:600;margin-bottom:8px}
  .welcome-card .wm-close{position:absolute;top:14px;right:16px;width:32px;height:32px;border-radius:50%;border:0;background:transparent;font-size:22px;line-height:1;color:var(--muted);cursor:pointer;display:grid;place-items:center;transition:all .15s;font-family:inherit}
  .welcome-card .wm-close:hover{background:var(--bg-2);color:var(--ink)}
  .welcome-card .wm-button{margin-top:18px;font-family:inherit;font-size:11px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;padding:13px 28px;background:var(--ink);color:#fff;border:1px solid var(--ink);cursor:pointer;border-radius:4px;transition:all .15s}
  .welcome-card .wm-button:hover{background:var(--sage-dark);border-color:var(--sage-dark)}

  /* Letter variant (for Caileigh) — pseudo handwritten note on warm parchment */
  .welcome-card.letter{max-width:560px;padding:52px 56px 44px;text-align:left;background:#FBF6EC;background-image:linear-gradient(180deg, #FBF6EC 0%, #F4ECD7 100%)}
  .welcome-card.letter .wm-eyebrow{text-align:center;display:block}
  .welcome-card.letter .wm-divider{margin-bottom:30px}
  .welcome-card.letter .letter-body{font-family:var(--font-display);font-size:19px;line-height:1.65;color:var(--ink);font-weight:300;letter-spacing:-0.1px}
  .welcome-card.letter .letter-body p{margin:0 0 18px}
  .welcome-card.letter .letter-body p:last-child{margin-bottom:0}
  .welcome-card.letter .letter-body em{font-style:italic;color:var(--sage-dark)}
  .welcome-card.letter .signature{font-family:var(--font-display);font-style:italic;font-size:26px;color:var(--sage-dark);margin-top:26px;font-weight:400;text-align:right;letter-spacing:-0.3px}
  .welcome-card.letter .wm-button-wrap{text-align:center;margin-top:32px;padding-top:22px;border-top:1px dashed var(--line)}

  @keyframes wmFade{from{opacity:0}to{opacity:1}}
  @keyframes wmRise{from{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}

  @media (max-width:720px){
    .welcome-card{padding:36px 26px 30px;border-radius:8px}
    .welcome-card blockquote{font-size:20px}
    .welcome-card.letter{padding:38px 28px 32px}
    .welcome-card.letter .letter-body{font-size:16px;line-height:1.6}
    .welcome-card.letter .signature{font-size:22px;margin-top:22px}
  }

  /* ---------- Admin view ---------- */
  .mgmt-subnav{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;padding:7px;margin:0 0 28px;background:var(--card);border:1px solid var(--card-rim);border-radius:999px;box-shadow:var(--shadow);max-width:100%;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none}
  .mgmt-subnav::-webkit-scrollbar{display:none}
  .mgmt-subnav-tab{appearance:none;border:1px solid transparent;background:transparent;padding:11px 24px;font-family:inherit;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;font-weight:700;color:var(--muted);cursor:pointer;border-radius:999px;transition:all .15s;white-space:nowrap}
  .mgmt-subnav-tab:hover{color:var(--ink);background:var(--mgmt-cream);border-color:var(--line-soft)}
  .mgmt-subnav-tab.active{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:0 3px 12px -4px rgba(14,14,12,.45)}
  body.mgmt-no-filter #adminView #branchPerformanceZone{background:transparent !important;border:none !important;box-shadow:none !important;padding:0 !important;margin:0 !important}
  body.mgmt-no-filter #adminView #branchPerformanceZone .mgmt-zone-intro,
  body.mgmt-no-filter #adminView #branchPerformanceZone #branchFilterTabs{display:none !important}
  .admin-stat .figure{font-family:var(--font-display);font-weight:300;font-size:46px;line-height:1;margin:10px 0 12px;letter-spacing:-1.5px;color:var(--ink)}
  .admin-stat .figure small{font-family:var(--font-display);font-size:18px;color:var(--muted);margin-right:6px;font-weight:300}
  .admin-stat-sub{font-size:11.5px;color:var(--muted);line-height:1.55;margin-top:6px}

  /* ══════════════════════════════════════════════════════════════════
     MANAGEMENT VIEW · premium treatment
     Deep espresso + bronze palette layered over the warm paper base.
     Scoped to #adminView so the rest of the app keeps its charcoal palette.
     ══════════════════════════════════════════════════════════════════ */
  #adminView{
    --mgmt-espresso:#2F2214;   /* deep cocoa */
    --mgmt-bronze:#5B3F26;     /* rich bronze */
    --mgmt-umber:#8A6642;      /* warm umber */
    --mgmt-sand:#D9C7A3;       /* soft sand */
    --mgmt-cream:#FAF5E8;      /* pale cream */
    --mgmt-gold:#B08D57;       /* editorial gold */
    --mgmt-shadow:0 1px 2px rgba(47,34,20,.06), 0 18px 44px -22px rgba(47,34,20,.22);
  }

  /* Hero — elevated, centred, bronze rule */
  #adminView .train-hero{
    position:relative;
    padding:64px 34px 42px;
    margin-bottom:40px;
    border:1px solid var(--line);
    border-radius:var(--radius-lg);
    box-shadow:var(--shadow);
    overflow:hidden;
    background:
      linear-gradient(180deg, rgba(122,90,54,.06) 0%, var(--card) 78%);
  }
  #adminView .train-hero::before{
    color:var(--mgmt-gold);
    opacity:.85;
    letter-spacing:12px;
    font-size:13px;
  }
  #adminView .train-hero::after{
    content:"";
    display:block;
    width:84px;
    height:1px;
    background:linear-gradient(90deg, transparent, var(--mgmt-umber), transparent);
    margin:32px auto 0;
  }
  #adminView .train-hero .eyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:var(--mgmt-espresso);
    color:var(--mgmt-cream);
    padding:7px 16px;
    border-radius:999px;
    font-size:9.5px;
    letter-spacing:2.6px;
    font-weight:700;
    text-transform:uppercase;
    box-shadow:0 4px 14px -6px rgba(47,34,20,.4);
  }
  #adminView .train-hero .eyebrow::before{
    content:"";
    width:6px;height:6px;
    border-radius:50%;
    background:var(--mgmt-gold);
    box-shadow:0 0 0 3px rgba(176,141,87,.25);
  }
  #adminView .train-hero h1{
    color:var(--mgmt-espresso);
  }
  #adminView .train-hero h1 em{
    color:var(--mgmt-bronze);
    font-style:italic;
    font-weight:400;
  }

  /* Section titles — bronze ornament */
  #adminView .section-title::before{
    color:var(--mgmt-gold);
    opacity:.75;
    letter-spacing:10px;
  }
  #adminView .section-title h2{color:var(--mgmt-espresso)}
  #adminView .section-title h2 em{
    color:var(--mgmt-bronze);
    font-weight:400;
  }
  #adminView .section-title .eyebrow{
    color:var(--mgmt-umber);
    letter-spacing:2.4px;
  }

  /* Stat cards — the real showpiece */
  #adminView .admin-stat{
    position:relative;
    padding:28px 26px 24px;
    border:1px solid var(--line);
    border-top:3px solid var(--mgmt-bronze);
    background:
      linear-gradient(180deg, rgba(176,141,87,.04), transparent 65%),
      var(--card);
    overflow:hidden;
    transition:transform .25s, box-shadow .25s, border-top-color .25s;
  }
  #adminView .admin-stat::before{
    content:"";
    position:absolute;
    top:0; right:0;
    width:120px; height:120px;
    background:radial-gradient(circle at 100% 0%, rgba(90,62,38,.11), transparent 70%);
    pointer-events:none;
  }
  #adminView .admin-stat:hover{
    transform:translateY(-2px);
    box-shadow:var(--mgmt-shadow);
    border-top-color:var(--mgmt-gold);
  }
  #adminView .admin-stat .eyebrow{
    color:var(--mgmt-umber);
    font-weight:700;
    letter-spacing:2.4px;
    font-size:10px;
  }
  #adminView .admin-stat .figure{
    font-family:var(--font-display);
    font-weight:300;
    font-size:54px;
    letter-spacing:-1.8px;
    line-height:1;
    margin:14px 0 10px;
    background:linear-gradient(180deg, var(--mgmt-espresso) 0%, var(--mgmt-bronze) 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    color:var(--mgmt-espresso);
  }
  #adminView .admin-stat .figure small{
    font-family:var(--font-display);
    font-size:20px;
    color:var(--mgmt-umber);
    -webkit-text-fill-color:var(--mgmt-umber);
    margin-right:8px;
    font-weight:400;
  }
  #adminView .admin-stat-sub{
    color:var(--muted);
    font-size:11.5px;
    padding-top:10px;
    margin-top:12px;
    border-top:1px dashed rgba(90,62,38,.2);
    line-height:1.6;
  }

  /* Management menu bar — bold dark-brown segmented bar with a touch of gold,
     and slightly transparent gold dividers between items. */
  #adminView #branchFilterTabs{
    display:flex;align-items:center;gap:0;flex-wrap:wrap;
    background:linear-gradient(180deg,#2A1E12 0%,#1B1308 100%);
    border:1px solid rgba(212,178,110,.22);border-radius:14px;padding:6px;margin:0 0 32px;
    box-shadow:0 16px 38px -20px rgba(20,14,8,.7), inset 0 1px 0 rgba(232,200,134,.06);
  }
  #adminView .branch-filter-tab{
    appearance:none;background:transparent;border:none;cursor:pointer;
    font-family:inherit;font-size:12px;font-weight:800;letter-spacing:2px;text-transform:uppercase;
    color:rgba(244,240,229,.6);padding:13px 26px;border-radius:10px;transition:.18s;white-space:nowrap;
  }
  #adminView .branch-filter-tab + .branch-filter-tab{box-shadow:inset 1px 0 0 rgba(232,200,134,.16)}
  #adminView .branch-filter-tab:hover{color:#F6F1E4}
  #adminView .branch-filter-tab.active{
    color:#1B1308;background:linear-gradient(180deg,#E8C886 0%,#C9A45C 100%);
    box-shadow:0 6px 16px -6px rgba(199,154,58,.65);
  }
  #adminView .branch-filter-tab.active + .branch-filter-tab,
  #adminView .branch-filter-tab:hover + .branch-filter-tab{box-shadow:none}
  #adminView #branchFilterIndicator{
    margin-left:auto;display:flex;align-items:center;padding:0 14px;
    font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:rgba(244,240,229,.45)
  }
  #adminView #mgmtZoneLabel{
    color:var(--mgmt-espresso) !important;
  }
  #adminView .mgmt-zone-intro > div[style*="border-radius:50%"]{
    background:var(--mgmt-bronze) !important;
  }
  #adminView #branchPerformanceZone{
    background:linear-gradient(180deg, var(--mgmt-cream), var(--bg-2)) !important;
    border-color:rgba(139,102,66,.18) !important;
  }

  /* ══════════════════════════════════════════════════════════════════
     ELEGANT MANAGEMENT SECTION TITLES — refined serif + thin gold rule
     Replaces the old zone-strip banner style.
     ══════════════════════════════════════════════════════════════════ */
  #adminView .section-title{
    margin:44px 0 18px;
    padding:0 0 14px;
    position:relative;
    border-bottom:1px solid rgba(139,102,66,.18);
  }
  #adminView .section-title > div{
    max-width:100%;
  }
  #adminView .section-title .eyebrow{
    display:inline-block;
    font-size:10px;
    letter-spacing:3px;
    text-transform:uppercase;
    font-weight:600;
    color:var(--mgmt-umber);
    margin:0 0 10px;
    padding-bottom:4px;
    position:relative;
  }
  #adminView .section-title .eyebrow::after{
    content:"";
    display:block;
    width:28px;
    height:1px;
    background:var(--mgmt-bronze);
    margin-top:6px;
    opacity:.55;
  }
  #adminView .section-title h2{
    font-family:var(--font-display);
    font-weight:300;
    font-size:34px;
    line-height:1.1;
    letter-spacing:-0.6px;
    margin:0;
    color:var(--ink);
  }
  #adminView .section-title h2 em{
    font-style:italic;
    font-weight:300;
    color:var(--mgmt-bronze);
  }
  #adminView .section-title .lead{
    margin-top:10px;
    font-size:13.5px;
    line-height:1.55;
    color:var(--muted);
    max-width:640px;
  }

  /* Accent the rule + italic word by zone tint */
  #adminView .mgmt-block[data-zone-tint="gold"] + .mgmt-block .section-title .eyebrow::after,
  #adminView .section-title + * [data-zone-tint="gold"],
  #adminView [data-zone-tint="gold"] .section-title h2 em     { color:#B08D57; }
  #adminView [data-zone-tint="espresso"] .section-title h2 em { color:#2F2214; }
  #adminView [data-zone-tint="umber"]    .section-title h2 em { color:#8A6642; }
  #adminView [data-zone-tint="sage"]     .section-title h2 em { color:#4a7c59; }
  #adminView [data-zone-tint="bronze"]   .section-title h2 em { color:#5B3F26; }
  #adminView [data-zone-tint="gold"]     .section-title .eyebrow::after { background:#B08D57; }
  #adminView [data-zone-tint="espresso"] .section-title .eyebrow::after { background:#2F2214; }
  #adminView [data-zone-tint="umber"]    .section-title .eyebrow::after { background:#8A6642; }
  #adminView [data-zone-tint="sage"]     .section-title .eyebrow::after { background:#4a7c59; }
  #adminView [data-zone-tint="bronze"]   .section-title .eyebrow::after { background:#5B3F26; }

  /* Tint the section-title eyebrows by nearby zone context */
  #adminView .mgmt-block[data-zone-tint="gold"]     .eyebrow { color:#B08D57 !important; }
  #adminView .mgmt-block[data-zone-tint="espresso"] .eyebrow { color:#2F2214 !important; }
  #adminView .mgmt-block[data-zone-tint="sage"]     .eyebrow { color:#4a7c59 !important; }
  #adminView .mgmt-block[data-zone-tint="bronze"]   .eyebrow { color:#5B3F26 !important; }
  #adminView .mgmt-block[data-zone-tint="umber"]    .eyebrow { color:#8A6642 !important; }
  /* Match accent colour on the italic em in section titles */
  #adminView .mgmt-block[data-zone-tint="gold"]     .section-title h2 em,
  #adminView .mgmt-block[data-zone-tint="gold"]     h2 em { color:#B08D57 !important; }
  #adminView .mgmt-block[data-zone-tint="sage"]     .section-title h2 em,
  #adminView .mgmt-block[data-zone-tint="sage"]     h2 em { color:#4a7c59 !important; }
  #adminView .mgmt-block[data-zone-tint="bronze"]   .section-title h2 em,
  #adminView .mgmt-block[data-zone-tint="bronze"]   h2 em { color:#5B3F26 !important; }
  #adminView .mgmt-block[data-zone-tint="umber"]    .section-title h2 em,
  #adminView .mgmt-block[data-zone-tint="umber"]    h2 em { color:#8A6642 !important; }

  /* Add a left accent rail to certain cards when tinted */
  #adminView .mgmt-block[data-zone-tint="gold"]    > .card{ border-left:3px solid rgba(176,141,87,.45); }
  #adminView .mgmt-block[data-zone-tint="sage"]    > .card{ border-left:3px solid rgba(74,124,89,.45); }
  #adminView .mgmt-block[data-zone-tint="bronze"]  > .card{ border-left:3px solid rgba(91,63,38,.45); }
  #adminView .mgmt-block[data-zone-tint="umber"]   > .card{ border-left:3px solid rgba(138,102,66,.45); }
  #adminView .mgmt-block[data-zone-tint="espresso"]> .card{ border-left:3px solid rgba(47,34,20,.55); }

  /* Dashed separator between major zones */
  #adminView .mgmt-zone-divider{
    height:1px;
    margin:36px 0 28px;
    border:none;
    background:repeating-linear-gradient(90deg, rgba(139,102,66,.22) 0 6px, transparent 6px 12px);
  }

  /* Admin table — darker branded header, gentler rows */
  #adminView .admin-table-wrap{
    border:1px solid var(--line);
    border-radius:var(--radius);
  }
  #adminView .admin-table-row.head{
    background:var(--mgmt-espresso);
    color:var(--mgmt-cream);
    letter-spacing:2.4px;
    font-weight:700;
  }
  #adminView .admin-table-row:not(.head):nth-child(even){
    background:rgba(176,141,87,.04);
  }
  #adminView .admin-table-row:not(.head):hover{
    background:rgba(90,62,38,.06);
  }
  #adminView .admin-table-row .a-rank{
    color:var(--mgmt-bronze);
  }
  #adminView .admin-table-row .a-name{
    color:var(--mgmt-espresso);
  }
  #adminView .admin-table-row .a-total{
    color:var(--mgmt-espresso);
    font-weight:500;
  }
  #adminView .admin-table-row .a-tier.t-legacy{
    background:var(--mgmt-espresso);
    border-color:var(--mgmt-espresso);
    color:var(--mgmt-cream);
  }

  /* Section dividers / page page-pill between hero and sections */
  #adminView .mgmt-pagepill{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin:0 auto 24px;
    padding:8px 18px;
    border:1px solid rgba(139,102,66,.28);
    border-radius:999px;
    background:rgba(250,245,232,.7);
    color:var(--mgmt-espresso);
    font-size:10px;
    letter-spacing:2.2px;
    text-transform:uppercase;
    font-weight:700;
    backdrop-filter:blur(6px);
  }
  #adminView .mgmt-pagepill::before{
    content:"";
    width:5px;height:5px;
    background:var(--mgmt-bronze);
    border-radius:50%;
    box-shadow:0 0 0 3px rgba(91,63,38,.15);
  }

  /* Mgmt tab (Create/Link) — bronze active underline */
  #adminView .mgmt-tab{
    color:var(--muted) !important;
  }
  #adminView .mgmt-tab.active{
    color:var(--mgmt-espresso) !important;
    border-bottom-color:var(--mgmt-bronze) !important;
  }

  /* Cards within adminView get a warmer rim */
  #adminView .card:not(.admin-stat){
    border-color:rgba(139,102,66,.16);
  }

  /* Login log section — branded header */
  #adminView #loginLogSection .card > div:first-child{
    background:linear-gradient(90deg, rgba(47,34,20,.04), transparent);
    border-bottom-color:rgba(139,102,66,.22) !important;
  }

  /* Mobile hero override — respect size */
  @media (max-width:720px){
    #adminView .train-hero{padding:42px 22px 28px}
    #adminView .train-hero::after{margin-top:22px}
  }

  /* Pipeline branch cards */
  #adminDashboardCards{display:none;grid-template-columns:repeat(3,1fr);gap:20px}
  .pipeline-card{padding:0 !important;overflow:hidden;display:flex !important;flex-direction:row !important}
  .pipeline-card-inner{flex:1;padding:28px 32px;display:flex;flex-direction:column;justify-content:center}
  .pipeline-card .eyebrow{margin-bottom:12px}
  .pipeline-figure{font-family:var(--font-display);font-weight:300;font-size:40px;line-height:1;letter-spacing:-1.5px;color:var(--ink);white-space:nowrap}
  .pipeline-figure small{font-family:var(--font-display);font-size:16px;color:var(--muted);margin-right:4px;font-weight:300;vertical-align:baseline}
  .pipeline-sub{font-size:12px;color:var(--muted);line-height:1.55;margin-top:10px}
  .pipeline-accent{width:5px;flex-shrink:0;border-radius:0 var(--radius) var(--radius) 0}
  .admin-table-wrap{padding:0;overflow:hidden}
  .admin-table,.admin-pending{display:flex;flex-direction:column}
  .admin-table-row{display:grid;grid-template-columns:48px 1fr 110px 160px;align-items:center;gap:18px;padding:18px 28px;border-bottom:1px solid var(--line)}
  .admin-table-row:last-child{border-bottom:0}
  .admin-table-row.head{background:var(--bg-2);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-weight:600;padding:14px 28px}
  .admin-table-row .a-rank{font-family:var(--font-display);font-style:italic;color:var(--sage-dark);font-size:22px;font-weight:300;text-align:center}
  .admin-table-row .a-name{font-family:var(--font-display);font-size:18px;font-weight:400;color:var(--ink);letter-spacing:-0.2px}
  .admin-table-row .a-meta{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-top:3px;font-weight:500}
  .admin-table-row .a-tier{font-size:9px;letter-spacing:2px;text-transform:uppercase;font-weight:700;padding:6px 10px;border:1px solid var(--line);border-radius:0;background:#fff;display:inline-block;color:var(--ink);text-align:center;justify-self:start}
  .admin-table-row .a-tier.t-foundation{background:var(--stone-soft);border-color:var(--foundation);color:#6B5E46}
  .admin-table-row .a-tier.t-curated{background:var(--sage-soft);border-color:var(--curated);color:var(--olive)}
  .admin-table-row .a-tier.t-signature{background:#E5E8EA;border-color:var(--signature);color:var(--charcoal)}
  .admin-table-row .a-tier.t-legacy{background:var(--ink);border-color:var(--ink);color:#fff}
  .admin-table-row .a-tier.t-none{color:var(--muted);background:#FBFAF6}
  .admin-table-row .a-total{font-family:var(--font-display);font-size:20px;font-weight:400;color:var(--ink);text-align:right;letter-spacing:-0.3px}
  .admin-table-row .a-total small{display:block;font-family:var(--font-body);font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-style:normal;font-weight:600;margin-top:3px}
  .admin-pending-row{display:grid;grid-template-columns:1fr 140px 160px;align-items:center;gap:18px;padding:16px 28px;border-bottom:1px solid var(--line)}
  .admin-pending-row:last-child{border-bottom:0}
  .admin-pending-row.head{background:var(--bg-2);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);font-weight:600;padding:14px 28px}
  .admin-pending-row .p-name{font-size:14px;color:var(--ink);font-weight:600}
  .admin-pending-row .p-pending{font-family:var(--font-display);font-size:18px;color:var(--ink);text-align:right}
  .admin-pending-row .p-projection{font-family:var(--font-display);font-size:18px;color:var(--sage-dark);text-align:right;font-style:italic}

  /* ---------- KPI view ---------- */
  .kpi-hero{position:relative;padding:52px 34px 36px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);margin-bottom:36px;text-align:center;overflow:hidden}
  .kpi-hero::before{content:"";display:block;width:36px;height:1px;background:var(--sage);margin:0 auto 18px;opacity:.55}
  .kpi-hero h1{font-family:var(--font-display);font-weight:400;font-size:52px;line-height:1.05;margin:10px auto 14px;color:var(--ink);letter-spacing:-1.2px;max-width:780px}
  .kpi-hero h1 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .kpi-hero p.lead{color:var(--muted);max-width:640px;margin:0 auto 22px;font-size:14px;line-height:1.7}
  .kpi-range{display:inline-flex;gap:4px;background:var(--bg-2);padding:4px;border-radius:999px;border:1px solid var(--line)}
  .kpi-range button{appearance:none;background:transparent;border:0;color:var(--muted);font-family:var(--font-body);font-size:10px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;padding:10px 20px;border-radius:999px;cursor:pointer;transition:all .2s;-webkit-tap-highlight-color:transparent}
  .kpi-range button.active{background:var(--ink);color:#fff;box-shadow:0 1px 3px rgba(0,0,0,0.18)}
  .kpi-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:36px}
  @media (max-width:900px){.kpi-stat-grid{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:520px){.kpi-stat-grid{grid-template-columns:1fr}}
  .kpi-stat{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);position:relative;overflow:hidden}
  .kpi-stat::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply}
  .kpi-stat > *{position:relative;z-index:1}
  .kpi-stat .eyebrow{display:block;margin-bottom:10px}
  .kpi-stat .big{font-family:var(--font-display);font-weight:300;font-size:38px;line-height:1;color:var(--ink);letter-spacing:-1px}
  .kpi-stat .big small{font-family:var(--font-display);font-size:15px;color:var(--muted);margin-right:4px;font-weight:300}
  .kpi-stat .delta{margin-top:10px;font-size:11px;color:var(--muted);letter-spacing:1px;text-transform:uppercase;font-weight:600}
  .kpi-stat .delta.up{color:#2B5F3D}
  .kpi-stat .delta.down{color:#8B3A2E}
  .kpi-stat .delta.flat{color:var(--muted)}

  .kpi-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;margin-bottom:28px}
  @media (max-width:1000px){.kpi-grid{grid-template-columns:1fr}}
  .kpi-chart-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);position:relative}
  .kpi-chart-card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply;border-radius:var(--radius)}
  .kpi-chart-card > *{position:relative;z-index:1}
  .kpi-chart-card h3{font-family:var(--font-display);font-weight:400;font-size:22px;margin:0 0 4px;color:var(--ink);letter-spacing:-0.4px}
  .kpi-chart-card .sub{font-size:11.5px;color:var(--muted);margin-bottom:16px;line-height:1.6}
  .kpi-chart-stage{width:100%;background:#fff;border:1px solid var(--line);border-radius:6px;padding:10px 6px;overflow:hidden}

  .kpi-lb-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:28px}
  @media (max-width:800px){.kpi-lb-grid{grid-template-columns:1fr}}
  .kpi-lb{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);position:relative}
  .kpi-lb::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply;border-radius:var(--radius)}
  .kpi-lb > *{position:relative;z-index:1}
  .kpi-lb h3{font-family:var(--font-display);font-weight:400;font-size:20px;margin:0 0 4px;color:var(--ink);letter-spacing:-0.3px}
  .kpi-lb h3 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .kpi-lb .sub{font-size:11px;color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:14px;font-weight:600}
  .kpi-lb-row{display:grid;grid-template-columns:26px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line-soft)}
  .kpi-lb-row:last-child{border-bottom:0}
  .kpi-lb-row .rk{font-family:var(--font-display);font-size:20px;color:var(--sage-dark);font-weight:300;font-style:italic;text-align:center}
  .kpi-lb-row .nm{font-size:13px;color:var(--ink);font-weight:600}
  .kpi-lb-row .mt{font-size:10px;color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-top:2px;font-weight:500}
  .kpi-lb-row .val{font-family:var(--font-display);font-size:18px;color:var(--ink);letter-spacing:-0.3px;text-align:right}
  .kpi-lb-row .val small{display:block;font-family:var(--font-body);font-size:9px;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted);margin-top:2px;font-weight:600}
  .kpi-lb-row.you{background:var(--sage-soft);margin:0 -14px;padding:12px 14px;border-radius:3px}
  .kpi-lb-row.top1 .rk{color:#0A0A09}

  svg.kpi-svg{display:block;width:100%;height:auto;max-width:100%}
  svg.kpi-svg .gridline{stroke:#E5DEC9;stroke-width:1}
  svg.kpi-svg .axis{stroke:#BDB4A0;stroke-width:1}
  svg.kpi-svg .axis-label{font-family:var(--font-body);font-size:9px;fill:#7E7A72;letter-spacing:0.5px;text-transform:uppercase}
  svg.kpi-svg .bar{fill:#0E0E0C}
  svg.kpi-svg .bar.alt{fill:#7E776A}
  svg.kpi-svg .line{fill:none;stroke:#0E0E0C;stroke-width:2}
  svg.kpi-svg .line.alt{stroke:#7E776A}
  svg.kpi-svg .dot{fill:#0E0E0C}
  svg.kpi-svg .dot.alt{fill:#7E776A}
  svg.kpi-svg .area{fill:#0E0E0C;opacity:0.08}
  svg.kpi-svg .label{font-family:var(--font-display);font-size:11px;fill:#0E0E0C;font-style:italic}

  .kpi-legend{display:flex;gap:22px;margin-top:12px;font-size:11px;color:var(--muted);letter-spacing:1px;text-transform:uppercase;font-weight:600;flex-wrap:wrap}
  .kpi-legend .sw{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:7px;vertical-align:middle}
  .kpi-legend .sw.sales{background:#0E0E0C}
  .kpi-legend .sw.calls{background:#7E776A}

  .kpi-scatter-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);position:relative;margin-bottom:48px}
  .kpi-scatter-card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply;border-radius:var(--radius)}
  .kpi-scatter-card > *{position:relative;z-index:1}
  .kpi-scatter-card h3{font-family:var(--font-display);font-weight:400;font-size:22px;margin:0 0 4px;color:var(--ink);letter-spacing:-0.4px}
  .kpi-scatter-card h3 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .kpi-scatter-card .sub{font-size:11.5px;color:var(--muted);margin-bottom:16px;line-height:1.6}

  .kpi-datanote{background:#FBECE6;border:1px solid #E5C5B7;border-left:3px solid #9B3B2E;padding:14px 18px;border-radius:3px;margin:0 0 22px;font-size:12.5px;color:#5B2618;line-height:1.6}
  .kpi-datanote strong{color:#3D1A10;font-weight:700}
  .kpi-empty{padding:16px 0;color:var(--muted);font-size:12.5px;line-height:1.6;font-style:italic}
  .kpi-empty strong{font-style:normal;color:var(--ink);font-weight:600}

  /* ---- Monthly KPI v2 (kpi5) ---- */
  .kpi-hero{margin-bottom:18px}
  .kpi-hero .eyebrow{display:block;margin-bottom:10px}
  .kpi-hero h1{font-family:var(--font-display);font-weight:300;font-size:clamp(28px,4.2vw,44px);line-height:1.05;letter-spacing:-1px;margin:0 0 10px;color:var(--ink)}
  .kpi-hero h1 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .kpi-hero .lead{font-size:14px;color:var(--muted);max-width:640px;line-height:1.6;margin:0 0 18px}
  .kpi-month-picker{display:inline-flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:3px;padding:8px 14px;box-shadow:var(--shadow)}
  .kpi-month-picker label{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:600}
  .kpi-month-picker select{border:0;background:transparent;font-family:var(--font-display);font-size:16px;color:var(--ink);font-weight:400;cursor:pointer;outline:none}

  /* ---- YOU CARD (rank blocks for calls + sales) ---- */
  .you-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px 28px;box-shadow:var(--shadow);margin:18px 0 24px;position:relative;overflow:hidden;background:linear-gradient(180deg,#F5EFD8 0%,var(--card) 60%)}
  .you-card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.5;mix-blend-mode:multiply}
  .you-card > *{position:relative;z-index:1}
  .you-head{margin-bottom:18px}
  .you-head .eyebrow{display:block;margin-bottom:4px}
  .you-head .dot{color:var(--sage-dark);font-weight:400}
  .you-name{font-family:var(--font-display);font-weight:300;font-size:clamp(26px,3.5vw,36px);color:var(--ink);letter-spacing:-0.8px;line-height:1.05}
  .you-ranks{display:grid;grid-template-columns:1fr 1fr;gap:22px}
  @media (max-width:720px){.you-ranks{grid-template-columns:1fr;gap:16px}}
  .rank-block{padding:18px 20px;border:1px solid var(--line);border-radius:3px;background:#FBFAF5;min-width:0}
  .rb-top{display:flex;align-items:center;gap:14px;margin-bottom:14px}
  .rb-badge{min-width:54px;height:54px;display:flex;align-items:center;justify-content:center;background:var(--sage-dark);color:#F7F2E2;font-family:var(--font-display);font-weight:300;font-size:24px;border-radius:3px;padding:0 12px;letter-spacing:-0.5px}
  .rb-meta-eb{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--sage-dark);font-weight:700;margin-bottom:2px}
  .rb-meta-of{font-size:11px;color:var(--muted);line-height:1.4}
  .rb-num{font-family:var(--font-display);font-weight:300;font-size:clamp(28px,3.4vw,38px);line-height:1;color:var(--ink);letter-spacing:-1px;margin-bottom:8px;word-break:break-word}
  .rb-num em{font-style:italic;font-size:.55em;color:var(--muted);margin-left:6px;font-weight:300}
  .rb-gap{font-size:11.5px;color:var(--muted);line-height:1.5;padding-top:10px;border-top:1px solid var(--line-soft);font-style:italic}

  /* ---- TWO LEADERBOARD CARDS ---- */
  .lb-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:26px}
  .lb-grid.four{grid-template-columns:1fr 1fr;gap:18px}
  @media (min-width:1200px){.lb-grid.four{grid-template-columns:1fr 1fr 1fr 1fr}}
  @media (max-width:1000px){.lb-grid{grid-template-columns:1fr}.lb-grid.four{grid-template-columns:1fr}}
  .lb-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;box-shadow:var(--shadow);position:relative;overflow:hidden;min-width:0}
  .lb-card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply}
  .lb-card > *{position:relative;z-index:1}
  .lb-head{margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--line-soft)}
  .lb-head h3{font-family:var(--font-display);font-weight:400;font-size:20px;margin:0 0 4px;color:var(--ink);letter-spacing:-0.3px}
  .lb-head h3 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .lb-head .sub{font-size:11px;color:var(--muted);letter-spacing:.5px;line-height:1.5}
  .lb-list{display:flex;flex-direction:column;gap:0}
  .lb-row{display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line-soft);min-width:0}
  #lb .lb-row{grid-template-columns:30px 44px 1fr auto;gap:10px}
  .lb-row:last-child{border-bottom:0}
  .lb-rank{font-family:var(--font-display);font-style:italic;font-weight:300;font-size:16px;color:var(--muted);text-align:right;padding-right:2px}
  .lb-body{min-width:0}
  .lb-name{display:block;font-size:12.5px;color:var(--ink);font-weight:600;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .lb-name .you-tag{display:inline-block;margin-left:6px;padding:1px 6px;background:var(--sage-dark);color:#F7F2E2;font-size:9px;letter-spacing:1px;text-transform:uppercase;border-radius:2px;font-weight:700;vertical-align:middle}
  .lb-bar{height:5px;background:var(--line-soft);border-radius:3px;overflow:hidden}
  .lb-fill{height:100%;background:var(--sage-dark);border-radius:3px;transition:width .4s ease}
  .lb-val{font-family:var(--font-display);font-size:16px;color:var(--ink);letter-spacing:-0.3px;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;min-width:32px}
  /* Deal-count under the GCI amount — on its own line so the number never
     runs into the figure (e.g. "R1 248 60612 deals"). Used on the national
     and per-branch management leaderboards. */
  .lb-val small{display:block;margin-top:3px;font-family:var(--font-body);font-size:10px;font-weight:500;color:var(--muted);letter-spacing:.5px;white-space:nowrap}
  .lb-row.rank-1 .lb-rank{color:#B8860B;font-style:normal;font-size:20px;font-weight:400}
  .lb-row.rank-1 .lb-fill{background:linear-gradient(90deg,#D4A638 0%,#B8860B 100%)}
  .lb-row.rank-2 .lb-rank{color:#8A8170;font-size:18px}
  .lb-row.rank-3 .lb-rank{color:#A88050;font-size:18px}
  .lb-row.you{background:var(--sage-soft);margin:0 -14px;padding:12px 14px;border-radius:3px;border-bottom-color:transparent}
  .lb-row.you + .lb-row{border-top:1px solid var(--line-soft);margin-top:2px}
  .lb-empty{padding:18px 0;color:var(--muted);font-size:12.5px;line-height:1.6;font-style:italic}

  /* ---- 5-card leaderboard grid: Cold Calls spans left, 4 others in 2×2 on right ---- */
  .lb-grid-5{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-bottom:22px}
  .lb-grid-5 .lb-featured{grid-row:1 / 3}
  @media (max-width:1100px){.lb-grid-5{grid-template-columns:1fr 1fr}.lb-grid-5 .lb-featured{grid-row:auto}}
  @media (max-width:700px){.lb-grid-5{grid-template-columns:1fr}.lb-grid-5 .lb-featured{grid-row:auto}}

  /* ---- Winner celebration — #1 gets a gold crown and highlight ---- */
  .lb-row.rank-1{position:relative}
  .lb-row.rank-1::before{content:"";display:none}
  .lb-row.rank-1 .lb-name{color:#0A0A09;font-weight:700}
  .lb-row.rank-1 .lb-val{color:#8B6914;font-weight:400}
  .lb-featured .lb-row.rank-1{background:linear-gradient(135deg,#FBF3DC 0%,#F5EAC8 100%);margin:0 -14px;padding:12px 14px;border-radius:4px;border-bottom:1px solid #E8D9A8}
  .lb-featured .lb-row.rank-1 .lb-rank{color:#8B6914;font-size:22px;font-style:normal;font-weight:500}
  .lb-featured .lb-row.rank-1 .lb-fill{background:linear-gradient(90deg,#D4A638 0%,#8B6914 100%)}

  /* ---- Season grid head with sort control ---- */
  .kpi-grid-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:14px;margin-bottom:14px}
  .kpi-grid-head h3{font-family:var(--font-display);font-weight:400;font-size:20px;margin:0 0 4px;color:var(--ink);letter-spacing:-0.3px}
  .kpi-grid-head h3 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .kpi-grid-head .sub{font-size:11px;color:var(--muted);letter-spacing:.5px}
  .seg{display:inline-flex;border:1px solid var(--line);border-radius:3px;background:#FBFAF5;overflow:hidden}
  .seg-btn{padding:8px 14px;border:0;background:transparent;font-family:var(--font-body);font-size:10.5px;letter-spacing:1px;text-transform:uppercase;font-weight:700;color:var(--muted);cursor:pointer;transition:background .15s,color .15s}
  .seg-btn + .seg-btn{border-left:1px solid var(--line)}
  .seg-btn:hover{color:var(--ink);background:var(--sage-soft)}
  .seg-btn.active{background:var(--sage-dark);color:#F7F2E2}

  /* Keep existing kpi-grid table rules, but support small best-month tag */
  table.kpi-grid td small{display:block;font-size:9.5px;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);font-weight:600;margin-top:2px;font-family:var(--font-body)}

  .kpi-svg .calls-line{stroke:#2B5F3D;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
  .kpi-svg .calls-dot{fill:#2B5F3D;stroke:#F7F2E2;stroke-width:1.5}
  .kpi-svg .calls-axis{fill:#2B5F3D;font-weight:600}
  .kpi-legend .sw.calls{background:#2B5F3D;border-radius:2px;height:3px;margin-top:4px}

  .kpi5{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin:18px 0 26px}
  @media (max-width:1180px){.kpi5{grid-template-columns:repeat(3,1fr)}}
  @media (max-width:720px){.kpi5{grid-template-columns:repeat(2,1fr);gap:12px}}
  .kpi5-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 18px;box-shadow:var(--shadow);position:relative;overflow:hidden;min-width:0}
  .kpi5-card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply}
  .kpi5-card > *{position:relative;z-index:1}
  .kpi5-eb{display:block;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:10px}
  .kpi5-big{font-family:var(--font-display);font-weight:300;font-size:clamp(26px,3vw,36px);line-height:1;color:var(--ink);letter-spacing:-1px;margin-bottom:8px;word-break:break-word}
  .kpi5-big small{font-family:var(--font-display);font-size:14px;color:var(--muted);margin-right:3px;font-weight:300}
  .kpi5-sub{font-size:10.5px;color:var(--muted);line-height:1.5;margin-bottom:10px}
  .kpi5-co{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--sage-dark);font-weight:600;padding-top:10px;border-top:1px solid var(--line-soft)}
  .kpi5-hero-card{background:linear-gradient(180deg,#EDE5CE 0%,var(--card) 100%);border-color:var(--sage-dark)}
  .kpi5-hero-card .kpi5-big{color:var(--ink)}
  .kpi5-hero-card .kpi5-eb{color:var(--sage-dark)}

  .kpi-chart-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;box-shadow:var(--shadow);position:relative;overflow:hidden}
  .kpi-chart-card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply}
  .kpi-chart-card > *{position:relative;z-index:1}
  .kpi-chart-card h3{font-family:var(--font-display);font-weight:400;font-size:18px;margin:0 0 14px;color:var(--ink);letter-spacing:-0.3px}
  .kpi-svg{width:100%;height:auto;display:block}
  .kpi-svg .bar.banked{fill:var(--sage-dark)}
  .kpi-svg .bar.pipeline{fill:none;stroke:var(--sage-dark);stroke-width:1.5;stroke-dasharray:3 2}
  .kpi-svg .axis{stroke:var(--line);stroke-width:1}
  .kpi-svg .axis-label{font-family:var(--font-body);font-size:9px;fill:var(--muted);letter-spacing:.5px;text-transform:uppercase}
  .kpi-svg .axis-label.sel{fill:var(--ink);font-weight:700}
  .kpi-svg .grid{stroke:var(--line-soft);stroke-width:1;stroke-dasharray:2 3}
  .kpi-legend{display:flex;gap:20px;margin-top:12px;flex-wrap:wrap;font-size:11px;color:var(--muted);letter-spacing:.5px}
  .kpi-legend .sw{display:inline-block;width:14px;height:10px;margin-right:6px;vertical-align:middle}
  .kpi-legend .sw.banked{background:var(--sage-dark)}
  .kpi-legend .sw.pipeline{border:1.5px dashed var(--sage-dark)}

  .kpi-grid-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;box-shadow:var(--shadow);position:relative;overflow:hidden}
  .kpi-grid-card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply}
  .kpi-grid-card > *{position:relative;z-index:1}
  .kpi-grid-card h3{font-family:var(--font-display);font-weight:400;font-size:20px;margin:0 0 4px;color:var(--ink);letter-spacing:-0.3px}
  .kpi-grid-card h3 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .kpi-grid-card .sub{font-size:11px;color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:14px;font-weight:600}
  .kpi-grid-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  table.kpi-grid{width:100%;border-collapse:collapse;font-size:13px;min-width:620px}
  table.kpi-grid th{text-align:left;font-size:9.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);font-weight:600;padding:10px 8px;border-bottom:1px solid var(--line)}
  table.kpi-grid th.num{text-align:right}
  table.kpi-grid td{padding:12px 8px;border-bottom:1px solid var(--line-soft);vertical-align:middle}
  table.kpi-grid td.rk{width:28px;font-family:var(--font-display);font-style:italic;color:var(--sage-dark);font-weight:300}
  table.kpi-grid td.nm{color:var(--ink);font-weight:600}
  table.kpi-grid td.num{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
  table.kpi-grid td.num.hero{font-family:var(--font-display);font-size:15px;color:var(--ink)}
  table.kpi-grid tr.you{background:var(--sage-soft)}
  table.kpi-grid tr.you td.nm .you-tag{display:inline-block;margin-left:6px;padding:1px 7px;background:var(--sage-dark);color:#F7F2E2;font-size:9px;letter-spacing:1px;text-transform:uppercase;border-radius:2px;font-weight:700}
  table.kpi-grid tr.zero td{color:var(--muted)}
  table.kpi-grid td .zz{color:var(--line);font-weight:400}
  table.kpi-grid tfoot td{padding-top:14px;border-top:2px solid var(--line);border-bottom:0;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--sage-dark);font-weight:700}
  table.kpi-grid tfoot td.num{font-family:var(--font-display);font-size:14px;font-weight:400;letter-spacing:0;text-transform:none}

  /* =========================================================================
     v0.5 REDESIGN LAYER
     -------------------------------------------------------------------------
     Global layout overhaul to fix overflow, unify spacing, and keep the
     topbar, grids and charts contained on every viewport from 320 → 1600.
     Rules below use high specificity and !important only where older rules
     above would otherwise conflict. This block is the new source of truth.
     ========================================================================= */

  /* --- Global containment --- */
  html, body { max-width: 100%; overflow-x: hidden; }
  *, *::before, *::after { box-sizing: border-box; }
  img, svg, video, canvas { max-width: 100%; height: auto; }

  .container { max-width: 1280px; padding-left: clamp(16px, 3vw, 32px); padding-right: clamp(16px, 3vw, 32px); }

  /* --- Topbar: base styles for all viewports --- */
  .topbar { background: rgba(224,213,191,.97) !important; box-shadow: 0 1px 8px rgba(14,14,12,.06) !important; border-bottom: 1px solid var(--line) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; position: sticky !important; top: 0 !important; z-index: 50 !important; }
  .topbar::after { display: none !important; }

  /* --- Desktop-only topbar (1081px+) --- */
  @media (min-width: 1081px) {
    .topbar-inner { height: 64px !important; gap: 16px; }
    .brand { gap: 12px !important; min-width: 0; flex-shrink: 0; color: var(--ink) !important; margin-left: 12px; flex-direction: row !important; align-items: center !important; }
    .brand-logo { height: 30px !important; filter: none !important; opacity: 1 !important; color: var(--ink) !important; }
    .brand-divider-desktop { display: block !important; height: 22px !important; background: var(--line) !important; }
    .brand-divider-mobile { display: none !important; }
    .brand-title { font-size: 10px !important; letter-spacing: 3px !important; }
    .brand-tagline { font-size: 11px !important; }
    nav.main { display: flex !important; flex: 1 1 auto; justify-content: center; min-width: 0; flex-wrap: nowrap; align-items: center; }
    nav.main a { margin-left: 0 !important; padding: 0 10px !important; font-size: 9.5px !important; letter-spacing: 1.6px !important; white-space: nowrap; border-bottom: 2px solid transparent !important; border-top: none !important; line-height: 60px; color: var(--muted) !important; }
    nav.main a:hover { color: var(--ink) !important; }
    nav.main a.active { border-bottom-color: var(--sage-dark) !important; color: var(--ink) !important; font-weight: 600 !important; }
    /* Branch dropdown group */
    .nav-branch-group { position: relative; display: inline-flex; align-items: center; }
    .nav-branch-group .nav-branch-trigger { display: inline-flex; align-items: center; gap: 4px; font-size: 9.5px; letter-spacing: 1.6px; text-transform: uppercase; color: var(--muted); cursor: pointer; padding: 0 10px; line-height: 60px; font-weight: 500; font-family: inherit; background: none; border: none; border-bottom: 2px solid transparent; transition: color .2s, border-color .2s; }
    .nav-branch-group .nav-branch-trigger:hover { color: var(--ink); }
    .nav-branch-group .nav-branch-trigger.active { border-bottom-color: var(--sage-dark); color: var(--ink); font-weight: 600; }
    .nav-branch-group .nav-branch-trigger svg { width: 9px; height: 9px; opacity: .45; transition: transform .2s, opacity .2s; }
    .nav-branch-group:hover .nav-branch-trigger svg { transform: rotate(180deg); opacity: .8; }
    .nav-branch-menu { display: none; position: absolute; top: calc(100% - 2px); left: 50%; transform: translateX(-50%); background: #fff; border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 12px 36px rgba(14,14,12,.12), 0 2px 8px rgba(14,14,12,.06); padding: 8px 0; min-width: 260px; z-index: 100; }
    .nav-branch-group:hover .nav-branch-menu { display: block; }
    .nav-branch-group .nav-branch-trigger:focus { outline: none; }
    .nav-branch-menu a { display: flex !important; align-items: center; gap: 10px; padding: 16px 26px !important; font-size: 11px !important; letter-spacing: 1.8px !important; line-height: 1 !important; color: var(--muted) !important; border-bottom: none !important; border-left: 3px solid transparent !important; transition: all .15s ease; min-height: 48px; }
    .nav-branch-menu a:hover { background: var(--bg) !important; color: var(--ink) !important; border-left-color: var(--sage) !important; }
    .nav-branch-menu a.active { color: var(--ink) !important; font-weight: 600 !important; background: var(--sage-soft) !important; border-left-color: var(--sage-dark) !important; }
    /* Single-branch direct link (replaces dropdown for branch managers) */
    a.branch-direct-link { display:inline-flex; align-items:center; font-size:9.5px; letter-spacing:1.6px; text-transform:uppercase; color:var(--muted); padding:0 10px; line-height:60px; font-weight:500; border-bottom:2px solid transparent; transition:color .2s,border-color .2s; text-decoration:none; }
    a.branch-direct-link:hover { color:var(--ink); }
    a.branch-direct-link.active { border-bottom-color:var(--sage-dark); color:var(--ink); font-weight:600; }
    .live-clock { margin-right: 10px !important; min-width: 0 !important; margin-left: 6px !important; align-items: center !important; }
    .live-clock .lc-time { font-size: 13px !important; color: var(--ink) !important; }
    .live-clock .lc-date { font-size: 7px !important; letter-spacing: 1.2px !important; color: var(--muted) !important; text-align: center !important; }
    .user-chip { gap: 0 !important; font-size: 12px; flex-shrink: 0; color: var(--ink) !important; }
    .user-chip .switch-wrap[style*="display:none"]+*,.user-chip .switch-wrap[style*="display: none"]+*{margin-left:0 !important}
    .avatar { width: 32px !important; height: 32px !important; font-size: 11px !important; background: rgba(184,134,11,.15) !important; border-color: rgba(184,134,11,.35) !important; color: var(--ink) !important; }
    .switch { margin-left: 8px !important; padding: 6px 10px !important; font-size: 9px !important; letter-spacing: 1.6px !important; color: var(--muted) !important; border-color: var(--line) !important; }
    .switch:hover { border-color: var(--sage-dark) !important; color: var(--ink) !important; }
  }

  /* Tablet range (721-1080px): sidebar on tablet too */
  @media (min-width: 721px) and (max-width: 1080px) {
    nav.main { display: none !important; }
    nav.main * { display: none !important; }
    a.branch-direct-link{display:none !important}
    .mobile-menu-btn{display:flex;align-items:center;justify-content:center;background:rgba(184,134,11,.06);border:1px solid rgba(184,134,11,.12);border-radius:10px;width:44px;height:44px;color:var(--ink)}
    .mobile-menu-btn svg{width:22px;height:22px}
    .page-nav-mobile{display:none !important}
    body{padding-bottom:0 !important}
    .brand-text-group{display:flex !important}
    .brand-divider-desktop{display:block !important}
    .brand-divider-mobile{display:none !important}
    .brand-portal-tag{display:none !important}
    .brand-mobile-stack{display:none !important}
    .brand{flex-direction:row !important;align-items:center !important;gap:12px !important;justify-self:start !important}
    .topbar-inner{display:flex !important;grid-template-columns:unset !important}
    .live-clock{display:none !important}
    .user-chip{display:none !important}
  }
  @media (min-width: 1081px) {
    .sidebar,.sidebar-backdrop,.mobile-menu-btn{display:none !important}
    .page-nav-mobile { display: none !important; }
  }
  @media (max-width: 640px) {
    .topbar-inner { height: 60px !important; }
    .brand-logo { height: 36px !important; }
    .live-clock { display: none !important; }
    .switch { display: none !important; }
  }

  /* --- Hero: compact, fades on scroll via JS --- */
  .hero { padding: clamp(36px, 5vw, 64px) clamp(20px, 4vw, 44px) clamp(28px, 4vw, 48px) !important; margin: 16px 0 28px !important; transition: opacity 1.2s cubic-bezier(.4,0,.2,1), transform 1.2s cubic-bezier(.4,0,.2,1), max-height .8s ease .8s, padding .8s ease .8s, margin .8s ease .8s; }
  /* Show Welcome toggle */
  .hero h1 { font-size: clamp(28px, 4.5vw, 46px) !important; margin: 10px 0 8px !important; }
  .hero .congrats { max-width: 520px; padding: 12px 18px !important; margin-top: 14px !important; }
  .hero .congrats .c-body { font-size: clamp(13px, 1.8vw, 15px) !important; }
  .hero .tagline { font-size: 12px !important; margin-top: 12px !important; padding-top: 10px !important; }

  /* --- Section titles: generous spacing --- */
  .section-title { margin: clamp(48px, 7vw, 72px) auto 28px !important; padding: 0 16px; }
  .section-title h2 { font-size: clamp(24px, 3.4vw, 34px) !important; }
  .section-title .sub { font-size: 12.5px !important; margin-top: 14px !important; }

  /* --- Grids: responsive auto-fit so nothing ever overflows --- */
  .grid { gap: clamp(16px, 2vw, 24px) !important; }
  .grid.cols-3 { grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr) !important; }
  .grid.cols-2 { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) !important; }
  @media (max-width: 1100px) {
    .grid.cols-3 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; }
  }
  @media (max-width: 760px) {
    .grid.cols-3, .grid.cols-2 { grid-template-columns: minmax(0, 1fr) !important; }
  }

  /* --- Cards: generous padding, clean frames --- */
  .card { padding: clamp(24px, 3vw, 36px) !important; min-width: 0; overflow: hidden; border: 1px solid var(--line) !important; border-radius: 4px; }
  .card h3 { font-size: clamp(18px, 2vw, 22px) !important; margin-bottom: 8px; }
  .ytd .figure { font-size: clamp(44px, 5.5vw, 64px) !important; }
  .ytd .sub { gap: 10px 20px !important; }
  /* More breathing room between grid sections */
  .grid { margin-bottom: 28px !important; }
  .grid.cols-3 + .section-title, .grid.cols-2 + .section-title { margin-top: 56px !important; }

  /* --- Listings: subtle, compact strip --- */
  .listings-strip { margin: 0 0 40px !important; opacity: .7; transition: opacity .3s, padding-top .8s cubic-bezier(.4,0,.2,1); }
  .listings-strip:hover { opacity: 1; }
  .listings-strip .strip-head { margin-bottom: 20px !important; }
  .listings-strip .strip-head::before { display: none !important; }
  .listings-strip h2 { font-size: 18px !important; margin: 0 !important; }
  .listings-strip .strip-head .note { font-size: 11px !important; margin-top: 6px !important; max-width: 400px; }
  .listings-strip .sort-pill { font-size: 8px !important; padding: 4px 8px !important; margin-top: 8px !important; }
  .listings-grid {
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 10px !important;
  }
  .listing-tile { aspect-ratio: 16/10 !important; border-radius: 3px; }
  .listing-tile .cap { padding: 10px 10px 8px !important; }
  .listing-tile .cap .ttl { font-size: 12px !important; }
  .listings-strip .see-all { font-size: 9px !important; margin-top: 10px !important; }
  @media (max-width: 760px) {
    .listings-grid { grid-template-columns: repeat(2, 1fr) !important; }
  }

  /* --- Chart card: keep SVG contained --- */
  .chart-card { min-width: 0 !important; overflow: hidden; }
  .chart-stage { padding: 8px 4px !important; }
  svg.chart-svg { width: 100% !important; height: auto !important; }
  .chart-tabs { margin: 10px 0 12px !important; }

  /* --- KPI view redesign --- */
  #kpisView { padding-top: 8px; }
  .kpi-hero { padding: clamp(40px, 5vw, 60px) 16px 24px !important; margin-bottom: 28px !important; }
  .kpi-hero h1 { font-size: clamp(30px, 4.6vw, 52px) !important; margin: 8px auto 12px !important; }
  .kpi-hero p.lead { font-size: 13.5px !important; margin-bottom: 18px !important; }
  .kpi-range { flex-wrap: wrap; justify-content: center; }
  .kpi-range button { padding: 9px 16px !important; font-size: 9.5px !important; letter-spacing: 1.4px !important; }

  .kpi-stat-grid {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 14px !important;
    margin-bottom: 28px !important;
  }
  .kpi-stat { padding: 20px !important; }
  .kpi-stat .eyebrow { font-size: 9px !important; letter-spacing: 2px !important; margin-bottom: 8px !important; }
  .kpi-stat .big { font-size: clamp(28px, 3.4vw, 38px) !important; }
  .kpi-stat .delta { font-size: 10px !important; margin-top: 8px !important; }

  .kpi-grid {
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) !important;
    gap: 20px !important;
    margin-bottom: 22px !important;
  }
  @media (max-width: 960px) { .kpi-grid { grid-template-columns: minmax(0, 1fr) !important; } }
  .kpi-chart-card { padding: 22px !important; min-width: 0; overflow: hidden; }
  .kpi-chart-card h3 { font-size: clamp(17px, 2vw, 21px) !important; }
  .kpi-chart-stage { padding: 6px 4px !important; }
  svg.kpi-svg { width: 100% !important; height: auto !important; }

  .kpi-lb-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 20px !important;
    margin-bottom: 22px !important;
  }
  .kpi-lb { padding: 22px !important; min-width: 0; overflow: hidden; }
  .kpi-lb h3 { font-size: 18px !important; }
  .kpi-lb-row { padding: 10px 0 !important; gap: 10px !important; }
  .kpi-lb-row .val { font-size: 16px !important; }
  .kpi-lb-row .nm { font-size: 12.5px !important; }

  .kpi-scatter-card { padding: 22px !important; min-width: 0; overflow: hidden; }

  /* --- Leaderboard view --- */
  .train-hero { padding: clamp(40px, 5vw, 56px) clamp(20px, 5vw, 34px) 28px !important; margin-bottom: 32px !important; }
  .train-hero h1 { font-size: clamp(32px, 4.6vw, 54px) !important; margin: 12px auto 14px !important; padding: 0 16px; }
  .train-hero p.lead { font-size: 14px !important; padding: 0 16px; }
  .lb-full .lbf-row { padding: clamp(10px, 1.5vw, 14px) clamp(14px, 3vw, 32px) !important; }
  .lb-full .lbf-name { font-size: clamp(18px, 2.4vw, 22px) !important; }
  .lb-full .lbf-rank { font-size: clamp(26px, 3.2vw, 36px) !important; }
  .lb-full-wrap { margin-bottom: 44px; }

  /* --- Admin view --- */
  #adminView .grid.cols-3 {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
    margin-bottom: 24px !important;
  }
  .admin-stat .figure { font-size: clamp(32px, 4vw, 48px) !important; }
  .admin-table-wrap { min-width: 0; overflow: hidden; }

  /* --- Training view --- */
  .train-layout { gap: clamp(20px, 3vw, 40px) !important; }
  .train-nav { padding-right: clamp(12px, 1.5vw, 20px) !important; top: 80px !important; }
  .train-reader { min-width: 0; }
  .train-reader h2 { font-size: clamp(26px, 3.4vw, 38px) !important; }

  /* --- Streaks --- */
  .streaks { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important; gap: 16px !important; }

  /* --- Personnel grid --- */
  .personnel-grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important; gap: 14px; }

  /* --- Footer --- */
  footer { padding: 56px 16px 40px !important; }

  /* --- Focus & accessibility --- */
  :focus-visible { outline: 2px solid var(--sage); outline-offset: 2px; }

  /* --- Smooth transitions --- */
  .kpi-stat, .card, .kpi-lb, .kpi-chart-card, .kpi-scatter-card { transition: box-shadow .2s ease, transform .2s ease; }
  .kpi-stat:hover { box-shadow: var(--shadow-lift); }

  /* --- KPI period charts (last 3 mo / last 12 mo) --- */
  .kpi-period-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:28px}
  @media (max-width:1000px){.kpi-period-grid{grid-template-columns:1fr}}
  .kpi-period-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;box-shadow:var(--shadow);position:relative;overflow:hidden;min-width:0}
  .kpi-period-card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply}
  .kpi-period-card > *{position:relative;z-index:1}
  .kpi-period-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
  .kpi-period-head h3{margin:4px 0 0 0;font-family:var(--font-display);font-size:22px;font-weight:400;line-height:1.2}
  .kpi-period-head h3 em{color:var(--sage-dark);font-style:italic}
  .kpi-period-head .sub{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);text-align:right}
  .kpi-period-list .lb-row{display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line-soft)}
  .kpi-period-list .lb-row:last-child{border-bottom:0}
  .kpi-period-list .lb-row.you{margin:0;padding:10px 12px;border-radius:3px;background:var(--sage-soft);border-bottom-color:transparent}
  .kpi-period-list .lb-empty{padding:24px 0;color:var(--muted);font-style:italic;text-align:center}
  .kpi-period-grid-4{grid-template-columns:repeat(2,1fr)}
  @media (max-width:820px){.kpi-period-grid-4{grid-template-columns:1fr}}
  .kpi-period-head-intro{padding:0;margin-top:34px}
  .kpi-period-head-intro .eyebrow{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:700}
  .kpi-period-head-intro .lead{margin-top:6px}
  /* Branch pill next to agent name on KPI leaderboards */
  .lb-branch{display:inline-block;margin-left:8px;padding:2px 7px;border-radius:999px;font-size:9.5px;letter-spacing:.8px;text-transform:uppercase;font-weight:700;background:var(--line-soft);color:var(--muted);vertical-align:1px;border:1px solid var(--line)}
  .lb-branch.br-ct{background:rgba(138,116,76,.10);color:#6b5632;border-color:rgba(138,116,76,.25)}
  .lb-branch.br-ss{background:rgba(94,114,86,.12);color:var(--sage-dark);border-color:rgba(94,114,86,.28)}
  .lb-branch.br-dbn{background:rgba(120,80,60,.12);color:#7a4f3a;border-color:rgba(120,80,60,.28)}
  /* Branch-vs-branch competition panel */
  .branch-vs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
  .branch-vs-metric{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px 16px;box-shadow:var(--shadow);position:relative;overflow:hidden;min-width:0}
  .branch-vs-metric::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.5;mix-blend-mode:multiply}
  .branch-vs-metric > *{position:relative;z-index:1}
  .branch-vs-metric h4{margin:0 0 2px;font-family:var(--font-display);font-weight:400;font-size:18px;letter-spacing:-0.2px}
  .branch-vs-metric h4 em{font-style:italic;color:var(--sage-dark);font-weight:300}
  .branch-vs-metric .bv-sub{font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
  .branch-vs-row{display:grid;grid-template-columns:86px 1fr auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line-soft)}
  .branch-vs-row:last-child{border-bottom:0}
  .branch-vs-row.winner{padding:10px 10px;margin:0 -10px;background:var(--sage-soft);border-radius:4px;border-bottom-color:transparent}
  .branch-vs-row .bv-name{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--ink)}
  .branch-vs-row .bv-bar{height:10px;border-radius:999px;background:var(--line-soft);overflow:hidden;position:relative}
  .branch-vs-row .bv-fill{height:100%;border-radius:999px;transition:width .6s cubic-bezier(.4,0,.2,1)}
  .branch-vs-row[data-branch="CT"] .bv-fill{background:linear-gradient(90deg,#c2a572,#8a744c)}
  .branch-vs-row[data-branch="SS"] .bv-fill{background:linear-gradient(90deg,#8a9f7f,var(--sage-dark))}
  .branch-vs-row[data-branch="DBN"] .bv-fill{background:linear-gradient(90deg,#b08468,#7a4f3a)}
  .branch-vs-row .bv-val{font-family:var(--font-display);font-size:15px;font-weight:500;color:var(--ink);min-width:52px;text-align:right}
  .branch-vs-row .bv-val .bv-count{font-size:10.5px;letter-spacing:.8px;color:var(--muted);display:block;font-family:inherit;margin-top:1px;text-transform:uppercase;font-weight:600}
  .branch-vs-row.zero .bv-fill{background:var(--line)}
  .branch-vs-row.zero .bv-val{color:var(--muted)}
  /* FY-to-date per-branch KPI leaderboard */
  .fyd-branch-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:18px}
  .fyd-branch-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);position:relative;overflow:hidden;min-width:0;display:flex;flex-direction:column}
  .fyd-branch-card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.5;mix-blend-mode:multiply}
  .fyd-branch-card > *{position:relative;z-index:1}
  .fyd-branch-head{padding:16px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}
  .fyd-branch-head .bh-left{min-width:0}
  .fyd-branch-head h4{margin:0;font-family:var(--font-display);font-weight:300;font-size:22px;letter-spacing:-0.3px}
  .fyd-branch-head h4 em{font-style:italic;color:var(--sage-dark)}
  .fyd-branch-head .bh-sub{font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);margin-top:3px}
  .fyd-branch-head .bh-chip{padding:4px 10px;border-radius:999px;font-size:9.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;white-space:nowrap}
  .fyd-branch-card[data-branch="CT"] .bh-chip{background:rgba(138,116,76,.14);color:#6b5632;border:1px solid rgba(138,116,76,.3)}
  .fyd-branch-card[data-branch="SS"] .bh-chip{background:rgba(94,114,86,.14);color:var(--sage-dark);border:1px solid rgba(94,114,86,.3)}
  .fyd-branch-card[data-branch="DBN"] .bh-chip{background:rgba(120,80,60,.14);color:#7a4f3a;border:1px solid rgba(120,80,60,.3)}
  .fyd-table{padding:6px 20px 14px}
  .fyd-table .fyd-head{display:grid;grid-template-columns:22px 1.3fr repeat(5,1fr);gap:8px;padding:10px 0 8px;border-bottom:1px solid var(--line);font-size:9.5px;letter-spacing:1.1px;text-transform:uppercase;color:var(--muted);font-weight:700}
  .fyd-table .fyd-head span:nth-child(n+3){text-align:right}
  .fyd-table .fyd-row{display:grid;grid-template-columns:22px 1.3fr repeat(5,1fr);gap:8px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line-soft);font-size:13px}
  .fyd-table .fyd-row:last-child{border-bottom:0}
  .fyd-table .fyd-row.you{margin:0 -10px;padding:9px 10px;background:var(--sage-soft);border-radius:3px;border-bottom-color:transparent}
  .fyd-table .fyd-rank{font-family:var(--font-display);font-size:15px;color:var(--muted)}
  .fyd-table .fyd-row.rank-1 .fyd-rank{color:#9A7B1A;font-weight:500}
  .fyd-table .fyd-row.rank-2 .fyd-rank{color:#7A7A7A;font-weight:500}
  .fyd-table .fyd-row.rank-3 .fyd-rank{color:#9A6930;font-weight:500}
  .fyd-table .fyd-name{font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .fyd-table .fyd-val{text-align:right;font-family:var(--font-display);font-size:14px;color:var(--ink)}
  .fyd-table .fyd-val.zero{color:var(--line);font-weight:300}
  .fyd-table .fyd-row .fyd-val.best{color:var(--sage-dark);font-weight:600}
  .fyd-empty{padding:28px 20px;color:var(--muted);font-style:italic;text-align:center;font-size:13px}
  @media (max-width:720px){
    .fyd-table .fyd-head,
    .fyd-table .fyd-row{grid-template-columns:22px 1.1fr repeat(5,minmax(36px,1fr));gap:4px;font-size:11.5px}
    .fyd-table .fyd-val{font-size:12.5px}
  }

  /* --- KPI page sections (numbered, stylised dividers) --- */
  .kpi-section{position:relative;padding:34px 0 14px;margin-top:28px;border-top:1px solid var(--line)}
  .kpi-section:first-of-type{margin-top:0;border-top:0;padding-top:6px}
  .kpi-section::before{content:"";position:absolute;top:-1px;left:0;width:60px;height:2px;background:linear-gradient(90deg,var(--sage-dark),transparent)}
  .kpi-section:first-of-type::before{display:none}
  .kpi-section-head{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:end;margin-bottom:20px}
  .kpi-section-num{font-family:var(--font-display);font-size:58px;line-height:.85;font-weight:200;font-style:italic;color:var(--sage-dark);opacity:.28;letter-spacing:-2px}
  .kpi-section-head .ksh-body{min-width:0}
  .kpi-section-head .ksh-body .eyebrow{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--sage-dark);font-weight:700}
  .kpi-section-head .ksh-body h2{font-family:var(--font-display);font-weight:300;font-size:30px;letter-spacing:-0.6px;margin:4px 0 6px;line-height:1.15}
  .kpi-section-head .ksh-body h2 em{font-style:italic;color:var(--sage-dark)}
  .kpi-section-head .ksh-body .lead{color:var(--muted);font-size:13px;margin:0;max-width:640px;line-height:1.55}
  .kpi-section-head .ksh-aside{display:flex;align-items:center;gap:10px;align-self:center}
  .kpi-month-picker{display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:3px;padding:6px 10px;box-shadow:var(--shadow-soft)}
  .kpi-month-picker label{font-size:10.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);font-weight:700}
  .kpi-month-picker select{border:0;background:transparent;font-family:'Inter',sans-serif;font-size:13px;color:var(--ink);font-weight:600;padding:2px 4px;cursor:pointer}
  .kpi-fy-chip{font-family:var(--font-display);font-style:italic;font-size:14px;padding:8px 14px;border-radius:999px;background:var(--sage-soft);color:var(--sage-dark);border:1px solid rgba(94,114,86,.25);white-space:nowrap}
  @media (max-width:760px){
    .kpi-section-head{grid-template-columns:auto 1fr;gap:14px}
    .kpi-section-head .ksh-aside{grid-column:1 / -1;justify-content:flex-start}
    .kpi-section-num{font-size:46px}
  }

  /* Note block under the branch competition */
  .kpi-branch-note{margin-top:22px;padding:18px 22px;border:1px dashed rgba(94,114,86,.35);border-radius:var(--radius);background:linear-gradient(180deg,rgba(94,114,86,.06),rgba(94,114,86,.02));position:relative}
  .kpi-branch-note .eyebrow{display:block;margin-bottom:8px;font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700}
  .kpi-branch-note p{margin:0 0 6px;font-size:13px;line-height:1.55;color:var(--ink)}
  .kpi-branch-note p:last-child{margin-bottom:0}
  .kpi-branch-note strong{color:var(--sage-dark);font-weight:700}

  /* Historic KPI explorer card */
  .kpi-explorer-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px 26px 24px;box-shadow:var(--shadow);position:relative;overflow:hidden}
  .kpi-explorer-card::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:var(--paper);opacity:.55;mix-blend-mode:multiply}
  .kpi-explorer-card > *{position:relative;z-index:1}
  .kpi-explorer-head{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}
  .kpi-ex-ctrl{display:flex;flex-direction:column;gap:4px;min-width:170px}
  .kpi-ex-ctrl label{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:700}
  .kpi-ex-ctrl select{font-family:'Inter',sans-serif;font-size:14px;padding:9px 12px;border:1px solid var(--line);border-radius:3px;background:var(--card);color:var(--ink);font-weight:600;cursor:pointer;min-width:170px}
  .kpi-ex-ctrl select:focus{outline:none;border-color:var(--sage-dark);box-shadow:0 0 0 3px var(--sage-soft)}
  .kpi-ex-meta{margin-left:auto;font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);text-align:right;line-height:1.45}
  .kpi-explorer-list .lb-row{display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line-soft)}
  .kpi-explorer-list .lb-row:last-child{border-bottom:0}
  .kpi-explorer-list .lb-row.you{margin:0;padding:10px 12px;border-radius:3px;background:var(--sage-soft);border-bottom-color:transparent}
  .kpi-explorer-list .lb-empty{padding:26px 0;color:var(--muted);font-style:italic;text-align:center}

  /* Subtle "card stack" group wrapper for FY leaderboards (same grid, new id) */
  .lb-grid-5.fy-edition .lb-card{position:relative}
  .lb-grid-5.fy-edition .lb-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--sage-dark),transparent);border-top-left-radius:var(--radius);border-top-right-radius:var(--radius);pointer-events:none;z-index:2}

  /* --- Admin pending month groups --- */
  .pending-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;padding:20px 28px;background:var(--bg-2);border-bottom:1px solid var(--line)}
  .pending-summary .ps-card{padding:4px 0}
  .pending-summary .ps-label{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:6px}
  .pending-summary .ps-val{font-family:var(--font-display);font-size:24px;color:var(--ink);font-weight:400}
  .pending-summary .ps-val small{font-size:13px;color:var(--muted);margin-left:6px;font-family:inherit}
  .pending-month{border-bottom:1px solid var(--line)}
  .pending-month:last-child{border-bottom:0}
  .pending-month-head{display:grid;grid-template-columns:24px 1fr auto auto;gap:14px;align-items:center;padding:16px 28px;cursor:pointer;user-select:none;background:var(--card);transition:background .15s}
  .pending-month-head:hover{background:var(--bg-2)}
  .pending-month-head .pm-caret{font-size:12px;color:var(--muted);transition:transform .2s}
  .pending-month.open .pending-month-head .pm-caret{transform:rotate(90deg)}
  .pending-month-head .pm-label{font-family:var(--font-display);font-size:20px;font-weight:400;color:var(--ink)}
  .pending-month-head .pm-count{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}
  .pending-month-head .pm-total{font-family:var(--font-display);font-size:20px;color:var(--sage-dark);text-align:right;font-style:italic}
  .pending-month-body{display:none}
  .pending-month.open .pending-month-body{display:block}
  .pending-formula{padding:14px 28px;background:var(--bg-2);border-top:1px solid var(--line);font-size:12px;color:var(--muted);line-height:1.6;font-style:italic}

  /* ---------- Storey AI chatbot (training page) — dark cinematic ---------- */
  .sai{
    position:relative;
    margin:0 0 48px;
    background:linear-gradient(180deg,#141310 0%,#1A1814 60%,#0E0D0B 100%);
    border:1px solid #2E2B24;
    border-radius:6px;
    box-shadow:0 20px 60px -20px rgba(0,0,0,.55), 0 2px 4px rgba(0,0,0,.3);
    overflow:hidden;
    color:#E8DFC8;
  }
  .sai::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 0%, rgba(201,169,97,.07) 0%, transparent 60%);z-index:0}
  .sai::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='300' height='300'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");opacity:.04;mix-blend-mode:overlay}
  .sai > *{position:relative;z-index:1}
  /* Training page toggle */
  .training-toggle{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:var(--bg-2);padding:6px;border:1px solid var(--line);border-radius:999px;max-width:480px;margin:32px auto 36px;box-shadow:0 1px 2px rgba(0,0,0,0.03)}
  .train-tab{appearance:none;background:transparent;border:0;padding:14px 18px;cursor:pointer;border-radius:999px;text-align:center;display:inline-flex;gap:8px;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease,box-shadow .2s ease;font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--muted);-webkit-tap-highlight-color:transparent}
  .train-tab svg{flex-shrink:0}
  .train-tab.active{background:var(--ink);color:#F4F0E5;box-shadow:0 1px 3px rgba(0,0,0,0.18)}

  .sai-head{
    padding:36px 40px 28px;
    text-align:center;
    border-bottom:1px solid #2E2B24;
    background:rgba(0,0,0,0.15);
  }
  .sai-head .eyebrow{
    display:inline-flex;align-items:center;gap:10px;
    font-family:var(--font-body);font-size:10px;letter-spacing:2.5px;
    text-transform:uppercase;color:#A09578;font-weight:700;margin-bottom:14px;
  }
  .sai-head .eyebrow .dot{width:8px;height:8px;border-radius:50%;background:#C9A961;box-shadow:0 0 0 3px rgba(201,169,97,0.22)}
  .sai-head h2{
    font-family:var(--font-display);font-size:38px;font-weight:400;
    color:#F0E6CC;margin:0 0 12px;line-height:1.1;letter-spacing:-0.5px;
  }
  .sai-head h2 em{color:#C9A961;font-style:italic}
  .sai-head h2.sai-title-gold{color:#C9A961;letter-spacing:-0.3px}
  .sai-head h2.sai-title-gold em{color:#E2C285;font-style:italic}
  .sai-head .lead{
    font-family:var(--font-display);font-size:15px;color:#8A8374;
    max-width:640px;margin:0 auto;line-height:1.6;font-style:italic;
  }
  .sai-stage{padding:28px 40px 32px;background:transparent}

  .sai-suggestions{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:12px;margin-bottom:22px;
  }
  .sai-suggestion{
    text-align:left;background:rgba(255,255,255,0.04);border:1px solid #2E2B24;
    border-radius:4px;padding:14px 16px;cursor:pointer;
    font-family:var(--font-body);font-size:12.5px;color:#D9CFB7;
    line-height:1.5;transition:all .15s;
  }
  .sai-suggestion:hover{background:rgba(201,169,97,0.08);border-color:#4A4536;transform:translateY(-1px)}
  .sai-suggestion .s-tag{
    display:block;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;
    color:#C9A961;font-weight:700;margin-bottom:6px;
  }

  .sai-messages{
    display:flex;flex-direction:column;gap:18px;
    max-height:520px;overflow-y:auto;
    padding:4px 4px 4px 0;margin-bottom:18px;
    scrollbar-width:thin;scrollbar-color:#3A3A3F transparent;
  }
  .sai-messages:empty{display:none}
  .sai-messages::-webkit-scrollbar{width:8px}
  .sai-messages::-webkit-scrollbar-thumb{background:#3A3A3F;border-radius:4px}

  .sai-msg{display:flex;gap:14px;align-items:flex-start;animation:saiIn .3s ease}
  @keyframes saiIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  .sai-msg .avatar{
    width:36px;height:36px;border-radius:50%;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;
    font-family:var(--font-display);font-size:14px;font-weight:500;
  }
  .sai-msg.user .avatar{background:#C9A961;color:#0E0D0B}
  .sai-msg.bot .avatar{background:#2A2825;color:#C9A961;border:1px solid #3A3630}
  .sai-msg .bubble{
    flex:1;min-width:0;background:#242220;border:1px solid #2E2B24;
    border-radius:4px;padding:16px 20px;
    font-family:var(--font-body);font-size:13.5px;line-height:1.7;color:#E8DFC8;
  }
  .sai-msg.user .bubble{background:rgba(201,169,97,0.10);border-color:#3A3630}
  .sai-msg .bubble p{margin:0 0 10px}
  .sai-msg .bubble p:last-child{margin-bottom:0}
  .sai-msg .bubble strong{font-weight:700;color:#E2C285}
  .sai-msg .bubble em{font-style:italic;color:#D4C8A8}
  .sai-msg .bubble ul,.sai-msg .bubble ol{margin:8px 0 10px 20px;padding:0}
  .sai-msg .bubble li{margin-bottom:4px}
  .sai-msg .bubble code{
    background:#1A1816;padding:1px 6px;border-radius:3px;
    font-family:'SF Mono',Consolas,monospace;font-size:12px;color:#C9A961;
  }
  .sai-msg .bubble h1,.sai-msg .bubble h2,.sai-msg .bubble h3,.sai-msg .bubble h4{
    font-family:var(--font-display);font-weight:500;margin:14px 0 6px;
    color:#E2C285;line-height:1.3;
  }
  .sai-msg .bubble h3{font-size:17px}
  .sai-msg .bubble h4{font-size:14px}
  .sai-msg .sources{
    margin-top:12px;padding-top:10px;border-top:1px dashed #3A3630;
    font-size:11px;color:#8A8374;line-height:1.5;
  }
  .sai-msg .sources .s-label{
    display:block;font-family:var(--font-body);font-size:9px;
    letter-spacing:1.5px;text-transform:uppercase;color:#C9A961;
    font-weight:700;margin-bottom:4px;
  }
  .sai-msg .sources a{color:#C9A961;text-decoration:underline}

  .sai-typing{display:flex;gap:4px;padding:4px 0}
  .sai-typing span{
    width:6px;height:6px;border-radius:50%;background:#C9A961;
    animation:saiDot 1.2s infinite ease-in-out;
  }
  .sai-typing span:nth-child(2){animation-delay:.15s}
  .sai-typing span:nth-child(3){animation-delay:.3s}
  @keyframes saiDot{0%,60%,100%{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}

  .sai-form{
    display:flex;gap:12px;align-items:flex-end;
    background:#1C1A16;border:1px solid #2E2B24;border-radius:4px;
    padding:12px 12px 12px 18px;
    transition:border-color .15s,box-shadow .15s;
  }
  .sai-form:focus-within{border-color:#C9A961;box-shadow:0 0 0 3px rgba(201,169,97,0.15)}
  .sai-form textarea{
    flex:1;border:none;outline:none;resize:none;background:transparent;
    font-family:var(--font-body);font-size:14px;color:#E8DFC8;
    line-height:1.6;min-height:24px;max-height:140px;padding:4px 0;
  }
  .sai-form textarea::placeholder{color:#8A8374;font-style:italic}
  .sai-form button.send{
    flex-shrink:0;width:40px;height:40px;border-radius:50%;
    background:#C9A961;color:#0E0D0B;border:none;cursor:pointer;
    display:flex;align-items:center;justify-content:center;
    transition:background .15s,transform .15s;
  }
  .sai-form button.send:hover:not(:disabled){background:#E2C285;transform:scale(1.05)}
  .sai-form button.send:disabled{opacity:.4;cursor:not-allowed}
  .sai-form button.send svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

  .sai-footer{
    display:flex;justify-content:space-between;align-items:center;
    gap:14px;margin-top:14px;
    font-family:var(--font-body);font-size:10px;letter-spacing:1px;
    text-transform:uppercase;color:#8A8374;
  }
  .sai-kb-status{display:flex;align-items:center;gap:8px}
  .sai-kb-status .kb-dot{width:7px;height:7px;border-radius:50%;background:#3A3630}
  .sai-kb-status.ready .kb-dot{background:#C9A961;box-shadow:0 0 0 3px rgba(201,169,97,0.2)}
  .sai-kb-status.error .kb-dot{background:#C76B4F}
  .sai-footer-actions{display:flex;gap:14px}
  .sai-footer-actions button{
    background:none;border:none;padding:0;cursor:pointer;
    font:inherit;color:#C9A961;letter-spacing:1px;text-transform:uppercase;
    text-decoration:underline;text-underline-offset:3px;
  }
  .sai-footer-actions button:hover{color:#E2C285}

  .sai-disclaimer{
    margin-top:18px;padding:14px 18px;
    background:rgba(199,107,79,0.12);border-left:3px solid #C76B4F;
    border-radius:0 4px 4px 0;
    font-family:var(--font-body);font-size:11px;line-height:1.6;color:#D9CFB7;
  }
  .sai-disclaimer strong{color:#E08A6D}

  /* API key modal */
  .sai-modal{
    position:fixed;inset:0;background:rgba(14,13,11,0.70);
    display:none;align-items:center;justify-content:center;z-index:200;
    padding:20px;backdrop-filter:blur(6px);
  }
  .sai-modal.open{display:flex}
  .sai-modal-card{
    background:#1C1A16;border:1px solid #2E2B24;border-radius:6px;
    padding:32px 36px;max-width:480px;width:100%;
    box-shadow:0 20px 60px rgba(0,0,0,0.5);
  }
  .sai-modal-card h3{
    font-family:var(--font-display);font-size:26px;font-weight:400;
    margin:0 0 8px;color:#E8DFC8;
  }
  .sai-modal-card h3 em{color:#C9A961;font-style:italic}
  .sai-modal-card p{
    font-family:var(--font-body);font-size:13px;color:#8A8374;
    line-height:1.6;margin:0 0 18px;
  }
  .sai-modal-card p a{color:#C9A961;text-decoration:underline}
  .sai-modal-card input{
    width:100%;padding:12px 14px;border:1px solid #2E2B24;border-radius:4px;
    background:#0E0D0B;font-family:'SF Mono',Consolas,monospace;font-size:12px;
    color:#E8DFC8;margin-bottom:16px;outline:none;
  }
  .sai-modal-card input:focus{border-color:#C9A961;box-shadow:0 0 0 3px rgba(201,169,97,0.15)}
  .sai-modal-card .actions{display:flex;gap:10px;justify-content:flex-end}
  .sai-modal-card button{
    padding:11px 20px;border-radius:4px;border:1px solid #C9A961;
    background:#C9A961;color:#0E0D0B;cursor:pointer;
    font-family:var(--font-body);font-size:11px;letter-spacing:1.5px;
    text-transform:uppercase;font-weight:600;
  }
  .sai-modal-card button.ghost{background:transparent;color:#C9A961}
  .sai-modal-card button:hover{opacity:.88}
  .sai-modal-card .key-note{font-size:10.5px;color:#8A8374;margin-top:12px;font-style:italic}

  @media (max-width:720px){
    .training-toggle{max-width:none;margin:20px 16px 24px;padding:4px;gap:6px}
    .train-tab{padding:12px 10px;font-size:13px;gap:6px}
    .sai-head{padding:28px 22px 22px}
    .sai-head h2{font-size:28px}
    .sai-head .lead{font-size:13.5px}
    .sai-stage{padding:20px 18px 22px}
    .sai-suggestions{grid-template-columns:1fr;gap:10px}
    .sai-suggestion{padding:12px 14px;font-size:12px}
    .sai-messages{max-height:60vh}
    .sai-msg .avatar{width:30px;height:30px;font-size:12px}
    .sai-msg .bubble{padding:13px 16px;font-size:13px}
    .sai-form{padding:10px 10px 10px 14px}
    .sai-form textarea{font-size:13.5px}
    .sai-footer{flex-direction:column;align-items:flex-start;gap:8px}
    .sai-modal-card{padding:24px}
    .sai-modal-card h3{font-size:22px}
  }

  /* =========================================================================
     ALIGNMENT & POLISH PASS — April 2026
     -------------------------------------------------------------------------
     Fixes identified alignment issues across every view: consistent padding,
     grid column alignment, border styles, text alignment, mobile breakpoints,
     and flex/grid children that could overflow or stick out.
     ========================================================================= */

  /* --- Leaderboard: .you row border-offset alignment --- */
  .lb-full .lbf-row.you { padding-left: calc(clamp(16px, 3vw, 32px) - 3px) !important; }

  /* --- Leaderboard: ensure long names don't overflow --- */
  .lb-full .lbf-row { min-width: 0; }
  .lb-full .lbf-top { min-width: 0; }
  .lb-full .lbf-name { overflow: hidden; text-overflow: ellipsis; }

  /* --- Leaderboard deal breakdown: consistent inner padding --- */
  .lb-full .lbf-breakdown { margin-top: 16px; padding: 18px 20px; }
  .lb-full .lb-deal-list li { padding: 10px 4px; border-bottom: 1px solid var(--line-soft); }
  .lb-full .lb-deal-list li:last-child { border-bottom: 0; }

  /* --- Leaderboard tier badge: consistent position on mobile --- */
  @media (max-width: 720px) {
    .lb-full .lbf-tier { grid-column: 1 / span 4; justify-self: start; margin-top: 4px; font-size: 9px; }
    .lb-full .lbf-toggle { grid-column: 4; grid-row: 1; }
    .lb-full .lbf-breakdown { padding: 14px 16px; }
    .lb-full .lb-deal-top { flex-direction: column; align-items: flex-start; gap: 4px; }
    .lb-full .lb-deal-gci { font-size: 13px; }
    .lb-full .lb-deal-meta { gap: 6px; font-size: 10px; }
  }

  /* --- Chart: symmetrical padding --- */
  .chart-stage { padding: 10px !important; }
  .kpi-chart-stage { padding: 10px !important; }

  /* --- Legend: vertical alignment --- */
  .legend { align-items: center; }
  .kpi-legend { align-items: center; }

  /* --- Admin table: aligned columns between header and body --- */
  .admin-table-row { grid-template-columns: 48px 1fr 120px 160px; gap: 16px; }
  .admin-table-row.head { grid-template-columns: 48px 1fr 120px 160px; }
  .admin-table-row .a-tier { display: inline-flex; align-items: center; justify-self: start; }

  /* --- Admin pending: consistent 5-column grid for both header and rows --- */
  .admin-pending-row.five-col { grid-template-columns: 1.6fr 1fr 1fr 0.7fr 0.9fr !important; }
  .admin-pending-row.five-col div { min-width: 0; overflow: hidden; text-overflow: ellipsis; }

  @media (max-width: 720px) {
    .admin-table-row { grid-template-columns: 28px 1fr; gap: 8px; padding: 12px 14px; }
    .admin-table-row.head { display: none; }
    .admin-table-row .a-rank { font-size: 16px; }
    .admin-table-row .a-name { font-size: 14px; }
    .admin-table-row .a-total { font-size: 16px; }
    .admin-table-row .a-tier,
    .admin-table-row .a-total { grid-column: 1 / -1; justify-self: start; margin-top: 4px; }
    .admin-pending-row { grid-template-columns: 1fr auto; padding: 12px 14px; }
    .admin-pending-row.five-col { grid-template-columns: 1fr auto !important; }
    .admin-pending-row.head { display: none; }
  }

  /* --- Rentals leaderboard: explicit text alignment --- */
  .rentals-row .rr-rk { text-align: center; }
  .rentals-row .rr-name { text-align: left; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
  .rentals-row .rr-amt { text-align: right; }

  /* --- Rentals row mobile: clean 3-col without hidden bar residue --- */
  @media (max-width: 720px) {
    .rentals-row { grid-template-columns: 36px 1fr auto; gap: 10px; }
    .rentals-row .rr-bar { display: none; width: 0; height: 0; overflow: hidden; padding: 0; margin: 0; }
    .rentals-head { flex-direction: column; align-items: flex-start; gap: 12px; }
    .rentals-total { font-size: 22px; }
  }

  /* --- KPI leaderboard rows: consistent padding for .you highlight --- */
  .kpi-lb-row.you { margin: 0 -12px; padding: 10px 12px !important; }

  /* --- KPI 5-stat cards: uniform height --- */
  .kpi5 { align-items: stretch; }
  .kpi5-card { display: flex; flex-direction: column; }
  .kpi5-co { margin-top: auto; }

  /* --- Multi-tier progress track --- */
  .progress-wrap { margin-top: 22px; padding-top: 18px; }
  .tier-track { position: relative; height: 8px; margin: 0 0 8px; border-radius: 4px; overflow: visible; }
  .tier-track-bg { position: absolute; inset: 0; background: var(--bg-2); border-radius: 4px; }
  .tier-track-fill { position: absolute; top: 0; left: 0; bottom: 0; width: 0%; background: linear-gradient(90deg, var(--sage), var(--sage-dark)); border-radius: 4px; transition: width 1.2s cubic-bezier(.25,.8,.25,1); z-index: 1; }
  .tier-markers { position: absolute; inset: 0; z-index: 2; }
  .tier-marker { position: absolute; top: 50%; transform: translate(-50%, -50%); display: flex; flex-direction: column; align-items: center; }
  .tier-marker .tm-dot { width: 14px; height: 14px; border-radius: 50%; border: 2px solid #fff; box-shadow: 0 0 0 1px var(--line); background: var(--bg-2); transition: background .4s, border-color .4s, box-shadow .4s; }
  .tier-marker.cleared .tm-dot { background: var(--sage-dark); border-color: #fff; box-shadow: 0 0 0 1px var(--sage-dark); }
  .tier-marker.current .tm-dot { background: var(--ink); border-color: #fff; box-shadow: 0 0 0 2px var(--ink), 0 0 8px rgba(14,14,12,.2); }
  .tier-marker .tm-label { position: absolute; top: 20px; font-size: 9px; letter-spacing: 1.2px; text-transform: uppercase; color: var(--muted); white-space: nowrap; font-weight: 500; }
  .tier-marker.cleared .tm-label { color: var(--sage-dark); font-weight: 600; }
  .tier-marker.current .tm-label { color: var(--ink); font-weight: 700; }
  .tier-marker .tm-amt { position: absolute; top: 32px; font-size: 8px; letter-spacing: .8px; color: var(--muted); white-space: nowrap; opacity: .7; }
  .tier-track-legend { display: flex; justify-content: space-between; margin-top: 36px; padding-top: 4px; }

  /* Stagger tier labels above/below the track so they never overlap */
  @media (max-width: 820px) {
    .tier-marker .tm-label { font-size: 7.5px; letter-spacing: .5px; }
    .tier-marker .tm-amt { font-size: 7px; letter-spacing: .3px; }
    /* Odd markers (Foundation, Signature): labels below */
    .tier-marker:nth-child(odd) .tm-label { top: 20px; }
    .tier-marker:nth-child(odd) .tm-amt { top: 31px; }
    /* Even markers (Curated, Legacy): labels above */
    .tier-marker:nth-child(even) .tm-label { top: auto; bottom: 20px; }
    .tier-marker:nth-child(even) .tm-amt { top: auto; bottom: 31px; }
    /* Make room above and below the track for staggered labels */
    .tier-track { margin-top: 42px; margin-bottom: 42px; }
    .tier-track-legend { margin-top: 46px; }
    /* First marker: align label left so it doesn't clip off-screen */
    .tier-marker:first-child .tm-label,
    .tier-marker:first-child .tm-amt { transform: translateX(0); left: -7px; text-align: left; }
    /* Last marker: align label right */
    .tier-marker:last-child .tm-label,
    .tier-marker:last-child .tm-amt { transform: translateX(0); right: -7px; left: auto; text-align: right; }
  }

  /* --- Pill / tier badges: unified padding --- */
  .pill { padding: 7px 14px; font-size: 10px; letter-spacing: 2.5px; }

  /* --- Agent Editor Modal --- */
  .agent-editor-overlay { display: none; position: fixed; inset: 0; z-index: 9999; background: rgba(14,14,12,.55); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); align-items: center; justify-content: center; }
  .agent-editor-overlay.open { display: flex; }
  .agent-editor { background: #fff; border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 24px 64px rgba(14,14,12,.2); width: 580px; max-width: 94vw; max-height: 88vh; overflow-y: auto; }
  .ae-header { display: flex; align-items: center; justify-content: space-between; padding: 22px 28px 18px; border-bottom: 1px solid var(--line); }
  .ae-header h3 { font-size: 20px; margin: 0; }
  .ae-close { background: none; border: 1px solid var(--line); width: 32px; height: 32px; border-radius: 50%; font-size: 16px; cursor: pointer; color: var(--muted); display: flex; align-items: center; justify-content: center; transition: all .15s; }
  .ae-close:hover { background: var(--bg); color: var(--ink); border-color: var(--ink); }
  .ae-body { padding: 24px 28px 28px; }
  .ae-section { margin-bottom: 24px; }
  .ae-section-title { font-size: 10px; letter-spacing: 2px; text-transform: uppercase; color: var(--sage-dark); font-weight: 700; margin-bottom: 14px; padding-bottom: 8px; border-bottom: 1px solid var(--line); }
  .ae-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; }
  .ae-row.full { grid-template-columns: 1fr; }
  .ae-field label { display: block; font-size: 10px; letter-spacing: 1.5px; text-transform: uppercase; color: var(--muted); font-weight: 600; margin-bottom: 6px; }
  .ae-field input, .ae-field select, .ae-field textarea { width: 100%; padding: 10px 14px; border: 1px solid var(--line); background: var(--bg); color: var(--ink); border-radius: 4px; font-size: 13px; font-family: inherit; transition: border-color .2s; }
  .ae-field input:focus, .ae-field select:focus, .ae-field textarea:focus { outline: none; border-color: var(--sage-dark); }
  .ae-field textarea { resize: vertical; min-height: 60px; }
  .ae-avatar-row { display: flex; align-items: center; gap: 16px; }
  .ae-avatar-preview { width: 56px; height: 56px; border-radius: 50%; background: var(--ink); color: var(--bg); display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-size: 20px; overflow: hidden; flex-shrink: 0; }
  .ae-avatar-preview img { width: 100%; height: 100%; object-fit: cover; }
  .ae-avatar-actions { display: flex; flex-direction: column; gap: 6px; }
  .ae-avatar-btn { font-size: 11px; letter-spacing: 1px; text-transform: uppercase; font-weight: 600; color: var(--sage-dark); background: var(--sage-soft); border: 1px solid var(--line); border-radius: 4px; padding: 6px 12px; cursor: pointer; font-family: inherit; transition: all .15s; }
  .ae-avatar-btn:hover { border-color: var(--sage-dark); }
  .ae-footer { display: flex; justify-content: flex-end; gap: 12px; padding: 18px 28px; border-top: 1px solid var(--line); }
  .ae-btn { padding: 10px 24px; border-radius: 4px; font-size: 11px; letter-spacing: 1.8px; text-transform: uppercase; font-weight: 600; font-family: inherit; cursor: pointer; transition: all .15s; }
  .ae-btn-cancel { background: none; border: 1px solid var(--line); color: var(--muted); }
  .ae-btn-cancel:hover { border-color: var(--ink); color: var(--ink); }
  .ae-btn-save { background: var(--ink); border: none; color: var(--bg); }
  .ae-btn-save:hover { opacity: .85; }
  .ae-gci-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; }
  .ae-gci-grid .ae-field input { text-align: right; font-family: var(--font-display); font-size: 15px; }

  /* --- Cards: consistent border-radius (smooth transition, never jarring) --- */
  .card { border-radius: clamp(3px, 0.6vw, 8px) !important; }

  /* --- Listings: intermediate 3-col state --- */
  @media (min-width: 641px) and (max-width: 880px) {
    .listings-grid { grid-template-columns: repeat(2, 1fr) !important; }
  }
  @media (min-width: 881px) and (max-width: 1100px) {
    .listings-grid { grid-template-columns: repeat(3, 1fr) !important; }
  }

  /* --- Streaks: equal-height children --- */
  .streaks { align-items: stretch; }
  .streak { display: flex; flex-direction: column; }
  .streak .foot { margin-top: auto; }

  /* --- Hero congrats: block centering --- */
  .hero .congrats { display: block; margin-left: auto; margin-right: auto; text-align: center; }

  /* --- Eyebrow margins: consistent baseline --- */
  .card .eyebrow, .kpi-stat .eyebrow, .kpi5-eb { margin-bottom: 12px !important; }

  /* --- Mobile nav: centered icons + text --- */
  @media (max-width: 720px) {
    .page-nav-mobile button { justify-content: center; gap: 3px; }
    .page-nav-mobile button .mn-icon { width: 22px; height: 22px; }
    .page-nav-mobile button .mn-label { font-size: 9px; line-height: 1; }
  }

  /* --- Personnel grid: consistent on all sizes --- */
  .personnel-grid { align-items: start; }
  .personnel-col { display: flex; flex-direction: column; }
  .personnel-items { flex: 1; }

  /* --- Welcome modal: consistent mobile radius --- */
  @media (max-width: 720px) {
    .welcome-card { border-radius: clamp(4px, 1vw, 8px); }
  }

  /* --- Rules values grid mobile: 2-col to 1-col at narrow --- */
  @media (max-width: 480px) {
    .rules-values .rv-grid { grid-template-columns: 1fr !important; }
  }

  /* --- You-card rank blocks: align start for uneven content --- */
  .you-ranks { align-items: stretch; }
  .rank-block { display: flex; flex-direction: column; }
  .rb-gap { margin-top: auto; }

  /* --- Chart summary: baseline alignment --- */
  .chart-summary { align-items: flex-start; }

  /* --- Global: prevent any inline-generated HTML from overflowing cards --- */
  .card > div, .lb-card > div, .kpi-lb > div, .kpi-chart-card > div { min-width: 0; }

  /* --- Section title: consistent sub text --- */
  .section-title .sub { max-width: 600px; }

  /* --- Fix duplicate border on lb-full lbf-row.top1 --- */
  .lb-full .lbf-row.top1 { border-bottom-width: 1px; }

  /* --- Ensure deal list pipe heading aligns with card padding --- */
  .lb-full .lb-pipe-heading { padding-left: clamp(16px, 3vw, 32px); padding-right: clamp(16px, 3vw, 32px); }

  /* --- Durban deal rows & celebration cards (replaces inline styles) --- */
  .dbn-deal-row { display: flex; justify-content: space-between; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--line-soft); gap: 12px; flex-wrap: wrap; }
  .dbn-deal-row:last-child { border-bottom: 0; }
  .dbn-deal-name { font-family: var(--font-display); font-size: 15px; color: var(--ink); font-weight: 400; }
  .dbn-deal-meta { font-size: 11px; color: var(--muted); margin-top: 3px; }
  .dbn-deal-gci { font-family: var(--font-display); font-size: 16px; color: var(--ink); text-align: right; }
  .dbn-deal-gci em { font-style: normal; font-size: 9px; color: var(--muted); letter-spacing: 1px; }
  .status-badge { display: inline-block; padding: 2px 8px; color: #fff; border-radius: 2px; font-size: 9px; font-weight: 700; letter-spacing: 1px; }
  .status-badge.registered { background: #2B5F3D; }
  .status-badge.pipeline { background: var(--sage-dark); }

  .celebration-card { display: flex; align-items: center; gap: 14px; padding: 14px 18px; background: rgba(255,255,255,0.6); border: 1px solid var(--line); border-radius: 3px; }

  /* Management tab switcher */
  .mgmt-tab.active { border-bottom-color: var(--ink) !important; color: var(--ink) !important; font-weight: 600 !important; }

  /* ── Profile Bubble ── */
  .profile-bubble { display: flex; align-items: center; gap: 8px; padding: 4px 12px 4px 4px; background: var(--card); border: 1px solid var(--line); border-radius: 24px; cursor: pointer; transition: all .15s; user-select: none; }
  .profile-bubble:hover { border-color: var(--sage-dark); box-shadow: 0 2px 10px rgba(14,14,12,.08); }
  .profile-bubble .avatar { width: 28px; height: 28px; font-size: 10px; flex-shrink: 0; border-radius: 50%; overflow: hidden; }
  .pb-name { font-size: 12px; font-weight: 600; color: var(--ink); letter-spacing: .3px; white-space: nowrap; max-width: 120px; overflow: hidden; text-overflow: ellipsis; }
  .pb-caret { width: 10px; height: 10px; opacity: .4; flex-shrink: 0; transition: transform .2s, opacity .2s; }
  .profile-bubble:hover .pb-caret { opacity: .7; }
  .profile-bubble.open .pb-caret { transform: rotate(180deg); opacity: .8; }
  .profile-bubble.open { border-color: var(--sage-dark); box-shadow: 0 2px 12px rgba(14,14,12,.1); }

  .profile-dropdown { display: none; position: absolute; top: calc(100% + 8px); right: 0; background: var(--card); border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 12px 40px rgba(14,14,12,.15), 0 2px 8px rgba(14,14,12,.06); min-width: 280px; z-index: 200; overflow: hidden; }
  .profile-dropdown.open { display: block; animation: pdSlideDown .2s ease-out; }
  @keyframes pdSlideDown { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }

  .pd-header { padding: 18px 20px; display: flex; align-items: center; gap: 14px; background: var(--bg); }
  .pd-avatar { width: 44px; height: 52px; border-radius: 45%; background: var(--ink); color: var(--bg); display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-size: 15px; font-weight: 300; flex-shrink: 0; overflow: hidden; border: 2px solid rgba(184,134,11,.3); }
  .pd-avatar img { width: 100%; height: 100%; object-fit: cover; border-radius: 45%; }
  .pd-name { font-size: 13px; font-weight: 600; color: var(--ink); }
  .pd-email { font-size: 11px; color: var(--muted); margin-top: 2px; }
  .pd-divider { height: 1px; background: var(--line); margin: 0; }
  .pd-item { display: flex; align-items: center; gap: 12px; padding: 13px 20px; width: 100%; border: none; background: none; font-size: 12.5px; color: var(--ink); cursor: pointer; font-family: inherit; transition: background .1s; text-align: left; }
  .pd-item:hover { background: var(--bg); }
  .pd-item svg { width: 16px; height: 16px; flex-shrink: 0; opacity: .5; }
  .pd-item.pd-signout { color: var(--muted); }
  .pd-item.pd-signout:hover { color: #c0392b; }

  @media (max-width: 768px) {
    .pb-name { max-width: 80px; }
    .profile-dropdown { right: -10px; min-width: 260px; }
  }

  /* ── AI Chat Popup ── */
  .chat-fab { position: fixed; bottom: 28px; right: 28px; z-index: 999; width: 56px; height: 56px; border-radius: 50%; background: var(--ink); color: var(--bg); border: none; cursor: pointer; box-shadow: 0 4px 20px rgba(14,14,12,.25); display: flex; align-items: center; justify-content: center; transition: transform .2s, box-shadow .2s; }
  .chat-fab:hover { transform: scale(1.08); box-shadow: 0 6px 28px rgba(14,14,12,.35); }
  .chat-fab svg { width: 24px; height: 24px; }
  .chat-fab .fab-close { display: none; }
  .chat-fab.open .fab-open { display: none; }
  .chat-fab.open .fab-close { display: block; }

  .chat-popup { position: fixed; bottom: 96px; right: 28px; z-index: 998; width: 380px; max-width: calc(100vw - 40px); height: 520px; max-height: calc(100vh - 140px); background: var(--card); border: 1px solid var(--line); border-radius: 14px; box-shadow: 0 16px 60px rgba(14,14,12,.18); display: none; flex-direction: column; overflow: hidden; }
  .chat-popup.open { display: flex; animation: chatSlideUp .25s ease-out; }
  @keyframes chatSlideUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }

  .chat-header { padding: 16px 20px; background: var(--bg); border-bottom: 1px solid var(--line); display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
  .chat-header-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--sage-dark); flex-shrink: 0; }
  .chat-header-title { font-size: 12px; font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; color: var(--ink); }
  .chat-header-sub { font-size: 10px; color: var(--muted); letter-spacing: .5px; }

  .chat-messages { flex: 1; overflow-y: auto; padding: 16px 18px; display: flex; flex-direction: column; gap: 12px; }
  .chat-messages::-webkit-scrollbar { width: 4px; }
  .chat-messages::-webkit-scrollbar-thumb { background: var(--line); border-radius: 2px; }

  .chat-msg { max-width: 85%; padding: 10px 14px; border-radius: 12px; font-size: 13px; line-height: 1.55; word-wrap: break-word; }
  .chat-msg.user { align-self: flex-end; background: var(--ink); color: var(--bg); border-bottom-right-radius: 4px; }
  .chat-msg.assistant { align-self: flex-start; background: var(--bg); color: var(--ink); border: 1px solid var(--line); border-bottom-left-radius: 4px; }
  .chat-msg.system { align-self: center; background: transparent; color: var(--muted); font-size: 11px; font-style: italic; text-align: center; padding: 4px 0; }

  .chat-typing { align-self: flex-start; padding: 10px 16px; background: var(--bg); border: 1px solid var(--line); border-radius: 12px; border-bottom-left-radius: 4px; display: flex; gap: 4px; }
  .chat-typing span { width: 6px; height: 6px; border-radius: 50%; background: var(--muted); animation: chatBounce .6s ease-in-out infinite; }
  .chat-typing span:nth-child(2) { animation-delay: .1s; }
  .chat-typing span:nth-child(3) { animation-delay: .2s; }
  @keyframes chatBounce { 0%,80%,100% { transform: translateY(0); } 40% { transform: translateY(-5px); } }

  .chat-input-bar { padding: 12px 14px; border-top: 1px solid var(--line); background: var(--bg); display: flex; gap: 10px; align-items: flex-end; flex-shrink: 0; }
  .chat-input-bar textarea { flex: 1; border: 1px solid var(--line); background: var(--card); color: var(--ink); border-radius: 8px; padding: 10px 12px; font-size: 13px; font-family: inherit; line-height: 1.4; resize: none; min-height: 40px; max-height: 100px; outline: none; transition: border-color .15s; }
  .chat-input-bar textarea:focus { border-color: var(--sage-dark); }
  .chat-input-bar textarea::placeholder { color: var(--muted); }
  .chat-send { width: 38px; height: 38px; border-radius: 8px; background: var(--ink); color: var(--bg); border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: opacity .15s; }
  .chat-send:disabled { opacity: .35; cursor: default; }
  .chat-send svg { width: 16px; height: 16px; }

  @media (max-width: 480px) {
    .chat-popup { right: 10px; left: 10px; bottom: 88px; width: auto; height: calc(100vh - 120px); max-height: none; border-radius: 12px; }
    .chat-fab { bottom: 18px; right: 18px; }
  }

  /* ---- Data Upload Zone ---- */
  .upload-zone { border: 2px dashed var(--line); border-radius: var(--radius); padding: 40px 32px; text-align: center; transition: all .2s; cursor: pointer; background: var(--bg); }
  .upload-zone:hover, .upload-zone.drag-over { border-color: var(--sage-dark); background: rgba(184,134,11,.04); }
  .upload-zone.drag-over { transform: scale(1.01); }
  .upload-zone .uz-icon { font-size: 32px; margin-bottom: 12px; opacity: .5; }
  .upload-zone .uz-title { font-size: 14px; font-weight: 600; color: var(--ink); margin-bottom: 6px; }
  .upload-zone .uz-sub { font-size: 12px; color: var(--muted); line-height: 1.5; }
  .upload-zone input[type="file"] { display: none; }

  /* Diff preview table */
  .diff-preview { margin-top: 20px; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; background: var(--card); }
  .diff-preview-header { display: flex; align-items: center; justify-content: space-between; padding: 16px 20px; border-bottom: 1px solid var(--line); }
  .diff-preview-header h3 { font-family: var(--font-display); font-weight: 400; font-size: 18px; margin: 0; }
  .diff-table { width: 100%; border-collapse: collapse; font-size: 12px; }
  .diff-table th { text-align: left; padding: 10px 14px; font-size: 9px; letter-spacing: 1.5px; text-transform: uppercase; color: var(--muted); font-weight: 600; border-bottom: 1px solid var(--line); background: var(--bg); position: sticky; top: 0; }
  .diff-table td { padding: 10px 14px; border-bottom: 1px solid rgba(0,0,0,.04); vertical-align: top; }
  .diff-table tr.new-row { background: rgba(39,174,96,.06); }
  .diff-table tr.amended-row { background: rgba(243,156,18,.06); }
  .diff-table tr.unchanged-row { opacity: .5; }
  .diff-badge { display: inline-block; padding: 2px 8px; border-radius: 3px; font-size: 9px; letter-spacing: 1px; text-transform: uppercase; font-weight: 700; }
  .diff-badge.new { background: rgba(39,174,96,.12); color: #27ae60; }
  .diff-badge.amended { background: rgba(243,156,18,.12); color: #e67e22; }
  .diff-badge.unchanged { background: rgba(0,0,0,.06); color: var(--muted); }
  .diff-table tr.cancelled-row { background: rgba(231,76,60,.06); }
  .diff-badge.cancelled { background: rgba(231,76,60,.12); color: #e74c3c; }
  .diff-old-val { text-decoration: line-through; color: var(--muted); font-size: 11px; margin-right: 6px; }
  .diff-new-val { color: #e67e22; font-weight: 600; }
  .diff-actions { display: flex; gap: 12px; justify-content: flex-end; padding: 16px 20px; border-top: 1px solid var(--line); background: var(--bg); }
  .diff-actions button { padding: 10px 24px; border-radius: var(--radius); font-size: 11px; letter-spacing: 1.5px; text-transform: uppercase; font-weight: 600; cursor: pointer; font-family: inherit; transition: all .15s; }
  .diff-actions .diff-cancel { background: none; border: 1px solid var(--line); color: var(--ink); }
  .diff-actions .diff-apply { background: var(--ink); border: none; color: var(--bg); }
  .diff-scrollbox { max-height: 400px; overflow-y: auto; }
  .diff-summary { padding: 14px 20px; font-size: 13px; color: var(--ink); line-height: 1.6; border-bottom: 1px solid var(--line); background: var(--bg); }
  .diff-summary strong { font-weight: 700; }

  /* ═══════════════════════════════════════════════════════════════════════
     BUBBLE REDESIGN LAYER (v149) — site-wide "bubble box" surfaces + cleaner
     interfaces. Placed last so it wins the cascade; uses the design tokens.
     ═══════════════════════════════════════════════════════════════════════ */
  /* Cards → soft, rounded, gently floating; lift on hover */
  .card{border-radius:18px !important;border:1px solid var(--line-soft) !important;box-shadow:var(--shadow) !important;transition:box-shadow .28s ease, transform .28s ease}
  .card:hover{box-shadow:var(--shadow-lift) !important;transform:translateY(-2px)}
  .admin-stat{border-radius:18px !important}

  /* Form controls → rounded + clean */
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  select, textarea{border-radius:var(--radius) !important;border-color:var(--line) !important}
  input:focus, select:focus, textarea:focus{outline:none;border-color:var(--sage-dark) !important;box-shadow:0 0 0 3px rgba(111,158,94,.15)}

  /* Buttons → cleanly rounded; primary CTAs become full pills */
  button, .btn, .btn-pdf{border-radius:var(--radius) !important}
  #invNewInvoiceBtn, #invNewCommBtn, #invModalGenerate, #invModalCancel, .btn-pdf,
  #invBulkInvoiceBtn, #invBulkCommBtn{border-radius:999px !important}
  /* Progress + leaderboard bars → smooth pill tracks */
  .tier-track, .tier-track-bg, .tier-track-fill, .lb-bar, .lb-fill, .tat-bar, .tat-bar > span{border-radius:999px !important}

  /* Menus & dropdowns → soft bubble cards. NB: never style the .nav-branch-group
     wrapper (e.g. #branchDropdown) — it contains both the trigger and the
     absolutely-positioned flyout, so a border + overflow:hidden there boxes the
     trigger and clips the menu. Style the flyout (.nav-branch-menu) itself. */
  .profile-dropdown{border-radius:var(--radius-lg) !important;border:1px solid var(--line-soft) !important;box-shadow:var(--shadow-lift) !important}
  .switch-dropdown{border-radius:var(--radius-lg) !important;border:1px solid var(--line-soft) !important;box-shadow:var(--shadow-lift) !important;overflow:hidden}
  .topbar{box-shadow:0 1px 0 var(--line-soft), 0 10px 28px -22px rgba(14,14,12,.30)}
  /* Hide the clock before it can crowd the Marketing pill on laptop widths. */
  @media (max-width:1380px){ .topbar-inner .live-clock{display:none !important} }

  /* Sleek bubble nav flyouts (desktop) */
  @media (min-width:1081px){
    /* Premium top-nav — refined pill buttons (scoped to top-level items only) */
    nav.main{gap:1px;margin:0 12px;flex:1 1 auto;min-width:0;justify-content:center;flex-wrap:nowrap}
    .topbar-inner .brand{flex-shrink:0}
    /* The wordmark already reads "THE STOREY REAL ESTATE" — drop the redundant
       "Agents Portal / Write the next chapter" block so the nav can never overlap it. */
    .topbar-inner .brand-text-group,
    .topbar-inner .brand-portal-tag,
    .topbar-inner .brand-divider-desktop{display:none !important}
    .topbar-inner .live-clock, .topbar-inner .user-chip, .topbar-inner .switch-wrap{flex-shrink:0}
    nav.main > a, nav.main > .nav-branch-group > .nav-branch-trigger{
      display:inline-flex;align-items:center;gap:4px;
      margin-left:0 !important;padding:8px 11px !important;border-radius:999px !important;
      border:none !important;border-bottom:none !important;background:transparent !important;
      font-size:10.5px !important;letter-spacing:1.1px !important;font-weight:600 !important;line-height:1 !important;white-space:nowrap;
      color:var(--ink-2) !important;transition:background .2s ease,color .2s ease,box-shadow .2s ease !important}
    nav.main > .nav-branch-group > .nav-branch-trigger svg{transition:transform .25s ease;opacity:.55;flex:none}
    nav.main > a:hover, nav.main > .nav-branch-group > .nav-branch-trigger:hover,
    nav.main > .nav-branch-group:hover > .nav-branch-trigger,
    nav.main > .nav-branch-group.open > .nav-branch-trigger{
      background:rgba(43,33,20,.07) !important;color:var(--ink) !important}
    nav.main > .nav-branch-group:hover > .nav-branch-trigger svg,
    nav.main > .nav-branch-group.open > .nav-branch-trigger svg{transform:rotate(180deg);opacity:.9}
    nav.main > a.active, nav.main > .nav-branch-group > .nav-branch-trigger.active{
      background:var(--ink) !important;color:#F4EFE2 !important;
      box-shadow:0 6px 16px -7px rgba(14,14,12,.55) !important}
    nav.main > a.active:hover, nav.main > .nav-branch-group > .nav-branch-trigger.active:hover{
      background:#1c1916 !important;color:#F4EFE2 !important}
    nav.main .nav-branch-group.open > .nav-branch-menu{display:block !important}
    nav.main .nav-branch-menu{
      border-radius:18px !important;border:1px solid var(--line-soft) !important;
      background:var(--card) !important;box-shadow:var(--shadow-lift) !important;
      padding:8px !important;min-width:248px !important;margin-top:6px;overflow:hidden}
    nav.main .nav-branch-menu a{
      border-radius:12px !important;border-left:none !important;
      padding:13px 16px !important;min-height:0 !important;margin:1px 0;
      letter-spacing:1.6px !important;color:var(--muted) !important;transition:background .15s ease, color .15s ease, padding-left .15s ease}
    nav.main .nav-branch-menu a:hover{
      background:var(--sage-soft) !important;color:var(--ink) !important;
      border-left:none !important;padding-left:20px !important}
    nav.main .nav-branch-menu a.active{
      background:var(--sage-soft) !important;color:var(--ink) !important;font-weight:600 !important;border-left:none !important}
  }

  /* Pills, tags, badges → fully rounded */
  .you-tag, .lb-branch, .pd-badge, .tier-badge, .lbc-tier, .lbf-tier{border-radius:999px !important}

  /* Listing tiles → rounder, softer */
  .listing-tile{border-radius:16px !important;border:1px solid var(--line-soft) !important}
  .listing-tile:hover{box-shadow:var(--shadow-lift) !important}

  /* Leaderboard / table containers → rounded bubble surfaces */
  .lb-full, .lb-full-wrap, .admin-table-wrap, .admin-table{border-radius:18px !important}
  .lb-full .lbf-row:hover{background:rgba(184,134,11,.045)}

  /* Modals → soft bubble cards */
  #invModalCard, .modal-card, .welcome-modal-card{border-radius:var(--radius-lg) !important;box-shadow:var(--shadow-lift) !important}

  /* Section dividers in management → softer */
  .mgmt-zone-divider{border:none;border-top:1px solid var(--line-soft)}

  /* Leaderboards → rounded bubble boards */
  .lb-full-wrap{border-radius:20px !important;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line-soft) !important}

  /* The gold "featured #1" treatment belongs ONLY on the main Top-7 board.
     On the SECOND board (combined registered+pipeline) every agent — including
     the top person — takes the same space, so it reads as a clean even list. */
  .lb-combined .lbf-row.top1,
  .lb-combined .lbf-row.top2,
  .lb-combined .lbf-row.top3{
    background:transparent !important;border-left:none !important;box-shadow:none !important;
    border-bottom:1px solid var(--line) !important;
    padding-top:16px !important;padding-bottom:16px !important;padding-left:32px !important;padding-right:32px !important;}
  .lb-combined .lbf-row.top1::before{display:none !important}
  .lb-combined .lbf-row.you{background:#EFE9D7 !important;border-left:3px solid var(--ink) !important;padding-left:29px !important}
  .lb-combined .lbf-row.top1 .lbf-rank,
  .lb-combined .lbf-row.top2 .lbf-rank,
  .lb-combined .lbf-row.top3 .lbf-rank{font-size:30px !important;color:var(--muted) !important;font-style:italic !important;font-weight:300 !important}
  .lb-combined .lbf-row.top1 .lbf-name{font-size:21px !important;letter-spacing:-0.3px !important}
  .lb-combined .lbf-bio{display:none !important}

  /* Mobile: stack the combined board cleanly so each agent is one even row */
  @media (max-width:760px){
    .lb-combined .lbf-top{grid-template-columns:40px 44px 1fr !important;gap:10px !important;align-items:center}
    .lb-combined .lbc-tier{grid-column:1 / -1 !important;flex-direction:row !important;align-items:center !important;
      justify-content:flex-start !important;text-align:left !important;border-left:none !important;
      padding-left:0 !important;min-width:0 !important;margin-top:8px !important;gap:8px !important}
    .lb-combined .lbc-tier-name{font-size:19px !important}
    .lb-combined .lbf-row.top1,.lb-combined .lbf-row.top2,.lb-combined .lbf-row.top3{padding-left:18px !important;padding-right:18px !important}
    .lb-combined .lbf-row,.lb-combined .lbf-row.you{padding-left:18px !important;padding-right:18px !important}
    .lb-combined .lbf-rank,.lb-combined .lbf-row.top1 .lbf-rank{font-size:22px !important}
    .lb-combined .lbf-name,.lb-combined .lbf-row.top1 .lbf-name{font-size:17px !important}
  }

  /* ===================== v181 — password nudge + sales celebration ===================== */
  .pw-nudge{display:flex;align-items:center;gap:14px;background:#FBF6EC;border:1px solid var(--line);border-left:3px solid var(--sage-dark);border-radius:12px;padding:12px 16px;margin:0 0 18px;font-size:13px;color:var(--ink)}
  .pw-nudge-text{flex:1;min-width:0}
  .pw-nudge-cta{font-family:inherit;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;padding:9px 16px;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:999px;cursor:pointer;white-space:nowrap;transition:all .15s}
  .pw-nudge-cta:hover{background:var(--sage-dark);border-color:var(--sage-dark)}
  .pw-nudge-x{background:none;border:none;font-size:20px;color:var(--muted);cursor:pointer;line-height:1;padding:2px 6px;flex-shrink:0}
  .pw-nudge-x:hover{color:var(--ink)}

  .celebrate-strip{background:linear-gradient(135deg,#FBF6EC 0%,#F4ECD7 100%);border:1px solid var(--line);border-radius:18px;padding:26px 28px 24px;margin:0 0 28px;position:relative;overflow:hidden}
  .celebrate-strip .cs-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px;flex-wrap:wrap}
  .celebrate-strip h2{font-family:var(--font-display);font-size:27px;font-weight:300;margin:4px 0 0;color:var(--ink);letter-spacing:-0.4px}
  .celebrate-strip h2 em{font-style:italic;color:var(--sage-dark)}
  .celebrate-strip .cs-sub{font-size:12.5px;color:var(--muted);max-width:340px;text-align:right}
  .cs-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:13px}
  .cs-card{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px;min-width:0}
  .cs-avatar{width:46px;height:46px;border-radius:50%;background:var(--ink);color:#F4ECD7;display:grid;place-items:center;font-family:var(--font-display);font-size:16px;flex-shrink:0;overflow:hidden}
  .cs-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
  .cs-info{min-width:0;flex:1}
  .cs-prop{font-size:14.5px;font-weight:700;color:var(--ink);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .cs-agent{font-size:13px;color:var(--sage-dark);font-weight:600;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .cs-meta{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-top:3px}
  .cs-badge{flex-shrink:0;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;padding:5px 10px;border-radius:999px;align-self:flex-start}
  .cs-badge.sold{background:rgba(122,135,90,.14);color:var(--sage-dark);border:1px solid rgba(122,135,90,.3)}
  .cs-badge.reg{background:rgba(176,141,87,.14);color:#8A6A3A;border:1px solid rgba(176,141,87,.3)}
  @media(max-width:720px){
    .celebrate-strip{padding:20px 16px 18px}
    .celebrate-strip .cs-sub{text-align:left}
    .cs-list{grid-template-columns:1fr}
    .pw-nudge{flex-wrap:wrap}
    .pw-nudge-text{flex-basis:100%}
  }

/* ════════════════════════════════════════════════════════════════════
   v182 — COVER PAGE: greeting head + The Storey Feed + feature row
   ════════════════════════════════════════════════════════════════════ */
.cover-head{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:28px;
  padding:84px 40px 56px;margin:24px 0 26px;border-radius:var(--radius-lg);overflow:hidden;color:#F4F0E5}
.cover-head::before{content:"";position:absolute;inset:0;background-image:url('https://d21tw07c6rnmp0.cloudfront.net/media/uploads/148/pages/2023/9/148_4ff7bb49e893446c9e2854934797d485_t_w_1440_h_900.avif');background-size:cover;background-position:center;z-index:0;filter:saturate(.85) brightness(.8)}
.cover-head::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(10,10,9,.78) 0%,rgba(10,10,9,.55) 45%,rgba(10,10,9,.25) 100%);z-index:1}
.cover-head > *{position:relative;z-index:2}
.cover-head .eyebrow{color:#C9C3B5;letter-spacing:2.5px}
.cover-head h1{font-family:var(--font-display);font-weight:400;font-size:clamp(40px,5.4vw,68px);line-height:1.03;margin:14px 0 6px;color:#F4F0E5;letter-spacing:-1.4px}
.cover-head h1 em{font-style:italic;color:#E8C886;font-weight:300}
.cover-head .tagline{display:inline-block;margin-top:10px;font-family:var(--font-display);font-style:italic;font-size:15px;color:#D9D2BD;letter-spacing:.3px;border-top:1px solid rgba(217,210,189,.35);padding-top:12px}
.cover-head .congrats{margin-top:16px}
.ch-aside{display:flex;align-items:center;gap:10px}

/* ── The Storey Feed ───────────────────────────────────────────── */
.storey-feed{background:linear-gradient(150deg,#FBF6EC 0%,#F2E9D2 100%);border:1px solid var(--line);
  border-radius:var(--radius-lg);padding:30px 32px 28px;margin:0 0 26px;position:relative;overflow:hidden}
.storey-feed::before{content:"";position:absolute;top:-70px;right:-70px;width:230px;height:230px;border-radius:50%;
  background:radial-gradient(circle,rgba(201,169,97,.16) 0%,rgba(201,169,97,0) 70%);pointer-events:none}
.sf-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px;flex-wrap:wrap}
.sf-head h2{font-family:var(--font-display);font-size:34px;font-weight:300;margin:4px 0 0;color:var(--ink);letter-spacing:-0.6px}
.sf-head h2 em{font-style:italic;color:var(--sage-dark)}
.sf-sub{font-size:12.5px;color:var(--muted);max-width:330px;text-align:right}
.sf-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px}
.sf-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;
  padding:16px 18px 13px;min-width:0;box-shadow:0 1px 2px rgba(42,33,26,.04);transition:box-shadow .2s,transform .2s}
.sf-card:hover{box-shadow:0 10px 28px rgba(42,33,26,.10);transform:translateY(-2px)}
.sf-card.featured{grid-column:1 / -1;flex-direction:row;align-items:center;gap:20px;padding:22px 26px;
  background:linear-gradient(120deg,#2A211A 0%,#3B2E22 100%);border:1px solid rgba(201,169,97,.35)}
.sf-card.featured .sf-prop{color:#F4F0E5;font-size:clamp(19px,2.4vw,26px);font-family:var(--font-display);font-weight:400;white-space:normal;letter-spacing:-0.3px}
.sf-card.featured .sf-agent{color:#E8C886}
.sf-card.featured .sf-meta{color:#B7AD99}
.sf-top{display:flex;align-items:center;gap:13px;min-width:0}
.sf-avatar{width:48px;height:48px;border-radius:50%;background:var(--ink);color:#F4ECD7;display:grid;place-items:center;
  font-family:var(--font-display);font-size:17px;flex-shrink:0;overflow:hidden;border:2px solid rgba(201,169,97,.45)}
.sf-card.featured .sf-avatar{width:64px;height:64px;font-size:22px}
.sf-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.sf-info{min-width:0;flex:1}
.sf-prop{font-size:15px;font-weight:700;color:var(--ink);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sf-agent{font-size:13px;color:var(--sage-dark);font-weight:600;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sf-meta{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-top:3px}
.sf-badge{flex-shrink:0;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;padding:5px 11px;border-radius:999px;align-self:flex-start}
.sf-badge.sold{background:rgba(122,135,90,.14);color:var(--sage-dark);border:1px solid rgba(122,135,90,.3)}
.sf-badge.reg{background:rgba(176,141,87,.16);color:#8A6A3A;border:1px solid rgba(176,141,87,.32)}
.sf-card.featured .sf-badge.sold{background:rgba(232,200,134,.16);color:#E8C886;border-color:rgba(232,200,134,.4)}
.sf-card.featured .sf-badge.reg{background:rgba(232,200,134,.16);color:#E8C886;border-color:rgba(232,200,134,.4)}
/* reaction bar */
.rx-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px;padding-top:11px;border-top:1px dashed var(--line)}
.sf-card.featured .rx-bar{border-top-color:rgba(232,200,134,.25);margin-top:0;padding-top:0;border-top:none}
.rx-chip{display:inline-flex;align-items:center;gap:5px;font-size:14px;line-height:1;padding:6px 10px;border-radius:999px;
  border:1px solid var(--line);background:#FBF8F0;cursor:pointer;transition:all .15s;font-family:inherit;user-select:none}
.rx-chip .rx-n{font-size:11px;font-weight:700;color:var(--muted)}
.rx-chip:hover{border-color:var(--sage);transform:scale(1.08)}
.rx-chip.mine{background:rgba(122,135,90,.16);border-color:var(--sage-dark)}
.rx-chip.mine .rx-n{color:var(--sage-dark)}
.rx-chip.rx-zero .rx-n{display:none}
.rx-chip.rx-zero{opacity:.55}
.rx-chip.rx-zero:hover{opacity:1}
.sf-card.featured .rx-chip{background:rgba(244,240,229,.08);border-color:rgba(232,200,134,.3);color:#F4F0E5}
.sf-card.featured .rx-chip .rx-n{color:#E8C886}
.sf-card.featured .rx-chip.mine{background:rgba(232,200,134,.22);border-color:#E8C886}
.sf-feat-right{display:flex;flex-direction:column;gap:12px;align-items:flex-end;margin-left:auto;flex-shrink:0}
@keyframes rxPop{0%{transform:scale(1)}45%{transform:scale(1.35)}100%{transform:scale(1)}}
.rx-chip.popped{animation:rxPop .35s ease}

/* ── Featured tools row ────────────────────────────────────────── */
.feature-row{display:grid;grid-template-columns:1fr;gap:18px;margin:0 0 30px}
.feature-row:has(.feat-tat .tat[style*="display: none"]) .feat-tat{display:none}
.feat-card{border-radius:var(--radius-lg);overflow:hidden;min-width:0}
.feat-prospecting{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;
  padding:44px 46px;background:linear-gradient(120deg,#191512 0%,#2E2418 100%);color:#F4F0E5}
.feat-prospecting::after{content:"";position:absolute;top:-60px;right:-60px;width:240px;height:240px;border-radius:50%;
  background:radial-gradient(circle,rgba(201,169,97,.22) 0%,rgba(201,169,97,0) 70%);pointer-events:none}
.feat-prospecting .eyebrow{color:#D9B877;letter-spacing:3px}
.feat-prospecting h2{font-family:var(--font-display);font-weight:400;font-size:clamp(30px,3.4vw,44px);line-height:1.04;margin:14px 0 12px;color:#F4F0E5;letter-spacing:-0.9px}
.feat-prospecting h2 em{font-style:italic;color:#E8C886;font-weight:300}
.feat-prospecting p{color:#C9C0AE;font-size:14px;line-height:1.7;max-width:560px;margin:0 0 22px}
.feat-tat .tat{margin:0}
@media(max-width:880px){
  .cover-head{padding:56px 24px 38px;align-items:flex-start;flex-direction:column}
  .storey-feed{padding:22px 18px 20px}
  .sf-sub{text-align:left}
  .sf-list{grid-template-columns:1fr}
  .sf-card.featured{flex-direction:column;align-items:flex-start;gap:14px}
  .sf-feat-right{align-items:flex-start;margin-left:0}
  .feat-prospecting{padding:32px 24px}
}

/* ════ v182 — Prospecting Studio: guided send queue + market share card ════ */
.cmpq-progress{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.cmpq-bar{flex:1;height:8px;border-radius:999px;background:rgba(122,135,90,.15);overflow:hidden}
.cmpq-bar > div{height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,#7A875A,#4E8C6A);transition:width .35s ease}
.cmpq-count{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;font-weight:700;color:var(--muted);white-space:nowrap}
.cmpq-owner{display:flex;align-items:center;gap:14px;background:#FBF8F0;border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:14px}
.cmpq-av{width:52px;height:52px;border-radius:50%;background:var(--ink);color:#F4ECD7;display:grid;place-items:center;font-weight:700;font-size:17px;flex-shrink:0}
.cmpq-name{font-size:17px;font-weight:700;color:var(--ink)}
.cmpq-sub{font-size:12.5px;color:var(--muted);margin-top:2px}
.cmpq-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:14px}
.cmpq-send{text-decoration:none}
.cmpcard-wrap{margin-top:14px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#EFE9DA;display:grid;place-items:center;padding:12px}
.cmpcard-wrap canvas{width:100%;max-width:330px;height:auto;border-radius:6px;box-shadow:0 8px 28px rgba(42,33,26,.18)}

/* ════ v182 — MENU REFINEMENT LAYER ════
   One language for every menu: pill triggers, 18px bubble flyouts,
   12px rounded items, sage-soft hovers, charcoal actives. */
@keyframes navMenuIn{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1081px){
  nav.main .nav-branch-menu{animation:navMenuIn .18s ease;border-top:2px solid rgba(201,169,97,.55) !important}
  nav.main .nav-branch-menu a.active::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--sage-dark);margin-right:8px;vertical-align:2px}
}
/* profile dropdown — same family as the nav flyouts */
.profile-dropdown .pd-item{border-radius:12px;margin:1px 6px;transition:background .15s ease,padding-left .15s ease}
.profile-dropdown .pd-item:hover{background:var(--sage-soft);padding-left:18px}
.profile-dropdown .pd-header{padding-top:16px}
/* mobile sidebar drawer — rounded items, clear active, softer chrome */
.sidebar{border-right:none !important;box-shadow:14px 0 44px rgba(14,14,12,.20) !important}
.sb-header{padding:22px 24px 18px !important}
.sb-item{margin:2px 10px !important;width:auto !important;padding:13px 16px !important;border-radius:12px !important;transition:background .15s ease,padding-left .15s ease !important}
.sb-item:hover{background:var(--sage-soft) !important;padding-left:20px !important}
.sb-item.active{background:var(--ink) !important;color:#F4EFE2 !important;font-weight:600 !important}
.sb-item.active svg{stroke:#F4EFE2 !important}
/* mobile bottom tab bar (if present) — consistent rounding + safe area */
.page-nav-mobile{border-radius:18px 18px 0 0;box-shadow:0 -10px 30px rgba(14,14,12,.12)}
/* the "Switch agent" + small outline buttons — one pill system */
.switch, .cmp-ghost{border-radius:999px !important}

/* ════ v182 — OUR STOREY vision page ════ */
.vis-hero{text-align:center;padding:90px 24px 60px;max-width:760px;margin:0 auto}
.vis-hero h1{font-family:var(--font-display);font-weight:400;font-size:clamp(46px,6vw,76px);letter-spacing:-1.4px;margin:16px 0 20px;color:var(--ink)}
.vis-hero h1 em{font-style:italic;color:var(--sage-dark);font-weight:300}
.vis-lead{font-size:16px;line-height:1.75;color:var(--ink-2);max-width:640px;margin:0 auto}
.vis-section{max-width:1020px;margin:0 auto 64px;padding:0 24px;text-align:center}
.vis-section h2{font-family:var(--font-display);font-weight:300;font-size:clamp(26px,3.2vw,38px);letter-spacing:-0.6px;margin:10px 0 30px;color:var(--ink)}
.vis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;text-align:left}
.vis-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px 26px 24px;transition:transform .2s,box-shadow .2s}
.vis-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(42,33,26,.10)}
.vis-num{font-family:var(--font-display);font-style:italic;font-size:15px;color:#B08D57;margin-bottom:12px;letter-spacing:1px}
.vis-card h3{font-size:17px;font-weight:700;color:var(--ink);margin:0 0 10px;letter-spacing:-0.2px}
.vis-card p{font-size:13.5px;line-height:1.7;color:var(--muted);margin:0}
.vis-timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;text-align:left;position:relative}
.vis-step{background:linear-gradient(150deg,#FBF6EC,#F2E9D2);border:1px solid var(--line);border-radius:18px;padding:26px}
.vis-dot{width:12px;height:12px;border-radius:50%;background:var(--sage-dark);box-shadow:0 0 0 5px rgba(122,135,90,.18);margin-bottom:16px}
.vis-step h4{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700;color:#8A6A3A;margin:0 0 10px}
.vis-step p{font-size:13.5px;line-height:1.7;color:var(--ink-2);margin:0}
.vis-closing{padding:30px 24px 90px}
.vis-quote{font-family:var(--font-display);font-style:italic;font-size:clamp(24px,3vw,34px);color:var(--ink);margin:0 0 10px}
.vis-sign{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:var(--muted);font-weight:600}
