body{--bg:#f5f6f8;--surface:#ffffff;--surface-raised:#f8fafb;--surface-muted:#edf1f5;--ink:#1d2939;--muted:#64748b;--line:#dfe5ec;--disabled-bg:#edf1f5;--disabled-ink:#64748b;--success:#2b6b45;--success-bg:#eaf5ed;--warning:#805510;--warning-bg:#fff3dc;--danger:#a53f37;--danger-bg:#fff0ed;--info:#315f9b;--info-bg:#ebf2fc;--brand-soft:color-mix(in srgb,var(--green) 10%,var(--surface));--green-soft:var(--brand-soft);--green-light:var(--brand-soft);background:var(--bg);color:var(--ink);color-scheme:light}
body.dark{--bg:#10171f;--surface:#19232e;--surface-raised:#202d3a;--surface-muted:#263442;--ink:#e7edf5;--muted:#aab8c9;--line:#354454;--disabled-bg:#222e3c;--disabled-ink:#a5b4c6;--success:#9bd4ae;--success-bg:#20392e;--warning:#efd09a;--warning-bg:#3b3020;--danger:#ffb0a7;--danger-bg:#402a2c;--info:#b0d0ff;--info-bg:#21354b;--shadow:0 8px 28px #00000012;color-scheme:dark}
body .button.primary{background:var(--brand-fill);color:var(--brand-on);border:1px solid color-mix(in srgb,var(--green) 40%,var(--brand-fill))}body .button.primary:hover{background:var(--brand-hover)}.button.secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}.button.danger{color:var(--danger);background:var(--danger-bg)}.button.secondary:hover,.icon-button:hover{background:var(--surface-raised)}.button.link,.eyebrow,.site-picker .icon{color:var(--green)}.icon-button{color:var(--muted)}:where(button,input,select,textarea,a):focus-visible{outline:2px solid var(--green);outline-offset:3px}
.nav-item.active{background:var(--lime);color:var(--nav-active-ink)}.help-card{background:linear-gradient(135deg,color-mix(in srgb,var(--nav) 85%,var(--brand-fill)),var(--nav));border-color:#ffffff26}.workspace .workspace-icon{background:#ffffff0d}.brand-mark{background:var(--lime);color:var(--nav-active-ink)}.profile small{color:#c4d1d3}.sidebar .nav-caption{color:#a2b5bb}.sidebar .workspace,.sidebar .workspace span{color:#c7d4d8}.sidebar .workspace strong{color:#f3f6f8}.sidebar .nav-item:not(.active){color:#c2d0d5}.sidebar .help-card p,.sidebar .help-card button{color:#c7d6d6}.top-avatar,.avatar{background:var(--brand-soft);color:var(--green)}.sidebar .avatar{background:var(--lime);color:var(--nav-active-ink)}
.panel,.metric,.modal,.settings-section{background:var(--surface);color:var(--ink);border-color:var(--line)}.subtitle,.panel-subtitle,.metric-top,.metric-bottom,.metric-value small,.muted,.date-label,.chart-caption,.donut-center span,.donut-item,.activity-row p,.activity-time,.tank-row-top span:last-child,.tank-amount,.field label,.field small,.settings-section>p,.modal-note,.modal-header p,.list-item p,.table-product small,.search-button,.search-result small,.reading-layout-toolbar p,.reading-group-heading p{color:var(--muted)}.data-table th{background:var(--surface-raised);color:var(--muted);border-color:var(--line)}.data-table td{color:var(--ink);border-color:var(--line)}.data-table td strong,.stat-pair strong,.tank-amount strong,.shift-summary strong,.donut-item strong,.tank-visual strong,.visual-grid strong,.settings-section h2,.modal h2{color:var(--ink)}.data-table tbody tr:hover{background:var(--surface-raised)}.line-chart text{fill:var(--muted)}.metric-icon,.product-icon,.equipment-icon,.activity-icon,.step .step-icon{background:var(--brand-soft);color:var(--green)}.trend,.badge{background:var(--success-bg);color:var(--success)}.trend.amber,.badge.amber,.notice.amber,.role-banner{background:var(--warning-bg);color:var(--warning);border-color:color-mix(in srgb,var(--warning) 28%,transparent)}.badge.red,.form-error{background:var(--danger-bg);color:var(--danger)}.badge.gray{background:var(--surface-muted);color:var(--muted)}.badge.blue{background:var(--info-bg);color:var(--info)}.text-red{color:var(--danger)}.text-green,.live{color:var(--success)}.notice,.insight{background:var(--brand-soft);color:var(--green)}.mini-bars i{background:var(--green)}.demo-strip,.demo-strip button{color:var(--muted)}
.field input,.field select,.field textarea,.input-inline,.filter-select,.field-search{background:var(--surface);color:var(--ink);border-color:var(--line)}.field input::placeholder,.field textarea::placeholder,.input-inline::placeholder{color:var(--muted);opacity:1}.field input:disabled,.field select:disabled,.input-inline:disabled,.field input[readonly]{background:var(--disabled-bg);color:var(--disabled-ink);opacity:1;border-color:var(--line)}input[type=checkbox],input[type=radio]{accent-color:var(--brand-fill)}.period-pills button{color:var(--muted)}.period-pills button.active,.settings-nav button.active{background:var(--brand-soft);color:var(--green)}.period-pills,.reading-layout-switch{background:var(--surface-raised);border-color:var(--line)}.shift-number{background:var(--surface-muted);color:var(--muted)}.shift-mini.active .shift-number{background:var(--brand-soft);color:var(--green)}.shift-mini p{color:var(--muted)}.shift-summary,.nozzle,.tank-visual,.visual-grid div,.report-total{background:var(--surface-raised);border-color:var(--line)}.progress-track{background:var(--surface-muted)}.tank-visual small,.nozzle small{color:var(--muted)}.nozzle strong{color:var(--ink)}.tank-water{opacity:.32}.step{background:var(--surface);border-color:var(--line);color:var(--ink)}.step p{color:var(--muted)}.step.selected{border-color:var(--green);background:var(--brand-soft)}.step.locked{background:var(--surface-raised);color:var(--muted)}.step.locked .step-icon{background:var(--surface-muted);color:var(--muted)}.day-banner{background:linear-gradient(110deg,var(--nav),var(--brand-fill));border-color:color-mix(in srgb,var(--green) 40%,var(--nav))}.day-banner .button{background:var(--lime);color:var(--nav-active-ink)}.day-banner .eyebrow,.day-banner p{color:#e4eeeb}.dark .modal-backdrop{background:#050a12b8}.modal-footer,.modal-header,.list-item,.stat-pair,.panel-footer{border-color:var(--line)}.toast{background:var(--nav);color:#f3f6f8;border:1px solid var(--line)}.toast.error{background:var(--danger-bg);color:var(--danger)}.search-result:hover{background:var(--surface-raised)}.dark .avatar[style]{background:var(--brand-soft)!important;color:var(--green)!important}.file-zone{background:var(--surface-raised);color:var(--muted);border-color:var(--line)}
.palette-fieldset{border:0;padding:0;margin:24px 0 0;min-width:0}.palette-fieldset legend{font-weight:600;margin-bottom:12px;font-size:12px;color:var(--ink)}.palette-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.palette-option{position:relative;display:flex;flex-direction:column;gap:9px;border:1px solid var(--line);border-radius:12px;padding:12px;cursor:pointer;color:var(--ink);font-size:11px;background:var(--surface)}.palette-option:has(input:checked){border-color:var(--green);box-shadow:0 0 0 2px var(--brand-soft)}.palette-option input{position:absolute;right:10px;top:10px;z-index:1}.palette-preview{height:63px;border:1px solid var(--line);border-radius:7px;background:var(--surface-raised);position:relative;overflow:hidden}.palette-preview i{position:absolute;inset:0 auto 0 0;width:29%;background:var(--palette-nav)}.palette-preview i:after{content:'';position:absolute;left:12%;right:12%;top:24px;height:8px;border-radius:3px;background:var(--palette-highlight)}.palette-preview b{position:absolute;left:36%;top:12px;width:40%;height:8px;border-radius:3px;background:var(--palette-accent)}.palette-preview em{position:absolute;left:36%;top:31px;width:52%;height:20px;border:1px solid var(--line);border-radius:5px;background:var(--surface)}.appearance-example{display:flex;gap:12px;align-items:center;padding:18px;margin:24px 0;border:1px solid var(--line);background:var(--surface-raised);border-radius:12px}.appearance-example p{font-size:10px;color:var(--muted);margin-top:6px}.appearance-example>.badge{margin-left:auto}.appearance-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:18px}.opening-checklist{display:grid;gap:12px;margin-top:20px}.opening-checklist>div{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:15px;border:1px solid var(--line);border-radius:10px;background:var(--surface-raised)}.opening-checklist p{flex:1;min-width:180px;color:var(--ink);font-size:11px;line-height:1.7}.opening-checklist .button{margin-left:auto}
@media(max-width:720px){.palette-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.appearance-example{flex-wrap:wrap}.appearance-actions .button{width:100%}.opening-checklist .button{width:100%;margin-left:0}}

html:has(body.dark){background:#10171f;color-scheme:dark}.dark .auth-form-panel,.dark .auth-layout{background:var(--bg)}.dark .auth-login h2,.dark .auth-description{color:var(--ink)}.dark .auth-password-help,.dark .auth-secure,.dark .auth-description{color:var(--muted)}.dark .auth-loading{background:var(--bg);color:var(--ink)}
/* Factures PDF */
.invoice-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 20px}.invoice-fields{border:0;padding:0;min-width:0}.invoice-fields h3{margin:28px 0 12px}.invoice-lines{display:grid;gap:18px}.invoice-line{background:var(--surface-muted);border:1px solid var(--line);border-radius:16px;padding:20px}.invoice-line-title{display:flex;align-items:center;gap:12px;margin-bottom:18px}.invoice-upload{text-align:center;border:2px dashed var(--line);border-radius:18px;padding:24px;background:var(--surface-muted)}.invoice-upload .field{text-align:left;margin-top:20px}.invoice-steps{display:grid;gap:12px;padding:12px 24px;color:var(--muted)}.invoice-progress{text-align:center;padding:42px 16px}.invoice-spinner{display:inline-block;width:42px;height:42px;border:3px solid var(--line);border-top-color:var(--green);border-radius:50%;animation:invoice-spin 1s linear infinite}@keyframes invoice-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.invoice-spinner{animation:none}}
