*{box-sizing:border-box}html,body,#root{width:100%;max-width:100%;overflow-x:hidden}:root{--blue: #2563eb;--indigo: #4f46e5;--purple: #7c3aed;--dark: #0f172a;--muted: #64748b;--border: rgba(148, 163, 184, .25)}body{margin:0;width:100%;overflow-x:hidden;min-height:100vh;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--dark);background:radial-gradient(circle at 15% 20%,rgba(37,99,235,.35),transparent 28rem),radial-gradient(circle at 85% 15%,rgba(124,58,237,.28),transparent 26rem),radial-gradient(circle at 65% 85%,rgba(14,165,233,.18),transparent 28rem),linear-gradient(135deg,#eef4ff 0%,#f8fafc 44%,#f5f3ff 100%)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.42) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.42) 1px,transparent 1px);background-size:54px 54px;-webkit-mask-image:linear-gradient(to bottom,black,transparent 85%);mask-image:linear-gradient(to bottom,black,transparent 85%)}.container{width:100%;max-width:100vw;min-height:100vh;display:grid;place-items:center;padding:32px;overflow-x:hidden}.login-form,.user-profile,.change-password-form,.admin-panel,.setup-card{width:min(100%,540px);max-width:100%;position:relative;overflow:hidden;background:rgba(255,255,255,.82);border:1px solid var(--border);border-radius:26px;box-shadow:0 28px 90px #0f172a29;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:36px}.login-form:before,.user-profile:before{content:"V";display:grid;place-items:center;width:62px;height:62px;margin-bottom:20px;border-radius:20px;color:#fff;font-size:30px;font-weight:950;background:linear-gradient(135deg,var(--blue),var(--indigo),var(--purple));box-shadow:0 16px 36px #4f46e557}.login-form:after,.user-profile:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:28px;background:linear-gradient(135deg,rgba(37,99,235,.35),rgba(124,58,237,.28));opacity:.45;filter:blur(28px);z-index:-1}h2,h3,h4{margin-top:0;color:var(--dark);letter-spacing:-.035em}h2{font-size:32px;margin-bottom:22px}p{color:var(--muted)}.form-group{margin:18px 0}label{display:block;margin-bottom:8px;font-weight:800;color:#334155}input{width:100%;border:1px solid #d8e0ec;border-radius:15px;padding:15px 16px;font-size:15px;background:rgba(255,255,255,.92);color:var(--dark);outline:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}input:focus{border-color:var(--blue);box-shadow:0 0 0 4px #2563eb24}button{width:100%;position:relative;overflow:hidden;border:0;border-radius:15px;padding:15px 18px;margin-top:10px;font-size:15px;font-weight:900;color:#fff;cursor:pointer;background:linear-gradient(135deg,var(--blue),var(--indigo),var(--purple));box-shadow:0 16px 30px #4f46e547;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}button:after{content:"";position:absolute;top:0;left:-110%;width:100%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.45),transparent);transition:.55s}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 20px 38px #4f46e55c}button:hover:not(:disabled):after{left:110%}button:disabled{opacity:.65;cursor:not-allowed}.error-message{margin:16px 0;padding:13px 15px;color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:15px}.user-email{padding:14px 16px;background:rgba(248,250,252,.9);border:1px solid #e2e8f0;border-radius:15px}hr{border:0;border-top:1px solid #e2e8f0;margin:28px 0}img[alt="2FA QR Code"]{display:block;margin:18px auto;padding:14px;background:white;border-radius:20px;box-shadow:0 12px 32px #0f172a1f}code{padding:4px 7px;border-radius:8px;background:#eef2ff;color:#3730a3;font-weight:900}@media (max-width: 640px){.container{padding:14px}.login-form,.user-profile,.change-password-form,.admin-panel,.setup-card{width:100%;max-width:100%;padding:22px;border-radius:20px}.setup-grid,.settings-grid{grid-template-columns:minmax(0,1fr)}}.setup-card{margin-top:2rem;padding:2rem;border-radius:24px;background:rgba(255,255,255,.75);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.4);box-shadow:0 10px 30px #00000014}.setup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-top:1rem}.setup-item{background:rgba(255,255,255,.65);padding:1rem;border-radius:18px}.setup-item h4{margin-top:0}.setup-item ol{padding-left:1.2rem}.manual-settings{margin-top:2rem;background:rgba(255,255,255,.65);padding:1.5rem;border-radius:18px}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem}.secondary-button{background:rgba(255,255,255,.75);color:#334155;border:1px solid rgba(148,163,184,.35);box-shadow:none}.secondary-button:hover:not(:disabled){box-shadow:0 12px 24px #0f172a1f}.admin-panel{width:min(100%,900px)}.admin-panel table{width:100%;border-collapse:collapse;font-size:14px}.admin-panel th,.admin-panel td{padding:10px 8px;text-align:left;border-bottom:1px solid rgba(148,163,184,.25)}.admin-panel th{color:#334155;font-weight:900}.admin-panel td{color:#475569;word-break:break-word}@media (max-width: 640px){.admin-panel{overflow-x:auto}.admin-panel table{min-width:620px;font-size:13px}}.message{padding:12px 14px;border-radius:14px;margin:14px 0;font-weight:700}.message.success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.message.error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.checkbox-row{display:flex;align-items:center;gap:10px;margin:18px 0}.checkbox-row input{width:auto;transform:scale(1.2)}.desktop-users-table{display:block;overflow-x:auto}.mobile-users-list{display:none}.mail-user-card{display:flex;justify-content:space-between;gap:14px;padding:16px;margin:12px 0;border-radius:18px;background:rgba(255,255,255,.72);border:1px solid rgba(148,163,184,.25)}.mail-user-card p{margin:6px 0 10px;font-size:13px;word-break:break-all}.status-pill{display:inline-block;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:900}.status-pill.active{background:#dcfce7;color:#166534}.status-pill.inactive{background:#fee2e2;color:#991b1b}.danger-button{background:linear-gradient(135deg,#dc2626,#ef4444);color:#fff;border:none}.small-button{width:auto;min-width:86px;padding:10px 14px;font-size:13px;margin-top:0}@media (max-width: 640px){.desktop-users-table{display:none}.mobile-users-list{display:block}.mail-user-card{align-items:flex-start}}.action-buttons{display:flex;gap:8px;flex-wrap:wrap}.vertical-actions{flex-direction:column}.warning-button{background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff;border:none}.success-button{background:linear-gradient(135deg,#16a34a,#22c55e);color:#fff;border:none}
