*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f1f5f9;color:#1e293b;-webkit-font-smoothing:antialiased}.inp{width:100%;padding:.55rem .75rem;border:1.5px solid #e2e8f0;border-radius:6px;font-size:.9rem;color:#1e293b;background:#fff;transition:border-color .15s,box-shadow .15s;outline:none;box-sizing:border-box;font-family:inherit}.inp:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}textarea.inp{resize:vertical;min-height:80px}.btn-primary{padding:.7rem 1.5rem;background:#e68811;color:#000;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s,transform .1s;font-family:inherit}.btn-primary:hover{background:#b16707}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{background:#93c5fd;cursor:not-allowed;transform:none}.btn-outline{padding:.45rem .9rem;background:#fff;color:#475569;border:1.5px solid #e2e8f0;border-radius:6px;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s;font-family:inherit}.btn-outline:hover{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.btn-add{padding:.3rem .65rem;background:#fff;color:#2563eb;border:1.5px solid #bfdbfe;border-radius:5px;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit;white-space:nowrap}.btn-add:hover{background:#eff6ff}.btn-save{padding:.42rem .85rem;background:#2563eb;color:#fff;border:none;border-radius:5px;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit}.btn-save:disabled{background:#93c5fd;cursor:not-allowed}.field-label{display:block;font-size:.73rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.3rem}.section-bar{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#2563eb;padding:.35rem .65rem;background:#eff6ff;border-left:3px solid #2563eb;border-radius:2px;margin-bottom:.85rem}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media (max-width: 480px){.grid-2{grid-template-columns:1fr}}.card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000d}.app-header{background:#fff;border-bottom:1.5px solid #e2e8f0;padding:.7rem 1.25rem;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.table-wrap{overflow-x:auto;border-radius:10px;background:#fff;box-shadow:0 1px 3px #00000014}.vt-table{width:100%;border-collapse:collapse}.vt-table thead th{padding:.65rem .85rem;text-align:left;font-size:.7rem;font-weight:700;color:#64748b;background:#f8fafc;border-bottom:1.5px solid #e2e8f0;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.vt-table tbody td{padding:.65rem .85rem;font-size:.875rem;border-bottom:1px solid #f1f5f9;color:#334155}.vt-table tbody tr:last-child td{border-bottom:none}.vt-table tbody tr:hover{background:#f8fafc}.badge{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:9999px;font-size:.72rem;font-weight:600}.badge-green{background:#dcfce7;color:#15803d}.badge-gray{background:#f1f5f9;color:#64748b}.firma-wrap canvas{width:100%!important;max-width:480px;height:160px!important;border-radius:6px}.tb-root{--tb-surface: #fcfcfb;--tb-ink-1: #0f172a;--tb-ink-2: #475569;--tb-ink-3: #898781;--tb-grid: #e1e0d9;--tb-axis: #c3c2b7;--tb-border: rgba(11, 11, 11, .1);--tb-vt: #2a78d6;--tb-os: #eb6834;--tb-good: #006300;--tb-bad: #d03b3b;--tb-warn-bg: #fff4d6;--tb-warn-ink: #7a5200;max-width:1200px;margin:0 auto;padding:1.25rem 1rem 3rem;color:var(--tb-ink-1)}.tb-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;background:var(--tb-surface);border:1px solid var(--tb-border);border-radius:12px;padding:12px 14px;margin-bottom:16px}.tb-filters label{display:flex;flex-direction:column;gap:4px;font-size:.72rem;font-weight:600;color:var(--tb-ink-2);text-transform:uppercase;letter-spacing:.03em}.tb-filters select{font:inherit;font-size:.9rem;padding:7px 10px;border-radius:8px;min-width:170px;border:1px solid var(--tb-border);background:#fff;color:var(--tb-ink-1);text-transform:none}.tb-note{font-size:.78rem;color:var(--tb-ink-3);margin-left:auto}.tb-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px}.tb-kpi{background:var(--tb-surface);border:1px solid var(--tb-border);border-radius:12px;padding:14px}.tb-kpi-lbl{font-size:.78rem;color:var(--tb-ink-2);margin-bottom:6px}.tb-kpi-val{font-size:1.9rem;font-weight:700;line-height:1.1}.tb-kpi-val small{font-size:.95rem;font-weight:600;color:var(--tb-ink-2)}.tb-delta{font-size:.76rem;margin-top:6px;color:var(--tb-ink-2)}.tb-delta.good{color:var(--tb-good)}.tb-delta.bad{color:var(--tb-bad)}.tb-help{font-size:.72rem;color:var(--tb-ink-3);margin-top:4px}.tb-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.tb-card{background:var(--tb-surface);border:1px solid var(--tb-border);border-radius:12px;padding:16px;min-width:0}.tb-c8{grid-column:span 8}.tb-c4{grid-column:span 4}.tb-c6{grid-column:span 6}.tb-c12{grid-column:span 12}.tb-card h2{font-size:1rem;margin:0 0 2px}.tb-q{font-size:.8rem;color:var(--tb-ink-2);margin:0 0 12px}.tb-legend{display:flex;gap:14px;font-size:.8rem;color:var(--tb-ink-2);margin-bottom:6px;flex-wrap:wrap}.tb-sw{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}.tb-root svg{display:block;width:100%;overflow:visible}.tb-tick{fill:var(--tb-ink-3);font-size:11px}.tb-lab{fill:var(--tb-ink-1);font-size:12px}.tb-lab2{fill:var(--tb-ink-2);font-size:11px}.tb-tablewrap{overflow-x:auto}.tb-table{width:100%;border-collapse:collapse;font-size:.85rem}.tb-table th{text-align:left;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--tb-ink-2);padding:8px;border-bottom:1px solid var(--tb-axis);white-space:nowrap}.tb-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.tb-table td{padding:8px;border-bottom:1px solid var(--tb-grid)}.tb-table .num{text-align:right;font-variant-numeric:tabular-nums}.tb-table tbody tr:hover{background:#0f172a0a}.tb-pill{display:inline-block;font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--tb-warn-bg);color:var(--tb-warn-ink);white-space:nowrap}.tb-muted{color:var(--tb-ink-3)}.tb-empty{color:var(--tb-ink-3);font-size:.85rem;padding:18px 0;text-align:center}.tb-msg{padding:2rem;color:var(--tb-ink-2)}.tb-msg.error{color:#dc2626}.tb-tip{position:fixed;pointer-events:none;background:#0f172a;color:#f8fafc;font-size:.8rem;padding:7px 10px;border-radius:8px;box-shadow:0 4px 14px #0000002e;z-index:50;max-width:260px}.tb-tip-row{display:flex;align-items:center;gap:6px}.tb-tip .tb-sw{width:9px;height:9px;border-radius:2px;margin-right:0}@media (max-width: 1000px){.tb-kpis{grid-template-columns:repeat(3,1fr)}.tb-c8,.tb-c4,.tb-c6{grid-column:span 12}}@media (max-width: 560px){.tb-kpis{grid-template-columns:repeat(2,1fr)}.tb-kpi-val{font-size:1.55rem}.tb-filters label{flex:1 1 140px}.tb-filters select{min-width:0;width:100%}.tb-note{margin-left:0}}
