:root{--bg:#f4f6f8;--panel:#fff;--text:#17202a;--muted:#667085;--border:#dde2e7;--accent:#2563eb;--accent-soft:#eaf1ff;--success:#16865a;--success-soft:#e7f7f0;--warn:#b7791f;--warn-soft:#fff7dc;--danger:#c0392b;--danger-soft:#fff0ed;--sidebar:#101828;--day-width:124px;--left-width:178px;--lane-h:48px}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:220px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:var(--sidebar);color:#fff;padding:18px 12px;display:flex;flex-direction:column;gap:18px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;padding:0 8px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--accent);color:#fff;font-weight:800}.brand-mark.small{width:32px;height:32px;border-radius:9px}.sidebar nav{display:flex;flex-direction:column;gap:4px}.nav-btn{border:0;background:transparent;color:#c9d3e1;text-align:left;padding:10px 12px;border-radius:9px}.nav-btn:hover,.nav-btn.active{background:#263245;color:#fff}.sidebar-foot{margin-top:auto;padding:8px;font-size:13px;display:flex;flex-direction:column;gap:5px}.sidebar-foot a{color:#a9c2ff}.content{min-width:0;padding:22px}.topbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.topbar h1{font-size:24px;margin:0 0 4px}.muted{color:var(--muted)}.topbar p{margin:0}.view{display:none}.view.active{display:block}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.segmented{display:flex;border:1px solid var(--border);background:var(--panel);border-radius:10px;overflow:hidden}.segmented button{border:0;border-right:1px solid var(--border);background:transparent;padding:8px 10px}.segmented button:last-child{border-right:0}.segmented button.active{background:var(--accent-soft);color:var(--accent)}.btn{border:1px solid var(--border);border-radius:9px;padding:9px 13px;background:var(--panel);color:var(--text)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.ghost{background:var(--panel)}.btn.danger{background:var(--danger-soft);border-color:#f0bbb4;color:var(--danger)}.spacer{flex:1}.date-label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:9px;padding:9px 10px;background:#fff;color:var(--text)}input[type=checkbox]{width:auto}.planner-wrap{background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow:auto;max-height:calc(100vh - 170px);position:relative}.planner-grid{position:relative;min-width:calc(var(--left-width) + var(--days) * var(--day-width))}.planner-header{display:grid;grid-template-columns:var(--left-width) repeat(var(--days),var(--day-width));position:sticky;top:0;z-index:20;background:var(--panel);border-bottom:1px solid var(--border)}.corner{position:sticky;left:0;z-index:30;background:var(--panel);padding:10px;border-right:1px solid var(--border);font-weight:700}.day-head{padding:8px 6px;text-align:center;border-right:1px solid var(--border);font-size:13px;min-height:52px}.day-head.weekend{background:#fafafa}.day-head.today{background:var(--accent-soft)}.day-head .capacity{display:block;color:var(--muted);font-size:11px;margin-top:3px}.section-row{display:grid;grid-template-columns:var(--left-width) 1fr;border-bottom:1px solid var(--border)}.section-label{position:sticky;left:0;z-index:10;background:#fbfcfd;border-right:1px solid var(--border);padding:9px 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.timeline{position:relative;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--day-width) - 1px),var(--border) calc(var(--day-width) - 1px),var(--border) var(--day-width));min-height:42px}.workshop-timeline{height:calc(var(--lanes) * var(--lane-h) + 8px)}.lane-line{position:absolute;left:0;right:0;border-top:1px dashed #edf0f3}.appointment-bar,.rental-bar,.rental-block{position:absolute;height:34px;border-radius:9px;display:flex;align-items:center;gap:6px;padding:0 10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;box-shadow:0 1px 1px rgba(0,0,0,.05)}.appointment-bar{background:var(--accent);color:#fff;border:1px solid rgba(0,0,0,.05)}.appointment-bar.warn{background:var(--warn)}.appointment-bar.provisional{background:#7d8796}.appointment-bar.ready{background:var(--success)}.appointment-bar .phases{position:absolute;left:0;right:0;bottom:0;height:4px;display:flex}.appointment-bar .phase{height:100%;border-right:1px solid rgba(255,255,255,.65);background:rgba(255,255,255,.45)}.rental-row{display:grid;grid-template-columns:var(--left-width) 1fr;border-bottom:1px solid var(--border);min-height:48px}.rental-name{position:sticky;left:0;z-index:10;background:var(--panel);border-right:1px solid var(--border);padding:8px 10px;font-size:13px}.rental-name strong{display:block}.rental-name small{color:var(--muted)}.rental-line{height:47px}.rental-bar{top:7px;background:#e7eefc;border:1px solid #b8caf4;color:#214a96}.rental-block{top:12px;height:24px;padding:0 7px;border:1px dashed #99a3ad;background:#f5f6f7;color:#667085;font-size:11px}.loading{padding:30px;text-align:center;color:var(--muted)}.legend{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:5px}.dot{width:8px;height:8px;border-radius:50%;background:var(--success)}.dot.warn{background:var(--warn)}.alert{padding:10px 12px;border-radius:9px;margin:10px 0}.alert.danger{background:var(--danger-soft);color:var(--danger);border:1px solid #f4c2bb}.alert.success{background:var(--success-soft);color:var(--success);border:1px solid #b9e7d5}.alert.info{background:var(--accent-soft);color:#244d98}.modal-backdrop{position:fixed;inset:0;background:rgba(16,24,40,.48);z-index:100;display:grid;place-items:center;padding:20px}.modal-backdrop.hidden,.hidden{display:none!important}.modal{width:min(900px,100%);max-height:94vh;overflow:auto;background:#fff;border-radius:15px;padding:18px}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.modal-head h2{margin:0}.icon-btn{border:0;background:transparent;font-size:28px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid label,.stack label{display:grid;gap:6px;font-size:13px;color:#46505c}.span-2{grid-column:span 2}.section-title{font-weight:700;margin:20px 0 9px}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.work-item{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:7px;border:1px solid var(--border);padding:8px;border-radius:9px}.work-item input[type=number]{padding:6px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.cardlike,.panel,.help{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px}.stack{display:grid;gap:12px}.check{display:flex!important;align-items:center;gap:8px!important;font-weight:600;color:var(--text)!important}.info-note{margin-top:9px;padding:9px 10px;border-radius:8px;background:var(--accent-soft);color:#244d98;font-size:13px}.modal-actions{display:flex;align-items:center;gap:8px;margin-top:16px;border-top:1px solid var(--border);padding-top:14px}.cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.data-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px}.data-card h3{margin:0 0 10px}.row-list{display:grid;gap:7px}.row-item{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--border);border-radius:9px}.row-item .main{flex:1}.row-item small{color:var(--muted)}.task.done{opacity:.55}.help{max-width:900px}.help h2{margin-top:0}.help h3{margin-bottom:4px}.help p{margin-top:0;color:#475467}.login-body{min-height:100vh;display:grid;place-items:center;padding:20px;background:#eef2f6}.login-card,.install-card{width:min(430px,100%);background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px}.install-card{width:min(700px,100%)}.login-card h1,.install-card h1{margin-bottom:5px}.login-card .brand-mark,.install-card .brand-mark{margin-bottom:12px}.login-card .stack{margin-top:18px}.install-card .form-grid{margin-top:18px}
@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:10px;flex-direction:row;align-items:center;overflow:auto}.sidebar .brand span:last-child,.sidebar-foot{display:none}.sidebar nav{flex-direction:row}.nav-btn{white-space:nowrap}.content{padding:12px}.topbar{align-items:flex-start}.topbar h1{font-size:20px}.form-grid,.two-col,.cards-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-wrap{max-height:calc(100vh - 200px)}}

.empty-timeline{display:flex;align-items:center;padding:0 12px;color:var(--muted);font-size:12px}.planner-error{margin:10px;position:sticky;left:10px;max-width:760px;z-index:40}.rental-section-head{background:#fbfcfd}.workshop-timeline{cursor:crosshair}

/* AM-Dellentechnik Design – v1.0.2 */
:root{
  --bg:#f3f3f1;
  --panel:#ffffff;
  --text:#171717;
  --muted:#6d6d68;
  --border:#deded9;
  --accent:#ff5a00;
  --accent-hover:#e95100;
  --accent-soft:#fff0e7;
  --success:#2d7b55;
  --success-soft:#eaf5ef;
  --warn:#c57408;
  --warn-soft:#fff3df;
  --danger:#be352b;
  --danger-soft:#fff0ee;
  --sidebar:#171717;
}
body{font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif;background:var(--bg);letter-spacing:.005em}
.app-shell{grid-template-columns:232px 1fr}
.sidebar{background:linear-gradient(180deg,#151515 0%,#1c1c1c 100%);padding:20px 13px;border-right:1px solid #292929}
.brand{gap:11px;padding:2px 8px 13px;border-bottom:1px solid #303030}
.brand-copy{display:grid;line-height:1.05;gap:4px;min-width:0}
.brand-copy strong{font-size:13px;letter-spacing:.075em;color:#fff;white-space:nowrap}
.brand-copy small{font-size:10px;letter-spacing:.13em;color:#a9a9a5;text-transform:uppercase}
.brand-mark{background:transparent!important;color:var(--accent)!important;border:2px solid var(--accent);border-radius:50%!important;font-weight:800;letter-spacing:-.07em}
.brand-mark.small{width:36px;height:36px;font-size:12px}
.nav-btn{color:#c4c4c0;border-radius:7px;padding:11px 12px;border-left:3px solid transparent}
.nav-btn:hover{background:#242424;color:#fff}
.nav-btn.active{background:#25211f;color:#fff;border-left-color:var(--accent)}
.sidebar-foot{border-top:1px solid #303030;padding-top:14px;color:#d2d2ce}
.sidebar-foot a{color:var(--accent);text-decoration:none;font-weight:600}
.content{padding:24px 26px}
.topbar{margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--border)}
.topbar h1{font-size:26px;letter-spacing:-.025em}
.topbar p{font-size:13px}
.btn{border-radius:7px;padding:9px 14px;font-weight:600;transition:background .15s,border-color .15s,color .15s,transform .15s}
.btn:hover{border-color:#bdbdb8}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.btn.ghost:hover{background:#f7f7f4}
.segmented{border-radius:7px}
.segmented button{padding:8px 12px}
.segmented button.active{background:var(--accent);color:#fff}
input,select,textarea{border-radius:7px;background:#fff;border-color:#d8d8d3}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(255,90,0,.20);outline-offset:1px;border-color:var(--accent)}
.planner-wrap{border-radius:9px;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.corner{font-size:12px;letter-spacing:.04em;text-transform:uppercase;background:#fafaf8}
.day-head{background:#fafaf8;font-weight:650}
.day-head.weekend{background:#f1f1ee;color:#8a8a85}
.day-head.today{background:var(--accent-soft);box-shadow:inset 0 -3px 0 var(--accent)}
.day-head.today .capacity{color:#9f450f}
.section-label{background:#f6f6f3;color:#2a2a28;border-left:3px solid var(--accent)}
.timeline{background-color:#fff}
.lane-line{border-top-color:#ecece7}
.appointment-bar{background:#252525;color:#fff;border:0;border-left:5px solid var(--accent);border-radius:6px;box-shadow:0 1px 2px rgba(0,0,0,.10);font-weight:650}
.appointment-bar:hover{background:#1c1c1c}
.appointment-bar.warn{background:#3a3125;border-left-color:#d88a16}
.appointment-bar.provisional{background:#6c6c68;border-left-color:#a9a9a4}
.appointment-bar.ready{background:#2e5f48;border-left-color:#63b48a}
.appointment-bar .phases{height:3px;background:rgba(255,255,255,.08)}
.appointment-bar .phase{background:var(--accent);opacity:.7;border-right:1px solid rgba(255,255,255,.6)}
.rental-section-head{background:#f4f4f1;color:#222}
.rental-name{background:#fafaf8}
.rental-bar{background:#fff0e7;border-color:#f3a06e;color:#7e360b;border-left:4px solid var(--accent);border-radius:6px;font-weight:600}
.rental-block{background:#f1f1ee;border-color:#979792;color:#5f5f5a;border-radius:5px}
.dot{background:var(--success)}.dot.warn{background:var(--warn)}
.alert{border-radius:7px}.alert.info{background:var(--accent-soft);color:#7e360b;border:1px solid #ffd0b5}
.modal-backdrop{background:rgba(15,15,15,.62);backdrop-filter:blur(2px)}
.modal{border-radius:10px;border-top:5px solid var(--accent);box-shadow:0 18px 60px rgba(0,0,0,.20)}
.modal-head h2{font-size:21px;letter-spacing:-.02em}
.work-item{border-radius:7px;background:#fbfbf9}
.cardlike,.panel,.help,.data-card{border-radius:9px;background:#fff}
.data-card h3,.section-title{letter-spacing:-.01em}
.row-item{border-radius:7px;background:#fcfcfa}
.info-note{background:var(--accent-soft);color:#7e360b;border-left:3px solid var(--accent);border-radius:6px}
.login-body{background:linear-gradient(135deg,#171717 0%,#262626 52%,#121212 100%);position:relative}
.login-body:before{content:"";position:fixed;left:0;top:0;bottom:0;width:7px;background:var(--accent)}
.login-card,.install-card{border:0;border-radius:10px;padding:28px;box-shadow:0 22px 70px rgba(0,0,0,.28);position:relative}
.login-card:before,.install-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--accent);border-radius:10px 10px 0 0}
.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.login-brand .brand-mark{width:52px;height:52px;margin:0!important}
.login-brand-copy{display:grid;gap:3px;line-height:1.05}
.login-brand-copy strong{font-size:16px;letter-spacing:.08em}
.login-brand-copy small{font-size:11px;letter-spacing:.14em;color:var(--muted);text-transform:uppercase}
.login-card h1,.install-card h1{letter-spacing:-.025em;color:#171717}
.am-accent-rule{height:3px;width:52px;background:var(--accent);margin:10px 0 16px;border-radius:10px}
.empty-timeline{background:#fff}
.planner-error{border-left:4px solid var(--danger)}
@media(max-width:820px){
  .app-shell{grid-template-columns:1fr}
  .sidebar{border-right:0;border-bottom:1px solid #292929}
  .brand{border-bottom:0;padding-bottom:2px}
  .brand-copy{display:none}
  .content{padding:13px}
  .topbar{padding-bottom:10px}
}
/* v1.0.3 – Termin-Hover, Statusfarben und Zeitanteilsbalken */
:root{--lane-h:58px}
.workshop-timeline{height:calc(var(--lanes) * 58px + 8px)}
.appointment-bar{height:46px;padding:0;display:block;overflow:hidden;border-left-width:5px}
.appointment-bar .appointment-main{height:32px;display:flex;align-items:center;gap:6px;padding:0 9px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.appointment-bar.planned{background:#292929;border-left-color:#8d8d8d}
.appointment-bar.confirmed{background:#252525;border-left-color:var(--accent)}
.appointment-bar.in-progress{background:#744713;border-left-color:#ff9d23}
.appointment-bar.ready{background:#255942;border-left-color:#58b983}
.appointment-bar.collected{background:#4b535b;border-left-color:#8e98a2;opacity:.88}
.appointment-bar.provisional{background:#686868;border-left-color:#aaa}
.appointment-bar.parts-warn{box-shadow:inset 0 0 0 2px #d9982d,0 1px 2px rgba(0,0,0,.10)}
.appointment-bar .phases{height:14px;display:flex;position:absolute;left:0;right:0;bottom:0;background:#111;border-top:1px solid rgba(255,255,255,.18)}
.appointment-bar .phase{height:100%;display:flex;align-items:center;justify-content:center;min-width:2px;border-right:1px solid rgba(255,255,255,.55);background:var(--accent);opacity:1;overflow:hidden}
.appointment-bar .phase:nth-child(even){filter:brightness(.82)}
.appointment-bar .phase-stand{background:#777;filter:none!important}
.appointment-bar .phase em{font-style:normal;font-size:8px;line-height:1;color:#fff;font-weight:800;white-space:nowrap;padding:0 2px}
.status-legend{position:sticky;left:0;z-index:9;display:flex;gap:13px;align-items:center;padding:6px 10px 6px calc(var(--left-width) + 10px);font-size:11px;color:var(--muted);border-bottom:1px solid var(--border);background:#fff;min-width:calc(var(--left-width) + var(--days) * var(--day-width))}
.status-legend span{display:flex;align-items:center;gap:4px;white-space:nowrap}.status-legend i{width:9px;height:9px;border-radius:2px;display:block}.status-legend i.planned{background:#8d8d8d}.status-legend i.confirmed{background:var(--accent)}.status-legend i.in-progress{background:#ff9d23}.status-legend i.ready{background:#58b983}.status-legend i.provisional{background:#aaa}
.appointment-tooltip{position:fixed;z-index:500;width:min(390px,calc(100vw - 28px));padding:13px;background:#161616;color:#fff;border:1px solid #3b3b3b;border-top:3px solid var(--accent);border-radius:9px;box-shadow:0 12px 30px rgba(0,0,0,.28);pointer-events:none;font-size:12px}
.tip-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}.tip-head>div{min-width:0}.tip-head strong{display:block;font-size:15px}.tip-head span:not(.status-pill){display:block;color:#cfcfcf;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-pill{border-radius:999px;padding:4px 7px;font-size:10px;font-weight:800;white-space:nowrap;background:#444}.status-pill.confirmed{background:var(--accent);color:#111}.status-pill.in-progress{background:#a96415}.status-pill.ready{background:#2f7d59}.status-pill.provisional{background:#696969}.status-pill.collected{background:#4b535b}
.tip-grid{display:grid;grid-template-columns:82px 1fr;gap:5px 8px;padding:9px 0;border-top:1px solid #343434;border-bottom:1px solid #343434}.tip-grid span{color:#aaa}.tip-grid strong{font-weight:650;overflow-wrap:anywhere}.tip-times{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px}.tip-times span{background:#292929;border:1px solid #3b3b3b;border-radius:5px;padding:4px 6px}.tip-times b{color:var(--accent)}.tip-note{margin-top:9px;color:#d1d1d1;padding-top:8px;border-top:1px solid #343434;white-space:pre-wrap}


/* v1.0.4 – Kennzeichen, Ersatzteilampel und manuelle Tagesverteilung */
input[name="license_plate"]{text-transform:uppercase;font-weight:700;letter-spacing:.035em}
.appointment-icons{display:inline-flex;align-items:center;gap:4px;margin-left:auto}
.parts-badge{display:inline-flex;align-items:center;gap:1px;font-weight:900;white-space:nowrap}
.parts-badge::first-letter{filter:none}
.parts-open{color:#ff4b3e}
.parts-ordered{color:#ffc229}
.parts-partial{color:#ffc229}
.parts-received{color:#55c982}
.rental-icon{display:inline-flex;align-items:center}
.day-allocation{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:8px 0 16px}
.allocation-day{border:1px solid var(--border);border-radius:8px;background:#fbfbf9;padding:10px;display:grid;gap:8px}
.allocation-day-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding-bottom:7px;border-bottom:1px solid var(--border)}
.allocation-day-head strong{font-size:13px}.allocation-day-head span{font-size:10px;color:var(--muted)}
.allocation-day label{display:grid;grid-template-columns:1fr 76px;align-items:center;gap:8px;font-size:12px}
.allocation-day input{width:100%;padding:7px 8px;text-align:right}
.allocation-summary{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.allocation-chip{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:5px 8px;font-size:11px;border:1px solid var(--border);background:#fff}
.allocation-chip.ok{background:var(--success-soft);color:var(--success);border-color:#b8dcc8}
.allocation-chip.open{background:var(--warn-soft);color:#8a570d;border-color:#efd19c}
.allocation-chip.over{background:var(--danger-soft);color:var(--danger);border-color:#efb7b2}
.allocation-empty{grid-column:1/-1;border:1px dashed var(--border);border-radius:8px;padding:12px;color:var(--muted);font-size:12px;background:#fafaf8}
@media(max-width:640px){.day-allocation{grid-template-columns:1fr}.allocation-day label{grid-template-columns:1fr 92px}}

.tip-days{margin-top:9px;padding-top:8px;border-top:1px solid #343434;display:grid;gap:5px}.tip-days>div{display:grid;grid-template-columns:82px 1fr;gap:7px}.tip-days b{color:#fff}.tip-days span{color:#cfcfcf}

/* v1.0.5 – Priorität direkt in der Plantafel */
.appointment-bar.priority-high{box-shadow:inset 0 0 0 2px #e5aa22,0 1px 2px rgba(0,0,0,.12)}
.appointment-bar.priority-urgent{box-shadow:inset 0 0 0 3px #d73832,0 1px 3px rgba(143,20,16,.22)}
.appointment-bar.priority-low{opacity:.88}
.appointment-bar.priority-high.parts-warn{box-shadow:inset 0 0 0 2px #e5aa22,inset 0 -3px 0 #d9982d,0 1px 2px rgba(0,0,0,.12)}
.appointment-bar.priority-urgent.parts-warn{box-shadow:inset 0 0 0 3px #d73832,inset 0 -3px 0 #d9982d,0 1px 3px rgba(143,20,16,.22)}
.priority-tag{display:inline-flex;align-items:center;height:17px;padding:0 5px;border-radius:999px;font-size:8px;font-weight:900;letter-spacing:.035em;line-height:1;color:#fff;background:#696969;flex:0 0 auto}
.priority-tag.priority-normal{display:none}
.priority-tag.priority-high{background:#e5aa22;color:#1d1605}
.priority-tag.priority-urgent{background:#d73832;color:#fff}
.priority-tag.priority-low{background:#79838c;color:#fff}
.priority-pill{display:inline-flex;align-items:center;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:850;background:#4d4d4d;color:#fff}
.priority-pill.priority-high{background:#e5aa22;color:#1d1605}
.priority-pill.priority-urgent{background:#d73832;color:#fff}
.priority-pill.priority-low{background:#79838c;color:#fff}
.status-legend .legend-sep{width:1px;height:14px;background:var(--border);margin:0 2px}
.status-legend i.prio-high{background:#e5aa22;border-radius:50%}
.status-legend i.prio-urgent{background:#d73832;border-radius:50%}

/* v1.0.6 – Tages-Hover mit tatsächlich verteilter Arbeitszeit */
.day-head[data-day]{cursor:default;transition:background .12s ease,box-shadow .12s ease}
.day-head[data-day]:hover{background:#fff2e8;box-shadow:inset 0 -3px 0 var(--accent)}
.day-tooltip{position:fixed;z-index:520;width:min(330px,calc(100vw - 28px));background:#161616;color:#fff;border:1px solid #3b3b3b;border-top:3px solid var(--accent);border-radius:9px;box-shadow:0 12px 30px rgba(0,0,0,.28);padding:12px 13px;pointer-events:none;font-size:12px}
.day-tip-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding-bottom:8px;border-bottom:1px solid #393939}
.day-tip-head>div:first-child{display:grid;gap:1px}.day-tip-head span{color:#b8b8b8;font-size:10px}
.day-tip-total{font-size:20px;font-weight:800;color:#ff6b00;white-space:nowrap}
.day-tip-sub{padding:7px 0;color:#bdbdbd;font-size:11px}
.day-tip-list{display:grid;gap:5px}.day-tip-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:5px 0;border-top:1px solid #292929}.day-tip-row:first-child{border-top:0}.day-tip-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-tip-row b{color:#ff8a3d;margin-right:5px}.day-tip-row strong{white-space:nowrap}.day-tip-empty{color:#bdbdbd;padding:5px 0}

/* v1.0.7 – reduzierte Planung, Drag & Drop, Aufgaben-Sync, Lack-Symbol */
.day-head{display:flex;align-items:center;justify-content:center;min-height:46px}
.day-head .capacity,.day-tooltip{display:none!important}
.appointment-bar.provisional{opacity:.43!important;background:#5e5e5e!important;border:1px dashed #aaa!important;border-left:5px solid #aaa!important;box-shadow:none!important}
.appointment-bar.provisional:hover{opacity:.62!important}
.appointment-bar{touch-action:none;user-select:none;cursor:grab}
.appointment-bar.dragging{cursor:grabbing;z-index:80;opacity:.78;outline:2px solid var(--accent);outline-offset:2px;transition:none!important}
.resize-handle{position:absolute;right:0;top:0;bottom:0;width:11px;cursor:ew-resize;z-index:5;background:linear-gradient(to left,rgba(255,255,255,.18),transparent)}
.resize-handle:after{content:"";position:absolute;right:3px;top:11px;width:2px;height:14px;border-left:1px solid rgba(255,255,255,.8);border-right:1px solid rgba(255,255,255,.8)}
.drag-hint{margin-left:auto;color:#8b8b86!important;font-style:italic}
.appointment-bar .phases{height:12px}
.appointment-bar .phase em{font-size:8px;letter-spacing:.04em}
.paint-icon{display:inline-flex;align-items:center;filter:saturate(.9)}
.rental-section-head{border-top:18px solid var(--bg);min-height:54px;background:#f5f5f1!important}
.rental-section-head .section-label{background:#efefea!important;padding-top:13px;padding-bottom:13px;border-top:1px solid #d5d5cf}
.rental-section-head .timeline{background-color:#f8f8f5;border-top:1px solid #d5d5cf;min-height:36px}
.rental-row{background:#fafaf7}
.rental-row .rental-name{background:#f7f7f3;border-left:3px solid #c9c9c3}
.rental-line{background-color:#fcfcfa}
.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.phase-select{grid-template-columns:auto 1fr!important;min-height:44px;background:#fbfbf9}
.phase-select:has(input:checked){border-color:#f4a06e;background:#fff4ed}
.nav-btn{display:flex;align-items:center;gap:8px}
.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#d73832;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:900;line-height:1}
.tasks-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.tasks-head h2{margin:0 0 3px}.tasks-head p{margin:0}
.task-section{margin-top:16px}.task-section h3{display:flex;align-items:center;gap:7px;margin:0 0 8px;font-size:14px}.task-section.in-progress-section{border-top:1px solid var(--border);padding-top:16px}.task-section.done-section{border-top:1px solid var(--border);padding-top:16px}
.count-chip{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:#ecece8;color:#555;font-size:10px}.count-chip.danger{background:#ffe7e4;color:#b2231d}.count-chip.warn{background:#fff0cf;color:#8c5a00}
.task-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.task-note{margin-top:5px;color:var(--muted);font-size:12px;white-space:pre-wrap}.row-item.task{align-items:flex-start}.row-item.task.done{opacity:.58;background:#fafafa}
.tip-times span{display:inline-flex;gap:5px;align-items:center}.tip-times b{min-width:auto}
@media(max-width:820px){.three-col{grid-template-columns:1fr}.drag-hint{display:none}.tasks-head{align-items:flex-start;flex-direction:column}.task-actions{width:100%;justify-content:flex-start}.row-item.task{flex-direction:column}}

/* v1.0.9 Drag-&-Drop-Schalter + Mobile */
.drag-toggle{font-weight:800;border-color:#d4d4d4;background:#fff}
.drag-toggle.active{background:var(--accent);border-color:var(--accent);color:#fff}
.appointment-bar{touch-action:pan-y;cursor:pointer}
body.drag-enabled .appointment-bar{touch-action:none;cursor:grab}
body.drag-enabled .appointment-bar.dragging{cursor:grabbing}
body:not(.drag-enabled) .resize-handle{opacity:.18;pointer-events:none;cursor:default}
body.drag-enabled .resize-handle{opacity:1;pointer-events:auto}
@media (max-width:720px){.drag-toggle{order:20}.toolbar .spacer{display:none}.planner-wrap{max-height:calc(100vh - 205px)}}

/* v1.0.10 – individuelle Wochenanzahl */
.week-stepper{display:flex;align-items:center;border:1px solid var(--border);border-radius:10px;background:#fff;overflow:hidden;height:40px}
.week-step-btn{border:0!important;border-radius:0!important;min-width:40px;height:38px;padding:0 12px!important;font-size:20px;line-height:1;background:#fff!important}
.week-step-btn:hover{background:var(--accent-soft)!important}
.week-count-label{display:flex;align-items:center;gap:7px;padding:0 9px;font-size:13px;color:var(--muted);border-left:1px solid var(--border);border-right:1px solid var(--border);height:100%}
.week-count-label input{width:58px!important;min-width:58px;border:0!important;border-radius:0!important;padding:5px 4px!important;text-align:center;font-weight:700;background:transparent!important;color:var(--text)}
@media(max-width:700px){.week-stepper{order:1}.date-label{order:4;width:100%}.date-label input{max-width:180px}.drag-toggle{order:5}}


/* v1.0.11 – Login an AM-App-Design angeglichen */
.login-body{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px;
  background:
    radial-gradient(circle at 82% 12%,rgba(255,90,0,.10),transparent 26%),
    linear-gradient(145deg,#121212 0%,#1b1b1b 56%,#0e0e0e 100%);
}
.login-body:before{display:none}
.login-shell{
  width:min(880px,100%);
  display:grid;
  grid-template-columns:minmax(280px,.88fr) minmax(360px,1.12fr);
  background:#fff;
  border:1px solid #2b2b2b;
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 28px 90px rgba(0,0,0,.38);
}
.login-brand-panel{
  position:relative;
  min-height:470px;
  padding:34px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:linear-gradient(180deg,#171717 0%,#202020 100%);
  color:#fff;
  border-right:1px solid #303030;
}
.login-brand-panel:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:6px;
  background:var(--accent);
}
.login-brand-lockup{display:flex;align-items:center;gap:14px}
.login-mark{width:58px!important;height:58px!important;font-size:17px;border-width:3px!important;flex:0 0 auto}
.login-brand-copy strong{display:block;color:#fff;font-size:17px;letter-spacing:.08em}
.login-brand-copy small{display:block;color:#aaa9a5;margin-top:5px;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.login-brand-copyline{color:#9a9a96;font-size:13px;letter-spacing:.04em;padding-bottom:16px}
.login-form-panel{
  position:relative;
  padding:42px 44px 30px;
  background:#fff;
}
.login-form-panel:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:4px;
  background:var(--accent);
}
.login-form-head{margin-bottom:24px}
.login-kicker{display:inline-block;margin-bottom:8px;color:var(--accent);font-size:10px;font-weight:850;letter-spacing:.18em}
.login-form-head h1{margin:0 0 7px;font-size:30px;letter-spacing:-.035em;color:#171717}
.login-form-head p{margin:0;font-size:13px}
.login-form{gap:15px;margin-top:0!important}
.login-form label{font-size:12px;font-weight:700;color:#3e3e3a;letter-spacing:.015em}
.login-form input{height:46px;border-radius:7px;background:#fafaf8;border-color:#d6d6d0;padding:0 13px}
.login-form input:focus{background:#fff}
.login-submit{height:46px;margin-top:3px;font-weight:800;letter-spacing:.01em}
.login-alert{margin:0 0 16px}
.login-footer-note{margin-top:28px;padding-top:16px;border-top:1px solid #ecece7;color:#979792;font-size:11px}
.login-card{display:none}
@media(max-width:720px){
  .login-body{padding:14px;background:#151515}
  .login-shell{grid-template-columns:1fr;width:min(460px,100%);border-radius:10px}
  .login-brand-panel{min-height:auto;padding:20px 22px;border-right:0;border-bottom:1px solid #303030}
  .login-brand-panel:after{height:4px}
  .login-brand-copyline{display:none}
  .login-mark{width:44px!important;height:44px!important;font-size:13px;border-width:2px!important}
  .login-brand-copy strong{font-size:14px}
  .login-brand-copy small{font-size:9px}
  .login-form-panel{padding:28px 22px 24px}
  .login-form-panel:before{display:none}
  .login-form-head h1{font-size:26px}
}

/* v1.0.14 Ersatzwagen-Verfügbarkeit */
.rental-availability{display:grid;gap:10px;padding:12px;border:1px solid var(--line,#ddd);border-radius:12px;background:#fafafa}
.availability-group{display:grid;gap:6px}
.availability-group>strong{font-size:.86rem}
.availability-chips{display:flex;flex-wrap:wrap;gap:7px}
.availability-chip{display:inline-flex;align-items:center;gap:4px;padding:7px 10px;border-radius:999px;font-size:.82rem;font-weight:700;border:1px solid transparent}
button.availability-chip{cursor:pointer}
.availability-chip.available{background:#eaf7ee;color:#176b35;border-color:#9bd2aa}
.availability-chip.available:hover{background:#dff2e5}
.availability-chip.busy{background:#fdeaea;color:#a22626;border-color:#efaaaa}
.availability-empty{font-size:.82rem;color:#777}
.availability-error{font-size:.82rem;color:#a22626}


/* v1.0.15 configurable planner colors */
:root{
  --status-planned:#292929;
  --status-confirmed:#252525;
  --status-in-progress:#744713;
  --status-ready:#255942;
  --status-provisional:#686868;
  --priority-high:#e5aa22;
  --priority-urgent:#d73832;
}
.appointment-bar.planned{background:var(--status-planned)}
.appointment-bar.confirmed{background:var(--status-confirmed)}
.appointment-bar.in-progress{background:var(--status-in-progress)}
.appointment-bar.ready{background:var(--status-ready)}
.appointment-bar.provisional{background:var(--status-provisional)}
.status-legend i.planned{background:var(--status-planned)}
.status-legend i.confirmed{background:var(--status-confirmed)}
.status-legend i.in-progress{background:var(--status-in-progress)}
.status-legend i.ready{background:var(--status-ready)}
.status-legend i.provisional{background:var(--status-provisional)}
.appointment-bar.priority-high{box-shadow:inset 0 0 0 2px var(--priority-high),0 1px 2px rgba(0,0,0,.12)}
.appointment-bar.priority-urgent{box-shadow:inset 0 0 0 3px var(--priority-urgent),0 1px 3px rgba(143,20,16,.22)}
.appointment-bar.priority-high.parts-warn{box-shadow:inset 0 0 0 2px var(--priority-high),inset 0 -3px 0 #d9982d,0 1px 2px rgba(0,0,0,.12)}
.appointment-bar.priority-urgent.parts-warn{box-shadow:inset 0 0 0 3px var(--priority-urgent),inset 0 -3px 0 #d9982d,0 1px 3px rgba(143,20,16,.22)}
.priority-tag.priority-high,.priority-pill.priority-high{background:var(--priority-high)}
.priority-tag.priority-urgent,.priority-pill.priority-urgent{background:var(--priority-urgent)}
.status-legend i.prio-high{background:var(--priority-high)}
.status-legend i.prio-urgent{background:var(--priority-urgent)}
.color-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.color-setting{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);border-radius:10px;padding:9px 10px;background:#fff}
.color-setting span{font-size:13px;font-weight:650}
.color-setting input[type=color]{width:48px;height:34px;padding:2px;border-radius:8px;cursor:pointer}
@media(max-width:720px){.color-settings-grid{grid-template-columns:1fr}}

/* v1.0.16 – Premium Login UX */
.login-v116{
  --login-orange:#ff6a00;
  --login-orange-2:#ff8a00;
  min-height:100vh;
  margin:0;
  padding:clamp(18px,3vw,42px);
  display:grid;
  place-items:center;
  overflow-x:hidden;
  color:#f7f7f7;
  background:
    radial-gradient(circle at 78% 10%,rgba(255,106,0,.13),transparent 26%),
    radial-gradient(circle at 17% 82%,rgba(255,106,0,.07),transparent 28%),
    linear-gradient(135deg,#090a0c 0%,#121418 48%,#0a0b0d 100%);
}
.login-v116::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(110deg,transparent 0 17%,rgba(255,255,255,.018) 17.1% 17.3%,transparent 17.4% 100%),
    repeating-linear-gradient(0deg,rgba(255,255,255,.012) 0 1px,transparent 1px 44px);
  opacity:.65;
}
.login-stage{
  position:relative;
  z-index:1;
  width:min(1120px,100%);
  display:grid;
  grid-template-columns:minmax(280px,.82fr) minmax(430px,1.18fr);
  gap:clamp(30px,5vw,72px);
  align-items:center;
  padding:18px 0 0;
}
.login-stage::before{
  content:"";
  position:absolute;
  left:25%;
  top:-80px;
  width:4px;
  height:560px;
  border-radius:99px;
  background:linear-gradient(180deg,transparent,var(--login-orange) 17%,var(--login-orange-2) 72%,transparent);
  transform:rotate(11deg);
  box-shadow:0 0 28px rgba(255,106,0,.22);
  pointer-events:none;
}
.login-showcase{
  min-height:560px;
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:22px 8px 34px 6px;
}
.login-watermark{
  position:absolute;
  left:-74px;
  top:58px;
  font-size:clamp(120px,17vw,210px);
  line-height:1;
  font-weight:900;
  letter-spacing:-.1em;
  color:rgba(255,255,255,.025);
  user-select:none;
}
.login-showcase-brand{position:relative;display:flex;align-items:center;gap:16px;z-index:1}
.login-am-emblem{
  width:72px;height:72px;border:4px solid var(--login-orange);border-radius:50%;
  display:grid;place-items:center;color:var(--login-orange);font-size:22px;font-style:italic;font-weight:950;letter-spacing:-.08em;
  box-shadow:0 0 0 1px rgba(255,106,0,.12),0 0 28px rgba(255,106,0,.08);
}
.login-company{font-size:clamp(18px,2vw,25px);font-weight:850;letter-spacing:.16em;color:#fff;white-space:nowrap}
.login-company span{color:var(--login-orange)}
.login-product{display:flex;align-items:center;gap:9px;margin-top:8px;color:var(--login-orange);font-size:12px;font-weight:850;letter-spacing:.32em}
.login-product::before,.login-product::after{content:"";height:2px;width:36px;background:var(--login-orange);border-radius:9px}
.login-feature-list{position:relative;z-index:1;display:grid;gap:22px;max-width:300px}
.login-feature{display:grid;grid-template-columns:34px 1fr;gap:13px;align-items:start}
.login-feature-icon{width:30px;height:30px;color:var(--login-orange);display:grid;place-items:center}
.login-feature-icon svg,.login-mini-icon svg,.login-field-icon svg,.login-password-toggle svg,.login-submit-v116 svg,.login-shield svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.login-feature strong{display:block;color:#fff;font-size:14px;font-weight:700}
.login-feature small{display:block;color:#93989f;font-size:12px;margin-top:3px;line-height:1.4}
.login-card-v116{
  position:relative;
  width:100%;
  max-width:650px;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  color:#181b20;
  border:1px solid rgba(255,255,255,.13);
  box-shadow:0 32px 90px rgba(0,0,0,.48),0 0 0 1px rgba(0,0,0,.05);
}
.login-card-head{
  position:relative;
  text-align:center;
  padding:34px 42px 31px;
  color:#fff;
  background:linear-gradient(145deg,#181a1f 0%,#111216 100%);
}
.login-card-head::after{
  content:"";position:absolute;inset:auto 0 0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,106,0,.75),transparent);
}
.login-mini-icon{
  width:52px;height:52px;margin:0 auto 17px;padding:12px;border:1px solid #43464d;border-radius:14px;
  color:var(--login-orange);background:#15171b;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);
}
.login-card-head h1{margin:0;color:#fff;font-size:clamp(26px,3vw,36px);line-height:1.1;letter-spacing:-.035em;font-weight:800}
.login-card-head p{max-width:450px;margin:13px auto 0;color:#aeb2b9;font-size:14px;line-height:1.55}
.login-card-formarea{padding:36px 48px 42px;background:linear-gradient(180deg,#fff 0%,#fbfbfc 100%)}
.login-form-v116{display:grid;gap:10px}
.login-form-v116>label{margin-top:5px;color:#292c31;font-size:13px;font-weight:750}
.login-field-wrap{
  height:58px;display:grid;grid-template-columns:54px 1fr;align-items:center;
  border:1px solid #d8dbe0;border-radius:12px;background:#fff;overflow:hidden;
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.login-field-wrap:focus-within{border-color:var(--login-orange);box-shadow:0 0 0 4px rgba(255,106,0,.11)}
.login-field-icon{width:21px;height:21px;margin:auto;color:var(--login-orange)}
.login-field-wrap input{
  height:100%;border:0!important;border-left:1px solid #eceef1!important;border-radius:0!important;background:transparent!important;
  padding:0 15px!important;color:#373b43!important;font-size:15px;outline:0!important;box-shadow:none!important;
}
.login-field-wrap input:focus{outline:0!important;box-shadow:none!important}
.login-password-wrap{grid-template-columns:54px 1fr 52px}
.login-password-toggle{
  width:52px;height:100%;display:grid;place-items:center;border:0;border-left:1px solid #eceef1;background:transparent;color:#656b74;padding:15px;
}
.login-password-toggle:hover{color:var(--login-orange);background:#fff8f3}
.login-password-toggle .eye-closed{display:none}
.login-password-toggle[aria-pressed="true"] .eye-open{display:none}
.login-password-toggle[aria-pressed="true"] .eye-closed{display:block}
.login-submit-v116{
  margin-top:14px;height:58px;border:0;border-radius:12px;padding:0 19px 0 24px;
  display:grid;grid-template-columns:1fr 26px;align-items:center;
  background:linear-gradient(90deg,var(--login-orange) 0%,var(--login-orange-2) 52%,#ff6500 100%);
  color:#fff;font-size:16px;font-weight:850;box-shadow:0 12px 24px rgba(255,106,0,.22);
  transition:transform .16s ease,filter .16s ease,box-shadow .16s ease;
}
.login-submit-v116:hover{filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 16px 30px rgba(255,106,0,.27)}
.login-submit-v116:active{transform:translateY(0)}
.login-submit-v116 svg{width:25px;height:25px}
.login-alert{margin:0 0 18px}
.login-stage-footer{
  grid-column:1/-1;
  display:flex;justify-content:center;align-items:center;gap:11px;
  padding-top:22px;margin-top:0;border-top:1px solid rgba(255,255,255,.08);color:#bcc0c6;
}
.login-shield{width:25px;height:25px;color:var(--login-orange);flex:0 0 auto}
.login-stage-footer strong{display:block;font-size:13px;font-weight:600;color:#d6d8dc}
.login-stage-footer small{display:block;margin-top:3px;font-size:11px;color:#6f747c}
@media(max-width:900px){
  .login-stage{grid-template-columns:1fr;width:min(620px,100%);gap:20px;padding:0}
  .login-stage::before{display:none}
  .login-showcase{min-height:auto;padding:0;display:block}
  .login-showcase-brand{justify-content:center;margin-bottom:18px}
  .login-feature-list,.login-watermark{display:none}
  .login-card-v116{max-width:none}
  .login-stage-footer{margin-top:4px}
}
@media(max-width:600px){
  .login-v116{padding:14px;place-items:start center;overflow-y:auto}
  .login-stage{margin:auto 0}
  .login-am-emblem{width:52px;height:52px;border-width:3px;font-size:16px}
  .login-company{font-size:15px;letter-spacing:.11em}
  .login-product{font-size:9px;letter-spacing:.22em;margin-top:5px}
  .login-product::before,.login-product::after{width:22px}
  .login-card-v116{border-radius:16px}
  .login-card-head{padding:25px 22px 24px}
  .login-mini-icon{width:45px;height:45px;padding:10px;border-radius:12px;margin-bottom:14px}
  .login-card-head h1{font-size:27px}
  .login-card-head p{font-size:13px;margin-top:10px}
  .login-card-formarea{padding:25px 20px 28px}
  .login-field-wrap{height:54px;border-radius:10px;grid-template-columns:48px 1fr}
  .login-password-wrap{grid-template-columns:48px 1fr 48px}
  .login-password-toggle{width:48px;padding:14px}
  .login-submit-v116{height:54px;border-radius:10px}
  .login-stage-footer{padding:16px 8px 4px;text-align:left}
}
@media(max-width:380px){
  .login-company{font-size:13px}
  .login-product::before,.login-product::after{display:none}
  .login-card-head h1{font-size:24px}
  .login-card-formarea{padding-left:16px;padding-right:16px}
}

/* v1.0.17 Backupverwaltung */
.backup-card .tasks-head{align-items:flex-start;gap:16px}
.backup-status{display:flex;flex-direction:column;gap:4px;margin:14px 0 16px;padding:12px 14px;border-radius:12px;border:1px solid var(--line,#e5e7eb);background:#f7f8f9}
.backup-status.safe{border-color:#cce7d7;background:#f1faf5}
.backup-status.dirty{border-color:#f2c0bd;background:#fff5f4}
.backup-status strong{font-size:14px}
.backup-status span{font-size:12px;color:var(--muted,#6b7280)}
.backup-row{gap:14px}
.backup-row .task-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.backup-card button[disabled]{opacity:.55;cursor:not-allowed}
@media(max-width:700px){
  .backup-card .tasks-head{display:grid;grid-template-columns:1fr}
  .backup-card .tasks-head .btn{width:100%}
  .backup-row{align-items:flex-start;flex-direction:column}
  .backup-row .task-actions{width:100%}
  .backup-row .task-actions .btn{flex:1}
}

/* v1.0.19 – Drag & Drop für Ersatzwagenbuchungen */
.rental-bar{position:absolute}
.rental-main{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:10px}
.rental-resize-handle{position:absolute;right:0;top:0;bottom:0;width:11px;cursor:ew-resize;z-index:6;background:linear-gradient(to left,rgba(211,96,26,.18),transparent)}
.rental-resize-handle:after{content:"";position:absolute;right:3px;top:8px;width:2px;height:12px;border-left:1px solid rgba(126,54,11,.75);border-right:1px solid rgba(126,54,11,.75)}
.rental-bar.dragging{cursor:grabbing;z-index:85;opacity:.82;outline:2px solid var(--accent);outline-offset:2px;transition:none!important}
body.drag-enabled .rental-bar{touch-action:none;cursor:grab}
body.drag-enabled .rental-bar.dragging{cursor:grabbing}
body:not(.drag-enabled) .rental-resize-handle{opacity:.18;pointer-events:none;cursor:default}
body.drag-enabled .rental-resize-handle{opacity:1;pointer-events:auto}
/* v1.0.20 – 15-Minuten Drag & Drop */
.drag-time-preview{position:fixed;z-index:9999;pointer-events:none;max-width:min(360px,calc(100vw - 16px));padding:8px 11px;border-radius:9px;background:#171717;color:#fff;border:1px solid rgba(255,122,0,.7);box-shadow:0 8px 24px rgba(0,0,0,.28);font-size:12px;font-weight:700;opacity:0;transform:translateY(3px);transition:opacity .08s ease,transform .08s ease}.drag-time-preview.show{opacity:1;transform:translateY(0)}
.rental-row.drop-target{outline:2px solid var(--am-orange,#ff7900);outline-offset:-2px;background:rgba(255,121,0,.08)}
.drag-enabled .appointment-bar,.drag-enabled .rental-bar{touch-action:none}.drag-enabled .appointment-bar.dragging,.drag-enabled .rental-bar.dragging{z-index:60;opacity:.92;box-shadow:0 10px 28px rgba(0,0,0,.25)}

/* v1.0.21 – Login exakt an die gewünschte AM-Dellentechnik-Vorlage angeglichen */
body.login-v121{
  --login-orange:#ff7300;
  --login-orange-2:#ff8a00;
  --login-bg:#090b0f;
  min-height:100vh;
  margin:0;
  padding:clamp(18px,2.5vw,34px);
  display:grid;
  place-items:center;
  overflow-x:hidden;
  color:#f6f7f8;
  background:
    radial-gradient(ellipse at 22% 52%,rgba(61,65,72,.20) 0%,rgba(20,22,26,.10) 33%,transparent 55%),
    radial-gradient(circle at 72% 13%,rgba(255,115,0,.06),transparent 27%),
    linear-gradient(135deg,#080a0d 0%,#111419 48%,#08090c 100%);
}
body.login-v121::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.46;
  background:
    linear-gradient(164deg,transparent 0 21%,rgba(255,255,255,.024) 21.15% 21.35%,transparent 21.5% 100%),
    linear-gradient(16deg,transparent 0 77%,rgba(255,255,255,.018) 77.1% 77.3%,transparent 77.5% 100%),
    repeating-linear-gradient(90deg,transparent 0 108px,rgba(255,255,255,.014) 109px 111px),
    repeating-linear-gradient(0deg,transparent 0 71px,rgba(255,255,255,.011) 72px 73px);
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.92),rgba(0,0,0,.35));
}
body.login-v121::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:radial-gradient(ellipse at center,transparent 38%,rgba(0,0,0,.42) 100%);
}
.login-v121-stage{
  position:relative;
  z-index:1;
  width:min(1100px,100%);
  min-height:min(890px,calc(100vh - 36px));
  display:grid;
  grid-template-rows:auto 1fr auto;
  align-items:center;
}
.login-v121-brand{
  display:grid;
  justify-items:center;
  gap:10px;
  padding-top:2px;
  padding-bottom:14px;
  text-align:center;
}
.login-v121-logo{
  width:82px;
  height:82px;
  display:grid;
  place-items:center;
  border:4px solid var(--login-orange);
  border-radius:50%;
  color:var(--login-orange);
  background:rgba(7,9,12,.72);
  box-shadow:0 0 0 1px rgba(255,115,0,.08),0 0 28px rgba(255,115,0,.10);
}
.login-v121-logo span{
  transform:skew(-8deg);
  font-size:27px;
  font-weight:950;
  letter-spacing:-.08em;
}
.login-v121-company{
  color:#f4f5f7;
  font-size:clamp(20px,2.5vw,31px);
  font-weight:830;
  letter-spacing:.16em;
  line-height:1;
}
.login-v121-company span{color:var(--login-orange)}
.login-v121-product{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  color:var(--login-orange);
  font-size:clamp(10px,1.1vw,13px);
  letter-spacing:.33em;
}
.login-v121-product i{display:block;width:42px;height:2px;background:var(--login-orange);border-radius:10px}
.login-v121-product strong{font-weight:850}
.login-v121-content{
  position:relative;
  width:100%;
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(480px,1.2fr);
  gap:clamp(34px,6vw,84px);
  align-items:center;
  padding:8px 0 24px;
}
.login-v121-aside{
  position:relative;
  align-self:stretch;
  min-height:560px;
  display:flex;
  align-items:flex-end;
  padding:0 0 64px 16px;
  overflow:visible;
}
.login-v121-watermark{
  position:absolute;
  z-index:-1;
  left:-105px;
  top:4px;
  font-size:230px;
  font-weight:950;
  letter-spacing:-.12em;
  line-height:1;
  color:rgba(255,255,255,.022);
  transform:skew(-7deg);
  user-select:none;
}
.login-v121-divider{
  position:absolute;
  z-index:-1;
  left:43%;
  top:-210px;
  width:150px;
  height:880px;
  border-right:6px solid var(--login-orange);
  border-radius:50%;
  transform:rotate(8deg);
  filter:drop-shadow(0 0 8px rgba(255,115,0,.12));
  opacity:.98;
}
.login-v121-features{display:grid;gap:27px;position:relative;z-index:1}
.login-v121-feature{display:grid;grid-template-columns:35px minmax(0,1fr);gap:14px;align-items:start}
.login-v121-feature-icon{width:31px;height:31px;color:var(--login-orange);display:grid;place-items:center}
.login-v121-feature-icon svg,.login-v121-field-icon svg,.login-v121-password-toggle svg,.login-v121-submit svg,.login-v121-forgot svg,.login-v121-shield svg{
  width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round
}
.login-v121-feature strong{display:block;color:#f7f7f8;font-size:15px;font-weight:650;line-height:1.25}
.login-v121-feature small{display:block;margin-top:4px;color:#92979f;font-size:12px;line-height:1.35}
.login-v121-card{
  position:relative;
  width:100%;
  max-width:650px;
  justify-self:end;
  border:1px solid rgba(255,255,255,.16);
  border-radius:22px;
  background:linear-gradient(145deg,rgba(30,32,37,.95) 0%,rgba(16,18,22,.96) 100%);
  box-shadow:0 34px 86px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.025);
  backdrop-filter:blur(12px);
  overflow:hidden;
}
.login-v121-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 45% 10%,rgba(255,255,255,.025),transparent 38%);
}
.login-v121-card-inner{position:relative;z-index:1;padding:58px 68px 54px}
.login-v121-card h1{
  margin:0;
  color:#fff;
  text-align:center;
  font-size:clamp(29px,3.4vw,39px);
  line-height:1.08;
  letter-spacing:-.035em;
  font-weight:800;
}
.login-v121-subtitle{
  max-width:465px;
  margin:19px auto 42px;
  color:#adb2ba;
  text-align:center;
  font-size:15px;
  line-height:1.55;
}
.login-v121-alert{margin:-18px 0 22px;background:rgba(192,57,43,.17)!important;color:#ffb5aa!important;border-color:rgba(255,120,100,.3)!important}
.login-v121-form{display:grid;gap:11px}
.login-v121-form>label{margin-top:4px;color:#fff;font-size:14px;font-weight:650}
.login-v121-field{
  height:64px;
  display:grid;
  grid-template-columns:64px 1fr;
  align-items:center;
  overflow:hidden;
  border:1px solid #41454d;
  border-radius:11px;
  background:rgba(23,25,30,.74);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.login-v121-field:focus-within{
  border-color:var(--login-orange);
  background:rgba(26,28,33,.94);
  box-shadow:0 0 0 4px rgba(255,115,0,.10);
}
.login-v121-field-icon{width:23px;height:23px;margin:auto;color:var(--login-orange)}
.login-v121-field input{
  width:100%;height:100%;
  border:0!important;
  border-left:1px solid rgba(255,255,255,.07)!important;
  border-radius:0!important;
  padding:0 18px!important;
  background:transparent!important;
  color:#eef0f3!important;
  caret-color:var(--login-orange);
  box-shadow:none!important;
  outline:none!important;
  font-size:15px;
}
.login-v121-field input::placeholder{color:#727780;opacity:1}
.login-v121-password-field{grid-template-columns:64px 1fr 60px}
.login-v121-password-toggle{
  width:60px;height:100%;border:0;border-left:1px solid rgba(255,255,255,.07);background:transparent;color:#d7d9dd;padding:18px;
  display:grid;place-items:center;
}
.login-v121-password-toggle:hover{background:rgba(255,255,255,.035);color:var(--login-orange)}
.login-v121-password-toggle .eye-closed{display:none}
.login-v121-password-toggle[aria-pressed="true"] .eye-open{display:none}
.login-v121-password-toggle[aria-pressed="true"] .eye-closed{display:block}
.login-v121-submit{
  margin-top:18px;
  height:64px;
  border:0;
  border-radius:11px;
  padding:0 22px;
  display:grid;
  grid-template-columns:1fr 28px;
  align-items:center;
  color:#fff;
  background:linear-gradient(90deg,#ff8a00 0%,#ff7200 55%,#ff6100 100%);
  box-shadow:0 14px 30px rgba(255,104,0,.22);
  font-size:17px;
  font-weight:800;
  transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}
.login-v121-submit:hover{transform:translateY(-1px);filter:brightness(1.045);box-shadow:0 17px 34px rgba(255,104,0,.28)}
.login-v121-submit:active{transform:translateY(0)}
.login-v121-submit svg{width:27px;height:27px}
.login-v121-forgot{
  justify-self:center;
  margin-top:17px;
  border:0;
  background:transparent;
  color:var(--login-orange);
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:5px 8px;
  font-size:13px;
}
.login-v121-forgot:hover{color:#ff9638}
.login-v121-forgot svg{width:17px;height:17px}
.login-v121-forgot-help{margin:0 auto;color:#8f949c;font-size:11px;line-height:1.45;text-align:center;max-width:360px}
.login-v121-footer{
  width:100%;
  min-height:82px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  border-top:1px solid rgba(255,255,255,.08);
  color:#b9bdc4;
  text-align:left;
}
.login-v121-shield{width:25px;height:25px;color:var(--login-orange);flex:0 0 auto}
.login-v121-footer strong{display:block;color:#d7d9dd;font-size:13px;font-weight:600}
.login-v121-footer small{display:block;margin-top:4px;color:#6f747c;font-size:11px}
@media(max-width:900px){
  body.login-v121{padding:16px;overflow-y:auto}
  .login-v121-stage{min-height:auto;width:min(620px,100%);grid-template-rows:auto auto auto;gap:16px}
  .login-v121-brand{padding:8px 0 5px}
  .login-v121-content{grid-template-columns:1fr;padding:0;gap:0}
  .login-v121-aside{display:none}
  .login-v121-card{justify-self:stretch;max-width:none}
  .login-v121-footer{min-height:68px;margin-top:4px}
}
@media(max-width:600px){
  body.login-v121{place-items:start center;padding:14px}
  .login-v121-logo{width:58px;height:58px;border-width:3px}
  .login-v121-logo span{font-size:19px}
  .login-v121-company{font-size:16px;letter-spacing:.12em}
  .login-v121-product{font-size:9px;letter-spacing:.24em;gap:8px}
  .login-v121-product i{width:25px}
  .login-v121-card{border-radius:16px}
  .login-v121-card-inner{padding:34px 22px 30px}
  .login-v121-card h1{font-size:29px}
  .login-v121-subtitle{font-size:13px;margin:13px auto 28px}
  .login-v121-field{height:56px;grid-template-columns:50px 1fr;border-radius:10px}
  .login-v121-password-field{grid-template-columns:50px 1fr 50px}
  .login-v121-password-toggle{width:50px;padding:14px}
  .login-v121-field-icon{width:20px;height:20px}
  .login-v121-submit{height:56px;border-radius:10px;margin-top:13px;font-size:16px}
  .login-v121-footer{padding:12px 4px;text-align:left}
}
@media(max-width:390px){
  .login-v121-company{font-size:14px}
  .login-v121-product i{display:none}
  .login-v121-card-inner{padding-left:17px;padding-right:17px}
  .login-v121-card h1{font-size:26px}
}

/* v1.0.22 – kompakte Terminzeit-Auswahl */
.datetime-composite{display:block}
.datetime-parts{display:grid;grid-template-columns:minmax(145px,1fr) 82px 12px 82px;align-items:center;gap:8px;margin-top:7px}
.datetime-parts input[type="date"],.datetime-parts select{width:100%;min-width:0}
.datetime-parts select{text-align:center;font-variant-numeric:tabular-nums}
.time-separator{text-align:center;font-weight:800;color:var(--muted);font-size:18px}
.field-help{margin:-3px 0 16px;color:var(--muted);font-size:12px}
@media(max-width:640px){
  .datetime-form-grid{grid-template-columns:1fr}
  .datetime-parts{grid-template-columns:minmax(135px,1fr) 72px 10px 72px;gap:6px}
}
@media(max-width:390px){
  .datetime-parts{grid-template-columns:1fr 66px 8px 66px}
}


/* v1.0.23 – zentrale Plantafel-Suche, Treffer-Highlight und Dialogkorrekturen */
.topbar{display:grid;grid-template-columns:minmax(210px,1fr) minmax(300px,620px) minmax(180px,1fr);align-items:center}
.topbar-title{min-width:0}.top-actions{justify-self:end}.planner-search{position:relative;width:100%;justify-self:center}.planner-search>input{height:44px;padding:10px 42px 10px 42px;border-radius:12px;background:#fff;border:1px solid #d4d7db;box-shadow:0 2px 10px rgba(20,20,20,.04);transition:border-color .15s,box-shadow .15s}.planner-search>input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 4px rgba(255,102,0,.12)}
.planner-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--accent);z-index:2;pointer-events:none}.planner-search-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.planner-search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#777;font-size:23px;width:32px;height:32px;border-radius:8px;z-index:2}.planner-search-clear:hover{background:#f2f2f2;color:#222}
.planner-search-results{position:absolute;z-index:900;top:calc(100% + 7px);left:0;right:0;max-height:min(480px,70vh);overflow:auto;background:#fff;border:1px solid #d9d9d9;border-radius:12px;box-shadow:0 18px 45px rgba(0,0,0,.18);padding:6px}.planner-search-result{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;width:100%;border:0;background:#fff;text-align:left;padding:10px;border-radius:8px;color:var(--text)}.planner-search-result:hover,.planner-search-result:focus{background:#fff3ea;outline:0}.search-result-plate{font-weight:850;background:#1f1f1f;color:#fff;border-left:3px solid var(--accent);border-radius:5px;padding:5px 7px;white-space:nowrap}.search-result-copy{display:grid;gap:2px;min-width:0}.search-result-copy strong,.planner-search-result>span:last-child strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-copy small,.planner-search-result>span:last-child small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-icon{font-size:20px}.planner-search-empty{padding:14px;color:var(--muted);text-align:center}.planner-search-empty.error{color:var(--danger)}
@keyframes searchPulse{0%{box-shadow:0 0 0 0 rgba(255,102,0,.95),0 0 24px rgba(255,102,0,.55)}50%{box-shadow:0 0 0 7px rgba(255,102,0,.16),0 0 34px rgba(255,102,0,.8)}100%{box-shadow:0 0 0 0 rgba(255,102,0,.9),0 0 24px rgba(255,102,0,.5)}}
.appointment-bar.search-hit{z-index:80!important;outline:3px solid #ff6b00;outline-offset:3px;animation:searchPulse .9s ease-in-out 4}
@keyframes searchDayPulse{0%,100%{background:#fff1e5;box-shadow:inset 0 -4px 0 #ff6b00}50%{background:#ffd6b7;box-shadow:inset 0 -6px 0 #ff6b00}}
.day-head.search-day-hit{animation:searchDayPulse .8s ease-in-out 4}
.quick-modal{width:min(620px,100%)}.quick-modal #quick-form-body>.form-grid{margin:0}.quick-modal .stack>label{display:grid;gap:6px;font-size:13px;color:#46505c}
@media(max-width:900px){.topbar{grid-template-columns:1fr auto;align-items:start}.planner-search{grid-column:1/-1;grid-row:2;margin-top:10px}.top-actions{grid-column:2;grid-row:1}.topbar-title{grid-column:1;grid-row:1}}
@media(max-width:560px){.topbar{grid-template-columns:1fr}.top-actions{grid-column:1;grid-row:2;justify-self:stretch}.top-actions .btn{width:100%}.planner-search{grid-column:1;grid-row:3;margin-top:2px}.planner-search>input{font-size:16px}}

/* v1.0.24 – Login UX exakt an AM-Dellentechnik-Vorlage angenähert */
body.login-v124{
  --login-orange:#ff7600;
  --login-orange-light:#ff9300;
  --login-black:#080a0d;
  --login-card:#111419;
  margin:0;
  min-height:100vh;
  color:#f8f8f9;
  background:#080a0d url('login-workshop-bg.svg') center/cover fixed no-repeat;
  overflow-x:hidden;
}
body.login-v124::before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(3,4,6,.87) 0%,rgba(5,7,10,.62) 28%,rgba(5,7,10,.52) 56%,rgba(2,3,5,.83) 100%),
    radial-gradient(ellipse at 58% 44%,rgba(35,38,44,.12) 0%,rgba(5,7,10,.24) 54%,rgba(0,0,0,.64) 100%);
}
body.login-v124::after{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  box-shadow:inset 0 0 210px rgba(0,0,0,.78);
}
.login-v124-stage{
  position:relative;z-index:1;
  width:min(1180px,calc(100% - 38px));
  min-height:100vh;
  margin:0 auto;
  padding:clamp(26px,3.4vh,46px) 0 18px;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  align-items:center;
}
.login-v124-brand{
  align-self:start;
  display:flex;flex-direction:column;align-items:center;text-align:center;
  gap:9px;
  padding:0 20px 16px;
}
.login-v124-logo{
  width:94px;height:94px;border:5px solid var(--login-orange);border-radius:50%;
  display:grid;place-items:center;color:var(--login-orange);
  background:rgba(9,11,14,.91);
  box-shadow:0 0 0 1px rgba(255,118,0,.12),0 0 30px rgba(255,118,0,.10);
}
.login-v124-logo span{font-size:32px;font-weight:950;font-style:italic;letter-spacing:-.10em;transform:translateX(-2px) skew(-8deg)}
.login-v124-company{font-size:clamp(22px,2.45vw,34px);line-height:1;font-weight:800;letter-spacing:.145em;color:#f5f6f7;white-space:nowrap}
.login-v124-company span{color:var(--login-orange)}
.login-v124-product{display:flex;align-items:center;justify-content:center;gap:13px;color:var(--login-orange);font-size:clamp(10px,1vw,13px);letter-spacing:.34em}
.login-v124-product i{width:43px;height:2px;border-radius:5px;background:var(--login-orange)}
.login-v124-product strong{font-weight:850}
.login-v124-content{
  position:relative;
  display:grid;
  grid-template-columns:minmax(235px,300px) minmax(520px,690px);
  justify-content:center;
  align-items:center;
  gap:clamp(34px,5.5vw,74px);
  padding:8px 0 18px;
}
.login-v124-aside{
  position:relative;
  align-self:stretch;
  min-height:610px;
  display:flex;align-items:flex-end;
  padding:0 0 62px 6px;
}
.login-v124-watermark{
  position:absolute;left:-118px;top:12px;z-index:-1;
  font-size:238px;line-height:1;font-weight:950;font-style:italic;letter-spacing:-.12em;
  color:rgba(255,255,255,.026);transform:skew(-8deg);user-select:none;
}
.login-v124-divider{
  position:absolute;z-index:-1;
  left:50%;top:-220px;width:175px;height:920px;
  border-right:7px solid var(--login-orange);border-radius:50%;
  transform:translateX(-28%) rotate(7deg);
  filter:drop-shadow(0 0 7px rgba(255,118,0,.12));
}
.login-v124-features{display:grid;gap:31px;position:relative;z-index:2;width:100%}
.login-v124-feature{display:grid;grid-template-columns:35px 1fr;gap:14px;align-items:start}
.login-v124-feature-icon{width:32px;height:32px;color:var(--login-orange);display:grid;place-items:center}
.login-v124-feature-icon svg,.login-v124-field-icon svg,.login-v124-password-toggle svg,.login-v124-submit svg,.login-v124-forgot svg,.login-v124-shield svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.login-v124-feature strong{display:block;color:#f5f6f7;font-size:15px;font-weight:650;line-height:1.2}
.login-v124-feature small{display:block;margin-top:5px;color:#969ba2;font-size:12px;line-height:1.35}
.login-v124-card{
  position:relative;
  width:100%;
  border:1px solid rgba(255,255,255,.23);
  border-radius:20px;
  overflow:hidden;
  background:linear-gradient(150deg,rgba(30,32,37,.975) 0%,rgba(14,16,20,.985) 72%);
  box-shadow:0 36px 90px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.025);
  backdrop-filter:blur(16px);
}
.login-v124-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 48% 0%,rgba(255,255,255,.035),transparent 42%)}
.login-v124-card-inner{position:relative;z-index:1;padding:60px 68px 56px}
.login-v124-card h1{margin:0;text-align:center;color:#fff;font-size:clamp(31px,3.15vw,41px);line-height:1.06;font-weight:800;letter-spacing:-.035em}
.login-v124-subtitle{max-width:470px;margin:19px auto 44px;text-align:center;color:#b0b4bb;font-size:15px;line-height:1.58}
.login-v124-alert{margin:-17px 0 21px;background:rgba(192,57,43,.17)!important;color:#ffb7ad!important;border-color:rgba(255,125,108,.32)!important}
.login-v124-form{display:grid;gap:12px}
.login-v124-form>label{margin-top:4px;color:#fff;font-size:14px;font-weight:650}
.login-v124-field{height:66px;display:grid;grid-template-columns:64px 1fr;align-items:center;overflow:hidden;border:1px solid #434850;border-radius:11px;background:rgba(24,27,32,.78);transition:.18s ease}
.login-v124-field:focus-within{border-color:var(--login-orange);background:rgba(29,31,37,.95);box-shadow:0 0 0 4px rgba(255,118,0,.11)}
.login-v124-field-icon{width:23px;height:23px;margin:auto;color:var(--login-orange)}
.login-v124-field input{width:100%;height:100%;min-width:0;border:0!important;border-left:1px solid rgba(255,255,255,.07)!important;border-radius:0!important;padding:0 18px!important;background:transparent!important;color:#eef0f3!important;caret-color:var(--login-orange);box-shadow:none!important;outline:none!important;font-size:15px}
.login-v124-field input::placeholder{color:#747981;opacity:1}
.login-v124-password-field{grid-template-columns:64px 1fr 60px}
.login-v124-password-toggle{width:60px;height:100%;border:0;border-left:1px solid rgba(255,255,255,.07);background:transparent;color:#e0e2e5;padding:17px;display:grid;place-items:center}
.login-v124-password-toggle:hover{color:var(--login-orange);background:rgba(255,255,255,.035)}
.login-v124-password-toggle .eye-closed{display:none}.login-v124-password-toggle[aria-pressed="true"] .eye-open{display:none}.login-v124-password-toggle[aria-pressed="true"] .eye-closed{display:block}
.login-v124-submit{height:66px;margin-top:19px;border:0;border-radius:11px;padding:0 23px;display:grid;grid-template-columns:1fr 29px;align-items:center;color:#fff;background:linear-gradient(90deg,#ff8d00 0%,#ff7600 54%,#ff6200 100%);box-shadow:0 15px 32px rgba(255,105,0,.24);font-size:17px;font-weight:800;transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}
.login-v124-submit span:first-child{justify-self:center;transform:translateX(15px)}
.login-v124-submit:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 18px 38px rgba(255,105,0,.30)}
.login-v124-submit:active{transform:translateY(0)}
.login-v124-submit svg{width:28px;height:28px}
.login-v124-forgot{justify-self:center;margin-top:17px;border:0;background:transparent;color:var(--login-orange);display:inline-flex;align-items:center;gap:8px;padding:6px 9px;font-size:13px}
.login-v124-forgot:hover{color:#ff9a3c}.login-v124-forgot svg{width:17px;height:17px}
.login-v124-forgot-help{margin:0 auto;color:#92969d;font-size:11px;line-height:1.45;text-align:center;max-width:380px}
.login-v124-footer{width:100%;min-height:92px;border-top:1px solid rgba(255,255,255,.09);display:flex;justify-content:center;align-items:center;gap:12px;color:#bdc0c5;text-align:left}
.login-v124-shield{width:27px;height:27px;color:var(--login-orange);flex:0 0 auto}
.login-v124-footer strong{display:block;color:#d9dbde;font-size:13px;font-weight:600}
.login-v124-footer small{display:block;margin-top:4px;color:#747982;font-size:11px}

@media(max-height:900px) and (min-width:901px){
  .login-v124-stage{padding-top:18px}
  .login-v124-logo{width:66px;height:66px;border-width:3px}.login-v124-logo span{font-size:22px}
  .login-v124-company{font-size:22px}.login-v124-product{font-size:9px}.login-v124-brand{gap:6px;padding-bottom:5px}
  .login-v124-content{grid-template-columns:240px minmax(500px,620px);gap:42px;padding:0 0 6px}
  .login-v124-aside{min-height:470px;padding-bottom:34px}.login-v124-divider{top:-180px;height:690px}
  .login-v124-features{gap:22px}
  .login-v124-card-inner{padding:36px 52px 34px}.login-v124-card h1{font-size:31px}.login-v124-subtitle{margin:13px auto 26px;font-size:13px}
  .login-v124-field{height:55px}.login-v124-submit{height:56px;margin-top:13px}.login-v124-footer{min-height:62px}
}
@media(max-width:900px){
  body.login-v124{background-position:58% center}
  .login-v124-stage{width:min(640px,calc(100% - 28px));padding:22px 0 12px;grid-template-rows:auto auto auto;gap:15px}
  .login-v124-content{grid-template-columns:1fr;padding:0;gap:0}
  .login-v124-aside{display:none}
  .login-v124-card{width:100%}
  .login-v124-brand{padding-bottom:8px}
  .login-v124-footer{min-height:70px;margin-top:2px}
}
@media(max-width:600px){
  .login-v124-stage{width:min(100% - 22px,560px);padding-top:14px}
  .login-v124-logo{width:60px;height:60px;border-width:3px}.login-v124-logo span{font-size:20px}
  .login-v124-company{font-size:16px;letter-spacing:.11em}.login-v124-product{font-size:9px;letter-spacing:.23em;gap:8px}.login-v124-product i{width:25px}
  .login-v124-card{border-radius:16px}.login-v124-card-inner{padding:34px 22px 30px}.login-v124-card h1{font-size:28px}.login-v124-subtitle{font-size:13px;margin:13px auto 28px}
  .login-v124-field{height:56px;grid-template-columns:50px 1fr;border-radius:10px}.login-v124-password-field{grid-template-columns:50px 1fr 50px}.login-v124-password-toggle{width:50px;padding:14px}.login-v124-field-icon{width:20px;height:20px}
  .login-v124-submit{height:56px;border-radius:10px;margin-top:13px;font-size:16px}.login-v124-footer{padding:12px 4px;text-align:left}
}
@media(max-width:390px){.login-v124-company{font-size:14px}.login-v124-product i{display:none}.login-v124-card-inner{padding-left:17px;padding-right:17px}.login-v124-card h1{font-size:25px}}

/* v1.0.24 visual calibration against supplied reference (1080x1440 target) */
@media(min-width:901px) and (min-height:901px){
  .login-v124-stage{width:min(1060px,calc(100% - 24px));padding-top:clamp(70px,8vh,116px);padding-bottom:20px}
  .login-v124-brand{padding-bottom:24px}
  .login-v124-content{grid-template-columns:270px minmax(0,690px);gap:24px;align-items:center;padding-top:0;padding-bottom:26px}
  .login-v124-aside{min-height:700px;padding-bottom:68px}
  .login-v124-card{min-height:700px}
  .login-v124-card-inner{min-height:700px;padding:62px 68px 58px;display:flex;flex-direction:column}
  .login-v124-subtitle{margin-bottom:52px}
  .login-v124-form{gap:16px}
  .login-v124-submit{margin-top:22px}
  .login-v124-forgot{margin-top:22px}
  .login-v124-footer{min-height:96px}
}

/* v1.0.25 – integrierter Sicherheitscheck */
.security-card{overflow:visible}
.security-last{margin:12px 0 16px;padding:10px 12px;border-radius:10px;background:#f6f7f8;color:#62666d;font-size:13px;border:1px solid #e5e7ea}
.security-empty{display:flex;flex-direction:column;gap:5px;padding:18px;border:1px dashed #cfd3d8;border-radius:12px;background:#fafbfb;color:#5c6168}
.security-empty strong{color:#26292d}
.security-running{min-height:110px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;padding:20px;border:1px solid #eceef0;border-radius:12px;background:#fafafa;color:#4c5056;text-align:center}
.security-running small{color:#858991}
.security-spinner{width:26px;height:26px;border:3px solid #ddd;border-top-color:var(--am-orange,#ff7900);border-radius:50%;animation:security-spin .8s linear infinite}
@keyframes security-spin{to{transform:rotate(360deg)}}
.security-summary-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0 12px}
.security-summary-head h4,.security-summary-head h2{margin:0 0 5px;color:#202328}
.security-summary-head p{margin:0}
.security-score{min-width:88px;height:68px;border-radius:15px;display:flex;align-items:baseline;justify-content:center;gap:3px;padding:10px 13px;border:1px solid #dfe2e5;background:#f5f6f7;color:#30343a}
.security-score strong{font-size:30px;line-height:1;font-weight:850}
.security-score span{font-size:12px;font-weight:700;opacity:.7}
.security-score-pass{background:#ecf8f1;border-color:#bfe5cd;color:#216b42}
.security-score-warning{background:#fff8e7;border-color:#f0d68f;color:#8a6611}
.security-score-fail{background:#fff0ef;border-color:#efb9b5;color:#a62d27}
.security-mini-stats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.security-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:750;border:1px solid transparent}
.security-chip.pass{background:#ecf8f1;border-color:#c7e9d4;color:#226b43}
.security-chip.warning{background:#fff8e7;border-color:#f2dc9f;color:#86620d}
.security-chip.fail{background:#fff0ef;border-color:#f1c4c0;color:#a22f29}
.security-result-list{display:grid;gap:9px;max-height:610px;overflow:auto;padding-right:3px}
.security-result{display:grid;grid-template-columns:34px 1fr;gap:11px;padding:13px 14px;border-radius:12px;border:1px solid #e3e5e8;background:#fff}
.security-result-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:15px;margin-top:1px}
.security-result-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
.security-result-title strong{color:#25282d}
.security-result-badge{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:3px 7px;border-radius:999px;background:#eef0f2;color:#666b72}
.security-result-body p{margin:5px 0 0;color:#646971;font-size:13px;line-height:1.45}
.security-result.security-pass{border-left:4px solid #3b9c63}.security-pass .security-result-icon{background:#e9f7ef;color:#287448}.security-pass .security-result-badge{background:#e9f7ef;color:#287448}
.security-result.security-warning{border-left:4px solid #dcab2f}.security-warning .security-result-icon{background:#fff6de;color:#8b6610}.security-warning .security-result-badge{background:#fff6de;color:#8b6610}
.security-result.security-fail{border-left:4px solid #d84a42}.security-fail .security-result-icon{background:#ffeded;color:#a72e28}.security-fail .security-result-badge{background:#ffeded;color:#a72e28}
.security-result.security-info{border-left:4px solid #7a828b}.security-info .security-result-icon{background:#eef0f2;color:#626a72}
.security-instruction{margin-top:9px;padding:9px 10px;border-radius:8px;background:#f7f7f8;color:#50555c;font-size:12px;line-height:1.5}
.security-instruction b{color:#30343a}
.install-card-wide{width:min(980px,calc(100% - 28px));max-width:980px}
.install-security-report{margin:22px 0;padding:18px;border:1px solid rgba(255,255,255,.15);border-radius:16px;background:rgba(255,255,255,.05)}
.install-security-report .security-summary-head h2{color:inherit;font-size:20px}
.install-security-report .security-summary-head .muted{color:inherit;opacity:.72}
.install-security-report .security-result{background:rgba(255,255,255,.96)}
.install-finish-actions{display:flex;justify-content:flex-end;margin:18px 0 12px}
@media(max-width:680px){
  .security-summary-head{align-items:flex-start}.security-score{min-width:76px;height:60px}.security-score strong{font-size:25px}
  .security-result{grid-template-columns:28px 1fr;padding:11px}.security-result-icon{width:24px;height:24px;font-size:13px}
  .security-result-title{align-items:flex-start;flex-direction:column;gap:5px}.security-result-list{max-height:none}
  .install-card-wide{width:min(100% - 18px,980px)}
}

/* v1.0.26 – Feiertage, AW-Anzeige und flexible Statusdarstellung */
:root{--status-collected:#4b535b}
.appointment-bar.collected{background:var(--status-collected)}
.status-legend i.collected{background:var(--status-collected)}
.status-pill.collected{background:var(--status-collected)}
.appointment-bar:not(.dragging){opacity:var(--appointment-opacity,1)!important}
.appointment-bar.visual-striped{background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.11) 0,rgba(255,255,255,.11) 8px,rgba(0,0,0,.10) 8px,rgba(0,0,0,.10) 16px)}
.appointment-bar.visual-striped:hover{background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.16) 0,rgba(255,255,255,.16) 8px,rgba(0,0,0,.12) 8px,rgba(0,0,0,.12) 16px)}
.appointment-aw{font-size:10px;font-weight:850;padding:2px 5px;border-radius:999px;background:rgba(255,255,255,.16);flex:0 0 auto}
.appointment-vehicle{overflow:hidden;text-overflow:ellipsis}
.calendar-columns-overlay{position:absolute;left:var(--left-width);right:0;top:46px;bottom:0;z-index:2;pointer-events:none;overflow:hidden}
.calendar-day-shade{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,rgba(80,80,80,.035) 0,rgba(80,80,80,.035) 7px,rgba(80,80,80,.075) 7px,rgba(80,80,80,.075) 14px);border-left:1px solid rgba(90,90,90,.10);border-right:1px solid rgba(90,90,90,.10)}
.calendar-day-shade.closure{background:repeating-linear-gradient(135deg,rgba(255,121,0,.055) 0,rgba(255,121,0,.055) 7px,rgba(255,121,0,.12) 7px,rgba(255,121,0,.12) 14px)}
.appointment-bar,.rental-bar,.rental-block{z-index:5}
.day-head.special-day{flex-direction:column;gap:2px;background:#f2f2ef}
.day-head.special-day.closure{background:#fff2e8}
.day-head.special-day.today{box-shadow:inset 0 -3px 0 var(--accent)}
.day-date{display:block}
.day-special{display:block;max-width:112px;font-size:9px;line-height:1.1;color:#7a7a74;white-space:normal;text-align:center;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.day-head.closure .day-special{color:#a24b13;font-weight:750}
.status-visual-settings{display:grid;gap:8px;margin-top:12px}
.status-visual-row{display:grid;grid-template-columns:minmax(120px,1.1fr) 112px auto 142px auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:10px;padding:9px 10px;background:#fff}
.status-visual-row>strong{font-size:13px}.visual-color,.visual-opacity{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}
.visual-color input[type=color]{width:46px;height:32px;padding:2px}.visual-opacity input{width:66px;padding:7px 8px}.visual-opacity span{font-size:12px}.compact-check{font-size:12px!important;white-space:nowrap}.settings-switch{margin:12px 0}.priority-color-block{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.priority-color-block>strong{display:block;margin-bottom:8px}
.closure-list{margin-top:12px}.task-partial{border-color:#f0cf73;color:#7a5500;background:#fff8d9}.task-received{background:#218a56!important;border-color:#218a56!important;color:#fff!important}
@media(max-width:980px){.status-visual-row{grid-template-columns:1fr 110px 1fr}.status-visual-row .visual-opacity{grid-column:2/4}}
@media(max-width:680px){.status-visual-row{grid-template-columns:1fr 96px}.status-visual-row .compact-check,.status-visual-row .visual-opacity{grid-column:1/-1}.appointment-aw{font-size:9px;padding:1px 4px}}
.appointment-bar.provisional{background-color:var(--status-provisional)!important;background-image:none}
.appointment-bar.provisional.visual-striped{background-color:var(--status-provisional)!important;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.11) 0,rgba(255,255,255,.11) 8px,rgba(0,0,0,.10) 8px,rgba(0,0,0,.10) 16px)!important}

/* v1.0.26 – Prioritätsdarstellung ebenfalls konfigurierbar */
.appointment-bar.priority-high{box-shadow:inset 0 0 0 2px var(--appointment-priority-color-alpha,var(--priority-high)),0 1px 2px rgba(0,0,0,.12)}
.appointment-bar.priority-urgent{box-shadow:inset 0 0 0 3px var(--appointment-priority-color-alpha,var(--priority-urgent)),0 1px 3px rgba(143,20,16,.22)}
.appointment-bar.priority-high.parts-warn{box-shadow:inset 0 0 0 2px var(--appointment-priority-color-alpha,var(--priority-high)),inset 0 -3px 0 #d9982d,0 1px 2px rgba(0,0,0,.12)}
.appointment-bar.priority-urgent.parts-warn{box-shadow:inset 0 0 0 3px var(--appointment-priority-color-alpha,var(--priority-urgent)),inset 0 -3px 0 #d9982d,0 1px 3px rgba(143,20,16,.22)}
.appointment-bar .priority-tag.priority-high,.appointment-bar .priority-tag.priority-urgent{opacity:var(--priority-tag-opacity,1)}
.appointment-bar.priority-visual-striped .priority-tag.priority-high,.appointment-bar.priority-visual-striped .priority-tag.priority-urgent{background-color:var(--appointment-priority-color);background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.24) 0,rgba(255,255,255,.24) 5px,rgba(0,0,0,.12) 5px,rgba(0,0,0,.12) 10px)}

/* v1.0.27 – Planerspuren, Mietwagenfarben und Einstellungs-Tabs */
.settings-tabs{position:sticky;top:0;z-index:35;display:flex;gap:6px;overflow-x:auto;padding:8px;background:rgba(244,246,248,.96);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;scrollbar-width:thin}
.settings-tab{flex:0 0 auto;border:1px solid transparent;background:transparent;color:#596272;border-radius:9px;padding:9px 12px;font-weight:700;white-space:nowrap}
.settings-tab:hover{background:#fff;border-color:var(--border)}
.settings-tab.active{background:#171717;color:#fff;border-color:#171717;box-shadow:inset 0 -3px 0 var(--am-orange,#ff7900)}
.settings-tab-content{min-width:0}.settings-pane{display:none;gap:12px}.settings-pane.active{display:grid}.settings-pane>.data-card{min-width:0}
.settings-rental-list{margin:14px 0}.track-setting-row small{line-height:1.45}

.multi-track-grid{--appointment-height:46px;--lane-step:58px}
.planner-track{position:relative;border-bottom:6px solid #f1f3f5;background:#fff}
.track-title-row{display:grid;grid-template-columns:var(--left-width) 1fr;min-height:39px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#fbfcfd}
.track-name-cell{position:sticky;left:0;z-index:14;display:flex;align-items:center;gap:7px;padding:5px 9px;background:#fbfcfd;border-right:1px solid var(--border);min-width:0}
.track-name-cell>div{min-width:0}.track-name-cell strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.track-name-cell small{display:block;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.track-toggle{width:25px;height:25px;padding:0;border:1px solid var(--border);border-radius:7px;background:#fff;color:#333;font-size:12px;font-weight:900;flex:0 0 auto}
.track-title-timeline{position:relative;display:flex;align-items:center;padding:0 12px;color:var(--muted);font-size:11px;background-image:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--day-width) - 1px),var(--border) calc(var(--day-width) - 1px),var(--border) var(--day-width))}
.planner-track.collapsed{border-bottom:7px solid #f1f3f5}
.planner-track.collapsed .track-name-cell{background:#fff7ef;border-left:4px solid var(--am-orange,#ff7900)}
.track-title-timeline.collapsed-warning{min-height:36px;color:#7a3400;background-color:#fff2e6;background-image:repeating-linear-gradient(135deg,rgba(255,121,0,.06) 0,rgba(255,121,0,.06) 9px,rgba(255,121,0,.17) 9px,rgba(255,121,0,.17) 18px);border-top:1px solid rgba(255,121,0,.22);border-bottom:1px solid rgba(255,121,0,.22)}
.track-title-timeline.collapsed-warning strong{color:#9b4300}.planner-track.attention .track-title-timeline.collapsed-warning{box-shadow:inset 0 0 0 2px #ff7900;background-color:#ffe7d2}
.collapsed-tracks-alert{display:block;width:100%;margin:0 0 10px;padding:9px 12px;border:1px solid #f4a25e;border-radius:9px;background:repeating-linear-gradient(135deg,#fff4e9 0,#fff4e9 10px,#ffe7d0 10px,#ffe7d0 20px);color:#8b3b00;font-weight:800;text-align:left}.collapsed-tracks-alert.attention{border-color:#ff7900;box-shadow:0 0 0 2px rgba(255,121,0,.16)}
.track-date-header{display:grid;grid-template-columns:var(--left-width) repeat(var(--days),var(--day-width));border-bottom:1px solid var(--border);background:#fff;min-width:calc(var(--left-width) + var(--days) * var(--day-width))}
.track-date-corner{position:sticky;left:0;z-index:13;display:flex;align-items:center;padding:5px 10px;background:#f8f9fa;border-right:1px solid var(--border);font-size:10px;font-weight:800;text-transform:uppercase;color:#697386}
.compact-day-head{min-height:34px!important;padding:5px 4px!important;font-size:11px!important;background:#fafbfc}.compact-day-head .day-date{white-space:nowrap}
.track-workshop-row .section-label{background:#fff}.track-workshop-row .workshop-timeline{min-height:calc(var(--appointment-height) + 12px)}
.track-inactive-shade{position:absolute;top:0;bottom:0;z-index:3;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#8a8f96;font-size:10px;font-weight:700;background:repeating-linear-gradient(135deg,rgba(90,96,104,.06) 0,rgba(90,96,104,.06) 8px,rgba(90,96,104,.14) 8px,rgba(90,96,104,.14) 16px);border-right:1px solid rgba(90,96,104,.18);pointer-events:none}
.planner-track.drop-target .track-title-row{box-shadow:inset 0 0 0 2px var(--am-orange,#ff7900)}.planner-track.drop-target .track-name-cell{background:#fff4e9}

.appointment-bar{height:var(--appointment-height,46px);min-height:30px}.appointment-bar .appointment-main{height:100%;min-height:0;display:flex;align-items:center;gap:6px;padding:0 9px}.appointment-bar .appointment-vehicle{overflow:hidden;text-overflow:ellipsis;min-width:18px}.appointment-bar .appointment-aw{flex:0 0 auto;font-size:11px;font-weight:800;opacity:.94}.appointment-bar .appointment-icons{margin-left:auto;display:flex;align-items:center;gap:3px;flex:0 0 auto}.appointment-bar .resize-handle{height:100%}

.rental-row{--rental-color:#f07a24;--rental-bg:rgba(240,122,36,.18);--rental-border:rgba(240,122,36,.72)}
.rental-row .rental-name{border-left:4px solid var(--rental-color)!important;display:grid;grid-template-columns:10px 1fr;column-gap:6px;align-items:center}.rental-row .rental-name strong,.rental-row .rental-name small{grid-column:2}.rental-color-dot{grid-column:1;grid-row:1 / span 2;width:9px;height:28px;border-radius:6px;background:var(--rental-color);box-shadow:0 0 0 2px rgba(255,255,255,.85)}
.rental-row .rental-bar{background:var(--rental-bg)!important;border-color:var(--rental-border)!important;border-left:5px solid var(--rental-color)!important;color:#2c2f33}
.rental-row .rental-bar:hover{filter:brightness(.97)}
.rental-master-row{--rental-color:#f07a24}.rental-master-swatch{width:12px;height:36px;border-radius:7px;background:var(--rental-color);flex:0 0 auto}

@media(max-width:900px){.settings-tabs{top:-1px}.settings-tab{padding:8px 10px}.track-title-row{grid-template-columns:var(--left-width) 1fr}}
@media(max-width:620px){.settings-tabs{margin-left:-2px;margin-right:-2px}.settings-pane .form-grid{grid-template-columns:1fr}.track-name-cell small{display:none}.track-title-timeline{font-size:10px}.collapsed-tracks-alert{font-size:12px}.appointment-bar .appointment-vehicle{max-width:145px}}


/* v1.0.28 – mitlaufende Beschriftung für mehrtägige Balken */
.appointment-bar .appointment-main,.rental-bar .rental-main{position:relative;z-index:2;width:max-content;max-width:calc(100% - 18px);will-change:transform;transition:none!important}
.appointment-bar .appointment-main{flex:0 1 auto;overflow:hidden}
.rental-bar .rental-main{display:inline-flex;align-items:center;gap:7px;flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rental-bar .rental-order-vehicle{overflow:hidden;text-overflow:ellipsis;min-width:20px}
.appointment-bar.dragging .appointment-main,.rental-bar.dragging .rental-main{transform:none!important}


/* v1.0.28 – Arbeitswoche und übersichtlichere Plantafel-Einstellungen */
.calendar-day-shade.nonwork{background:repeating-linear-gradient(135deg,rgba(92,98,106,.07) 0,rgba(92,98,106,.07) 8px,rgba(92,98,106,.17) 8px,rgba(92,98,106,.17) 16px);border-left:1px solid rgba(80,86,94,.16);border-right:1px solid rgba(80,86,94,.16)}
.day-head.special-day.nonwork{background:repeating-linear-gradient(135deg,#f3f4f5 0,#f3f4f5 8px,#e8eaec 8px,#e8eaec 16px);color:#747a82}
.day-head.nonwork .day-special,.day-head.special-day.nonwork .day-special{color:#777d84;font-weight:700}
.settings-subsection{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
.settings-subsection:first-of-type{margin-top:8px}
.settings-subsection h4{margin:0 0 4px;font-size:14px}
.settings-subsection>p{margin:0 0 10px}
.settings-option-stack{display:grid;gap:4px}
.settings-option-stack .settings-switch{margin:7px 0 0}
.field-help{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.4;font-weight:500}
.option-help{padding-left:26px;margin-bottom:4px}

/* v1.0.29 – Kalender, Teileanzeige und Backup-Einstellungen */
.calendar-upcoming{margin-top:16px}
.holiday-list{margin-top:10px}
.holiday-setting-row{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:12px}
.holiday-date-box{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px;padding:6px 8px;border-radius:10px;background:#f4f5f6;border:1px solid var(--line,#e4e6e8)}
.holiday-date-box strong{font-size:15px}.holiday-date-box small{font-size:11px;color:var(--muted,#6b7280);text-transform:capitalize}
.holiday-setting-row.task.done .holiday-date-box{opacity:.65}
.compact-head{margin-bottom:4px}
.parts-visual-settings{display:grid;gap:8px;margin-top:10px}
.parts-visual-row{display:grid;grid-template-columns:minmax(150px,1fr) 72px minmax(120px,.55fr) minmax(120px,.55fr);align-items:end;gap:10px;padding:10px 12px;border:1px solid var(--line,#e4e6e8);border-radius:12px;background:#fafafa}
.parts-visual-row>strong{align-self:center}.parts-setting-preview{align-self:center;font-size:19px;font-weight:900;white-space:nowrap}
.parts-visual-row label{margin:0}.parts-visual-row input[type="text"]{max-width:90px;text-align:center;font-weight:800}
.backup-settings-grid{margin:14px 0}.backup-row a.btn{text-decoration:none}
@media(max-width:720px){.holiday-setting-row{grid-template-columns:64px minmax(0,1fr)}.holiday-setting-row .task-actions{grid-column:1/-1;width:100%}.holiday-setting-row .task-actions .btn{width:100%}.parts-visual-row{grid-template-columns:1fr 72px}.parts-visual-row label{grid-column:span 1}.parts-visual-row .visual-color{grid-column:span 1}}

/* v1.0.30 – Feiertage nach Bundesländern */
.holiday-state-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));gap:8px;margin-top:10px}
.holiday-state-grid.disabled{opacity:.58}
.holiday-state-option{display:flex;align-items:center;gap:9px;margin:0;padding:9px 10px;border:1px solid var(--line,#e4e6e8);border-radius:10px;background:#fafbfc;cursor:pointer;min-width:0}
.holiday-state-option:hover{background:#fff;border-color:#cfd4da}
.holiday-state-option input{flex:0 0 auto;margin:0}
.holiday-state-option span{display:flex;align-items:center;gap:7px;min-width:0;font-size:12px}
.holiday-state-option strong{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:2px 5px;border-radius:6px;background:#202225;color:#fff;font-size:10px;letter-spacing:.03em}
.calendar-scope{font-weight:800;color:#4b5563}
.holiday-setting-row .calendar-scope{color:#8a470d}
.regional-holiday-note{margin-top:10px}
@media(max-width:620px){.holiday-state-grid{grid-template-columns:1fr 1fr}.holiday-state-option{padding:8px}.holiday-state-option span{font-size:11px}}
@media(max-width:430px){.holiday-state-grid{grid-template-columns:1fr}}

/* v1.0.31 – Plantafel-Zeitfenster, Balkeninhalt, Mietwagenstreifen, Hilfen */
.day-time-window{display:block;margin-top:2px;font-size:9px;line-height:1;color:var(--muted);font-weight:650;white-space:nowrap}
.appointment-bar{position:absolute}
.appointment-bar .appointment-main{height:100%;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:1px;padding:3px 9px 5px;line-height:1.05;overflow:hidden;white-space:nowrap;text-align:left}
.appointment-bar .appointment-primary-line{display:flex;align-items:center;gap:6px;min-height:13px;max-width:100%;overflow:hidden;white-space:nowrap}
.appointment-bar .appointment-primary-line>strong{flex:0 0 auto}
.appointment-bar .appointment-vehicle{min-width:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.appointment-bar .appointment-customer{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;opacity:.82;padding-top:1px}
.appointment-bar.has-customer-line .appointment-main{justify-content:center}
.appointment-bar .appointment-icons{margin-left:auto;display:flex;align-items:center;gap:3px;flex:0 0 auto}
.appointment-rental-strip{position:absolute;z-index:6;bottom:0;height:4px;min-width:2px;border-radius:0 0 3px 3px;box-shadow:0 -1px 0 rgba(255,255,255,.28);pointer-events:none}
.appointment-bar .resize-handle{z-index:8}

.setting-title{display:inline-flex;align-items:center;gap:6px;line-height:1.25}
.setting-info-btn{display:inline-grid;place-items:center;width:19px;height:19px;min-width:19px;padding:0;border:1px solid #c8d0da;border-radius:50%;background:#fff;color:#667085;font-size:11px;font-weight:850;line-height:1;vertical-align:middle;box-shadow:0 1px 1px rgba(16,24,40,.04)}
.setting-info-btn:hover,.setting-info-btn:focus-visible{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);outline:none}
.settings-switch .setting-info-btn{margin-left:4px}
.setting-info-backdrop{position:fixed;inset:0;z-index:1300;background:rgba(16,24,40,.48);display:grid;place-items:center;padding:18px}
.setting-info-backdrop.hidden{display:none}
.setting-info-dialog{width:min(470px,100%);background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 22px 60px rgba(16,24,40,.28);padding:16px}
.setting-info-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.setting-info-head strong{font-size:16px}
.setting-info-dialog p{margin:0;color:#475467;line-height:1.55;white-space:pre-line}
.setting-info-actions{display:flex;justify-content:flex-end;margin-top:16px}
.planner-time-window-grid{margin-top:10px}

.help-v131{max-width:1180px}
.help-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.help-hero h2{margin:0 0 4px}.help-hero p{margin:0;color:var(--muted)}
.help-version{display:inline-flex;align-items:center;border:1px solid var(--border);background:#fff;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750;color:var(--muted)}
.help-jump{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:9px;background:rgba(244,246,248,.94);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:10px}
.help-jump a{color:#475467;text-decoration:none;background:#fff;border:1px solid var(--border);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:650}
.help-jump a:hover{border-color:var(--accent);color:var(--accent)}
.help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.help-card{scroll-margin-top:70px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:15px;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.help-card h3{margin:0 0 8px;font-size:15px}.help-card p{margin:0 0 9px;color:#475467;line-height:1.55}.help-card p:last-child{margin-bottom:0}
@media(max-width:760px){.help-grid{grid-template-columns:1fr}.help-jump{overflow-x:auto;flex-wrap:nowrap}.help-jump a{white-space:nowrap}.appointment-bar .appointment-customer{font-size:9px}.setting-info-dialog{border-radius:12px}}
.day-head{flex-direction:column;gap:2px}

/* v1.0.32 – kompakte Terminwarnungen und schlanke Backups */
/* Priorität wird nicht mehr als umlaufender Rahmen dargestellt. Die farbige
   Kennzeichnung bleibt als Badge erhalten; bei kurzen Balken wandert sie in
   die obere rechte Ecke. */
.appointment-bar.priority-high,
.appointment-bar.priority-urgent,
.appointment-bar.priority-high.parts-warn,
.appointment-bar.priority-urgent.parts-warn{
  box-shadow:0 1px 3px rgba(16,24,40,.18);
}
.appointment-corner-badge{
  position:absolute;
  top:3px;
  right:4px;
  z-index:10;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:24px;
  max-width:58px;
  height:18px;
  padding:0 5px;
  border-radius:6px;
  font-size:8px;
  font-weight:950;
  line-height:1;
  letter-spacing:.02em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  box-shadow:0 1px 2px rgba(0,0,0,.22),inset 0 0 0 1px rgba(255,255,255,.18);
  pointer-events:none;
}
.appointment-corner-badge.priority-corner{background:var(--corner-color);color:var(--corner-text)}
.appointment-corner-badge.priority-corner.striped{background-color:var(--corner-color);background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.28) 0,rgba(255,255,255,.28) 4px,rgba(0,0,0,.10) 4px,rgba(0,0,0,.10) 8px)}
.appointment-corner-badge.parts-corner{font-size:10px;letter-spacing:0}
.appointment-bar.bar-compact .appointment-icons,
.appointment-bar.bar-compact .appointment-aw,
.appointment-bar.bar-compact .appointment-customer{display:none!important}
.appointment-bar.bar-compact .appointment-main{padding-right:50px}
.appointment-bar.bar-compact .appointment-primary-line{gap:4px}
.appointment-bar.bar-micro .appointment-vehicle{display:none!important}
.appointment-bar.bar-micro .appointment-main{padding-left:6px;padding-right:42px}
.appointment-bar.bar-micro .appointment-primary-line>strong{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.backup-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.backup-analysis{margin:12px 0;padding:12px;border:1px solid var(--border);border-radius:12px;background:#f8fafc}
.backup-analysis.hidden{display:none}
.backup-analysis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.backup-analysis-grid>div{display:grid;gap:2px;padding:10px;border:1px solid #e3e7ec;border-radius:10px;background:#fff}
.backup-analysis-grid span{font-size:11px;color:var(--muted);font-weight:700}
.backup-analysis-grid strong{font-size:17px}
.backup-analysis-grid small{font-size:10px;color:var(--muted)}
.backup-analysis-grid>div.warning{border-color:#f2c9a9;background:#fff8f1}
.backup-largest{margin-top:10px}
.backup-largest summary{cursor:pointer;font-size:12px;font-weight:800;color:#475467}
.backup-largest ul{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:5px}
.backup-largest li{display:flex;justify-content:space-between;gap:12px;font-size:11px;border-top:1px solid #e8ebef;padding-top:5px}
.backup-largest li span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.backup-largest li strong{flex:0 0 auto}
@media(max-width:720px){.backup-analysis-grid{grid-template-columns:1fr}.backup-head-actions{width:100%;justify-content:stretch}.backup-head-actions .btn{flex:1}}


/* v1.0.34 – frei definierbare Terminstatus */
.appointment-bar.status-managed{
  background-color:var(--appointment-status-color,#4b535b)!important;
  color:var(--appointment-status-text,#fff)!important;
}
.appointment-bar.status-managed.visual-striped{
  background-color:var(--appointment-status-color,#4b535b)!important;
  background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.11) 0,rgba(255,255,255,.11) 8px,rgba(0,0,0,.10) 8px,rgba(0,0,0,.10) 16px)!important;
}
.appointment-status-row{align-items:center}
.appointment-status-swatch{
  width:18px;height:42px;border-radius:7px;flex:0 0 18px;
  border:1px solid rgba(0,0,0,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)
}
.status-legend i[style]{border:1px solid rgba(0,0,0,.10)}

/* v1.0.35 – sichere Backup-Zusammenführung */
.alert.warning{background:var(--warn-soft);color:#8a5a10;border:1px solid #efd48c}.restore-preview{display:grid;gap:10px}.restore-preview .backup-analysis-grid{margin-top:0}.restore-preview details ul{margin:8px 0 0;padding-left:20px}

.backup-upload-box{margin:12px 0;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fbfcfd}.backup-upload-box>strong{display:block;margin-bottom:4px}.backup-upload-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.backup-upload-controls input[type=file]{padding:7px}@media(max-width:640px){.backup-upload-controls{grid-template-columns:1fr}.backup-upload-controls .btn{width:100%}}

/* v1.0.36 – Statuspflege und Darstellung sauber getrennt */
.status-visual-row.status-visual-inactive{opacity:.62}
.status-visual-row.status-visual-inactive strong small{font-weight:600;color:var(--muted)}

/* v1.0.37 – persönliche Planeransicht, frei positionierbare Balkeninhalte, Lackiermarkierung und ZIP-Updater */
.visible-days-control,.past-weeks-control{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);white-space:nowrap}
.visible-days-control select{width:auto;min-width:92px;padding:8px 28px 8px 9px}
.past-weeks-control{padding:7px 8px;border:1px solid var(--border);border-radius:9px;background:#fff}.past-weeks-control input{width:48px;padding:5px 6px;text-align:center}
.bar-content-settings{display:grid;gap:7px;margin:10px 0}
.bar-content-setting{display:grid;grid-template-columns:minmax(190px,1fr) minmax(180px,240px) 24px;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:#fbfcfd}
.bar-content-setting>.check{margin:0}.bar-content-position{display:flex;align-items:center;gap:7px}.bar-content-position>span{font-size:11px;font-weight:700;color:var(--muted)}.bar-position-select{min-width:125px;padding:7px 9px}
.appointment-bar .appointment-secondary-line{display:flex;align-items:center;gap:5px;max-width:100%;min-height:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:650;opacity:.88}
.appointment-bar .appointment-customer-inline{display:inline-flex!important;padding:0;font-size:11px;min-width:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.appointment-marker-slot{position:absolute;z-index:11;display:flex;align-items:center;gap:3px;pointer-events:none;max-width:145px}
.appointment-marker-slot.slot-top_right{top:3px;right:4px;justify-content:flex-end}
.appointment-marker-slot.slot-bottom_left{bottom:6px;left:5px;justify-content:flex-start}
.appointment-marker-slot.slot-bottom_right{bottom:6px;right:5px;justify-content:flex-end}
.appointment-marker-slot .priority-tag{height:18px;min-width:24px;max-width:70px;padding:0 5px;border-radius:6px;background:var(--corner-color,#696969)!important;color:var(--corner-text,#fff)!important;opacity:var(--priority-tag-opacity,1);box-shadow:0 1px 2px rgba(0,0,0,.22),inset 0 0 0 1px rgba(255,255,255,.18)}
.appointment-marker-slot .parts-corner{display:inline-flex;align-items:center;justify-content:center;height:18px;min-width:24px;max-width:62px;padding:0 5px;border-radius:6px;font-size:10px;font-weight:950;line-height:1;box-shadow:0 1px 2px rgba(0,0,0,.22),inset 0 0 0 1px rgba(255,255,255,.18);white-space:nowrap}
.paint-marker{display:inline-grid;place-items:center;width:20px;height:18px;border-radius:6px;background:var(--paint-marker-color,#ff7900);color:#fff;opacity:var(--paint-marker-opacity,1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);flex:0 0 auto}
.paint-marker.glow{box-shadow:0 0 0 1px color-mix(in srgb,var(--paint-marker-color,#ff7900) 70%,transparent),0 0 9px color-mix(in srgb,var(--paint-marker-color,#ff7900) 75%,transparent),inset 0 0 0 1px rgba(255,255,255,.3)}
.paint-spray-symbol{display:block;width:14px;height:14px;background:currentColor;-webkit-mask:url('icons/paint-spray.svg') center/contain no-repeat;mask:url('icons/paint-spray.svg') center/contain no-repeat}
.paint-appearance-preview{display:flex;align-items:center;gap:9px;margin:8px 0 12px;padding:9px 10px;border:1px solid var(--border);border-radius:10px;background:#fbfcfd;font-size:12px;color:var(--muted)}
.appointment-bar.has-top-right-marker .appointment-main{padding-right:58px}
.appointment-bar.has-multi-top-right-marker .appointment-main{padding-right:142px}
.appointment-bar.has-bottom-left-marker .appointment-main{padding-left:31px}
.appointment-bar.has-bottom-right-marker .appointment-main{padding-right:31px}
.appointment-bar.bar-compact .appointment-secondary-line{display:none!important}
.appointment-bar.bar-compact .appointment-main{padding-right:50px}
.appointment-bar.bar-compact.has-top-right-marker .appointment-main{padding-right:58px}
.appointment-bar.bar-compact.has-multi-top-right-marker .appointment-main{padding-right:62px}
.appointment-bar.bar-micro .appointment-aw,.appointment-bar.bar-micro .appointment-vehicle,.appointment-bar.bar-micro .appointment-customer-inline{display:none!important}
.quick-modal{overflow:hidden!important;display:flex;flex-direction:column}
.quick-modal #quick-form{display:flex;flex-direction:column;min-height:0;flex:1}
.quick-modal #quick-form-body{overflow:auto;min-height:0;padding-right:2px}
.quick-modal .modal-actions{position:sticky;bottom:0;z-index:4;background:#fff;margin:12px -2px -2px;padding:12px 2px 2px;box-shadow:0 -8px 18px rgba(255,255,255,.92)}
.update-upload-box{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;margin:12px 0;padding:12px;border:1px solid var(--border);border-radius:10px;background:#fbfcfd}
.update-upload-box input[type=file]{padding:7px}.update-check-result{display:grid;gap:10px}.update-files summary{cursor:pointer;font-weight:750;color:#475467}.update-files ul{max-height:180px;overflow:auto;margin:7px 0;padding-left:22px;font-size:11px;color:var(--muted)}.version-chip{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;padding:5px 9px;background:#fff;font-size:11px;font-weight:800;color:var(--muted)}
@media(max-width:760px){.bar-content-setting{grid-template-columns:1fr 24px}.bar-content-position{grid-column:1/2}.bar-content-setting>.setting-info-btn{grid-column:2;grid-row:1}.update-upload-box{grid-template-columns:1fr}.visible-days-control{order:6}.past-weeks-control{order:5}.appointment-marker-slot{max-width:145px}}
.appointment-bar>.appointment-main .parts-corner{display:inline-flex;align-items:center;justify-content:center;height:17px;padding:0 4px;border-radius:5px;font-size:9px;font-weight:950;line-height:1;white-space:nowrap;flex:0 0 auto}
.appointment-bar>.appointment-main .priority-tag[style]{background:var(--corner-color,#696969)!important;color:var(--corner-text,#fff)!important}
.paint-form-symbol{width:17px;height:17px;color:var(--accent);background:currentColor;flex:0 0 auto}
.tooltip-paint{display:inline-flex;align-items:center;gap:5px}.tooltip-paint .paint-spray-symbol{color:#ff8a2b;background:currentColor}
.planner-monday-control{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted);white-space:nowrap;padding:7px 8px;border:1px solid var(--border);border-radius:9px;background:#fff}.planner-monday-control input{width:auto;margin:0}

/* v1.0.38 – vergangene Wochen pro Benutzer + gleichzeitige Teile-/Prioritäts-Badges */
/* v1.0.39 – Aufträge, Mehrfach-Ersatzwagen, Lackierer & Historie */
.availability-chip.available.selected{background:#e5efff;border-color:#4b83e6;color:#15489a;box-shadow:0 0 0 2px rgba(75,131,230,.28);font-weight:800}
.rental-segment-list{display:grid;gap:12px}
.rental-segment{border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:12px;background:rgba(255,255,255,.025);display:grid;gap:10px}
.rental-segment-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.rental-segment-head strong{font-size:.92rem}
.rental-segment-remove{width:30px;height:30px}
.paint-registration-summary{margin:12px 0}
.paint-registration{display:flex;gap:11px;align-items:flex-start;border:1px solid rgba(255,255,255,.12);border-radius:11px;padding:11px 12px;background:rgba(255,255,255,.025)}
.paint-registration.registered{border-color:rgba(71,181,118,.38);background:rgba(71,181,118,.08)}
.paint-registration.pending{border-color:rgba(240,122,36,.42);background:rgba(240,122,36,.08)}
.paint-registration .paint-spray-symbol{width:22px;height:22px;flex:0 0 22px}
.paint-registration div{display:grid;gap:3px}.paint-registration small{color:var(--muted)}.paint-registration p{margin:3px 0 0}
.appointment-history-section{margin-top:16px}
.appointment-history-list{display:grid;gap:0;margin:4px 0 14px 6px}
.history-item{display:grid;grid-template-columns:16px 1fr;gap:9px;position:relative;padding:0 0 15px}
.history-item:not(:last-child)::before{content:"";position:absolute;left:5px;top:12px;bottom:0;width:2px;background:rgba(255,255,255,.1)}
.history-dot{width:12px;height:12px;border-radius:50%;background:var(--orange,#f07a24);margin-top:5px;box-shadow:0 0 0 3px rgba(240,122,36,.12)}
.history-item div{display:grid;gap:2px}.history-item small,.history-item p{color:var(--muted);margin:0}.history-item p{font-size:.8rem;line-height:1.4}
.tooltip-paint-ok{color:#7cdea4}.tooltip-paint-open,.orders-paint-open{color:#ffb36f}
.orders-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:12px}
.orders-search{min-width:min(520px,100%);display:grid;gap:6px}.orders-search input{width:100%}
.orders-list{display:grid;gap:8px}
.order-row{width:100%;display:grid;grid-template-columns:112px minmax(0,1fr) 130px;gap:16px;text-align:left;align-items:center;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025);border-radius:12px;padding:12px 14px;color:inherit;cursor:pointer}
.order-row:hover{border-color:rgba(240,122,36,.45);background:rgba(240,122,36,.045)}
.order-date,.order-end{display:grid;gap:3px}.order-date strong,.order-end strong{font-size:.96rem}.order-date small,.order-end small,.order-end span{color:var(--muted);font-size:.76rem}
.order-main{min-width:0;display:grid;gap:5px}.order-title{display:flex;align-items:baseline;gap:10px;min-width:0}.order-title strong{font-size:1.05rem;letter-spacing:.02em}.order-title span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}
.order-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;font-size:.78rem}.order-meta>span{display:inline-flex;align-items:center;gap:4px}.order-paint .paint-spray-symbol{width:15px;height:15px}
.paint-task .task-paint-symbol{display:inline-block;width:18px;height:18px;vertical-align:-4px;margin-right:3px}
@media (max-width:760px){.order-row{grid-template-columns:84px minmax(0,1fr);gap:10px}.order-end{grid-column:2;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.order-end small{display:none}.orders-toolbar{align-items:stretch;flex-direction:column}.orders-search{min-width:0}.rental-segment .form-grid{grid-template-columns:1fr}.appointment-history-section{margin-top:12px}}
