:root{--bg: #f4f6f8;--surface: #ffffff;--text: #1c2733;--text-weak: #5c6b7a;--border: #d8dee5;--accent: #1d6fb8;--accent-deep: #14538c;--accent-text: #ffffff;--danger: #b3261e;--danger-soft: #fbe9e7;--success: #1f6f43;--success-soft: #e3f2e9;--warning: #8a6116;--warning-soft: #fdf3dd;--info: #1d6fb8;--info-soft: #e4eef7;--shadow: 0 1px 3px rgba(16, 32, 48, .08), 0 1px 2px rgba(16, 32, 48, .04)}:root[data-theme=dark]{--bg: #141a21;--surface: #1e262f;--text: #e8edf2;--text-weak: #93a1af;--border: #33404c;--accent: #3d8fd1;--accent-deep: #2a5f8f;--accent-text: #0b1620;--danger: #f08a80;--danger-soft: #3a2320;--success: #6fce9a;--success-soft: #1c2f26;--warning: #e0b45c;--warning-soft: #332a18;--info: #6aa9dc;--info-soft: #1c2a38;--shadow: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #141a21;--surface: #1e262f;--text: #e8edf2;--text-weak: #93a1af;--border: #33404c;--accent: #3d8fd1;--accent-deep: #2a5f8f;--accent-text: #0b1620;--danger: #f08a80;--danger-soft: #3a2320;--success: #6fce9a;--success-soft: #1c2f26;--warning: #e0b45c;--warning-soft: #332a18;--info: #6aa9dc;--info-soft: #1c2a38;--shadow: 0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3)}}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,sans-serif;font-size:16px}.layout{display:flex;min-height:100vh}.sidebar{width:220px;flex-shrink:0;display:flex;flex-direction:column;background:var(--surface);border-right:1px solid var(--border)}.sidebar-brand{padding:1rem;border-bottom:1px solid var(--border)}.sidebar-nav{display:flex;flex-direction:column;padding:.5rem 0;flex:1}.sidebar-link{display:flex;align-items:center;gap:.625rem;padding:.625rem 1rem;color:var(--text-weak);text-decoration:none;font-size:.9375rem}.sidebar-link svg{flex-shrink:0}.sidebar-link:hover{color:var(--text);background:var(--bg)}.sidebar-link.active{color:var(--accent-text);background:var(--accent)}.sidebar-footer{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border-top:1px solid var(--border)}.sidebar-user{font-size:.875rem;color:var(--text-weak)}.sidebar-footer-actions{display:flex;gap:.5rem}.theme-toggle{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.875rem;cursor:pointer}.theme-toggle:hover{border-color:var(--accent)}.sidebar-logout{padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.875rem;cursor:pointer}.sidebar-logout:hover{border-color:var(--accent)}.content{flex:1;padding:2rem;min-width:0}.page-title{font-size:1.5rem;font-weight:700;margin:0 0 1rem}.empty-state{color:var(--text-weak);font-size:.9375rem;display:flex;align-items:center;gap:.5rem;padding:1.5rem;border:1px dashed var(--border);border-radius:10px;background:var(--surface)}@media (max-width: 600px){.layout{flex-direction:column}.sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border)}.content{padding:1rem}}:root[data-theme=dark] .logo-img{filter:invert(1) hue-rotate(180deg)}.sale-status{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid var(--border);background:var(--surface);color:var(--text);white-space:nowrap}.sale-status-cancelada,.sale-status-estornada{color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}.sale-status-plano_ativado,.sale-status-boleto_pago{color:var(--success);border-color:var(--success);background:var(--success-soft)}.sale-status-aguardando_boleto{color:var(--warning);border-color:var(--warning);background:var(--warning-soft)}.sale-status-dados_extraidos,.sale-status-dados_confirmados,.sale-status-na_fila_cadastro,.sale-status-cadastrada_operadora,.sale-status-boleto_gerado{color:var(--info);border-color:var(--info);background:var(--info-soft)}.screen-help-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-weak);padding:6px 12px;font-size:.8125rem;cursor:pointer}.screen-help-btn:hover{color:var(--text);border-color:var(--accent)}.screen-help-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:1rem}.screen-help-row .page-title{margin:0}.dash-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.dash-card{border:1px solid var(--border);border-radius:10px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.25rem;background:var(--surface);box-shadow:var(--shadow)}.dash-card-label{color:var(--text-weak);font-size:.85rem}.dash-card-value{font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.dash-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:1rem;align-items:start}@media (max-width: 800px){.dash-grid{grid-template-columns:1fr}}.dash-panel{border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);padding:1.25rem}.dash-panel h2{margin:0 0 1rem;font-size:1.05rem}.dash-chart{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.dash-chart>.recharts-responsive-container{flex:1 1 240px;min-width:0}.dash-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.375rem;font-size:.875rem;flex:1 1 180px}.dash-legend li{display:flex;align-items:center;gap:.5rem}.dash-legend strong{margin-left:auto;font-variant-numeric:tabular-nums}.dash-legend-dot{width:10px;height:10px;border-radius:999px;flex-shrink:0}.dash-total{margin:.75rem 0 0;color:var(--text-weak);font-size:.85rem}.dash-shortcuts{display:flex;flex-direction:column;gap:.5rem;flex-wrap:wrap}.dash-shortcut{display:inline-block;padding:.5rem 1rem;border:1px solid var(--accent);border-radius:8px;color:var(--accent);text-decoration:none;font-size:.9rem}.dash-shortcut:hover{background:var(--accent);color:var(--accent-text)}.period-filter{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-bottom:12px}.period-filter-modes{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.period-mode{border:none;background:var(--surface);color:var(--text-weak);padding:8px 14px;font-size:.875rem;cursor:pointer}.period-mode+.period-mode{border-left:1px solid var(--border)}.period-mode.active{background:var(--accent);color:var(--accent-text)}.period-filter-field{display:flex;flex-direction:column;gap:4px;font-size:.8125rem;color:var(--text-weak)}.period-filter-field input{border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);padding:8px 10px;font-size:.875rem}.ranking-metric-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem}.ranking-metric-row select{padding:.5rem;border:1px solid var(--border, #ddd);border-radius:6px;font-size:.9rem;background:var(--surface, #fff);color:inherit}.ranking-table{width:100%;border-collapse:collapse}.ranking-table th,.ranking-table td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--border, #ddd)}.ranking-table th{color:var(--text-weak, #666);font-size:.85rem;font-weight:500}.ranking-value{font-variant-numeric:tabular-nums;font-weight:600}.ranking-me{background:#2563eb14}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;background:radial-gradient(ellipse 80% 60% at 20% 10%,color-mix(in srgb,var(--accent) 14%,var(--bg)),transparent),radial-gradient(ellipse 70% 60% at 85% 90%,color-mix(in srgb,var(--accent) 10%,var(--bg)),transparent),var(--bg)}.login-card{width:100%;max-width:380px;display:flex;flex-direction:column;gap:1rem;padding:2.25rem;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 32px #1020302e}.login-title{margin:0 0 .5rem;display:flex;justify-content:center}.login-field{display:flex;flex-direction:column;gap:.375rem}.login-field label{font-size:.875rem;color:var(--text-weak)}.login-field input{padding:.625rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:1rem}.login-field input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.login-error{margin:0;min-height:1.25rem;font-size:.875rem;color:var(--danger)}.login-submit{padding:.625rem .75rem;border:none;border-radius:6px;background:var(--accent);color:var(--accent-text);font-size:1rem;font-weight:600;cursor:pointer}.login-submit:disabled{opacity:.6;cursor:default}.login-submit:focus-visible{outline:2px solid var(--text);outline-offset:1px}.page-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.875rem;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s}.btn:hover{border-color:var(--accent);background:var(--info-soft)}.btn-primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.btn-primary:hover{background:var(--accent-deep);border-color:var(--accent-deep)}.btn-danger{color:var(--text-weak);border-color:transparent;background:transparent}.btn-danger:hover{color:var(--danger);background:var(--danger-soft);border-color:transparent}.btn-danger-armed{color:var(--accent-text);background:var(--danger);border-color:var(--danger)}.btn-danger-armed:hover{background:var(--danger);border-color:var(--danger)}.btn:disabled{opacity:.6;cursor:not-allowed}.row-actions{display:flex;gap:.375rem;flex-wrap:wrap;justify-content:flex-end}.plan-chips{display:flex;flex-wrap:wrap;gap:.375rem}.plan-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;border:1px solid var(--border);border-radius:999px;background:var(--bg);font-size:.8125rem}.plan-chip-remove{display:inline-flex;align-items:center;padding:.125rem;border:none;background:none;color:var(--danger);cursor:pointer;border-radius:999px}.plan-chip-remove:hover{background:var(--danger-soft)}.form{display:flex;flex-direction:column;gap:.875rem}.form>.btn{align-self:flex-end;min-width:120px}.field{display:flex;flex-direction:column;gap:.25rem}.field-label{font-size:.8125rem;color:var(--text-weak)}.field input,.field select,.field textarea{padding:.5rem .625rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font-size:.875rem;font-family:inherit}.field textarea{min-height:120px;font-family:monospace;resize:vertical}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.btn:focus-visible,.modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.field-error{color:var(--danger);font-size:.8125rem}.field-hint{color:var(--text-weak);font-size:.8125rem;line-height:1.4}.plan-chip-price{color:var(--text-weak);font-size:.8125rem;font-variant-numeric:tabular-nums}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:.875rem;background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:var(--shadow)}.data-table th,.data-table td{text-align:left;padding:.625rem .875rem;border-bottom:1px solid var(--border)}.data-table thead th{color:var(--text-weak);font-weight:600;font-size:.8125rem;text-transform:uppercase;letter-spacing:.03em;background:var(--bg)}.data-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--bg) 45%,var(--surface))}.data-table tbody tr:hover{background:var(--info-soft)}.data-table td{font-variant-numeric:tabular-nums}.data-table tbody tr:last-child td{border-bottom:none}.toast-container{position:fixed;bottom:1rem;right:1rem;display:flex;flex-direction:column;gap:.5rem;z-index:100}.toast{padding:.625rem 1rem;border-radius:6px;font-size:.875rem;color:var(--accent-text);background:var(--accent)}.toast-error{background:var(--danger);color:#fff}.text-filter{min-width:220px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;font-size:.9rem;background:var(--surface);color:inherit}.th-sort{display:inline-flex;align-items:center;gap:4px;background:none;border:none;padding:0;font:inherit;font-weight:600;color:inherit;cursor:pointer}.th-sort:hover,.th-sort-active{color:var(--accent)}.export-menu{position:relative;display:inline-block}.export-menu-list{position:absolute;right:0;top:calc(100% + 4px);z-index:20;display:flex;flex-direction:column;min-width:160px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px #00000026;overflow:hidden}.export-menu-item{padding:8px 12px;border:none;background:none;text-align:left;font-size:.9rem;color:inherit;cursor:pointer}.export-menu-item:hover{background:var(--surface-hover, rgba(0, 0, 0, .06))}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#09121c8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:50;animation:modal-overlay-in .15s ease-out}.modal{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow),0 16px 40px #0000002e;animation:modal-in .18s ease-out}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.5rem;border-bottom:1px solid var(--border)}.modal-title{font-size:1.0625rem;font-weight:700;margin:0}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--text-weak);cursor:pointer}.modal-close:hover{background:var(--info-soft);color:var(--text)}.modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.modal-body{padding:1.25rem 1.5rem;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid var(--border);background:var(--bg);border-radius:0 0 14px 14px}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.modal,.modal-overlay{animation:none}}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#09121c8c;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:60;animation:confirm-overlay-in .15s ease-out}.confirm-dialog{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:100%;max-width:400px;max-height:85vh;display:flex;flex-direction:column;box-shadow:var(--shadow),0 16px 40px #0000002e;animation:confirm-in .18s ease-out}.confirm-header{display:flex;align-items:center;gap:.625rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.confirm-icon{color:var(--warning);flex-shrink:0}.confirm-icon-danger{color:var(--danger);flex-shrink:0}.confirm-title{font-size:1rem;font-weight:700;margin:0;flex:1}.confirm-close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--text-weak);cursor:pointer}.confirm-close:hover{background:var(--info-soft);color:var(--text)}.confirm-body{padding:1rem 1.25rem;overflow-y:auto}.confirm-body p{margin:0;font-size:.9375rem;color:var(--text-weak);line-height:1.5}.confirm-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.875rem 1.25rem;border-top:1px solid var(--border);background:var(--bg);border-radius:0 0 14px 14px;flex-shrink:0}.confirm-btn-danger{background:var(--danger);color:var(--accent-text);border-color:var(--danger)}.confirm-btn-danger:hover{background:var(--danger);border-color:var(--danger);filter:brightness(.95)}@keyframes confirm-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes confirm-overlay-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.confirm-dialog,.confirm-overlay{animation:none}}.help-dialog{max-width:560px}.help-body h3{font-size:.9375rem;font-weight:700;margin:1rem 0 .25rem;color:var(--text)}.help-body h3:first-child{margin-top:0}.help-body p{margin:0 0 .25rem;font-size:.9375rem;line-height:1.55;color:var(--text-weak)}.help-body strong{color:var(--text)}.help-note{margin-top:1rem!important;padding:.75rem;border:1px solid var(--border);border-radius:8px;background:var(--info-soft)}.sale-detail{display:flex;flex-direction:column;gap:1.25rem}.sale-detail h3{font-size:.875rem;margin:0 0 .5rem}.sale-detail-summary p{margin:.25rem 0;font-size:.875rem}.sale-detail-docs,.sale-detail-events,.sale-detail-events li{list-style:none}.sale-detail-docs,.sale-detail-events{margin:0;padding:0;display:flex;flex-direction:column;gap:.25rem;font-size:.875rem}.sale-detail-installments{width:100%;border-collapse:collapse;font-size:.875rem}.sale-detail-installments th,.sale-detail-installments td{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--border)}.sale-detail-installments td.tabular{font-variant-numeric:tabular-nums}.sale-detail-kind{color:var(--text-weak)}.sale-detail-event-date{color:var(--text-weak);font-variant-numeric:tabular-nums}.sale-detail-row{display:flex;flex-wrap:wrap;align-items:end;gap:.5rem;margin-top:.5rem}.sale-detail-confirm{display:flex;flex-direction:column;gap:8px;flex:1 1 100%}.sale-detail-confirm p{margin:0;font-size:.9rem;color:var(--color-text, #444)}.sale-detail .btn-danger,.sale-detail-confirm .btn-danger{background:var(--danger);color:var(--accent-text);border-color:var(--danger)}.balance-card{display:inline-flex;flex-direction:column;gap:.25rem;background:var(--surface, #fff);border:1px solid var(--border, #ddd);border-radius:8px;padding:1rem 1.5rem;margin-bottom:1.5rem}.balance-label{font-size:.85rem;color:var(--text-weak, #666)}.balance-value{font-size:1.75rem;font-weight:700;font-variant-numeric:tabular-nums}.balance-list{list-style:none;margin:0;padding:0;border:1px solid var(--border, #ddd);border-radius:8px;overflow:hidden}.balance-entry{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:baseline;padding:.6rem 1rem;border-bottom:1px solid var(--border, #ddd)}.balance-entry:last-child{border-bottom:none}.balance-entry-date{font-size:.85rem;color:var(--text-weak, #666);min-width:6.5rem}.balance-entry-amount{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:600}.balance-entry-amount.credit{color:var(--success, #1a7f37)}.balance-entry-amount.debit{color:var(--danger, #c62828)}.finance-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.finance-tab{padding:.5rem 1rem;border:1px solid var(--border, #ddd);border-radius:6px;background:transparent;cursor:pointer;font-size:.9rem}.finance-tab.active{background:var(--accent, #2563eb);color:#fff;border-color:var(--accent, #2563eb)}.finance-date-row{margin-bottom:1rem;max-width:220px}.finance-money{font-variant-numeric:tabular-nums;font-weight:600}.finance-actions{display:flex;gap:.5rem}.finance-hint{color:var(--text-weak, #666);font-size:.85rem}.finance-card-form{display:flex;flex-direction:column;gap:.75rem;max-width:420px;margin-bottom:2rem}.finance-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:1.5rem}.finance-card-stat{border:1px solid var(--border, #ddd);border-radius:8px;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.25rem}.finance-card-label{color:var(--text-weak, #666);font-size:.8rem}.finance-card-value{font-variant-numeric:tabular-nums;font-weight:700;font-size:1.1rem}.finance-alerts{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.finance-alert{border:1px solid var(--border, #ddd);border-left:4px solid var(--accent, #2563eb);border-radius:6px;padding:.6rem .9rem;font-size:.9rem}.finance-alert-boleto_gerado_nao_pago,.finance-alert-adiantamento_pendente{border-left-color:#b45309}.finance-alert-limite_cartao{border-left-color:#b91c1c}
