/* KursRadar Web v46 — publiczna strona, panel kierowcy i centrum administratora */
:root{
  --v46-navy:#06111f;
  --v46-navy-2:#0b223b;
  --v46-blue:#0b84e5;
  --v46-cyan:#22c7dd;
  --v46-green:#12b981;
  --v46-violet:#7455e9;
  --v46-border:#dce7f1;
  --v46-panel:#ffffff;
  --v46-canvas:#f3f7fb;
  --v46-shadow:0 18px 55px rgba(19,53,86,.09);
}

/* Strona publiczna */
.public-body{background:#fff}
.top-announcement{background:linear-gradient(90deg,#06111f,#0a2d4d 60%,#073d55)}
.announcement-inner{justify-content:space-between}
.site-header{box-shadow:0 1px 0 rgba(219,231,241,.55)}
.site-header .brand img{box-shadow:0 10px 28px rgba(8,120,209,.20)}
.hero-v41{background:radial-gradient(circle at 85% 10%,rgba(34,199,221,.13),transparent 26%),radial-gradient(circle at 12% 42%,rgba(11,132,229,.08),transparent 31%),linear-gradient(180deg,#fff 0%,#f6fbff 100%)}
.hero-v41-copy h1{max-width:830px}
.hero-v41-copy h1 span{background:linear-gradient(100deg,#0878d1,#16abc8 60%,#12a870);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-v41-appcard{border-color:#194a69;box-shadow:0 44px 100px rgba(3,22,40,.32)}
.hero-v41-summary>div,.platform-status-card,.v41-steps article,.premium-faq details{box-shadow:0 15px 45px rgba(24,62,96,.065)}
.section-product .product-showcase{border:1px solid #16344b;box-shadow:0 42px 110px rgba(3,24,42,.25)}
.platform-status-item.is-lab{border-color:#d9d6fb;background:linear-gradient(135deg,#fff,#f7f5ff)}
.platform-status-item.is-lab .platform-state{background:#f0edff;color:#6848d7}
.platform-status-item.is-lab .platform-state i{background:#7455e9;box-shadow:0 0 0 4px rgba(116,85,233,.11)}

.web-command-section{position:relative;overflow:hidden;padding:112px 0;background:linear-gradient(180deg,#fff,#f2f8fd 45%,#fff);border-top:1px solid #e4edf5}
.web-command-section:before{content:"";position:absolute;left:-230px;top:80px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(11,132,229,.10),transparent 68%)}
.web-command-grid{position:relative;display:grid;grid-template-columns:minmax(0,.82fr) minmax(560px,1.18fr);gap:70px;align-items:center}
.web-command-copy h2{margin:14px 0 18px;font-size:clamp(40px,5vw,63px);line-height:1.02;letter-spacing:-.052em}
.web-command-copy>p{max-width:650px;margin:0;color:#61788e;font-size:16px;line-height:1.75}
.web-command-list{display:grid;gap:11px;margin:28px 0}
.web-command-list>div{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;padding:13px;border:1px solid #dce8f2;border-radius:17px;background:#fff;box-shadow:0 10px 30px rgba(24,62,96,.05)}
.web-command-list p{margin:0}
.web-command-list span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#e9f6ff;color:#0878d1;font-weight:800}
.web-command-list strong,.web-command-list small{display:block}
.web-command-list strong{font-size:14px}
.web-command-list small{margin-top:2px;color:#74879a;font-size:11px}
.web-dashboard-preview{overflow:hidden;border:1px solid #d4e4ef;border-radius:31px;background:#fff;box-shadow:0 34px 90px rgba(20,57,91,.15)}
.web-preview-top{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 19px;border-bottom:1px solid #e4edf4;background:#fbfdff}
.web-preview-brand{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:700}
.web-preview-brand img{width:31px;height:31px;border-radius:10px}
.web-preview-live{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;background:#e8fbf4;color:#07855f;font-size:9px;font-weight:800}
.web-preview-live i{width:6px;height:6px;border-radius:50%;background:#12b981}
.web-preview-body{display:grid;grid-template-columns:122px 1fr;min-height:430px}
.web-preview-nav{padding:15px 10px;background:linear-gradient(180deg,#071522,#0b2239)}
.web-preview-nav span{display:block;margin-bottom:6px;padding:9px 10px;border-radius:9px;color:#7f99b1;font-size:8px}
.web-preview-nav span.active{background:rgba(34,199,221,.12);color:#fff}
.web-preview-main{padding:20px;background:#f3f7fb}
.web-preview-welcome{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px;border-radius:16px;background:linear-gradient(120deg,#071725,#10436a);color:#fff}
.web-preview-welcome small,.web-preview-welcome strong{display:block}
.web-preview-welcome small{color:#80a0bb;font-size:8px}
.web-preview-welcome strong{margin-top:3px;font-size:15px}
.web-preview-welcome b{color:#5ce3bd;font-size:10px}
.web-preview-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
.web-preview-kpis div{padding:12px;border:1px solid #e0e9f1;border-radius:13px;background:#fff}
.web-preview-kpis small,.web-preview-kpis strong,.web-preview-kpis span{display:block}
.web-preview-kpis small{font-size:7px;color:#8091a1}
.web-preview-kpis strong{margin:3px 0;font-size:16px}
.web-preview-kpis span{font-size:7px;color:#0d9871}
.web-preview-chart{height:165px;display:flex;align-items:flex-end;gap:8px;margin-top:10px;padding:18px 16px 25px;border:1px solid #e0e9f1;border-radius:15px;background:#fff}
.web-preview-chart i{position:relative;flex:1;height:var(--h);border-radius:7px 7px 3px 3px;background:linear-gradient(180deg,#22c7dd,#0b84e5)}
.web-preview-chart i:nth-child(2n){background:linear-gradient(180deg,#c8dff0,#e8f0f6)}
.web-preview-chart i span{position:absolute;left:50%;bottom:-17px;transform:translateX(-50%);color:#94a3af;font-size:6px;font-style:normal}
.web-preview-privacy{margin-top:10px;padding:10px;border-radius:11px;background:#eaf9f4;color:#118261;font-size:8px;text-align:center}

/* Wspólny panel v46 */
.v46-dashboard .dash-content{padding-top:22px;background:radial-gradient(circle at 88% 0,rgba(11,132,229,.08),transparent 25%),var(--v46-canvas)}
.v46-sidebar{overflow-y:auto;box-shadow:12px 0 42px rgba(5,20,36,.10)}
.v46-topbar{border-bottom-color:#e1eaf2;background:rgba(255,255,255,.92);backdrop-filter:blur(18px)}
.v46-topbar .avatar{box-shadow:0 8px 22px rgba(8,120,209,.18)}
.v46-driver-hero,.v46-admin-hero{background:radial-gradient(circle at 83% 10%,rgba(34,199,221,.21),transparent 27%),linear-gradient(120deg,#06111f,#0c2c4d 65%,#0b5372)}
.v46-stat-grid .stat-card{position:relative;overflow:hidden}
.v46-stat-grid .stat-card:after{content:"";position:absolute;right:-35px;top:-45px;width:105px;height:105px;border-radius:50%;background:radial-gradient(circle,rgba(11,132,229,.08),transparent 68%)}
.v46-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:16px;margin-bottom:16px}
.v46-dashboard-grid.v46-lower-grid{grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr)}
.v46-chart-card{min-width:0}
.chart-legend{display:flex;align-items:center;gap:13px;color:#72859a;font-size:9px}
.chart-legend span{display:flex;align-items:center;gap:5px}
.chart-legend i{width:8px;height:8px;border-radius:3px;background:#0b84e5}
.chart-legend i.distance{background:#b9d4e8}
.v46-combo-chart{height:235px;display:flex;align-items:stretch;gap:6px;margin-top:17px;padding:13px 2px 0;border-top:1px solid #edf2f6}
.combo-column{min-width:0;flex:1;display:grid;grid-template-rows:1fr 18px;gap:5px}
.combo-bars{display:flex;align-items:flex-end;justify-content:center;gap:2px;min-height:0}
.combo-bars i{width:min(9px,42%);min-height:4px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#22c7dd,#0b84e5);box-shadow:0 5px 14px rgba(11,132,229,.13)}
.combo-bars i.distance{background:linear-gradient(180deg,#b9d4e8,#dbe8f1);box-shadow:none}
.combo-column small{overflow:hidden;color:#93a2af;font-size:7px;text-align:center;white-space:nowrap}
.goal-card{padding:24px;border:1px solid #174967;border-radius:23px;background:radial-gradient(circle at 100% 0,rgba(34,199,221,.15),transparent 32%),linear-gradient(145deg,#071522,#0c2b45);color:#fff;box-shadow:0 18px 48px rgba(5,23,39,.15)}
.goal-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.goal-card-head h3{margin:4px 0;font-size:29px}
.goal-card-head>strong{font-size:26px;color:#5ce3bd}
.goal-progress{height:8px;margin:23px 0 10px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden}
.goal-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b84e5,#22c7dd,#31dfa8);box-shadow:0 0 20px rgba(49,223,168,.25)}
.goal-card>p{color:#9db3c7;font-size:11px}
.goal-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}
.goal-meta span{padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.04);color:#7591aa;font-size:8px}
.goal-meta b{display:block;margin-bottom:2px;color:#fff;font-size:11px}
.goal-card .btn-outline{border-color:rgba(255,255,255,.18);color:#dce9f4;background:rgba(255,255,255,.04)}
.session-list{display:grid;gap:8px;margin-top:11px}
.session-list-row{display:grid;grid-template-columns:12px 1fr auto;gap:11px;align-items:center;padding:12px 13px;border:1px solid #e5edf4;border-radius:14px;background:#fbfdff}
.session-status-dot{width:9px;height:9px;border-radius:50%;background:#adc0cf}
.session-status-dot.active{background:#12b981;box-shadow:0 0 0 5px rgba(18,185,129,.10)}
.session-list-row strong,.session-list-row small{display:block}
.session-list-row strong{font-size:11px}
.session-list-row small{margin-top:2px;color:#8394a5;font-size:9px}
.session-list-row>b{font-size:13px}
.access-center-card{background:linear-gradient(145deg,#fff,#f6fbff)}
.access-center-status{display:flex;align-items:center;gap:12px;margin:17px 0;padding:14px;border:1px solid #e1ebf3;border-radius:15px;background:#fff}
.access-center-status strong,.access-center-status small{display:block}
.access-center-status small{color:#75899c;font-size:10px}
.compact-metrics{margin:0 0 17px}
.efficiency-card h3{margin:10px 0 4px;font-size:48px;color:#0b84e5}
.efficiency-card>p{margin:0 0 18px;color:#6d8194;font-size:11px;line-height:1.65}
.report-note{display:grid;grid-template-columns:220px 1fr;gap:18px;margin-top:15px;padding:18px 20px;border:1px solid #d9e8f2;border-radius:17px;background:#edf7ff;color:#53718b}
.report-note strong{color:#0a3150}
.report-note span{font-size:11px;line-height:1.65}
.profile-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(310px,.7fr);gap:17px}
.profile-form{display:grid;gap:18px}
.vehicle-preview-card{padding:27px;border:1px solid #174a68;border-radius:24px;background:radial-gradient(circle at 90% 0,rgba(34,199,221,.15),transparent 30%),linear-gradient(145deg,#071522,#0c2b45);color:#fff;box-shadow:0 20px 55px rgba(5,23,39,.16)}
.vehicle-icon{width:64px;height:64px;display:grid;place-items:center;margin:24px 0 18px;border:1px solid rgba(34,199,221,.24);border-radius:20px;background:rgba(34,199,221,.09);color:#5fd9eb;font-size:29px}
.vehicle-preview-card h3{margin:0;font-size:24px}
.vehicle-preview-card>p{margin:3px 0 20px;color:#8aa4bb}
.vehicle-preview-card .metric-row{border-bottom-color:rgba(255,255,255,.08)}
.vehicle-preview-card .metric-row span{color:#8099af}
.vehicle-preview-card>small{display:block;margin-top:18px;color:#718ba2;font-size:9px;line-height:1.55}

/* Administrator */
.v46-admin-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}
.v46-admin-kpis article{min-width:0}
.v46-admin-kpis .kpi-icon.money{background:#e8f8f2;color:#07855f}
.v46-admin-kpis article strong{font-size:24px;white-space:nowrap}
.v46-admin-overview{grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)}
.v46-admin-overview.lower{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}
.operations-card{padding:22px;border:1px solid #dbe7f0;border-radius:22px;background:#fff;box-shadow:var(--v46-shadow)}
.operations-card>a{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;min-height:48px;padding:0 12px;border-top:1px solid #edf2f6;color:#536a80;font-size:11px;transition:.16s}
.operations-card>a:hover{padding-left:16px;color:#0b84e5;background:#f8fbfe}
.operations-card>a strong{min-width:29px;height:29px;display:grid;place-items:center;border-radius:9px;background:#edf5fb;color:#0a3556;font-size:11px}
.v46-health .health-score{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 0;padding:13px;border:1px solid #dce8f1;border-radius:14px;background:#fff}
.health-score span{display:flex;align-items:center;gap:8px;color:#07855f;font-size:11px;font-weight:800}
.health-score i{width:8px;height:8px;border-radius:50%;background:#12b981;box-shadow:0 0 0 5px rgba(18,185,129,.10)}
.health-score b{font-size:11px}
.analytics-kpis{margin-top:16px}
.admin-driver-summary{margin-top:16px}
.admin-driver-summary .driver-stats{margin-top:18px}
.forbidden-card{max-width:720px;margin:50px auto;display:grid;grid-template-columns:55px 1fr;gap:20px;align-items:start;padding:34px}
.forbidden-card h2{margin:6px 0 8px}
.forbidden-card p{color:#687d91}

@media(max-width:1240px){
  .v46-admin-kpis{grid-template-columns:repeat(3,1fr)}
  .web-command-grid{grid-template-columns:1fr;gap:42px}
  .web-dashboard-preview{max-width:850px;width:100%;margin:auto}
}
@media(max-width:1100px){
  .v46-dashboard-grid,.v46-dashboard-grid.v46-lower-grid,.profile-layout,.v46-admin-overview,.v46-admin-overview.lower{grid-template-columns:1fr}
}
@media(max-width:760px){
  .announcement-inner{justify-content:center;text-align:center}.announcement-inner a{display:none}
  .web-command-section{padding:76px 0}.web-command-copy{text-align:center}.web-command-copy>p{margin-inline:auto}.web-command-list{text-align:left}
  .web-preview-body{grid-template-columns:1fr}.web-preview-nav{display:none}.web-preview-main{padding:13px}.web-preview-kpis{grid-template-columns:1fr}.web-preview-chart{height:130px}
  .v46-combo-chart{gap:3px;height:205px}.combo-column small{font-size:6px}.combo-bars{gap:1px}
  .goal-meta{grid-template-columns:1fr}.report-note{grid-template-columns:1fr}.chart-legend{display:none}
  .v46-admin-kpis{grid-template-columns:1fr}.v46-admin-kpis article strong{font-size:27px}
}
