:root{--c-primary:#0a2540;--c-primary-muted:#163f80;--c-accent:#1f5fb8;--c-accent-hover:#164a94;--c-accent-soft:#e8f0fb;--c-silver:#a8a8a8;--c-silver-muted:#d4d6d9;--c-surface:#fff;--c-surface-alt:#f5f7fa;--c-text:#0a2540;--c-text-muted:#5a6270;--c-border:#e3e6eb;--c-success:#2e8b57;--c-warning:#b45309;--c-warning-soft:#fef3e2;--c-danger:#dc2626;--radius:10px;--radius-lg:16px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--c-surface-alt);color:var(--c-text);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0}button,input,select,textarea{font:inherit}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{background:var(--c-primary);color:#fff;padding:24px 0}.sidebar .brand{padding:16px 24px 20px;border-bottom:1px solid hsla(0,0%,100%,.08)}.sidebar .brand h1{font-size:18px;letter-spacing:2px}.sidebar .brand p{opacity:.55;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;font-weight:600}.sidebar nav a{display:block;padding:12px 24px;font-size:14px;opacity:.8;border-left:3px solid transparent}.sidebar nav a:hover{opacity:1;background:hsla(0,0%,100%,.04)}.sidebar nav a.active{opacity:1;border-left-color:var(--c-accent);background:rgba(31,95,184,.12);font-weight:600}.sidebar .signout{margin:24px;padding:10px 12px;background:transparent;color:#fff;border:1px solid hsla(0,0%,100%,.2);border-radius:var(--radius);cursor:pointer;width:calc(100% - 48px)}.main{padding:32px 40px}.main h2{font-size:24px;margin-bottom:4px}.main .muted{color:var(--c-text-muted);font-size:14px;margin-bottom:24px}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius);padding:20px;margin-bottom:16px}.card h3{font-size:16px;margin-bottom:12px}.table{width:100%;border-collapse:collapse;font-size:14px}.table td,.table th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--c-border)}.table th{font-weight:600;color:var(--c-text-muted);font-size:12px;letter-spacing:.5px;text-transform:uppercase}.table tbody tr:hover{background:var(--c-surface-alt)}.btn{background:var(--c-accent);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius);cursor:pointer;font-weight:600;letter-spacing:.5px}.btn:hover{background:var(--c-accent-hover)}.btn.ghost{background:transparent;color:var(--c-text);border:1px solid var(--c-border)}.btn.danger{background:var(--c-danger)}.input,.select,.textarea{width:100%;padding:10px 12px;border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-surface);color:var(--c-text)}.input:focus,.select:focus,.textarea:focus{outline:2px solid var(--c-accent);outline-offset:-1px;border-color:var(--c-accent)}.label{display:block;font-size:12px;color:var(--c-text-muted);margin-bottom:6px;margin-top:12px;font-weight:600}.badge,.label{text-transform:uppercase;letter-spacing:.5px}.badge{display:inline-block;font-size:11px;font-weight:700;padding:3px 8px;border-radius:999px}.badge.submitted{background:#eef1f5;color:var(--c-text-muted)}.badge.confirmed,.badge.delivered,.badge.scheduled{background:#e8f5ee;color:var(--c-success)}.badge.installed,.badge.out_for_delivery{background:var(--c-accent-soft);color:var(--c-accent)}.badge.cancelled{background:#fde7e7;color:var(--c-danger)}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.auth-wrap{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--c-primary)}.auth-card{background:#fff;padding:40px;border-radius:var(--radius-lg);width:100%;max-width:400px}.auth-brand{text-align:center;color:#fff;margin-bottom:24px}.auth-brand h1{letter-spacing:3px;font-size:28px}.auth-brand p{opacity:.7;font-size:13px;margin-top:4px}