:root{--surface-1: #fcfcfb;--page-plane: #f9f9f7;--text-primary: #0b0b0b;--text-secondary: #52514e;--text-muted: #898781;--gridline: #e1e0d9;--baseline: #c3c2b7;--border: rgba(11, 11, 11, .1);--series-1: #2a78d6;--series-2: #1baf7a;--series-3: #eda100;--series-4: #008300;--series-5: #4a3aa7;--series-6: #e34948;--series-7: #e87ba4;--series-8: #eb6834;--status-good: #0ca30c;--status-warning: #fab219;--status-serious: #ec835a;--status-critical: #d03b3b;color-scheme:light dark}@media (prefers-color-scheme: dark){:root{--surface-1: #1a1a19;--page-plane: #0d0d0d;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #898781;--gridline: #2c2c2a;--baseline: #383835;--border: rgba(255, 255, 255, .1);--series-1: #3987e5;--series-2: #199e70;--series-3: #c98500;--series-4: #008300;--series-5: #9085e9;--series-6: #e66767;--series-7: #d55181;--series-8: #d95926;--status-good: #0ca30c;--status-warning: #fab219;--status-serious: #ec835a;--status-critical: #d03b3b}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--page-plane);color:var(--text-primary)}button,input,select{font-family:inherit}button{touch-action:manipulation}a{color:inherit}.app-shell{display:flex;min-height:100vh;min-height:100dvh}.sidebar{width:220px;flex-shrink:0;background:var(--surface-1);border-right:1px solid var(--border);padding:20px 12px;display:flex;flex-direction:column;gap:4px}.sidebar h1{font-size:16px;font-weight:700;margin:0 8px 20px;color:var(--text-primary)}.sidebar h1 span{display:block;font-size:11px;font-weight:500;color:var(--text-muted);margin-top:2px}.sidebar-user{margin-top:auto;padding:12px 8px 4px;border-top:1px solid var(--border);display:flex;align-items:center;gap:8px}.sidebar-avatar{width:28px;height:28px;border-radius:50%;flex-shrink:0}.sidebar-user-nome{flex:1;min-width:0;font-size:12px;font-weight:600;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-sair{border:none;background:none;color:var(--text-muted);font-size:11px;font-weight:700;cursor:pointer;padding:4px;flex-shrink:0}.sidebar-sair:hover{color:var(--status-critical)}@media (max-width: 720px){.sidebar-user{display:none}}.nav-link{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:8px;color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:500}.nav-link:hover{background:var(--gridline)}.nav-link.active{background:var(--series-1);color:#fff}.main-content{flex:1;padding:28px 32px;max-width:1200px;overflow-x:auto}.bottom-nav{display:none}@media (max-width: 720px){.sidebar{display:none}.app-shell{flex-direction:column}.main-content{padding:16px 14px 90px;max-width:100%}.bottom-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--surface-1);border-top:1px solid var(--border);padding:4px 2px calc(4px + env(safe-area-inset-bottom));justify-content:space-around}.bottom-nav-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;flex:1;min-height:52px;padding:4px 2px;border-radius:10px;color:var(--text-muted);text-decoration:none;background:none;border:none;font-family:inherit;cursor:pointer}.bottom-nav-icon{font-size:19px;line-height:1}.bottom-nav-label{font-size:10px;font-weight:600;line-height:1;white-space:nowrap}.bottom-nav-link.active{color:var(--series-1)}.bottom-nav-link.active .bottom-nav-icon{transform:scale(1.08)}}.page-header{margin-bottom:24px}.page-header h2{margin:0 0 4px;font-size:22px}.page-header p{margin:0;color:var(--text-secondary);font-size:14px}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;padding:18px 20px}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:24px}@media (max-width: 720px){.card-grid{grid-template-columns:repeat(2,1fr);gap:10px}.stat-tile .stat-value{font-size:21px}}@media (max-width: 420px){.form-grid{grid-template-columns:1fr}}.stat-tile .stat-label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.02em;margin-bottom:6px}.stat-tile .stat-value{font-size:26px;font-weight:700;color:var(--text-primary)}.stat-tile .stat-sub{font-size:12px;color:var(--text-secondary);margin-top:4px}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);padding:8px 10px;border-bottom:1px solid var(--gridline);font-weight:600}td{padding:9px 10px;border-bottom:1px solid var(--gridline);color:var(--text-primary)}tr:last-child td{border-bottom:none}.table-wrap{overflow-x:auto}@media (max-width: 720px){.table-wrap{overflow-x:visible}.table-wrap table{display:block}.table-wrap thead{display:none}.table-wrap tbody{display:flex;flex-direction:column;gap:10px}.table-wrap tr{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border:1px solid var(--border);border-radius:10px}.table-wrap td{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:3px 0;border-bottom:none;font-size:13px}.table-wrap td:empty{display:none}.table-wrap td:before{content:attr(data-label);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted);flex-shrink:0}.table-wrap td.td-acoes{justify-content:flex-start;gap:8px;padding-top:8px}.table-wrap td.td-acoes:before{display:none}.table-wrap td.td-acoes .btn{flex:1}}.btn{border:none;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;background:var(--series-1);color:#fff}.btn:hover{filter:brightness(1.08)}.btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-danger{background:transparent;color:var(--status-critical);border:1px solid var(--border)}.btn-sm{padding:5px 10px;font-size:12px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px}.field label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:4px;font-weight:600}.field input,.field select{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);font-size:14px}.field input:focus,.field select:focus{outline:2px solid var(--series-1);outline-offset:1px}@media (max-width: 720px){.btn{min-height:44px;padding:10px 16px;font-size:14px}.btn-sm{min-height:38px;padding:8px 12px}.field input,.field select,.search-input,.nova-forma-form input,.filtro-mes select{font-size:16px;min-height:44px}.card{padding:14px 16px;border-radius:10px}.page-header h2{font-size:19px}}.section-title{font-size:14px;font-weight:700;margin:0 0 12px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px}.badge-good{background:color-mix(in srgb,var(--status-good) 15%,transparent);color:var(--status-good)}.badge-warning{background:color-mix(in srgb,var(--status-warning) 20%,transparent);color:color-mix(in srgb,var(--status-warning) 70%,black)}.badge-critical{background:color-mix(in srgb,var(--status-critical) 15%,transparent);color:var(--status-critical)}.two-col{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;align-items:start}@media (max-width: 900px){.two-col{grid-template-columns:1fr}}.empty-state{color:var(--text-muted);font-size:13px;padding:16px 0}.legend-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px;font-size:12px;color:var(--text-secondary)}.legend-dot{width:10px;height:10px;border-radius:3px;display:inline-block;margin-right:5px}.venda-card-unica{max-width:480px}@media (max-width: 720px){.venda-card-unica{max-width:100%}}.select-servico{width:100%;padding:14px 40px 14px 14px;border-radius:10px;border:1px solid var(--border);background:var(--page-plane);color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:20px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%23898781'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px}.select-servico:focus{outline:2px solid var(--series-1);outline-offset:1px}.diverso-fields{display:flex;flex-direction:column;gap:12px;padding:14px;margin:-8px 0 20px;border-radius:10px;background:color-mix(in srgb,var(--series-3) 10%,var(--surface-1));border:1px dashed color-mix(in srgb,var(--series-3) 45%,transparent)}.diverso-fields .field label{margin-bottom:4px}.diverso-fields .field input{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--border);background:var(--page-plane);color:var(--text-primary);font-size:15px}.obs-textarea{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--page-plane);color:var(--text-primary);font-size:14px;font-family:inherit;resize:vertical;margin-bottom:20px}.obs-textarea:focus{outline:2px solid var(--series-1);outline-offset:1px}.td-obs{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-secondary);font-size:13px}.venda-card-obs{font-size:12px;color:var(--text-secondary);background:var(--page-plane);border-radius:8px;padding:6px 8px}.resumo-label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin-bottom:8px}.qtd-control{display:flex;align-items:center;gap:10px;margin-bottom:20px}.qtd-btn{width:44px;height:44px;font-size:20px;border-radius:10px;padding:0}.qtd-input{flex:1;text-align:center;font-size:20px;font-weight:700;padding:10px;border-radius:10px;border:1px solid var(--border);background:var(--page-plane);color:var(--text-primary)}.pagamento-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.pagamento-btn{padding:10px 16px;border-radius:10px;border:2px solid var(--border);background:var(--page-plane);color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer}.pagamento-btn:hover{border-color:var(--series-1)}.pagamento-btn.selected{border-color:var(--series-1);background:var(--series-1);color:#fff}.pagamento-add{color:var(--text-muted);border-style:dashed}.nova-forma-form{display:flex;gap:8px;margin-bottom:16px}.nova-forma-form input{flex:1;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary)}.resumo-total{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0;margin:20px 0;border-top:1px solid var(--gridline);font-size:15px;color:var(--text-secondary)}.resumo-total strong{font-size:28px;color:var(--text-primary)}.btn-confirmar{width:100%;padding:16px;font-size:17px;border-radius:12px;background:var(--status-good)}.toast-success{background:color-mix(in srgb,var(--status-good) 14%,var(--surface-1));border:1px solid color-mix(in srgb,var(--status-good) 40%,transparent);color:var(--status-good);font-weight:600;font-size:14px;padding:12px 16px;border-radius:10px;margin-bottom:20px}.filtro-mes{display:flex;align-items:center;gap:10px;margin-bottom:20px}.filtro-mes select{padding:9px 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);font-size:14px;font-weight:600}@media (max-width: 720px){.filtro-mes{width:100%}.filtro-mes select{flex:1}}.lista-cards-mobile{display:none}@media (max-width: 720px){.tabela-desktop{display:none}.lista-cards-mobile{display:flex;flex-direction:column;gap:10px}.venda-card-mobile{border:1px solid var(--border);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.venda-card-topo{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.venda-card-servico{font-weight:700;font-size:14px}.venda-card-total{font-weight:700;font-size:15px;color:var(--series-1);flex-shrink:0}.venda-card-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--text-muted)}.venda-card-mobile .btn{align-self:flex-start}}.toast-erro{background:color-mix(in srgb,var(--status-critical) 14%,var(--surface-1));border:1px solid color-mix(in srgb,var(--status-critical) 40%,transparent);color:var(--status-critical);font-weight:600;font-size:13px;padding:10px 14px;border-radius:10px;margin-top:10px}.aviso-estoque{background:color-mix(in srgb,var(--status-warning) 16%,var(--surface-1));border:1px solid color-mix(in srgb,var(--status-warning) 45%,transparent);color:color-mix(in srgb,var(--status-warning) 65%,black);font-size:13px;font-weight:600;padding:10px 12px;border-radius:10px;margin:-8px 0 16px}.login-shell{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--page-plane)}.login-card{background:var(--surface-1);border:1px solid var(--border);border-radius:16px;padding:36px 32px;max-width:360px;width:100%;text-align:center}.login-card h1{font-size:20px;margin:0 0 8px}.login-card p{color:var(--text-secondary);font-size:14px;margin:0 0 24px}.login-erro{color:var(--status-critical)!important}.btn-google{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:#fff;color:#1f1f1f;border:1px solid var(--border);padding:12px 16px;font-size:14px;font-weight:600}.btn-google:hover{filter:brightness(.97)}.btn-novo-servico{margin-bottom:20px;padding:12px 20px}.catalogo-form-card{margin-bottom:24px}.preview-margem{font-size:13px;color:var(--text-secondary);background:var(--page-plane);border-radius:8px;padding:10px 12px;margin-bottom:16px}.preview-margem strong{color:var(--text-primary)}.catalogo-filtros{display:flex;gap:10px;margin-bottom:18px}.catalogo-filtros .search-input{flex:1}.catalogo-filtros select{padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:var(--page-plane);color:var(--text-primary);font-size:14px;font-weight:600}@media (max-width: 720px){.catalogo-filtros{flex-direction:column}}.catalogo-nome-cell{display:flex;flex-direction:column;gap:3px}.catalogo-nome-cell>span:first-child{font-weight:600}.catalogo-material-tag{font-size:11px;color:var(--text-muted)}.badge-categoria{background:color-mix(in srgb,var(--series-1) 12%,transparent);color:var(--series-1)}
