.office-shell{display:grid;gap:18px}.office-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.office-kpis article,.office-card{background:var(--surface,#fff);border:1px solid var(--border,#e4e8eb);border-radius:18px;padding:18px}.office-kpis span{display:block;color:var(--muted,#6b7780);font-size:13px}.office-kpis strong{font-size:30px}.office-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.office-tabs{display:flex;gap:8px;flex-wrap:wrap}.office-tabs button{border:1px solid var(--border,#dce3e7);background:var(--surface,#fff);padding:10px 14px;border-radius:12px;cursor:pointer}.office-tabs button.active{background:#0d6b67;color:#fff;border-color:#0d6b67}.office-panel{display:none}.office-panel.active{display:block}.office-table{width:100%;border-collapse:collapse}.office-table th,.office-table td{text-align:left;padding:12px;border-bottom:1px solid var(--border,#e5e9ec);vertical-align:top}.office-table small{display:block;color:var(--muted,#6b7780);margin-top:3px}.office-calendar{display:grid;grid-template-columns:150px repeat(var(--office-cols,1),minmax(180px,1fr));overflow:auto;border:1px solid var(--border,#e1e6e9);border-radius:16px}.office-calendar>div{min-height:54px;padding:9px;border-right:1px solid var(--border,#e1e6e9);border-bottom:1px solid var(--border,#e1e6e9)}.office-cal-head{font-weight:800;position:sticky;top:0;background:var(--surface,#fff);z-index:2}.office-cal-time{font-weight:700;color:var(--muted,#6b7780)}.office-cal-event{background:rgba(13,107,103,.12);border-left:4px solid #0d6b67;border-radius:8px;padding:7px!important;min-height:auto!important}.office-cal-block{background:rgba(170,92,45,.12);border-left-color:#aa5c2d}.office-grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.office-form label{display:grid;gap:6px;font-weight:700}.office-form input,.office-form select,.office-form textarea{width:100%;padding:11px 12px;border:1px solid var(--border,#d8e0e4);border-radius:10px;background:var(--surface,#fff);color:inherit}.office-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.office-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:rgba(13,107,103,.12);font-size:12px;font-weight:800}.office-warning{background:rgba(185,111,29,.14)!important}.office-modal{position:fixed;inset:0;background:rgba(5,15,18,.62);display:grid;place-items:center;z-index:10000;padding:20px}.office-modal[hidden]{display:none}.office-modal-card{width:min(720px,100%);max-height:90vh;overflow:auto;background:var(--surface,#fff);color:inherit;border-radius:20px;padding:22px;border:1px solid var(--border,#dce3e7)}
html[data-theme="dark"] .office-kpis article,html[data-theme="dark"] .office-card,html[data-theme="dark"] .office-tabs button,html[data-theme="dark"] .office-cal-head,html[data-theme="dark"] .office-modal-card,html[data-theme="dark"] .office-form input,html[data-theme="dark"] .office-form select,html[data-theme="dark"] .office-form textarea{background:#172326;color:#eef7f6;border-color:#314247}html[data-theme="dark"] .office-table th,html[data-theme="dark"] .office-table td,html[data-theme="dark"] .office-calendar>div{border-color:#314247}html[data-theme="dark"] .office-kpis span,html[data-theme="dark"] .office-table small,html[data-theme="dark"] .office-cal-time{color:#a9bcba}
@media(max-width:900px){.office-kpis{grid-template-columns:1fr 1fr}.office-grid2{grid-template-columns:1fr}.office-card{overflow:auto}}

/* V6.2.2: FL Buddy uses body.dark for the active dark theme. */
body.dark .office-kpis article,
body.dark .office-card,
body.dark .office-tabs button,
body.dark .office-cal-head,
body.dark .office-modal-card{background:#12383f!important;color:#eef8f7!important;border-color:#2d5960!important;box-shadow:none!important}
body.dark .office-tabs button{color:#dcebea!important}
body.dark .office-tabs button.active{background:#0d7771!important;color:#fff!important;border-color:#24aaa0!important}
body.dark .office-kpis span,
body.dark .office-table small,
body.dark .office-cal-time,
body.dark .office-card p,
body.dark .office-card label{color:#b8cecc!important}
body.dark .office-kpis strong,
body.dark .office-card h2,
body.dark .office-card h3,
body.dark .office-table th,
body.dark .office-table td,
body.dark .office-table td b{color:#eef8f7!important}
body.dark .office-table th,
body.dark .office-table td,
body.dark .office-calendar,
body.dark .office-calendar>div{border-color:#2d5960!important}
body.dark .office-calendar>div{background:#103239!important;color:#e8f5f3!important}
body.dark .office-cal-event{background:#174b4c!important;color:#effaf8!important;border-left-color:#27b8ad!important}
body.dark .office-cal-block{background:#4a352a!important;border-left-color:#d18a55!important}
body.dark .office-form input,
body.dark .office-form select,
body.dark .office-form textarea{background:#0d3036!important;color:#f3fbfa!important;border-color:#37636a!important}
body.dark .office-form input::placeholder,
body.dark .office-form textarea::placeholder{color:#86aaa7!important}
body.dark .office-form option{background:#0d3036!important;color:#f3fbfa!important}
body.dark .office-badge{background:#1b5555!important;color:#eafffb!important;border:1px solid #2c7774!important}
body.dark .office-warning{background:#4b3828!important}
body.dark .office-toolbar .secondary-button,
body.dark .office-card .secondary-button{background:#173f45!important;color:#eff9f8!important;border-color:#37636a!important}
body.dark .office-toolbar .secondary-button:hover,
body.dark .office-card .secondary-button:hover{background:#1d5056!important}

/* V6.2.3: Büro-Dialogbuttons im Dark Mode */
body.dark .office-modal-card .secondary-button{background:#173f45!important;color:#eff9f8!important;border:1px solid #37636a!important}
body.dark .office-modal-card .secondary-button:hover{background:#1d5056!important}
body.dark .office-modal-card .primary-button{background:#0d6b67!important;color:#fff!important;border:1px solid #16827c!important}
body.dark .office-modal-card .primary-button:hover{background:#117a74!important}

/* V6.2.4: kompakte Fahrzeug-Checkboxen */
.office-check-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:14px 0 4px}
.office-form .office-check{display:inline-flex;align-items:center;gap:9px;width:auto;font-weight:700;cursor:pointer;color:inherit}
.office-form .office-check input[type="checkbox"]{appearance:auto;-webkit-appearance:checkbox;width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;padding:0!important;margin:0!important;border-radius:3px!important;accent-color:#0d7771;cursor:pointer}
.office-form .office-check span{display:inline;line-height:1.25}
body.dark .office-form .office-check{color:#eef8f7!important}
@media(max-width:600px){.office-check-row{display:grid;gap:12px}}

/* V6.2.6: Büro-Kalender, Filter, Fahrzeugkalender */
.office-toolbar-space{justify-content:space-between}.office-week-nav,.office-subtabs,.vehicle-legend{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.office-subtabs{margin:14px 0}.office-subtabs button{padding:9px 13px;border-radius:10px;border:1px solid var(--border,#dce3e7);background:var(--surface,#fff);color:inherit;cursor:pointer}.office-subtabs button.active{background:#0d7771;color:#fff;border-color:#24aaa0}.office-filterbar{display:grid;grid-template-columns:2fr repeat(4,minmax(130px,1fr));gap:10px;margin:14px 0}.office-filterbar label{font-size:12px;color:var(--muted,#6b7780)}.office-filterbar input,.office-filterbar select{width:100%;padding:10px;border:1px solid var(--border,#d8e0e4);border-radius:10px;background:var(--surface,#fff);color:inherit}.office-result-count{font-size:12px;color:var(--muted,#6b7780);margin:0 0 8px}.vehicle-legend{margin:12px 0}.vehicle-legend span{display:inline-flex;align-items:center;gap:6px;font-size:13px}.vehicle-legend i{width:12px;height:12px;border-radius:3px;display:inline-block}.vehicle-legend .free{background:#2e9b62}.vehicle-legend .busy{background:#b23c3c}.vehicle-legend .workshop{background:#b9782e}.vehicle-calendar{display:grid;grid-template-columns:190px repeat(6,minmax(150px,1fr));overflow:auto;border:1px solid var(--border,#e1e6e9);border-radius:14px}.vehicle-calendar>div{padding:10px;border-right:1px solid var(--border,#e1e6e9);border-bottom:1px solid var(--border,#e1e6e9);min-height:70px}.vehicle-cal-head,.vehicle-name{font-weight:800;background:var(--surface,#fff)}.vehicle-name small,.vehicle-day small{display:block;margin-top:4px}.vehicle-day{border-left:5px solid transparent}.vehicle-day.free{background:rgba(46,155,98,.14);border-left-color:#2e9b62}.vehicle-day.busy{background:rgba(178,60,60,.14);border-left-color:#b23c3c}.vehicle-day.workshop{background:rgba(185,120,46,.16);border-left-color:#b9782e}body.dark .office-subtabs button,body.dark .office-filterbar input,body.dark .office-filterbar select,body.dark .vehicle-cal-head,body.dark .vehicle-name{background:#12383f!important;color:#eef8f7!important;border-color:#2d5960!important}body.dark .office-subtabs button.active{background:#0d7771!important}body.dark .vehicle-calendar,body.dark .vehicle-calendar>div{border-color:#2d5960!important}body.dark .vehicle-day.free{background:#173d31!important}body.dark .vehicle-day.busy{background:#47292b!important}body.dark .vehicle-day.workshop{background:#493829!important}
@media(max-width:1100px){.office-filterbar{grid-template-columns:1fr 1fr 1fr}}@media(max-width:700px){.office-filterbar{grid-template-columns:1fr}.office-week-nav{width:100%}.office-week-nav button{flex:1}.vehicle-calendar{grid-template-columns:150px repeat(6,150px)}}
/* V6.3 – kompakte Kalendernavigation + Abrechnung */
.office-week-nav{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;flex-wrap:nowrap!important;width:auto!important}
.office-week-nav .secondary-button{width:auto!important;min-width:0!important;white-space:nowrap!important;padding:9px 12px!important}
.office-week-nav .secondary-button:nth-child(2){border-color:#24aaa0!important;color:#65ddd3!important}
.billing-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.billing-grid>div,.billing-line,.pay-summary span{border:1px solid var(--border,#dce3e7);border-radius:14px;padding:14px;background:var(--surface,#fff)}.billing-line{display:grid;grid-template-columns:1fr auto minmax(180px,240px);align-items:center;gap:12px;margin:8px 0}.billing-line label{font-size:12px}.billing-line input{margin-top:5px}.pay-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.pay-summary span{display:grid;gap:5px}.office-muted{color:var(--muted,#6b7780)}
body.dark .billing-grid>div,body.dark .billing-line,body.dark .pay-summary span,html[data-theme="dark"] .billing-grid>div,html[data-theme="dark"] .billing-line,html[data-theme="dark"] .pay-summary span{background:#12383f!important;color:#eef8f7!important;border-color:#2d5960!important}
@media(max-width:700px){.office-week-nav{overflow-x:auto!important;max-width:100%;padding-bottom:3px}.office-week-nav button{flex:0 0 auto!important}.billing-grid{grid-template-columns:1fr}.billing-line{grid-template-columns:1fr}.pay-summary{grid-template-columns:1fr 1fr}}
/* V6.3.1 – Historien, Preisverwaltung und flexible Abrechnungspositionen */
.extra-row{display:grid;grid-template-columns:minmax(180px,2fr) minmax(90px,.7fr) minmax(120px,1fr) auto;gap:8px;align-items:end;margin:8px 0}.extra-row input{width:100%}.office-muted{color:var(--muted,#789);line-height:1.5}.office-table button{white-space:nowrap}.billing-line{grid-template-columns:minmax(180px,2fr) minmax(80px,.7fr) minmax(180px,1fr)}
@media(max-width:720px){.extra-row{grid-template-columns:1fr 1fr}.extra-row .extra-label{grid-column:1/-1}.office-table{font-size:12px}}

/* FL Buddy 7 Fix 15 – echter Fahrzeugkalender */
.vehicle-calendar-shell{margin-top:8px}.vehicle-calendar-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:8px 0 12px}.vehicle-calendar-toolbar h3{margin:4px 0}.vehicle-calendar-toolbar p{margin:0;color:var(--muted,#7f9298)}.vehicle-calendar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.vehicle-view-switch,.vehicle-nav{display:flex;gap:5px}.vehicle-view-switch{padding:4px;border:1px solid var(--border,#2d5960);border-radius:12px;background:rgba(0,0,0,.08)}.vehicle-view-switch button{border:0;background:transparent;color:inherit;padding:8px 12px;border-radius:8px;font-weight:800;cursor:pointer}.vehicle-view-switch button.active{background:#0d7771;color:#fff}.vehicle-day-calendar{border:1px solid var(--border,#2d5960);border-radius:14px;overflow:auto;min-width:900px}.vehicle-time-head,.vehicle-resource-row{display:grid;grid-template-columns:180px minmax(720px,1fr)}.vehicle-time-head{min-height:42px;border-bottom:1px solid var(--border,#2d5960)}.vehicle-time-scale{position:relative}.vehicle-time-scale span{position:absolute;top:12px;transform:translateX(-50%);font-size:11px;color:var(--muted,#8ca1a6)}.vehicle-resource-row{min-height:82px;border-bottom:1px solid var(--border,#2d5960)}.vehicle-resource-row:last-child{border-bottom:0}.vehicle-resource{padding:14px 12px;background:var(--surface,#12383f);border-right:1px solid var(--border,#2d5960);min-width:0}.vehicle-resource b{display:block}.vehicle-resource small{display:block;margin-top:4px;color:var(--muted,#8ca1a6)}.vehicle-timeline{position:relative;min-height:82px;background:rgba(255,255,255,.015)}.vehicle-timeline>i{position:absolute;top:0;bottom:0;width:1px;background:var(--border,#234a51);opacity:.65}.vehicle-event{position:absolute;top:9px;bottom:9px;border-radius:8px;padding:6px 8px;overflow:hidden;border-left:4px solid;min-width:26px}.vehicle-event.lesson{background:rgba(178,60,60,.28);border-color:#c65353}.vehicle-event.block{background:rgba(185,120,46,.30);border-color:#c78942}.vehicle-event strong,.vehicle-event span,.vehicle-event small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.vehicle-event span{font-weight:800;margin-top:2px}.vehicle-week-calendar{display:grid;grid-template-columns:180px repeat(7,minmax(145px,1fr));border:1px solid var(--border,#2d5960);border-radius:14px;overflow:auto;min-width:1120px}.vehicle-week-calendar>div{border-right:1px solid var(--border,#2d5960);border-bottom:1px solid var(--border,#2d5960)}.vehicle-week-head{padding:10px;text-align:center;background:var(--surface,#12383f)}.vehicle-week-head b,.vehicle-week-head span{display:block}.vehicle-week-head span{font-size:11px;color:var(--muted,#8ca1a6);margin-top:2px}.vehicle-resource-head{text-align:left}.vehicle-week-cell{min-height:96px;padding:6px;position:relative}.vehicle-mini-event{border-left:4px solid;border-radius:6px;padding:5px 6px;margin-bottom:5px;font-size:10px;overflow:hidden}.vehicle-mini-event.lesson{background:rgba(178,60,60,.25);border-color:#c65353}.vehicle-mini-event.block{background:rgba(185,120,46,.28);border-color:#c78942}.vehicle-mini-event b,.vehicle-mini-event span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vehicle-free-label{color:var(--muted,#789096);font-size:11px}.vehicle-use-sum{display:block;margin-top:7px;color:var(--muted,#8ca1a6)}.vehicle-month-wrap{display:grid;gap:14px}.vehicle-month-resource{border:1px solid var(--border,#2d5960);border-radius:14px;overflow:hidden}.vehicle-month-title{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;background:var(--surface,#12383f)}.vehicle-month-title small{display:block;color:var(--muted,#8ca1a6);margin-top:2px}.vehicle-month-kpis{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;color:var(--muted,#8ca1a6)}.vehicle-month-kpis strong{color:inherit;font-size:14px}.vehicle-month-grid{display:grid;grid-template-columns:repeat(31,minmax(31px,1fr));overflow:auto}.vehicle-month-day{min-height:52px;padding:6px 4px;border-right:1px solid var(--border,#234a51);text-align:center;background:rgba(46,155,98,.07)}.vehicle-month-day b,.vehicle-month-day span{display:block}.vehicle-month-day b{font-size:10px;color:var(--muted,#8ca1a6)}.vehicle-month-day span{font-size:10px;margin-top:6px}.vehicle-month-day.use-1{background:rgba(178,60,60,.10)}.vehicle-month-day.use-2{background:rgba(178,60,60,.18)}.vehicle-month-day.use-3{background:rgba(178,60,60,.28)}.vehicle-month-day.use-4{background:rgba(178,60,60,.40)}.vehicle-month-day.blocked{box-shadow:inset 0 -4px #b9782e}.vehicle-legend .free{background:#2e9b62}.vehicle-legend .busy{background:#b23c3c}.vehicle-legend .workshop{background:#b9782e}
@media(max-width:800px){.vehicle-calendar-toolbar,.vehicle-month-title{flex-direction:column;align-items:stretch}.vehicle-calendar-actions{justify-content:flex-start}.vehicle-time-head,.vehicle-resource-row{grid-template-columns:135px minmax(720px,1fr)}.vehicle-week-calendar{grid-template-columns:135px repeat(7,145px)}.vehicle-month-kpis{gap:10px}.vehicle-month-grid{grid-template-columns:repeat(31,38px)}}
