:root{--font-family: "Inter", system-ui, -apple-system, sans-serif;--color-bg: #f8fafc;--color-white: #ffffff;--color-border: #e2e8f0;--color-text-main: #0f172a;--color-text-muted: #64748b;--color-primary: #0f766e;--color-primary-hover: #0d9488;--color-danger: #ef4444;--color-success: #10b981;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--radius: 6px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font-family);background-color:var(--color-bg);color:var(--color-text-main);line-height:1.5;-webkit-font-smoothing:antialiased}.app-container{display:flex;min-height:100vh}.sidebar{width:250px;background-color:#0f172a;color:#fff;display:flex;flex-direction:column;padding:1.5rem;transition:width .3s ease}.sidebar.collapsed{width:70px;padding:1.5rem .75rem}.sidebar.collapsed .sidebar-header,.sidebar.collapsed .nav-link span,.sidebar.collapsed .user-info{display:none}.sidebar.collapsed .nav-link{justify-content:center;padding:.75rem}.sidebar-header{margin-bottom:2rem;font-size:1.25rem;font-weight:700;opacity:.9}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:#94a3b8;text-decoration:none;border-radius:6px;margin-bottom:.5rem;transition:all .2s}.nav-link:hover{background-color:#1e293b;color:#fff}.nav-link.active{background-color:#0f766e;color:#fff}.main-content{flex:1;background-color:#f8fafc;overflow-y:auto;padding:var(--spacing-lg)}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.header h1{font-size:1.5rem;font-weight:600;color:var(--color-text-main)}.controls{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.input,.select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);font-size:.875rem;background:var(--color-white)}.btn{padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:#fff;border:1px solid var(--color-border);color:var(--color-text-main)}.table-container{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius);overflow-x:auto;box-shadow:var(--shadow-sm)}table{width:100%;border-collapse:collapse;font-size:.875rem}.table-small{font-size:.75rem}.table-small th,.table-small td{padding:.5rem .75rem}th,td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border)}th{background:#f1f5f9;font-weight:600;color:var(--color-text-muted)}tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.badge-aberto{background:#fff7ed;color:#c2410c}.badge-pago{background:#ecfdf5;color:#047857}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:50}.modal{background:#fff;border-radius:var(--radius);width:100%;max-width:600px;max-height:90vh;overflow-y:auto;padding:var(--spacing-lg);box-shadow:var(--shadow-md)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.25rem;color:var(--color-text-muted)}.form-group input,.form-group select{width:100%;padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius)}.split-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:var(--spacing-sm);align-items:center;margin-bottom:var(--spacing-sm)}.totals{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;font-weight:600}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.tabs{display:flex;gap:1rem;border-bottom:1px solid var(--color-border);margin-bottom:1.5rem}.tab{padding:.75rem 1.5rem;cursor:pointer;border-bottom:2px solid transparent;color:var(--color-text-muted);font-weight:500}.tab.active{border-bottom-color:var(--color-primary);color:var(--color-primary)}.tab:hover{color:var(--color-primary)}.print-only{display:none}@media print{body *{visibility:hidden}.modal-overlay,.modal-overlay *{visibility:visible}html,body,#root,.app-container,.main-content{background:#fff!important;height:auto!important;width:100%!important;overflow:visible!important;margin:0!important;padding:0!important;position:static!important}.modal-overlay{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:auto!important;margin:0!important;padding:0!important;background:#fff!important;display:block!important;z-index:9999}.modal{border:none!important;box-shadow:none!important;width:100%!important;max-width:100%!important;margin:0!important;padding:1cm!important;background:#fff!important}.sidebar,.header,.controls,.btn,.hidden-print{display:none!important}.print-only{display:block!important;visibility:visible!important}table{page-break-inside:auto}tr{page-break-inside:avoid;page-break-after:auto}}
