:root{color:#0f172a;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f4f7fb;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px}button,input,select,textarea{font:inherit}.auth-shell,.app-shell{min-height:100vh}.auth-shell{background:linear-gradient(#eef6ff 0%,#f7fbff 100%);place-items:center;padding:24px;display:grid}.auth-panel{background:#fff;border:1px solid #d9e6f5;border-radius:8px;width:min(100%,460px);padding:28px;box-shadow:0 18px 42px #1e40af14}.auth-logo,.sidebar-logo{border-radius:8px;width:100%;max-width:180px;display:block}.auth-logo{margin-bottom:20px}.eyebrow{color:#2563eb;text-transform:uppercase;margin:0 0 6px;font-size:.84rem;font-weight:700}.auth-copy h1,.sidebar-title h1,.topbar h2,.panel-header h3,.items-head h4{margin:0}.auth-copy p,.topbar p,.panel-header p,.order-summary p{color:#526075;margin:0}.auth-switch{grid-template-columns:repeat(2,1fr);gap:10px;margin:20px 0;display:grid}.auth-switch button,.menu button,.primary-button,.secondary-button,.ghost-button,.logout-button{font:inherit;cursor:pointer;border:1px solid #cfdced;border-radius:8px}.auth-switch button,.menu button{color:#2f3d50;background:#f4f8fd;padding:10px 12px}.auth-switch .active,.menu .active{color:#fff;background:#1d4ed8;border-color:#1d4ed8}.auth-form,.data-form{gap:14px;display:grid}label{color:#203046;gap:6px;font-weight:600;display:grid}input,select,textarea{color:#102033;width:100%;font:inherit;background:#fff;border:1px solid #c8d7ea;border-radius:8px;padding:11px 12px}textarea{resize:vertical}.checkbox-row{align-items:center;gap:10px;font-weight:600;display:flex}.checkbox-row input{width:auto}.primary-button,.secondary-button,.logout-button,.ghost-button{padding:11px 14px}.primary-button{color:#fff;background:#0f62fe;border-color:#0f62fe;font-weight:700}.secondary-button,.ghost-button{color:#19304d;background:#f6f9fd}.ghost-button.small{align-self:end}.logout-button{color:#9f1d35;background:#fff;border-color:#f2c4cc}.feedback{border-radius:8px;margin:0;padding:10px 12px;font-weight:600}.feedback.success{color:#136b39;background:#ebf9ef}.feedback.error{color:#b42318;background:#fff1f2}.app-shell{background:#f4f7fb;grid-template-columns:280px 1fr;display:grid}.sidebar{background:#fff;border-right:1px solid #dbe4f1;grid-template-rows:auto auto 1fr auto;gap:22px;padding:24px 20px;display:grid}.menu,.sidebar-footer{gap:10px;display:grid}.menu{grid-auto-rows:max-content;align-content:start;align-self:start}.menu button{text-align:left;min-height:44px}.sidebar-footer{align-self:end}.user-badge{background:#f6f9fd;border:1px solid #d6e0ef;border-radius:8px;gap:3px;padding:10px 12px;display:grid}.user-badge span{color:#2563eb;text-transform:uppercase;font-size:.76rem;font-weight:800}.user-badge strong{color:#102033;font-size:.92rem}.content{gap:20px;padding:24px;display:grid}.topbar{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.topbar-note{text-align:right;background:#fff;border:1px solid #d6e0ef;border-radius:8px;padding:10px 12px}.topbar-note span{color:#69788e;font-size:.85rem;display:block}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.compact-metrics .metric{padding:14px}.compact-metrics .metric strong{font-size:1.2rem}.metric,.panel,.order-summary{background:#fff;border:1px solid #dbe4f1;border-radius:8px}.metric{padding:18px}.metric span{color:#64748b;margin-bottom:8px;display:block}.metric strong{color:#0f172a;font-size:1.5rem}.panel{padding:18px}.panel-header{gap:6px;margin-bottom:16px;display:grid}.split-layout{grid-template-columns:minmax(320px,380px) 1fr;gap:18px;display:grid}.order-layout{grid-template-columns:minmax(420px,520px) 1fr}.grid-two,.grid-three,.order-item-row{gap:12px;display:grid}.grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-three,.order-item-row{grid-template-columns:repeat(3,minmax(0,1fr))}.items-head{justify-content:space-between;align-items:center;display:flex}.items-list,.order-list{gap:12px;display:grid}.report-filters,.order-filters,.reports-grid{gap:14px;display:grid}.report-filters{grid-template-columns:repeat(5,minmax(0,1fr)) auto;align-items:end}.order-filters{grid-template-columns:1fr minmax(160px,220px);align-items:end}.finance-filters{grid-template-columns:repeat(6,minmax(0,1fr)) auto;margin:16px 0}.reports-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.orders-workspace,.order-detail,.detail-form,.detail-grid,.event-list{gap:16px;display:grid}.order-summary-button{text-align:left;width:100%;font:inherit;cursor:pointer}.order-summary-button.active{border-color:#0f62fe;box-shadow:0 0 0 2px #0f62fe1f}.detail-head,.detail-actions,.status-actions,.inline-fields,.photo-form{gap:10px;display:flex}.detail-head{border-top:1px solid #e5edf7;justify-content:space-between;align-items:center;padding-top:6px}.detail-head h3{margin:0}.detail-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center}.status-actions{flex-wrap:wrap}.status-actions button{color:#19304d;font:inherit;cursor:pointer;background:#f6f9fd;border:1px solid #cfdced;border-radius:8px;padding:9px 11px;font-weight:700}.status-actions button.active,.status-actions button:disabled{color:#fff;cursor:default;background:#1d4ed8;border-color:#1d4ed8}.receipt-panel{background:#f3f8ff;border:1px solid #b7d2ff;border-radius:8px;padding:14px}.receipt-panel.paid{background:#f0fdf4;border-color:#bbf7d0;gap:4px;display:grid}.receipt-panel.paid span{color:#526075}.payment-inline{grid-template-columns:minmax(130px,1fr) minmax(132px,1fr) minmax(180px,1.2fr) auto auto;align-items:center;gap:8px;min-width:680px;display:grid}.payment-inline input,.payment-inline select{padding:8px 9px}.primary-button.small,.secondary-button.small,.ghost-button.small{white-space:nowrap;padding:8px 10px}.inline-fields{width:100%}.inline-fields input{min-width:0}.detail-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.subpanel{background:#f9fbfd;border:1px solid #e1e8f4;border-radius:8px;padding:14px}.photo-form{flex-wrap:wrap;align-items:center;margin-bottom:12px}.photo-form input[type=file]{flex:220px}.photo-form input:not([type=file]){flex:180px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.photo-grid figure{background:#fff;border:1px solid #dbe4f1;border-radius:8px;margin:0;overflow:hidden}.photo-thumb{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.photo-grid img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.photo-grid figcaption{color:#526075;gap:3px;padding:9px;font-size:.84rem;display:grid}.photo-grid figcaption strong{color:#203046;overflow-wrap:anywhere}.photo-modal{z-index:40;background:#0f172ab8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.photo-modal-content{background:#fff;border-radius:8px;width:min(980px,100%);max-height:calc(100vh - 48px);overflow:hidden;box-shadow:0 24px 80px #0f172a59}.photo-modal-header{border-bottom:1px solid #e1e8f4;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.photo-modal-header div:first-child{gap:3px;min-width:0;display:grid}.photo-modal-header strong,.photo-modal-header span{overflow-wrap:anywhere}.photo-modal-header span{color:#526075;font-size:.9rem}.photo-modal-actions{flex:none;align-items:center;gap:8px;display:flex}.photo-modal-content img{object-fit:contain;background:#0f172a;width:100%;max-height:calc(100vh - 140px);display:block}.event-item{background:#fff;border:1px solid #e1e8f4;border-radius:8px;gap:5px;padding:12px;display:grid}.event-item p,.event-item span{color:#526075;margin:0}.event-item span{font-size:.85rem}.financial-report-preview{margin-top:18px}.print-order,.print-report,.print-finance{display:none}.order-item-row{background:#f9fbfd;border:1px solid #e1e8f4;border-radius:8px;grid-template-columns:2fr 1fr 1fr auto;align-items:end;padding:12px}.order-total{color:#102033;background:#eef4fb;border-radius:8px;justify-content:space-between;align-items:center;padding:12px 14px;font-weight:700;display:flex}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #e5edf7;padding:12px 10px}th{color:#5b6b82;font-size:.88rem}.status{border-radius:8px;justify-content:center;align-items:center;padding:5px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.status-recebido{color:#1d4ed8;background:#dbeafe}.status-em_lavagem{color:#b45309;background:#fef3c7}.status-pronto{color:#15803d;background:#dcfce7}.status-entregue{color:#374151;background:#e5e7eb}.status-coletado{color:#6d28d9;background:#ede9fe}.status-em_rota{color:#b91c1c;background:#fee2e2}.order-summary{padding:14px}.order-summary-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.empty-state{color:#64748b;margin:0}.ops-dashboard{gap:20px;display:grid}.ops-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.ops-header p,.ops-header h2{margin:0}.ops-header p{color:#64748b;text-transform:uppercase;font-size:.86rem;font-weight:700}.ops-header h2{color:#121a31;font-size:1.5rem}.ops-user{background:#fff;border:1px solid #e6edf7;border-radius:8px;align-items:center;gap:12px;padding:10px 12px;display:flex}.ops-user>span{color:#fff;background:#1d4ed8;border-radius:999px;place-items:center;width:38px;height:38px;font-size:.85rem;font-weight:800;display:grid}.ops-user strong,.ops-user small{display:block}.ops-user small{color:#64748b}.ops-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.ops-card{background:#fff;border:1px solid #e7edf6;border-radius:8px;align-items:center;gap:16px;min-height:108px;padding:18px;display:flex;box-shadow:0 10px 28px #0f172a0a}.ops-card p,.ops-card small{color:#64748b;margin:0}.ops-card strong{color:#0f172a;margin:4px 0;font-size:1.5rem;display:block}.ops-card-icon{background:#eff6ff;border-radius:8px;width:44px;height:44px}.tone-blue .ops-card-icon{background:#dbeafe}.tone-orange .ops-card-icon{background:#ffedd5}.tone-green .ops-card-icon{background:#dcfce7}.tone-red .ops-card-icon{background:#fee2e2}.ops-filters{background:#fff;border:1px solid #e7edf6;border-radius:8px;grid-template-columns:minmax(260px,1fr) minmax(160px,220px) minmax(160px,220px);gap:14px;padding:14px;display:grid;box-shadow:0 10px 28px #0f172a09}.ops-filters label span{color:#64748b;font-size:.82rem}.ops-main-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;display:grid}.ops-main-column{gap:18px;display:grid}.ops-list-panel,.ops-side-panel,.ops-agenda{background:#fff;border:1px solid #e7edf6;border-radius:8px;box-shadow:0 10px 28px #0f172a0a}.ops-list-head,.ops-row{grid-template-columns:84px minmax(150px,1.2fr) minmax(160px,1.1fr) 86px 110px 118px 118px 180px;align-items:center;gap:12px;display:grid}.ops-list-head{color:#64748b;padding:14px 18px 10px;font-size:.82rem;font-weight:800}.ops-list{display:grid}.ops-row{color:#27364f;cursor:pointer;border-top:1px solid #eef2f7;min-height:64px;padding:12px 18px}.ops-row:hover,.ops-row.selected{background:#f8fbff}.ops-row small{color:#64748b;margin-top:3px;display:block}.ops-id{color:#1d4ed8}.ops-chip{color:#334155;background:#eef2ff;border-radius:8px;justify-content:center;width:max-content;min-width:74px;padding:6px 10px;font-size:.78rem;font-weight:800;display:inline-flex}.payment-pendente{color:#c2410c;background:#fff7ed}.payment-pago,.payment-pix,.payment-dinheiro,.payment-cartao_debito,.payment-cartao_credito,.payment-transferencia{color:#15803d;background:#eafaf1}.ops-actions{flex-wrap:wrap;gap:6px;display:flex}.ops-actions button{color:#334155;font:inherit;cursor:pointer;background:#fff;border:1px solid #dbe4f1;border-radius:8px;padding:7px 9px;font-size:.8rem}.ops-side-panel{gap:14px;padding:20px;display:grid;position:sticky;top:18px}.ops-side-panel h3,.ops-side-panel p{margin:0}.ops-side-id{color:#1d4ed8;font-weight:800}.ops-side-panel dl{gap:14px;margin:0;display:grid}.ops-side-panel dt{color:#64748b;font-size:.82rem}.ops-side-panel dd{color:#111827;margin:3px 0 0;font-weight:700}.ops-side-actions{gap:10px;display:grid}.delivery-button{color:#fff;font:inherit;cursor:pointer;background:#15803d;border:1px solid #15803d;border-radius:8px;padding:11px 14px;font-weight:800}.delivery-button:disabled,.ops-side-actions button:disabled{opacity:.55;cursor:not-allowed}.ops-agenda{padding:16px 18px}.ops-section-title{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.ops-section-title h3,.ops-section-title span,.ops-agenda article p{margin:0}.ops-section-title span{color:#1d4ed8;font-weight:700}.ops-agenda-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.ops-agenda article{border:1px solid #eef2f7;border-radius:8px;grid-template-columns:72px 1fr auto auto;align-items:center;gap:12px;padding:12px;display:grid}.ops-empty{color:#64748b;margin:0;padding:16px}@media (width<=1080px){.app-shell{grid-template-columns:1fr}.sidebar{border-bottom:1px solid #dbe4f1;border-right:0}.metrics,.ops-summary,.split-layout,.order-layout,.ops-main-grid,.detail-grid,.reports-grid,.report-filters,.order-filters{grid-template-columns:1fr}.ops-list-head{display:none}.ops-row{grid-template-columns:1fr;gap:8px}.ops-side-panel{position:static}.ops-agenda-list{grid-template-columns:1fr}}@media (width<=720px){.content,.sidebar,.auth-panel{padding:16px}.grid-two,.grid-three,.order-item-row,.ops-filters{grid-template-columns:1fr}.topbar,.ops-header,.items-head,.order-summary-top,.detail-head{flex-direction:column;align-items:flex-start}.detail-actions{justify-content:flex-start}}@media print{@page{margin:12mm}body{background:#fff}body *{visibility:hidden}.print-mode-order .print-order,.print-mode-order .print-order *,.print-mode-reports .print-report,.print-mode-reports .print-report *,.print-mode-finance .print-finance-global,.print-mode-finance .print-finance-global *{visibility:visible}.print-mode-order .print-order,.print-mode-reports .print-report,.print-mode-finance .print-finance-global{color:#111827;width:100%;padding:0;font-family:Arial,Helvetica,sans-serif;display:block;position:absolute;inset:0 auto auto 0}.print-header,.print-info-grid,.print-total,.print-signatures{display:grid}.print-header{border-bottom:2px solid #0f62fe;grid-template-columns:1fr auto;align-items:start;gap:24px;padding-bottom:16px}.print-brand{align-items:center;gap:14px;display:flex}.print-logo{object-fit:contain;width:96px;max-height:56px}.print-header h1{margin:0;font-size:24px}.print-header p,.print-header span,.print-info-grid p,.print-notes p{margin:3px 0 0}.print-header div:last-child{text-align:right}.print-header strong{font-size:20px;display:block}.print-report h2,.print-finance h2{color:#111827;margin:20px 0 8px;font-size:15px}.compact-print-total{border-width:1px;margin-top:0}.print-info-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.print-info-grid>div,.print-notes{border:1px solid #d1d5db;padding:10px}.print-info-grid span,.print-notes span{color:#4b5563;text-transform:uppercase;font-size:11px;font-weight:700;display:block}.print-info-grid strong{margin-top:4px;font-size:15px;display:block}.print-table{border-collapse:collapse;width:100%;margin-top:8px}.print-table th,.print-table td{text-align:left;border:1px solid #d1d5db;padding:9px 8px}.print-table th{color:#111827;background:#f3f4f6}.print-total{border:2px solid #111827;grid-template-columns:1fr auto;align-items:center;gap:20px;margin-top:14px;padding:12px}.print-total strong{font-size:20px}.print-notes{margin-top:14px}.print-signatures{grid-template-columns:repeat(2,1fr);gap:36px;margin-top:54px}.print-signatures div{text-align:center;border-top:1px solid #111827;padding-top:8px}}
