:root{
  --bg:#0b0c0e;--bg2:#0f1114;--surface:#15171b;--surface2:#1b1e23;--surface3:#20242a;
  --ivory:#f4efe6;--ivory2:#fffaf1;--text:#f7f3ec;--muted:#9e9a94;--muted2:#716e69;
  --copper:#b87345;--copper2:#d39a6a;--bronze:#80604b;--line:rgba(255,255,255,.075);
  --green:#56b887;--red:#cf6f67;--amber:#d2a15f;--shadow:0 24px 60px rgba(0,0,0,.28);
  --radius:22px;--radius-sm:15px;--sidebar:252px;
}
*{box-sizing:border-box}html{background:var(--bg);color-scheme:dark}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg);min-height:100vh;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{transition:.18s ease}svg{display:block}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(900px 520px at 78% -5%,rgba(184,115,69,.15),transparent 58%),radial-gradient(800px 500px at 20% 110%,rgba(211,154,106,.07),transparent 60%);z-index:-1}
.app-frame{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:25px 18px 20px;background:linear-gradient(180deg,#0d0f12,#0a0b0d);border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:40}.brand{display:flex;align-items:center;gap:12px;padding:4px 7px}.brand-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,var(--copper2),var(--copper));box-shadow:0 8px 28px rgba(184,115,69,.2)}.brand-mark img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.brand-copy strong{font-family:Manrope,sans-serif;display:block;font-size:.89rem;letter-spacing:.075em}.brand-copy small{display:block;color:var(--copper2);font-size:.64rem;margin-top:3px;letter-spacing:.07em;text-transform:uppercase}
.side-nav{display:flex;flex-direction:column;gap:6px;margin-top:48px}.side-nav a{display:flex;align-items:center;gap:13px;padding:12px 13px;border-radius:13px;color:#908e8a;font-size:.88rem;font-weight:700}.side-nav a:hover{background:rgba(255,255,255,.035);color:var(--text)}.side-nav a.active{background:linear-gradient(90deg,rgba(184,115,69,.17),rgba(184,115,69,.05));color:var(--ivory);box-shadow:inset 2px 0 var(--copper2)}.nav-icon{width:23px;text-align:center;font-size:1.05rem;color:var(--copper2)}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding:18px 7px 0}.mini-profile{display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;border-radius:11px;background:var(--surface3);display:grid;place-items:center;color:var(--copper2);font-weight:900}.mini-profile strong{display:block;font-size:.78rem}.mini-profile small{color:var(--muted2);font-size:.68rem}.logout-link{display:block;margin-top:13px;color:#777;font-size:.72rem;font-weight:700}.logout-link:hover{color:var(--copper2)}
.app-main{min-width:0}.mobile-topbar{display:none}.app-shell{width:min(1380px,calc(100% - 56px));margin:0 auto;padding:37px 0 80px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px}.page-head h1,.hero h1{font-family:Manrope,sans-serif;margin:0;font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.045em}.eyebrow,.kicker{color:var(--copper2);font-size:.7rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.subtle{color:var(--muted);line-height:1.6}.panel,.metric,.session-card,.form-card,.table-card,.report-card{background:linear-gradient(180deg,rgba(27,30,35,.95),rgba(20,22,26,.95));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;margin-bottom:18px}.hero-copy{padding:34px;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.hero-copy:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-100px;top:-140px;border:1px solid rgba(211,154,106,.17);box-shadow:0 0 0 45px rgba(211,154,106,.025),0 0 0 90px rgba(211,154,106,.015)}.hero-copy p{max-width:660px;margin-bottom:0}.hero-number{font-family:Manrope,sans-serif;font-size:clamp(4.2rem,9vw,8.8rem);font-weight:800;letter-spacing:-.075em;line-height:.88;margin-top:24px;color:var(--ivory)}.hero-number span{font-size:.17em;letter-spacing:.09em;color:var(--copper2);margin-left:12px}.start-panel{padding:24px;display:flex;flex-direction:column;justify-content:center;gap:12px}.start-panel h2{font-family:Manrope,sans-serif;margin:0 0 4px;font-size:1.35rem}.platform-btn{border:1px solid var(--line);background:var(--surface3);color:var(--text);border-radius:18px;padding:19px 20px;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-weight:900}.platform-btn:after{content:"→";font-size:1.2rem;color:var(--copper2)}.platform-btn:hover{transform:translateY(-2px);border-color:rgba(211,154,106,.35);box-shadow:0 12px 28px rgba(0,0,0,.2)}.platform-btn.copper{background:linear-gradient(135deg,var(--copper),#8f5233);color:#130f0d;border-color:transparent}.platform-btn.copper:after{color:#23150e}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:18px 0 28px}.metric{padding:18px 19px;box-shadow:none}.metric .label,.report-card .label{color:var(--muted2);font-size:.68rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.metric .value{font-family:Manrope,sans-serif;font-size:1.55rem;font-weight:800;margin-top:8px;color:var(--ivory)}.metric .note{font-size:.7rem;color:#777;margin-top:4px}.metric:first-child{border-color:rgba(184,115,69,.25);background:linear-gradient(145deg,rgba(184,115,69,.12),rgba(20,22,26,.96))}
.session-card{padding:27px;margin-bottom:20px;border-color:rgba(184,115,69,.22);position:relative;overflow:hidden}.session-card:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-90px;top:-130px;background:radial-gradient(circle,rgba(184,115,69,.13),transparent 68%);pointer-events:none}.session-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.session-head h2{font-family:Manrope,sans-serif;font-size:1.55rem;margin:5px 0 0}.status{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 11px;background:rgba(86,184,135,.1);border:1px solid rgba(86,184,135,.18);color:var(--green);font-size:.67rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(86,184,135,.08)}.session-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}.stat-box{background:rgba(255,255,255,.025);border:1px solid var(--line);border-radius:15px;padding:15px}.stat-box small{display:block;color:var(--muted2);font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px}.stat-box strong{font-family:Manrope,sans-serif;font-size:1.15rem}.action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.action{min-height:112px;padding:17px;border-radius:17px;background:rgba(255,255,255,.025);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-end}.action:before{content:"↗";width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:rgba(184,115,69,.12);color:var(--copper2);margin-bottom:auto}.action strong{font-size:.88rem}.action span{font-size:.7rem;color:var(--muted2);margin-top:4px}.action:hover{background:rgba(184,115,69,.07);border-color:rgba(184,115,69,.28);transform:translateY(-2px)}
.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:25px 0 12px}.section-title h2{font-family:Manrope,sans-serif;margin:0;font-size:1.15rem}.form-card{padding:26px}.form-card h1,.form-card h2{font-family:Manrope,sans-serif}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-group{display:flex;flex-direction:column;gap:7px}.form-group.full{grid-column:1/-1}label{color:var(--muted);font-size:.72rem;font-weight:800}input,select,textarea{width:100%;background:#111317;border:1px solid var(--line);color:var(--ivory);border-radius:13px;padding:14px 15px;outline:none}input::placeholder,textarea::placeholder{color:#5f5d5a}input:focus,select:focus,textarea:focus{border-color:rgba(211,154,106,.55);box-shadow:0 0 0 3px rgba(184,115,69,.10)}input[type=number]{font-family:Manrope,sans-serif;font-weight:800;font-size:1.04rem}.btn-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:12px;padding:12px 16px;font-weight:850;font-size:.78rem;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--copper2),var(--copper));color:#17100c}.btn-primary:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn-secondary{background:var(--surface3);border-color:var(--line);color:var(--text)}.btn-outline{background:transparent;border-color:var(--line);color:var(--muted)}.btn-danger{background:rgba(207,111,103,.1);border-color:rgba(207,111,103,.2);color:#e4877f}.btn:hover{border-color:rgba(211,154,106,.32)}
.table-card{overflow:hidden;box-shadow:none}table{width:100%;border-collapse:collapse}th,td{padding:15px 16px;text-align:left;border-bottom:1px solid var(--line);font-size:.78rem}th{font-size:.64rem;color:var(--muted2);font-weight:900;letter-spacing:.1em;text-transform:uppercase;background:rgba(255,255,255,.015)}tbody tr:hover{background:rgba(255,255,255,.018)}tbody tr:last-child td{border-bottom:0}.pill{display:inline-flex;padding:6px 9px;border:1px solid rgba(184,115,69,.16);background:rgba(184,115,69,.08);color:var(--copper2);border-radius:999px;font-size:.66rem;font-weight:850}.empty{padding:42px;text-align:center;color:var(--muted2)}
.flash{display:flex;align-items:center;gap:9px;margin-bottom:18px;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:var(--surface2);font-size:.78rem;font-weight:750}.flash-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.flash.success{color:var(--green);border-color:rgba(86,184,135,.18)}.flash.error{color:var(--red);border-color:rgba(207,111,103,.2)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.report-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.report-card{padding:20px;box-shadow:none}.big-number{font-family:Manrope,sans-serif;font-size:clamp(2.4rem,6vw,4.5rem);font-weight:800;letter-spacing:-.055em}.report-card .big-number{font-size:clamp(2rem,4vw,3.1rem);margin-top:8px}.panel{padding:22px}.inline-form{margin:0}
.mobile-nav{display:none}
@media(max-width:1000px){:root{--sidebar:220px}.grid-4{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.hero-copy{min-height:250px}.action-grid{grid-template-columns:repeat(2,1fr)}.session-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.app-frame{display:block}.sidebar{display:none}.mobile-topbar{display:flex;position:sticky;top:0;z-index:45;align-items:center;justify-content:space-between;padding:12px 16px;background:rgba(11,12,14,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.brand.compact{padding:0}.brand.compact .brand-mark{width:38px;height:38px;border-radius:12px}.brand.compact .brand-mark img{width:100%;height:100%;object-fit:cover}.brand.compact .brand-copy strong{font-size:.76rem}.brand.compact .brand-copy small{font-size:.56rem}.mobile-date{font-size:.72rem;color:var(--muted2);font-weight:800}.app-shell{width:min(100% - 28px,1000px);padding:22px 0 105px}.mobile-nav{display:flex;position:fixed;z-index:60;left:12px;right:12px;bottom:12px;padding:6px;border:1px solid var(--line);border-radius:18px;background:rgba(19,21,25,.94);backdrop-filter:blur(20px);box-shadow:0 20px 50px rgba(0,0,0,.35)}.mobile-nav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px;border-radius:12px;color:#777}.mobile-nav a span{font-size:1.08rem}.mobile-nav a small{font-size:.57rem;font-weight:800}.mobile-nav a.active{background:rgba(184,115,69,.12);color:var(--copper2)}.two-col{grid-template-columns:1fr}.auth-wrap{grid-template-columns:1fr;min-height:auto;max-width:480px}.auth-wrap:before,.auth-wrap:after{display:none}.auth-card{padding:32px 25px}}
@media(max-width:560px){.app-shell{width:calc(100% - 18px)}.hero-copy,.start-panel,.session-card,.form-card{padding:19px}.hero-number{font-size:4.5rem}.grid-4{gap:8px}.metric{padding:14px}.metric .value{font-size:1.22rem}.session-stats{gap:8px}.stat-box{padding:12px}.action-grid{gap:8px}.action{min-height:102px;padding:14px}.form-grid{grid-template-columns:1fr}.form-group.full{grid-column:auto}.report-grid{grid-template-columns:1fr}.table-card{overflow:auto}table{min-width:720px}.btn{padding:12px 14px}.page-head{align-items:flex-start;flex-direction:column}.section-title{align-items:flex-start}.auth-shell{padding:14px}.auth-card{padding:28px 20px}.brand-lockup h2{font-size:1.9rem}}


/* Gig Mileage approved application icon */
.brand-mark{
  overflow:hidden;
  padding:0;
  background:#111317;
  border:1px solid rgba(211,154,106,.22);
  box-shadow:0 10px 30px rgba(184,115,69,.22),0 0 0 1px rgba(255,255,255,.02) inset;
}
.brand-mark img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:inherit;
}
.brand-lockup .brand-mark{width:58px;height:58px;border-radius:17px}


/* =========================================================
   ROUTELEDGER V8 — LOGIN, DASHBOARD BACKGROUND, IPAD/PWA
   ========================================================= */

:root{
  --route-bg:url("../images/texas-satellite.webp");
  --safe-top:env(safe-area-inset-top,0px);
  --safe-right:env(safe-area-inset-right,0px);
  --safe-bottom:env(safe-area-inset-bottom,0px);
  --safe-left:env(safe-area-inset-left,0px);
}

html{
  min-height:100%;
  overscroll-behavior:none;
  -webkit-text-size-adjust:100%;
}

body{
  min-height:100dvh;
  overscroll-behavior-y:none;
  -webkit-tap-highlight-color:transparent;
}

.brand-mark{
  overflow:hidden;
  padding:0;
  background:#111317;
  border:1px solid rgba(211,154,106,.22);
  box-shadow:0 10px 30px rgba(184,115,69,.22),0 0 0 1px rgba(255,255,255,.02) inset;
}

.brand-mark img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:inherit;
}

/* ---------------------------------------------------------
   LOGIN PAGE
   --------------------------------------------------------- */

.page-login.auth-body{
  min-height:100dvh;
  background-color:#08090b;
  background-image:
    radial-gradient(900px 620px at 72% 52%,rgba(184,115,69,.10),transparent 62%),
    linear-gradient(100deg,rgba(5,7,9,.34) 0%,rgba(5,7,9,.18) 46%,rgba(5,7,9,.50) 100%),
    var(--route-bg);
  background-size:cover,cover,cover;
  background-position:center,center,center;
  background-repeat:no-repeat,no-repeat,no-repeat;
}

.page-login.auth-body:before,
.page-login.auth-body:after,
.page-login .auth-shell:before,
.page-login .auth-shell:after,
.page-login .auth-wrap:before,
.page-login .auth-wrap:after{
  display:none !important;
  content:none !important;
}

.page-login .auth-shell{
  min-height:100dvh;
  padding:clamp(18px,3vw,42px);
  display:grid;
  place-items:center;
  background:transparent !important;
  overflow:auto;
}

.routeledger-login{
  width:min(1180px,100%);
  min-height:min(650px,calc(100dvh - 52px));
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(400px,.82fr);
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.11);
  border-radius:30px;
  background:rgba(8,10,12,.30);
  box-shadow:
    0 40px 110px rgba(0,0,0,.55),
    0 0 0 1px rgba(211,154,106,.05) inset;
  backdrop-filter:blur(6px) saturate(115%);
  -webkit-backdrop-filter:blur(6px) saturate(115%);
}

.routeledger-brand-panel{
  min-width:0;
  display:flex;
  flex-direction:column;
  padding:38px 46px 34px;
  background:
    linear-gradient(90deg,rgba(7,9,11,.70),rgba(7,9,11,.26) 78%,transparent),
    linear-gradient(180deg,rgba(7,9,11,.10),rgba(7,9,11,.46));
}

.routeledger-brand-top{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:20px;
  color:var(--copper2);
  font-size:.60rem;
  font-weight:900;
  letter-spacing:.16em;
}

.routeledger-brand-top i{
  width:38px;
  height:1px;
  background:rgba(211,154,106,.48);
}

.routeledger-brand-top .muted{
  color:rgba(244,239,230,.44);
}

.routeledger-brand-content{
  width:min(100%,650px);
  margin:auto 0;
  padding:24px 0;
}

.routeledger-kicker{
  margin-bottom:13px;
  color:var(--copper2);
  font-size:.64rem;
  font-weight:900;
  letter-spacing:.19em;
}

.routeledger-brand-content h1{
  margin:0;
  font-family:Manrope,sans-serif;
  font-size:clamp(3.5rem,5.5vw,5.45rem);
  line-height:.88;
  letter-spacing:-.067em;
  color:var(--ivory2);
  text-shadow:0 10px 42px rgba(0,0,0,.34);
}

.routeledger-brand-content h1 span{
  color:var(--copper2);
}

.routeledger-brand-content p{
  margin:22px 0 18px;
  color:rgba(244,239,230,.82);
  font-size:clamp(.95rem,1.2vw,1.06rem);
  line-height:1.52;
  font-weight:500;
}

.routeledger-features{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  color:rgba(244,239,230,.54);
  font-size:.60rem;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.routeledger-features i{
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--copper);
}

.routeledger-brand-foot{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:20px;
  color:rgba(244,239,230,.38);
  font-size:.56rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.routeledger-brand-foot i{
  width:52px;
  height:1px;
  flex:0 0 52px;
  background:linear-gradient(90deg,var(--copper2),rgba(211,154,106,.06));
}

.routeledger-login-card{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(34px,3.3vw,48px);
  border-left:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(17,19,23,.94),rgba(11,13,16,.965));
  box-shadow:-24px 0 65px rgba(0,0,0,.17);
  backdrop-filter:blur(26px);
  -webkit-backdrop-filter:blur(26px);
}

.routeledger-login-heading{
  margin-bottom:27px;
}

.page-login .login-brand-mark{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  margin-bottom:22px;
  border-radius:16px;
}

.routeledger-product-name{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--copper2);
}

.routeledger-product-name span{
  color:#696762;
  letter-spacing:.08em;
}

.routeledger-login-heading h2{
  margin:8px 0 8px;
  font-family:Manrope,sans-serif;
  font-size:clamp(2rem,2.6vw,2.5rem);
  line-height:1.04;
  letter-spacing:-.045em;
}

.routeledger-login-heading p{
  margin:0;
  max-width:350px;
  color:#9e9a94;
  font-size:.88rem;
  line-height:1.55;
}

.routeledger-login-form{
  display:grid;
  gap:15px;
}

.routeledger-login-form .form-group{
  gap:8px;
}

.routeledger-login-form label{
  color:#b4b0aa;
  font-size:.69rem;
  font-weight:800;
}

.routeledger-login-form input{
  min-height:54px;
  padding:15px 17px;
  border-radius:15px;
  border-color:rgba(255,255,255,.10);
  background:rgba(29,33,40,.90);
  font-size:16px;
}

.routeledger-login-form input:focus{
  border-color:rgba(211,154,106,.65);
  box-shadow:0 0 0 4px rgba(184,115,69,.11);
}

.routeledger-signin{
  width:100%;
  min-height:54px;
  margin-top:3px;
  padding:0 17px 0 21px;
  justify-content:space-between;
  border-radius:15px;
  color:#160f0b;
  background:linear-gradient(135deg,#dea171 0%,#b87345 52%,#925332 100%);
  box-shadow:
    0 13px 30px rgba(184,115,69,.20),
    inset 0 1px rgba(255,255,255,.18);
}

.routeledger-signin > span:first-child{
  display:inline;
  width:auto;
  height:auto;
  background:transparent;
}

.routeledger-signin-arrow{
  width:29px;
  height:29px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:rgba(20,12,8,.12);
}

.routeledger-secure-note{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:21px;
  color:#66645f;
  font-size:.64rem;
  font-weight:700;
}

.routeledger-secure-note i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 4px rgba(86,184,135,.07);
}

/* ---------------------------------------------------------
   DASHBOARD BACKGROUND
   --------------------------------------------------------- */

.page-index.app-body{
  min-height:100dvh;
  background-color:#08090b;
  background-image:
    radial-gradient(900px 620px at 78% 12%,rgba(184,115,69,.09),transparent 60%),
    linear-gradient(110deg,rgba(5,7,9,.72) 0%,rgba(5,7,9,.54) 48%,rgba(5,7,9,.43) 100%),
    var(--route-bg);
  background-size:cover,cover,cover;
  background-position:center top,center top,center top;
  background-repeat:no-repeat,no-repeat,no-repeat;
}

.page-index.app-body:before,
.page-index.app-body:after{
  display:none !important;
  content:none !important;
}

.page-index .app-frame,
.page-index .app-main,
.page-index .app-shell{
  background:transparent !important;
}

.page-index .hero-copy,
.page-index .start-panel,
.page-index .session-card,
.page-index .metric,
.page-index .table-card{
  backdrop-filter:blur(14px) saturate(115%);
  -webkit-backdrop-filter:blur(14px) saturate(115%);
}

.page-index .hero-copy,
.page-index .start-panel{
  background:linear-gradient(180deg,rgba(27,30,35,.82),rgba(20,22,26,.88));
}

.page-index .metric,
.page-index .table-card{
  background:linear-gradient(180deg,rgba(27,30,35,.88),rgba(20,22,26,.90));
}

.page-index .session-card{
  background:linear-gradient(145deg,rgba(25,28,33,.91),rgba(15,17,20,.92));
}

/* ---------------------------------------------------------
   IPAD / TABLET
   --------------------------------------------------------- */

@media (min-width:900px) and (max-width:1366px) and (orientation:landscape){
  .page-login .auth-shell{
    padding:24px;
  }

  .routeledger-login{
    min-height:calc(100dvh - 48px);
    grid-template-columns:minmax(0,1.15fr) minmax(385px,.85fr);
  }

  .routeledger-brand-panel{
    padding:30px 36px 28px;
  }

  .routeledger-brand-content h1{
    font-size:clamp(3.35rem,5.2vw,4.8rem);
  }

  .routeledger-login-card{
    padding:32px 36px;
  }
}

@media (min-width:700px) and (max-width:1024px) and (orientation:portrait){
  .page-login .auth-shell{
    padding:28px;
  }

  .routeledger-login{
    width:min(760px,100%);
    min-height:calc(100dvh - 56px);
    grid-template-columns:1fr;
    grid-template-rows:minmax(240px,.66fr) auto;
  }

  .routeledger-brand-panel{
    min-height:245px;
    padding:26px 32px 24px;
  }

  .routeledger-brand-content{
    margin:auto 0;
    padding:18px 0 14px;
  }

  .routeledger-brand-content h1{
    font-size:clamp(3.3rem,8.8vw,4.6rem);
  }

  .routeledger-brand-foot{
    display:none;
  }

  .routeledger-login-card{
    padding:30px 36px 34px;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.08);
  }
}

@media (max-width:699px){
  .page-login .auth-shell{
    padding:12px;
  }

  .routeledger-login{
    display:block;
    min-height:auto;
    border-radius:24px;
  }

  .routeledger-brand-panel{
    min-height:178px;
    padding:20px;
  }

  .routeledger-brand-content{
    margin:28px 0 0;
    padding:0;
  }

  .routeledger-brand-content h1{
    font-size:clamp(2.75rem,13vw,3.8rem);
  }

  .routeledger-brand-content p{
    margin:12px 0 10px;
    font-size:.84rem;
  }

  .routeledger-brand-foot{
    display:none;
  }

  .routeledger-login-card{
    padding:25px 21px 27px;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.08);
  }

  .page-login .login-brand-mark{
    width:47px;
    height:47px;
    margin-bottom:17px;
  }

  .routeledger-login-heading h2{
    font-size:1.8rem;
  }

  .page-index.app-body{
    background-position:62% top;
    background-size:auto 100vh;
    background-repeat:no-repeat;
  }
}
