:root{
  --bg:#f4f6fb;--surface:#fff;--ink:#111827;--muted:#6b7280;--line:#e5e7eb;
  --brand:#7E2BFF;--brand-2:#A35CFF;--brand-soft:#F1EBFF;--nav:#4D16E8;
  --success:#0f9f6e;--success-bg:#eafaf4;--danger:#dc3f5f;--danger-bg:#fff0f3;
  --warning:#c47a10;--warning-bg:#fff8e8;--shadow:0 18px 55px rgba(17,24,39,.09);
}
*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:"Inter",system-ui,-apple-system,sans-serif;font-size:14px}a{text-decoration:none;color:inherit}button,input,select{font:inherit}
.app-shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}
.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#111827 0%,#17152b 100%);color:#fff;padding:22px 16px;display:flex;flex-direction:column;z-index:30}
.brand{display:flex;align-items:center;gap:12px;padding:2px 8px 24px}.brand-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--brand),var(--brand-2));font-size:19px;box-shadow:0 12px 28px rgba(109,74,255,.35)}.brand strong{display:block;font-size:15px;font-weight:800}.brand small{display:block;color:#9ca3af;font-size:10px;margin-top:2px}
.nav-label{padding:0 12px 8px;color:#6b7280;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.side-nav{display:grid;gap:6px}.side-nav a{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:12px;color:#aeb5c2;font-weight:650;transition:.18s}.side-nav a i{font-size:17px}.side-nav a:hover{color:#fff;background:rgba(255,255,255,.06)}.side-nav a.active{color:#fff;background:linear-gradient(90deg,rgba(109,74,255,.28),rgba(109,74,255,.12));box-shadow:inset 3px 0 0 var(--brand-2)}
.sidebar-bottom{margin-top:auto;padding:16px 8px 2px}.cloud-state{display:flex;align-items:center;gap:8px;color:#aeb5c2;font-size:11px;margin-bottom:12px}.cloud-state span{width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.12)}.logout-link{display:flex;align-items:center;gap:10px;color:#c7cbd4;padding:10px 12px;border-radius:11px}.logout-link:hover{background:rgba(255,255,255,.06);color:#fff}
.workspace{min-width:0}.topbar{height:72px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(229,231,235,.9);background:rgba(255,255,255,.82);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20}.topbar-title{font-weight:800}.topbar-meta{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-weight:800}
.main-wrap{padding:30px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.page-head h1{margin:0;font-size:32px;line-height:1.1;font-weight:800;letter-spacing:-1px}.page-head p{margin:6px 0 0;color:var(--muted)}
.hero-line{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 26px;border-radius:22px;background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%);color:#fff;box-shadow:var(--shadow);margin-bottom:22px;overflow:hidden;position:relative}.hero-line:after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;right:-80px;top:-120px;background:rgba(255,255,255,.14)}.hero-line>*{position:relative;z-index:1}.hero-line h2{margin:0 0 6px;font-size:23px;font-weight:800}.hero-line p{margin:0;color:rgba(255,255,255,.76)}
.kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-bottom:22px}.kpi{padding:18px 20px;border-right:1px solid var(--line)}.kpi:last-child{border-right:0}.kpi span{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}.kpi strong{font-size:25px;line-height:1}.kpi i{color:var(--brand);margin-right:7px}
.section{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}.section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--line)}.section-head h2{margin:0;font-size:16px;font-weight:800}.section-head p{margin:3px 0 0;color:var(--muted);font-size:12px}
.data-head,.data-row{display:grid;grid-template-columns:1.35fr .8fr .8fr .8fr 124px;gap:18px;align-items:center}.data-head{padding:11px 20px;background:#fafafa;color:#8b93a1;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:.08em}.data-row{padding:15px 20px;border-top:1px solid var(--line);transition:.15s}.data-row:hover{background:#fbfbff}.data-row:first-of-type{border-top:0}.primary-cell{display:flex;align-items:center;gap:12px;min-width:0}.entity-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--brand-soft);color:var(--brand);font-size:17px;flex:0 0 auto}.primary-cell strong{display:block;font-size:13px}.primary-cell small{display:block;color:var(--muted);font-size:10px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.muted-value{color:#4b5563;font-size:12px}.actions{display:flex;justify-content:flex-end;gap:6px}.status{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:750}.status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.status.on{color:var(--success)}.status.off{color:var(--danger)}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.door-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.door-top{display:flex;justify-content:space-between;gap:12px}.door-card h3{font-size:16px;margin:14px 0 3px}.door-card small{color:var(--muted)}.door-meta{display:flex;justify-content:space-between;gap:12px;padding:14px 0;color:var(--muted);font-size:11px}.open-btn{width:100%;height:44px;border:0;border-radius:12px;background:var(--nav);color:#fff;font-weight:800}.open-btn:hover{background:#242938}.open-btn:disabled{opacity:.45;cursor:not-allowed}
.btn-main,.btn-soft,.icon-btn{border:0;cursor:pointer;transition:.16s}.btn-main{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:12px;background:var(--brand);color:#fff;font-weight:800;box-shadow:0 10px 22px rgba(109,74,255,.2)}.btn-main:hover{background:#5d3fe5;color:#fff;transform:translateY(-1px)}.btn-soft{padding:10px 13px;border-radius:10px;background:var(--brand-soft);color:var(--brand);font-weight:750}.icon-btn{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#f3f4f6;color:#4b5563}.icon-btn:hover{background:#ebeef2}.icon-btn.danger{background:var(--danger-bg);color:var(--danger)}
.notice{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;margin-bottom:16px;font-weight:700}.notice.success{background:var(--success-bg);color:#087852}.notice.error{background:var(--danger-bg);color:#b72f4b}.empty{padding:42px 20px;text-align:center;color:var(--muted)}
.code-chip,.tag{display:inline-flex;padding:5px 8px;border-radius:8px;background:#f4f1ff;color:#6347ce;font-size:10px;font-weight:700}.tags{display:flex;flex-wrap:wrap;gap:6px}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{padding:12px 18px;background:#fafafa;text-align:left;color:#8b93a1;font-size:10px;text-transform:uppercase;letter-spacing:.08em}td{padding:14px 18px;border-top:1px solid var(--line);font-size:12px}
.modal-content{border:0!important;border-radius:22px!important;box-shadow:0 28px 80px rgba(17,24,39,.22)}.modal-header{padding:22px 24px 10px;border:0}.modal-body{padding:18px 24px}.modal-footer{padding:8px 24px 22px;border:0}.form-control,.form-select{min-height:48px;border-radius:12px;border-color:#dfe3ea}.form-control:focus,.form-select:focus{border-color:#9c86ff;box-shadow:0 0 0 .22rem rgba(109,74,255,.12)}.device-choice{display:flex;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.device-choice:has(input:checked){border-color:#9f8bff;background:#f6f3ff}
.toast-app{position:fixed;right:24px;bottom:24px;z-index:9999;padding:13px 16px;border-radius:12px;background:#111827;color:#fff;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);transition:.2s}.toast-app.show{opacity:1;transform:none}.toast-app.ok{background:#087852}.toast-app.err{background:#b72f4b}
.login{display:grid;place-items:center;min-height:100vh;background:radial-gradient(circle at 20% 15%,#efeaff,transparent 35%),#f5f6fa}.loginbox{width:min(430px,calc(100% - 32px));background:#fff;border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:var(--shadow)}.login-logo{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,var(--brand),var(--brand-2));color:#fff;font-size:22px;margin-bottom:18px}.loginbox h1{font-size:28px;font-weight:800;margin:0}.loginbox .muted{color:var(--muted);margin:6px 0 22px}.loginbox label{display:block;font-weight:700;margin:13px 0 0}.loginbox input{width:100%;height:48px;border:1px solid var(--line);border-radius:12px;padding:0 13px;margin-top:7px}.loginbox button{width:100%;height:48px;margin-top:18px;border:0;border-radius:12px;background:var(--brand);color:#fff;font-weight:800}
.mobile-toggle{display:none}
@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-260px;width:244px;transition:.2s;box-shadow:20px 0 50px rgba(17,24,39,.2)}body.nav-open .sidebar{left:0}.mobile-toggle{display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:10px;background:#f3f4f6}.main-wrap{padding:22px}.topbar{padding:0 18px}.data-head{display:none}.data-row{grid-template-columns:1fr auto}.data-row>*:not(:first-child):not(:last-child){display:none}.kpi-strip{grid-template-columns:1fr 1fr}.kpi:nth-child(2){border-right:0}.kpi:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:600px){.page-head{align-items:flex-start}.page-head h1{font-size:27px}.page-head .btn-main{padding:0 12px}.hero-line{padding:20px}.hero-line .hero-action{display:none}.main-wrap{padding:16px}.topbar-meta span{display:none}.card-grid{grid-template-columns:1fr}.kpi{padding:15px}.kpi strong{font-size:21px}.section-head{padding:15px}.data-row{padding:14px}.actions{gap:4px}}
.device-dashboard-grid .door-card{height:100%;display:flex;flex-direction:column}.device-dashboard-grid .door-meta{margin-top:auto}.token-input-group .form-control{font-size:12px;letter-spacing:.02em;background:#f8f9fb}.token-input-group .form-control.token-generated{background:#f0fff8;border-color:#65c99b}.token-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:12px;background:#fff8e8;color:#8a6116;font-size:12px;line-height:1.45}.token-note i{font-size:16px;margin-top:1px}@media(max-width:767px){.device-dashboard-grid>.col-12{width:100%}.token-input-group{display:grid;grid-template-columns:1fr}.token-input-group .form-control,.token-input-group .btn{width:100%;border-radius:12px!important}.token-input-group .btn{margin-top:8px}}
/* Android-inspired account and device flow */
.account-hero,.device-hero{background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%);color:#fff;border-radius:28px;padding:32px;box-shadow:0 22px 60px rgba(86,76,180,.22);position:relative;overflow:hidden;margin-bottom:26px}.account-hero:after,.device-hero:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;right:-90px;top:-170px;background:rgba(255,255,255,.13)}.account-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.14em;opacity:.8}.account-hero h1,.device-hero h1{font-size:34px;margin:8px 0 4px;letter-spacing:-1px}.account-hero p,.device-hero p{margin:0;color:rgba(255,255,255,.82)}.hero-user-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.14);border-radius:999px;backdrop-filter:blur(8px);z-index:1}.status-dot{width:8px;height:8px;border-radius:50%;background:#42d392}.device-list-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:0 0 18px}.device-list-head h2{font-size:20px;margin:0}.device-list-head p{color:var(--muted);margin:5px 0 0}.location-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px}.location-card{display:block;background:#fff;border:1px solid #e9e8f2;border-radius:24px;padding:22px;color:inherit;box-shadow:0 14px 35px rgba(45,47,74,.08);transition:.2s}.location-card:hover{transform:translateY(-3px);box-shadow:0 20px 48px rgba(75,65,155,.13);color:inherit}.location-card-top{display:flex;justify-content:space-between;align-items:center}.location-icon{width:52px;height:52px;border-radius:17px;display:grid;place-items:center;background:#eee8ff;color:#6049c9;font-size:22px}.location-card h3{margin:18px 0 4px;font-size:20px}.location-card p{margin:0;color:var(--muted);font-size:12px}.location-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.location-stats span{display:flex;align-items:center;gap:9px;padding:12px;background:#f8f7fc;border-radius:14px;color:#6d7280;font-size:11px}.location-stats i{color:#6a52d4;font-size:16px}.location-stats b{color:#252838}.location-card-footer{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:10px;border-top:1px solid #ececf3;padding-top:15px;font-size:11px;color:#717786}.location-card-footer i{color:#7257df}.device-hero{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px}.device-hero-icon{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.2);border:10px solid rgba(255,255,255,.12);font-size:32px;z-index:1}.device-hero-copy,.device-settings-btn{z-index:1}.hero-online{display:inline-flex;align-items:center;gap:8px;margin-top:15px;padding:8px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.12);font-size:12px;font-weight:750}.hero-online i{width:8px;height:8px;border-radius:50%;background:#ff6b7a}.hero-online.on i{background:#45d391}.device-settings-btn{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;color:#fff;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.14);font-size:22px}.device-tabs{display:flex;gap:8px;margin:0 0 18px;overflow:auto}.device-tabs a{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;background:#fff;border:1px solid var(--line);color:#656b78;font-weight:700;font-size:12px;white-space:nowrap}.device-tabs a.active{background:#6a54d4;color:#fff;border-color:#6a54d4}.device-info-card{background:#fff;border:1px solid #e9e8f2;border-radius:25px;overflow:hidden;box-shadow:0 14px 35px rgba(45,47,74,.08)}.device-info-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:18px 20px;border-bottom:1px solid #ececf3}.device-info-row:last-child{border-bottom:0}.device-info-row strong{display:block;font-size:14px}.device-info-row small{display:block;color:var(--muted);margin-top:3px}.info-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-size:18px}.info-icon.purple{background:#eee8ff;color:#674dce}.info-icon.blue{background:#e8efff;color:#4f72d9}.info-icon.red{background:#ffecee;color:#d84b62}.soft-badge{padding:8px 11px;border-radius:999px;font-size:11px;font-weight:800}.soft-badge.green{background:#e7f7ef;color:#249a67}.soft-badge.red{background:#ffeaed;color:#d44760}.soft-badge.gray{background:#f1f2f5;color:#737986}.soft-badge.purple{background:#eee8ff;color:#674dce}.device-open-primary{margin-top:18px;height:54px;border-radius:17px;background:linear-gradient(135deg,#7E2BFF,#735ee4);box-shadow:0 15px 30px rgba(105,81,223,.23);font-size:14px}.device-open-primary:hover{background:linear-gradient(135deg,#5d46d0,#6852dc)}
@media(max-width:700px){.account-hero{align-items:flex-start;flex-direction:column}.device-hero{grid-template-columns:auto 1fr}.device-settings-btn{grid-column:2;grid-row:1;justify-self:end}.device-hero-icon{width:64px;height:64px;font-size:25px}.account-hero h1,.device-hero h1{font-size:28px}.location-grid{grid-template-columns:1fr}.device-info-row{padding:15px}.soft-badge{max-width:120px;overflow:hidden;text-overflow:ellipsis}.main-wrap{padding-bottom:30px}}

/* Access Cloud visual refresh — aligned with the Android application */
:root{
  --bg:#f6f5fa;
  --surface:#ffffff;
  --surface-soft:#faf9fd;
  --ink:#211b35;
  --muted:#777386;
  --line:#ece9f2;
  --brand:#6748e8;
  --brand-2:#8068f3;
  --brand-dark:#5030c8;
  --brand-soft:#eee9ff;
  --nav:#ffffff;
  --success:#239769;
  --success-bg:#e9f8f1;
  --danger:#d45168;
  --danger-bg:#ffedf1;
  --warning:#bd7717;
  --warning-bg:#fff6e7;
  --shadow:0 5px 18px rgba(42,31,79,.075);
  --shadow-hover:0 10px 30px rgba(64,43,126,.12);
}
body{background:var(--bg);color:var(--ink);letter-spacing:-.01em}
.app-shell{grid-template-columns:238px minmax(0,1fr)}
.sidebar{background:#fff;color:var(--ink);border-right:1px solid var(--line);padding:20px 14px;box-shadow:4px 0 18px rgba(42,31,79,.035)}
.brand{padding:3px 8px 26px}.brand-mark{border-radius:15px;background:linear-gradient(145deg,#7b64f2,#5d39d6);box-shadow:0 8px 20px rgba(103,72,232,.25)}
.brand strong{color:var(--ink);font-size:16px}.brand small{color:var(--muted)}
.nav-label{color:#aaa5b5}.side-nav{gap:5px}.side-nav a{color:#777386;padding:12px 13px;border-radius:14px}.side-nav a i{font-size:18px}.side-nav a:hover{color:var(--brand);background:var(--brand-soft)}.side-nav a.active{color:var(--brand);background:var(--brand-soft);box-shadow:none}.side-nav a.active:before{content:"";width:4px;height:22px;border-radius:4px;background:var(--brand);margin-left:-13px;margin-right:9px}
.sidebar-bottom{border-top:1px solid var(--line);padding-top:16px}.cloud-state{color:var(--muted)}.logout-link{color:#777386}.logout-link:hover{background:var(--danger-bg);color:var(--danger)}
.topbar{height:82px;padding:0 30px;border-bottom:0;background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%);color:#fff;box-shadow:0 4px 18px rgba(82,52,187,.17)}
.topbar-title{font-size:22px;font-weight:800}.topbar-meta{color:rgba(255,255,255,.82)}.avatar{background:rgba(255,255,255,.18);color:#fff;border:1px solid rgba(255,255,255,.27)}
.main-wrap{padding:28px 30px 42px;max-width:1440px}.page-head{margin-bottom:22px}.page-head h1{font-size:29px;color:var(--ink)}.page-head p{color:var(--muted)}
.account-hero,.hero-line,.device-hero{background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%)!important;border-radius:26px!important;box-shadow:0 8px 25px rgba(87,55,194,.18)!important}
.account-hero:after,.hero-line:after{background:rgba(255,255,255,.10)!important}.eyebrow{color:rgba(255,255,255,.72)!important}.hero-user-pill,.hero-online{background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.25)!important}
.device-list-head{margin:27px 0 15px}.device-list-head h2{font-size:18px;font-weight:800;margin:0}.device-list-head p{color:var(--muted);margin:4px 0 0}
.location-grid{gap:16px}.location-card,.door-card,.section,.device-info-card,.kpi-strip{border:0!important;box-shadow:var(--shadow)!important;background:#fff}.location-card{border-radius:24px!important;padding:20px!important;transition:.2s ease}.location-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)!important}.location-icon,.entity-icon,.info-icon.purple{background:var(--brand-soft)!important;color:var(--brand)!important}.location-stats{background:var(--surface-soft)!important}.location-card-footer{border-color:var(--line)!important}
.section{border-radius:24px}.section-head{padding:19px 21px;border-color:var(--line)}.data-head,th{background:#fbfafd}.data-row{border-color:var(--line);padding:17px 21px}.data-row:hover{background:#faf8ff}.table-wrap table td{border-color:var(--line)}
.kpi-strip{border-radius:22px}.kpi{border-color:var(--line);padding:20px 22px}.kpi strong{color:var(--ink)}
.btn-main{border-radius:14px;background:linear-gradient(135deg,var(--brand-2),var(--brand));box-shadow:0 7px 18px rgba(103,72,232,.20)}.btn-main:hover{background:linear-gradient(135deg,#7258e9,#5935cf)}.btn-soft{border-radius:12px}.icon-btn{background:#f4f2f8}.icon-btn:hover{background:var(--brand-soft);color:var(--brand)}
.status.on{color:var(--success)}.status.off{color:#a8a3b1}.soft-badge.red{background:#f1f0f4;color:#777386}.soft-badge.green{background:var(--success-bg);color:var(--success)}
.device-tabs{gap:9px}.device-tabs a{border:0;box-shadow:0 3px 12px rgba(42,31,79,.055);border-radius:14px}.device-tabs a.active{background:var(--brand);box-shadow:0 6px 16px rgba(103,72,232,.20)}
.device-info-card{border-radius:25px}.device-info-row{border-color:var(--line);padding:19px 21px}.device-open-primary,.open-btn{background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%);box-shadow:0 8px 20px rgba(103,72,232,.22);border-radius:15px}.open-btn:hover{background:linear-gradient(135deg,#4310D8 0%,#7020EF 55%,#9448F2 100%)}
.form-control,.form-select,.loginbox input{border:1px solid #e3dfea!important;background:#fff}.form-control:focus,.form-select:focus,.loginbox input:focus{border-color:#9d89f5!important;box-shadow:0 0 0 .22rem rgba(103,72,232,.11)!important;outline:0}.form-check-input:checked{background-color:var(--brand);border-color:var(--brand)}
.modal-content{border-radius:24px!important}.notice{border-radius:14px}.code-chip,.tag{background:var(--brand-soft);color:var(--brand)}
.login{background:radial-gradient(circle at 18% 10%,#e9e1ff 0,transparent 34%),radial-gradient(circle at 88% 90%,#eee9ff 0,transparent 30%),var(--bg)}.loginbox{border:0;border-radius:28px;box-shadow:0 16px 50px rgba(47,33,91,.12);padding:38px}.login-logo{background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%);box-shadow:0 9px 20px rgba(103,72,232,.25)}.loginbox button{border-radius:14px;background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%);box-shadow:0 8px 20px rgba(103,72,232,.21)}
.mobile-toggle{background:rgba(255,255,255,.17);color:#fff}
@media(max-width:980px){
  .sidebar{box-shadow:16px 0 45px rgba(42,31,79,.18)}
  .topbar{height:72px;padding:0 17px}.topbar-title{font-size:19px}.topbar-meta>span{display:none}
  .main-wrap{padding:20px 16px 34px}.page-head h1{font-size:25px}
  .account-hero,.hero-line,.device-hero{border-radius:22px!important}
}
@media(max-width:700px){
  .location-card{border-radius:21px!important}.section{border-radius:21px}.loginbox{padding:30px 24px}
}


/* Header content and account menu refinements */
.topbar{min-height:82px;height:auto;padding-top:14px;padding-bottom:14px}
.topbar.topbar-rich{min-height:112px}
.topbar-left{display:flex;align-items:center;gap:12px;min-width:0}
.topbar-copy{display:flex;flex-direction:column;min-width:0}
.topbar-eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;color:rgba(255,255,255,.68);margin-bottom:3px}
.topbar-title{line-height:1.15}
.topbar-subtitle{margin-top:6px;color:rgba(255,255,255,.78);font-size:13px;font-weight:500}
.avatar-button{width:auto;min-width:47px;padding:0 11px;gap:7px;border:1px solid rgba(255,255,255,.28);cursor:pointer}
.avatar-button i{font-size:10px}
.account-menu{width:225px;padding:8px;border:0;border-radius:17px;box-shadow:0 16px 42px rgba(31,23,59,.18);margin-top:10px}
.account-menu-head{display:flex;flex-direction:column;padding:11px 12px 13px;border-bottom:1px solid var(--line);margin-bottom:6px}
.account-menu-head strong{font-size:14px;color:var(--ink)}
.account-menu-head small{color:var(--muted);font-size:11px;margin-top:2px}
.account-menu .dropdown-item{display:flex;align-items:center;gap:10px;border-radius:11px;padding:10px 11px;font-size:13px;font-weight:650}
.account-menu .logout-popup{color:var(--danger)}
.account-menu .logout-popup:hover{background:var(--danger-bg);color:var(--danger)}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.settings-section{padding:24px}
.settings-section>.row{margin:0}
.settings-section .card{border-radius:19px!important;background:#fff!important;box-shadow:0 4px 16px rgba(42,31,79,.065)!important}
@media(max-width:980px){.topbar.topbar-rich{min-height:98px}.topbar-subtitle{font-size:12px}.topbar-meta>span{display:none}}
@media(max-width:700px){.topbar.topbar-rich{min-height:104px}.topbar-title{font-size:18px}.topbar-subtitle{max-width:240px}.settings-section{padding:17px}.section-head{align-items:flex-start}.section-head .btn-main{flex-shrink:0}}

/* Dashboard location cards and devices table alignment */
.dashboard-location-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.dashboard-location-card{display:flex;flex-direction:column;min-width:0;padding:22px;border-radius:24px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 4px 16px rgba(42,31,79,.07);transition:transform .18s ease,box-shadow .18s ease}
.dashboard-location-card:hover{color:var(--ink);transform:translateY(-2px);box-shadow:0 10px 28px rgba(58,39,114,.11)}
.dashboard-location-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.dashboard-location-title{display:flex;align-items:center;gap:13px;min-width:0}.dashboard-location-title h2{margin:0;font-size:18px;font-weight:800}.dashboard-location-title p{margin:4px 0 0;color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-device-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;padding:18px 0}
.dashboard-device-fact{display:flex;align-items:center;gap:11px;min-width:0;padding:11px 12px;border-radius:16px;background:#faf9fd}.dashboard-device-fact div{min-width:0}.dashboard-device-fact small{display:block;color:var(--muted);font-size:10px;font-weight:700;margin-bottom:3px}.dashboard-device-fact strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fact-icon{width:35px;height:35px;flex:0 0 35px;border-radius:11px;display:grid;place-items:center}.fact-icon.purple{background:var(--brand-soft);color:var(--brand)}.fact-icon.green{background:var(--success-bg);color:var(--success)}.fact-icon.gray{background:#f0eff4;color:#85808f}
.dashboard-location-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:15px;border-top:1px solid var(--line);color:var(--brand);font-size:12px;font-weight:800}.dashboard-location-card-footer i{font-size:17px}
@media(max-width:980px){.dashboard-location-grid{grid-template-columns:1fr}}
@media(max-width:560px){.dashboard-location-card{padding:18px}.dashboard-device-facts{grid-template-columns:1fr}.dashboard-location-card-head{align-items:flex-start}.dashboard-location-title{align-items:flex-start}}
/* Dashboard device cards + settings modal */
.dashboard-device-card{cursor:pointer;position:relative;display:flex;flex-direction:column;min-height:100%;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.dashboard-device-card:hover{transform:translateY(-4px);border-color:#d8d0ff;box-shadow:0 22px 52px rgba(80,63,166,.15)}.dashboard-device-card:focus-visible{outline:3px solid rgba(106,84,212,.25);outline-offset:3px}.dashboard-location-card-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid #ececf3}.dashboard-card-open,.dashboard-card-settings{height:46px;border:0;border-radius:14px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:8px}.dashboard-card-open{background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%);color:#fff;box-shadow:0 10px 22px rgba(105,81,223,.22)}.dashboard-card-open:disabled{background:#e7e7ed;color:#999ca7;box-shadow:none}.dashboard-card-settings{padding:0 16px;background:#f1edff;color:#6048ca}.device-settings-modal .modal-dialog{max-width:760px}.device-modal-header{padding:22px 24px 16px;border-bottom:1px solid #ececf3}.device-modal-title{display:flex;align-items:center;gap:14px}.device-modal-title small{display:block;color:#7259da;font-size:10px;font-weight:850;letter-spacing:.13em}.device-modal-title h5{font-size:21px;font-weight:800;margin:3px 0 1px}.device-modal-title p{font-size:11px;color:var(--muted);margin:0}.device-modal-body{padding:20px 24px 24px}.device-modal-status{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-radius:14px;background:#f8f7fc;margin-bottom:16px;color:var(--muted);font-size:12px}.dashboard-settings-form{display:grid;gap:12px}.settings-field-card,.settings-switch-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:16px;border:1px solid #e8e7f0;border-radius:17px;background:#fff}.settings-field-card>div:first-child,.settings-switch-card{ }.settings-field-card>div:first-child{display:flex;align-items:center;gap:13px}.settings-switch-card{grid-template-columns:auto 1fr auto;cursor:pointer}.settings-field-card strong,.settings-switch-card strong{display:block;font-size:13px}.settings-field-card small,.settings-switch-card small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.settings-field-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-size:17px}.settings-field-icon.purple{background:#eee8ff;color:#674dce}.settings-field-icon.blue{background:#e8efff;color:#4f72d9}.settings-field-icon.green{background:#e7f7ef;color:#249a67}.relay-input{width:170px}.settings-switch-card .form-check{margin:0}.settings-switch-card .form-check-input{width:46px;height:24px;cursor:pointer}.device-modal-message{min-height:20px;font-size:12px;font-weight:700}.device-modal-message.success{color:#16815a}.device-modal-message.error{color:#c23d57}.device-modal-footer-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px}.device-modal-footer-actions .btn-main{border:0}.dashboard-location-grid{align-items:stretch}@media(max-width:650px){.dashboard-location-card-actions{grid-template-columns:1fr}.dashboard-card-settings{width:100%}.settings-field-card{grid-template-columns:1fr}.relay-input{width:100%}.device-modal-body{padding:16px}.device-modal-header{padding:18px 16px 14px}.device-modal-footer-actions{display:grid;grid-template-columns:1fr}.device-modal-footer-actions>*{width:100%}}

/* Relay duration slider */
.relay-slider-card{grid-template-columns:minmax(220px,.8fr) minmax(260px,1.2fr)}
.relay-slider-heading{display:flex;align-items:center;gap:13px}
.relay-slider-control{min-width:0;padding:4px 2px 0}
.relay-slider-value{margin-bottom:8px;text-align:right;color:var(--brand);font-size:15px;font-weight:850;font-variant-numeric:tabular-nums}
.relay-range{width:100%;height:22px;padding:0;background:transparent;border:0!important;box-shadow:none!important;cursor:pointer}
.relay-range::-webkit-slider-runnable-track{height:7px;border-radius:999px;background:linear-gradient(90deg,#7458e5,#a68ff7)}
.relay-range::-webkit-slider-thumb{width:22px;height:22px;margin-top:-7.5px;border:4px solid #fff;border-radius:50%;background:#684bd5;box-shadow:0 3px 12px rgba(73,49,164,.32)}
.relay-range::-moz-range-track{height:7px;border-radius:999px;background:linear-gradient(90deg,#7458e5,#a68ff7)}
.relay-range::-moz-range-thumb{width:16px;height:16px;border:4px solid #fff;border-radius:50%;background:#684bd5;box-shadow:0 3px 12px rgba(73,49,164,.32)}
.relay-slider-scale{display:flex;justify-content:space-between;margin-top:2px;color:var(--muted);font-size:10px;font-weight:700}
@media(max-width:650px){.relay-slider-card{grid-template-columns:1fr}.relay-slider-value{text-align:left;margin-top:5px}}

/* Compact account block and uniform device action buttons */
.topbar-meta{flex:0 0 auto;white-space:nowrap}
.account-menu-head{min-width:0}
.account-menu-head strong{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}
.account-menu-head small{line-height:1.2}
.actions{align-items:center}
.actions form{display:flex;margin:0;padding:0}
.actions .icon-btn{box-sizing:border-box;flex:0 0 36px;width:36px!important;height:36px!important;min-width:36px;min-height:36px;padding:0!important;margin:0;line-height:1;border-radius:10px}
.actions .icon-btn i{display:block;font-size:15px;line-height:1}

/* Compact account trigger */
.topbar-meta{display:flex;align-items:center}
.account-trigger{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:4px 7px 4px 13px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.10);color:#fff;white-space:nowrap;cursor:pointer;transition:.18s}
.account-trigger:hover,.account-trigger:focus{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.4)}
.account-trigger-role{font-size:12px;font-weight:650;line-height:1}
.account-trigger-avatar{width:34px;height:34px;min-width:34px;border:0;background:rgba(255,255,255,.20)}
.account-trigger-chevron{font-size:10px;margin-right:3px;transition:transform .18s}
.account-trigger[aria-expanded="true"] .account-trigger-chevron{transform:rotate(180deg)}
@media(max-width:600px){.account-trigger-role{display:none}.account-trigger{padding-left:5px;gap:5px}}

/* Activity pagination */
.events-pagination{display:flex;justify-content:center;align-items:center;gap:7px;padding:20px 18px 8px;border-top:1px solid var(--line)}
.page-number,.page-control{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--line);background:#fff;color:#5f6572;font-size:12px;font-weight:750;transition:.16s}
.page-number:hover,.page-control:hover{background:var(--brand-soft);border-color:#cfc5ff;color:var(--brand)}
.page-number.active{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 7px 18px rgba(105,81,223,.2)}
.page-control.disabled{opacity:.38;pointer-events:none}
.page-gap{color:var(--muted);padding:0 2px}
.events-page-meta{text-align:center;color:var(--muted);font-size:11px;padding:3px 18px 18px}

/* Dashboard cards are informational; only their explicit action buttons are interactive. */
.dashboard-device-card,
.dashboard-device-card:hover {
  cursor: default;
  transform: none !important;
  box-shadow: 0 4px 16px rgba(42,31,79,.07) !important;
  border-color: transparent !important;
}
.dashboard-device-card:focus,
.dashboard-device-card:focus-visible {
  outline: none !important;
}
.device-modal-footer-actions .btn,
.device-modal-footer-actions .btn-main {
  min-height: 46px;
  border-radius: 14px !important;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Unified violet palette — matched to the Android authentication button */
:root{
  --brand:#7E2BFF;
  --brand-2:#4D16E8;
  --brand-3:#A35CFF;
  --brand-dark:#4D16E8;
  --brand-soft:#F1EBFF;
}

.topbar,
.account-hero,
.hero-line,
.device-hero{
  background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%)!important;
  box-shadow:0 8px 24px rgba(77,22,232,.22)!important;
}

.brand-mark,
.login-logo,
.loginbox button,
.btn-main,
.device-open-primary,
.open-btn,
.dashboard-card-open{
  background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%)!important;
  color:#fff!important;
  box-shadow:0 9px 22px rgba(77,22,232,.24)!important;
}

.btn-main:hover,
.loginbox button:hover,
.device-open-primary:hover,
.open-btn:hover,
.dashboard-card-open:hover{
  background:linear-gradient(135deg,#4310D8 0%,#7020EF 55%,#9448F2 100%)!important;
  color:#fff!important;
}

.side-nav a.active,
.device-tabs a.active,
.page-number.active{
  background:#7E2BFF!important;
  border-color:#7E2BFF!important;
  color:#fff!important;
}

/* Switches: neutral when OFF, violet only when ON */
.form-switch .form-check-input{
  background-color:#D7D9E0!important;
  border-color:#D7D9E0!important;
  box-shadow:none!important;
}
.form-switch .form-check-input:focus{
  border-color:#C5C7D0!important;
  box-shadow:0 0 0 .18rem rgba(126,43,255,.12)!important;
}
.form-switch .form-check-input:checked{
  background-color:#7E2BFF!important;
  border-color:#7E2BFF!important;
}

.side-nav a.active:before{
  background:#A35CFF!important;
}

.side-nav a:hover,
.btn-soft,
.icon-btn:hover,
.location-icon,
.entity-icon,
.info-icon.purple,
.code-chip,
.tag{
  background:#F1EBFF!important;
  color:#6420D7!important;
}

.form-control:focus,
.form-select:focus,
.loginbox input:focus{
  border-color:#A35CFF!important;
  box-shadow:0 0 0 .22rem rgba(126,43,255,.14)!important;
}

.device-open-primary:disabled,
.open-btn:disabled,
.dashboard-card-open:disabled,
.btn-main:disabled{
  background:linear-gradient(135deg,#BBB3D0,#C8C0DB)!important;
  color:#fff!important;
  box-shadow:none!important;
}


/* Access Cloud Android violet — forced final rules */
.topbar,.hero-line,.device-hero,.account-hero{
 background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%)!important;
}
.btn-main,.open-btn,.device-open-primary,.dashboard-card-open,.loginbox button,.brand-mark{
 background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%)!important;
 border-color:transparent!important;color:#fff!important;
}
.side-nav a.active{
 background:linear-gradient(90deg,rgba(126,43,255,.18),rgba(163,92,255,.10))!important;
 box-shadow:inset 3px 0 0 #7E2BFF!important;
 color:#6420D7!important;
}
.side-nav a.active i{
 color:#6420D7!important;
}

/* Exact Android horizontal gradient for page headers */
.topbar,
.hero-line,
.device-hero,
.account-hero {
  background-image: linear-gradient(90deg, #4D16E8 0%, #7E2BFF 55%, #A35CFF 100%) !important;
  background-color: #7E2BFF !important;
}


/* Violet button audit — remove every remaining Bootstrap blue action */
.btn-primary,
.btn-main,
button.btn-main,
a.btn-main,
input.btn-main,
.generate-token-btn.btn-outline-violet {
  --bs-btn-bg:#7E2BFF;
  --bs-btn-border-color:transparent;
  --bs-btn-hover-bg:#7020EF;
  --bs-btn-hover-border-color:transparent;
  --bs-btn-active-bg:#6420D7;
  --bs-btn-active-border-color:transparent;
  --bs-btn-disabled-bg:#BBB3D0;
  --bs-btn-disabled-border-color:transparent;
}

.btn-primary,
.btn-main,
button.btn-main,
a.btn-main,
input.btn-main {
  background:linear-gradient(90deg,#4D16E8 0%,#7E2BFF 55%,#A35CFF 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 9px 22px rgba(77,22,232,.24)!important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-main:hover,
.btn-main:focus,
.btn-main:active {
  background:linear-gradient(90deg,#4310D8 0%,#7020EF 55%,#9448F2 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 9px 22px rgba(77,22,232,.28)!important;
}

.btn-outline-primary,
.btn-outline-violet,
.generate-token-btn {
  background:#F1EBFF!important;
  border-color:#A35CFF!important;
  color:#6420D7!important;
  box-shadow:none!important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-violet:hover,
.btn-outline-violet:focus,
.btn-outline-violet:active,
.generate-token-btn:hover,
.generate-token-btn:focus,
.generate-token-btn:active {
  background:#E7DCFF!important;
  border-color:#7E2BFF!important;
  color:#4D16E8!important;
  box-shadow:0 0 0 .18rem rgba(126,43,255,.12)!important;
}

.dashboard-card-settings,
.device-settings-btn {
  color:#6420D7!important;
}

.btn-check:checked + .btn-primary,
.btn-check:active + .btn-primary,
.btn-primary.active,
.btn-primary.show {
  background:linear-gradient(90deg,#4310D8 0%,#7020EF 55%,#9448F2 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
}

.btn-primary:disabled,
.btn-primary.disabled,
.btn-main:disabled,
.btn-main.disabled {
  background:linear-gradient(135deg,#BBB3D0,#C8C0DB)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:none!important;
  opacity:.72;
}

/* Firmware installer */
.installer-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.8fr);gap:24px;align-items:start}.installer-card{background:#fff;border:1px solid #e9e3f4;border-radius:22px;box-shadow:0 16px 40px rgba(51,24,93,.08);padding:28px}.installer-card-head{display:flex;gap:18px;align-items:flex-start}.installer-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:17px;background:linear-gradient(135deg,#4d16e8,#9b52ff);color:#fff;font-size:25px;box-shadow:0 10px 24px rgba(77,22,232,.25);flex:0 0 auto}.installer-kicker{display:block;color:#7a6a94;font-size:12px;font-weight:800;letter-spacing:.11em;margin-bottom:5px}.installer-card h2,.installer-card h3{margin:0;color:#261840;font-weight:800}.installer-card-head p{margin:7px 0 0;color:#746986}.installer-release{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.installer-release>div{padding:15px 16px;border-radius:15px;background:#f8f5fd;border:1px solid #eee7f7}.installer-release small{display:block;color:#857a96;font-size:12px;margin-bottom:4px}.installer-release strong{color:#2b1b48}.installer-warning{display:flex;gap:11px;align-items:flex-start;background:#fff8e8;border:1px solid #f4dfad;color:#76540d;border-radius:15px;padding:14px 16px;margin-bottom:20px}.installer-warning i{color:#dc9400;margin-top:2px}.installer-action{width:100%;display:flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:14px;padding:15px 20px;background:linear-gradient(90deg,#4d16e8,#7e2bff 55%,#a35cff);color:#fff;font-weight:800;font-size:15px;box-shadow:0 10px 24px rgba(77,22,232,.24);cursor:pointer}.installer-action:hover{filter:brightness(.97)}.installer-browser-error,.installer-unavailable{margin-top:16px;border-radius:15px;padding:17px;background:#fff1f2;border:1px solid #fecdd3;color:#9f1239}.installer-unavailable{display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;padding:30px 20px}.installer-unavailable i{font-size:32px}.installer-unavailable code{font-size:12px;word-break:break-all}.installer-steps-card h3{margin-bottom:20px}.installer-steps{list-style:none;padding:0;margin:0;display:grid;gap:18px}.installer-steps li{display:flex;gap:13px;align-items:flex-start}.installer-steps li>span{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;background:#efe8ff;color:#6420d7;font-weight:800;flex:0 0 auto}.installer-steps strong{display:block;color:#302047;font-size:14px}.installer-steps small{display:block;color:#81758f;line-height:1.45;margin-top:3px}@media(max-width:900px){.installer-grid{grid-template-columns:1fr}.installer-release{grid-template-columns:1fr}}


/* Account security modal */
.account-settings-modal{border:0;border-radius:22px;overflow:hidden}.account-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.account-setting-card{border:1px solid #e9e3f4;border-radius:16px;padding:18px;background:#fff}.account-setting-card h6{font-weight:800;color:#302047}.account-setting-card p{color:#746986;font-size:13px}.account-setting-card.danger-zone{border-color:#fecdd3;background:#fffafb}.account-setting-card.danger-zone h6{color:#b91c1c}.account-trigger{cursor:pointer}@media(max-width:760px){.account-settings-grid{grid-template-columns:1fr}}

/* Account dropdown + focused action modals */
.account-menu{width:330px!important;padding:10px!important;border:1px solid rgba(91,64,148,.10)!important;border-radius:20px!important;box-shadow:0 24px 60px rgba(37,20,71,.22)!important;background:rgba(255,255,255,.98)!important;backdrop-filter:blur(18px);overflow:hidden}
.account-menu-head{display:grid!important;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:11px;padding:10px 10px 14px!important;margin:0 0 6px!important;border-bottom:1px solid #eee8f6!important}
.account-menu-avatar{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#4d16e8,#9b52ff);color:#fff;font-size:16px;font-weight:800;box-shadow:0 9px 20px rgba(88,28,220,.22)}
.account-menu-head strong{font-size:14px!important;color:#24163b!important;line-height:1.25}.account-menu-head small{display:block;color:#84788f!important;font-size:11px!important;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.account-menu .dropdown-item{display:grid!important;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px!important;padding:10px!important;border-radius:13px!important;color:#322344!important;background:transparent;border:0;text-align:left;width:100%}
.account-menu .dropdown-item:hover,.account-menu .dropdown-item:focus{background:#f5f0ff!important;color:#4d16e8!important}
.account-menu .dropdown-item>span:last-child{display:flex;flex-direction:column;min-width:0}.account-menu .dropdown-item b{font-size:12.5px;line-height:1.2}.account-menu .dropdown-item small{font-size:10.5px;color:#91869d;margin-top:3px;line-height:1.2}
.account-menu-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#f0e9ff;color:#6824df;font-size:15px}
.account-menu .account-delete-item{color:#a9283e!important}.account-menu .account-delete-item .account-menu-icon{background:#fff0f2;color:#c73951}.account-menu .account-delete-item:hover{background:#fff4f5!important;color:#a9283e!important}
.account-menu-divider{height:1px;background:#eee8f6;margin:7px 4px}.account-menu .logout-popup{color:#5e5369!important}.account-menu .logout-popup .account-menu-icon{background:#f3f1f5;color:#665c70}.account-menu .logout-popup:hover{background:#f6f4f8!important;color:#31293a!important}
.account-action-modal .modal-content{border:0;border-radius:24px;overflow:hidden;box-shadow:0 28px 80px rgba(36,18,71,.25)}
.account-modal-head{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;padding:22px 24px 18px;border-bottom:1px solid #eee8f6;background:linear-gradient(180deg,#fff,#fbf9ff)}
.account-modal-head .btn-close{margin:0}.account-modal-head h5{font-size:18px;font-weight:800;color:#28183f;margin:0}.account-modal-head p{font-size:12px;color:#81748d;margin:4px 0 0}
.account-modal-title-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#eee5ff,#f7f2ff);color:#6924df;font-size:21px;border:1px solid #e5d8ff}
.account-modal-head.danger{background:linear-gradient(180deg,#fff,#fff8f9)}.account-modal-head.danger .account-modal-title-icon{background:#fff0f2;color:#c52f49;border-color:#ffd8de}.account-modal-head.danger h5{color:#9f2037}
.account-modal-body{padding:24px}.account-modal-body .form-label{font-size:12px;font-weight:750;color:#483a57;margin:0 0 7px}.account-modal-body .form-label:not(:first-of-type){margin-top:15px}
.current-account-value{padding:13px 15px;border:1px solid #ebe4f3;border-radius:14px;background:#faf8fd;margin-bottom:18px}.current-account-value small{display:block;color:#8c8197;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.current-account-value strong{display:block;color:#332344;font-size:13px;margin-top:3px;word-break:break-all}
.account-input-wrap{position:relative}.account-input-wrap>i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#806e93;font-size:14px;z-index:2}.account-input-wrap .form-control{height:48px;border-radius:14px;border-color:#e3dbea;padding-left:41px;font-size:13px;box-shadow:none}.account-input-wrap .form-control:focus{border-color:#8b4bea;box-shadow:0 0 0 .2rem rgba(126,43,255,.10)}
.account-modal-note{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:13px 14px;border-radius:14px;background:#f2ecff;color:#59416f;font-size:11.5px;line-height:1.5}.account-modal-note i{color:#6f28df;margin-top:1px}.account-modal-note.danger{background:#fff1f3;color:#85293b}.account-modal-note.danger i{color:#c42d48}
.account-modal-footer{padding:16px 24px 22px;border-top:1px solid #f1edf5;gap:9px}.account-modal-footer .btn{border-radius:12px;padding:10px 16px;font-size:12px;font-weight:750}.account-modal-footer .btn-main{display:inline-flex;align-items:center;gap:7px}
.delete-warning-list{display:grid;gap:10px}.delete-warning-list>div{display:grid;grid-template-columns:38px 1fr;gap:11px;align-items:center;padding:11px 13px;border:1px solid #f1e8eb;border-radius:14px;background:#fffafb;color:#553944;font-size:12px}.delete-warning-list i{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#fff0f2;color:#bd3049;font-size:15px}.account-danger-btn{display:inline-flex;align-items:center;gap:7px;background:#bd2d47;border-color:#bd2d47}.account-danger-btn:hover{background:#a5223b;border-color:#a5223b}
@media(max-width:600px){.account-menu{width:min(330px,calc(100vw - 24px))!important}.account-modal-head{grid-template-columns:44px minmax(0,1fr) auto;padding:18px}.account-modal-title-icon{width:44px;height:44px;border-radius:14px}.account-modal-body{padding:18px}.account-modal-footer{padding:14px 18px 18px}.account-modal-footer .btn{flex:1}.account-modal-footer{display:flex;flex-wrap:nowrap}}
