*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{--blue:#2563eb;--cyan:#06b6d4;--dark:#1a1a2e;--gray-text:#4a5568;--gray-light:#f8fafc;--border:#e5e7eb;--green:#22c55e;--red:#ef4444;}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;color:var(--dark);background:var(--gray-light);line-height:1.6;}
a{color:inherit;text-decoration:none;}

.lg-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);padding:20px;}
.lg-box{background:#fff;border-radius:20px;padding:40px;width:100%;max-width:420px;box-shadow:0 20px 60px rgba(0,0,0,.25);}
.lg-logo{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:24px;font-weight:800;font-size:22px;}
.lg-logo .icon{width:40px;height:40px;background:linear-gradient(135deg,var(--dark),#374151);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;}

.form-group{margin-bottom:16px;}
.form-group label{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:6px;}
.form-group input{width:100%;padding:11px 14px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;font-family:inherit;}
.form-group input:focus{outline:none;border-color:var(--blue);}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:10px;font-weight:700;font-size:14px;border:none;cursor:pointer;transition:.15s;}
.btn-primary{background:linear-gradient(135deg,var(--dark),#374151);color:#fff;}
.btn-primary:hover{opacity:.9;}
.btn-outline{background:#fff;color:var(--blue);border:2px solid var(--blue);}
.btn-danger{background:#fef2f2;color:var(--red);}
.btn-block{width:100%;}
.btn-sm{padding:7px 12px;font-size:12px;}

.alert{padding:12px 16px;border-radius:10px;font-size:13px;margin-bottom:16px;}
.alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca;}
.alert-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;}
.alert-info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe;}

.lg-shell{max-width:960px;margin:0 auto;padding:32px 20px;}
.lg-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:10px;}
.lg-topbar .brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:18px;}
.lg-topbar .brand .icon{width:34px;height:34px;background:linear-gradient(135deg,var(--dark),#374151);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;}

.card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 16px rgba(0,0,0,.05);margin-bottom:24px;}
.card h2{font-size:16px;margin-bottom:16px;}

table{width:100%;border-collapse:collapse;font-size:13px;}
th,td{padding:10px 8px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;}
th{color:var(--gray-text);font-weight:700;font-size:11px;text-transform:uppercase;}
.license-key{font-family:monospace;font-size:13px;background:var(--gray-light);padding:4px 8px;border-radius:6px;display:inline-block;}
.badge{padding:3px 9px;border-radius:20px;font-size:11px;font-weight:700;}
.badge-active{background:#f0fdf4;color:#166534;}
.badge-revoked{background:#fef2f2;color:#991b1b;}

.inline-form{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;}
.inline-form .form-group{flex:1;min-width:220px;margin-bottom:0;}

@media (max-width:600px){.lg-box{padding:24px 20px;}}
