:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:#f6f8fb;color:#14213d}a{color:inherit;text-decoration:none}.shell{min-height:100vh}.nav{justify-content:space-between;padding:16px 28px;background:#0f172a;color:#fff}.nav,.navlinks{display:flex;align-items:center}.navlinks{gap:16px}.container{max-width:1120px;margin:0 auto;padding:28px}.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:22px;box-shadow:0 8px 30px rgba(15,23,42,.05)}.grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #cbd5e1;border-radius:10px;margin-top:6px}label{display:block;font-size:14px;margin-bottom:12px}button{border:0;border-radius:10px;padding:10px 15px;cursor:pointer;background:#2563eb;color:#fff;font-weight:700}button.secondary{background:#334155}button.danger{background:#b91c1c}.muted{color:#64748b}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.table{width:100%;border-collapse:collapse}.table td,.table th{text-align:left;padding:12px;border-bottom:1px solid #e5e7eb;vertical-align:top}.badge{display:inline-block;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:700;background:#e2e8f0}.badge.active{background:#dcfce7;color:#166534}.badge.suspended{background:#fee2e2;color:#991b1b}.error{color:#b91c1c;margin:10px 0}.success{color:#166534;margin:10px 0}.auth{max-width:420px;margin:80px auto}h1,h2,h3{margin-top:0}.main-nav{position:-webkit-sticky;position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 24px;min-height:68px;background:#0f172a;border-bottom:1px solid #1e293b;box-shadow:0 3px 12px rgba(0,0,0,.12)}.nav-brand a{color:#fff;text-decoration:none;font-size:17px;white-space:nowrap}.main-nav-links{display:flex;align-items:center;gap:4px}.main-nav-links a{display:inline-flex;align-items:center;min-height:42px;padding:0 11px;border-radius:7px;color:#cbd5e1;text-decoration:none;font-size:14px;font-weight:500;transition:.2s ease}.main-nav-links a:hover{background:#1e293b;color:#fff}.main-nav-links a.active{background:#2563eb;color:#fff}.nav-logout{margin-left:6px;padding:9px 14px;border:1px solid #475569;border-radius:7px;background:transparent;color:#fff;cursor:pointer;font-weight:600}.nav-logout:hover{background:#dc2626;border-color:#dc2626}.mobile-menu-btn{display:none;padding:8px 12px;border:1px solid #475569;border-radius:7px;background:#1e293b;color:#fff;font-size:20px;cursor:pointer}@media (max-width:1100px){.main-nav{flex-wrap:wrap;padding:12px 18px}.mobile-menu-btn{display:block}.main-nav-links{display:none;width:100%;flex-direction:column;align-items:stretch;padding:10px 0}.main-nav-links.open{display:flex}.main-nav-links a{width:100%;padding:10px 14px}.nav-logout{width:100%;margin:4px 0 0}}@media print{.main-nav{display:none!important}body,html{background:#fff!important;color:#111827!important;margin:0!important;padding:0!important}.main-nav,.no-print,button,nav{display:none!important}main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}table{width:100%;border-collapse:collapse;font-size:10px}td,th{padding:5px;overflow-wrap:anywhere}.fbr-confirmation,.totals,tr{break-inside:avoid;page-break-inside:avoid}svg{print-color-adjust:exact;-webkit-print-color-adjust:exact}}@media print{@page{size:A4 portrait;margin:12mm}}@media screen and (min-width:768px){.invoice-paper{width:min(100%,1100px)!important;max-width:1100px!important;margin-left:auto!important;margin-right:auto!important}}@media print{@page{size:A4 portrait;margin:8mm}.invoice-paper{width:100%!important;max-width:100%!important;padding:0!important;margin:0!important;border:none!important;box-shadow:none!important;font-size:10px!important}.invoice-paper h1{font-size:20px!important}.invoice-paper .party-grid{gap:8px!important}.invoice-paper .party-card{padding:10px!important;min-height:0!important}.invoice-paper .invoice-table{width:100%!important;table-layout:auto!important;font-size:9px!important}.invoice-paper .invoice-table td,.invoice-paper .invoice-table th{font-size:9px!important;padding:4px!important;overflow-wrap:anywhere}.invoice-paper .fbr-confirmation{margin-top:12px!important;padding:10px!important;page-break-inside:avoid;break-inside:avoid}.invoice-paper .totals{margin-top:10px!important}.invoice-paper .total-row{padding:4px 0!important}}