@layer tokens{:root,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-background:#eef0f3;--color-surface:#fff;--color-surface-raised:#fff;--color-surface-muted:#e5e8ed;--color-overlay:#16202f99;--color-text:#222b38;--color-text-muted:#526174;--color-text-disabled:#556274;--color-text-on-primary:#fff;--color-border:#d3dae4;--color-border-strong:#78879b;--color-primary:#a52e27;--color-primary-hover:#8f251f;--color-primary-active:#771e19;--color-primary-text:#a52e27;--color-brand-surface:#f5e7e3;--color-selection:#e3efff;--color-selection-text:#164b85;--color-focus-ring:#0867c3;--color-success-text:#145630;--color-success-surface:#b6dfc4;--color-success-border:#2a754b;--color-warning-text:#794708;--color-warning-surface:#fff2d6;--color-warning-border:#a46c18;--color-danger-text:#a32924;--color-danger-surface:#f7e4df;--color-danger-border:#b5473c;--color-info-text:#195b92;--color-info-surface:#e6f1fc;--color-info-border:#417cae;--timeline-text-muted:#4b596a;--panel-background:#dce2e8;--panel-border:#647488;--panel-control-background:#edf1f5;--timeline-surface:#f8fafc;--timeline-header:#d2dae3;--timeline-grid:#647488;--timeline-lane:#f8fafc;--timeline-lane-alternate:#edf2f8;--timeline-weekend-surface:#ced8e3;--timeline-weekend-header:#c0ccd9;--timeline-weekend-text:#344354;--timeline-weekend-border:#607187;--timeline-booked:#79bd94;--timeline-booked-text:#123e24;--timeline-booked-border:#21633d;--color-metal-top:#ffffff24;--color-metal-bottom:#18243903;--shadow-panel:0 1px 3px #1824390d;--shadow-soft:0 4px 14px #18243914;--shadow-overlay:0 12px 40px #18243933}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-background:#181818;--color-surface:#222;--color-surface-raised:#333;--color-surface-muted:#2b2b2b;--color-overlay:#080808b8;--color-text:#ededed;--color-text-muted:#bcbcbc;--color-text-disabled:#aaa;--color-text-on-primary:#fff;--color-border:#505050;--color-border-strong:#969696;--color-primary:#b83b30;--color-primary-hover:#c24739;--color-primary-active:#a03027;--color-primary-text:#ed8777;--color-brand-surface:#382422;--color-selection:#233f60;--color-selection-text:#c5e0ff;--color-focus-ring:#80baff;--color-success-text:#80c99c;--color-success-surface:#163725;--color-success-border:#4f9f6e;--color-warning-text:#f4cc85;--color-warning-surface:#3d311c;--color-warning-border:#c1954e;--color-danger-text:#ffada1;--color-danger-surface:#402622;--color-danger-border:#ca766b;--color-info-text:#abd5ff;--color-info-surface:#223b54;--color-info-border:#72a4d2;--timeline-text-muted:var(--color-text-muted);--panel-background:#202020;--panel-border:#969696;--panel-control-background:#2b2b2b;--timeline-surface:#222;--timeline-header:#333;--timeline-grid:#969696;--timeline-lane:#222;--timeline-lane-alternate:#2b2b2b;--timeline-weekend-surface:#383838;--timeline-weekend-header:#444;--timeline-weekend-text:#ededed;--timeline-weekend-border:#a0a0a0;--timeline-booked:#1b422d;--timeline-booked-text:#a2dfb9;--timeline-booked-border:#5ba778;--color-metal-top:#ffffff09;--color-metal-bottom:#0000000a;--shadow-panel:0 1px 3px #0000001a;--shadow-soft:0 4px 14px #0003;--shadow-overlay:0 12px 40px #0006}:root{--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:12px;--space-6:16px;--space-7:20px;--space-8:24px;--space-9:32px;--control-height:32px;--control-height-small:28px;--table-row-height:34px;--radius-control:5px;--radius-panel:8px;--radius-pill:999px;--border-width:1px;--panel-border-width:var(--border-width);--panel-radius:var(--radius-panel);--panel-padding:var(--space-6);--panel-padding-compact:var(--space-5);--panel-padding-comfortable:var(--space-7);--panel-padding-roomy:var(--space-8);--panel-section-background:var(--panel-background);--timeline-background:var(--panel-background);--timeline-border:var(--panel-border);--color-surface-detail:var(--panel-background);--color-surface-toolbar:var(--panel-section-background);--color-panel-border:var(--panel-border);--font-body:13px;--font-label:12px;--font-table:13px;--font-heading:20px;--font-section:15px;--font-meta:12px;--line-height:1.45;--sidebar-width:clamp(184px, 15vw, 216px);--nav-background:#202020;--nav-surface:#282828;--nav-surface-hover:#383838;--nav-text:#eee;--nav-text-muted:#c2c2c2;--nav-text-disabled:#aaa;--nav-border:#5c5c5c;--nav-active-background:#414141;--nav-active-text:#fff;--nav-focus-ring:#90c2ff;--timeline-text:var(--color-text);--timeline-divider:var(--timeline-grid);--timeline-focus-ring:var(--color-focus-ring);--timeline-today:var(--color-focus-ring);--timeline-selection:var(--color-selection);--timeline-hover:var(--color-selection);--timeline-disabled:var(--color-surface-muted);--timeline-disabled-text:var(--color-text-disabled);--timeline-conflict:var(--color-danger-text);--timeline-requested:var(--color-info-surface);--timeline-available:var(--color-success-text);--timeline-declined:var(--color-danger-surface);--label-paper:#fff;--label-ink:#000;--label-selection:#0867c3;--label-guide:#78879b;--label-grid:#d3dae4;--label-placeholder-surface:#e9edf3;--label-placeholder-text:#526174;--color-bg-surface:var(--color-surface);--color-border-subtle:var(--color-border);--color-danger-soft:var(--color-danger-surface);--radius-card:var(--radius-panel);--shadow-modal:var(--shadow-overlay);--color-bg:var(--color-background);--color-bg-deep:var(--color-background);--color-bg-elevated:var(--color-surface-raised);--color-bg-panel:var(--color-surface);--color-bg-panel-strong:var(--color-surface-raised);--color-bg-input:var(--color-surface);--color-bg-input-hover:var(--color-surface-muted);--color-bg-input-focus:var(--color-surface);--color-bg-option:var(--color-surface);--color-text-strong:var(--color-text);--color-text-soft:var(--color-text-muted);--color-accent:var(--color-primary-text);--color-accent-strong:var(--color-primary-text);--color-accent-soft:var(--color-brand-surface);--color-accent-border:var(--color-primary-text);--color-border-muted:var(--color-border);--color-success:var(--color-success-text);--color-success-bg:var(--color-success-surface);--color-warning:var(--color-warning-text);--color-warning-bg:var(--color-warning-surface);--color-danger:var(--color-danger-text);--color-danger-bg:var(--color-danger-surface);--color-info:var(--color-info-text);--color-info-bg:var(--color-info-surface);--color-neutral:var(--color-text-muted);--color-neutral-bg:var(--color-surface-muted);--color-neutral-border:var(--color-border);--gradient-shell:var(--color-background);--gradient-panel:var(--color-surface);--gradient-control:var(--color-surface-raised);--gradient-accent:var(--color-primary);--shadow-accent:var(--shadow-soft);--surface-material:linear-gradient(180deg, var(--color-metal-top), var(--color-metal-bottom))}}@layer base{*{box-sizing:border-box}html{scrollbar-gutter:stable}html,body,#root{min-height:100%;margin:0}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:var(--font-body);line-height:var(--line-height);background:var(--color-background);color:var(--color-text)}h1,h2,h3,h4,p{overflow-wrap:anywhere}h1{font-size:var(--font-heading)}h2,h3{font-size:var(--font-section)}small{font-size:var(--font-meta)}.auth-loading{place-items:center;min-height:100vh;display:grid}.route-loading{place-items:center;min-height:160px;display:grid}.route-error-boundary{padding:var(--space-6);border:1px solid var(--color-danger-border);border-radius:var(--radius-panel);background:var(--color-danger-surface)}.route-error-actions{gap:var(--space-4);flex-wrap:wrap;display:flex}.route-error-details{white-space:pre-wrap;max-height:180px;overflow:auto}}@layer features{.language-switcher{gap:var(--space-3);flex-direction:column;min-width:150px;display:flex}.language-switcher span{color:var(--color-text-muted);font-size:var(--font-meta);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.language-switcher select{min-height:38px;padding:var(--space-4) var(--space-4);color-scheme:inherit;font-size:var(--font-body)}.app-header{align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-wrap:wrap;display:flex}.header-content{flex:220px;min-width:0}.eyebrow{font-size:var(--font-meta);color:var(--color-text-muted);margin:0;font-weight:600}.app-header h1{font-size:var(--font-heading);color:var(--color-text);margin:0;line-height:1.3}.subtitle{margin:var(--space-2) 0 0;font-size:var(--font-meta);color:var(--color-text-muted)}.header-actions{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.app-header .status-pill{font-size:var(--font-meta);border:1px solid var(--color-border);border-radius:var(--radius-control);padding:var(--space-2) var(--space-3);color:var(--color-text-muted);background:var(--color-surface-muted)}.theme-control{position:relative}.theme-control label{align-items:center;gap:var(--space-3);display:flex}.theme-error{z-index:50;width:min(320px,80vw);padding:var(--space-4);background:var(--color-danger-surface);color:var(--color-danger-text);border:1px solid var(--color-danger-border);border-radius:var(--radius-control);position:absolute;top:100%;right:0}@media (width<=1000px){.app-header{padding:var(--space-4)}.header-content{flex-basis:180px}}.app-shell-layout{background:var(--color-background);min-height:100dvh;color:var(--color-text);display:flex}.app-shell-main{flex-direction:column;flex:1;min-width:0;display:flex}.app-shell-content{min-width:0;padding:var(--space-6);flex:1;overflow-x:clip}.access-state{padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-panel);background:var(--color-surface)}.access-state h2{margin-top:0}.shell-navigation-toggle{display:none}.skip-link{z-index:2000;padding:var(--space-4);background:var(--color-surface);position:fixed;top:-100px;left:12px}.skip-link:focus{top:8px}@media (width<=1000px){.app-shell-layout{display:block}.shell-navigation-toggle{display:inline-flex}.app-shell-content{padding:var(--space-4)}}}@layer components{button,input,select,textarea{font:inherit}button,.ui-button{min-height:var(--control-height);border:var(--border-width) solid var(--control-border,var(--color-border-strong));border-radius:var(--radius-control);padding:var(--space-3) var(--space-5);background:var(--control-background,var(--color-surface));color:var(--color-text);cursor:pointer;font-weight:600}button:hover:not(:disabled){background:var(--color-surface-muted)}button:active:not(:disabled){background:var(--color-selection)}.ui-button-primary,button[class*=submit]:not([class*=secondary]),button[class*=primary-button]{background:var(--color-primary);color:var(--color-text-on-primary);border-color:var(--color-primary)}.ui-button-primary:hover:not(:disabled),button[class*=submit]:not([class*=secondary]):hover:not(:disabled),button[class*=primary-button]:hover:not(:disabled){background:var(--color-primary-hover);color:var(--color-text-on-primary)}.ui-button-danger,button[class*=danger],button[class*=delete]{background:var(--color-danger-surface);color:var(--color-danger-text);border-color:var(--color-danger-border)}.ui-button-ghost{background:0 0;border-color:#0000}.ui-icon-button{width:var(--control-height);padding:var(--space-2);place-items:center;display:inline-grid}:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color])),select,textarea{min-height:var(--control-height);border:var(--border-width) solid var(--control-border,var(--color-border-strong));border-radius:var(--radius-control);max-width:100%;padding:var(--space-3) var(--space-4);background:var(--control-background,var(--color-surface));color:var(--color-text);font-size:var(--font-body);color-scheme:inherit}textarea{resize:vertical;min-height:72px}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:0;margin:var(--space-2);accent-color:var(--color-focus-ring);padding:0}input::placeholder,textarea::placeholder{color:var(--color-text-muted);opacity:1}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--color-text-muted)}input[readonly],textarea[readonly]{background:var(--color-surface-muted);border-style:dashed}:disabled,[aria-disabled=true]{color:var(--color-text-disabled);cursor:not-allowed}button:disabled,input:disabled,select:disabled,textarea:disabled{background:var(--color-surface-muted);border-color:var(--color-border);opacity:1;box-shadow:none;color:var(--color-text-disabled)}[aria-invalid=true]:is(input,select,textarea):not(:focus-visible){border-color:var(--color-danger-border)}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--color-focus-ring);background:var(--control-background,var(--color-surface));box-shadow:none}select option{background:var(--color-surface);color:var(--color-text)}select option:checked{background:var(--color-selection);color:var(--color-selection-text)}a{color:var(--color-info-text);text-underline-offset:3px}a:hover{text-decoration:underline}label{font-size:var(--font-label);font-weight:500}label>span,label>strong{line-height:1.4}table{border-collapse:collapse;width:100%;font-size:var(--font-table);font-variant-numeric:tabular-nums}th,td{height:var(--table-row-height);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle}th{background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--font-label);font-weight:600}tbody tr:hover{background:var(--color-surface-muted)}tr[aria-selected=true],tr.selected,tr.is-selected{background:var(--color-selection);box-shadow:inset 3px 0 var(--color-focus-ring)}th[aria-sort] button{min-height:24px;color:inherit;background:0 0;border:0;padding:0}.ui-table-scroll,[class*=table-wrap]{max-width:100%;overflow-x:auto}.ui-panel{padding:var(--panel-padding-compact)}.ui-panel>h2{margin:0 0 var(--space-5);font-size:var(--font-section)}.ui-actions,nav[aria-label=Listenseiten]{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}nav[aria-label=Listenseiten]{margin-block:var(--space-4);font-size:var(--font-meta);justify-content:flex-end}.ui-badge{align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-control);padding:var(--space-1) var(--space-3);color:var(--color-text-muted);background:var(--color-surface-muted);font-size:var(--font-meta);font-weight:600;display:inline-flex}.ui-badge-success{color:var(--color-success-text);background:var(--color-success-surface);border-color:var(--color-success-border)}.ui-badge-warning{color:var(--color-warning-text);background:var(--color-warning-surface);border-color:var(--color-warning-border)}.ui-badge-danger{color:var(--color-danger-text);background:var(--color-danger-surface);border-color:var(--color-danger-border)}.ui-badge-info{color:var(--color-info-text);background:var(--color-info-surface);border-color:var(--color-info-border)}.ui-state,.route-loading,.auth-loading{padding:var(--space-6);color:var(--color-text-muted)}.ui-state-error,.form-error-text,.customer-field-error{color:var(--color-danger-text)}.ui-state-readonly{border-inline-start:3px solid var(--control-border,var(--color-border-strong))}.ui-dialog{border:1px solid var(--color-border-strong);border-radius:var(--radius-panel);width:min(640px,100vw - 24px);min-width:0;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:var(--space-6);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-overlay);margin:auto;position:fixed;inset:0;overflow:auto}.ui-dialog:not([open]){display:none}.ui-dialog::backdrop{background:var(--color-overlay)}.ui-dialog h2,.ui-dialog h3{font-size:var(--font-section);margin-block:0 var(--space-5)}.ui-dialog label,.ui-dialog input,.ui-dialog select{min-width:0}.ui-menu{z-index:1000;gap:var(--space-2);width:max-content;min-width:180px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-panel);background:var(--color-surface-raised);color:var(--color-text);box-shadow:var(--shadow-overlay);display:grid;position:fixed;overflow:auto}.ui-menu button{text-align:left;background:0 0;border-color:#0000}.ui-menu button:focus-visible{outline-offset:-2px;background:var(--color-selection)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}.ui-dialog:is(.customer-modal,.address-modal,.inventory-modal,.warehouse-modal,.admin-modal){width:min(1120px,100vw - 24px)}.ui-dialog{container:dialog/inline-size}@container dialog (width<=800px){.customer-modal-body{grid-template-columns:minmax(0,1fr)}}.personnel-keyboard-actions{margin-block:var(--space-4)}.timeline-keyboard-help{font-size:var(--font-meta);color:var(--color-text-muted)}.timeline-keyboard-help summary{cursor:pointer}.timeline-keyboard-help[open]{flex-basis:100%}.ui-button-primary:active:not(:disabled),button[class*=submit]:not([class*=secondary]):active:not(:disabled),button[class*=primary-button]:active:not(:disabled){background:var(--color-primary-active);color:var(--color-text-on-primary)}.ui-button-primary:disabled,button[class*=submit]:disabled,button[class*=primary-button]:disabled{background:var(--color-surface-muted);border-color:var(--color-border);color:var(--color-text-disabled)}.personnel-search-fields{align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;min-width:0;display:flex}.personnel-search-fields>label{gap:var(--space-2);flex:160px;min-width:0;display:grid}.personnel-search-fields input{width:100%}.personnel-search-pages{align-items:center;gap:var(--space-2);font-size:var(--font-meta);display:flex}.personnel-keyboard-actions{gap:var(--space-2)}.personnel-keyboard-actions button{font-size:var(--font-label);padding-inline:var(--space-4)}button{box-shadow:none;transform:none}.ui-dialog{transform:none}.ui-dialog:is(.project-personnel-dialog,.project-create-modal){width:min(920px,100vw - 24px)}@container dialog (width<=800px){.project-personnel-price-row,.project-personnel-price-row-with-ek,.project-personnel-price-total,.project-personnel-price-total-with-ek{grid-template-columns:minmax(0,1fr)}}:is(.ui-panel,.login-panel,.warehouse-header,.warehouse-panel,.project-form-panel,.project-list-panel,.project-detail-panel,.project-timeline-panel,.project-new-customer-fields,.project-calculation-panel,.project-module-placeholder,.project-calculation-category,.project-job-form,.project-job-card,.project-disposition-section,.project-material-history-sidebar,.project-job-calculation-panel,.project-personnel-timeline,.project-personnel-timeline-summary,.project-history-panel,.project-personnel-assignee-row,.project-staffing-create,.project-staffing-position-edit,.project-staffing-candidate-picker,.project-staffing-position,.project-summary-card,.dashboard-panel,.personnel-planning-filters,.personnel-planning-row,.create-inventory-form-wrapper,.inventory-page,.inventory-extension-panel,.extension-card,.admin-header,.admin-card,.admin-assignment-panel,.admin-logo-upload-panel,.address-header,.address-card,.customer-form-panel,.customer-list-panel,.customer-contact-panel,.customer-section,.customer-contact-summary-card,.customer-contact-card,.vehicles-form-section){background:var(--panel-background);border:var(--panel-border-width) solid var(--panel-border);border-radius:var(--panel-radius);box-shadow:none;--control-background:var(--panel-control-background);--control-border:var(--panel-border)}:is(.ui-panel,.warehouse-panel,.project-list-panel,.project-detail-panel,.project-timeline-panel,.project-personnel-timeline,.project-staffing-position,.dashboard-panel,.inventory-page,.admin-card,.address-card,.customer-section,.vehicles-form-section){background-image:var(--surface-material)}:is(.ui-panel-section,.project-list-panel>.project-panel-header,.project-timeline-controls,.project-disposition-toolbar,.project-material-toolbar,.project-job-material-toolbar){background:var(--panel-section-background);border-radius:var(--panel-radius);box-shadow:inset 0 0 0 var(--panel-border-width) var(--panel-border);--control-background:var(--panel-control-background);--control-border:var(--panel-border)}.project-timeline-panel .project-timeline-controls{box-shadow:none}.sidebar{width:var(--sidebar-width);flex:0 0 var(--sidebar-width);background:var(--nav-background);height:100dvh;color:var(--nav-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-right:1px solid var(--nav-border);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-nav{padding:var(--space-6) var(--space-4);flex:1}.sidebar-logo{min-height:44px;padding:var(--space-4);margin-bottom:var(--space-6);align-items:center;display:flex}.logo-image{object-fit:cover;width:100%;max-width:184px;height:64px}.nav-list,.nav-sub-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sidebar .nav-link,.sidebar .nav-group-label{align-items:center;gap:var(--space-4);min-height:36px;padding:var(--space-4);border-radius:var(--radius-control);color:var(--nav-text);font-size:var(--font-body);background:0 0;border:0;font-weight:500;text-decoration:none;display:flex}.sidebar .nav-link:hover,.sidebar .nav-group-label:hover{color:var(--nav-text);background:var(--nav-surface-hover);text-decoration:none}.sidebar .nav-link.active,.sidebar .nav-group-label.active{color:var(--nav-active-text);background:var(--nav-active-background);box-shadow:inset 3px 0 var(--nav-focus-ring);font-weight:700}.sidebar :is(.nav-link,.nav-group-label):focus-visible{outline:2px solid var(--nav-focus-ring);outline-offset:-2px}.sidebar :is(.nav-link,.nav-group-label):is(:disabled,[aria-disabled=true]){color:var(--nav-text-disabled);background:var(--nav-surface);box-shadow:none;cursor:not-allowed}.sidebar .nav-group-label:active:not(:disabled){background:var(--nav-active-background);color:var(--nav-active-text)}.nav-group-label{text-align:left;cursor:pointer;width:100%}.nav-sub-list{margin-left:var(--space-6);padding-left:var(--space-4);border-left:1px solid var(--nav-border)}.nav-icon{text-align:center;flex:0 0 20px;width:20px}.nav-label{overflow-wrap:anywhere;flex:1;min-width:0}.nav-chevron{font-size:var(--font-meta)}.sidebar-footer{padding:var(--space-5);border-top:1px solid var(--nav-border);background:var(--nav-surface)}.sidebar-version{font-size:var(--font-meta);color:var(--nav-text-muted);margin:0}.sidebar-build{display:block}@media (width<=1000px){.sidebar{border-right:0;border-bottom:1px solid var(--nav-border);width:auto;height:auto;display:none;position:static}.sidebar[data-open=true]{display:flex}.sidebar-logo{display:none}.sidebar-nav{padding:var(--space-4)}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}}}
