:root{color-scheme:light;--bg:#e9edf0;--panel:#f8f9fa;--text:#233443;--muted:#677785;--border:#d6dfe5;--blue:#1375be;--shadow:0 3px 10px #243b4c12;--input:#edf1f4;--nav:#f0f3f5;--active:#d9ebfb}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #27a6ef;outline-offset:3px}button{color:inherit}h1,h2,h3,p{margin-top:0}h1{font-size:27px;line-height:1.2;letter-spacing:-.6px;margin-bottom:7px}h2{font-size:18px}h3{font-size:16px;margin-bottom:3px}p{margin-bottom:12px}small{font-size:12px}.muted,dt,.empty-text{color:var(--muted)}.sidebar{position:fixed;inset:0 auto 0 0;width:218px;background:var(--nav);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:24px 14px;z-index:5}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:7px 10px 30px;line-height:1.2}.sidebar-brand>span{font-size:38px;color:var(--blue)}.sidebar-brand b{font-size:19px}.sidebar-brand small{display:block;color:var(--muted);font-weight:500;margin-top:4px}.sidebar nav{display:grid;gap:9px}.sidebar nav a{padding:12px 13px;border-radius:11px;font-size:16px;font-weight:650;display:flex;align-items:center;gap:15px}.sidebar nav a span{width:25px;text-align:center;font-size:25px;line-height:1}.sidebar nav a:hover{background:var(--input)}.sidebar nav a.active{background:var(--active);color:var(--blue);box-shadow:inset 0 0 0 1px #1593ea18}.sidebar-footer{margin-top:auto;padding:25px 8px 2px;display:flex;gap:10px;align-items:center}.sidebar-footer small{display:block;color:var(--muted)}.avatar{width:36px;height:36px;border-radius:50%;background:#c5dced;color:#245b7d;display:grid;place-items:center;font-weight:750}.workspace{margin-left:218px;max-width:1800px}.hero{height:214px;background:linear-gradient(90deg,#203b52d9,#253c5580 57%,#243d5210),url('./workshop.svg') center 60%/cover;color:#fff;position:relative;border-bottom:4px solid #91b3c3;border-top-left-radius:0}.hero-tools{position:absolute;top:17px;right:24px;display:flex;gap:12px;align-items:center}.icon-button{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--border);background:var(--input);border-radius:10px;font-size:23px;line-height:1;flex-shrink:0}.hero .icon-button{background:#183146c9;border-color:#ffffff24;color:white}.test-badge{font-size:10px;font-weight:750;letter-spacing:1px;background:#19374cc7;border:1px solid #ffffff35;padding:6px 9px;border-radius:7px}.brand{display:flex;align-items:center;gap:18px;position:absolute;left:36px;bottom:32px;text-shadow:0 2px 3px #0005}.brand-icon{font-size:82px;line-height:1;color:#d4e5ee;filter:drop-shadow(0 0 9px #68bff555)}.brand b{font-size:31px;font-style:italic;line-height:1.05}.brand strong{display:block;font-size:30px;line-height:1.25;font-style:italic;letter-spacing:-.8px}.brand strong span{background:#0a73be;padding:0 5px 2px;margin-left:3px;border-radius:4px}.brand small{display:block;font-size:13px;margin-top:9px;color:#e5edf3}#menu{display:none}main{padding:24px 28px 32px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:25px}.stat{display:flex;align-items:center;gap:14px;background:var(--panel);border:1px solid var(--border);border-radius:13px;padding:17px 13px;box-shadow:var(--shadow)}.stat b{font-size:30px;line-height:1.1}.stat small{display:block;font-weight:600;font-size:13px;margin-top:4px}.stat-icon{height:52px;width:52px;display:grid;place-items:center;border-radius:11px;font-size:32px;flex-shrink:0}.blue{background:#ddecf8;color:#177dbb}.amber{background:#faf0d3;color:#b47b15}.green{background:#dceee0;color:#2b8156}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.page-heading p{margin-bottom:0;color:var(--muted)}.eyebrow{font-size:10px;font-weight:750;letter-spacing:1.5px;margin-bottom:5px!important;color:var(--muted)}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:9px;font-weight:650;border:1px solid var(--border);white-space:nowrap;min-height:42px}.primary{color:#fff;background:#1375be;border-color:#1375be;box-shadow:0 2px 4px #163e601a}.primary:hover{background:#0c639f}.secondary{background:var(--panel)}.secondary:hover{border-color:#6e9dbb}.filters{display:grid;grid-template-columns:1fr 1.65fr 1fr 44px;gap:12px;align-items:end}.filters label>span{display:block;font-size:11px;font-weight:650;color:var(--muted);margin-bottom:4px}input,select,textarea{border:1px solid var(--border);border-radius:9px;background:var(--input);color:var(--text);width:100%;padding:10px 12px;min-height:44px}textarea{resize:vertical}.filter-bottom{display:flex;align-items:center;justify-content:space-between;margin:15px 1px 19px;font-size:12px}.checkbox{display:flex;gap:8px;align-items:center}.checkbox input{width:17px;min-height:17px;accent-color:#1375be}.vehicle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.vehicle-card{border:1px solid var(--border);border-radius:13px;overflow:hidden;background:var(--panel);box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s;display:flex;flex-direction:column}.vehicle-card:hover{transform:translateY(-3px);box-shadow:0 7px 18px #1d395721}.vehicle-image{aspect-ratio:2.15;overflow:hidden;background:#b9c8cd;position:relative}.vehicle-image img{width:100%;height:100%;object-fit:cover}.placeholder{background:linear-gradient(170deg,#aebfc6 0%,#d8e0e2 60%,#aab9ba 61%,#8c9d9f);display:grid;place-items:center}.placeholder svg{width:85%;max-height:135px}.placeholder small{position:absolute;bottom:3px;right:8px;font-size:9px;color:#213d4b;opacity:.7}.vehicle-body{padding:13px 16px 17px}.vehicle-body h3{font-size:18px;margin:8px 0 2px;line-height:1.3}.vehicle-body>p{font-size:13px;color:var(--muted);margin-bottom:10px}.plate{display:inline-flex;background:#f6f8f9;color:#283c4b;border:1px solid #aab6bf;box-shadow:0 1px 2px #0002;align-items:center;border-radius:5px;overflow:hidden;font-size:14px;font-weight:750;letter-spacing:.6px;line-height:1.5;padding-right:7px}.plate i{background:#197fc2;color:white;padding:3px 5px;font-style:normal;font-size:9px;align-self:stretch;display:flex;align-items:end;margin-right:7px}.plate.missing{font-size:11px;letter-spacing:0;color:#687b86;padding:3px 7px}.badge{display:inline-block;background:var(--input);color:var(--muted);border-radius:7px;font-size:11px;font-weight:700;padding:4px 8px;line-height:1.4}.status-0{background:#f4e7bc;color:#795510}.status-1{background:#d3ebdb;color:#206640}.status-2{background:#fae1cd;color:#924c1b}.status-3{background:#cce7f6;color:#166385}.status-4{background:#e3e8ed;color:#536779}.task-preview{margin:9px 0 0!important;font-size:12px!important;padding-top:8px;border-top:1px solid var(--border)}.list-view{grid-template-columns:1fr}.list-view .vehicle-card{flex-direction:row}.list-view .vehicle-image{width:150px;flex-shrink:0;aspect-ratio:auto}.list-view .vehicle-body{flex:1;display:flex;align-items:center;gap:18px;flex-wrap:wrap}.list-view h3,.list-view p{margin:0}.list-view .task-preview{border:0;padding:0;flex-basis:100%}.panel{background:var(--panel);border:1px solid var(--border);border-radius:13px;padding:20px;box-shadow:var(--shadow)}.back{display:inline-block;font-size:13px;font-weight:650;margin-bottom:15px;color:var(--muted)}.detail-summary{display:grid;grid-template-columns:240px 1fr;gap:25px;align-items:center}.detail-summary .vehicle-image{aspect-ratio:1.6;border-radius:10px}.detail-summary h1{font-size:29px}.detail-summary p{font-size:13px;margin-bottom:9px}.detail-badges{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:12px 0}.incomplete{color:#9a6f1d!important}.row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.row-actions .secondary{font-size:12px;padding:7px 12px;min-height:36px}.vehicle-data{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:23px 0 0;border-top:1px solid var(--border)}.vehicle-data div{padding:13px 12px 7px 0;border-bottom:1px solid var(--border)}dt{font-size:10px}dd{margin:4px 0;font-size:12px;font-weight:650;overflow-wrap:anywhere}.tabs{display:flex;overflow-x:auto;gap:4px;margin:18px 0;padding:5px;border:1px solid var(--border);border-radius:11px;background:var(--panel)}.tabs button{flex:1;white-space:nowrap;border:0;border-radius:8px;background:transparent;padding:10px 13px;font-size:12px;font-weight:650}.tabs button.selected{background:#da8728;color:white}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.panel-heading h2{margin:0}.panel-heading .icon-button{width:28px;height:28px;font-size:21px}.record,.work-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--border)}.record:last-child,.work-row:last-child{border-bottom:0}.record p,.work-row p{font-size:12px;color:var(--muted);margin:3px 0 0}.record-icon{color:#d68a31;font-size:26px}.record>div{flex:1}.work-row{align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.work-row select{font-size:12px;min-height:36px;padding:6px;width:auto}.empty-text{font-size:13px;padding:16px 0}.linked-record:hover{background:var(--input)}.customer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.customer-card{text-align:left}.customer-card h2{margin:14px 0 5px}.customer-card p{color:var(--muted)}.customer-card>span:last-child{font-size:12px;color:var(--blue);font-weight:650}.empty{grid-column:1/-1;text-align:center;padding:50px 20px;background:var(--panel);border:1px dashed var(--border);border-radius:13px}.empty>span{font-size:50px;color:var(--muted)}.empty p{color:var(--muted)}.settings-panel{max-width:740px}.settings-panel h2:not(:first-child){margin-top:30px}footer{text-align:center;color:var(--muted);font-size:11px;padding:0 26px 25px;max-width:1000px;margin:auto}dialog{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:16px;padding:26px;width:min(620px,calc(100% - 28px));max-height:90dvh;box-shadow:0 20px 100px #0005}dialog::backdrop{background:#102a3e99;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-heading h2{font-size:23px;margin:0}#form-fields{display:grid;gap:16px}#form-fields label{display:grid;gap:5px;font-size:13px;font-weight:600}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.form-hint{color:var(--muted);font-size:12px}.error{color:#c35142;font-size:13px;margin-top:12px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:20;background:#173c54;color:#fff;border:1px solid #638da6;border-radius:10px;box-shadow:0 4px 20px #0003;max-width:min(620px,90vw);padding:12px 20px;font-size:13px}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip:focus{position:fixed;left:10px;top:10px;z-index:30;padding:12px;background:var(--panel)}
@media(min-width:1500px){.vehicle-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.list-view{grid-template-columns:1fr}.hero{height:235px}.brand{left:42px;bottom:40px}.brand b{font-size:36px}.brand strong{font-size:36px}main{padding:28px 36px}}
@media(max-width:1100px){.sidebar{width:182px;padding-inline:10px}.workspace{margin-left:182px}.sidebar nav a{font-size:14px;gap:10px}.sidebar-brand{padding-inline:4px}.sidebar-brand b{font-size:17px}.sidebar-brand>span{font-size:31px}main{padding:20px}.stat{padding:12px 10px;gap:9px}.stat-icon{height:40px;width:40px;font-size:27px}.stat b{font-size:25px}.stat small{font-size:11px}.stats{gap:10px}.vehicle-grid{gap:13px}.vehicle-body{padding:12px}.vehicle-body h3{font-size:16px}.hero{height:200px}.brand{left:24px}.brand-icon{font-size:65px}.brand b,.brand strong{font-size:27px}.filters{grid-template-columns:1fr 1.5fr 1fr 42px;gap:9px}.detail-summary{grid-template-columns:190px 1fr}.customer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.sidebar{width:160px}.workspace{margin-left:160px}.sidebar nav a{padding:11px 8px}.sidebar nav a span{font-size:23px}.sidebar-brand b{font-size:15px}.sidebar-brand>span{font-size:25px}.sidebar-brand small{font-size:10px}.brand strong,.brand b{font-size:24px}.brand-icon{font-size:52px}.brand small{font-size:11px}.brand{gap:12px;left:20px;bottom:28px}.hero{height:180px}.hero-tools{top:12px;right:15px}.vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.list-view{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat{padding:13px}.stat small{font-size:12px}.page-heading{align-items:flex-start}.page-heading h1{font-size:24px}.page-heading p{font-size:12px}.primary{font-size:12px}.filters{grid-template-columns:1fr 1fr 42px}.search{grid-column:1/-1;grid-row:1}.vehicle-data{grid-template-columns:repeat(2,1fr)}.detail-summary{grid-template-columns:1fr}.detail-summary .vehicle-image{max-width:300px;aspect-ratio:2}.detail-grid{grid-template-columns:1fr}.detail-summary h1{font-size:27px}.customer-grid{grid-template-columns:1fr}.panel{padding:16px}}
@media(max-width:600px){.sidebar{transform:translateX(-100%);width:220px;transition:transform .2s;box-shadow:4px 0 20px #0004}.menu-open .sidebar{transform:translateX(0);padding-top:65px}.workspace{margin-left:0}#menu{display:grid;position:fixed;top:12px;left:12px;z-index:10}.hero{height:180px}.hero-tools{right:12px}.brand{left:18px;bottom:22px}.brand b,.brand strong{font-size:26px}.brand-icon{font-size:49px}.brand small{font-size:10px}.test-badge{font-size:8px}.hero-tools .icon-button{width:34px;height:34px}.hero-tools{gap:7px}.stats{gap:9px;margin-bottom:22px}.stat{gap:10px;padding:12px}.stat b{font-size:25px}.stat-icon{width:42px;height:42px}main{padding:16px 13px 25px}.page-heading{flex-wrap:wrap;margin-bottom:18px;gap:11px}.page-heading>.primary{padding:9px 14px}.vehicle-grid{gap:11px}.vehicle-body{padding:11px 10px}.vehicle-body h3{font-size:15px}.vehicle-body>p{font-size:11px}.plate{font-size:12px}.badge{font-size:10px}.task-preview{font-size:11px!important}.vehicle-image{aspect-ratio:1.7}.placeholder small{font-size:7px;right:5px}.placeholder svg{width:95%}.filters{gap:8px}select,input{font-size:13px}.filter-bottom{font-size:11px}.list-view .vehicle-image{width:94px}.list-view .vehicle-body{gap:8px}.detail-summary{gap:15px}.detail-summary .vehicle-image{max-width:none}.detail-top{padding:15px}.detail-summary h1{font-size:25px}.detail-summary .eyebrow{font-size:9px}.detail-summary .row-actions{gap:6px}.detail-summary .row-actions .secondary{font-size:11px;padding:8px}.tabs{margin:14px 0}.tabs button{font-size:11px;padding:9px 10px}.form-grid{grid-template-columns:1fr}.dialog-heading h2{font-size:21px}dialog{padding:21px}.linked-record{flex-wrap:wrap}.linked-record>span:last-child{margin-left:38px}.record h3{font-size:14px}footer{font-size:10px;padding-inline:16px}}
select{appearance:none;-webkit-appearance:none;height:44px;padding-right:30px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10'%3E%3Cpath d='m3 3 4 4 4-4' stroke='%23758a98' stroke-width='1.8' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}
.row-actions select{height:36px;padding-right:30px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Designabgleich 0.2: Werkstatt-Entwurf statt flacher Verwaltungsoptik. */
:root{--bg:#dde4e9;--panel:#f4f6f8;--text:#202d38;--muted:#64717d;--border:#c2ccd5;--input:#e9eef2;--nav:#e9eff3;--shadow:0 3px 7px #263c4f24,0 1px 2px #fff9 inset}
body{background:radial-gradient(ellipse at 65% 0,#f5f8fa 0,#d8e1e7 65%,#cbd7df);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.workspace{margin-left:210px;max-width:1600px;padding:0 18px 0 0;min-height:100vh;background:linear-gradient(135deg,#e5ebef,#f5f7f9 40%,#dce4e9)}
.sidebar{width:210px;background:linear-gradient(105deg,#f7f9fb,#e4ebf1);border-right:2px solid #b9c7d1;box-shadow:inset -5px 0 12px #6d81911a;padding:18px 13px;z-index:5}
.sidebar-brand{padding:4px 7px 26px;gap:8px}.sidebar-brand img{width:39px;height:39px;object-fit:contain;filter:drop-shadow(0 2px 2px #31526944)}.sidebar-brand b{font-size:19px;color:#304451}.sidebar-brand small{font-size:11px}
.sidebar nav{gap:11px}.sidebar nav a{padding:13px 12px;font-size:17px;gap:13px;border:1px solid transparent;border-radius:12px;color:#263440;box-shadow:none}.sidebar nav a>span{width:29px;height:29px;display:grid;place-items:center}.sidebar nav a.active{background:linear-gradient(110deg,#d5edff,#b1d8f6);border-color:#a1c9e6;color:#0868b5;box-shadow:inset 0 1px 2px #fff,0 2px 4px #53758d20}.sidebar nav a:hover{background:linear-gradient(#f7fafc,#dce7ef)}
.ui-icon{display:block;width:24px;height:24px;flex-shrink:0}.sidebar .ui-icon{width:29px;height:29px;stroke-width:2.1;filter:drop-shadow(0 1px 0 #fff9)}
.hero{height:238px;margin:17px 0 0;border:2px solid #a7bbc9;border-bottom:0;border-radius:92px 15px 0 0;background:linear-gradient(90deg,#21394bed 0,#263f53c9 40%,#29445622 73%,#263d4b05),url('./workshop.svg') right center/cover;box-shadow:inset 0 2px 1px #ffffffa6,inset 0 0 0 5px #8faabd33,0 -3px 10px #3b56663a;overflow:hidden}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:17px;border-radius:80% 30% 0 0;background:linear-gradient(#ffffff70,#edf2f5);box-shadow:0 -3px 4px #16344b55;pointer-events:none}
.brand{left:34px;bottom:40px;gap:16px;align-items:center;max-width:calc(100% - 160px);text-shadow:0 2px 1px #cdd9e5,0 4px 3px #102b44,0 6px 7px #0b2137a1}.brand-icon{width:124px;height:124px;display:block;flex-shrink:0;filter:drop-shadow(0 5px 4px #0c1b2e66)}.brand-icon img{width:100%;height:100%;object-fit:contain;display:block}.brand-lettering{min-width:0}.brand b{font-size:43px;font-weight:800;line-height:1.12;letter-spacing:-1.5px;font-style:italic;color:#f8fcff}.brand strong{font-size:43px;font-weight:800;line-height:1.28;letter-spacing:-1.5px;white-space:nowrap;color:#f5fbff}.brand strong span{display:inline-block;padding:0 9px 3px;margin-left:6px;transform:skew(-7deg);background:linear-gradient(150deg,#289ce8,#0878cc 55%,#0054a7);border:1px solid #5dafdf;border-radius:8px;box-shadow:inset 0 2px 2px #99d3ff99,0 4px 2px #123d5d,0 6px 8px #0b2138a1;text-shadow:0 2px 1px #3f75a3,0 3px 4px #064373}.brand small{font-size:15px;letter-spacing:.1px;margin-top:11px;color:#f1f6fa;text-shadow:0 2px 3px #0e2235;font-weight:600}
.hero-tools{top:21px;right:23px;gap:10px}.hero .icon-button{width:46px;height:46px;border-radius:14px;background:linear-gradient(#253c4e,#122635);border:1px solid #728a9a;box-shadow:inset 0 2px 2px #ffffff24,0 4px 5px #1425326b}.hero .ui-icon{width:25px;height:25px}.test-badge{padding:6px 8px;font-size:9px;border-color:#89a3b45c;background:#1d3648ab;color:#cbdbe7}
main{padding:0 22px 28px}.stats{position:relative;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;padding:17px 0 18px;margin:0 0 8px;border-radius:18px;background:transparent;z-index:1}.stat{gap:12px;padding:17px 13px;border:2px solid #d1dbe3;border-radius:16px;background:linear-gradient(140deg,#fff,#f2f5f8);box-shadow:inset 0 2px 1px #fff,0 4px 5px #687f9136;min-height:95px}.stat-icon{width:54px;height:54px;border-radius:12px;border:1px solid #c4ddec;box-shadow:inset 0 2px 3px #fff,0 2px 5px #729bb51f}.stat-icon .ui-icon{width:37px;height:37px;stroke-width:2.3;filter:drop-shadow(0 2px 1px #ffffffcc)}.stat-icon.blue{color:#0877be;background:linear-gradient(145deg,#e7f5ff,#c9e7f9)}.stat-icon.amber{color:#d8931d;border-color:#f2e3bb;background:linear-gradient(145deg,#fff9e8,#f8ecc4)}.stat-icon.green{color:#298751;border-color:#cbe8d5;background:linear-gradient(145deg,#edf9ec,#d2efd7)}.stat b{font-size:35px;font-weight:780;line-height:1}.stat small{font-size:14px;line-height:1.25;color:#263642;font-weight:650;margin-top:7px}
.page-heading{margin:4px 0 14px;align-items:center}.page-heading .eyebrow{display:none}.page-heading h1{font-size:23px;letter-spacing:-.5px;margin-bottom:3px}.page-heading p{font-size:12px}.page-heading .primary{font-size:13px;padding:9px 14px;background:linear-gradient(#2797dc,#0871b6);border-color:#0865a9;box-shadow:inset 0 1px 1px #b3e2ff90,0 3px 5px #27496226}
.filters{grid-template-columns:1fr 1.6fr 1fr 46px;gap:11px;align-items:end}.filters label>span{font-size:10px;letter-spacing:.1px;margin-bottom:4px}.filters input,.filters select{height:46px;font-size:14px;border:1px solid #c5d1da;background-color:#e6edf3;box-shadow:inset 0 2px 4px #5c71851c,0 1px 1px #ffffffdb;border-radius:12px;font-weight:550}.filters .search input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%233d5364' stroke-width='2'%3E%3Ccircle cx='10' cy='10' r='7'/%3E%3Cpath d='m15 15 6 6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:12px center;padding-left:43px}.view-toggle{height:46px;min-height:46px;background:linear-gradient(#fcfeff,#e0e8ee);box-shadow:inset 0 1px 1px #fff,0 2px 3px #49677a24}.view-toggle .ui-icon{width:24px;height:24px}.filter-bottom{margin:13px 1px 16px;font-size:12px}.checkbox input{background:white}.vehicle-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.vehicle-card{border:2px solid #c3cfd9;border-radius:17px;box-shadow:inset 0 1px 1px #fff,0 4px 7px #3d566c36;background:linear-gradient(130deg,#fff,#f0f4f7);overflow:hidden;transition:transform .18s,box-shadow .18s}.vehicle-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #2c4f6d3b;border-color:#8cb3d0}.vehicle-image{aspect-ratio:1.9;border-bottom:1px solid #b2c0c8;background:#bac5ca;position:relative}.model-photo{overflow:hidden}.model-photo>svg{display:block;width:100%;height:100%}.model-photo>small{position:absolute;bottom:8px;right:8px;padding:2px 4px;border-radius:3px;background:#1d2f3f7a;color:#f3f8fa;font-size:8px;letter-spacing:.15px}.model-photo::after{position:absolute;content:"";inset:0;box-shadow:inset 0 2px 3px #fff4,inset 0 -7px 12px #182a3b2e;pointer-events:none}.vehicle-body{padding:0 18px 17px;display:flex;align-items:flex-start;flex-direction:column;flex:1;background:linear-gradient(125deg,#fff,#eef2f6)}.vehicle-card .plate{position:relative;margin-top:-17px;background:linear-gradient(#fff,#edf2f7);border:2px solid #acbac6;border-radius:7px;font-size:17px;line-height:1.35;font-weight:780;letter-spacing:.4px;min-height:29px;box-shadow:0 2px 3px #34536929,inset 0 1px 1px #fff;z-index:1}.plate i{background:linear-gradient(#1893dc,#0063b2);font-size:9px;padding:3px 5px;min-width:15px;position:relative}.plate i::before{content:"✦";position:absolute;top:-3px;font-size:9px;left:4px;color:#f8d75a}.vehicle-card .plate.missing{font-size:11px;padding:4px 7px;letter-spacing:0}.vehicle-body h3{font-size:21px;line-height:1.22;font-weight:750;letter-spacing:-.55px;margin:10px 0 3px;min-height:1.25em}.vehicle-body>p{font-size:14px;line-height:1.3;color:#495963;margin:0 0 11px;min-height:1.3em}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:10px;font-size:13px;line-height:1.15;font-weight:750;border:1px solid #d4dde4;box-shadow:inset 0 1px 1px #fff8}.badge .ui-icon{width:18px;height:18px;stroke-width:2.6}.status-0{color:#76500d;background:linear-gradient(#fff4b6,#f4df87);border-color:#edda96}.status-1{color:#145f32;background:linear-gradient(#c9f0d7,#a3dfb9);border-color:#a9d7b7}.status-2{color:#9b4116;background:linear-gradient(#ffe6cb,#f4ceab);border-color:#e8bc96}.status-3{color:#185e82;background:linear-gradient(#d8effa,#b7dcef);border-color:#b3d1e3}.status-4{color:#546978;background:linear-gradient(#edf2f6,#d8e2eb)}.vehicle-body .badge{margin-top:auto;max-width:100%}.vehicle-body .task-preview{font-size:11px!important;margin:10px 0 0!important;min-height:0;padding:7px 0 0!important;border-top:1px solid #d5dfe5;width:100%;color:#6b7b87;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-view{grid-template-columns:1fr}.list-view .vehicle-image{width:190px;aspect-ratio:1.9}.list-view .vehicle-body{padding:13px 18px;display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:14px}.list-view .vehicle-body .plate{margin:0}.list-view h3{margin:0}.list-view .vehicle-body>p{margin:0;min-height:0}.list-view .vehicle-body .badge{margin:0}.list-view .vehicle-body .task-preview{flex-basis:100%;padding:3px 0 0!important;margin:0!important;border:0}
.detail-top{margin-top:20px;background:linear-gradient(135deg,#fff,#e5edf3);border:2px solid #bbcbd7;box-shadow:inset 0 1px 1px #fff,0 4px 8px #33506c2b}.detail-summary .vehicle-image{border-radius:13px;border:1px solid #a9bac8;aspect-ratio:1.55}.back{padding-top:18px;margin-bottom:0}.panel{background:linear-gradient(130deg,#fff,#edf2f6);border:1px solid #bdcbd6;box-shadow:inset 0 1px 1px #fff,0 3px 5px #3b566c20}.tabs{background:linear-gradient(#fff,#e2eaf0);box-shadow:inset 0 1px 1px #fff,0 2px 4px #34546e21}.tabs button.selected{background:linear-gradient(#f1a63b,#d67c17);box-shadow:inset 0 1px 1px #ffe3a9,0 2px 3px #87551844}.detail-grid{gap:16px}.sidebar-footer{border-top:1px solid #bccbd7;margin-top:auto;padding-top:18px}.sidebar-footer .avatar{border:1px solid #94b1c8;background:linear-gradient(#e9f4fc,#b8d5e9);box-shadow:inset 0 1px 1px #fff;color:#326b92}
@media(min-width:1600px){.workspace{margin-left:228px}.sidebar{width:228px;padding-inline:16px}.hero{height:258px}.brand{left:42px;bottom:43px}.brand-icon{width:138px;height:138px}.brand b,.brand strong{font-size:48px}main{padding:0 27px 32px}.vehicle-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.list-view{grid-template-columns:1fr}.vehicle-body h3{font-size:23px}.vehicle-image{aspect-ratio:1.95}}
@media(max-width:1200px){.workspace{margin-left:188px;padding-right:14px}.sidebar{width:188px;padding-inline:10px}.sidebar-brand b{font-size:17px}.sidebar nav a{font-size:15px;gap:11px}.sidebar .ui-icon{width:26px;height:26px}.sidebar nav{gap:8px}.hero{height:218px;border-top-left-radius:75px}.brand{left:23px;bottom:37px;gap:11px;max-width:calc(100% - 90px)}.brand-icon{width:105px;height:105px}.brand b,.brand strong{font-size:34px;letter-spacing:-1px}.brand small{font-size:12px}.hero-tools{top:18px;right:16px}.hero .icon-button{width:39px;height:39px}.test-badge{font-size:8px}.stat{padding:13px 10px;gap:8px;min-height:87px}.stat-icon{height:44px;width:44px}.stat-icon .ui-icon{width:31px;height:31px}.stat b{font-size:29px}.stat small{font-size:12px}.stats{gap:10px}.vehicle-grid{gap:15px}.vehicle-body{padding:0 13px 14px}.vehicle-body h3{font-size:18px}.vehicle-body>p{font-size:12px}.vehicle-card .plate{font-size:15px}.badge{font-size:12px}.badge .ui-icon{width:16px;height:16px}main{padding-inline:17px}.filters{grid-template-columns:1fr 1.5fr 1fr 42px;gap:9px}.filters input,.filters select{font-size:12px}.view-toggle{padding:8px}.filters .search input{padding-left:35px;background-size:18px;background-position:9px center}}
@media(min-width:701px) and (max-width:1000px){.sidebar{width:172px;padding-inline:9px}.workspace{margin-left:172px;padding-right:11px}.sidebar-brand{gap:5px;padding-inline:1px}.sidebar-brand img{width:31px;height:31px}.sidebar-brand b{font-size:16px}.sidebar-brand small{font-size:10px}.sidebar nav a{font-size:14px;padding:12px 8px;gap:8px}.sidebar .ui-icon{width:25px;height:25px}.hero{height:195px;border-top-left-radius:64px;margin-top:13px}.brand{left:17px;gap:9px;bottom:34px;max-width:calc(100% - 30px)}.brand-icon{width:87px;height:87px}.brand b,.brand strong{font-size:28px;letter-spacing:-.8px}.brand strong span{padding-inline:5px;margin-left:4px}.brand small{font-size:10px;margin-top:8px}.hero-tools{top:12px;right:13px}.hero .icon-button{width:32px;height:32px;border-radius:10px}.hero .ui-icon{width:20px;height:20px}.test-badge{font-size:7px;padding:4px 6px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding-top:13px;padding-bottom:14px;margin-bottom:0}.stat{gap:6px;padding:11px 7px;min-height:73px;border-radius:12px}.stat-icon{width:34px;height:38px;border-radius:8px}.stat-icon .ui-icon{width:26px;height:26px}.stat b{font-size:25px}.stat small{font-size:10px;margin-top:5px;line-height:1.15}.vehicle-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.list-view{grid-template-columns:1fr}.vehicle-image{aspect-ratio:1.6}.vehicle-body{padding:0 10px 13px}.vehicle-body h3{font-size:16px;letter-spacing:-.45px;margin-top:9px}.vehicle-body>p{font-size:11px;min-height:2.6em;margin-bottom:8px}.vehicle-card .plate{font-size:13px;min-height:25px;margin-top:-14px;border-radius:6px}.badge{font-size:10px;padding:5px 6px;gap:4px;border-radius:8px}.badge .ui-icon{width:14px;height:14px}.vehicle-body .task-preview{font-size:10px!important;min-height:0;margin-top:8px!important}.filters{grid-template-columns:1fr 1.3fr 37px;gap:8px}.filters .search{grid-row:1;grid-column:2/4}.filters label:first-child{grid-column:1;grid-row:1}.filters label:nth-child(3){grid-column:1/3;grid-row:2}.filters .view-toggle{grid-column:3;grid-row:2}.filters input,.filters select{height:42px}.view-toggle{height:42px;min-height:42px}.page-heading{margin-bottom:11px;gap:9px}.page-heading h1{font-size:21px}.page-heading p{font-size:11px}.page-heading .primary{font-size:11px;padding:8px 10px;min-height:36px}.filter-bottom{font-size:10px;margin:10px 0 13px}.model-photo>small{font-size:6px;bottom:6px;right:5px}main{padding-inline:12px}}
@media(max-width:700px){.workspace{margin-left:0;padding-right:0}.sidebar{width:224px;transform:translateX(-100%);padding-top:65px;transition:transform .2s}.menu-open .sidebar{transform:translateX(0)}#menu{display:grid;position:fixed;left:12px;top:12px;z-index:10}.hero{height:198px;margin:8px 7px 0;border-radius:52px 12px 0 0;background-position:right center}.brand{left:14px;bottom:32px;gap:9px;max-width:calc(100% - 25px)}.brand-icon{width:75px;height:75px}.brand b,.brand strong{font-size:29px;letter-spacing:-1px}.brand strong span{margin-left:4px;padding:0 5px 2px;border-radius:5px}.brand small{font-size:10px;margin-top:8px;white-space:nowrap}.hero-tools{top:13px;right:12px;gap:7px}.hero .icon-button{width:34px;height:34px;border-radius:10px}.hero .ui-icon{width:20px;height:20px}.test-badge{font-size:7px;padding:4px 6px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:14px 0;margin-bottom:0}.stat{padding:12px;gap:11px;min-height:76px;border-radius:13px}.stat-icon{width:43px;height:43px}.stat-icon .ui-icon{width:31px;height:31px}.stat b{font-size:29px}.stat small{font-size:12px;margin-top:5px}.page-heading{margin:8px 0 15px;gap:10px;flex-wrap:wrap}.page-heading h1{font-size:23px}.page-heading p{font-size:11px}.page-heading>.primary{font-size:12px}.filters{grid-template-columns:1fr 1fr 42px;gap:8px}.filters .search{grid-row:1;grid-column:1/-1}.filters label:first-child{grid-column:1;grid-row:2}.filters label:nth-child(3){grid-column:2;grid-row:2}.filters .view-toggle{grid-column:3;grid-row:2}.filters input,.filters select{height:43px;font-size:12px}.view-toggle{height:43px;min-height:43px}.filter-bottom{font-size:10px;margin:12px 0 14px}.vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.list-view{grid-template-columns:1fr}.vehicle-card{border-radius:13px}.vehicle-image{aspect-ratio:1.4}.vehicle-body{padding:0 10px 13px}.vehicle-card .plate{font-size:13px;min-height:25px;margin-top:-14px}.vehicle-body h3{font-size:16px;line-height:1.2;letter-spacing:-.4px;margin-top:9px;min-height:2.4em}.vehicle-body>p{font-size:11px;min-height:2.6em;margin-bottom:8px}.badge{font-size:10px;padding:6px 7px;gap:4px;border-radius:8px}.badge .ui-icon{width:14px;height:14px}.vehicle-body .task-preview{font-size:10px!important;min-height:0}.model-photo>small{font-size:6px;bottom:6px;right:5px}main{padding:0 12px 25px}.detail-top{margin-top:15px}.detail-summary .vehicle-image{aspect-ratio:1.9}.detail-summary h1{font-size:25px}.list-view .vehicle-image{width:110px;aspect-ratio:1.2}.list-view .vehicle-body{padding:12px}.list-view h3{min-height:0}.list-view .vehicle-body>p{min-height:0}.sidebar-brand{padding-bottom:22px}.sidebar nav a{font-size:16px}.sidebar .ui-icon{width:28px;height:28px}}
@media(max-width:380px){.brand-icon{width:62px;height:62px}.brand b,.brand strong{font-size:25px}.brand small{font-size:9px}.brand{gap:7px}.hero{height:185px}.stat{padding:11px 9px}.stat-icon{width:38px;height:40px}.stat small{font-size:11px}.vehicle-body h3{font-size:15px}}
/* Portrait tablet follows the reference: full-width workshop banner above navigation. */
@media(min-width:701px) and (max-width:1000px){
.workspace{margin-left:0;padding-right:0}.workspace>main,.workspace>footer{margin-left:148px}.hero{height:240px;margin:9px 9px 0;border-radius:24px 24px 0 0}.brand{left:50%;transform:translateX(-50%);bottom:43px;max-width:none;gap:14px}.brand-icon{width:105px;height:105px}.brand b,.brand strong{font-size:39px}.brand small{font-size:11px;white-space:nowrap;letter-spacing:.5px}.sidebar{top:249px;width:148px;padding:17px 8px 10px}.sidebar-brand{display:none}.sidebar nav{gap:6px}.sidebar nav a{font-size:13px;padding:11px 8px;gap:8px}.sidebar .ui-icon{width:23px;height:23px}.sidebar-footer{font-size:11px;padding-inline:0}.sidebar-footer .avatar{width:28px;height:28px}.sidebar-footer small{font-size:9px}.stats{gap:9px;padding:16px 0}.stat{display:block;padding:12px;min-height:117px}.stat-icon{width:39px;height:39px;margin-bottom:7px}.stat b{font-size:27px}.stat small{font-size:11px;margin-top:3px}.page-heading{margin-bottom:10px}.page-heading p{display:none}.page-heading h1{font-size:19px}.filters{grid-template-columns:1fr 1.25fr .85fr 37px;gap:6px}.filters label:first-child,.filters .search,.filters label:nth-child(3),.filters .view-toggle{grid-row:auto;grid-column:auto}.filters input,.filters select{font-size:10px;padding-inline:8px;min-height:38px;height:38px}.filters .search input{padding-left:29px;background-position:7px center;background-size:16px}.view-toggle{height:38px;min-height:38px}.vehicle-image{aspect-ratio:1.75}.vehicle-body>p{min-height:1.3em;margin-bottom:8px}.vehicle-body .task-preview{display:none}.vehicle-body h3{font-size:16px}.vehicle-body{padding-bottom:12px}.vehicle-body .badge{margin-top:0}.vehicle-card{align-self:start}.vehicle-grid{align-items:start}
}
.auth-panel{max-width:520px;margin:32px auto;padding:27px}.auth-panel form{display:grid;gap:15px}.auth-panel label{display:grid;gap:5px;font-size:13px;font-weight:650}.auth-panel .primary{width:100%}.auth-panel h1{font-size:25px}.auth-panel .form-hint{font-weight:400;font-size:12px;color:var(--muted)}button:disabled{opacity:.6;cursor:wait}.saving #content,.saving #edit-form{pointer-events:none;opacity:.8}.customer-card .record-icon .ui-icon{width:35px;height:35px}.customer-card .row-actions{justify-content:center}

#document-upload{display:grid;gap:12px;padding-bottom:20px;margin-bottom:12px;border-bottom:1px solid var(--border)}#document-upload label{display:grid;gap:5px;font-size:13px}#document-upload label.checkbox{display:flex}#document-upload .primary{justify-self:start}.document-thumb{width:120px;height:80px;object-fit:cover;border-radius:8px;margin-bottom:8px;border:1px solid var(--border)}

/* Dark design: midnight workshop surfaces and luminous instrument colours. */
:root[data-theme=dark]{color-scheme:dark;--bg:#020609;--panel:#0b151e;--text:#f4f8fc;--muted:#b9c8d6;--border:#354958;--blue:#2cbbff;--input:#13232f;--nav:#060d13;--active:#076ac4;--shadow:0 5px 14px #0008;--neon-blue:#21b9ff;--neon-amber:#ffda32;--neon-green:#53ff8c}
[data-theme=dark] body{background:radial-gradient(ellipse at 70% 0,#09141e 0,#020508 65%);color:var(--text)}
[data-theme=dark] .workspace{background:radial-gradient(ellipse at 70% 0,#0a172200,#02050899 65%),linear-gradient(120deg,#08111a,#03080d 60%,#020608);min-height:100vh}
[data-theme=dark] .sidebar{background:linear-gradient(110deg,#0b1822,#060d13 85%);border-color:#254153;box-shadow:inset -1px 0 0 #80cfff15,6px 0 22px #0005}
[data-theme=dark] .sidebar-brand b{color:#f4faff;text-shadow:0 1px 3px #000}
[data-theme=dark] .sidebar-brand small,[data-theme=dark] .sidebar-footer small{color:#a6bfce}
[data-theme=dark] .sidebar-brand img{filter:drop-shadow(0 0 5px #0aaeff99)}
[data-theme=dark] .sidebar nav a{color:#e8f4ff;background:transparent;border:1px solid transparent;box-shadow:none;text-shadow:0 1px 2px #000;transition:background .15s,box-shadow .15s,border-color .15s}
[data-theme=dark] .sidebar nav a .ui-icon{color:#b9eaff;filter:drop-shadow(0 0 3px #1ab6ff99);stroke-width:1.9}
[data-theme=dark] .sidebar nav a[href="#orders"] .ui-icon{color:#ffe263;filter:drop-shadow(0 0 4px #f6bf1777)}
[data-theme=dark] .sidebar nav a[href="#appointments"] .ui-icon{color:#45bdff;filter:drop-shadow(0 0 4px #169fffaa)}
[data-theme=dark] .sidebar nav a:hover{background:linear-gradient(#143a55,#102a3f);border-color:#2b749b;box-shadow:inset 0 1px 0 #75ceff22,0 0 10px #009fff15}
[data-theme=dark] .sidebar nav a.active{background:linear-gradient(105deg,#0874cb,#0765b9 65%,#075ba8);border-color:#26baff;color:#fff;box-shadow:inset 0 1px 1px #8de4ff88,inset 0 -2px 3px #003d8188,0 2px 7px #0008,0 0 17px #008cff42}
[data-theme=dark] .sidebar nav a.active .ui-icon{color:#fff;filter:drop-shadow(0 0 4px #5edfff);stroke-width:2.3}
[data-theme=dark] .sidebar-footer{border-color:#263d4f}
[data-theme=dark] .sidebar-footer .avatar{color:#d9f7ff;background:radial-gradient(circle at 35% 25%,#168bcc,#073e67);border-color:#248fc6;box-shadow:inset 0 1px 2px #80e4ff55,0 0 12px #009fff2b}
[data-theme=dark] .hero{background-image:linear-gradient(90deg,#06131edb,#07131b88 48%,#06111b26),url('./workshop.svg');border-color:#33566d;box-shadow:inset 0 1px 2px #9ccce94d,0 4px 18px #0009}
[data-theme=dark] .hero::after{background:linear-gradient(#325063,#0c1d2b);box-shadow:0 -2px 12px #2ebaff29}
[data-theme=dark] .brand-icon{filter:drop-shadow(0 0 8px #009fff99)}
[data-theme=dark] .brand-icon img{filter:drop-shadow(0 0 3px #13aaff) drop-shadow(0 0 9px #007fff88)}
[data-theme=dark] .brand strong span{background:linear-gradient(#087ed0,#0262bc);border-color:#40c5ff;box-shadow:inset 0 1px 1px #a9f1ff99,0 2px 5px #0009,0 0 13px #008dff55}
[data-theme=dark] .hero .icon-button{background:linear-gradient(#16394e,#0b2030);border-color:#47738c;box-shadow:inset 0 1px 1px #89d3ff33,0 2px 5px #0007;color:#a7e5ff}
[data-theme=dark] .hero .icon-button .ui-icon{filter:drop-shadow(0 0 4px #32baff88)}
[data-theme=dark] .test-badge{background:#071522b8;border-color:#305369;color:#bad7e8}
[data-theme=dark] .stat{background:linear-gradient(125deg,#1b2c38,#12212b 60%,#0e1a24);border-color:#3a566a;box-shadow:inset 0 1px 1px #bfdfff29,inset 0 -1px 2px #06101d99,0 4px 9px #0008}
[data-theme=dark] .stat b{color:#fff;text-shadow:0 1px 3px #000}
[data-theme=dark] .stat small{color:#e6eff7}
[data-theme=dark] .stat-icon{border:1px solid transparent;box-shadow:inset 0 1px 2px #ffffff12;filter:none}
[data-theme=dark] .stat-icon.blue{color:var(--neon-blue);background:radial-gradient(circle,#063e65,#082c49 75%);border-color:#12669766;box-shadow:inset 0 0 15px #00a7ff1a,0 0 15px #00aaff15}
[data-theme=dark] .stat-icon.amber{color:var(--neon-amber);background:radial-gradient(circle,#514315,#302b16 75%);border-color:#91781455;box-shadow:inset 0 0 15px #ffc90018,0 0 15px #ffd40012}
[data-theme=dark] .stat-icon.green{color:var(--neon-green);background:radial-gradient(circle,#124e35,#0c3427 75%);border-color:#2d8c5a66;box-shadow:inset 0 0 15px #32ff7b18,0 0 15px #2eff7b18}
[data-theme=dark] .stat-icon .ui-icon{stroke-width:1.8;filter:drop-shadow(0 0 1px currentColor) drop-shadow(0 0 5px currentColor)}
[data-theme=dark] .primary{color:#fff;background:linear-gradient(#0874cc,#0759aa);border-color:#29b9ff;box-shadow:inset 0 1px 1px #a5e9ff66,inset 0 -1px 2px #01417d88,0 3px 6px #0006,0 0 13px #008aff30;text-shadow:0 1px 2px #034976}
[data-theme=dark] .primary:hover{background:linear-gradient(#0a79cf,#0764b5);box-shadow:0 0 18px #13a7ff66}
[data-theme=dark] .secondary,[data-theme=dark] .icon-button{background:linear-gradient(#243b4d,#142a3b);color:#e6f4ff;border-color:#3a5d75;box-shadow:inset 0 1px 1px #91caff22,0 2px 4px #0005}
[data-theme=dark] .secondary:hover,[data-theme=dark] .icon-button:hover{border-color:#2cbcff;background:linear-gradient(#245271,#113752)}
[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea,[data-theme=dark] .filters input,[data-theme=dark] .filters select{background-color:#13232f;color:#f3f8fc;border-color:#3e596d;box-shadow:inset 0 2px 4px #0006,0 1px 1px #b9dfff12}
[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder,[data-theme=dark] .filters input::placeholder{color:#b1c5d5;opacity:1}
[data-theme=dark] .filters .search input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%23c9e8ff' stroke-width='2'%3E%3Ccircle cx='10' cy='10' r='7'/%3E%3Cpath d='m15 15 6 6'/%3E%3C/svg%3E")}
[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{border-color:#22b8ff;box-shadow:0 0 0 2px #00aaff26,inset 0 2px 4px #0005}
[data-theme=dark] .checkbox input{accent-color:#0baaff;background:#153246}
[data-theme=dark] .view-toggle{background:linear-gradient(#087dd6,#0759a5);border-color:#279ee8;color:#fff;box-shadow:inset 0 1px 1px #83dfff66,0 0 10px #008cff33}
[data-theme=dark] .view-toggle .ui-icon{filter:drop-shadow(0 0 3px #58d6ff99)}
[data-theme=dark] .vehicle-card{background:#0a141c;border-color:#3b566b;box-shadow:inset 0 1px 1px #b6d8ef29,0 4px 10px #0008}
[data-theme=dark] .vehicle-card:hover{border-color:#169fe1;box-shadow:0 0 0 1px #11aaff33,0 6px 19px #0009,0 0 20px #008fff20}
[data-theme=dark] .vehicle-body{background:linear-gradient(125deg,#172935,#0e1a24 70%);color:#f4f9ff}
[data-theme=dark] .vehicle-body h3{color:#fff;text-shadow:0 1px 2px #0008}
[data-theme=dark] .vehicle-body>p{color:#d7e5f0}
[data-theme=dark] .vehicle-body .task-preview{color:#a9c0d3;border-color:#385267}
[data-theme=dark] .vehicle-image{border-color:#3b5567;background-color:#0c1923}
[data-theme=dark] .placeholder{background:linear-gradient(170deg,#193447,#102331 60%,#10212b 61%,#09141d)}
[data-theme=dark] .placeholder small{color:#a3c5d8;opacity:1}
[data-theme=dark] .plate{color:#182c3b;background:linear-gradient(#fff,#dceaf4);border-color:#84adc6;box-shadow:0 1px 4px #0008}
[data-theme=dark] .plate.missing{color:#bfd8e9;background:#102637;border-color:#375e78}
[data-theme=dark] .badge{box-shadow:inset 0 1px 1px #ffffff18,0 2px 3px #0004;text-shadow:0 1px 1px #0006}
[data-theme=dark] .badge .ui-icon{filter:drop-shadow(0 0 3px currentColor);stroke-width:2.2}
[data-theme=dark] .badge.status-0{color:#ffea68;background:linear-gradient(#645316,#44350b);border-color:#a98a1e}
[data-theme=dark] .badge.status-1{color:#a2ffc3;background:linear-gradient(#176642,#10482f);border-color:#31a866}
[data-theme=dark] .badge.status-2{color:#dbe8f1;background:linear-gradient(#334650,#22333e);border-color:#597582}
[data-theme=dark] .badge.status-3{color:#b8ffcf;background:linear-gradient(#195b3a,#0e4029);border-color:#388c58}
[data-theme=dark] .badge.status-4,[data-theme=dark] .badge.status--1{color:#c2d9ea;background:linear-gradient(#273e50,#192c3c);border-color:#486276}
[data-theme=dark] .panel,[data-theme=dark] .detail-top,[data-theme=dark] .empty{color:#f2f7fc;background:linear-gradient(130deg,#11212e,#09131c 75%);border-color:#3e5d73;box-shadow:inset 0 1px 1px #badfff24,0 4px 11px #0007}
[data-theme=dark] .detail-summary .vehicle-image,[data-theme=dark] .document-thumb{border-color:#416781}
[data-theme=dark] .tabs{background:linear-gradient(#142637,#0b1924);border-color:#34566d;box-shadow:inset 0 1px 1px #9ad6ff22,0 3px 7px #0006}
[data-theme=dark] .tabs button{color:#c9ddeb}
[data-theme=dark] .tabs button:hover{background:#14425e;color:#fff}
[data-theme=dark] .tabs button.selected{color:#fff;background:linear-gradient(#0776ce,#0756a8);box-shadow:inset 0 1px 1px #8fe3ff77,0 0 11px #009fff44}
[data-theme=dark] .record-icon{color:#39bdff;filter:drop-shadow(0 0 4px #06a9ff88)}
[data-theme=dark] .incomplete{color:#ffdb70!important}
[data-theme=dark] .error{color:#ffb5b1}
[data-theme=dark] dialog{background:linear-gradient(125deg,#132a3b,#0b1925);color:#f1f8ff;border:1px solid #3d789d;box-shadow:0 15px 70px #000c,0 0 30px #008fff22}
[data-theme=dark] dialog::backdrop{background:#000a;backdrop-filter:blur(4px)}
[data-theme=dark] .toast{background:#0c3651;color:#ecfaff;border:1px solid #2799d2;box-shadow:0 3px 16px #0009,0 0 12px #00a7ff33}
[data-theme=dark] footer{color:#9db6c9;border-color:#2b465b}
@media(prefers-reduced-motion:reduce){.sidebar nav a,.vehicle-card{transition:none}}

.empty>span .ui-icon{width:50px;height:50px}[data-theme=dark] .empty>span{color:#32baff;filter:drop-shadow(0 0 6px #0a9fff88)}
.empty>span{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;margin-bottom:10px}

/* Muted daylight palette: warm grey and greige, without bright white surfaces. */
:root:not([data-theme=dark]){color-scheme:light;--bg:#cfcec8;--panel:#dfded7;--text:#29363e;--muted:#57656c;--border:#abadA7;--blue:#176b9e;--input:#d2d4cf;--nav:#d2d2cc;--active:#bbced7;--shadow:0 3px 8px #34423b20}
[data-theme=light] body{background:linear-gradient(120deg,#d1d0ca,#c9cac5);color:var(--text)}
[data-theme=light] .workspace{background:linear-gradient(135deg,#d9d7d0,#cfcec7 65%,#c9c8c2)}
[data-theme=light] .sidebar{background:linear-gradient(105deg,#d6d4cd,#cbc9c2);border-color:#a5afa9;box-shadow:inset -2px 0 5px #75847924,4px 0 12px #5b665d16}
[data-theme=light] .sidebar nav a{color:#34434a;text-shadow:none}
[data-theme=light] .sidebar nav a:hover{background:#c1cdc9}
[data-theme=light] .sidebar nav a.active{color:#14567d;background:linear-gradient(#c1d4dc,#aac7d4);border-color:#8eaebb;box-shadow:inset 0 1px 1px #e1e5db66,0 2px 4px #566d7426}
[data-theme=light] .sidebar .ui-icon{filter:none;color:#3b545e}
[data-theme=light] .sidebar nav a.active .ui-icon{color:#176a97}
[data-theme=light] .sidebar-brand small,[data-theme=light] .sidebar-footer small{color:#56676a}
[data-theme=light] .sidebar-footer{border-color:#a8b1aa}
[data-theme=light] .sidebar-footer .avatar{background:linear-gradient(#c4d3d3,#a7bfc4);border-color:#8ba5aa;box-shadow:inset 0 1px 1px #dfe6da99;color:#345e70}
[data-theme=light] .hero{border-color:#a3b0b1;box-shadow:inset 0 1px 1px #d7ddd566,0 4px 10px #56615c33}
[data-theme=light] .hero::after{background:linear-gradient(#c3c7c0,#aebbb5);box-shadow:0 -2px 9px #c9d7d344}
[data-theme=light] .stat{background:linear-gradient(125deg,#e1dfd6,#d6d3ca 75%);border-color:#a9b3ad;box-shadow:inset 0 1px 1px #eeeee766,0 3px 6px #4f63502b}
[data-theme=light] .stat b{color:#29373d;text-shadow:none}
[data-theme=light] .stat small{color:#3e4e53}
[data-theme=light] .stat-icon{box-shadow:inset 0 1px 1px #e6e8df55;filter:none}
[data-theme=light] .stat-icon .ui-icon{filter:none}
[data-theme=light] .stat-icon.blue{background:linear-gradient(#c3d8de,#b3cbd6);border-color:#93b3bf;color:#1d719b}
[data-theme=light] .stat-icon.amber{background:linear-gradient(#ded2aa,#d1c59a);border-color:#baab78;color:#8c6b20}
[data-theme=light] .stat-icon.green{background:linear-gradient(#c7d6c1,#b3c9b2);border-color:#94af92;color:#3a7954}
[data-theme=light] .filters input,[data-theme=light] .filters select,[data-theme=light] input,[data-theme=light] select,[data-theme=light] textarea{background-color:#d0d0c8;color:#2c3e44;border-color:#a4b2a9;box-shadow:inset 0 2px 3px #6475691c,0 1px 1px #e6e8df77}
[data-theme=light] input::placeholder,[data-theme=light] textarea::placeholder{color:#5e6c6d;opacity:1}
[data-theme=light] .primary{color:#fff;background:linear-gradient(#287ca3,#1d648a);border-color:#175879;box-shadow:inset 0 1px 1px #a9cad544,0 2px 4px #4b656433;text-shadow:0 1px 1px #234d5e}
[data-theme=light] .primary:hover{background:linear-gradient(#267393,#165a7e)}
[data-theme=light] .secondary,[data-theme=light] .view-toggle,[data-theme=light] .icon-button{background:linear-gradient(#dadbd2,#cbc9c0);color:#304c59;border-color:#a5b2aa;box-shadow:inset 0 1px 1px #e7e9df77,0 2px 3px #50645022}
[data-theme=light] .vehicle-card{background:#d8dad2;border-color:#a6b3a9;box-shadow:inset 0 1px 1px #eaeae166,0 3px 7px #52655333}
[data-theme=light] .vehicle-body{background:linear-gradient(125deg,#e0ddd3,#d1cfc5);color:#293a40}
[data-theme=light] .vehicle-body h3{color:#28383e}
[data-theme=light] .vehicle-body>p{color:#4d6061}
[data-theme=light] .vehicle-body .task-preview{color:#576a67;border-color:#aebbb0}
[data-theme=light] .vehicle-image{border-color:#aab9b0}
[data-theme=light] .plate,[data-theme=light] .vehicle-card .plate{background:linear-gradient(#e4e3d9,#ccd5cd);border-color:#94a9a0;box-shadow:0 1px 3px #53635833;color:#283e47}
[data-theme=light] .plate.missing{background:#ccd5cc;color:#4e6668}
[data-theme=light] .badge{box-shadow:inset 0 1px 1px #e8e9df55;border-color:#b0b8a6}
[data-theme=light] .status-0{background:linear-gradient(#dfd19e,#cebb7f);color:#624a12;border-color:#b3a16b}
[data-theme=light] .status-1,[data-theme=light] .status-3{background:linear-gradient(#c0d8bb,#a7c8a4);color:#255a37;border-color:#8ead8a}
[data-theme=light] .status-2,[data-theme=light] .status-4{background:linear-gradient(#d4d7cc,#c0cac0);color:#425a5b;border-color:#9daeA6}
[data-theme=light] .panel,[data-theme=light] .detail-top,[data-theme=light] .empty{background:linear-gradient(130deg,#dfdcd1,#d3d0c5 80%);border-color:#a8b5a9;box-shadow:inset 0 1px 1px #e9e9df66,0 3px 7px #566b5726}
[data-theme=light] .tabs{background:linear-gradient(#d6d8ce,#c9c7bd);border-color:#a1b2a6;box-shadow:inset 0 1px 1px #e0e5d966,0 2px 4px #52665322}
[data-theme=light] .tabs button.selected{color:#fff;background:linear-gradient(#a87934,#8a6027);box-shadow:inset 0 1px 1px #dfc89f66,0 2px 3px #6d573033}
[data-theme=light] dialog{background:linear-gradient(125deg,#dedad0,#d0ccc1);color:#2d3f44;border-color:#99aca0;box-shadow:0 12px 50px #293d3a66}
[data-theme=light] dialog::backdrop{background:#25373577;backdrop-filter:blur(3px)}
[data-theme=light] .toast{background:#d4ddd0;color:#2a4f47;border:1px solid #8ea89b;box-shadow:0 3px 10px #344f4133}
[data-theme=light] footer{color:#526860;border-color:#a7b6a9}

/* Version sits with the account information at the bottom of the navigation. */
.sidebar-footer .app-version{display:block;margin-top:7px;font-size:11px;letter-spacing:.04em;opacity:.78}

.vehicle-photo-field{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--input)}.vehicle-photo-field h3{margin-bottom:12px}.vehicle-photo-field img{display:block;width:100%;max-height:200px;object-fit:contain;border-radius:9px;margin-bottom:12px;background:var(--panel)}.vehicle-photo-field img[hidden]{display:none}.vehicle-photo-field input{max-width:100%;font-size:13px}.vehicle-photo-field .form-hint{margin:10px 0 0}

/* Account actions are available on every signed-in page. */
.user-account{position:fixed;right:20px;bottom:18px;bottom:max(18px,env(safe-area-inset-bottom,0px));z-index:100}
.user-account-toggle{display:flex;gap:10px;align-items:center;min-height:48px;padding:11px 16px;border:1px solid var(--border);border-radius:14px;background:var(--panel);color:var(--text);box-shadow:0 5px 24px #0004;font-weight:700}
.user-account-toggle svg{width:21px;height:21px}
.account-popover{position:absolute;right:0;bottom:60px;width:285px;max-width:calc(100vw - 28px);background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:0 12px 40px #0006}
.account-popover[hidden]{display:none}
.account-popover>strong,.account-popover>small{display:block}.account-popover>small{color:var(--muted);overflow-wrap:anywhere;margin:4px 0 14px}
.account-popover>button{display:block;width:100%;padding:12px;border:0;border-radius:9px;background:transparent;text-align:left;color:var(--text)}
.account-popover>button:hover,.account-popover>button:focus-visible{background:var(--active)}
.account-popover #account-logout{border-top:1px solid var(--border);border-radius:0 0 9px 9px;margin-top:5px;padding-top:16px}
.account-panel{max-width:760px}.account-panel form>label{display:block;margin:15px 0}.account-panel input,.account-panel textarea{width:100%}
.account-panel input[readonly]{opacity:.75}.account-success{padding:12px 16px;border-radius:10px;border:1px solid #2c8c61;background:#2c8c611c}
.workspace{padding-bottom:78px}.toast{bottom:88px}
@media(max-width:700px){.user-account{right:12px;bottom:12px;bottom:max(12px,env(safe-area-inset-bottom,0px))}.user-account-toggle{min-height:46px;padding:10px 14px}.account-popover{bottom:58px}}


.user-account-toggle{background:#126eac;color:#fff;border:2px solid #8ecaf1;box-shadow:0 4px 20px #0006}
.vehicle-card{display:flex;flex-direction:column}.vehicle-body{display:flex;flex-direction:column;flex:1;height:auto}.list-view .vehicle-card{display:grid}.vehicle-body>.badge{align-self:flex-start}.vehicle-tuv{margin-top:auto;padding-top:16px;display:flex;justify-content:flex-end}
.tuv-badge{display:inline-block;padding:8px 11px;border-radius:9px;border:1px solid #8197a8;background:#e6eef4;color:#203c51;font-size:13px;font-weight:750;line-height:1.4;text-align:right}
.tuv-due{background:#fff0b8;color:#634000;border-color:#c18a17}.tuv-overdue{background:#ffe0dc;color:#8c2417;border-color:#ce6655}.tuv-missing{background:#e5e8eb;color:#42505b}
.vehicle-tuv-data{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:15px;margin:16px 0;border:2px solid var(--border);border-radius:12px;grid-column:1/-1}.vehicle-tuv-data+.vehicle-data{margin-top:0}
.tuv-notice{padding:16px 20px;margin:0 0 22px;border:2px solid #bd7e10;border-radius:12px;background:#fff0b8;color:#634000}.tuv-notice p{margin:8px 0 0;line-height:1.8}.tuv-notice a{color:#634000;text-decoration:underline;font-weight:650}
.list-view .vehicle-tuv{grid-column:1/-1;margin-top:0;padding-top:8px}

/* Keep iPhone controls inside their grid tracks instead of their intrinsic input width. */
@media(max-width:700px){
 .workspace,main,.page-heading,.filters,.filters>label,.stats,.stat,.stat>span:last-child,.vehicle-body{min-width:0}
 .workspace{width:100%;max-width:100%}
 .filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 42px}
 .filters input,.filters select{min-width:0;max-width:100%;font-size:16px}
 .search input{padding-left:36px;font-size:14px}
 .stats{gap:8px;padding:12px 0;margin-bottom:4px}
 .stat{min-height:58px;padding:8px 10px;gap:8px;border-radius:11px}
 .stat-icon{width:32px;height:32px;border-radius:8px}
 .stat-icon .ui-icon{width:23px;height:23px}
 .stat b{font-size:23px;line-height:1}
 .stat small{font-size:11px;line-height:1.2;margin-top:3px;overflow-wrap:anywhere}
 .hero{height:174px}
 .brand{left:12px;right:12px;max-width:none;gap:8px;bottom:29px}
 .brand-icon{width:clamp(48px,15vw,65px);height:clamp(48px,15vw,65px)}
 .brand-lettering{flex:1;min-width:0}
 .brand b,.brand strong{font-size:clamp(21px,6.1vw,29px);letter-spacing:-.8px}
 .brand small{font-size:clamp(8px,2.15vw,10px);white-space:normal;line-height:1.35;margin-top:6px}
 .brand strong span{padding:0 3px 2px;margin-left:2px}
 .page-heading>div,.vehicle-data>div,.detail-summary>div{min-width:0;overflow-wrap:anywhere}
 .filter-bottom{gap:8px;flex-wrap:wrap}.filter-bottom .checkbox{min-width:0}
 .tuv-badge{max-width:100%;font-size:11px;padding:6px 7px;overflow-wrap:anywhere}
 .tuv-notice{padding:10px 12px;margin-bottom:14px;font-size:12px;border-radius:10px}
 .tuv-notice p{margin:4px 0 0;line-height:1.5;overflow-wrap:anywhere}
}

/* iOS must not zoom the page when focusing a small form control. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.account-version{display:block;text-align:right;font-size:11px;line-height:1.3;margin:5px 5px 0;padding:3px 7px;border-radius:6px;background:var(--panel);color:var(--text)}
.vehicle-tuv{align-self:stretch;width:100%}
@media(max-width:700px){
 html,body{width:100%;max-width:100%;overflow-x:clip}
 html body input,html body select,html body textarea{font-size:16px!important}
 main,.vehicle-grid,.vehicle-card,.vehicle-image,.vehicle-body{max-width:100%;min-width:0}
 .vehicle-body{overflow-wrap:anywhere}
 .vehicle-body h3,.vehicle-body>p,.vehicle-body .badge,.vehicle-card .plate{max-width:100%;min-width:0}
 .badge>span{min-width:0;overflow-wrap:anywhere}
 .vehicle-card .plate{align-self:flex-start;flex-shrink:0}
 .vehicle-grid:not(.list-view){grid-template-columns:repeat(2,minmax(0,1fr))}
 .list-view .vehicle-card{display:flex;flex-direction:row}
 .user-account-toggle{min-height:42px;padding:8px 12px;font-size:14px}
 .account-popover{bottom:78px}
 .stats .stat{min-width:0;min-height:54px;padding:7px 8px;gap:7px}
 .stats .stat-icon{width:28px;height:28px}.stats .stat-icon .ui-icon{width:21px;height:21px}
 .stats .stat b{font-size:21px}.stats .stat small{font-size:10px;margin-top:2px}
}

.invitation-preview{display:block;width:100%;height:660px;border:1px solid var(--border);border-radius:12px;background:white;margin:18px 0}#invite-send{margin-top:20px}#invite-send[hidden]{display:none}#invite-send>label{display:block;margin-bottom:16px}#invite-send>.checkbox{display:flex;align-items:flex-start}#invite-send .checkbox input{flex-shrink:0;margin-top:3px}


/* The image carries the HU badge; account actions belong to the navigation. */
.vehicle-visual{position:relative;flex-shrink:0;min-width:0;width:100%}
.vehicle-visual .vehicle-image{width:100%}
.vehicle-visual .vehicle-tuv{position:absolute;right:9px;bottom:12px;width:auto;max-width:calc(100% - 18px);padding:0;margin:0;z-index:2;pointer-events:none}
.vehicle-visual .tuv-badge{font-size:11px;padding:6px 8px;line-height:1.3;box-shadow:0 2px 7px #0006;max-width:100%;overflow-wrap:anywhere}
.vehicle-visual .vehicle-image>small{top:7px;bottom:auto;right:7px}
.list-view .vehicle-visual{width:190px;flex:0 0 190px}.list-view .vehicle-visual .vehicle-image{width:100%;height:100%}
.sidebar{max-height:100dvh;min-height:0}.sidebar-brand{flex-shrink:0}.sidebar nav{min-height:0;overflow-y:auto;flex-shrink:1}.sidebar-footer{display:block;flex-shrink:0;padding-top:14px}.sidebar-identity{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.sidebar .user-account{position:relative;inset:auto;z-index:6;width:100%}
.sidebar .user-account-toggle{width:100%;justify-content:center;min-height:42px;padding:9px 10px;font-size:14px;border-radius:10px}
.sidebar .account-version{background:transparent;text-align:center;margin:5px 0 0;padding:0;font-size:11px;color:var(--muted)}
.sidebar .account-popover{left:0;right:auto;bottom:calc(100% + 8px);width:100%;max-width:none;padding:12px;border-radius:12px;max-height:calc(100dvh - 100px);overflow-y:auto}
.sidebar .account-popover>small{overflow-wrap:anywhere}.sidebar .account-popover>button{padding:10px 6px;font-size:13px}
.scroll-top{position:fixed;right:20px;bottom:18px;bottom:max(18px,env(safe-area-inset-bottom,0px));z-index:20;display:grid;place-items:center;width:46px;height:46px;padding:0;border:2px solid #8ecaf1;border-radius:12px;background:linear-gradient(#2586bc,#126399);color:#fff;box-shadow:inset 0 1px 1px #ffffff40,0 4px 15px #0005}
.scroll-top svg{width:24px;height:24px}.scroll-top:hover{background:#126eac}
[data-theme=light] .scroll-top{background:linear-gradient(#287ca3,#1d648a);border-color:#83b4c6}
@media(max-width:700px){
 .sidebar{padding-bottom:max(12px,env(safe-area-inset-bottom,0px))}.sidebar nav{gap:5px}.sidebar nav a{padding:9px 10px}.sidebar-brand{padding-bottom:16px}.sidebar-identity{margin-bottom:8px}
 .list-view .vehicle-visual{width:110px;flex-basis:110px}.vehicle-visual .tuv-badge{font-size:10px;padding:5px 6px}
 .scroll-top{right:12px;bottom:12px;bottom:max(12px,env(safe-area-inset-bottom,0px));width:42px;height:42px}
}
@media(min-width:701px) and (max-width:1000px){.sidebar{max-height:calc(100dvh - 249px)}.sidebar-identity{font-size:11px}.sidebar .user-account-toggle{font-size:12px;gap:6px;padding-inline:5px}.sidebar .account-popover{font-size:11px}}


/* Account action follows the navigation; legal notice and version stay at its foot. */
.sidebar-footer{margin-top:12px;padding-top:10px}.sidebar-identity{margin-bottom:10px}
#sidebar-account{display:flex;flex:1;min-height:0;flex-direction:column}
.sidebar .user-account{display:flex;flex:1;min-height:0;flex-direction:column;padding-bottom:3px}
.sidebar .user-account-toggle{flex-shrink:0;margin-bottom:12px}
.sidebar .account-copyright{display:block;margin-top:auto;text-align:center;padding-top:10px;font-size:10px;line-height:1.45;color:var(--muted)}
.sidebar .account-copyright a:hover{text-decoration:underline}.sidebar .account-version{margin-top:7px;flex-shrink:0}
.sidebar .account-popover{bottom:auto;top:50px;max-height:calc(100dvh - 160px)}
.filters label>span{font-size:14px;font-weight:700;margin-bottom:7px}.filters input,.filters select{font-size:16px}
.brand-lettering>b{display:table;width:max-content;white-space:nowrap;line-height:1.05}
.brand-lettering>strong{width:max-content}
@media(max-width:700px){.filters label>span{font-size:13px}.sidebar .account-popover{top:auto;bottom:calc(100% + 7px)}.sidebar .account-copyright{font-size:10px}}

.vehicle-card{--plate-size:17px}.vehicle-card .plate{font-size:var(--plate-size)}
.vehicle-card .vehicle-tuv .tuv-plate{position:relative;margin:0;padding:0 7px 0 0;min-height:29px;font-size:var(--plate-size);line-height:1.35;text-align:left;border-radius:7px;max-width:100%;white-space:nowrap}
.vehicle-tuv .tuv-plate i{font-size:7px;font-weight:750;line-height:1.05;align-items:center;justify-content:center;text-align:center;padding:4px;min-width:21px}.vehicle-tuv .tuv-plate i::before{content:none}
.vehicle-tuv .tuv-plate>span{padding:2px 0;min-width:0}
.vehicle-card .vehicle-tuv .tuv-due{border-color:#ba8b2e;color:#6c4700;background:#fff0b8}.vehicle-card .vehicle-tuv .tuv-overdue{border-color:#cb6757;color:#8c2417;background:#ffe0dc}
@media(max-width:1200px){.vehicle-card{--plate-size:15px}}
@media(max-width:1000px){.vehicle-card{--plate-size:13px}.vehicle-card .vehicle-tuv .tuv-plate{min-height:25px;border-radius:6px}}
@media(max-width:380px){.vehicle-card{--plate-size:12px}}

.sidebar-footer{margin-top:auto}.sidebar #sidebar-account{flex:0;display:block;min-height:auto;margin-bottom:7px}.sidebar #sidebar-account .user-account{display:block;flex:none;min-height:auto;padding:0}.sidebar #sidebar-account .user-account-toggle{margin-bottom:0}.sidebar #sidebar-account .account-popover{top:calc(100% + 8px);bottom:auto;max-height:calc(100dvh - 210px)}.sidebar-footer .account-copyright{display:block;padding-top:5px;text-align:center;font-size:10px;line-height:1.45}

/* Both plates share one baseline across the lower edge of the picture. */
.vehicle-visual .vehicle-plates{position:absolute;left:18px;right:9px;bottom:-12px;display:flex;align-items:center;justify-content:space-between;gap:6px;z-index:3}
.vehicle-card .vehicle-plates>.plate,.vehicle-card .vehicle-plates .tuv-plate{position:relative;margin:0;height:29px;min-height:29px;flex-shrink:0}
.vehicle-visual .vehicle-plates .vehicle-tuv{position:static;width:auto;max-width:none;margin:0;padding:0;align-self:auto;flex-shrink:0}
.vehicle-card .vehicle-body{padding-top:12px}
@media(max-width:1200px){.vehicle-visual .vehicle-plates{left:13px}}
@media(max-width:700px){
 .vehicle-visual .vehicle-plates{left:6px;right:6px;bottom:-11px;gap:3px}
 .vehicle-card .vehicle-plates .plate{font-size:10px;height:25px;min-height:25px;padding-right:5px;letter-spacing:0}
 .vehicle-plates .plate i{min-width:14px;margin-right:4px;padding:2px 3px;font-size:7px}
 .vehicle-plates .tuv-plate i{font-size:6px;min-width:16px;line-height:1.05}
 .vehicle-card .vehicle-body{padding-top:11px}
}
@media(max-width:400px){.vehicle-card .vehicle-plates .plate{font-size:10px}}
@media(max-width:400px){.vehicle-grid:not(.list-view){grid-template-columns:1fr}.vehicle-card .vehicle-plates .plate{font-size:13px}}

.list-view .vehicle-visual{width:190px;flex-basis:190px}
.list-view .vehicle-plates{left:6px;right:6px;bottom:-11px;gap:3px}
.list-view .vehicle-plates .plate{font-size:10px;height:25px;min-height:25px;padding-right:5px;letter-spacing:0}
.list-view .vehicle-plates .plate i{min-width:14px;margin-right:4px;padding:2px 3px;font-size:7px}
.list-view .vehicle-plates .tuv-plate i{font-size:6px;min-width:16px;line-height:1.05}

/* Compact plates at the shared picture edge. */
.vehicle-card .vehicle-plates .plate{font-size:12px;height:23px;min-height:23px;line-height:1.2;padding-right:5px;border-width:1.5px;border-radius:5px;letter-spacing:.2px;box-shadow:0 1px 3px #0004}
.vehicle-card .vehicle-plates .plate i{min-width:14px;margin-right:4px;padding:2px 3px;font-size:7px}
.vehicle-card .vehicle-plates .tuv-plate i{min-width:14px;font-size:5.5px;line-height:1.05}
.vehicle-card .vehicle-plates .tuv-plate>span{padding:0}
.vehicle-visual .vehicle-plates{bottom:-10px}
@media(max-width:700px){
 .vehicle-card .vehicle-plates .plate{font-size:10px;height:21px;min-height:21px;letter-spacing:0;padding-right:4px}
 .vehicle-card .vehicle-plates .plate i{min-width:12px;margin-right:3px;padding:2px;font-size:6px}
 .vehicle-card .vehicle-plates .tuv-plate i{min-width:12px;font-size:5px}
 .vehicle-visual .vehicle-plates{bottom:-9px}
}

.panel-heading .add-button{display:inline-grid;place-items:center;flex:0 0 32px;width:32px;height:32px;min-height:32px;padding:0;line-height:1;border-radius:9px}
.panel-heading .add-button .ui-icon{display:block;width:18px;height:18px;margin:0;stroke-width:2.4}
@media(max-width:700px){.panel-heading .add-button{width:36px;height:36px;min-height:36px;flex-basis:36px}.panel-heading .add-button .ui-icon{width:20px;height:20px}}

/* Shared menu geometry for navigation and account controls. */
.sidebar nav a,.sidebar #sidebar-account .user-account-toggle{display:flex;align-items:center;justify-content:flex-start;gap:12px;box-sizing:border-box;width:100%;min-height:48px;height:auto;margin:0;padding:10px 12px;border-width:1px;border-style:solid;border-radius:12px;font-size:16px;font-weight:650;line-height:1.4;text-align:left}
.sidebar nav a>span,.sidebar .user-account-toggle>.menu-icon{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px}
.sidebar nav a .ui-icon,.sidebar .user-account-toggle .ui-icon{width:26px;height:26px;margin:0}
.sidebar #sidebar-account{margin:10px 0 7px}
.sidebar #sidebar-account .account-popover{top:auto;bottom:calc(100% + 8px);max-height:calc(100dvh - 120px)}
[data-theme=dark] .sidebar #sidebar-account .user-account-toggle{background:linear-gradient(105deg,#0874cb,#0765b9 65%,#075ba8);border-color:#26baff;color:#fff;box-shadow:inset 0 1px 1px #8de4ff88,inset 0 -2px 3px #003d8188,0 2px 7px #0008,0 0 17px #008cff42}
[data-theme=dark] .sidebar .user-account-toggle .ui-icon{color:#fff;filter:drop-shadow(0 0 4px #5edfff);stroke-width:2.3}
[data-theme=light] .sidebar #sidebar-account .user-account-toggle{color:#14567d;background:linear-gradient(#c1d4dc,#aac7d4);border-color:#8eaebb;box-shadow:inset 0 1px 1px #e1e5db66,0 2px 4px #566d7426}

.sidebar-footer .app-history-link{display:block;width:100%;margin:7px 0 0;padding:3px 0;border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:500;line-height:1.4;text-align:center;text-decoration:underline;text-underline-offset:3px;cursor:pointer;box-shadow:none}
.sidebar-footer .app-history-link:hover{color:var(--blue)}
.app-history-dialog{width:min(680px,calc(100% - 28px));padding:24px;max-height:85dvh}
.app-history-dialog .dialog-heading{align-items:flex-start}.app-history-dialog .dialog-heading h2{margin-bottom:5px}.app-history-dialog .dialog-heading p{margin:0;font-size:13px}
.app-history-entry{padding:15px 0;border-top:1px solid var(--border)}.app-history-entry:first-child{padding-top:6px;border-top:0}
.app-history-version{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.app-history-version h3{margin:0;font-size:16px}.app-history-version time{font-size:12px;color:var(--muted)}
.app-history-entry ul{margin:9px 0 0;padding-left:19px;line-height:1.55;font-size:14px}.app-history-entry li+li{margin-top:5px}
@media(max-width:700px){.app-history-dialog{padding:18px;max-height:86dvh}.sidebar-footer .app-history-link{padding-block:5px}}

/* Prominent update notice, centred in the visible app workspace. */
.app-update-notice[hidden]{display:none!important}
.app-update-notice{position:fixed;inset:0;z-index:1000;width:auto;height:auto;max-width:none;max-height:none;margin:0;border:0;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,8,16,.65);backdrop-filter:blur(3px);pointer-events:auto}
.app-update-card{pointer-events:auto;box-sizing:border-box;width:min(100%,460px);max-height:calc(100dvh - 32px);overflow:auto;text-align:center;padding:28px 24px;border:3px solid #49c5ff;border-radius:22px;background:linear-gradient(145deg,#123c56,#071a2a);color:#f3faff;box-shadow:0 18px 70px #000b,0 0 32px #1bafff88}
.app-update-symbol{display:block;color:#75d5ff;font-size:64px;font-weight:800;line-height:1;margin-bottom:12px}
.app-update-eyebrow{color:#ffd76a;font-size:14px;font-weight:900;letter-spacing:.12em;margin-bottom:10px}
.app-update-card h2{font-size:26px;line-height:1.2;margin-bottom:14px;color:#fff}
.app-update-card p{font-size:16px;line-height:1.45;color:#dfedfa}
.app-update-card .app-update-eyebrow{color:#ffd76a}
.app-update-card #app-update-version{font-weight:750}
.app-update-card button{display:block;width:100%;min-height:48px;font-size:18px;margin-top:12px}
.app-update-card #app-update-reload{background:#087fc5;color:#fff;border:2px solid #70d6ff}
.app-update-card #app-update-status:empty{display:none}
.app-update-card #app-update-status{margin:14px 0 0;color:#ffd76a}
@media(max-width:400px){.app-update-card{padding:22px 16px}.app-update-card h2{font-size:23px}.app-update-symbol{font-size:50px}}

.app-update-notice::backdrop{background:rgba(0,8,16,.45)}
.app-update-card .app-update-warning{font-size:13px;color:#ffd76a}

.document-record{min-width:0}.document-record>div{min-width:0;max-width:100%}.document-record h3{overflow-wrap:anywhere}.document-record .row-actions{flex-wrap:wrap;gap:8px}.document-thumb-button{padding:0;border:0;background:none;display:block;margin-bottom:10px;max-width:100%}.repair-files{margin-top:12px;border-top:1px solid var(--border);padding-top:10px}.repair-files h4{margin:0 0 10px}.repair-files .record{padding:10px 0}.repair-upload-fields{margin-top:20px;border-top:1px solid var(--border);padding-top:16px}.repair-upload-fields h3{margin:12px 0 8px}.repair-upload-fields input{max-width:100%}
.document-preview-dialog{width:min(1000px,calc(100% - 24px));max-height:94dvh;padding:20px}.document-preview-dialog .dialog-heading h2{font-size:20px;overflow-wrap:anywhere;min-width:0}.document-preview-dialog .dialog-heading .icon-button{flex-shrink:0}.document-preview-body{height:min(66dvh,750px);min-height:220px;background:#09131c;border:1px solid var(--border);border-radius:10px;overflow:hidden}.document-preview-body iframe{width:100%;height:100%;border:0;background:white}.document-image-scroll{width:100%;height:100%;overflow:auto;text-align:center}.document-image-scroll img{display:block;width:100%;max-width:none;height:auto;margin:auto}.preview-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.document-rename-dialog{width:min(540px,calc(100% - 24px))}.document-rename-dialog input{font-size:16px}
@media(max-width:700px){.document-preview-dialog{padding:14px}.document-preview-dialog .dialog-heading h2{font-size:18px}.document-preview-body{height:60dvh}.repair-files .row-actions{gap:6px}.repair-files .row-actions>*{font-size:13px;padding:8px 10px}}


/* Reifen: Achsdaten zwischen den Rädern, Messwerte unter dem jeweiligen Rad. */
.tire-axle{border:1px solid var(--border);border-radius:12px;padding:20px;margin:20px 0}.tire-axle>h3{text-align:center;margin-bottom:20px}.tire-axle-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:24px}.tire-wheel,.tire-common{min-width:0}.tire-wheel h4{text-align:center;margin:0 0 10px}.tire-symbol{display:block;width:54px;height:90px;margin:0 auto 18px}.tire-common{padding-top:32px}.tire-axle input,.tire-axle select{width:100%;min-width:0;font-size:16px}.tire-wheel label,.tire-common label{display:grid;gap:5px;margin-bottom:14px}.condition-photos{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.condition-photos .document-record h3{overflow-wrap:anywhere}
@media(max-width:600px){.tire-axle{padding:12px}.tire-axle-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.tire-common{grid-column:1/-1;grid-row:1;padding-top:0}.tire-left{grid-column:1}.tire-right{grid-column:2}.tire-wheel h4{font-size:14px}.tire-wheel label{font-size:13px}.tire-wheel input{padding:8px 5px}.tire-symbol{height:74px;width:48px}}

.vehicle-card{position:relative}.vehicle-card-link{position:absolute;inset:0;z-index:1;border-radius:inherit}.example-photo{position:relative}.example-photo img{width:100%;height:100%;object-fit:cover}.vehicle-image .example-credit{position:absolute;bottom:4px;left:5px;right:5px;display:block;max-width:calc(100% - 10px);background:#132330e8;color:#fff;padding:4px 6px;border-radius:5px;font-size:10px;line-height:1.35;overflow-wrap:anywhere}.example-credit a{position:relative;z-index:2;text-decoration:underline;display:inline}.example-credit{pointer-events:none}.example-credit a{pointer-events:auto}


/* Einheitliche, kompakte Dateikarten in allen Fahrzeugbereichen. */
.document-record.record{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:center;gap:10px 14px;padding:14px;border:1px solid var(--border);border-radius:12px;margin:12px 0;min-width:0;background:var(--panel)}.document-record .document-thumb-button{display:grid;place-items:center;width:80px;height:76px;padding:0;margin:0;border:1px solid var(--border);border-radius:9px;overflow:hidden;background:var(--input)}.document-record .document-thumb{display:block;width:100%;height:100%;max-height:none;object-fit:cover;margin:0;border:0;border-radius:0}.document-pdf-icon{font-size:19px;font-weight:800;color:var(--blue);border:2px solid currentColor;padding:12px 6px;border-radius:5px}.document-info{min-width:0}.document-info h3{overflow-wrap:anywhere;line-height:1.3;margin-bottom:5px}.document-info p{font-size:12px;margin:0;color:var(--muted)}.document-actions{grid-column:1/-1;gap:7px}.document-actions .secondary{font-size:12px;padding:8px 10px;min-height:36px;flex:1 1 95px}.document-actions .use-photo-button{flex-basis:100%}.danger-button.secondary,.danger-button.primary{color:#b52e3c;border-color:#b52e3c66;background:#b52e3c0b}.danger-button:hover{background:#b52e3c20}.repair-record.record{display:block;width:100%;min-width:0;padding:15px 0}.repair-heading{display:flex;justify-content:space-between;gap:12px;align-items:start}.repair-heading>div{min-width:0}.repair-heading h3{white-space:pre-wrap;overflow-wrap:anywhere}.repair-heading p{color:var(--muted);font-size:13px}.repair-heading .row-actions{flex-shrink:0}.repair-heading .secondary{padding:7px 10px;font-size:12px}.repair-files{min-width:0;width:100%;margin-top:12px}.repair-existing-files .repair-files>h4{display:none}.delete-confirm-dialog{width:min(500px,calc(100vw - 28px))}.delete-confirm-dialog strong{overflow-wrap:anywhere;white-space:pre-wrap}.example-credit{display:flex!important;align-items:center;gap:6px;max-height:26px;overflow:hidden;white-space:nowrap!important}.example-credit a{flex-shrink:0;margin-left:auto;font-size:17px;line-height:1.1;padding:0 3px;white-space:nowrap}
@media(max-width:600px){.document-record.record{padding:10px;gap:9px 10px;grid-template-columns:70px minmax(0,1fr)}.document-record .document-thumb-button{width:70px;height:66px}.document-info h3{font-size:14px}.document-actions .secondary{flex-basis:calc(50% - 7px);min-width:0}.repair-heading{display:block}.repair-heading .row-actions{margin:8px 0 12px}}

.example-credit-summary{min-width:0;overflow:hidden;text-overflow:ellipsis}.example-credit a{min-width:24px;text-align:center}

[data-theme=dark] .danger-button.secondary,[data-theme=dark] .danger-button.primary{color:#ff9ca8;border-color:#ff9ca86b;background:#ff657514}


.vehicle-image small.example-photo-label,.vehicle-image span.original-photo-label{position:absolute;top:0;right:0;bottom:auto;left:0;width:100%;margin:0;display:block;background:#50565a;color:#fff;border-radius:0;padding:4px 8px;font-size:10px;line-height:1.35;text-align:left;box-sizing:border-box;z-index:2;pointer-events:none}.photo-credits-dialog{width:min(650px,calc(100vw - 28px));max-height:85dvh;overflow:auto}.photo-credit-entry{padding:14px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.photo-credit-entry h3{margin-bottom:5px}.photo-credit-entry p{margin-bottom:6px}.photo-credit-entry a{color:var(--blue);text-decoration:underline}


/* Guest access and settings retain the established workshop palette. */
.access-list{display:grid;gap:16px}.access-card{min-width:0}.access-card h2{overflow-wrap:anywhere}.access-card dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.access-card dd{margin:0;overflow-wrap:anywhere}.guest-editor{width:min(680px,calc(100vw - 24px));max-height:90dvh;overflow:auto}.guest-editor fieldset{margin:16px 0;padding:12px;min-width:0;border:1px solid var(--border,#667)}.guest-editor label{display:block;margin:10px 0}.guest-editor input:not([type=checkbox]),.guest-editor select{width:100%;min-width:0;font-size:16px}.guest-editor .checkbox{display:flex;align-items:flex-start;gap:10px}.guest-editor input[type=checkbox]{flex:none;margin-top:3px}.guest-condition{white-space:pre-wrap}.guest-editor [hidden]{display:none}.guest-editor .row-actions{flex-wrap:wrap}

/* 0.4.29: restrained spacing, clean frame joints and consistent customer alignment. */
.workspace>main#content{padding-top:16px}
.workspace>main#content>.stats:first-child{padding-top:0}
.workspace>main#content>.page-heading:first-child{margin-top:0}
.workspace>main#content>.back:first-child{padding-top:0}
.hero{border-left-width:0}
.hero::after{height:8px;border-radius:0}
.customer-card{text-align:left}
.customer-card .row-actions{justify-content:flex-start}
.guest-editor fieldset[data-grant]{margin:12px 0;padding:12px 14px;border-radius:10px}
.guest-editor .guest-customer-toggle{display:flex;align-items:center;gap:12px;margin:0;min-height:24px;cursor:pointer}
.guest-editor .guest-customer-toggle>span{flex:1;min-width:0;line-height:1.4;overflow-wrap:anywhere}
.guest-editor input[type=checkbox]{width:20px;height:20px;min-height:20px;margin:0;padding:0;align-self:center;accent-color:var(--blue)}
.guest-editor .grant-options{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}
.guest-editor fieldset[data-grant]:has([data-enabled]:checked){border-color:var(--blue)}
.plate:not(.tuv-plate) i.plate-country{font-size:inherit;display:block;position:relative;flex:0 0 1.15em;width:1.15em;min-width:0;padding:0;background:#003399;align-self:stretch;line-height:0}
.plate:not(.tuv-plate) i.plate-country::before{content:none}
.plate-country>svg{display:block;width:100%;height:100%;min-height:0;overflow:hidden}
@media(max-width:700px){.workspace>main#content{padding-top:14px}}

.customer-views{margin:0 0 18px;max-width:520px}.customer-views button{min-height:40px}.customer-lifecycle-dialog .dialog-heading h2{font-size:21px;line-height:1.25}.customer-lifecycle-dialog label{display:grid;gap:8px}.customer-lifecycle-dialog input{font-size:16px;min-width:0}.customer-lifecycle-dialog .row-actions{justify-content:flex-end}.deletion-cleanup{margin-top:20px}.deletion-cleanup .record{justify-content:space-between;flex-wrap:wrap}


/* Compact wheel controls, including native date inputs on tablets. */
.tire-set + .tire-set{border-top:2px solid var(--border);padding-top:24px;margin-top:28px}
.tire-axis-title{text-align:center;margin:0 0 20px}
.tire-axle-grid{gap:16px;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr)}
.tire-wheel{text-align:center;display:flex;flex-direction:column;align-items:center}
.tire-wheel label{width:100%;max-width:155px;text-align:center;min-width:0}
.tire-wheel input{box-sizing:border-box;width:100%;max-width:100%;min-inline-size:0;text-align:center;padding:9px 5px}
.tire-wheel input[type=date]{appearance:none;-webkit-appearance:none;min-width:0}
.tire-wheel input::-webkit-date-and-time-value{text-align:center;min-width:0}
.transmission-options{min-width:0;border:1px solid var(--border);border-radius:10px;padding:12px}
@media(max-width:1000px){.tire-axle{padding:12px}.tire-axle-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.tire-common{grid-column:1/-1;grid-row:1;padding-top:0}.tire-left{grid-column:1}.tire-right{grid-column:2}}

/* Center the native date segments as well as the input's outer text box. */
.tire-wheel input[type=date]::-webkit-datetime-edit{display:flex;justify-content:center;width:100%;padding:0}
.tire-wheel input[type=date]::-webkit-datetime-edit-fields-wrapper{padding:0}
.tire-wheel input[type=date]::-webkit-calendar-picker-indicator{position:absolute;right:5px;margin:0;opacity:0}
.tire-wheel input[type=date]{position:relative}

.tire-wheel input[type=date]::-webkit-date-and-time-value{display:block;width:100%;text-align:center;margin:0;padding:0}

.vehicle-check-link{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--border);border-radius:12px;margin-bottom:22px;background:var(--panel);text-decoration:none;color:inherit}
.vehicle-check-link>span:first-child{color:var(--blue);display:flex}.vehicle-check-link svg{width:26px;height:26px}.vehicle-check-link>span:nth-child(2){flex:1;min-width:0}.vehicle-check-link strong,.vehicle-check-link small{display:block}.vehicle-check-link small{margin-top:5px;line-height:1.5;opacity:.75}
.vehicle-check-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:20px;align-items:start}.check-history h2,.check-editor h2{font-size:20px}.check-history-entry{display:grid;width:100%;gap:5px;text-align:left;padding:13px;margin-top:10px;border:1px solid var(--border);border-radius:10px;background:transparent;color:inherit}.check-history-entry.selected{border-color:var(--blue);background:rgba(51,132,235,.1)}.check-history-entry small{line-height:1.5;opacity:.75}
.check-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.check-meta label{min-width:0;display:grid;gap:6px}.check-meta input{min-width:0;width:100%;font-size:16px}.check-group{min-width:0;margin:24px 0;border:1px solid var(--border);border-radius:12px;padding:12px 16px}.check-group legend{font-weight:700;padding:0 8px}.check-question{display:grid;grid-template-columns:minmax(0,1fr) 165px;align-items:center;gap:16px;padding:14px 10px;border-bottom:1px solid var(--border);line-height:1.5;min-width:0}.check-question:last-child{border-bottom:0}.check-question select{min-width:0;width:100%;font-size:16px}.check-question.check-issue{background:rgba(235,153,35,.12);box-shadow:inset 3px 0 #d99d29}.check-summary{padding:13px 16px;border:1px solid var(--border);border-radius:10px;font-weight:600}.check-editor textarea{width:100%;min-width:0;font-size:16px}.vehicle-check-print-root{display:none}
@media(max-width:1100px){.vehicle-check-layout{grid-template-columns:minmax(0,1fr)}.check-history{max-height:260px;overflow:auto}.check-question{grid-template-columns:minmax(0,1fr) 165px}}
@media(max-width:600px){.check-meta{grid-template-columns:minmax(0,1fr)}.check-question{grid-template-columns:minmax(0,1fr);gap:10px;padding:12px 5px}.check-question select{max-width:none}.check-group{padding:10px}.check-editor .form-actions{flex-wrap:wrap}.check-editor .form-actions button{flex:1;min-width:140px}}
@media print{
 body.printing-vehicle-check{background:white!important;color:black!important;display:block!important;margin:0!important;padding:0!important}
 body.printing-vehicle-check> :not(#vehicle-check-print-root){display:none!important}
 body.printing-vehicle-check #vehicle-check-print-root{display:block!important;font:10pt/1.35 Arial,sans-serif;color:#000!important;background:#fff!important}
 .vehicle-check-print-root header{text-align:center;border-bottom:1px solid #444;margin-bottom:10px;padding-bottom:8px}.vehicle-check-print-root h1{font-size:20pt;margin:0}.vehicle-check-print-root header p{margin:3px 0}.check-print-meta{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;margin:8px 0}.check-print-meta div{display:flex;gap:6px;min-width:0}.check-print-meta dt{font-weight:bold}.check-print-meta dd{margin:0;overflow-wrap:anywhere}.check-print-columns{columns:2;column-gap:20px}.check-print-group{break-inside:avoid;margin:0 0 12px}.vehicle-check-print-root h2{font-size:11pt;margin:6px 0}.check-print-row{display:grid;grid-template-columns:minmax(0,1fr) 65px;gap:8px;border-bottom:1px solid #ddd;padding:4px 0}.check-print-row strong{text-align:right;font-size:9pt}.check-print-notes{break-inside:avoid;border-top:1px solid #444;padding-top:8px}.check-print-notes p{white-space:pre-wrap;overflow-wrap:anywhere}.check-print-signature{margin-top:25px}
 @page{size:A4;margin:12mm}
}

#check-refresh[hidden]{display:none!important}

/* Narrow desktop windows keep readable controls and show every vehicle section. */
.workspace,main#content,.detail-summary>div,.detail-grid>.panel{min-width:0}
.row-actions>.primary,.row-actions>.secondary,.form-actions>button{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere}
.panel-heading{flex-wrap:wrap}.panel-heading h2,.page-heading>div{min-width:0;overflow-wrap:anywhere}
@media(min-width:701px){
 .tabs[aria-label="Bereiche der Fahrzeugakte"]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));overflow:visible;gap:5px}
 .tabs[aria-label="Bereiche der Fahrzeugakte"] button{min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;min-height:44px;height:auto;font-size:14px;line-height:1.4;padding:10px}
 .page-heading{flex-wrap:wrap}.page-heading>div{flex:1 1 240px}.page-heading>.primary{max-width:100%;white-space:normal}
 .vehicle-data{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.vehicle-data dt{font-size:12px}.vehicle-data dd{font-size:14px}
}
@media(min-width:701px) and (max-width:1200px){
 .page-heading h1{font-size:24px}.page-heading>.primary{font-size:14px}
 .filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;gap:10px}
 .filters label:first-child{grid-column:1;grid-row:1}.filters .search{grid-column:2/4;grid-row:1}.filters label:nth-child(3){grid-column:1/3;grid-row:2}.filters .view-toggle{grid-column:3;grid-row:2}
 .filters input,.filters select{font-size:16px;min-height:44px;height:44px}.filters label>span{font-size:12px}.filters .view-toggle{height:44px;min-height:44px}
}
@media(min-width:701px) and (max-width:1250px){
 .sidebar nav a,.sidebar #sidebar-account .user-account-toggle{font-size:13px;gap:6px;padding:10px 6px;min-height:44px;line-height:1.4}
 .sidebar nav a>span,.sidebar .user-account-toggle>.menu-icon{flex:0 0 20px;width:20px;height:20px}
 .sidebar nav a .ui-icon,.sidebar .user-account-toggle .ui-icon{width:20px;height:20px}
}

.scroll-top.over-vehicle-tabs{visibility:hidden;pointer-events:none}

/* KFZ-Betreuer, Monatschecks und Werkstattabende. */
.portal-test-banner{padding:16px 20px;margin-bottom:20px;border:2px solid #c28b25;border-radius:14px;background:var(--panel);color:var(--text)}
.portal-entries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}.portal-entries a{display:flex;min-height:100px;align-items:center;justify-content:center;text-align:center;font-weight:700}
.portal-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.portal-facts dt{color:var(--muted);font-size:.85rem}.portal-facts dd{margin:6px 0;overflow-wrap:anywhere}
.portal-location-filter{display:block;max-width:520px;margin-bottom:24px}.portal-location-filter select{width:100%}
.portal-check-fields{padding:0;border:0;min-width:0}.portal-check-fields:disabled{opacity:1}.portal-check-fields:disabled select,.portal-check-fields:disabled input,.portal-check-fields:disabled textarea{opacity:1;color:var(--text);-webkit-text-fill-color:var(--text)}
.portal-check-entry,.portal-booking-entry{display:flex;flex-direction:column;gap:8px;width:100%;padding:18px;text-align:left;margin:10px 0;border:1px solid var(--border);border-radius:12px;overflow-wrap:anywhere;color:var(--text);background:var(--panel)}
.portal-file{padding:16px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.portal-file small{margin-left:12px}.portal-files .row-actions{margin-top:12px;flex-wrap:wrap}
.portal-preview{width:min(1000px,94vw);max-height:92dvh}.portal-preview img{max-width:100%;max-height:72dvh;object-fit:contain;display:block;margin:auto}.portal-preview iframe{width:100%;height:72dvh;border:0}
.portal-manager{width:min(1080px,95vw);max-height:92dvh;overflow:auto}.portal-manager .panel{margin:20px 0}.portal-location-group{border-top:1px solid var(--border);padding:18px 0}.portal-caretaker{padding:16px 0;overflow-wrap:anywhere}.portal-caretaker summary{cursor:pointer;line-height:1.7}.portal-warning{color:#c98210;font-weight:700}.portal-assignment{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,1fr);gap:16px;align-items:center;margin:12px 0}.portal-manager .row-actions{flex-wrap:wrap}.portal-manager h4{margin:12px 0}
.portal-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-calendar-heading h2{text-align:center}.portal-weekdays,.portal-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.portal-weekdays{margin:18px 0 10px;text-align:center}.portal-day{min-width:0;min-height:94px;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:9px;padding:10px 4px;border-radius:12px;border:2px solid transparent;white-space:normal}.portal-day b{font-size:1.25rem}.portal-day small{font-size:.76rem;overflow-wrap:anywhere;line-height:1.25}.portal-day.free{background:#d3f5df;color:#12472b;border-color:#3eaa6b}.portal-day.blocked{background:#ffe0df;color:#872725;border-color:#d15854}.portal-day.booked{background:#dceafb;color:#214e89;border-color:#608dc2}.portal-day.closed,.portal-day.past,.portal-day.holiday{background:var(--bg);color:var(--muted);opacity:.75}.portal-day.selected{outline:3px solid #1975e1;outline-offset:2px}.portal-day:disabled{cursor:default;opacity:.8}.portal-calendar{margin:12px 0}.portal-prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.portal-booking-notice .secondary{margin:5px}.portal-booking-notice .panel-heading{flex-wrap:wrap}
.portal-booking-notice.new-booking,.stats .stat.new-booking,.portal-booking-entry.new-booking{border:2px solid #df1736;animation:portal-pulse 1.8s ease-in-out infinite}@keyframes portal-pulse{0%,100%{border-color:#bf1b35;box-shadow:0 0 0 1px #ff405c33,0 0 7px #eb173b33}50%{border-color:#ff2448;box-shadow:0 0 0 5px #ff254c55,0 0 22px #ff254c88}}@media(prefers-reduced-motion:reduce){.portal-booking-notice.new-booking,.stats .stat.new-booking,.portal-booking-entry.new-booking{animation:none;border-color:#df1736;box-shadow:0 0 0 2px #ff405c44}}

@media(max-width:700px){.portal-entries,.portal-facts{grid-template-columns:1fr}.portal-entries a{min-height:70px}.portal-weekdays,.portal-days{gap:4px}.portal-day{min-height:78px;padding:8px 1px;border-radius:8px}.portal-day small{font-size:.64rem}.portal-calendar-heading h2{font-size:1rem}.portal-assignment{grid-template-columns:1fr}.portal-manager .panel-heading{align-items:flex-start;flex-direction:column}.portal-manager{padding:16px}.portal-manager .row-actions>*{max-width:100%}.portal-day b{font-size:1rem}}

/* Keep the full caretaker card tappable above decorative plates. */
#portal-vehicles .vehicle-card-link{z-index:4}

@media(min-width:701px) and (max-width:1000px){.sidebar{width:160px}.workspace{margin-left:160px}}

/* Compact actions retain a 44px touch target and an accessible text name. */
button.action-icon,a.action-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;flex:0 0 44px}
.action-icon .ui-icon{width:22px;height:22px;pointer-events:none}
.appointment-record{flex-wrap:wrap}.appointment-record>div:first-of-type{flex:1;min-width:0}.appointment-record .row-actions{margin-left:auto}

@media(min-width:1251px){
 .sidebar nav a,.sidebar #sidebar-account .user-account-toggle{gap:6px;padding:10px 8px;min-height:48px;line-height:1.4}
 .sidebar nav a>span,.sidebar .user-account-toggle>.menu-icon{flex:0 0 20px;width:20px;height:20px}
 .sidebar nav a .ui-icon,.sidebar .user-account-toggle .ui-icon{width:20px;height:20px}
}


/* Direct Ja/Nein checkboxes, shared across both check forms. */
.check-question{grid-template-columns:minmax(0,1fr) auto}
.check-answers{display:grid;grid-template-columns:repeat(2,minmax(60px,auto));gap:6px;align-items:center}
.check-question .check-answer{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:7px 10px;margin:0;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-size:15px;line-height:1.25}
.check-question .check-answer input{appearance:auto;width:22px;height:22px;min-width:22px;min-height:22px;margin:0;padding:0;accent-color:var(--primary,#2779da);cursor:pointer}
.check-answer:has(input:checked){background:rgba(60,137,225,.16);border-color:#3981d5;font-weight:700}
.check-answer:has(input:focus-visible){outline:2px solid #3981d5;outline-offset:2px}
.check-answer:has(input:disabled){cursor:default;opacity:.8}
.check-previous-answer{grid-column:1/-1;font-size:12px;max-width:190px}
.check-answer-clear{min-height:32px;padding:4px 8px;font-size:12px}
@media(max-width:600px){.check-question{grid-template-columns:minmax(0,1fr);gap:8px}.check-answers{justify-self:start;grid-template-columns:repeat(2,minmax(72px,auto))}}
/* Full-page handover workflow reuses the existing vehicle-check controls. */
.handover-history{margin-bottom:18px}.handover-history h2{font-size:18px}.handover-editor{max-width:1100px}.handover-fields{border:0;padding:0;margin:0;min-width:0}.handover-fields[disabled]{opacity:1}.handover-fields[disabled] input,.handover-fields[disabled] textarea,.handover-fields[disabled] select{opacity:1;-webkit-text-fill-color:currentColor}.handover-signature{margin-block:24px;padding:16px;border:1px solid var(--line,#587081);border-radius:12px}.handover-signature h3{margin-top:0}#handover-signature-preview{background:#fff;color:#172331;min-height:96px;border-radius:8px;margin-bottom:14px;padding:10px}#handover-signature-preview svg{width:100%;max-width:500px;height:auto;display:block}.handover-files{margin-top:24px;padding-top:18px;border-top:1px solid var(--line,#587081)}.handover-files p{overflow-wrap:anywhere}.handover-mail-status{padding:14px;border-left:4px solid #0b90e8;background:#178ed012}.handover-history .row-actions{display:flex;flex-wrap:wrap}.handover-editor .row-actions,.handover-files .row-actions{display:flex;flex-wrap:wrap;gap:10px}.handover-editor .secondary,.handover-editor .primary,.handover-history button{min-height:44px;white-space:normal;text-align:center}.handover-signature-dialog{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));border:0;border-radius:0;box-sizing:border-box;background:var(--panel,#101b29);color:var(--text,#eef5fb)}.handover-signature-dialog[open]{display:flex;flex-direction:column;gap:12px}.signature-toolbar{flex-shrink:0}.signature-toolbar h2{font-size:clamp(18px,3vw,26px);margin:0 0 8px}.signature-toolbar p{margin:4px 0 10px}.signature-toolbar .row-actions{display:flex;flex-wrap:wrap;gap:10px}.signature-toolbar button{min-height:44px}.signature-canvas-wrap{min-height:90px;flex:1;overflow:hidden;border:2px solid #75bcef;border-radius:8px;background:#fff}.signature-canvas-wrap canvas{width:100%;height:100%;display:block;touch-action:none;user-select:none;-webkit-user-select:none;cursor:crosshair}.handover-signature-dialog .error:empty{display:none}#handover-form .check-meta>*{min-width:0}#handover-form input:not([type=checkbox]),#handover-form select,#handover-form textarea{min-height:44px;font-size:16px;max-width:100%;box-sizing:border-box}.handover-editor,.handover-history{min-width:0}.handover-editor .check-group{min-width:0}
@media(max-width:600px){.handover-editor .check-meta{grid-template-columns:minmax(0,1fr)}.handover-editor .form-actions{display:flex;flex-wrap:wrap}.handover-editor{padding:14px}.handover-files .row-actions>*{flex:1 1 100%}.handover-history button{width:100%;text-align:left}}

/* Keep the conflict action hidden until the server reports a stale revision. */
#handover-refresh[hidden]{display:none!important}

/* Account actions share one layout; long labels wrap inside the sidebar. */
.sidebar .account-popover>[data-portal-push]{display:flex;align-items:center;width:100%;min-height:44px;padding:10px 6px;border-radius:9px;font-size:13px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
.sidebar .account-popover>[data-portal-push]:hover,.sidebar .account-popover>[data-portal-push]:focus-visible{background:var(--active)}

.sidebar #sidebar-account .account-popover{width:min(280px,calc(100vw - 28px));max-width:calc(100vw - 28px)}

/* Show the complete reviewed vehicle; original uploads keep their existing framing. */
.vehicle-image.example-photo img{object-fit:contain}

.auth-panel #forgot-password{margin-top:1rem}.portal-booking-notice>.secondary{display:inline-flex;margin:.5rem .5rem 0 0;max-width:100%;white-space:normal}

/* Keep the login checkbox and its caption together. */
.auth-panel label.checkbox{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:clamp(11px,3vw,13px)}
.auth-panel label.checkbox input{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:0;padding:0}
/* Short vehicle annotations sit directly below the model, without stretching cards. */
.vehicle-body>.vehicle-special-notes,.detail-summary .vehicle-special-notes{display:block;width:100%;min-width:0;max-width:100%;min-height:0;margin:0 0 6px;font-size:12px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}
.detail-summary>div{min-width:0}.detail-summary .vehicle-special-notes{font-size:14px}
.list-view .vehicle-body>.vehicle-special-notes{flex-basis:100%;margin:0}
@media(max-width:700px){.vehicle-body>.vehicle-special-notes{font-size:11px}.detail-summary .vehicle-special-notes{font-size:12px}}

.sidebar-identity>div{min-width:0;flex:1}.sidebar-identity strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-identity .avatar{overflow:hidden;flex-shrink:0}.sidebar-identity .avatar img{display:block;width:100%;height:100%;object-fit:cover}
.profile-photo-panel{max-width:760px}.profile-photo-panel label{display:grid;gap:6px;margin:14px 0}.profile-photo-panel input{width:100%;min-width:0;max-width:100%;box-sizing:border-box;font-size:16px}.profile-photo-preview{display:block;width:160px;height:160px;max-width:100%;object-fit:contain;border-radius:12px;border:1px solid var(--border);margin:12px 0}.profile-photo-preview[hidden],#profile-photo-selection[hidden]{display:none}.profile-photo-panel .row-actions{display:flex;flex-wrap:wrap;gap:10px}.profile-photo-dialog{max-width:calc(100vw - 32px)}.profile-photo-dialog .profile-photo-preview{width:512px;height:auto;max-height:70vh}
