@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e8edf5;--bg:#0b1220;--surface:#121b2e;--surface-2:#182338;--border:#24324a;--text:#e8edf5;--muted:#8fa0bc;--primary:#4f8cff;--primary-hover:#3d78e8;--success:#34d399;--warning:#fbbf24;--danger:#f87171;--green-bg:#34d3991f;--blue-bg:#4f8cff1f;--orange-bg:#fbbf241f;--red-bg:#f871711f;background:#0b1220;font-family:IBM Plex Sans,system-ui,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{background:radial-gradient(circle at top left, #152238 0%, var(--bg) 45%);min-height:100vh;margin:0}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}#root{min-height:100vh}.app-shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}.app-banner{border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;margin:1rem 1.5rem 0;padding:.75rem 1rem;font-size:.9375rem;display:flex}.app-banner-info{color:var(--text-primary,#1e293b);background:#3b82f61f}.app-banner-error{color:#b91c1c;background:#ef44441f}.banner-action{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;text-decoration:underline}.sidebar{border-right:1px solid var(--border);background:#121b2ef2;flex-direction:column;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.sidebar-brand{align-items:center;gap:12px;padding:8px 12px 24px;display:flex}.brand-mark{background:var(--surface-2);border:1px solid var(--border);width:44px;height:44px;color:var(--text);letter-spacing:.04em;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:.78rem;font-weight:700;line-height:1;display:flex}.brand-text{flex-direction:column;gap:2px;min-width:0;display:flex}.brand-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text);font-size:.8rem;font-weight:700;line-height:1.2;display:block}.brand-subtitle{letter-spacing:.28em;text-transform:uppercase;color:#5eb3e8;font-size:.62rem;font-weight:500;line-height:1.2;display:block}.sidebar-brand span:not(.brand-subtitle){color:var(--muted);font-size:.82rem}.sidebar-nav{flex-direction:column;flex:1;gap:6px;display:flex}.sidebar-user{border-top:1px solid var(--border);flex-direction:column;gap:8px;margin-top:auto;padding-top:16px;display:flex}.sidebar-user-name{padding:0 4px;font-size:.9rem;font-weight:600}.sidebar-user-btn{justify-content:center;width:100%}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-page .card{width:min(100%,420px)}.nav-link{color:var(--muted);border-radius:10px;padding:12px 14px;font-weight:500}.nav-link:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.nav-link.active{color:#dbeafe;background:#4f8cff26}.main-content{padding:28px 32px 48px}.page{max-width:1400px}.page>.card+.card,.page>.card+.form-spoiler-card{margin-top:20px}.form-spoiler-card{overflow:hidden}.form-spoiler-summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:18px 20px;font-size:1.1rem;font-weight:600;list-style:none;display:flex}.form-spoiler-summary::-webkit-details-marker{display:none}.form-spoiler-toggle{color:var(--muted);font-size:.88rem;font-weight:500}.form-spoiler[open] .form-spoiler-summary{border-bottom:1px solid var(--border)}.form-spoiler-body{padding:18px 20px 20px}.pagination{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding-top:16px;display:flex}.pagination-info{color:var(--muted);font-size:.88rem}.pagination-controls{align-items:center;gap:10px;display:flex}.pagination-page{color:var(--muted);text-align:center;min-width:4rem;font-size:.88rem}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-header h1{margin:0;font-size:1.9rem}.page-header p{color:var(--muted);margin:6px 0 0}.header-actions{flex-wrap:wrap;gap:8px;display:flex}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.stats-grid.compact{grid-template-columns:repeat(6,minmax(0,1fr))}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:16px 18px}.stat-label{color:var(--muted);margin-bottom:8px;font-size:.85rem;display:block}.stat-value{font-size:1.55rem;line-height:1.1;display:block}.stat-meta{color:var(--muted);margin-top:8px;font-size:.82rem;display:block}.stat-card.accent-green{background:var(--green-bg)}.stat-card.accent-blue{background:var(--blue-bg)}.stat-card.accent-orange{background:var(--orange-bg)}.stat-card.accent-red{background:var(--red-bg)}.dashboard-grid,.two-column{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden}.card-header{justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 20px 0;display:flex}.card-header h2{margin:0;font-size:1.1rem}.card-header p{color:var(--muted);margin:4px 0 0;font-size:.9rem}.card-body{padding:18px 20px 20px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.checkbox-field{cursor:pointer;align-items:center;gap:10px;margin:0;display:flex}.checkbox-field input{width:1rem;height:1rem;margin:0}.field{flex-direction:column;gap:6px;display:flex}.field-label{color:var(--muted);font-size:.88rem}.field-input{border:1px solid var(--border);background:var(--surface-2);width:100%;color:var(--text);font:inherit;border-radius:10px;padding:10px 12px}.field-input:focus{border-color:var(--primary);outline:2px solid #4f8cff59}.field-hint{color:var(--muted);font-size:.78rem}.form-actions{grid-column:1/-1;gap:8px;display:flex}.btn{font:inherit;cursor:pointer;border:none;border-radius:10px;padding:10px 16px;font-weight:600;transition:background .15s}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:#22314a}.btn-ghost{color:var(--muted);background:0 0}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-danger{color:#fecaca;background:#f8717126}.btn-danger:hover{background:#f8717140}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.92rem}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:12px 10px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.82rem;font-weight:600}.table-sub{color:var(--muted);margin-top:4px;font-size:.78rem;display:block}.status-cell{width:1%}.table-select{appearance:none;white-space:nowrap;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;background-size:12px;border:1px solid #0000;border-radius:999px;padding:4px 28px 4px 10px;font-size:.78rem;font-weight:600;line-height:1.3}.table-select-planned{color:#cbd5e1;background-color:#94a3b82e}.table-select-in_transit{color:#bfdbfe;background-color:#4f8cff2e}.table-select-delivered{color:#a7f3d0;background-color:#34d3992e}.table-select-cancelled{color:#fecaca;background-color:#f871712e}.table-select option{color:#111827;background-color:#fff}.actions-cell{white-space:nowrap;flex-direction:column;align-items:flex-start;gap:6px;width:1%;display:flex}.actions-cell .btn{padding:6px 12px;font-size:.82rem}.odometer-date-edit{flex-direction:column;gap:8px;min-width:12rem;display:flex}.odometer-date-quick{flex-wrap:wrap;gap:6px;display:flex}.odometer-date-hint{margin:0;font-size:.82rem}tr.row-editing{background:color-mix(in srgb, var(--primary) 12%, transparent);outline:1px solid color-mix(in srgb, var(--primary) 35%, transparent)}tr.row-editing td{background:0 0}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.badge{white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:.78rem;font-weight:600;line-height:1.3;display:inline-block}.badge-planned{color:#cbd5e1;background:#94a3b82e}.badge-in_transit{color:#bfdbfe;background:#4f8cff2e}.badge-delivered{color:#a7f3d0;background:#34d3992e}.badge-cancelled{color:#fecaca;background:#f871712e}.empty-text,.info-text{color:var(--muted);margin:0}.import-preview-list{max-height:16rem;margin:.5rem 0 0;padding-left:1.25rem;font-size:.85rem;line-height:1.4;overflow-y:auto}.checkbox-field{cursor:pointer;align-items:flex-start;gap:.5rem;display:flex}.checkbox-field input{margin-top:.2rem}.info-text.muted{margin-top:10px;font-size:.88rem}.preview-box{background:var(--surface-2);border:1px dashed var(--border);border-radius:12px;flex-direction:column;grid-column:1/-1;gap:4px;padding:14px;display:flex}.field-full{grid-column:1/-1}.stops-editor{flex-direction:column;gap:14px;display:flex}.stops-list{flex-direction:column;gap:10px;display:flex}.stop-row{align-items:flex-end;gap:8px;display:flex}.stop-row .field{flex:1}.mileage-row{align-items:flex-end;gap:12px;display:flex}.mileage-row .field{flex:1;max-width:180px}.field-hint code{color:var(--primary);font-size:.85em}.period-filter{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.dashboard-period-card{margin-bottom:24px}.period-presets{flex-wrap:wrap;gap:8px;display:flex}.period-preset{border:1px solid var(--border);background:var(--surface-2);color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;padding:8px 14px}.period-preset.active,.period-preset:hover{color:#dbeafe;border-color:var(--primary);background:#4f8cff26}.period-custom{align-items:center;gap:16px;display:flex}.period-date-field{align-items:center;gap:8px;display:flex}.period-date-label{color:var(--muted);flex-shrink:0;font-size:.88rem;font-weight:500}.period-date-input{width:auto;min-width:150px}.period-label{color:var(--muted);align-self:center;font-size:.9rem}.invoice-period-filter{margin-bottom:1rem}.odometer-calendars{flex-wrap:wrap;align-items:flex-start;gap:1.25rem;display:flex}.odometer-calendar{flex-direction:column;gap:.5rem;display:flex}.odometer-calendar-label{color:var(--muted);font-size:.88rem;font-weight:500;line-height:1.3}.odometer-calendar-panel{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;min-width:260px;padding:.75rem}.odometer-calendar-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.odometer-calendar-title{font-size:.95rem;font-weight:600}.odometer-calendar-nav{border:1px solid var(--border);background:var(--surface);color:var(--text);width:2rem;height:2rem;font:inherit;cursor:pointer;border-radius:6px;font-size:1.1rem;line-height:1}.odometer-calendar-nav:hover{border-color:var(--primary);color:var(--primary)}.odometer-calendar-weekdays,.odometer-calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.odometer-calendar-weekdays{margin-bottom:4px}.odometer-calendar-weekday{text-align:center;color:var(--muted);padding:.25rem 0;font-size:.72rem;font-weight:600}.odometer-calendar-day{aspect-ratio:1;color:var(--muted);font:inherit;cursor:default;background:0 0;border:1px solid #0000;border-radius:8px;padding:0;font-size:.85rem}.odometer-calendar-day--empty{visibility:hidden}.odometer-calendar-day--disabled{opacity:.35;cursor:not-allowed}.odometer-calendar-day--enabled{color:var(--text);cursor:pointer;background:#4f8cff14;border-color:#4f8cff26}.odometer-calendar-day--enabled:hover:not(:disabled){border-color:var(--primary);background:#4f8cff33}.odometer-calendar-day--in-range{background:#4f8cff1f}.odometer-calendar-day--selected{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.odometer-calendar-day--selected:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.invoice-export-actions{margin-top:.5rem}.invoice-export-hint{margin-top:.75rem;margin-bottom:0}.invoice-mode-toggle{flex-wrap:wrap;gap:1rem;margin-bottom:1rem;display:flex}.modal-overlay{z-index:100;background:#0f172a8c;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-card{width:min(100%,32rem);max-height:calc(100vh - 3rem);margin:0;overflow:auto}.finance-period-controls{flex-wrap:wrap;align-items:flex-end;gap:1rem;display:flex}.finance-export-actions{margin-left:auto}.finance-summary{flex-direction:column;gap:.35rem;max-width:420px;display:flex}.finance-summary-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:1rem;padding:.35rem 0;display:flex}.finance-summary-row-total{font-weight:600}.finance-summary-row-pay{border-top:2px solid var(--border);margin-top:.35rem;padding-top:.65rem;font-size:1.05rem}.finance-summary-row-profit{border-top:2px solid var(--border);border-bottom:none;margin-top:.35rem;padding-top:.65rem;font-size:1.05rem;font-weight:600}.finance-summary-row-profit-positive span,.finance-summary-row-profit-positive strong{color:var(--success)}.finance-payable-date{min-width:9.5rem;padding:.25rem .4rem;font-size:.85rem}.finance-pedik-btn{text-transform:lowercase;letter-spacing:.04em}.pedik-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#080a12b8;justify-content:center;align-items:center;padding:24px;animation:.25s pedik-fade-in;display:flex;position:fixed;inset:0}.pedik-modal{border:2px solid var(--border);background:var(--surface);text-align:center;border-radius:18px;width:min(100%,360px);padding:28px 24px 22px;animation:.45s cubic-bezier(.34,1.56,.64,1) pedik-pop;box-shadow:0 24px 60px #00000059}.pedik-stage{height:88px;margin-bottom:8px;position:relative}.pedik-emoji{font-size:2.6rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pedik-emoji-a{animation:.9s ease-in-out infinite pedik-bounce}.pedik-emoji-b{font-size:3rem;animation:1.2s ease-in-out infinite pedik-spin-bounce}.pedik-emoji-angry{filter:saturate(2.2)brightness(1.05);text-shadow:0 0 12px #ef4444bf}.pedik-emoji-c{font-size:1.8rem;animation:1.4s linear infinite pedik-orbit}.pedik-title{margin:0 0 8px;font-size:1.45rem;animation:.55s ease-in-out infinite alternate pedik-wiggle}.pedik-formula{color:var(--muted);margin:0 0 4px;font-size:.92rem}.pedik-amount{color:var(--warning,#fbbf24);margin:0 0 18px;font-size:2rem;font-weight:700}@keyframes pedik-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pedik-pop{0%{opacity:0;transform:scale(.7)rotate(-4deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes pedik-bounce{0%,to{transform:translate(-120%,-50%)scale(1)}50%{transform:translate(-120%,-70%)scale(1.15)}}@keyframes pedik-spin-bounce{0%,to{transform:translate(-50%,-50%)scale(1)rotate(0)}50%{transform:translate(-50%,-65%)scale(1.1)rotate(12deg)}}@keyframes pedik-orbit{0%{transform:translate(-50%,-50%)rotate(0)translate(52px)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)translate(52px)rotate(-360deg)}}@keyframes pedik-wiggle{0%{transform:rotate(-2deg)}to{transform:rotate(2deg)}}@media (width<=1100px){.stats-grid,.stats-grid.compact,.dashboard-grid,.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.main-content{padding:20px 16px 32px}.stats-grid,.stats-grid.compact,.dashboard-grid,.two-column,.form-grid{grid-template-columns:1fr}.page-header{flex-direction:column}}
