:root{--c-clientes:#2563eb;--c-produtos:#16a34a;--c-os:#ea580c;--c-agend:#7c3aed;--c-cfg:#475569;--bg:#f6f8fb;--sidebar-w:250px}*{box-sizing:border-box}body{background:var(--bg);font-family:-apple-system,"Segoe UI",Roboto,sans-serif;margin:0}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-w);background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;padding:1rem .5rem;z-index:1000}.sidebar-brand{display:flex;align-items:center;gap:.5rem;font-weight:700;padding:.5rem 1rem 1rem;border-bottom:1px solid #eee;margin-bottom:.5rem}.sidebar-brand img{width:32px;height:32px;object-fit:contain}.sidebar-brand i{font-size:1.6rem;color:var(--c-os)}.sidebar .nav-link{color:#334155;border-radius:8px;margin:2px 0;padding:.55rem .85rem;display:flex;align-items:center;gap:.6rem;font-size:.95rem}.sidebar .nav-link:hover{background:#f1f5f9}.sidebar .nav-link.active{background:#eef2ff;color:#1e293b;font-weight:600}.sidebar .nav-link i{font-size:1.1rem}.sidebar .nav-clientes i{color:var(--c-clientes)}.sidebar .nav-produtos i{color:var(--c-produtos)}.sidebar .nav-os i{color:var(--c-os)}.sidebar .nav-agend i{color:var(--c-agend)}.sidebar .nav-cfg i{color:var(--c-cfg)}.nav-section{font-size:.7rem;text-transform:uppercase;color:#94a3b8;padding:.8rem 1rem .3rem;letter-spacing:.05em}.sidebar-foot{margin-top:auto;padding:1rem .5rem;border-top:1px solid #eee}.user-info{display:flex;gap:.5rem;align-items:center;margin-bottom:.5rem;padding:0 .5rem}.user-info i{font-size:2rem;color:#64748b}.main-content{margin-left:var(--sidebar-w);padding:1.5rem 2rem;min-height:100vh}.stat-card{border:none;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.06);transition:transform .15s}.stat-card:hover{transform:translateY(-2px)}.stat-card .icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff}.stat-card.cli .icon{background:var(--c-clientes)}.stat-card.prd .icon{background:var(--c-produtos)}.stat-card.os .icon{background:var(--c-os)}.stat-card.agd .icon{background:var(--c-agend)}.stat-card .num{font-size:1.8rem;font-weight:700}.module-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.2rem}.module-header h1{font-size:1.5rem;margin:0;display:flex;align-items:center;gap:.5rem}.card-os{border-left:4px solid var(--c-os)}.card-clientes{border-left:4px solid var(--c-clientes)}.card-produtos{border-left:4px solid var(--c-produtos)}table.table thead th{background:#f8fafc;font-size:.85rem;text-transform:uppercase;letter-spacing:.03em;color:#64748b}.table-actions{white-space:nowrap}.table-actions .btn{padding:.15rem .4rem}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e293b,#0f172a)}.login-card{background:#fff;padding:2.5rem;border-radius:14px;width:100%;max-width:400px;box-shadow:0 10px 30px rgba(0,0,0,.3)}.login-card h1{text-align:center;margin-bottom:1.5rem;font-size:1.4rem}.login-card .bi-tools{font-size:2.5rem;color:var(--c-os);display:block;text-align:center;margin-bottom:.5rem}@media print{.no-print{display:none!important}.main-content{margin:0;padding:0}.sidebar{display:none}}.os-print{background:#fff;padding:2rem;max-width:800px;margin:0 auto;border:1px solid #e5e7eb;border-radius:8px}.os-print .head{display:flex;justify-content:space-between;align-items:start;border-bottom:2px solid #111;padding-bottom:1rem;margin-bottom:1rem}.os-print .head img{max-height:80px}.os-print h2{margin:0 0 .25rem}.os-print .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}.os-print .box{border:1px solid #e5e7eb;padding:.75rem;border-radius:6px}.os-print table{width:100%;border-collapse:collapse;margin:1rem 0}.os-print table th,.os-print table td{border:1px solid #e5e7eb;padding:.5rem;font-size:.9rem;text-align:left}.os-print table th{background:#f8fafc}.os-print .total{text-align:right;font-size:1.2rem;font-weight:700;margin-top:.5rem}.os-print .footer-os{margin-top:2rem;border-top:1px solid #ccc;padding-top:1rem;font-size:.85rem;color:#475569}@media (max-width:768px){.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.main-content{margin-left:0;padding:1rem}}