@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');
:root{--bg:#0f1114;--bg2:#0d1722;--surface:#151a20;--surface2:#171d24;--blue:#000f72;--violet:#5538ff;--purple:#432063;--text:#fff;--muted:rgba(255,255,255,.62);--faint:rgba(255,255,255,.38);--border:rgba(255,255,255,.07);--green:#57d18b;--amber:#eab85a;--danger:#c65d69;--radius:16px}*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{margin:0;min-height:100vh;background:radial-gradient(800px 400px at 96% -10%,rgba(67,32,99,.28),transparent 65%),radial-gradient(680px 420px at -12% 20%,rgba(0,15,114,.25),transparent 68%),var(--bg);color:var(--text);font:14px/1.55 Poppins,system-ui,sans-serif}body:before{content:"";position:fixed;inset:0;background:url('/assets/backgrounds/dark-topography.png') center/cover no-repeat;opacity:.09;pointer-events:none;mix-blend-mode:screen}a{color:#a9a1ff;text-decoration:none}a:hover{color:#d1cdff}button,.button{font:500 13px Poppins;border:1px solid transparent;border-radius:11px;cursor:pointer;transition:transform .18s ease,filter .18s ease,border-color .18s ease;background:linear-gradient(110deg,var(--blue),var(--violet));color:#fff;padding:11px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover,.button:hover{filter:brightness(1.15);transform:translateY(-1px);color:#fff}button:active,.button:active{transform:scale(.98)}button.secondary,.button.secondary{background:var(--surface2);border-color:var(--border)}button.danger{background:rgba(126,35,55,.5);border-color:rgba(198,93,105,.35)}.app-header{height:70px;padding:0 clamp(16px,4vw,46px);display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--border);background:rgba(13,17,22,.78);backdrop-filter:blur(18px);position:relative;z-index:2}.brand{display:flex;align-items:center;gap:11px;color:#fff;font-weight:600;letter-spacing:.01em;white-space:nowrap}.brand img{width:34px;height:34px;object-fit:contain}.brand-word{font-size:16px}.header-company{font-size:13px;color:var(--muted);border-left:1px solid var(--border);padding-left:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-nav{display:flex;gap:5px;margin-left:auto}.header-nav a{padding:8px 11px;color:var(--muted);border-radius:9px;font-size:12px}.header-nav a:hover,.header-nav a.active{color:#fff;background:rgba(255,255,255,.06)}.header-user{display:flex;align-items:center;gap:10px;padding-left:16px;border-left:1px solid var(--border)}.user-copy{line-height:1.2}.user-name{font-size:12px;font-weight:600}.user-role{font-size:10px;color:var(--faint);margin-top:3px}.avatar{width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,#3125ff,#7047ff);display:grid;place-items:center;color:#fff;font-size:11px;font-weight:600}.logout{background:transparent;border:0;padding:5px;color:var(--faint);font-size:11px}.app-main{max-width:1200px;margin:0 auto;padding:clamp(22px,4vw,42px) clamp(16px,4vw,46px) 60px;position:relative;z-index:1}.page-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:26px}.eyebrow{font-size:10px;letter-spacing:.2em;color:#8f82ff;text-transform:uppercase;font-weight:600;margin-bottom:10px}.page-title{font-size:clamp(25px,4vw,32px);line-height:1.18;margin:0;font-weight:600}.page-subtitle{color:var(--muted);margin:8px 0 0;font-size:13px}.card{background:linear-gradient(145deg,rgba(23,29,36,.94),rgba(21,26,32,.92));border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 12px 35px rgba(0,0,0,.2);padding:24px}.card:hover{border-color:rgba(112,71,255,.18)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.stat-card{padding:18px 19px}.stat-label{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:8px}.stat-value{font-size:25px;font-weight:600;margin-top:8px}.status-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:var(--green);box-shadow:0 0 0 4px rgba(87,209,139,.1)}.status-dot.off{background:var(--faint);box-shadow:none}.connection-card{display:flex;align-items:center;justify-content:space-between;gap:20px}.connection-main{display:flex;align-items:center;gap:14px}.connection-icon{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;background:rgba(0,15,114,.45);border:1px solid rgba(85,56,255,.25);font-size:18px}.connection-title{font-weight:600}.connection-domain{color:var(--muted);font-size:12px;margin-top:2px}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:600;border:1px solid transparent}.badge.green{color:#9ef0bd;background:rgba(43,126,78,.15);border-color:rgba(87,209,139,.18)}.badge.violet{color:#c7c0ff;background:rgba(112,71,255,.14);border-color:rgba(112,71,255,.22)}.badge.blue{color:#aab9ff;background:rgba(0,15,114,.35)}.badge.gray{color:var(--muted);background:rgba(255,255,255,.06);border-color:var(--border)}.badge.amber{color:#f7d88f;background:rgba(234,184,90,.12)}.form-card{max-width:700px}.form-title{font-size:20px;margin:0 0 20px;font-weight:600}.field{display:block;margin-bottom:15px}.field span{display:block;color:var(--muted);font-size:11px;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;height:46px;border:1px solid var(--border);background:var(--surface2);border-radius:11px;color:var(--text);padding:0 13px;font:13px Poppins;outline:none;transition:border-color .18s,box-shadow .18s}.field textarea{height:100px;padding:12px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(112,71,255,.75);box-shadow:0 0 0 3px rgba(85,56,255,.12)}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.error{color:#ffb4bf;background:rgba(126,35,55,.2);border:1px solid rgba(198,93,105,.25);padding:11px 13px;border-radius:10px;margin-bottom:17px;font-size:12px}.toast{position:fixed;right:22px;top:88px;z-index:5;padding:12px 16px;background:#1b2630;border:1px solid rgba(87,209,139,.25);border-radius:12px;color:#baf3ce;box-shadow:0 15px 40px rgba(0,0,0,.35);animation:toast-in .3s ease both}.table-card{padding:0;overflow:hidden}.table-toolbar{padding:18px;border-bottom:1px solid var(--border);display:flex;gap:10px;align-items:center;justify-content:space-between}.search{height:40px;max-width:270px;width:100%;border:1px solid var(--border);background:var(--surface2);border-radius:10px;color:#fff;padding:0 12px;font:12px Poppins;outline:none}.filter-row{display:flex;gap:6px;flex-wrap:wrap}.filter-chip{border:1px solid var(--border);color:var(--muted);background:transparent;border-radius:999px;font-size:11px;padding:6px 10px;cursor:pointer}.filter-chip.active,.filter-chip:hover{background:rgba(85,56,255,.14);border-color:rgba(112,71,255,.3);color:#fff}.user-table{width:100%;border-collapse:collapse}.user-table th{font-size:10px;color:var(--faint);font-weight:500;text-transform:uppercase;letter-spacing:.08em;text-align:left;padding:13px 18px;border-bottom:1px solid var(--border)}.user-table td{padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.045);font-size:12px;color:var(--muted);vertical-align:middle}.user-table tr:last-child td{border-bottom:0}.user-cell{display:flex;align-items:center;gap:10px;color:#fff}.user-cell .avatar{width:34px;height:34px;border-radius:10px}.user-fullname{font-weight:500}.user-handle{font-size:10px;color:var(--faint);margin-top:2px}.empty{padding:50px 24px;text-align:center;color:var(--muted)}.empty strong{display:block;color:#fff;margin-bottom:6px}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-wrap{width:min(440px,100%)}.auth-brand{justify-content:center;margin-bottom:32px}.auth-brand img{width:58px;height:58px}.auth-card{padding:32px}.auth-card h1{font-size:25px;margin:0 0 8px}.auth-card .intro{color:var(--muted);font-size:13px;margin:0 0 26px}.auth-links{display:flex;justify-content:space-between;gap:10px;color:var(--faint);font-size:11px;margin-top:18px}.forgot{display:block;color:#a9a1ff;font-size:11px;margin:-3px 0 17px}.install-layout{max-width:1100px;margin:0 auto;padding:clamp(20px,5vw,58px) clamp(16px,5vw,58px);position:relative;z-index:1}.install-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px}.install-top .brand img{width:42px;height:42px}.install-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:start}.install-copy h1{font-size:clamp(30px,5vw,48px);line-height:1.07;margin:0 0 16px;max-width:620px}.install-copy p{color:var(--muted);max-width:510px;font-size:14px}.install-form{margin-top:30px}.connection-side{position:sticky;top:30px}.connection-side .card{padding:22px}.detected{display:flex;align-items:center;gap:12px;margin:0 0 17px;padding:14px 0;border-bottom:1px solid var(--border)}.detected .check{flex:0 0 25px;width:25px;height:25px}.progress{display:grid;gap:9px;margin:18px 0;color:var(--muted);font-size:12px}.progress span{opacity:.45;transition:opacity .3s;color:var(--muted)}.progress span.active,.progress span.done{opacity:1;color:#baf3ce}.progress span:before{content:'○';display:inline-block;width:23px;color:var(--faint)}.progress span.done:before{content:'✓';color:var(--green)}.success-mark{margin:0 auto 18px;width:56px;height:56px}.success-card{text-align:center;max-width:560px;margin:10vh auto}.success-card .steps{text-align:left;max-width:300px;margin:25px auto}.drawer-page{max-width:520px;margin:0 0 0 auto;min-height:calc(100vh - 110px);animation:drawer-in .32s ease both}.drawer-page .card{min-height:calc(100vh - 110px);border-radius:18px 0 0 18px}.settings-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px}.meta-list{display:grid;gap:13px}.meta-item label{display:block;color:var(--faint);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.meta-item p{margin:4px 0 0;color:#fff}.super-badge{color:#c7c0ff;background:rgba(112,71,255,.14);border:1px solid rgba(112,71,255,.25);border-radius:999px;font-size:10px;padding:5px 9px}.animate-in{animation:fade-up .48s ease both}.delay-1{animation-delay:.08s}.delay-2{animation-delay:.16s}@keyframes fade-up{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes drawer-in{from{opacity:0;transform:translateX(40px)}to{opacity:1;transform:none}}@keyframes toast-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}@media(max-width:900px){.install-grid{grid-template-columns:1fr;gap:22px}.connection-side{position:static}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid{grid-template-columns:1fr}}@media(max-width:680px){.app-header{height:auto;min-height:66px;flex-wrap:wrap;padding:12px 16px;gap:9px}.header-company{order:3;width:100%;border:0;padding:0;font-size:11px}.header-nav{order:4;width:100%;overflow:auto;margin:0}.header-user{margin-left:auto;border:0;padding-left:0}.user-copy{display:none}.app-main{padding:22px 16px 40px}.page-intro{display:block}.page-intro .button{margin-top:16px}.grid{grid-template-columns:1fr}.stats-grid{gap:8px}.stat-card{padding:14px}.stat-value{font-size:21px}.table-toolbar{display:block}.search{max-width:none;margin-bottom:12px}.user-table thead{display:none}.user-table,.user-table tbody,.user-table tr,.user-table td{display:block;width:100%}.user-table tr{padding:15px 16px;border-bottom:1px solid var(--border)}.user-table td{padding:3px 0;border:0}.user-table td:before{content:attr(data-label);display:inline-block;width:86px;color:var(--faint);font-size:10px;text-transform:uppercase}.user-table td:first-child:before{display:none}.user-table td:first-child{margin-bottom:8px}.install-top{margin-bottom:28px}.install-grid{gap:18px}.install-copy h1{font-size:32px}.auth-card{padding:23px}.auth-links{display:block}.auth-links a{display:block;margin-top:9px}.drawer-page{margin:0;min-height:auto}.drawer-page .card{min-height:auto;border-radius:var(--radius)}}
 .page-root{min-height:calc(100vh - 70px)}
.page-root{animation:page-in .36s cubic-bezier(.2,.8,.2,1) both}.card,.button,button,.field input,.field select,.field textarea,.header-nav a,.filter-chip{transition:transform .22s cubic-bezier(.2,.8,.2,1),opacity .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .22s ease,filter .22s ease}.card:hover{transform:translateY(-2px)}.auth-card:hover{transform:none}.password-control{position:relative}.password-control input{padding-right:76px}.password-toggle{position:absolute;right:7px;top:7px;height:32px!important;padding:0 9px!important;background:transparent!important;border:0!important;color:var(--muted)!important;font-size:10px!important;box-shadow:none!important}.password-toggle:hover{color:#fff!important;filter:none!important;transform:none!important}.button[disabled],button[disabled]{opacity:.65;cursor:wait;transform:none!important}.form-loading{pointer-events:none}.form-loading button[type=submit]{opacity:.7}.form-loading button[type=submit] span{display:inline-block;animation:pulse .9s ease-in-out infinite}.form-loading button[type=submit] .submit-label{opacity:.85}@keyframes page-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes pulse{0%,100%{opacity:.45}50%{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
