:root{--color-bg-dark:#0b0e14;--color-bg-dark-soft:#11151f;--color-bg-dark-hover:#1a2030;--color-blue:#2f6fed;--color-blue-dark:#1d4fc4;--color-blue-soft:#e8f0fe;--color-white:#fff;--color-surface:#f5f7fb;--color-border:#e2e6ee;--color-text:#1a1d29;--color-text-muted:#6b7280;--color-text-inverse:#f2f4f8;--color-success:#22a06b;--color-warning:#e0a017;--color-danger:#e0473f;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-sm:0 1px 2px #10141e14;--shadow-md:0 4px 16px #10141e1f;--sidebar-width:250px;--sidebar-width-collapsed:72px;--topbar-height:64px}*{box-sizing:border-box}html,body,#app{height:100%}body{background:var(--color-surface);color:var(--color-text);-webkit-font-smoothing:antialiased;margin:0;font-family:Segoe UI,Inter,system-ui,-apple-system,sans-serif}h1,h2,h3,h4{margin:0 0 .5rem;font-weight:600}a{color:var(--color-blue);text-decoration:none}button{font-family:inherit}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-size:.9rem;font-weight:600;transition:background .15s,transform 50ms,opacity .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--color-blue);color:var(--color-white)}.btn-primary:hover{background:var(--color-blue-dark)}.btn-secondary{background:var(--color-white);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface)}.btn-danger{background:var(--color-danger);color:var(--color-white)}.btn-danger:hover{opacity:.88}.btn:disabled{opacity:.55;cursor:not-allowed}.card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.page-header h1{color:var(--color-text);font-size:1.4rem}.form-field{flex-direction:column;gap:.35rem;margin-bottom:1rem;display:flex}.form-field label{color:var(--color-text-muted);font-size:.82rem;font-weight:600}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-white);color:var(--color-text);padding:.55rem .7rem;font-size:.92rem}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--color-blue);box-shadow:0 0 0 3px var(--color-blue-soft);outline:none}.form-error{color:var(--color-danger);font-size:.85rem}table.data-table{border-collapse:collapse;width:100%;font-size:.9rem}table.data-table th{text-align:left;background:var(--color-surface);color:var(--color-text-muted);border-bottom:1px solid var(--color-border);padding:.7rem .9rem;font-weight:600}table.data-table td{border-bottom:1px solid var(--color-border);padding:.7rem .9rem}table.data-table tbody tr:hover{background:var(--color-blue-soft)}.badge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:.2rem .6rem;font-size:.75rem;font-weight:700;display:inline-block}.badge-aberto{color:var(--color-danger);background:#fdece9}.badge-andamento{color:var(--color-warning);background:#fff6e0}.badge-aguardando{background:var(--color-blue-soft);color:var(--color-blue-dark)}.badge-resolvido{color:var(--color-success);background:#e5f7ee}.badge-encerrado{background:var(--color-border);color:var(--color-text-muted)}.modal-backdrop{z-index:50;background:#0b0e148c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-box{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);width:100%;max-width:520px;max-height:90vh;padding:1.5rem;overflow-y:auto}.btn-icon{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-white);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.btn-icon svg{width:16px;height:16px}.btn-icon:hover{background:var(--color-surface);color:var(--color-text)}.btn-icon.btn-icon-danger:hover{color:var(--color-danger);border-color:var(--color-danger);background:#fdece9}
