/* OkulYol Admin tasarim sistemi — kaynak: lale_koleji_yonetim_admin_mockup.html
   Bu dosya elle duzenlenebilir; mockup degisirse senkron tut. */
  :root{
    --navy-950:#081A33; --navy-900:#0F2A4F; --navy-800:#14345E; --navy-700:#1E3A5F;
    --navy-600:#2B4F7E; --navy-500:#4A6FA5; --navy-300:#A8BBD4; --navy-100:#E8EEF7;
    --navy-50:#F4F7FB;
    --amber-700:#8B6F2E; --amber-600:#A88842; --amber-500:#C9A96E; --amber-300:#E0C896;
    --amber-100:#F4E9CF; --amber-50:#FAF5E8;
    --peach-500:#E89B73; --peach-300:#F4D5C5; --peach-100:#FBEDE4;
    --gray-950:#0A0A0A; --gray-900:#1A1A1A; --gray-800:#262626; --gray-700:#404040;
    --gray-600:#525252; --gray-500:#737373; --gray-400:#A3A3A3; --gray-300:#D4D4D4;
    --gray-200:#E5E5E5; --gray-150:#EDEDED; --gray-100:#F5F5F5; --gray-50:#FAFAFA;
    --white:#FFFFFF;
    --success:#16A34A; --success-bg:#DCFCE7; --success-50:#F0FDF4;
    --warning:#EA580C; --warning-bg:#FFEDD5; --warning-50:#FFF7ED;
    --error:#DC2626; --error-bg:#FEE2E2; --error-50:#FEF2F2;
    --info:#2563EB; --info-bg:#DBEAFE; --info-50:#EFF6FF;
    --page-bg:#FAF6EE;
    --display:'Plus Jakarta Sans',system-ui,sans-serif;
    --body:'Inter',system-ui,sans-serif;
    --mono:'JetBrains Mono','SF Mono',Consolas,monospace;
    --shadow-sm:0 1px 2px rgba(15,42,79,0.05);
    --shadow-md:0 2px 4px rgba(15,42,79,0.04), 0 4px 12px rgba(15,42,79,0.06);
    --shadow-lg:0 4px 6px rgba(15,42,79,0.05), 0 12px 30px rgba(15,42,79,0.1);
    --shadow-browser:0 40px 100px -20px rgba(15,42,79,0.22), 0 16px 40px -12px rgba(15,42,79,0.14);
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html,body{background:var(--page-bg);color:var(--gray-900);font-family:var(--body);-webkit-font-smoothing:antialiased;line-height:1.5}
  body{background-image:radial-gradient(circle at 10% 0%, rgba(30,58,95,0.045) 0%, transparent 40%), radial-gradient(circle at 90% 100%, rgba(201,169,110,0.07) 0%, transparent 50%)}
  button{font-family:inherit;cursor:pointer;border:none;background:none}

  /* HERO */
  .hero{max-width:1480px;margin:0 auto;padding:72px 48px 40px;display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:48px}
  .brand-mark{display:flex;align-items:center;gap:16px}
  .brand-logo{width:64px;height:64px;border-radius:50%;background:var(--navy-700);display:grid;place-items:center;box-shadow:0 4px 16px rgba(15,42,79,0.22)}
  .brand-logo svg{width:36px;height:36px}
  .brand-text{display:flex;flex-direction:column;gap:2px}
  .brand-text .top{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:0.16em;color:var(--amber-700);text-transform:uppercase}
  .brand-text .name{font-family:var(--display);font-weight:800;font-size:22px;color:var(--navy-900);letter-spacing:-0.01em}
  .hero-title{text-align:center}
  .hero-title .eyebrow{font-family:var(--display);font-weight:600;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:var(--amber-600);margin-bottom:12px}
  .hero-title h1{font-family:var(--display);font-weight:800;font-size:clamp(32px,4vw,52px);line-height:1.05;letter-spacing:-0.025em;color:var(--navy-950)}
  .hero-title h1 em{font-style:normal;color:var(--navy-700);font-weight:500}
  .hero-title .sub{margin-top:14px;color:var(--gray-600);font-size:14px;max-width:620px;margin-left:auto;margin-right:auto;line-height:1.55}
  .hero-meta{text-align:right}
  .hero-meta .label{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--amber-700)}
  .hero-meta .value{font-family:var(--display);font-weight:700;color:var(--navy-900);font-size:16px;margin-top:2px;letter-spacing:-0.01em}
  .hero-divider{max-width:1480px;margin:0 auto;padding:0 48px}
  .hero-divider .line{height:1px;background:linear-gradient(to right,transparent,var(--amber-300),transparent);opacity:0.7}

  /* WHITE LABEL NOTICE */
  .wl-notice{max-width:1480px;margin:24px auto 0;padding:14px 24px;background:var(--peach-100);border:1px solid var(--peach-300);border-radius:12px;display:flex;align-items:center;gap:14px;font-size:12.5px;color:var(--navy-900);line-height:1.55}
  .wl-notice .icon{width:32px;height:32px;border-radius:8px;background:var(--navy-700);color:var(--peach-300);display:grid;place-items:center;flex-shrink:0}
  .wl-notice .icon svg{width:16px;height:16px}
  .wl-notice strong{font-family:var(--display);font-weight:700;color:var(--navy-900)}

  /* PAGES GRID */
  .pages{max-width:1480px;margin:0 auto;padding:56px 32px 100px;display:flex;flex-direction:column;gap:80px}
  .page-card{display:flex;flex-direction:column;align-items:center;gap:24px}
  .page-caption{text-align:center;max-width:760px}
  .page-caption .num{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:0.2em;color:var(--amber-700);text-transform:uppercase}
  .page-caption .title{font-family:var(--display);font-weight:800;font-size:24px;color:var(--navy-950);margin-top:4px;letter-spacing:-0.015em}
  .page-caption .desc{font-size:14px;color:var(--gray-600);margin-top:8px;line-height:1.55}

  /* BROWSER FRAME */
  .browser{width:100%;max-width:1320px;margin:0 auto;background:var(--gray-900);border-radius:14px;box-shadow:var(--shadow-browser);overflow:hidden}
  .br-chrome{height:42px;background:linear-gradient(180deg,#2A2A2A 0%,#1F1F1F 100%);display:flex;align-items:center;padding:0 14px;gap:14px;border-bottom:1px solid rgba(255,255,255,0.08)}
  .tdots{display:flex;gap:6px}
  .tdots span{width:11px;height:11px;border-radius:50%}
  .tdots span:nth-child(1){background:#FF5F57}
  .tdots span:nth-child(2){background:#FEBC2E}
  .tdots span:nth-child(3){background:#28C840}
  .url-bar{flex:1;height:26px;background:rgba(255,255,255,0.08);border-radius:7px;display:flex;align-items:center;padding:0 11px;gap:8px;color:rgba(255,255,255,0.85);font-family:var(--mono);font-size:11px;max-width:520px;margin:0 auto}
  .url-bar svg{width:11px;height:11px;color:rgba(255,255,255,0.5);flex-shrink:0}
  .url-bar .scheme{color:rgba(255,255,255,0.5)}
  .br-actions{display:flex;gap:8px;color:rgba(255,255,255,0.5)}
  .br-actions svg{width:13px;height:13px}
  .br-body{height:780px;background:var(--gray-50);overflow:hidden;position:relative;display:flex}

  /* SIDEBAR */
  .sb{width:228px;background:var(--navy-950);color:rgba(255,255,255,0.85);flex-shrink:0;display:flex;flex-direction:column;padding:18px 0}
  .sb-brand{padding:0 18px 16px;border-bottom:1px solid rgba(255,255,255,0.06);display:flex;align-items:center;gap:11px}
  .sb-brand .seal{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,0.08);border:1px solid rgba(201,169,110,0.2);display:grid;place-items:center;flex-shrink:0}
  .sb-brand .seal svg{width:20px;height:20px}
  .sb-brand .info .super{font-family:var(--display);font-size:8.5px;color:var(--amber-300);letter-spacing:0.18em;text-transform:uppercase;font-weight:700}
  .sb-brand .info .name{font-family:var(--display);font-weight:700;font-size:13px;color:var(--white);letter-spacing:-0.01em}
  .sb-sec{padding:16px 18px 5px;font-family:var(--display);font-size:8.5px;color:rgba(255,255,255,0.35);letter-spacing:0.18em;text-transform:uppercase;font-weight:700}
  .sb-nav{display:flex;flex-direction:column;padding:0 11px}
  .sb-it{display:flex;align-items:center;gap:11px;padding:7px 11px;border-radius:7px;color:rgba(255,255,255,0.7);font-size:12.5px;font-weight:500;font-family:var(--display);margin-bottom:1px}
  .sb-it svg{width:15px;height:15px;flex-shrink:0;opacity:0.75}
  .sb-it .count{margin-left:auto;background:rgba(255,255,255,0.06);padding:1px 6px;border-radius:99px;font-size:9.5px;font-weight:700;color:rgba(255,255,255,0.55);font-family:var(--mono)}
  .sb-it.active{background:rgba(201,169,110,0.12);color:var(--amber-300)}
  .sb-it.active svg{opacity:1}
  .sb-it.active .count{background:rgba(201,169,110,0.2);color:var(--amber-300)}
  .sb-it.warn .count{background:rgba(232,155,115,0.2);color:var(--peach-500)}
  .sb-foot{margin-top:auto;padding:14px 18px 0;border-top:1px solid rgba(255,255,255,0.06);display:flex;align-items:center;gap:10px}
  .sb-foot .av{width:30px;height:30px;border-radius:50%;background:var(--amber-600);color:var(--white);display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:11px}
  .sb-foot .who{flex:1;min-width:0}
  .sb-foot .who .un{font-family:var(--display);font-weight:600;font-size:11.5px;color:var(--white)}
  .sb-foot .who .rl{font-size:9.5px;color:rgba(255,255,255,0.5);font-weight:500}
  .sb-foot svg{width:13px;height:13px;color:rgba(255,255,255,0.4)}

  /* MAIN AREA */
  .am{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--gray-50)}
  .tb{height:52px;background:var(--white);border-bottom:1px solid var(--gray-200);display:flex;align-items:center;padding:0 22px;gap:14px;flex-shrink:0}
  .bc{font-size:11.5px;color:var(--gray-500);font-weight:500;display:flex;align-items:center;gap:6px}
  .bc .cb{color:var(--gray-500)}
  .bc .cb.cur{color:var(--navy-900);font-weight:600}
  .bc .sp{color:var(--gray-300)}
  .tsearch{margin-left:auto;width:260px;height:34px;background:var(--gray-100);border-radius:9px;display:flex;align-items:center;padding:0 12px;gap:10px}
  .tsearch svg{width:13px;height:13px;color:var(--gray-500)}
  .tsearch .ph{font-size:12px;color:var(--gray-500);font-weight:500}
  .tsearch .kbd{margin-left:auto;background:var(--white);border:1px solid var(--gray-200);border-radius:4px;padding:1px 5px;font-family:var(--mono);font-size:9.5px;color:var(--gray-500)}
  .tic{width:34px;height:34px;border-radius:9px;background:var(--gray-100);color:var(--gray-700);display:grid;place-items:center;position:relative}
  .tic svg{width:15px;height:15px}
  .tic .ndot{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:var(--peach-500);border:1.5px solid var(--white)}

  .pg{flex:1;overflow-y:auto;padding:22px 28px 28px}
  .pgh{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:22px;gap:16px}
  .pgh .eyebrow{font-family:var(--display);font-size:9.5px;color:var(--amber-700);letter-spacing:0.2em;text-transform:uppercase;font-weight:700}
  .pgh h1{font-family:var(--display);font-weight:800;font-size:22px;color:var(--navy-950);letter-spacing:-0.02em;margin-top:3px}
  .pgh .sub{font-size:13px;color:var(--gray-600);margin-top:5px}
  .pgh .actions{display:flex;gap:9px;align-items:center}
  .btn{height:36px;padding:0 14px;border-radius:8px;font-family:var(--display);font-weight:600;font-size:12.5px;display:flex;align-items:center;gap:7px;white-space:nowrap;flex-shrink:0}
  .btn svg{width:14px;height:14px}
  .btn.primary{background:var(--navy-700);color:var(--white)}
  .btn.amber{background:var(--amber-500);color:var(--navy-900)}
  .btn.ghost{background:var(--white);color:var(--navy-700);border:1px solid var(--gray-200)}
  .btn.danger{background:var(--error);color:var(--white)}

  /* LOGIN STYLES */
  .lg-screen{flex:1;display:grid;grid-template-columns:1fr 0.85fr;overflow:hidden}
  .lg-left{background:linear-gradient(160deg,var(--navy-800) 0%,var(--navy-950) 100%);color:var(--white);padding:36px 42px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}
  .lg-left::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 20% 20%, rgba(201,169,110,0.15) 0%, transparent 50%), radial-gradient(circle at 80% 80%, rgba(244,213,197,0.08) 0%, transparent 50%)}
  .lg-left .top{position:relative}
  .lg-left .lg-brand{display:flex;align-items:center;gap:14px;margin-bottom:32px}
  .lg-left .lg-brand .seal{width:54px;height:54px;border-radius:50%;background:rgba(255,255,255,0.08);border:1px solid rgba(201,169,110,0.3);display:grid;place-items:center}
  .lg-left .lg-brand .seal svg{width:30px;height:30px}
  .lg-left .lg-brand .info .top{font-family:var(--display);font-size:9.5px;color:var(--amber-300);letter-spacing:0.18em;text-transform:uppercase;font-weight:700}
  .lg-left .lg-brand .info .nm{font-family:var(--display);font-weight:800;font-size:18px;letter-spacing:-0.01em;margin-top:2px}
  .lg-left h2{font-family:var(--display);font-weight:800;font-size:28px;letter-spacing:-0.02em;line-height:1.15;position:relative}
  .lg-left h2 em{font-style:normal;color:var(--amber-300);font-weight:500}
  .lg-left .lg-desc{margin-top:12px;font-size:13.5px;color:rgba(255,255,255,0.7);line-height:1.55;max-width:380px;position:relative}
  .lg-stats{margin-top:24px;display:grid;grid-template-columns:repeat(3,1fr);gap:11px;position:relative}
  .lg-st{background:rgba(255,255,255,0.06);border:1px solid rgba(201,169,110,0.18);border-radius:13px;padding:14px}
  .lg-st .nm{font-family:var(--display);font-weight:800;font-size:22px;color:var(--amber-300);letter-spacing:-0.01em}
  .lg-st .lb{font-size:10px;color:rgba(255,255,255,0.65);margin-top:4px;letter-spacing:0.04em}
  .lg-foot-l{position:relative;display:flex;align-items:center;justify-content:space-between;padding-top:18px;border-top:1px solid rgba(255,255,255,0.08)}
  .lg-foot-l .scp-tag{font-family:var(--display);font-weight:700;font-size:9.5px;color:var(--amber-300);letter-spacing:0.18em;text-transform:uppercase}
  .lg-foot-l .by{font-size:10.5px;color:rgba(255,255,255,0.4);margin-top:2px}
  .lg-foot-l .ver{font-family:var(--mono);font-size:10.5px;color:rgba(255,255,255,0.4)}

  .lg-right{padding:42px 50px;display:flex;flex-direction:column;justify-content:center;background:var(--white)}
  .lg-right .av-cn{display:flex;justify-content:center;margin-bottom:16px}
  .lg-right .av-cn .av{width:56px;height:56px;border-radius:50%;background:var(--navy-700);color:var(--amber-300);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:20px;box-shadow:0 6px 18px rgba(30,58,95,0.25)}
  .lg-right h3{font-family:var(--display);font-weight:800;font-size:21px;color:var(--navy-950);letter-spacing:-0.02em;text-align:center}
  .lg-right .helper{margin-top:5px;color:var(--gray-600);font-size:12.5px;text-align:center;line-height:1.5}
  .lg-field{margin-top:18px}
  .lg-field label{font-family:var(--display);font-weight:600;font-size:10.5px;letter-spacing:0.08em;color:var(--navy-700);text-transform:uppercase;display:block;margin-bottom:6px}
  .lg-input{height:42px;background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:10px;display:flex;align-items:center;padding:0 13px;gap:10px}
  .lg-input.focus{background:var(--white);border-color:var(--navy-700);box-shadow:0 0 0 3px rgba(30,58,95,0.08)}
  .lg-input svg{width:14px;height:14px;color:var(--gray-500)}
  .lg-input .val{font-family:var(--body);font-size:13px;color:var(--navy-900);font-weight:500;flex:1}
  .lg-input .val.muted{color:var(--gray-400)}
  .lg-input .show{font-family:var(--display);font-size:10.5px;font-weight:600;color:var(--amber-700);letter-spacing:0.06em;text-transform:uppercase}
  .lg-2fa{margin-top:14px;background:var(--amber-50);border:1px solid var(--amber-300);border-radius:10px;padding:10px 12px;display:flex;align-items:center;gap:10px}
  .lg-2fa .ic{width:30px;height:30px;border-radius:8px;background:var(--amber-500);color:var(--white);display:grid;place-items:center;flex-shrink:0}
  .lg-2fa .ic svg{width:14px;height:14px}
  .lg-2fa .tx{flex:1;font-size:11px;color:var(--navy-900);line-height:1.4}
  .lg-2fa .tx strong{font-family:var(--display);font-weight:700;display:block;font-size:12px}
  .lg-row{display:flex;align-items:center;justify-content:space-between;margin-top:14px;font-size:11.5px}
  .lg-row .remember{display:flex;align-items:center;gap:7px;color:var(--gray-700)}
  .lg-row .remember .bx{width:14px;height:14px;border-radius:4px;background:var(--navy-700);display:grid;place-items:center}
  .lg-row .remember .bx svg{width:9px;height:9px;color:var(--white)}
  .lg-row a{color:var(--amber-700);font-weight:600;text-decoration:none}
  .lg-btn{margin-top:18px;height:46px;background:var(--navy-700);color:var(--white);border-radius:11px;display:flex;align-items:center;justify-content:center;gap:9px;font-family:var(--display);font-weight:700;font-size:13.5px;letter-spacing:0.04em;box-shadow:0 6px 18px -4px rgba(30,58,95,0.32)}
  .lg-btn svg{width:15px;height:15px}
  .lg-sso{margin-top:12px;display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--gray-600);justify-content:center}
  .lg-sso .line{flex:1;height:1px;background:var(--gray-200)}
  .lg-sso-btn{margin-top:10px;height:40px;background:var(--white);border:1px solid var(--gray-300);border-radius:10px;display:flex;align-items:center;justify-content:center;gap:9px;font-family:var(--display);font-weight:600;font-size:12px;color:var(--navy-900)}
  .lg-sso-btn svg{width:14px;height:14px;color:var(--navy-700)}
  .lg-kvkk{margin-top:18px;font-size:10px;color:var(--gray-500);text-align:center;line-height:1.5}
  .lg-kvkk u{color:var(--navy-700);text-decoration:underline;text-decoration-color:var(--amber-500)}

  /* DASHBOARD STYLES */
  .ds-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}
  .ds-st{background:var(--white);border:1px solid var(--gray-200);border-radius:13px;padding:16px 18px;position:relative;overflow:hidden}
  .ds-st::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gray-300)}
  .ds-st.success::before{background:var(--success)}
  .ds-st.navy::before{background:var(--navy-700)}
  .ds-st.amber::before{background:var(--amber-500)}
  .ds-st.peach::before{background:var(--peach-500)}
  .ds-st .row1{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
  .ds-st .ic{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:var(--white)}
  .ds-st .ic svg{width:16px;height:16px}
  .ds-st.success .ic{background:var(--success)}
  .ds-st.navy .ic{background:var(--navy-700)}
  .ds-st.amber .ic{background:var(--amber-500);color:var(--navy-900)}
  .ds-st.peach .ic{background:var(--peach-500)}
  .ds-st .delta{font-family:var(--display);font-weight:700;font-size:10.5px;padding:3px 7px;border-radius:5px}
  .ds-st .delta.up{background:var(--success-50);color:var(--success)}
  .ds-st .delta.warn{background:var(--peach-100);color:var(--peach-500)}
  .ds-st .delta.flat{background:var(--gray-100);color:var(--gray-600)}
  .ds-st .big{font-family:var(--display);font-weight:800;font-size:28px;color:var(--navy-950);letter-spacing:-0.02em;line-height:1}
  .ds-st .small{font-family:var(--display);font-weight:600;font-size:15px;color:var(--navy-700);margin-left:5px}
  .ds-st .lb{font-family:var(--display);font-weight:600;font-size:11px;color:var(--gray-600);margin-top:4px}
  .ds-st .lb strong{color:var(--navy-900)}

  .ds-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;margin-bottom:22px}
  .ds-card{background:var(--white);border:1px solid var(--gray-200);border-radius:13px;padding:16px 18px}
  .ds-card .hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
  .ds-card .hd h3{font-family:var(--display);font-weight:700;font-size:14px;color:var(--navy-950);letter-spacing:-0.01em}
  .ds-card .hd .more{font-family:var(--display);font-weight:600;font-size:11px;color:var(--amber-700);letter-spacing:0.06em;text-transform:uppercase}

  /* Yapay Zeka — AI ETA doğruluk kartı (semantik token; hardcoded hex yok) */
  .ai-card{position:relative;overflow:hidden}
  .ai-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,var(--info),var(--navy-500))}
  .ai-eta{display:flex;flex-direction:column;gap:15px}
  .ai-eta.empty{flex-direction:row;align-items:flex-start;gap:14px}
  .ai-eta-hero{display:flex;align-items:flex-start;gap:14px}
  .ai-eta .ic{width:44px;height:44px;border-radius:11px;background:var(--info-bg);color:var(--info);display:grid;place-items:center;flex-shrink:0}
  .ai-eta .ic svg{width:22px;height:22px}
  .ai-eta .ic.muted{background:var(--gray-100);color:var(--gray-400)}
  .ai-eta-hb{flex:1;min-width:0}
  .ai-eta-hb .val{display:flex;align-items:baseline;gap:7px}
  .ai-eta-hb .big{font-family:var(--display);font-weight:800;font-size:30px;color:var(--navy-950);letter-spacing:-0.02em;line-height:1}
  .ai-eta-hb .small{font-family:var(--display);font-weight:600;font-size:13px;color:var(--navy-700)}
  .ai-eta-hb .cap{font-size:11.5px;color:var(--gray-600);margin-top:6px;line-height:1.55;max-width:560px}
  .ai-eta-hb .ai-empty-t{font-family:var(--display);font-weight:800;font-size:17px;color:var(--navy-900);letter-spacing:-0.01em}
  .ai-badge{font-family:var(--display);font-weight:700;font-size:11px;padding:5px 10px;border-radius:6px;white-space:nowrap;flex-shrink:0;align-self:flex-start}
  .ai-badge.up{background:var(--success-50);color:var(--success)}
  .ai-badge.flat{background:var(--gray-100);color:var(--gray-600)}
  .ai-eta-meta{display:flex;gap:26px;flex-wrap:wrap;border-top:1px solid var(--gray-150);padding-top:13px}
  .ai-eta-meta .mi{display:flex;flex-direction:column;gap:3px;min-width:0}
  .ai-eta-meta .k{font-family:var(--display);font-weight:700;font-size:8.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--gray-500)}
  .ai-eta-meta .v{font-family:var(--display);font-weight:700;font-size:13px;color:var(--navy-900)}
  .ai-eta-meta .v.mono{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--gray-600);word-break:break-all}

  .ds-map{height:280px;background:#E8E5DC;border-radius:11px;position:relative;overflow:hidden}
  .ds-map svg{width:100%;height:100%;display:block}
  .ds-map .lp{position:absolute;width:18px;height:18px;border-radius:50%;background:var(--navy-700);border:2px solid var(--white);box-shadow:0 3px 8px rgba(15,42,79,0.3)}
  .ds-map .lp::after{content:'';position:absolute;inset:-3px;border-radius:50%;border:2px solid var(--amber-500);opacity:0.7}
  .ds-map .lp.amber{background:var(--amber-500)}
  .ds-map .lp.peach{background:var(--peach-500)}
  .ds-map .lp.peach::after{border-color:var(--peach-500);opacity:0.5}
  .ds-map .school-mk{position:absolute;width:34px;height:34px;border-radius:50%;background:var(--navy-900);color:var(--amber-300);display:grid;place-items:center;border:2px solid var(--white);box-shadow:0 4px 12px rgba(15,42,79,0.3)}
  .ds-map .school-mk svg{width:16px;height:16px}
  .ds-map .legend{position:absolute;bottom:10px;left:10px;background:var(--white);border-radius:9px;padding:8px 11px;display:flex;gap:14px;box-shadow:0 4px 10px rgba(0,0,0,0.08);font-size:11px}
  .ds-map .legend .item{display:flex;align-items:center;gap:5px;color:var(--gray-700);font-weight:500}
  .ds-map .legend .dot{width:9px;height:9px;border-radius:50%}
  .ds-map .legend .dot.n{background:var(--navy-700)}
  .ds-map .legend .dot.a{background:var(--amber-500)}
  .ds-map .legend .dot.p{background:var(--peach-500)}

  .ds-timeline{display:flex;flex-direction:column;gap:10px;max-height:280px;overflow-y:auto}
  .ds-tl-row{display:flex;gap:10px;align-items:flex-start}
  .ds-tl-row .tm{font-family:var(--mono);font-weight:600;font-size:10.5px;color:var(--gray-500);min-width:42px;padding-top:4px;flex-shrink:0}
  .ds-tl-row .ic{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}
  .ds-tl-row .ic svg{width:11px;height:11px;color:var(--white)}
  .ds-tl-row.success .ic{background:var(--success)}
  .ds-tl-row.warn .ic{background:var(--warning)}
  .ds-tl-row.info .ic{background:var(--navy-700)}
  .ds-tl-row.peach .ic{background:var(--peach-500)}
  .ds-tl-row .tx{flex:1;font-size:11.5px;color:var(--gray-800);line-height:1.4;padding-top:4px}
  .ds-tl-row .tx strong{font-weight:600;color:var(--navy-900)}

  .ds-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px}
  .ds-action{background:var(--white);border:1px solid var(--gray-200);border-left:3px solid;border-radius:11px;padding:14px 16px;display:flex;flex-direction:column;gap:8px}
  .ds-action.warn{border-left-color:var(--warning)}
  .ds-action.peach{border-left-color:var(--peach-500)}
  .ds-action.info{border-left-color:var(--info)}
  .ds-action.navy{border-left-color:var(--navy-700)}
  .ds-action .tg{font-family:var(--display);font-weight:700;font-size:9.5px;letter-spacing:0.12em;text-transform:uppercase}
  .ds-action.warn .tg{color:var(--warning)}
  .ds-action.peach .tg{color:var(--peach-500)}
  .ds-action.info .tg{color:var(--info)}
  .ds-action.navy .tg{color:var(--navy-700)}
  .ds-action .t{font-family:var(--display);font-weight:700;font-size:13px;color:var(--navy-950);letter-spacing:-0.005em;line-height:1.3}
  .ds-action .d{font-size:11px;color:var(--gray-600);line-height:1.4;flex:1}
  .ds-action .cta{font-family:var(--display);font-weight:700;font-size:10.5px;color:var(--amber-700);letter-spacing:0.06em;text-transform:uppercase;display:flex;align-items:center;gap:4px;margin-top:auto}
  .ds-action .cta svg{width:10px;height:10px}

  .ds-perf{background:var(--white);border:1px solid var(--gray-200);border-radius:13px;padding:18px}
  .ds-perf .hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
  .ds-perf .hd h3{font-family:var(--display);font-weight:700;font-size:14px;color:var(--navy-950)}
  .ds-perf .tabs{display:flex;gap:6px;background:var(--gray-100);border-radius:8px;padding:3px}
  .ds-perf .tabs .t{padding:5px 11px;font-family:var(--display);font-weight:600;font-size:11px;color:var(--gray-600);border-radius:6px}
  .ds-perf .tabs .t.active{background:var(--white);color:var(--navy-900);box-shadow:0 1px 3px rgba(0,0,0,0.08)}
  .ds-chart{height:180px;display:flex;align-items:flex-end;gap:6px;padding:8px 0;border-bottom:1px solid var(--gray-150);position:relative}
  .ds-chart .bar{flex:1;border-radius:5px 5px 0 0;background:var(--navy-700);position:relative;min-height:8px}
  .ds-chart .bar.late{background:var(--peach-500)}
  .ds-chart .lbl-row{margin-top:8px;display:flex;gap:6px;font-family:var(--mono);font-size:9.5px;color:var(--gray-500)}
  .ds-chart .lbl-row span{flex:1;text-align:center}

  /* Y3 LIVE FLEET MAP */
  .fl-filterbar{display:flex;align-items:center;gap:10px;background:var(--white);border:1px solid var(--gray-200);border-radius:11px;padding:8px 12px;margin-bottom:14px}
  .fl-fb-group{display:flex;background:var(--gray-100);border-radius:8px;padding:2px}
  .fl-fb-group .ch{padding:6px 11px;font-family:var(--display);font-weight:600;font-size:11.5px;color:var(--gray-600);border-radius:6px}
  .fl-fb-group .ch.active{background:var(--white);color:var(--navy-900);box-shadow:0 1px 3px rgba(0,0,0,0.08)}
  .fl-fb-sep{width:1px;height:20px;background:var(--gray-200)}
  .fl-fb-sel{display:flex;align-items:center;gap:6px;padding:0 10px;height:32px;font-family:var(--display);font-weight:600;font-size:11.5px;color:var(--navy-900);background:var(--navy-50);border-radius:7px}
  .fl-fb-sel .lb{color:var(--gray-500);font-weight:500}
  .fl-fb-sel svg{width:11px;height:11px}
  .fl-fb-refresh{margin-left:auto;display:flex;align-items:center;gap:6px;font-family:var(--display);font-weight:600;font-size:11px;color:var(--success);background:var(--success-50);padding:5px 10px;border-radius:7px}
  .fl-fb-refresh .dot{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px rgba(22,163,74,0.18)}

  .fl-grid{display:grid;grid-template-columns:300px 1fr;gap:14px;height:570px}
  .fl-list{background:var(--white);border:1px solid var(--gray-200);border-radius:13px;overflow:hidden;display:flex;flex-direction:column}
  .fl-list-h{padding:11px 14px;border-bottom:1px solid var(--gray-150);display:flex;align-items:center;justify-content:space-between}
  .fl-list-h .t{font-family:var(--display);font-weight:700;font-size:13px;color:var(--navy-950)}
  .fl-list-h .c{font-family:var(--mono);font-weight:600;font-size:10.5px;color:var(--gray-500);background:var(--gray-100);padding:2px 7px;border-radius:5px}
  .fl-list-b{flex:1;overflow-y:auto}
  .fl-item{padding:11px 14px;border-bottom:1px solid var(--gray-150);display:flex;align-items:center;gap:11px}
  .fl-item:last-child{border-bottom:none}
  .fl-item.active{background:var(--navy-50);border-left:3px solid var(--amber-500);padding-left:11px}
  .fl-item .ic{width:30px;height:30px;border-radius:9px;background:var(--navy-700);color:var(--white);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:11px;flex-shrink:0}
  .fl-item .ic.amber{background:var(--amber-500);color:var(--navy-900)}
  .fl-item .ic.peach{background:var(--peach-500)}
  .fl-item .ic.muted{background:var(--gray-300);color:var(--gray-600)}
  .fl-item .info{flex:1;min-width:0}
  .fl-item .info .nm{font-family:var(--display);font-weight:700;font-size:12px;color:var(--navy-950);line-height:1.2}
  .fl-item .info .mt{font-size:10px;color:var(--gray-600);margin-top:2px}
  .fl-item .info .mt strong{color:var(--navy-700);font-weight:600}
  .fl-item .pg{font-family:var(--display);font-weight:700;font-size:10.5px;flex-shrink:0;text-align:right}
  .fl-item .pg .num{color:var(--navy-900);font-size:13px;line-height:1}
  .fl-item .pg .lb{color:var(--gray-500);font-size:9px;letter-spacing:0.04em;text-transform:uppercase;margin-top:1px}
  .fl-item .pg.s .num{color:var(--success)}
  .fl-item .pg.w .num{color:var(--warning)}

  .fl-map{background:#E8E5DC;border:1px solid var(--gray-200);border-radius:13px;position:relative;overflow:hidden}
  .fl-map .roads{position:absolute;inset:0}
  .fl-map .roads svg{width:100%;height:100%;display:block}
  .fl-map .pin{position:absolute;z-index:2}
  .fl-map .pin .ic{width:32px;height:32px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--navy-700);display:grid;place-items:center;border:2px solid var(--white);box-shadow:0 4px 10px rgba(0,0,0,0.18)}
  .fl-map .pin .ic svg{transform:rotate(45deg);width:14px;height:14px;color:var(--white)}
  .fl-map .pin.warn .ic{background:var(--warning)}
  .fl-map .pin.peach .ic{background:var(--peach-500)}
  .fl-map .pin.success .ic{background:var(--success)}
  .fl-map .pin .lb{margin-top:4px;background:var(--white);color:var(--navy-900);font-family:var(--display);font-weight:700;font-size:9.5px;padding:2px 6px;border-radius:5px;white-space:nowrap;box-shadow:0 2px 6px rgba(0,0,0,0.1);position:absolute;left:50%;top:36px;transform:translateX(-50%)}
  .fl-map .school-bg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;border-radius:50%;background:var(--navy-900);color:var(--amber-300);display:grid;place-items:center;border:3px solid var(--white);box-shadow:0 6px 18px rgba(15,42,79,0.35);z-index:3}
  .fl-map .school-bg svg{width:22px;height:22px}
  .fl-map .school-bg .label{position:absolute;top:54px;left:50%;transform:translateX(-50%);background:var(--navy-900);color:var(--white);font-family:var(--display);font-weight:700;font-size:10px;padding:3px 9px;border-radius:6px;white-space:nowrap;letter-spacing:0.02em}
  .fl-map .fl-controls{position:absolute;right:14px;top:14px;display:flex;flex-direction:column;gap:6px;z-index:4}
  .fl-map .fl-ctrl{width:32px;height:32px;background:var(--white);border-radius:8px;display:grid;place-items:center;box-shadow:0 2px 6px rgba(0,0,0,0.08);color:var(--navy-700)}
  .fl-map .fl-ctrl svg{width:14px;height:14px}

  .fl-detail{position:absolute;left:14px;bottom:14px;width:380px;background:var(--white);border-radius:13px;padding:14px 16px;box-shadow:0 12px 30px rgba(0,0,0,0.15);z-index:5}
  .fl-detail .head{display:flex;align-items:center;gap:11px;padding-bottom:11px;border-bottom:1px solid var(--gray-150)}
  .fl-detail .head .ic{width:38px;height:38px;border-radius:10px;background:var(--navy-700);color:var(--amber-300);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:13px}
  .fl-detail .head .info{flex:1}
  .fl-detail .head .info .nm{font-family:var(--display);font-weight:800;font-size:14px;color:var(--navy-950);letter-spacing:-0.005em}
  .fl-detail .head .info .mt{font-size:10.5px;color:var(--gray-600);margin-top:1px}
  .fl-detail .head .badge{background:var(--success-50);color:var(--success);font-family:var(--display);font-weight:700;font-size:9.5px;padding:3px 8px;border-radius:5px;letter-spacing:0.06em;text-transform:uppercase}
  .fl-detail .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:11px}
  .fl-detail .stat{text-align:center;background:var(--gray-50);border-radius:8px;padding:7px 6px}
  .fl-detail .stat .v{font-family:var(--display);font-weight:800;font-size:15px;color:var(--navy-950);line-height:1}
  .fl-detail .stat .l{font-size:9px;color:var(--gray-500);margin-top:2px;letter-spacing:0.04em;text-transform:uppercase;font-weight:600;font-family:var(--display)}
  .fl-detail .next{margin-top:10px;background:var(--amber-50);border:1px solid var(--amber-300);border-radius:9px;padding:8px 11px;display:flex;align-items:center;gap:8px;font-size:11px}
  .fl-detail .next svg{width:13px;height:13px;color:var(--amber-700);flex-shrink:0}
  .fl-detail .next strong{color:var(--navy-900);font-weight:600}

  /* Y4 ROUTE EDITOR */
  .re-top{background:var(--white);border:1px solid var(--gray-200);border-radius:13px;padding:14px 18px;margin-bottom:14px;display:grid;grid-template-columns:auto 1fr auto auto;gap:18px;align-items:center}
  .re-top .nm-block .nm{font-family:var(--display);font-weight:800;font-size:17px;color:var(--navy-950);letter-spacing:-0.01em}
  .re-top .nm-block .mt{font-size:11.5px;color:var(--gray-600);margin-top:2px}
  .re-top .nm-block .mt strong{color:var(--navy-700);font-weight:600}
  .re-top .quick-stats{display:flex;gap:14px}
  .re-top .qs{text-align:center}
  .re-top .qs .v{font-family:var(--display);font-weight:800;font-size:18px;color:var(--navy-900);line-height:1}
  .re-top .qs .l{font-size:9px;color:var(--gray-500);letter-spacing:0.08em;text-transform:uppercase;font-weight:600;font-family:var(--display);margin-top:2px}
  .re-top .qs .v.amber{color:var(--amber-700)}
  .re-top .qs .v.success{color:var(--success)}

  .re-grid{display:grid;grid-template-columns:380px 1fr;gap:14px;height:540px}
  .re-stops{background:var(--white);border:1px solid var(--gray-200);border-radius:13px;overflow:hidden;display:flex;flex-direction:column}
  .re-stops-h{padding:12px 14px;border-bottom:1px solid var(--gray-150);display:flex;align-items:center;justify-content:space-between}
  .re-stops-h .t{font-family:var(--display);font-weight:700;font-size:13px;color:var(--navy-950)}
  .re-stops-h .actions-r{display:flex;gap:6px}
  .re-stops-h .actions-r .ic-btn{width:26px;height:26px;background:var(--gray-100);border-radius:6px;display:grid;place-items:center;color:var(--navy-700)}
  .re-stops-h .actions-r .ic-btn svg{width:12px;height:12px}
  .re-stops-h .actions-r .ic-btn.primary{background:var(--navy-700);color:var(--white)}
  .re-stops-b{flex:1;overflow-y:auto;padding:10px}
  .re-stop{display:flex;align-items:center;gap:11px;padding:9px;border-radius:9px;background:var(--white);border:1.5px solid var(--gray-200);margin-bottom:6px}
  .re-stop.dragging{background:var(--amber-50);border-color:var(--amber-500);box-shadow:0 6px 16px rgba(201,169,110,0.3);transform:rotate(-0.5deg)}
  .re-stop .drag{color:var(--gray-400);cursor:grab}
  .re-stop .drag svg{width:14px;height:14px}
  .re-stop .order{width:24px;height:24px;border-radius:50%;background:var(--navy-700);color:var(--amber-300);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:11px;flex-shrink:0}
  .re-stop .info{flex:1;min-width:0}
  .re-stop .info .nm{font-family:var(--display);font-weight:700;font-size:12px;color:var(--navy-950);line-height:1.2}
  .re-stop .info .mt{font-size:10px;color:var(--gray-600);margin-top:2px}
  .re-stop .time{font-family:var(--display);font-weight:700;font-size:11px;color:var(--navy-700);text-align:right;flex-shrink:0}
  .re-stop .time .lb{font-size:8.5px;color:var(--gray-500);letter-spacing:0.06em;text-transform:uppercase;font-weight:600;margin-bottom:1px}
  .re-stop.school{background:linear-gradient(135deg,var(--navy-700) 0%,var(--navy-900) 100%);border-color:var(--navy-700);color:var(--white)}
  .re-stop.school .order{background:var(--amber-500);color:var(--navy-900)}
  .re-stop.school .info .nm{color:var(--white)}
  .re-stop.school .info .mt{color:rgba(255,255,255,0.65)}
  .re-stop.school .time{color:var(--amber-300)}
  .re-stop.school .time .lb{color:rgba(255,255,255,0.5)}
  .re-stop.school .drag{display:none}

  .re-map{background:#E8E5DC;border:1px solid var(--gray-200);border-radius:13px;position:relative;overflow:hidden}
  .re-map svg.roads{width:100%;height:100%;display:block}
  .re-map .stop-pin{position:absolute;transform:translate(-50%,-100%);z-index:2}
  .re-map .stop-pin .mk{width:30px;height:30px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--navy-700);color:var(--amber-300);display:grid;place-items:center;border:2px solid var(--white);box-shadow:0 4px 12px rgba(0,0,0,0.2);font-family:var(--display);font-weight:800;font-size:11px}
  .re-map .stop-pin .mk span{transform:rotate(45deg)}
  .re-map .stop-pin.school .mk{background:var(--amber-500);color:var(--navy-900);border-radius:50%;transform:rotate(0)}
  .re-map .stop-pin.school .mk span{transform:rotate(0)}
  .re-map .stop-pin .lbl{margin-top:6px;background:var(--white);color:var(--navy-900);font-family:var(--display);font-weight:600;font-size:9.5px;padding:2px 7px;border-radius:4px;white-space:nowrap;position:absolute;top:34px;left:50%;transform:translateX(-50%);box-shadow:0 2px 5px rgba(0,0,0,0.08)}
  .re-map .route-info{position:absolute;left:14px;top:14px;background:var(--white);border-radius:11px;padding:11px 13px;box-shadow:0 4px 12px rgba(0,0,0,0.08);z-index:4}
  .re-map .route-info .lb{font-family:var(--display);font-weight:700;font-size:9px;color:var(--amber-700);letter-spacing:0.16em;text-transform:uppercase}
  .re-map .route-info .stats{display:flex;gap:14px;margin-top:6px}
  .re-map .route-info .stat .v{font-family:var(--display);font-weight:800;font-size:15px;color:var(--navy-950);line-height:1}
  .re-map .route-info .stat .l{font-size:9px;color:var(--gray-500);margin-top:1px;letter-spacing:0.04em;text-transform:uppercase;font-weight:600;font-family:var(--display)}
  .re-map .optimize-btn{position:absolute;right:14px;bottom:14px;background:var(--amber-500);color:var(--navy-900);padding:9px 14px;border-radius:10px;display:flex;align-items:center;gap:8px;font-family:var(--display);font-weight:800;font-size:12px;box-shadow:0 6px 16px rgba(201,169,110,0.35);z-index:4}
  .re-map .optimize-btn svg{width:13px;height:13px}

  /* Y5 STUDENTS */
  .st-toolbar, .dr-toolbar{background:var(--white);border:1px solid var(--gray-200);border-radius:11px;padding:10px 12px;margin-bottom:14px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}
  .search-box{flex:1;height:34px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px;display:flex;align-items:center;padding:0 12px;gap:9px;max-width:320px}
  .search-box svg{width:13px;height:13px;color:var(--gray-500);flex-shrink:0}
  .search-box .ph{font-size:12px;color:var(--gray-500);font-weight:500}
  .filter-chip{display:flex;align-items:center;gap:6px;height:32px;padding:0 11px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:7px;font-family:var(--display);font-weight:600;font-size:11.5px;color:var(--navy-900);flex-shrink:0;white-space:nowrap}
  .filter-chip .lb{color:var(--gray-500);font-weight:500}
  .filter-chip svg{width:11px;height:11px;flex-shrink:0}
  .filter-chip.active{background:var(--navy-50);border-color:var(--navy-300);color:var(--navy-900)}
  .spacer{flex:1}
  .tool-btn{display:flex;align-items:center;gap:6px;height:32px;padding:0 11px;background:var(--white);border:1px solid var(--gray-200);border-radius:7px;font-family:var(--display);font-weight:600;font-size:11.5px;color:var(--navy-700);flex-shrink:0;white-space:nowrap}
  .tool-btn svg{width:13px;height:13px;flex-shrink:0}
  .tool-btn.success{background:var(--success-50);border-color:var(--success-bg);color:var(--success)}
  .tool-btn.primary{background:var(--navy-700);border-color:var(--navy-700);color:var(--white)}

  .st-table{background:var(--white);border:1px solid var(--gray-200);border-radius:11px;overflow:hidden}
  .st-thead{display:grid;grid-template-columns:48px 1.5fr 0.7fr 1.2fr 1.4fr 0.9fr 0.7fr;padding:11px 14px;background:var(--gray-50);border-bottom:1px solid var(--gray-200);align-items:center;gap:10px}
  .st-thead .th{font-family:var(--display);font-weight:700;font-size:10px;color:var(--gray-600);letter-spacing:0.1em;text-transform:uppercase}
  .st-thead .th svg{width:10px;height:10px;margin-left:3px;vertical-align:middle;opacity:0.5}
  .st-tr{display:grid;grid-template-columns:48px 1.5fr 0.7fr 1.2fr 1.4fr 0.9fr 0.7fr;padding:10px 14px;border-bottom:1px solid var(--gray-150);align-items:center;gap:10px}
  .st-tr:last-child{border-bottom:none}
  .st-tr.selected{background:var(--navy-50)}
  .st-tr .ck{width:16px;height:16px;border-radius:4px;background:var(--white);border:1.5px solid var(--gray-300)}
  .st-tr .ck.checked{background:var(--navy-700);border-color:var(--navy-700);display:grid;place-items:center}
  .st-tr .ck.checked svg{width:10px;height:10px;color:var(--white)}
  .st-tr .stu{display:flex;align-items:center;gap:9px}
  .st-tr .stu .av{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:11px;flex-shrink:0}
  .st-tr .stu .av.boy{background:var(--navy-700);color:var(--amber-300)}
  .st-tr .stu .av.girl{background:var(--peach-500);color:var(--white)}
  .st-tr .stu .nm{font-family:var(--display);font-weight:700;font-size:12.5px;color:var(--navy-950);line-height:1.2}
  .st-tr .stu .id{font-family:var(--mono);font-size:9.5px;color:var(--gray-500);margin-top:1px}
  .st-tr .cls{font-family:var(--display);font-weight:600;font-size:11.5px;color:var(--navy-700);background:var(--navy-50);padding:3px 8px;border-radius:5px;justify-self:start}
  .st-tr .rt{font-size:11.5px;color:var(--navy-900);font-weight:500;line-height:1.3}
  .st-tr .rt strong{font-family:var(--display);font-weight:700;color:var(--navy-700)}
  .st-tr .pr{display:flex;align-items:center;gap:8px}
  .st-tr .pr .pav{width:24px;height:24px;border-radius:50%;background:var(--amber-500);color:var(--navy-900);display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:9.5px;flex-shrink:0}
  .st-tr .pr .pinfo .pn{font-size:11.5px;font-weight:600;color:var(--navy-900);line-height:1.2}
  .st-tr .pr .pinfo .pp{font-family:var(--mono);font-size:9.5px;color:var(--gray-500);margin-top:1px}
  .st-tr .stat{font-family:var(--display);font-weight:700;font-size:9.5px;padding:3px 8px;border-radius:5px;letter-spacing:0.04em;text-transform:uppercase;justify-self:start}
  .st-tr .stat.active{background:var(--success-50);color:var(--success)}
  .st-tr .stat.pending{background:var(--amber-50);color:var(--amber-700)}
  .st-tr .stat.inactive{background:var(--gray-100);color:var(--gray-600)}
  .st-tr .act{display:flex;gap:5px;justify-self:end}
  .st-tr .act .ac{width:26px;height:26px;border-radius:6px;background:var(--gray-50);color:var(--navy-700);display:grid;place-items:center}
  .st-tr .act .ac svg{width:12px;height:12px}
  .st-pager{padding:11px 14px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--gray-150);background:var(--gray-50)}
  .st-pager .info{font-size:11px;color:var(--gray-600)}
  .st-pager .pgctrl{display:flex;gap:5px;align-items:center}
  .st-pager .pgctrl .pb{width:28px;height:28px;border-radius:6px;background:var(--white);border:1px solid var(--gray-200);display:grid;place-items:center;color:var(--navy-700);font-family:var(--display);font-weight:600;font-size:11px}
  .st-pager .pgctrl .pb.active{background:var(--navy-700);color:var(--white);border-color:var(--navy-700)}
  .st-pager .pgctrl .pb svg{width:11px;height:11px}

  /* Y6 DRIVERS */
  .dr-toolbar{background:var(--white);border:1px solid var(--gray-200);border-radius:11px;padding:10px 12px;margin-bottom:14px;display:flex;align-items:center;gap:9px}
  .dr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
  .dr-card{background:var(--white);border:1px solid var(--gray-200);border-radius:12px;padding:15px;position:relative;overflow:hidden}
  .dr-card.warn{border-left:3px solid var(--error)}
  .dr-card.peach{border-left:3px solid var(--peach-500)}
  .dr-card.success{border-left:3px solid var(--success)}
  .dr-card .head{display:flex;align-items:center;gap:11px;margin-bottom:12px}
  .dr-card .head .av{width:42px;height:42px;border-radius:50%;background:var(--navy-700);color:var(--amber-300);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:14px;flex-shrink:0}
  .dr-card .head .info{flex:1;min-width:0;overflow:hidden}
  .dr-card .head .nm{font-family:var(--display);font-weight:800;font-size:13.5px;color:var(--navy-950);letter-spacing:-0.005em;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dr-card .head .mt{font-size:10.5px;color:var(--gray-600);margin-top:2px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .dr-card .head .mt strong{color:var(--navy-700);font-weight:600}
  .dr-card .head .scr{text-align:center;flex-shrink:0;padding-left:8px;border-left:1px solid var(--gray-150)}
  .dr-card .head .scr .v{font-family:var(--display);font-weight:800;font-size:17px;letter-spacing:-0.01em;line-height:1}
  .dr-card .head .scr.s .v{color:var(--success)}
  .dr-card .head .scr.w .v{color:var(--peach-500)}
  .dr-card .head .scr.e .v{color:var(--error)}
  .dr-card .head .scr .lb{font-size:8.5px;color:var(--gray-500);letter-spacing:0.06em;text-transform:uppercase;font-weight:600;font-family:var(--display);margin-top:2px}
  .dr-card .stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:11px}
  .dr-card .ds{text-align:center;background:var(--gray-50);border-radius:7px;padding:6px}
  .dr-card .ds .v{font-family:var(--display);font-weight:700;font-size:13px;color:var(--navy-900);line-height:1}
  .dr-card .ds .l{font-size:9px;color:var(--gray-500);letter-spacing:0.04em;text-transform:uppercase;font-weight:600;font-family:var(--display);margin-top:2px}
  .dr-card .docs{display:flex;flex-direction:column;gap:5px;padding-top:10px;border-top:1px solid var(--gray-150)}
  .dr-card .doc{display:flex;align-items:center;gap:8px;font-size:11px}
  .dr-card .doc .ic{width:18px;height:18px;border-radius:5px;display:grid;place-items:center;flex-shrink:0}
  .dr-card .doc .ic svg{width:9px;height:9px;color:var(--white)}
  .dr-card .doc.ok .ic{background:var(--success)}
  .dr-card .doc.warn .ic{background:var(--warning)}
  .dr-card .doc.expired .ic{background:var(--error)}
  .dr-card .doc .nm{flex:1;color:var(--navy-900);font-weight:500}
  .dr-card .doc .dt{font-family:var(--mono);font-size:10px;color:var(--gray-500);font-weight:500}
  .dr-card .doc.warn .dt{color:var(--peach-500);font-weight:700}
  .dr-card .doc.expired .dt{color:var(--error);font-weight:700}
  .dr-card .ahead{position:absolute;top:0;right:0;padding:4px 9px;background:var(--error);color:var(--white);font-family:var(--display);font-weight:800;font-size:9px;letter-spacing:0.08em;border-radius:0 0 0 7px;text-transform:uppercase}
  .dr-card .ahead.peach{background:var(--peach-500)}
  .dr-card .ahead.success{background:var(--success)}
  .dr-card .ahead.warn{background:var(--warning)}

  /* Y7 VIOLATIONS */
  .vl-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
  .vl-stat{background:var(--white);border:1px solid var(--gray-200);border-radius:11px;padding:13px 16px;display:flex;align-items:center;gap:11px}
  .vl-stat .ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:var(--white);flex-shrink:0}
  .vl-stat .ic svg{width:17px;height:17px}
  .vl-stat.error .ic{background:var(--error)}
  .vl-stat.warn .ic{background:var(--warning)}
  .vl-stat.peach .ic{background:var(--peach-500)}
  .vl-stat.info .ic{background:var(--info)}
  .vl-stat .vt .v{font-family:var(--display);font-weight:800;font-size:21px;color:var(--navy-950);line-height:1;letter-spacing:-0.01em}
  .vl-stat .vt .l{font-size:11px;color:var(--gray-600);margin-top:3px;line-height:1.3}
  .vl-stat .vt .l strong{color:var(--navy-900);font-weight:600}

  .vl-list{background:var(--white);border:1px solid var(--gray-200);border-radius:11px;overflow:hidden}
  .vl-row{padding:13px 16px;border-bottom:1px solid var(--gray-150);display:grid;grid-template-columns:60px 1fr 0.9fr 1fr 0.9fr;gap:14px;align-items:center}
  .vl-row:last-child{border-bottom:none}
  .vl-row.pending{background:var(--error-50);border-left:3px solid var(--error);padding-left:13px}
  .vl-row .tm-block{text-align:center}
  .vl-row .tm-block .tm{font-family:var(--mono);font-weight:700;font-size:14px;color:var(--navy-900);line-height:1}
  .vl-row .tm-block .dt{font-size:9.5px;color:var(--gray-500);margin-top:2px;font-family:var(--display);font-weight:600;letter-spacing:0.04em;text-transform:uppercase}
  .vl-row .vt-info{display:flex;align-items:center;gap:11px}
  .vl-row .vt-info .ic{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:var(--white);flex-shrink:0}
  .vl-row .vt-info .ic svg{width:15px;height:15px}
  .vl-row .vt-info.speed .ic{background:var(--error)}
  .vl-row .vt-info.route .ic{background:var(--warning)}
  .vl-row .vt-info.absent .ic{background:var(--peach-500)}
  .vl-row .vt-info.late .ic{background:var(--info)}
  .vl-row .vt-info .tx{flex:1;min-width:0}
  .vl-row .vt-info .nm{font-family:var(--display);font-weight:700;font-size:12.5px;color:var(--navy-950);line-height:1.2}
  .vl-row .vt-info .dt{font-size:11px;color:var(--gray-600);margin-top:2px;line-height:1.3}
  .vl-row .vt-info .dt strong{font-family:var(--display);font-weight:700;color:var(--error)}
  .vl-row .sv-info{display:flex;align-items:center;gap:8px}
  .vl-row .sv-info .av{width:26px;height:26px;border-radius:50%;background:var(--navy-700);color:var(--amber-300);display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:9.5px;flex-shrink:0}
  .vl-row .sv-info .si .nm{font-family:var(--display);font-weight:600;font-size:11.5px;color:var(--navy-900);line-height:1.2}
  .vl-row .sv-info .si .pl{font-family:var(--mono);font-size:9.5px;color:var(--gray-500);margin-top:1px;font-weight:600}
  .vl-row .lc-info{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--navy-900);line-height:1.3}
  .vl-row .lc-info svg{width:13px;height:13px;color:var(--gray-500);flex-shrink:0}
  .vl-row .lc-info strong{color:var(--navy-700);font-weight:600}
  .vl-row .act-block{display:flex;align-items:center;gap:7px;justify-self:end}
  .vl-row .vstat{font-family:var(--display);font-weight:700;font-size:9.5px;padding:3px 8px;border-radius:5px;letter-spacing:0.05em;text-transform:uppercase;white-space:nowrap}
  .vl-row .vstat.open{background:var(--error-50);color:var(--error)}
  .vl-row .vstat.warned{background:var(--warning-50);color:var(--warning)}
  .vl-row .vstat.resolved{background:var(--success-50);color:var(--success)}
  .vl-row .vstat.review{background:var(--navy-50);color:var(--navy-700)}
  .vl-row .vmore{width:26px;height:26px;border-radius:6px;background:var(--gray-100);display:grid;place-items:center;color:var(--gray-600)}
  .vl-row .vmore svg{width:11px;height:11px}

  /* Y8 ANNOUNCEMENTS */
  .an-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:14px}
  .an-compose{background:var(--white);border:1px solid var(--gray-200);border-radius:11px;padding:16px 18px}
  .an-compose .sec-lb{font-family:var(--display);font-weight:700;font-size:9.5px;color:var(--amber-700);letter-spacing:0.16em;text-transform:uppercase;margin-bottom:7px;display:block}
  .an-compose h3{font-family:var(--display);font-weight:800;font-size:17px;color:var(--navy-950);letter-spacing:-0.01em;margin-bottom:14px}
  .an-step{margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--gray-150)}
  .an-step:last-of-type{border-bottom:none}
  .an-step .lb{font-family:var(--display);font-weight:700;font-size:10.5px;color:var(--navy-700);letter-spacing:0.08em;text-transform:uppercase;margin-bottom:7px;display:flex;align-items:center;gap:7px}
  .an-step .lb .nb{width:18px;height:18px;border-radius:50%;background:var(--navy-700);color:var(--white);display:grid;place-items:center;font-size:10px;font-weight:800}
  .an-target-chips{display:flex;gap:6px;flex-wrap:wrap}
  .an-tc{display:flex;align-items:center;gap:6px;height:30px;padding:0 11px;background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:8px;font-family:var(--display);font-weight:600;font-size:11.5px;color:var(--navy-900)}
  .an-tc.active{background:var(--amber-50);border-color:var(--amber-500);color:var(--amber-700)}
  .an-tc svg{width:11px;height:11px}
  .an-tc .ct{background:var(--white);padding:1px 6px;border-radius:99px;font-family:var(--mono);font-size:9.5px;font-weight:700;color:var(--gray-600);margin-left:2px}
  .an-tc.active .ct{background:var(--amber-500);color:var(--white)}
  .an-templates{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .an-tmpl{display:flex;align-items:center;gap:9px;padding:8px 11px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px;font-size:11.5px;color:var(--navy-900);font-weight:500;line-height:1.3}
  .an-tmpl .ic{width:22px;height:22px;border-radius:6px;background:var(--white);color:var(--navy-700);display:grid;place-items:center;flex-shrink:0}
  .an-tmpl .ic svg{width:11px;height:11px}
  .an-tmpl.peach .ic{background:var(--peach-100);color:var(--peach-500)}
  .an-tmpl.info .ic{background:var(--navy-50);color:var(--navy-700)}
  .an-tmpl.warn .ic{background:var(--warning-bg);color:var(--warning)}
  .an-tmpl.success .ic{background:var(--success-bg);color:var(--success)}
  .an-title-input{height:36px;background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:9px;padding:0 12px;display:flex;align-items:center;font-size:13px;color:var(--navy-900);font-weight:600}
  .an-body-area{margin-top:7px;background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:9px;padding:11px 13px;min-height:80px;font-size:12px;color:var(--navy-900);line-height:1.55}
  .an-body-area p{margin-bottom:5px}
  .an-channels{display:flex;gap:7px}
  .an-ch{flex:1;display:flex;align-items:center;gap:8px;padding:8px 11px;background:var(--white);border:1.5px solid var(--gray-200);border-radius:9px;cursor:pointer}
  .an-ch.active{background:var(--navy-50);border-color:var(--navy-700)}
  .an-ch .ic{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;flex-shrink:0;background:var(--gray-100);color:var(--gray-500)}
  .an-ch.active .ic{background:var(--navy-700);color:var(--white)}
  .an-ch .ic svg{width:13px;height:13px}
  .an-ch .info .n{font-family:var(--display);font-weight:700;font-size:11px;color:var(--navy-900);line-height:1.2}
  .an-ch .info .m{font-size:9.5px;color:var(--gray-500);margin-top:1px}
  .an-ch.active .info .m{color:var(--navy-700)}
  .an-send-row{display:flex;align-items:center;gap:9px;margin-top:14px;padding-top:13px;border-top:1px solid var(--gray-150)}
  .an-time-sel{flex:1;display:flex;align-items:center;gap:8px;padding:8px 11px;background:var(--amber-50);border:1px solid var(--amber-300);border-radius:9px;font-size:11.5px;color:var(--navy-900)}
  .an-time-sel svg{width:13px;height:13px;color:var(--amber-700)}
  .an-time-sel strong{font-family:var(--display);font-weight:700;color:var(--navy-900)}
  .an-send-btn{display:flex;align-items:center;gap:8px;padding:9px 17px;background:var(--navy-700);color:var(--white);border-radius:9px;font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:0.04em;box-shadow:0 6px 16px -4px rgba(30,58,95,0.3)}
  .an-send-btn svg{width:14px;height:14px}

  .an-history{background:var(--white);border:1px solid var(--gray-200);border-radius:11px;padding:16px 18px}
  .an-history h3{font-family:var(--display);font-weight:800;font-size:15px;color:var(--navy-950);letter-spacing:-0.01em;margin-bottom:13px}
  .an-msg{padding:11px 12px;border-radius:9px;background:var(--gray-50);margin-bottom:8px;border:1px solid var(--gray-200)}
  .an-msg .top-row{display:flex;align-items:center;gap:7px;margin-bottom:5px}
  .an-msg .tag{font-family:var(--display);font-weight:700;font-size:9px;padding:2px 7px;border-radius:4px;letter-spacing:0.06em;text-transform:uppercase}
  .an-msg .tag.urgent{background:var(--error);color:var(--white)}
  .an-msg .tag.info{background:var(--navy-700);color:var(--white)}
  .an-msg .tag.success{background:var(--success);color:var(--white)}
  .an-msg .tag.warn{background:var(--warning);color:var(--white)}
  .an-msg .tm{font-family:var(--mono);font-weight:600;font-size:10px;color:var(--gray-500);margin-left:auto}
  .an-msg .ttl{font-family:var(--display);font-weight:700;font-size:12.5px;color:var(--navy-950);letter-spacing:-0.005em;line-height:1.3;margin-bottom:3px}
  .an-msg .bd{font-size:11px;color:var(--gray-700);line-height:1.4}
  .an-msg .stats{display:flex;gap:11px;margin-top:7px;padding-top:7px;border-top:1px dashed var(--gray-200)}
  .an-msg .st{font-size:9.5px;color:var(--gray-600);display:flex;align-items:center;gap:4px;font-weight:500}
  .an-msg .st svg{width:10px;height:10px}
  .an-msg .st strong{color:var(--navy-900);font-weight:700;font-family:var(--display)}

  /* Y9 REPORTS */
  .rp-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
  .rp-card{background:var(--white);border:1px solid var(--gray-200);border-radius:12px;padding:14px 16px;position:relative;overflow:hidden;cursor:pointer}
  .rp-card .ic{width:36px;height:36px;border-radius:10px;background:var(--navy-50);color:var(--navy-700);display:grid;place-items:center;margin-bottom:9px}
  .rp-card .ic svg{width:17px;height:17px}
  .rp-card.amber .ic{background:var(--amber-50);color:var(--amber-700)}
  .rp-card.peach .ic{background:var(--peach-100);color:var(--peach-500)}
  .rp-card.success .ic{background:var(--success-50);color:var(--success)}
  .rp-card .t{font-family:var(--display);font-weight:700;font-size:13px;color:var(--navy-950);letter-spacing:-0.005em;line-height:1.2}
  .rp-card .d{font-size:11px;color:var(--gray-600);margin-top:4px;line-height:1.4}
  .rp-card .freq{display:inline-block;margin-top:9px;font-family:var(--display);font-weight:700;font-size:9.5px;background:var(--gray-100);color:var(--gray-700);padding:3px 8px;border-radius:5px;letter-spacing:0.06em;text-transform:uppercase}

  .rp-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;margin-bottom:14px}
  .rp-chart-card{background:var(--white);border:1px solid var(--gray-200);border-radius:12px;padding:16px 18px}
  .rp-chart-card .hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}
  .rp-chart-card .hd .lf .t{font-family:var(--display);font-weight:700;font-size:14px;color:var(--navy-950)}
  .rp-chart-card .hd .lf .s{font-size:11px;color:var(--gray-500);margin-top:2px}
  .rp-chart-card .hd .rt{display:flex;gap:6px}
  .rp-chart-card .hd .rt .ic-btn{width:28px;height:28px;border-radius:7px;background:var(--gray-100);color:var(--navy-700);display:grid;place-items:center}
  .rp-chart-card .hd .rt .ic-btn svg{width:13px;height:13px}

  .rp-bars{height:180px;display:flex;align-items:flex-end;gap:14px;padding:8px 0;border-bottom:1px solid var(--gray-150);position:relative}
  .rp-bg-row{position:absolute;left:0;right:0;height:1px;background:var(--gray-100)}
  .rp-bar-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;height:100%;justify-content:flex-end}
  .rp-bar-stack{width:30px;border-radius:5px 5px 0 0;display:flex;flex-direction:column-reverse;overflow:hidden}
  .rp-bar-stack .sg{width:100%}
  .rp-bar-stack .sg.ontime{background:var(--success)}
  .rp-bar-stack .sg.late{background:var(--peach-500)}
  .rp-bar-stack .sg.miss{background:var(--error)}
  .rp-bar-col .lb{font-family:var(--mono);font-size:9.5px;color:var(--gray-500);font-weight:600;margin-top:6px}
  .rp-legend{display:flex;gap:14px;margin-top:11px;font-size:10.5px;color:var(--gray-700)}
  .rp-legend .item{display:flex;align-items:center;gap:5px;font-weight:500}
  .rp-legend .item .dot{width:9px;height:9px;border-radius:50%}
  .rp-legend .item .dot.ontime{background:var(--success)}
  .rp-legend .item .dot.late{background:var(--peach-500)}
  .rp-legend .item .dot.miss{background:var(--error)}

  .rp-donut{position:relative;width:140px;height:140px;margin:0 auto}
  .rp-donut svg{width:100%;height:100%;transform:rotate(-90deg)}
  .rp-donut .ctr{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center}
  .rp-donut .ctr .v{font-family:var(--display);font-weight:800;font-size:22px;color:var(--navy-950);letter-spacing:-0.01em;line-height:1}
  .rp-donut .ctr .l{font-size:9.5px;color:var(--gray-500);letter-spacing:0.08em;text-transform:uppercase;font-weight:600;font-family:var(--display);margin-top:2px}
  .rp-donut-legend{margin-top:12px;display:flex;flex-direction:column;gap:7px}
  .rp-donut-legend .it{display:flex;align-items:center;gap:8px;font-size:11px}
  .rp-donut-legend .it .dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
  .rp-donut-legend .it .nm{flex:1;color:var(--navy-900);font-weight:500}
  .rp-donut-legend .it .v{font-family:var(--display);font-weight:700;color:var(--navy-700)}

  .rp-export-row{background:var(--white);border:1px solid var(--gray-200);border-radius:12px;padding:13px 16px;display:flex;align-items:center;gap:14px}
  .rp-export-row .lbl{font-family:var(--display);font-weight:700;font-size:12px;color:var(--navy-950)}
  .rp-export-row .opts{display:flex;gap:8px;margin-left:auto}
  .rp-ex-btn{display:flex;align-items:center;gap:6px;height:32px;padding:0 11px;border-radius:7px;font-family:var(--display);font-weight:600;font-size:11.5px}
  .rp-ex-btn svg{width:12px;height:12px}
  .rp-ex-btn.excel{background:var(--success-bg);color:var(--success)}
  .rp-ex-btn.pdf{background:var(--error-bg);color:var(--error)}
  .rp-ex-btn.email{background:var(--info-bg);color:var(--info)}
  .rp-ex-btn.schedule{background:var(--navy-700);color:var(--white)}

  /* Y10 SETTINGS - KEY DIFFERENTIATOR */
  .se-tabs{background:var(--white);border:1px solid var(--gray-200);border-radius:11px;padding:5px;display:flex;gap:3px;margin-bottom:16px}
  .se-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 13px;font-family:var(--display);font-weight:600;font-size:12px;color:var(--gray-600);border-radius:7px}
  .se-tab svg{width:13px;height:13px}
  .se-tab.active{background:var(--navy-700);color:var(--white)}
  .se-tab.active svg{color:var(--amber-300)}

  .se-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .se-panel{background:var(--white);border:1px solid var(--gray-200);border-radius:12px;padding:18px 20px}
  .se-panel .pn-hd{display:flex;align-items:center;gap:11px;margin-bottom:14px;padding-bottom:13px;border-bottom:1px solid var(--gray-150)}
  .se-panel .pn-hd .ic{width:34px;height:34px;border-radius:9px;background:var(--amber-50);color:var(--amber-700);display:grid;place-items:center;flex-shrink:0}
  .se-panel .pn-hd .ic svg{width:16px;height:16px}
  .se-panel .pn-hd.gps .ic{background:var(--navy-50);color:var(--navy-700)}
  .se-panel .pn-hd .info{flex:1}
  .se-panel .pn-hd .info .t{font-family:var(--display);font-weight:800;font-size:14px;color:var(--navy-950);letter-spacing:-0.005em}
  .se-panel .pn-hd .info .s{font-size:11px;color:var(--gray-600);margin-top:2px}
  .se-panel .pn-hd .badge{font-family:var(--display);font-weight:700;font-size:9px;padding:3px 8px;border-radius:5px;letter-spacing:0.08em;text-transform:uppercase}
  .se-panel .pn-hd .badge.amber{background:var(--amber-50);color:var(--amber-700)}
  .se-panel .pn-hd .badge.success{background:var(--success-bg);color:var(--success)}

  /* White Label Settings */
  .se-field{margin-bottom:13px}
  .se-field .lb{font-family:var(--display);font-weight:600;font-size:10.5px;letter-spacing:0.08em;color:var(--navy-700);text-transform:uppercase;display:block;margin-bottom:6px}
  .se-input{height:36px;background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:8px;padding:0 11px;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--navy-900);font-weight:500}
  .se-input.mono{font-family:var(--mono);font-size:11.5px}
  .se-input .pre{color:var(--gray-500)}
  .se-input .copy{margin-left:auto;color:var(--amber-700);font-family:var(--display);font-weight:600;font-size:10px;letter-spacing:0.06em;text-transform:uppercase}
  .se-domain-toggle{margin-top:7px;display:flex;align-items:center;gap:9px;padding:9px 11px;background:var(--amber-50);border:1px solid var(--amber-300);border-radius:8px;font-size:11px;color:var(--navy-900)}
  .se-domain-toggle .sw{width:32px;height:18px;background:var(--success);border-radius:10px;position:relative;flex-shrink:0}
  .se-domain-toggle .sw::after{content:'';position:absolute;width:14px;height:14px;background:var(--white);border-radius:50%;top:2px;right:2px;box-shadow:0 1px 3px rgba(0,0,0,0.15)}
  .se-domain-toggle strong{color:var(--navy-900);font-weight:700}

  .se-logo-row{display:flex;gap:14px;align-items:center;margin-bottom:13px}
  .se-logo-preview{width:64px;height:64px;border-radius:14px;background:var(--navy-700);display:grid;place-items:center;border:2px solid var(--gray-200);flex-shrink:0}
  .se-logo-preview svg{width:36px;height:36px}
  .se-logo-info{flex:1}
  .se-logo-info .nm{font-family:var(--display);font-weight:700;font-size:12px;color:var(--navy-950)}
  .se-logo-info .mt{font-size:10.5px;color:var(--gray-500);margin-top:2px;font-family:var(--mono)}
  .se-logo-info .upbtn{margin-top:6px;display:inline-flex;align-items:center;gap:5px;padding:5px 10px;background:var(--navy-50);color:var(--navy-700);border-radius:6px;font-family:var(--display);font-weight:600;font-size:10.5px}
  .se-logo-info .upbtn svg{width:11px;height:11px}

  .se-color-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:13px}
  .se-color-pick{padding:8px 10px;background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:8px;display:flex;align-items:center;gap:9px}
  .se-color-pick .sw{width:32px;height:32px;border-radius:7px;flex-shrink:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,0.1)}
  .se-color-pick .info{flex:1;min-width:0}
  .se-color-pick .info .nm{font-family:var(--display);font-weight:600;font-size:10.5px;color:var(--navy-900);letter-spacing:0.04em;text-transform:uppercase}
  .se-color-pick .info .hx{font-family:var(--mono);font-size:11px;color:var(--gray-600);margin-top:1px;font-weight:600}

  .se-scp-tag{display:flex;align-items:center;gap:11px;margin-top:5px;padding:11px 13px;background:var(--gray-50);border:1.5px dashed var(--gray-300);border-radius:9px}
  .se-scp-tag .info{flex:1}
  .se-scp-tag .info .t{font-family:var(--display);font-weight:700;font-size:11.5px;color:var(--navy-900)}
  .se-scp-tag .info .d{font-size:10px;color:var(--gray-600);margin-top:2px;line-height:1.4}
  .se-scp-tag .sw{width:32px;height:18px;background:var(--gray-300);border-radius:10px;position:relative;flex-shrink:0}
  .se-scp-tag .sw::after{content:'';position:absolute;width:14px;height:14px;background:var(--white);border-radius:50%;top:2px;left:2px;box-shadow:0 1px 3px rgba(0,0,0,0.15)}
  .se-scp-tag.locked{background:var(--peach-100);border-color:var(--peach-300);border-style:solid}
  .se-scp-tag.locked .sw{background:var(--peach-500)}
  .se-scp-tag.locked .sw::after{right:2px;left:auto}

  /* GPS Providers */
  .se-gps-list{display:flex;flex-direction:column;gap:9px}
  .se-gps-it{display:flex;align-items:center;gap:11px;padding:12px 14px;background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:10px}
  .se-gps-it.connected{background:var(--success-50);border-color:var(--success-bg);border-left:3px solid var(--success);padding-left:13px}
  .se-gps-it .lg{width:42px;height:42px;border-radius:9px;background:var(--white);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:11.5px;color:var(--navy-700);border:1px solid var(--gray-200);flex-shrink:0;letter-spacing:-0.01em;line-height:1.05;text-align:center}
  .se-gps-it.connected .lg{background:var(--success);color:var(--white);border-color:var(--success)}
  .se-gps-it .info{flex:1;min-width:0}
  .se-gps-it .info .nm{font-family:var(--display);font-weight:700;font-size:13px;color:var(--navy-950)}
  .se-gps-it .info .mt{font-size:10.5px;color:var(--gray-600);margin-top:2px;line-height:1.3}
  .se-gps-it .info .mt .live{display:inline-flex;align-items:center;gap:4px;color:var(--success);font-weight:700;font-family:var(--display)}
  .se-gps-it .info .mt .live .dot{width:6px;height:6px;border-radius:50%;background:var(--success)}
  .se-gps-it .status-area{text-align:right;flex-shrink:0}
  .se-gps-it .status-area .badge{font-family:var(--display);font-weight:700;font-size:9px;padding:3px 8px;border-radius:5px;letter-spacing:0.08em;text-transform:uppercase}
  .se-gps-it .status-area .badge.connected{background:var(--success);color:var(--white)}
  .se-gps-it .status-area .badge.available{background:var(--gray-200);color:var(--gray-700)}
  .se-gps-it .status-area .v{font-family:var(--mono);font-size:9.5px;color:var(--gray-500);margin-top:3px;font-weight:600}
  .se-gps-it .act-btn{display:flex;align-items:center;gap:5px;padding:6px 11px;background:var(--white);border:1px solid var(--gray-300);color:var(--navy-700);border-radius:7px;font-family:var(--display);font-weight:600;font-size:10.5px;flex-shrink:0}
  .se-gps-it .act-btn svg{width:11px;height:11px}
  .se-gps-it .act-btn.primary{background:var(--navy-700);color:var(--white);border-color:var(--navy-700)}

  .se-poll-stats{margin-top:13px;padding:11px 13px;background:var(--navy-50);border:1px solid var(--navy-100);border-radius:9px;display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
  .se-poll-stats .ps .v{font-family:var(--display);font-weight:800;font-size:16px;color:var(--navy-900);line-height:1;letter-spacing:-0.005em}
  .se-poll-stats .ps .v.success{color:var(--success)}
  .se-poll-stats .ps .l{font-size:9.5px;color:var(--gray-500);margin-top:3px;letter-spacing:0.04em;text-transform:uppercase;font-weight:600;font-family:var(--display)}

  /* Footer */
  .page-footer{max-width:1480px;margin:0 auto;padding:32px 48px 48px;border-top:1px solid var(--gray-200);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
  .page-footer .left{display:flex;align-items:center;gap:14px}
  .page-footer .footer-mark{width:36px;height:36px;border-radius:9px;background:var(--navy-900);color:var(--white);display:grid;place-items:center;font-family:var(--display);font-weight:800;font-size:13px;letter-spacing:-0.02em}
  .page-footer .name{font-family:var(--display);font-weight:700;color:var(--navy-950);font-size:14px;letter-spacing:-0.005em}
  .page-footer .sub{font-size:11.5px;color:var(--gray-500);margin-top:2px;letter-spacing:0.02em}
  .page-footer .right{text-align:right;font-size:11.5px;color:var(--gray-500);line-height:1.5}
  .page-footer .right .tag{font-family:var(--display);font-weight:700;color:var(--amber-700);letter-spacing:0.16em;text-transform:uppercase;font-size:10px}


/* =========================================================================
   OkulYol Yonetim Paneli — uygulama kabugu (mockup'tan uyarlandi)
   Mockup gallery (.hero/.browser/.page-card) gercek panelde kullanilmaz;
   .sb / .tb / .am / .pg / .btn / .lg-* / .ds-* bilesenleri buradan gelir.
   ========================================================================= */
.app-shell{display:flex;height:100vh;overflow:hidden}
.sb{height:100vh;overflow-y:auto}
.am{height:100vh}
.sb-it{text-decoration:none;cursor:pointer;transition:background .12s,color .12s}
.sb-it:hover{background:rgba(255,255,255,0.06);color:var(--white)}
.sb-it:hover svg{opacity:1}
.sb-brand{text-decoration:none}
.sb-foot{cursor:default}
.sb-foot .logout{margin-left:auto;background:none;border:none;color:rgba(255,255,255,0.5);display:grid;place-items:center;padding:5px;border-radius:7px;cursor:pointer}
.sb-foot .logout:hover{background:rgba(255,255,255,0.1);color:var(--white)}
.sb-foot .logout svg{width:15px;height:15px}
.sb-foot form{display:flex;margin-left:auto}
.tb a{text-decoration:none;color:inherit}
.tb .tic{cursor:pointer}
.bc a{color:var(--gray-500);text-decoration:none}
.bc a:hover{color:var(--navy-700)}
.tic .ndot{}

/* Login — gercek form alanlari */
.lg-screen{height:100%}
.lg-input{cursor:text}
.lg-input input{flex:1;min-width:0;border:none;background:transparent;outline:none;font-family:var(--body);font-size:13px;color:var(--navy-900);font-weight:500;height:100%}
.lg-input input::placeholder{color:var(--gray-400);font-weight:400}
.lg-input:focus-within{background:var(--white);border-color:var(--navy-700);box-shadow:0 0 0 3px rgba(30,58,95,0.08)}
button.lg-btn{width:100%;border:none;cursor:pointer}
.lg-err{margin-top:16px;background:var(--error-50);border:1px solid var(--error-bg);color:var(--error);border-radius:10px;padding:10px 13px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:9px;line-height:1.4}
.lg-err svg{width:16px;height:16px;flex-shrink:0}
.lg-right form{display:flex;flex-direction:column}
.lg-sso-btn{cursor:not-allowed;opacity:.65}

/* =========================================================================
   Gecis uyumlulugu — eski sayfa bilesenleri (henuz mockup'a tasinmadi)
   yeni palette ile tutarli gorunsun diye. Sayfalar zamanla zenginlestirilir.
   ========================================================================= */
.pg h2{font-family:var(--display);font-weight:800;font-size:22px;color:var(--navy-950);letter-spacing:-0.02em;margin:0 0 14px}
.pg h3{font-family:var(--display);font-weight:700;font-size:15px;color:var(--navy-950);margin:0 0 10px}
.cards{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:20px}
.card{background:var(--white);border:1px solid var(--gray-200);border-radius:13px;padding:16px 20px;min-width:150px;position:relative;overflow:hidden}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--navy-700)}
.card.danger::before{background:var(--error)}
.card b{display:block;font-family:var(--display);font-weight:800;font-size:28px;color:var(--navy-950);letter-spacing:-0.02em;line-height:1.1}
.card.danger b{color:var(--error)}
.form-card{background:var(--white);border:1px solid var(--gray-200);border-radius:13px;padding:16px 20px;margin-bottom:16px;max-width:560px}
.form-card strong{font-family:var(--display);font-weight:700;color:var(--navy-950);font-size:14px}
.row{display:flex;gap:14px;flex-wrap:wrap}
.row>div{flex:1;min-width:160px}
table{border-collapse:separate;border-spacing:0;width:100%;background:var(--white);border:1px solid var(--gray-200);border-radius:11px;overflow:hidden}
th,td{border-bottom:1px solid var(--gray-150);padding:10px 13px;text-align:left;font-size:12.5px}
th{background:var(--gray-50);font-family:var(--display);font-weight:700;font-size:10.5px;color:var(--gray-600);letter-spacing:0.06em;text-transform:uppercase}
td{color:var(--navy-900)}
tr:last-child td{border-bottom:none}
label{display:block;margin:11px 0 5px;font-family:var(--display);font-weight:600;font-size:10.5px;letter-spacing:0.06em;color:var(--navy-700);text-transform:uppercase}
input,select,textarea{width:100%;box-sizing:border-box;height:38px;padding:0 11px;background:var(--gray-50);color:var(--navy-900);border:1.5px solid var(--gray-200);border-radius:8px;font-family:var(--body);font-size:13px}
textarea{height:auto;min-height:84px;padding:9px 11px;line-height:1.5}
input:focus,select:focus,textarea:focus{outline:none;background:var(--white);border-color:var(--navy-700);box-shadow:0 0 0 3px rgba(30,58,95,0.08)}
a{color:var(--navy-700)}
button{height:36px;padding:0 15px;border-radius:8px;border:1px solid var(--navy-700);background:var(--navy-700);color:var(--white);font-family:var(--display);font-weight:600;font-size:12.5px;cursor:pointer;display:inline-flex;align-items:center;gap:7px}
button.ghost,.btn.ghost{background:var(--white);color:var(--navy-700);border:1px solid var(--gray-200)}
button.danger,.btn.danger{background:var(--error);border-color:var(--error);color:var(--white)}
.btn{cursor:pointer;text-decoration:none}
.muted{color:var(--gray-500)}
.pill{display:inline-block;padding:2px 9px;border-radius:99px;font-family:var(--display);font-weight:700;font-size:10.5px;border:1px solid var(--gray-200);color:var(--gray-600)}
.pill.crit{background:var(--error);color:#fff;border-color:var(--error)}
.pill.warn{background:var(--amber-50);color:var(--amber-700);border-color:var(--amber-300)}
#map{height:480px;border:1px solid var(--gray-200);border-radius:13px}

/* Y2 KONTROL KULESİ — WS5-A (KPI + performans SVG + bekleyen aksiyon island + mini harita) */
.ds-actions.five{grid-template-columns:repeat(5,1fr);margin-bottom:0}
@media (max-width:1400px){.ds-actions.five{grid-template-columns:repeat(3,1fr)}}
.ds-perf .tabs button.t{background:transparent;border:none;height:auto;color:var(--gray-600)}
.ds-perf .tabs button.t.active{background:var(--white);color:var(--navy-900);box-shadow:0 1px 3px rgba(0,0,0,0.08)}
.pf-svg{width:100%;height:auto;display:block}
.pf-axis{stroke:var(--gray-200);stroke-width:1}
.pf-bar{fill:var(--navy-700)}
.pf-bar:hover{fill:var(--amber-500)}
.pf-val{font-family:var(--display);font-weight:700;font-size:10px;fill:var(--navy-900)}
.pf-lb{font-family:var(--mono);font-size:9px;fill:var(--gray-500)}
.pf-note{margin-top:8px;font-size:10.5px;color:var(--gray-500)}
.pf-chip{display:inline-block;background:var(--gray-100);color:var(--navy-900);border-radius:5px;padding:2px 6px;margin:0 4px 4px 0;font-family:var(--mono);font-size:9.5px;font-weight:600}

/* GLOBAL ARAMA (⌘K) + ZİL ROZETİ — WS5-B */
.gs{position:relative;margin-left:auto;width:min(320px,32vw)}
.gs input{height:32px;font-size:12px;background:var(--gray-100);border-color:var(--gray-200)}
.gs-drop{position:absolute;top:38px;left:0;right:0;z-index:60}
.gs-list{background:var(--white);border:1px solid var(--gray-200);border-radius:10px;box-shadow:0 10px 28px rgba(0,0,0,0.12);overflow:hidden}
.gs-item{display:flex;align-items:center;gap:10px;padding:8px 12px;text-decoration:none;color:var(--navy-900);font-size:12.5px;border-bottom:1px solid var(--gray-150)}
.gs-item:last-child{border-bottom:none}
.gs-item:hover{background:var(--gray-50)}
.gs-ic{width:26px;height:26px;border-radius:7px;background:var(--gray-100);color:var(--gray-700);display:grid;place-items:center;flex-shrink:0}
.gs-ic svg{width:13px;height:13px}
.gs-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gs-kind{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:0.05em;text-transform:uppercase;color:var(--gray-500)}
.gs-hint{background:var(--white);border:1px solid var(--gray-200);border-radius:10px;box-shadow:0 10px 28px rgba(0,0,0,0.12);padding:9px 12px;font-size:11.5px;color:var(--gray-500)}
.bell-badge-num{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;border-radius:99px;background:var(--error);color:#fff;font-family:var(--display);font-weight:700;font-size:9px;display:grid;place-items:center;padding:0 4px;border:1.5px solid var(--white)}

/* WS5-C — PAROLA SIFIRLAMA + REMEMBER-ME + 2FA KAYIT UI */
.lg-aux{margin-top:14px;display:flex;align-items:center;justify-content:space-between;font-size:12px}
.lg-aux label{display:flex;align-items:center;gap:7px;margin:0;color:var(--gray-700);font-family:var(--body);font-weight:500;font-size:12px;letter-spacing:0;text-transform:none;cursor:pointer}
.lg-aux input[type=checkbox]{width:14px;height:14px;accent-color:var(--navy-700);margin:0}
.lg-aux a{color:var(--amber-700);font-weight:600;text-decoration:none}
.lg-aux a:hover{text-decoration:underline}
.lg-ok{margin-top:16px;background:var(--success-50);border:1px solid var(--success-bg);color:var(--success);border-radius:10px;padding:10px 13px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:9px;line-height:1.4}
.lg-ok svg{width:16px;height:16px;flex-shrink:0}
.lg-single{max-width:420px;width:100%;margin:auto;padding:42px 28px;display:flex;flex-direction:column;justify-content:center}
.lg-single form{display:flex;flex-direction:column}
.lg-single .av-cn{display:flex;justify-content:center;margin-bottom:16px}
.lg-single .av-cn .av{width:56px;height:56px;border-radius:50%;background:var(--navy-700);color:var(--amber-300);display:grid;place-items:center;box-shadow:0 6px 18px rgba(30,58,95,0.25)}
.lg-single h3{font-family:var(--display);font-weight:800;font-size:21px;color:var(--navy-950);letter-spacing:-0.02em;text-align:center}
.lg-single .helper{margin-top:5px;color:var(--gray-600);font-size:12.5px;text-align:center;line-height:1.5}
.lg-single .lg-kvkk{margin-top:14px;text-align:center;font-size:11.5px}
.lg-single .lg-kvkk a{color:var(--amber-700);font-weight:600;text-decoration:none}
a.lg-link-btn{margin-top:18px;text-decoration:none}
.lg-screen:has(.lg-single){display:flex;background:var(--page-bg)}
.twofa{max-width:680px}
.tf-banner{border-radius:10px;padding:10px 13px;font-size:12.5px;font-weight:600;display:flex;align-items:center;gap:9px;line-height:1.4;margin-bottom:14px}
.tf-banner svg{width:16px;height:16px;flex-shrink:0}
.tf-banner.ok{background:var(--success-50);border:1px solid var(--success-bg);color:var(--success)}
.tf-banner.err{background:var(--error-50);border:1px solid var(--error-bg);color:var(--error)}
.tf-card{max-width:none}
.tf-head{display:flex;align-items:flex-start;gap:13px;margin-bottom:6px}
.tf-head h2{margin:0 0 3px;font-size:17px}
.tf-ic{width:40px;height:40px;border-radius:11px;background:var(--navy-700);color:var(--amber-300);display:grid;place-items:center;flex-shrink:0}
.tf-ic svg{width:20px;height:20px}
.tf-sub{font-size:12px;color:var(--gray-600);line-height:1.5}
.tf-badge{margin-left:auto;flex-shrink:0;display:inline-block;padding:3px 11px;border-radius:99px;font-family:var(--display);font-weight:700;font-size:10.5px}
.tf-badge.on{background:var(--success-50);color:var(--success);border:1px solid var(--success-bg)}
.tf-badge.off{background:var(--gray-100);color:var(--gray-600);border:1px solid var(--gray-200)}
.tf-setup h3,.tf-card h3{font-size:13px;margin:16px 0 6px}
.tf-setup p{font-size:12.5px;color:var(--gray-700);line-height:1.55;margin:0 0 8px}
.tf-copy{margin:8px 0}
.tf-copy .lbl{font-family:var(--display);font-weight:600;font-size:10px;letter-spacing:0.06em;color:var(--navy-700);text-transform:uppercase;margin-bottom:4px}
.tf-copy code{display:block;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px;padding:8px 11px;font-family:var(--mono);font-size:11.5px;color:var(--navy-900);word-break:break-all;user-select:all}
.tf-codes{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:7px;margin:8px 0 4px}
.tf-codes .rc-code{background:var(--amber-50);border:1px dashed var(--amber-300);border-radius:8px;padding:7px 0;text-align:center;font-family:var(--mono);font-size:12px;font-weight:600;color:var(--navy-900);user-select:all}
.tf-note{font-size:12.5px;color:var(--gray-700);line-height:1.55;margin:12px 0 0}
.tf-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}
.tf-actions form{display:flex;align-items:center;gap:8px}
.tf-verify input{width:150px;font-family:var(--mono);letter-spacing:0.12em}
