:root{--primary:#1d4ed8;--dark:#0f172a;--muted:#64748b;--bg:#f4f7fb;--card:#fff;--border:#e5e7eb}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Inter,Segoe UI,Arial,sans-serif;color:#111827}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top left,#2563eb,#0f172a 45%,#020617);padding:18px}.login-card{width:1020px;max-width:100%;display:grid;grid-template-columns:1.08fr .92fr;background:#fff;border-radius:30px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.35)}.login-hero{padding:58px;background:linear-gradient(135deg,#0f172a,#1d4ed8);color:#fff;position:relative;overflow:hidden}.login-hero:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.12);right:-70px;bottom:-80px}.login-hero h1{font-size:44px;line-height:1.05;font-weight:900}.login-hero p{opacity:.92;font-size:17px}.feature-pills span{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);padding:10px 13px;border-radius:999px;margin:6px 5px 0 0}.login-form{padding:56px}.form-control,.form-select{border-radius:14px;padding:12px;border-color:#dbe3ef}.btn-primary{background:var(--primary);border:0;border-radius:14px;padding:12px 18px;font-weight:800}.btn-outline-primary,.btn-outline-danger,.btn-outline-secondary,.btn-success,.btn-danger,.btn-warning{border-radius:12px}.app{display:flex;min-height:100vh}.sidebar{width:282px;background:#0f172a;color:#fff;position:fixed;inset:0 auto 0 0;padding:20px;overflow:auto;z-index:20}.brand{display:flex;align-items:center;gap:12px;margin-bottom:22px}.brand .logo{min-width:48px;height:48px;border-radius:16px;background:#2563eb;display:grid;place-items:center;font-weight:900}.brand span{display:block;color:#94a3b8;font-size:13px}.sidebar a{display:block;color:#cbd5e1;text-decoration:none;padding:11px 13px;border-radius:14px;margin:3px 0;font-weight:600}.sidebar a:hover{background:#1e293b;color:#fff}.content{margin-left:282px;width:calc(100% - 282px);padding:24px}.topbar{background:#fff;border-radius:22px;padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:16px;box-shadow:0 8px 25px rgba(15,23,42,.06)}.user-pill{background:#eef2ff;padding:10px 16px;border-radius:999px;color:#1d4ed8;font-weight:800;white-space:nowrap}.stat{background:#fff;border-radius:22px;padding:22px;box-shadow:0 8px 25px rgba(15,23,42,.06);height:100%;border:1px solid rgba(229,231,235,.7)}.stat h3{font-weight:900}.card{border:0;border-radius:22px;box-shadow:0 8px 25px rgba(15,23,42,.06)}.table{vertical-align:middle}.table-responsive{border-radius:18px}.badge-soft{background:#eff6ff;color:#1d4ed8;padding:8px 12px;border-radius:999px;font-weight:800}.invoice{max-width:900px;margin:auto;background:white;padding:35px;border-radius:20px}.mobile-top{display:none}.mini{font-size:12px;color:var(--muted)}.search-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.print-only{display:none}@media(max-width:1100px){.search-row,.form-grid{grid-template-columns:repeat(2,1fr)}.content{padding:16px}}@media(max-width:860px){.mobile-top{display:flex;position:sticky;top:0;background:#fff;z-index:30;align-items:center;justify-content:space-between;padding:12px 14px;box-shadow:0 6px 20px rgba(15,23,42,.08)}.mobile-top a{text-decoration:none}.menu-btn{border:0;background:#eef2ff;border-radius:12px;padding:8px 12px;color:#1d4ed8;font-weight:900}.sidebar{transform:translateX(-110%);transition:.25s;box-shadow:20px 0 60px rgba(0,0,0,.25)}body.nav-open .sidebar{transform:translateX(0)}.app{display:block}.content{margin-left:0;width:100%;padding:12px}.topbar{display:block}.user-pill{display:inline-block;margin-top:12px}.login-card{grid-template-columns:1fr}.login-hero{padding:36px}.login-hero h1{font-size:34px}.login-form{padding:32px}.table{min-width:760px}.form-grid,.search-row{grid-template-columns:1fr}}@media(max-width:520px){.login-hero{display:none}.login-form{padding:25px}.stat{padding:18px}.topbar h4{font-size:18px}.content{padding:10px}.card-body{padding:14px}.btn{width:100%;margin-top:6px}.btn-group .btn{width:auto}.invoice{padding:18px}}@media print{.sidebar,.topbar,.mobile-top,.no-print,.btn,.alert{display:none!important}.content{margin:0;width:100%;padding:0;background:white}.invoice{box-shadow:none;border-radius:0;max-width:100%;padding:0}.print-only{display:block}body{background:white}.table{min-width:auto}}
