.company-app{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:calc(100vh - 80px);background:#f2f5fa;color:#142238;font:16px/1.55 Figtree,Arial,sans-serif}.company-app *{box-sizing:border-box}.company-sidebar{background:#142a3b;color:#d9e6ed;padding:28px 18px;display:flex;flex-direction:column}.company-brand{font-size:26px;color:white!important;letter-spacing:-1px;text-decoration:none}.company-brand small{display:block;font:10px/2.6 Figtree,sans-serif;letter-spacing:2.4px;color:#89b2c8}.company-identity{display:flex;gap:10px;align-items:center;margin:24px 0;padding-bottom:24px;border-bottom:1px solid #ffffff1a}.company-identity strong{font-size:14px;display:block;color:white}.company-identity small{font-size:12px;color:#9eb8c8}.company-avatar{background:#30536b;color:#a6e0ed;border-radius:12px;padding:10px;font-weight:700}.nav-label{font-size:10px;letter-spacing:2px;color:#7998ad;margin:0 10px 12px}.company-sidebar nav{display:grid;gap:3px}.company-sidebar nav a{color:#bdd0dc;text-decoration:none;padding:9px 13px;border-radius:8px;font-size:14px;transition:background .15s}.company-sidebar nav a:hover{background:#ffffff0d;color:white}.company-sidebar nav a.active{background:#d9f2ee;color:#143f42;font-weight:700}.company-logout{margin-top:25px;padding:10px;color:#a7c1d1!important;font-size:13px}.company-workspace{padding:32px 38px;min-width:0}.company-topbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.company-topbar p{font-size:10px;letter-spacing:2px;color:#708396;margin:0 0 6px}.company-topbar h1{font-size:30px;letter-spacing:-1px;margin:0}.company-top-actions{display:flex;gap:9px}.portal-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;background:#17686a;color:white!important;border:1px solid #17686a;border-radius:9px;padding:10px 16px;font:600 14px Figtree,Arial,sans-serif;text-decoration:none;cursor:pointer}.portal-btn:hover{background:#115859}.portal-btn.quiet{color:#304e62!important;background:white;border-color:#d8e1e8}.portal-btn:disabled{opacity:.55;cursor:wait}.portal-feedback{font-size:13px;color:#546e82;min-height:25px;margin:0 0 16px}.portal-feedback.error,.portal-form-error{color:#ad3131}.portal-welcome{background:#e3efec;border:1px solid #d5e4dd;padding:28px 30px;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.portal-welcome h2{font-size:27px;line-height:1.2;margin:0 0 10px;letter-spacing:-.6px}.portal-welcome p{color:#4d706a;margin:0;max-width:550px}.portal-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.portal-stat,.portal-card{background:white;border:1px solid #e0e7ed;border-radius:13px;padding:23px}.portal-stat small{font-size:11px;letter-spacing:1px;color:#708292}.portal-stat strong{font-size:32px;display:block;font-weight:600;line-height:1.7;letter-spacing:-1px}.portal-stat span{font-size:12px;color:#738699}.portal-two-col{display:grid;grid-template-columns:1.35fr 1fr;gap:20px}.portal-card h2{font-size:19px;margin:0 0 20px}.portal-card p{color:#687f90}.portal-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.portal-section-head h2{margin:0;font-size:20px}.portal-section-head p{margin:5px 0 0;font-size:13px;color:#688092}.portal-actions{display:flex;gap:8px;flex-wrap:wrap}.portal-search{min-width:180px;width:260px;max-width:100%;border:1px solid #d7e2e9;border-radius:9px;background:white;padding:10px 13px;color:#243d50;font:14px Figtree,Arial,sans-serif}.portal-table-wrap{overflow:auto;background:white;border:1px solid #e0e7ed;border-radius:12px}.portal-table{border-collapse:collapse;width:100%;white-space:nowrap;font-size:14px}.portal-table th{text-align:left;background:#f9fbfd;padding:14px 17px;font-size:11px;letter-spacing:.6px;color:#657d90;font-weight:600;border-bottom:1px solid #e0e7ed}.portal-table td{padding:16px 17px;border-bottom:1px solid #eff3f6;max-width:260px;overflow:hidden;text-overflow:ellipsis}.portal-table tr:last-child td{border-bottom:0}.portal-table td button{background:none;border:0;color:#187171;cursor:pointer;font:600 12px Figtree,Arial,sans-serif;padding:5px}.portal-table td button+button{color:#8b6262;margin-left:8px}.portal-empty{text-align:center;padding:58px 25px;background:#fff;border:1px dashed #c8d7e2;border-radius:12px}.portal-empty h3{font-size:21px;margin:0 0 10px}.portal-empty p{font-size:15px;max-width:520px;margin:0 auto 20px;color:#6d8393}.portal-badge{display:inline-block;border-radius:5px;background:#e7f3ec;color:#28754b;padding:4px 9px;font-size:11px}.portal-badge.wait{background:#fff3d9;color:#976920}.portal-row{padding:14px 0;border-bottom:1px solid #eef2f5;display:flex;justify-content:space-between;gap:15px;align-items:center}.portal-row:last-child{border:0}.portal-row strong{font-size:14px}.portal-row small{display:block;color:#738596;font-size:12px}.portal-dialog{padding:28px;border:1px solid #dbe3e9;border-radius:16px;width:650px;max-width:calc(100% - 28px);max-height:90vh;color:#17364d}.portal-dialog::backdrop{background:#142b3ca6;backdrop-filter:blur(3px)}.portal-dialog header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.portal-dialog h2{font-size:24px;margin:3px 0}.portal-dialog header p{font-size:10px;letter-spacing:2px;color:#78909f;margin:0}.portal-dialog .dialog-close{cursor:pointer}.portal-dialog header button{border:0;background:#f0f5f7;font-size:24px;width:34px;height:34px;border-radius:8px}.portal-form-fields,.portal-settings-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.portal-form-fields label,.portal-settings-form label{font-size:13px;color:#4a667a;display:grid;gap:6px}.portal-form-fields input,.portal-form-fields select,.portal-form-fields textarea,.portal-settings-form input,.portal-settings-form textarea{border:1px solid #cfdee6;background:white;border-radius:8px;padding:11px;font:15px Figtree,Arial,sans-serif;color:#1b3548;min-width:0;width:100%}.portal-form-fields textarea{height:80px}.portal-dialog footer,.portal-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.portal-form-error{font-size:13px;margin:12px 0}.portal-menu-toggle{display:none}.portal-module-note{padding:13px 17px;margin:15px 0;background:#ecf3f8;border-left:3px solid #7396af;font-size:14px;color:#47687e}.portal-report-total{font-size:30px;letter-spacing:-1px;display:block;color:#194858}.portal-settings-form button{justify-self:start}.company-app [hidden]{display:none!important}.portal-loading{padding:60px;text-align:center;color:#607d90}.mgr-login-form label{display:block;font-size:14px;margin:15px 0}.mgr-login-form input:not([type=checkbox]){display:block;width:100%;padding:13px;border:1px solid #cbdce5;border-radius:9px;margin-top:7px;font-size:16px}.mgr-login-form .remember-row{display:flex;gap:9px;align-items:center}.login-error{padding:13px;background:#fff0ef;border-radius:8px;color:#a13131;font-size:14px}.login-reset{display:block;margin-top:15px;color:#246c75}.portal-paymarks{display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap;padding:20px;border-top:1px solid #dce5ed;font-weight:700}.portal-paymarks .iyzico{color:#246cd1;font-size:23px;letter-spacing:-1px}.portal-paymarks .visa{color:#173779;font-style:italic;font-size:21px}.portal-paymarks .mastercard{color:#354051;font-size:16px}.portal-paymarks small{font-weight:400;color:#7c8a98;font-size:12px}
.portal-package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.portal-package small{font-size:10px;letter-spacing:1.5px;color:#7790a1}.portal-package strong{display:block;font-size:22px;color:#17686a;margin:0 0 10px}.portal-package p{min-height:75px}
.portal-line-warning{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;background:#fff7df;border:1px solid #f0d58f;color:#5f470f;border-radius:13px;padding:15px 17px;margin:0 0 20px}.portal-line-warning strong{font-size:14px}.portal-line-warning span{font-size:13px}.dashboard-map-row{margin-bottom:20px}.portal-map{min-height:430px;position:relative;overflow:hidden;border-radius:16px;background:#dfe9e0;background-image:linear-gradient(35deg,transparent 47%,#fff 48%,#fff 52%,transparent 53%),linear-gradient(115deg,transparent 47%,#cddccf 48%,#cddccf 51%,transparent 52%),radial-gradient(circle at 30% 28%,#b7d6c2 0 5%,transparent 6%),radial-gradient(circle at 72% 66%,#c8d7ef 0 7%,transparent 8%);background-size:120px 100px,145px 115px,100% 100%,100% 100%;box-shadow:inset 0 0 0 1px #c9d9d4}.portal-map.compact{min-height:230px;margin-bottom:15px}.map-roads{position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 43%,rgba(255,255,255,.86) 44% 48%,transparent 49%),linear-gradient(20deg,transparent 0 53%,rgba(255,255,255,.9) 54% 58%,transparent 59%)}.map-pin{position:absolute;left:24%;top:38%;transform:translate(-50%,-50%);background:#0b78c7;color:#fff;border:3px solid #fff;border-radius:13px;padding:9px 10px;font-size:11px;font-weight:800;box-shadow:0 10px 24px #15374f3d}.map-pin.p2{left:63%;top:28%}.map-pin.p3{left:72%;top:70%}.map-pin.warn{background:#e05261}.map-card{position:absolute;right:15px;bottom:15px;width:min(260px,calc(100% - 30px));background:#fffffff2;border:1px solid #dce6ed;border-radius:13px;padding:14px;box-shadow:0 15px 35px #16344c25}.map-card strong,.map-card small{display:block}.map-card small{color:#65788b;font-size:12px}.tracking-premium{display:grid;grid-template-columns:1.35fr .85fr;gap:18px;margin:18px 0}.device-grid,.contract-grid,.program-grid,.portal-kabis-grid,.reservation-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.device-card{border:1px solid #dfe7ee;border-radius:12px;padding:16px;background:#f9fbfd}.device-card small,.contract-card small,.program-card small{font-size:10px;letter-spacing:1.5px;color:#71879a;font-weight:800}.device-card h3,.contract-card h2{margin:5px 0;font-size:19px}.device-card p{margin:0 0 10px;color:#607587}.device-card ul{margin:0;padding-left:18px;color:#4d6475;font-size:13px}.portal-contract-alert{display:flex;gap:12px;align-items:flex-start;background:#eef8ff;border:1px solid #cfe9f7;border-left:4px solid #177aad;color:#214d66;border-radius:12px;padding:15px 17px;margin:0 0 16px}.portal-contract-alert strong{white-space:nowrap}.portal-contract-alert span{font-size:13px}.contract-card{background:#fff;border:1px solid #dfe7ed;border-radius:14px;padding:21px;box-shadow:0 14px 38px #1531480d}.contract-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}.contract-card dt{font-size:10px;color:#6f8294}.contract-card dd{margin:1px 0 0;font-weight:800;color:#18384d}.contract-card p{color:#61798b}.program-card{display:flex;flex-direction:column;gap:10px}.program-card .portal-btn{align-self:flex-start;margin-top:auto}.delivered-cars{margin-top:18px}.footer-support-button{border:0;background:transparent;padding:0;color:inherit;cursor:pointer;text-decoration:underline}
@media(max-width:1100px){.company-workspace{padding:25px}.portal-stats{grid-template-columns:repeat(2,1fr)}.portal-two-col,.tracking-premium{grid-template-columns:1fr}.company-app{grid-template-columns:205px 1fr}.company-top-actions .quiet{display:none}}
@media(max-width:760px){.company-app{display:block}.company-sidebar{display:none}.company-app.menu-open .company-sidebar{display:flex}.company-workspace{padding:20px 15px}.portal-menu-toggle{display:block;background:white;border:1px solid #d6e0e6;border-radius:8px;padding:8px 12px;cursor:pointer}.company-topbar{gap:10px}.company-topbar h1{font-size:23px}.company-top-actions .portal-btn{font-size:11px;padding:10px}.company-topbar p{font-size:8px}.portal-welcome{padding:22px;display:block}.portal-welcome .portal-btn{margin-top:18px}.portal-stat{padding:16px}.portal-stat strong{font-size:26px}.portal-section-head{align-items:flex-start;flex-direction:column}.portal-form-fields,.portal-settings-form,.portal-package-grid,.device-grid,.contract-grid,.program-grid,.portal-kabis-grid,.reservation-board{grid-template-columns:1fr}.portal-line-warning{grid-template-columns:1fr}.portal-dialog{padding:20px}.portal-search{width:100%}.company-sidebar nav{grid-template-columns:1fr 1fr}.portal-contract-alert{display:block}.portal-contract-alert strong{display:block;margin-bottom:5px}}
.network-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#eaf7ff;border:1px solid #cfe9f7;border-radius:15px;padding:22px;margin:0 0 18px}.network-hero h2{font-size:22px;margin:0 0 8px}.network-hero p{margin:0;color:#41677b;max-width:720px}.network-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.network-card{background:white;border:1px solid #dde8ef;border-radius:15px;padding:20px;box-shadow:0 12px 34px #1731490d}.network-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.network-card-top span{font-size:11px;font-weight:800;color:#17686a;background:#e7f5f0;border-radius:99px;padding:5px 9px}.network-card-top b{font-size:11px;color:#8b641c;background:#fff4da;border-radius:99px;padding:5px 9px}.network-card h3{font-size:19px;margin:0 0 10px}.network-card p{color:#516b7d;margin:0 0 17px}.network-card dl{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:0 0 17px}.network-card dt{font-size:10px;color:#718598}.network-card dd{margin:2px 0 0;font-weight:800;color:#1e3d52}@media(max-width:760px){.network-grid{grid-template-columns:1fr}.network-hero{display:block}.network-hero .portal-btn{margin-top:14px}.network-card dl{grid-template-columns:1fr}}@media print{.site-header,.site-footer,.company-sidebar,.company-topbar,.portal-feedback,.ai-dock,.cookie-consent,.portal-actions,.portal-table td:last-child{display:none!important}.company-app{display:block}.company-workspace{padding:0}.portal-table-wrap{overflow:visible}}

/* v5.0 portal polish: stronger visuals, no text collisions, clearer tracking. */
.company-app{min-height:100vh}.company-sidebar{position:sticky;top:0;max-height:100vh;overflow:auto}.company-topbar{position:sticky;top:78px;z-index:12;background:rgba(242,245,250,.92);backdrop-filter:blur(16px);border:1px solid #dfe8ee;border-radius:16px;padding:14px 16px}.company-top-actions{flex-wrap:wrap;justify-content:flex-end}.company-identity strong,.company-identity small,.company-brand{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-card,.portal-stat,.network-card,.contract-card{min-width:0}.portal-stat strong,.portal-package strong,.contract-card dd,.network-card dd{overflow-wrap:anywhere;line-height:1.2}.portal-table{white-space:normal}.portal-table td,.portal-table th{vertical-align:top}.portal-row{min-width:0}.portal-row>*{min-width:0}.portal-row strong{overflow-wrap:anywhere}.tracking-insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 16px}.tracking-insight-grid article{background:linear-gradient(145deg,#ffffff,#eef8fb);border:1px solid #d8e9f1;border-radius:15px;padding:18px;box-shadow:0 12px 34px #1731490d}.tracking-insight-grid small{display:block;font-size:10px;letter-spacing:1.5px;color:#177aad;font-weight:900;margin-bottom:10px}.tracking-insight-grid strong{display:block;font-size:18px;color:#16354b;line-height:1.2}.tracking-insight-grid span{display:block;color:#60788b;font-size:13px;margin-top:8px}.portal-map{background-color:#e7f0ec;background-image:linear-gradient(35deg,transparent 47%,#fff 48%,#fff 52%,transparent 53%),linear-gradient(115deg,transparent 47%,#cad9d4 48%,#cad9d4 51%,transparent 52%),radial-gradient(circle at 30% 28%,#b7d6c2 0 5%,transparent 6%),radial-gradient(circle at 72% 66%,#c8d7ef 0 7%,transparent 8%),linear-gradient(145deg,#eaf5f0,#dbe9ef)}.map-layer-tabs{position:absolute;left:14px;top:14px;display:flex;gap:5px;background:#ffffffd9;border:1px solid #d8e5eb;border-radius:999px;padding:4px;box-shadow:0 10px 24px #1731491c}.map-layer-tabs span{font-size:11px;font-weight:800;color:#667b8d;padding:5px 9px;border-radius:999px}.map-layer-tabs .active{background:#17686a;color:white}.map-empty-state{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);width:min(360px,calc(100% - 40px));text-align:center;background:#ffffffe8;border:1px solid #dce9ef;border-radius:18px;padding:24px;box-shadow:0 18px 42px #17314924}.map-empty-state strong{display:block;font-size:24px;color:#142d42;margin-bottom:8px}.map-empty-state span{display:block;color:#5d7283}.map-pin{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.driver-score{display:flex;align-items:center;gap:15px;background:#eefaf7;border:1px solid #cfebe3;border-radius:14px;padding:16px;margin-bottom:12px}.driver-score strong{font-size:44px;line-height:1;color:#17686a}.driver-score span{color:#43645e;font-weight:800}.portal-package-grid{align-items:stretch}.portal-package{display:flex;flex-direction:column}.portal-package p{min-height:auto;flex:1}.portal-package .portal-btn{align-self:flex-start}.portal-dialog{overflow:auto}.portal-form-fields label:has(textarea){grid-column:1/-1}
@media(max-width:1100px){.company-topbar{top:0}.tracking-insight-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.company-topbar{align-items:flex-start;flex-wrap:wrap;position:relative;top:auto}.company-top-actions{width:100%;justify-content:flex-start}.tracking-insight-grid{grid-template-columns:1fr}.portal-map{min-height:360px}.portal-map.compact{min-height:250px}.map-card{position:absolute;left:12px;right:12px;bottom:12px;width:auto}.map-empty-state{top:43%;padding:18px}.map-layer-tabs{max-width:calc(100% - 28px);overflow:auto}.driver-score strong{font-size:36px}.company-sidebar{position:relative;max-height:none}.company-sidebar nav{grid-template-columns:1fr}}

/* v5.0 mobile portal polish */
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  .company-app{font-size:15px;background:#f5f7fb}
  .company-workspace{padding:12px}
  .company-topbar{margin:0 0 12px;padding:12px;border-radius:13px;gap:9px}
  .company-topbar>div:nth-child(2){min-width:0;flex:1}
  .company-topbar h1{font-size:21px;line-height:1.15;word-break:break-word}
  .company-topbar p{font-size:8px;letter-spacing:1.2px}
  .portal-menu-toggle{width:42px;height:42px;flex-shrink:0}
  .company-top-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .company-top-actions .portal-btn{width:100%;padding:10px 8px;font-size:12px}
  .company-sidebar{position:fixed;z-index:60;inset:0 auto 0 0;width:min(310px,88vw);display:flex;transform:translateX(-105%);transition:transform .24s ease;box-shadow:20px 0 60px rgba(13,31,45,.28)}
  .company-app.menu-open .company-sidebar{transform:translateX(0)}
  .company-sidebar nav{grid-template-columns:1fr;gap:4px}
  .company-sidebar nav a{padding:11px 12px;font-size:15px}
  .company-brand{font-size:22px}
  .company-identity{margin:18px 0;padding-bottom:18px}
  .portal-feedback{font-size:12px;margin-bottom:10px}
  .portal-welcome{padding:18px;border-radius:13px;margin-bottom:14px}
  .portal-welcome h2{font-size:22px}
  .portal-welcome p{font-size:14px}
  .portal-stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
  .portal-stat,.portal-card,.network-card,.contract-card{padding:16px;border-radius:12px}
  .portal-stat small{font-size:9px}
  .portal-stat strong{font-size:23px;line-height:1.25;margin:8px 0}
  .portal-two-col,.tracking-premium,.portal-package-grid,.device-grid,.contract-grid,.program-grid,.portal-kabis-grid,.reservation-board,.network-grid{grid-template-columns:1fr;gap:12px}
  .portal-section-head{margin-bottom:14px}
  .portal-section-head h2{font-size:19px}
  .portal-section-head p{font-size:13px}
  .portal-actions{width:100%;display:grid;grid-template-columns:1fr;gap:8px}
  .portal-actions .portal-btn,.portal-actions button{width:100%}
  .portal-btn{width:auto;min-height:42px;padding:10px 12px}
  .portal-line-warning{padding:14px;gap:9px}
  .portal-line-warning .portal-btn{width:100%}
  .portal-table-wrap{border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .portal-table{min-width:620px;font-size:13px}
  .portal-table th,.portal-table td{padding:11px 12px}
  .portal-table td button{display:inline-flex;margin:2px 0}
  .portal-row{align-items:flex-start;flex-direction:column;gap:5px;padding:12px 0}
  .portal-row .portal-badge{align-self:flex-start}
  .portal-map{min-height:410px;border-radius:13px}
  .portal-map.compact{min-height:300px}
  .map-layer-tabs{left:10px;top:10px;right:10px;max-width:none;justify-content:space-between}
  .map-layer-tabs span{flex:1;text-align:center;font-size:10px}
  .map-empty-state{left:12px;right:12px;top:38%;width:auto;transform:translateY(-50%);padding:17px}
  .map-empty-state strong{font-size:20px}
  .map-empty-state span{font-size:13px}
  .map-card{font-size:13px}
  .tracking-insight-grid{gap:10px}
  .tracking-insight-grid article{padding:15px;border-radius:12px}
  .tracking-insight-grid strong{font-size:16px}
  .contract-card dl,.network-card dl{grid-template-columns:1fr;gap:8px}
  .contract-card h2,.network-card h3{font-size:18px;line-height:1.25}
  .portal-contract-alert{padding:14px;border-radius:12px}
  .portal-dialog{width:calc(100% - 18px);max-width:none;padding:16px;border-radius:14px}
  .portal-dialog h2{font-size:21px}
  .portal-form-fields,.portal-settings-form{grid-template-columns:1fr;gap:13px}
  .portal-dialog footer,.portal-dialog-actions{display:grid;grid-template-columns:1fr;gap:8px}
  .portal-dialog footer .portal-btn,.portal-dialog-actions .portal-btn{width:100%}
  .driver-score{align-items:flex-start;flex-direction:column}
  .driver-score strong{font-size:38px}
  .network-hero{padding:17px;border-radius:13px}
  .network-hero h2{font-size:19px}
}

@media(max-width:420px){
  .company-workspace{padding:10px}
  .company-top-actions{grid-template-columns:1fr}
  .portal-stats{grid-template-columns:1fr}
  .portal-map{min-height:390px}
  .portal-table{min-width:560px}
}

/* v5.0 portal readability pass */
.company-app,.company-app *{min-width:0}
.company-brand,.company-identity strong,.company-identity small,.company-topbar h1,.portal-section-head h2,.portal-card h2,.portal-card h3,.portal-package strong,.network-card h3,.contract-card h2{letter-spacing:0!important;overflow-wrap:anywhere}
.company-brand{line-height:1.12;display:block}
.company-sidebar nav a{line-height:1.25}
.portal-btn{white-space:normal;text-align:center;line-height:1.2}
.portal-row{min-width:0}
.portal-row strong,.portal-row span,.portal-row small{max-width:100%;overflow-wrap:anywhere}
.portal-table{table-layout:auto}
.portal-table th,.portal-table td{min-width:120px;white-space:normal;overflow-wrap:anywhere}
.portal-table td:last-child{min-width:150px}
.portal-package strong{font-size:20px;line-height:1.18}
.portal-package p{line-height:1.45}
.network-card-top{flex-wrap:wrap}
.map-pin{max-width:118px}
body.lang-en .company-sidebar nav a{font-size:13px}
body.lang-en .company-topbar h1{font-size:26px}
body.lang-en .portal-package strong{font-size:18px}
@media(max-width:760px){
  .company-sidebar{overflow:auto}
  .company-topbar h1{font-size:20px}
  body.lang-en .company-topbar h1{font-size:18px}
  .portal-table{min-width:0;width:100%}
  .portal-table thead{display:none}
  .portal-table,.portal-table tbody,.portal-table tr,.portal-table td{display:block}
  .portal-table tr{border-bottom:1px solid #e5edf2;padding:8px 0}
  .portal-table td{border:0!important;padding:7px 10px;max-width:none;min-width:0}
  .portal-table td:last-child{display:flex;gap:8px;flex-wrap:wrap}
  .portal-table td button{border:1px solid #d9e6ed;border-radius:8px;padding:8px 10px;background:#fff}
  .portal-package strong{font-size:18px}
  .map-pin{font-size:10px;padding:8px;max-width:96px}
}

/* v5.0 final portal hardening */
.portal-table-wrap,.portal-card,.portal-stat,.network-card,.contract-card,.portal-dialog{box-shadow:0 12px 34px rgba(16,44,68,.06)}
.portal-card h2,.portal-section-head h2,.portal-welcome h2{line-height:1.18}
.portal-package-grid,.device-grid,.contract-grid,.program-grid,.portal-kabis-grid,.reservation-board,.network-grid{align-items:stretch}
.program-card,.portal-package,.network-card,.contract-card{height:100%}
.portal-package .portal-btn,.program-card .portal-btn{margin-top:auto}
.portal-table td button{white-space:normal}
.portal-badge{line-height:1.2;white-space:normal}
.map-layer-tabs span{white-space:nowrap}
body.lang-en .portal-section-head h2,
body.lang-en .portal-card h2,
body.lang-en .network-card h3,
body.lang-en .contract-card h2{font-size:clamp(17px,2vw,19px)}
body.lang-en .portal-btn{font-size:13px}
@media(max-width:760px){
  .company-app{padding-bottom:8px}
  .company-topbar{box-shadow:0 10px 24px rgba(18,45,67,.08)}
  .portal-welcome,.portal-line-warning,.portal-card,.portal-stat{border-radius:11px}
  .portal-btn{width:100%}
  .portal-row .portal-btn{width:auto}
  .portal-table td:last-child .portal-btn,
  .portal-table td:last-child button{flex:1 1 120px;justify-content:center}
  .map-layer-tabs{display:grid;grid-template-columns:repeat(3,1fr)}
  .map-layer-tabs span{padding:7px 5px}
  .map-pin.p1{left:22%;top:36%}
  .map-pin.p2{left:64%;top:28%}
  .map-pin.p3{left:70%;top:64%}
  body.lang-en .portal-btn{font-size:12px}
}

/* v5.1 final portal review: no horizontal drift, readable English labels */
html,body{width:100%;max-width:100%;overflow-x:hidden}
.company-app,.company-app *{box-sizing:border-box}
.company-app,.company-workspace,.company-topbar,.company-sidebar,.portal-card,.portal-stat,.portal-welcome,.portal-section-head,.portal-actions,.portal-table-wrap,.portal-dialog,.portal-form-fields,.portal-settings-form,.portal-package-grid,.device-grid,.contract-grid,.program-grid,.portal-kabis-grid,.reservation-board,.network-grid,.tracking-premium,.tracking-insight-grid{max-width:100%;min-width:0}
.company-brand,.company-identity strong,.company-identity small,.company-topbar h1,.company-topbar p,.portal-section-head h2,.portal-section-head p,.portal-welcome h2,.portal-welcome p,.portal-card h2,.portal-card h3,.portal-card p,.portal-stat strong,.portal-stat span,.portal-row strong,.portal-row span,.portal-row small,.portal-badge,.portal-btn,.map-card strong,.map-card small,.map-empty-state strong,.map-empty-state span,.network-card h3,.network-card p,.contract-card h2,.contract-card p,.contract-card dd,.portal-package strong,.portal-package p{overflow-wrap:anywhere;word-break:normal;letter-spacing:0}
.portal-btn{display:inline-flex;align-items:center;justify-content:center;white-space:normal}
.portal-actions{flex-wrap:wrap}
.portal-map{isolation:isolate}
.map-empty-state,.map-card{max-width:calc(100% - 24px)}
body.lang-en .company-sidebar nav a,body.lang-en .portal-btn,body.lang-en .portal-badge{font-size:12px;line-height:1.22}
body.lang-en .portal-section-head h2,body.lang-en .portal-card h2,body.lang-en .portal-welcome h2{font-size:clamp(17px,2vw,21px)}
@media(max-width:760px){
  .company-workspace{width:100%;padding:10px}
  .company-topbar{width:100%;margin:0 0 10px}
  .company-topbar>div{max-width:100%;min-width:0}
  .company-sidebar{width:min(315px,88vw);max-width:88vw}
  .portal-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .portal-card,.portal-stat,.portal-welcome,.portal-line-warning,.network-card,.contract-card{padding:15px}
  .portal-table-wrap{overflow:visible}
  .portal-table{min-width:0;width:100%}
  .portal-table td:last-child{align-items:stretch}
  .portal-table td:last-child button{flex:1 1 110px}
  .portal-actions,.company-top-actions{display:grid;grid-template-columns:1fr;gap:8px;width:100%}
  .portal-actions .portal-btn,.company-top-actions .portal-btn,.portal-btn{width:100%}
  .portal-row .portal-btn{width:100%}
  .portal-map{min-height:390px}
  .map-empty-state{left:10px;right:10px;width:auto;transform:translateY(-50%)}
  .map-card{left:10px;right:10px;width:auto}
}
@media(max-width:430px){
  .portal-stats{grid-template-columns:1fr}
.company-brand{font-size:20px}
  .company-topbar h1{font-size:19px}
  .portal-map{min-height:370px}
}

/* v5.3 fixes from screen review */
.company-app{align-items:start}
.company-sidebar{position:relative;top:auto;max-height:none;min-height:100vh}
.company-workspace{align-self:stretch}
.company-topbar{top:0}
.company-sidebar nav a{display:block;overflow-wrap:anywhere;hyphens:auto}
.company-brand small{letter-spacing:1.3px;line-height:1.5;white-space:normal}
.company-identity{align-items:flex-start}
.company-avatar{flex:0 0 auto}
.portal-badge.ok{background:#e7f5ee;color:#28754b}
.portal-badge.risk{background:#ffe8ea;color:#b43745}
.reservation-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 16px}
.reservation-summary-grid .portal-card small{font-size:10px;letter-spacing:1.4px;color:#6f8294;font-weight:800}
.reservation-summary-grid .portal-card strong{display:block;font-size:34px;color:#17364d;margin:6px 0}
.reservation-fleet{margin-bottom:16px}
.reservation-fleet .card-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}
.reservation-vehicle-table .portal-btn{min-height:34px;padding:8px 12px;font-size:12px}
.assistant-workspace{display:grid;grid-template-columns:1.4fr .8fr;gap:16px}
.assistant-main{background:linear-gradient(145deg,#fff,#edf8fb)}
.assistant-main small{font-size:10px;letter-spacing:1.5px;color:#17686a;font-weight:900}
.assistant-prompts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.assistant-side{border-left:4px solid #17686a}
.tracking-live-shell{display:grid;grid-template-columns:260px minmax(0,1fr) 280px;gap:16px;margin-bottom:18px}
.tracking-car-list,.tracking-detail-panel{background:#fff;border:1px solid #e0e7ed;border-radius:14px;padding:16px;box-shadow:0 12px 34px rgba(16,44,68,.06)}
.tracking-car-list h2,.tracking-detail-panel h2{font-size:18px;margin:0 0 12px}
.tracking-car-list{display:flex;flex-direction:column;gap:8px}
.tracking-car-list button{border:1px solid #e0e7ed;background:#f8fbfd;border-radius:11px;padding:12px;text-align:left;cursor:pointer}
.tracking-car-list button.active{background:#eaf8ff;border-color:#61bbe8}
.tracking-car-list strong,.tracking-car-list span,.tracking-car-list em{display:block}
.tracking-car-list span{font-size:12px;color:#667b8d}
.tracking-car-list em{font-style:normal;font-size:11px;color:#28754b}
.tracking-car-list em.warn{color:#b43745}
.tracking-map-stage .portal-map{min-height:620px}
.tracking-detail-panel dl,.map-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.tracking-detail-panel dt,.map-card dt{font-size:10px;color:#6f8294}
.tracking-detail-panel dd,.map-card dd{margin:2px 0 0;font-weight:800;color:#18384d;font-size:12px}
.map-viewport{position:absolute;inset:-40px;transform:translate(var(--map-x),var(--map-y)) scale(var(--map-scale));transform-origin:center;transition:transform .18s ease}
.portal-map.mode-satellite{background-color:#28433e;background-image:linear-gradient(35deg,transparent 47%,rgba(255,255,255,.25) 48%,rgba(255,255,255,.25) 52%,transparent 53%),linear-gradient(115deg,transparent 47%,rgba(93,116,105,.55) 48%,rgba(93,116,105,.55) 51%,transparent 52%),linear-gradient(145deg,#2b403d,#203540)}
.portal-map.mode-terrain{background-color:#e5e2cf;background-image:linear-gradient(35deg,transparent 47%,#fff7df 48%,#fff7df 52%,transparent 53%),linear-gradient(115deg,transparent 47%,#cac5a5 48%,#cac5a5 51%,transparent 52%),linear-gradient(145deg,#edf0d8,#d7dfc4)}
.map-layer-tabs button{border:0;background:transparent;font-size:11px;font-weight:800;color:#667b8d;padding:5px 9px;border-radius:999px;cursor:pointer}
.map-layer-tabs button.active{background:#17686a;color:white}
.map-controls{position:absolute;left:14px;bottom:14px;display:grid;grid-template-columns:repeat(3,34px);gap:5px;background:#ffffffd9;border:1px solid #d8e5eb;border-radius:13px;padding:6px;box-shadow:0 10px 24px #1731491c}
.map-controls button{width:34px;height:34px;border:0;border-radius:9px;background:#fff;color:#17364d;font-weight:900;cursor:pointer}
.map-pin{left:var(--mx,24%);top:var(--my,38%);border:0;cursor:pointer}
.map-pin.active{outline:4px solid #ffd86b;z-index:3}
.safe-stop{width:100%;border:1px solid #fac1c7;background:#fff2f3;color:#bc3545;border-radius:9px;padding:11px;font-weight:800;cursor:pointer}
.tracking-route .company-workspace{padding-top:24px}
body.lang-en .company-brand small,body.lang-en .nav-label{letter-spacing:1px}
@media(max-width:1180px){
  .tracking-live-shell{grid-template-columns:220px minmax(0,1fr)}
  .tracking-detail-panel{grid-column:1/-1}
}
@media(max-width:760px){
  .company-sidebar{position:fixed;min-height:100vh}
  .reservation-summary-grid,.assistant-workspace,.assistant-prompts,.tracking-live-shell{grid-template-columns:1fr}
  .reservation-fleet .card-head{display:block}
  .reservation-fleet .card-head .portal-btn{margin-top:10px}
  .tracking-map-stage .portal-map{min-height:500px}
  .map-controls{grid-template-columns:repeat(6,30px);right:10px;left:10px;justify-content:center}
  .map-controls button{width:30px;height:30px}
}

/* v5.4: gerçek harita, ayrı MG AI Asistan ve Rentacarss benzeri sözleşme akışı */
.portal-map.real-map{background:#dfe8ed;background-image:none;min-height:470px}
.portal-map.real-map.compact{min-height:280px}
.osm-frame{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:0}
.real-map-overlay{position:absolute;inset:0;pointer-events:none;z-index:2}
.real-map-pin{position:absolute;left:var(--mx);top:var(--my);transform:translate(-50%,-50%);pointer-events:auto;border:2px solid #fff;background:#0b78c7;color:#fff;border-radius:12px;padding:7px 9px;font-size:11px;font-weight:900;box-shadow:0 14px 26px rgba(20,49,72,.3);cursor:pointer}
.real-map-pin.warn{background:#e05261}
.real-map-pin.active{outline:4px solid #ffd86b;z-index:4}
.real-map-pin small{display:block;font-size:8px;font-weight:600;opacity:.85}
.real-map .map-card,.real-map .map-layer-tabs,.real-map .map-empty-state{z-index:5}
.map-layer-tabs a{display:inline-flex;align-items:center;text-decoration:none;font-size:11px;font-weight:800;color:#667b8d;padding:5px 9px;border-radius:999px}
.reservation-actions{display:flex;flex-wrap:wrap;gap:6px}
.reservation-actions .portal-btn{min-height:32px;padding:7px 10px;font-size:12px}
.assistant-chat{border:1px solid #d9e8ef;background:#f8fcfd;border-radius:14px;padding:12px;margin-top:14px}
.assistant-log{height:260px;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:5px}
.assistant-message{max-width:86%;margin:0;border-radius:13px;padding:11px 13px;font-size:14px;line-height:1.45}
.assistant-message.ai{align-self:flex-start;background:#fff;border:1px solid #dce7ed;color:#233f53}
.assistant-message.user{align-self:flex-end;background:#17686a;color:#fff}
.assistant-chat form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:10px}
.assistant-chat input{border:1px solid #cfe0e8;border-radius:9px;padding:11px 12px;font:14px Figtree,Arial,sans-serif;color:#17364d}
.assistant-side{display:flex;flex-direction:column;gap:10px}
@media(max-width:760px){
  .portal-map.real-map{min-height:390px}
  .portal-map.real-map.compact{min-height:300px}
  .real-map-pin{font-size:10px;max-width:92px;overflow:hidden;text-overflow:ellipsis}
  .assistant-chat form{grid-template-columns:1fr}
  .assistant-message{max-width:100%}
  .reservation-actions{display:grid;grid-template-columns:1fr}
}
.internal-map{isolation:isolate;background:#dce9e5!important;background-image:none!important;cursor:grab;touch-action:none}.internal-map.dragging{cursor:grabbing}.osm-map-canvas{position:absolute;inset:0;z-index:1;min-height:100%;background:#dce9e5}.osm-map-canvas .leaflet-control-attribution{font-size:9px}.map-toolbar{position:absolute;right:14px;top:14px;z-index:7;display:flex;gap:5px;background:#ffffffdf;border:1px solid #d8e5eb;border-radius:10px;padding:5px;box-shadow:0 8px 20px #1731491c}.map-toolbar button,.map-layer-tabs button,.map-layer-tabs a{border:0;background:transparent;color:#35566a;font:700 11px Figtree,Arial,sans-serif;padding:6px 8px;border-radius:7px;cursor:pointer;text-decoration:none}.map-toolbar button:hover,.map-layer-tabs button:hover,.map-layer-tabs a:hover{background:#e7f4f1}.real-map-overlay{z-index:6;pointer-events:none}.real-map-pin{pointer-events:auto}.map-card{z-index:8}.map-layer-tabs{z-index:8}.company-sidebar{scrollbar-width:thin}.company-sidebar nav{min-height:0}.company-workspace{overflow:visible}
.tracking-route{display:block;position:relative;min-height:100vh;background:#0e2435}.tracking-route .company-sidebar{display:none}.tracking-route .company-workspace{position:relative;padding:0;min-height:100vh}.tracking-route .company-topbar{position:absolute;z-index:20;top:16px;left:18px;right:18px;margin:0;background:#fffffff2;box-shadow:0 12px 35px #102b4140}.tracking-route .portal-feedback{position:absolute;z-index:21;top:84px;left:22px;margin:0;padding:5px 10px;border-radius:8px;background:#ffffffe8}.tracking-route .portal-content-area{height:100vh}.tracking-route .tracking-live-shell{grid-template-columns:290px minmax(0,1fr) 320px;gap:0;height:100vh;margin:0}.tracking-route .tracking-car-list,.tracking-route .tracking-detail-panel{position:relative;z-index:10;border-radius:0;padding:112px 16px 18px;background:#fffffffa;box-shadow:0 0 30px #102b4126}.tracking-route .tracking-map-stage{min-width:0;height:100vh}.tracking-route .tracking-map-stage .portal-map{height:100vh;min-height:100vh;border-radius:0}.tracking-route .tracking-map-stage .map-card{bottom:22px}.tracking-route .tracking-live-shell+.portal-two-col{display:none}
@media(max-width:760px){.tracking-route .company-topbar{top:8px;left:8px;right:8px}.tracking-route .portal-feedback{top:72px;left:10px}.tracking-route .tracking-live-shell{display:block;height:100vh;overflow:auto}.tracking-route .tracking-map-stage,.tracking-route .tracking-map-stage .portal-map{height:72vh;min-height:520px}.tracking-route .tracking-car-list,.tracking-route .tracking-detail-panel{padding:18px}.tracking-route .tracking-car-list{margin-top:0}.tracking-route .tracking-detail-panel{min-height:260px}}
/* v5.13: calmer tracking workspace and mobile-first portal layout */
.nav-store{display:flex;align-items:center;justify-content:center;margin:10px 16px 14px;padding:11px 12px;border:1px solid #55b9c1;border-radius:12px;background:#0d5c68;color:#fff!important;font-weight:800;text-decoration:none;box-shadow:0 8px 18px #123e4a24}.nav-store:hover{background:#087985}.company-sidebar nav{padding-top:0}.tracking-route{background:#eef4f7}.tracking-route .company-topbar{position:relative;top:auto;left:auto;right:auto;margin:0;border-radius:0;box-shadow:0 4px 18px #102b4114}.tracking-route .portal-feedback{position:relative;top:auto;left:auto;margin:0;background:#fff}.tracking-route .portal-content-area{height:auto;padding:18px}.tracking-route .tracking-live-shell{grid-template-columns:235px minmax(0,1fr) 260px;gap:14px;height:auto;margin:0;align-items:stretch}.tracking-route .tracking-car-list,.tracking-route .tracking-detail-panel{border-radius:16px;padding:16px;background:#fff;box-shadow:0 5px 18px #17314912}.tracking-route .tracking-map-stage{height:600px;border-radius:16px;overflow:hidden;box-shadow:0 5px 18px #17314912}.tracking-route .tracking-map-stage .portal-map{height:600px;min-height:600px;border-radius:0}.tracking-route .tracking-map-stage .map-card{right:14px;bottom:14px;max-width:240px;background:#fffffff2}.tracking-route .real-map-pin{padding:5px 7px;border-radius:9px;font-size:10px}.tracking-route .map-toolbar{top:10px;right:10px}.tracking-route .map-layer-tabs{left:10px;top:10px}.tracking-route .tracking-live-shell+.portal-two-col{display:none}.software-mail-link{color:inherit;font-weight:800;text-decoration:underline;text-underline-offset:3px}.software-mail-link:hover{color:#087985}
@media(max-width:980px){.tracking-route .tracking-live-shell{grid-template-columns:210px minmax(0,1fr)}.tracking-route .tracking-detail-panel{grid-column:1/-1}.tracking-route .tracking-map-stage,.tracking-route .tracking-map-stage .portal-map{height:520px;min-height:520px}}
@media(max-width:650px){.tracking-route .tracking-live-shell{display:flex;flex-direction:column;height:auto;gap:10px}.tracking-route .tracking-map-stage{height:430px}.tracking-route .tracking-map-stage .portal-map{height:430px;min-height:430px}.tracking-route .tracking-car-list,.tracking-route .tracking-detail-panel{padding:13px}.tracking-route .tracking-map-stage .map-card{left:10px;right:10px;bottom:10px;max-width:none}.company-sidebar{width:min(86vw,310px)}.company-workspace{min-width:0}}

/* The desktop sidebar moves with the page, without a second scroll rail. */
@media(min-width:761px){.company-sidebar{position:relative;max-height:none;height:auto;overflow:visible}.company-sidebar nav{overflow:visible;max-height:none}}
@media(max-width:760px){.company-sidebar{overflow-y:auto;scrollbar-width:none}.company-sidebar::-webkit-scrollbar{display:none}}

/* Reservation records reflow; no hidden columns or horizontal page rail. */
.company-workspace,.portal-content-area,.rsv-data,.portal-form-fields{min-width:0}
.company-app .rsv-scroll{overflow:visible!important}.company-app .rsv-table{display:block!important;width:100%!important;min-width:0!important}
.company-app .rsv-table thead{display:block!important}.company-app .rsv-table thead tr{display:flex!important;flex-wrap:wrap;gap:8px;padding:10px 0}
.company-app .rsv-table thead th{display:block!important;border:0!important;padding:4px!important;font-size:11px}
.company-app .rsv-table tbody{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.company-app .rsv-table tbody tr{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #dbe7ec;border-radius:14px;padding:12px;gap:10px;background:#fff}
.company-app .rsv-table tbody td{display:block!important;width:auto!important;max-width:none!important;min-width:0;border:0!important;padding:4px!important;white-space:normal!important;overflow-wrap:anywhere}
.company-app .rsv-table tbody td:before{content:attr(data-label);display:block!important;font-size:10px;font-weight:700;color:#627c8b;margin-bottom:5px}
.company-app .rsv-table tbody td:last-child,.company-app .rsv-table tbody td[colspan]{grid-column:1/-1}
.company-app .rsv-table .reservation-actions{max-width:none!important;min-width:0!important;display:flex;flex-wrap:wrap}
.company-app .rsv-table .portal-btn{white-space:normal!important;min-height:40px}
.portal-form-fields input,.portal-form-fields select,.portal-form-fields textarea{box-sizing:border-box;max-width:100%;min-width:0}
.vehicle-picker label{min-width:0}.vehicle-picker small{font-weight:400;color:#5e7989;line-height:1.5}
.vehicle-history-dialog{max-width:660px}.vehicle-history-list{display:grid;gap:12px;padding:18px}.vehicle-history-list article{border:1px solid #dce7ed;border-radius:12px;padding:14px}.vehicle-history-list span{float:right}.vehicle-history-list p{overflow-wrap:anywhere;margin:8px 0}
@media(max-width:1100px){.company-app .rsv-table tbody{grid-template-columns:1fr}}
@media(max-width:600px){.company-app .rsv-table tbody tr{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-dialog{box-sizing:border-box;max-width:calc(100vw - 20px)}.op-layout,.op-grid{min-width:0}.op-summary-row b{white-space:normal!important}}

.rsv-plan-cards{display:none}.company-app .rsv-timeline{overflow:visible;max-width:100%}.company-app .rsv-time-head,.company-app .rsv-time-row{width:100%!important}.company-app .rsv-time-head>strong,.company-app .rsv-time-car{width:160px}.company-app .rsv-time-head>div,.company-app .rsv-time-track{width:auto!important;flex:1;min-width:0}.company-app .rsv-time-head span{width:auto!important;flex:1;font-size:9px;padding:14px 0}
@media(max-width:1000px){.company-app .rsv-timeline{display:none}.rsv-plan-cards{display:grid;gap:12px}.rsv-plan-cards article{display:grid;gap:10px;border:1px solid #dce6ed;padding:14px;border-radius:12px}.rsv-plan-cards button{text-align:left;white-space:normal;overflow-wrap:anywhere}.rsv-plan-cards small{display:block;margin-top:8px}}

/* 0.9.4: complete record cards; every field and action stays available. */
.company-app .portal-table-wrap{overflow:visible!important;min-width:0}
.company-app .portal-table{display:block!important;width:100%!important;min-width:0!important;white-space:normal}
.company-app .portal-table thead{display:none}
.company-app .portal-table tbody{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:12px}
.company-app .portal-table tbody tr{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:1px solid #dbe7ec;border-radius:12px;padding:12px;min-width:0}
.company-app .portal-table tbody td{display:block!important;min-width:0!important;max-width:none!important;white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere;border:0!important;padding:3px!important}
.company-app .portal-table tbody td:before{content:attr(data-label);display:block;font-size:11px;font-weight:700;color:#627c8b;margin-bottom:5px}
.company-app .portal-table tbody td:last-child{grid-column:1/-1;display:flex!important;flex-wrap:wrap;gap:8px}
.company-app .portal-table tbody td:last-child:before{flex-basis:100%}
.company-app .portal-table td button{margin:0!important;white-space:normal!important;min-height:40px}
.company-app .portal-section-head,.company-app .company-topbar,.company-app .portal-row{flex-wrap:wrap}
.company-app .portal-dialog{overflow-y:auto;max-width:calc(100vw - 20px);min-width:0}
.company-app .portal-dialog header,.company-app .portal-dialog footer{flex-wrap:wrap}
.company-app .portal-dialog input,.company-app .portal-dialog select,.company-app .portal-dialog textarea{min-width:0;max-width:100%}
@media(max-width:1100px){.company-app .portal-table tbody{grid-template-columns:1fr}}
@media(max-width:600px){.company-app .portal-table tbody tr{grid-template-columns:repeat(2,minmax(0,1fr))}.company-app .portal-table tbody{padding:8px}.company-app .portal-dialog header h2{overflow-wrap:anywhere;min-width:0}}

.portal-agenda-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.portal-agenda-filters label{display:grid;gap:6px;min-width:0}.portal-agenda-filters input,.portal-agenda-filters select{width:100%;min-width:0;box-sizing:border-box;padding:10px;border:1px solid #cbdce5;border-radius:9px}@media(max-width:600px){.portal-agenda-filters{grid-template-columns:1fr}}

.staff-permissions{border:1px solid #d2e1ec;border-radius:12px;padding:12px;margin:15px 0;grid-column:1/-1;min-width:0}.staff-permissions>div{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:8px 0}.staff-permissions strong{min-width:110px}.staff-permissions label{display:inline-flex;align-items:center;gap:7px;margin:5px}.staff-permissions input[type=checkbox]{width:18px;height:18px;min-height:18px;padding:0}

.portal-record-photo{display:grid;gap:10px;border:1px dashed #c4d6e1;padding:14px;border-radius:12px}.portal-record-photo img{max-width:100%;max-height:160px;object-fit:contain}.portal-record-photo input{max-width:100%}

/* Reference workflow views fit the available width, including WebView. */
.ref-filters,.ref-calendar-nav{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:16px 0}.ref-filters label,.ref-calendar-nav label{display:grid;gap:5px;flex:1 1 160px;min-width:0}.ref-filters input,.ref-filters select,.ref-calendar-nav input{width:100%;max-width:100%;padding:10px;border:1px solid #d5e3ed;border-radius:9px;background:#fff}.ref-tabs{margin:16px 0;flex-wrap:wrap}.ref-tabs [aria-pressed=true]{background:#173b60;color:#fff}.ref-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.ref-calendar-workweek{grid-template-columns:repeat(5,minmax(0,1fr))}.ref-calendar-day,.ref-calendar-time{grid-template-columns:1fr}.ref-calendar .portal-card{min-width:0;padding:12px}.ref-calendar .portal-row{display:block}.ref-calendar h3{font-size:13px}.ref-calendar strong,.ref-calendar small{overflow-wrap:anywhere}.ref-calendar .portal-btn{margin-top:8px;max-width:100%;white-space:normal}.ref-calendar-month .portal-card{min-height:130px}@media(max-width:1100px){.ref-calendar{grid-template-columns:repeat(3,minmax(0,1fr))}.ref-calendar-day,.ref-calendar-time{grid-template-columns:1fr}}@media(max-width:600px){.ref-calendar{grid-template-columns:1fr}.ref-tabs .portal-btn{flex:1 1 42%}.ref-filters label{flex-basis:100%}}@media print{.ref-filters,.ref-tabs,.ref-calendar-nav{display:none!important}.ref-calendar{display:block}.ref-calendar .portal-card{break-inside:avoid}}

/* 103: a compact vehicle summary, with all secondary data available on demand. */
.vehicle-compact-list{display:grid;gap:10px;min-width:0}.vehicle-compact-card{background:#fff;border:1px solid #dbe7ec;border-radius:12px;padding:12px 14px;min-width:0}.vehicle-compact-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.vehicle-compact-title{flex:1 1 200px;min-width:0;display:grid;gap:3px}.vehicle-compact-title strong{font-size:15px;color:#173b60}.vehicle-compact-title span{font-size:12px;color:#557087;overflow-wrap:anywhere}.vehicle-compact-meta{font-size:12px;color:#627c8b;margin:7px 0}.vehicle-compact-actions,.vehicle-compact-sort{display:flex;flex-wrap:wrap;gap:6px}.vehicle-compact-actions .portal-btn,.vehicle-compact-sort .portal-btn{font-size:12px;padding:7px 10px;min-height:34px;max-width:100%;white-space:normal}.vehicle-compact-sort{margin:10px 0}.vehicle-compact-details summary{cursor:pointer;font-size:12px;font-weight:600;color:#17686a;padding:4px 0;min-height:28px}.vehicle-compact-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:10px 0 0;padding-top:10px;border-top:1px solid #e5edf3}.vehicle-compact-fields div{min-width:0}.vehicle-compact-fields dt{font-size:11px;color:#627c8b}.vehicle-compact-fields dd{font-size:12px;margin:3px 0 0;overflow-wrap:anywhere}.vehicle-compact-details:not([open]) .vehicle-compact-fields{display:none}
@media(max-width:700px){.vehicle-compact-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.vehicle-compact-card{padding:10px 12px}.vehicle-compact-top{gap:8px}.vehicle-compact-title{flex-basis:65%}.vehicle-compact-actions{flex-basis:100%}.vehicle-compact-actions .portal-btn{min-height:40px}}
@media print{.vehicle-compact-actions,.vehicle-compact-sort{display:none}.vehicle-compact-details .vehicle-compact-fields{display:grid!important}.vehicle-compact-card{break-inside:avoid}}

.company-app .vehicle-compact-actions .portal-btn,.company-app .vehicle-compact-sort .portal-btn{width:auto!important;flex:0 1 auto}

/* 105: modal owns scrolling; the background stays still. */
html:has(.portal-dialog[open]),body:has(.portal-dialog[open]){overflow:hidden!important}
.company-app .portal-dialog{max-height:calc(100dvh - 24px)!important;overscroll-behavior:contain}
@media(max-width:760px){
 .company-app .rsv-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px;margin:10px 0}
 .company-app .rsv-summary button{min-height:64px!important;padding:8px 10px!important;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left}
 .company-app .rsv-summary strong{font-size:22px!important}.company-app .rsv-summary small{font-size:11px!important}
 .company-app .rsv-summary button:last-child{grid-column:1/-1}
 .company-app .ref-calendar-month .portal-card{min-height:0!important;padding:8px 12px}
 .company-app .ref-calendar-time .portal-card{padding:8px 12px}.ref-calendar h3{margin:0 0 6px}
 .company-app .portal-dialog footer,.company-app .portal-dialog-actions{display:flex!important;position:sticky;bottom:0;background:#fff;z-index:6;gap:8px;padding-top:10px}
 .company-app .portal-dialog footer .portal-btn,.company-app .portal-dialog-actions .portal-btn{flex:1;width:auto!important}
 .company-app .rental-dialog .op-hero{padding:12px 0}.company-app .rental-dialog .op-aside{order:1!important}
}

/* 113: consistent compact company workspace typography. */
.company-app{font-size:14px;line-height:1.5}
.company-app .company-topbar h1,.lang-en .company-app .company-topbar h1{font-size:24px;line-height:1.2}
.company-app .portal-card h2,.company-app .portal-section-head h2,.company-app .portal-welcome h2{font-size:20px;line-height:1.25}
.company-app .portal-card h3,.company-app .contract-card h2,.company-app .network-card h3{font-size:16px;line-height:1.3}
.company-app .portal-stat strong,.company-app .portal-report-total,.company-app .rsv-summary strong{font-size:24px!important}
.company-app .portal-empty h2,.company-app .portal-empty h3{font-size:19px}
.company-app .portal-dialog h2,.company-app .portal-dialog h3{font-size:20px;line-height:1.25}
.company-app .company-topbar{padding:16px 18px}.company-app .portal-welcome{padding:20px}
@media(max-width:760px){
 .company-app .company-topbar h1,.lang-en .company-app .company-topbar h1{font-size:20px}
 .company-app .portal-card h2,.company-app .portal-section-head h2,.company-app .portal-welcome h2{font-size:18px}
 .company-app .portal-stat strong,.company-app .rsv-summary strong{font-size:21px!important}
 .company-app .company-topbar{padding:12px}.company-app .portal-welcome{padding:16px}
 .company-app input:not([type=checkbox]):not([type=radio]),.company-app select,.company-app textarea{font-size:16px}
 .company-app button,.company-app .portal-btn{min-height:44px}
}

/* Company directory and sharing controls follow the compact panel scale. */
[data-network-directory]{max-height:420px;overflow-y:auto}[data-network-company]{gap:10px;padding:12px 0;flex-wrap:wrap}[data-network-company]>div{flex:1 1 160px;min-width:0}
[data-showroom-form]{grid-template-columns:minmax(0,1fr);gap:10px}
[data-showroom-form] label{display:flex;align-items:center;gap:10px;min-height:44px;line-height:1.4}
[data-showroom-form] input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;min-height:18px;padding:0;margin:0}
[data-showroom-form] fieldset{min-width:0;border:1px solid #d5e3ed;border-radius:9px;padding:10px 12px}
[data-showroom-form] legend{font-size:13px;padding:0 5px}
[data-network-share] label{min-width:0;display:grid;gap:6px}[data-network-share] label:has([type=checkbox]){display:flex;align-items:center}
[data-network-share] input,[data-network-share] select,[data-assignment-vehicle]{max-width:100%;padding:9px;border:1px solid #d5e3ed;border-radius:8px}
[data-assignment-items] .portal-card{margin:12px 0}[data-assignment-items] small{display:block;overflow-wrap:anywhere}
@media(max-width:760px){[data-network-share]{grid-template-columns:1fr}[data-network-directory]{max-height:340px}}

[data-showroom-form] fieldset{grid-column:1/-1;display:grid;gap:8px;border:1px solid #d5e3ed;border-radius:10px;padding:14px}[data-showroom-form] label{display:flex;align-items:center;gap:8px;font-size:13px}
