@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,Noto Sans SC,sans-serif;color:#18212f;background:#f5f7fb}*{box-sizing:border-box}body{margin:0}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#e9f0ff,#f7f9fc)}.login-card{width:390px;background:#fff;padding:42px;border-radius:20px;box-shadow:0 18px 60px #1f4b7b18}.logo{font-size:28px;font-weight:700;color:#2167d5}.muted{color:#8792a5}.login form{display:grid;gap:18px;margin-top:28px}label{display:grid;gap:8px;font-weight:600;font-size:14px}input,select,textarea{font:inherit;border:1px solid #dfe5ee;border-radius:9px;padding:12px;background:#fff;color:#18212f}textarea{min-height:110px;resize:vertical}.inline-form{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px}.inline-form input{flex:1;min-width:140px}.upload-row,.assign-row{display:flex;gap:12px;align-items:center;margin-bottom:15px}.upload-row input{flex:1}.permission,.device-row{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid #edf0f5}.permission small{display:block;color:#8792a5;font-weight:400;margin-top:4px}.permission input{width:18px;height:18px}.device-row{gap:12px}.activation-code{display:inline-block;background:#eef4ff;color:#2167d5;font-size:22px;font-weight:700;letter-spacing:3px;padding:12px 18px;border-radius:8px;margin:5px 0 18px}.primary{background:#2167d5;color:#fff;font-weight:600;padding:13px}.error{color:#d94343;font-size:13px}.success{color:#18805b;background:#eaf8f2;padding:11px;border-radius:8px}.app{display:flex;min-height:100vh}aside{width:245px;background:#12233b;color:#fff;padding:28px 18px;display:flex;flex-direction:column}.brand{font-size:22px;font-weight:700;padding:0 14px 42px}.brand span{color:#75a9ff}nav{display:grid;gap:8px}nav a{padding:13px 14px;border-radius:9px;color:#aab8ce}.selected,nav a:hover{background:#1e385d;color:#fff!important}.logout{margin-top:auto;background:transparent;color:#aab8ce;text-align:left}.content{max-width:1200px;flex:1;padding:42px 52px}.app-header{display:flex;align-items:flex-start;gap:20px;margin-bottom:28px}.app-header .workspace-tabs{flex:1;margin:0;min-width:0}.app-header .user-menu{flex:0 0 auto}h1,h2{margin:5px 0}.eyebrow{font-size:11px;letter-spacing:1.6px;color:#7890b1;font-weight:700}.avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:#dbe8ff;color:#2167d5;font-weight:700}.stats{display:grid;grid-template-columns:repeat(6,1fr);gap:15px;margin-bottom:22px}.stat,.panel{background:#fff;border:1px solid #edf0f5;border-radius:15px;padding:20px;box-shadow:0 4px 16px #203b6410}.stat span{font-size:13px;color:#8792a5}.stat strong{display:block;font-size:28px;margin-top:10px}.panel{margin-bottom:22px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.funnel-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;align-items:center}@media (max-width:900px){.funnel-layout{grid-template-columns:1fr}}.funnel-side{display:flex;flex-direction:column;gap:10px}.funnel-side .stage{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f6f8fc;border-radius:8px}.funnel-side .stage .name{font-size:13px;color:#5f6e84}.funnel-side .stage .num b{font-size:14px;color:#18212f;margin-right:6px}.funnel-side .stage .num em{font-style:normal;font-size:12px;color:#8792a5}.hero{display:flex;justify-content:space-between;align-items:center}.phone{font-size:25px;font-weight:700;color:#2167d5;text-align:right}.phone span{display:block;color:#8792a5;font-size:12px;font-weight:400;margin-top:5px}.form{max-width:700px}.form{display:grid;gap:17px}.table-wrap{overflow:auto}th,td{text-align:left;padding:13px 10px;border-bottom:1px solid #edf0f5}th{color:#8792a5;font-weight:500}@media (max-width:900px){.stats{grid-template-columns:repeat(3,1fr)}.content{padding:28px}.app aside{width:190px}}@media (max-width:620px){aside{display:none}.content{padding:20px}.app-header{align-items:center;gap:8px}.app-header .user-summary{display:none}.app-header .user-trigger{padding:4px}.stats{grid-template-columns:repeat(2,1fr)}.hero{display:block}.phone{text-align:left;margin-top:20px}.user-dropdown{right:0;width:205px}}.nav-group{display:grid;gap:2px}.subnav{display:grid;gap:2px;margin:-4px 0 4px}.subnav a{padding:10px 14px 10px 36px;font-size:13.5px;color:#8fa1ba;border-radius:9px}.user-menu{position:relative}.user-trigger{display:flex;align-items:center;gap:10px;border:1px solid transparent;background:transparent;padding:4px 6px 4px 4px;border-radius:12px;color:#18212f}.user-trigger:hover,.user-trigger[aria-expanded=true]{background:#fff;border-color:#e3e9f2;box-shadow:0 4px 14px #203b6410}.user-summary{display:grid;text-align:left;line-height:1.25}.user-summary strong{font-size:14px}.user-summary small{color:#8792a5;font-size:12px;margin-top:3px}.user-chevron{color:#8792a5;font-size:18px;margin-left:2px}.user-dropdown{position:absolute;right:0;top:calc(100% + 8px);z-index:50;width:220px;padding:8px;background:#fff;border:1px solid #e3e9f2;border-radius:12px;box-shadow:0 12px 32px #1f4b7b24}.user-detail{display:grid;gap:4px;padding:10px 12px 12px;border-bottom:1px solid #edf0f5}.user-detail strong{font-size:14px}.user-detail span{color:#8792a5;font-size:12px}.menu-logout{width:100%;margin-top:6px;border:none;background:transparent;text-align:left;color:#d94343;padding:10px 12px}.menu-logout:hover{background:#fdecec;border:none;color:#d94343}.workspace-tabs{display:flex;gap:4px;overflow-x:auto;margin:-12px 0 24px;padding:4px 2px 0;border-bottom:1px solid #dfe5ee}.workspace-tab{display:inline-flex;align-items:center;gap:10px;flex:0 0 auto;border:1px solid transparent;border-bottom:3px solid transparent;border-radius:9px 9px 0 0;padding:11px 14px;background:transparent;color:#68778d;font-weight:600}.workspace-tab:hover{background:#f0f4fb;color:#2167d5}.workspace-tab.active{background:#fff;border-color:#dfe5ee;border-bottom-color:#2167d5;color:#2167d5}.tab-close{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;font-size:17px;line-height:1;color:#8792a5}.tab-close:hover{background:#dbe8ff;color:#2167d5}.tab-view[hidden]{display:none}.filter-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.filter-bar input:not([type]),.filter-bar input[type=text],.filter-bar select{width:180px;height:40px;padding:0 12px}.filter-bar .spacer{flex:1}.filter-bar button{height:40px}.filter-bar .seg{margin-bottom:0;height:40px;padding:3px 4px}.filter-bar .seg button{height:32px;padding:0 16px}.table-wrap{overflow:auto;border:1px solid #e8edf4;border-radius:10px;background:#fff}table{width:100%;border-collapse:collapse;font-size:14px}th{background:#f7f9fc;font-weight:600;color:#5f6e84;white-space:nowrap}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid #eef1f6}tbody tr:hover{background:#f8fafd}tbody tr:last-child td{border-bottom:none}td.empty{text-align:center;color:#8792a5;padding:28px!important}.table-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.pager{display:flex;gap:8px;align-items:center}.pager button{padding:8px 13px}.pager select{padding:8px 10px;width:auto}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.badge.green{background:#e5f6ec;color:#18805b}.badge.gray{background:#eef1f6;color:#5f6e84}.badge.red{background:#fdecec;color:#d94343}.badge.amber{background:#fdf3e0;color:#b26b00}.badge.blue{background:#e7f0ff;color:#2167d5}.perm-list{display:grid;border:1px solid #e8edf4;border-radius:10px;overflow:hidden;background:#fff}.perm-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid #eef1f6;cursor:pointer}.perm-row:last-child{border-bottom:none}.perm-row:hover{background:#f8fafd}.perm-row .perm-name{font-weight:600;font-size:14px}.perm-row .perm-name small{display:block;color:#8792a5;font-weight:400;margin-top:3px}.perm-row input[type=checkbox]{width:18px;height:18px;accent-color:#2167d5}.create-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;align-items:center;padding:14px;border:1px dashed #d5dce8;border-radius:10px;background:#fafbfd;margin-bottom:14px}.create-row .full{grid-column:1/-1}.activation-code{display:inline-block;background:#eef4ff;color:#2167d5;font-size:20px;font-weight:700;letter-spacing:3px;padding:10px 16px;border-radius:8px}button{font:inherit;border:1px solid #dfe5ee;background:#fff;color:#18212f;border-radius:9px;padding:10px 16px;cursor:pointer;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}button:hover{border-color:#c6d2e4;background:#f7f9fc}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:#2167d5;border-color:#2167d5;color:#fff;font-weight:600}button.primary:hover{background:#1a56b8;border-color:#1a56b8}.logout{background:transparent;border-color:transparent}.logout:hover{background:#1e385d;border-color:transparent;color:#fff}.seg{display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;background:#e9eef6;padding:4px;border-radius:11px;margin-bottom:18px}.seg button{padding:9px 18px;border:none;border-radius:8px;background:transparent;color:#5f6e84;font-weight:600}.modal-form .seg{width:100%}.seg button:hover{background:transparent;color:#2167d5;border:none}.seg .active{background:#fff;color:#2167d5;box-shadow:0 2px 8px #1f4b7b21}.seg .active:hover{color:#2167d5}.actions-wrap{position:relative}.actions-menu{position:fixed;z-index:60;width:150px;background:#fff;border:1px solid #e3e9f2;border-radius:10px;box-shadow:0 12px 32px #1f4b7b24;padding:6px;display:grid;gap:2px}.actions-menu button{border:none;background:transparent;text-align:left;padding:9px 12px;border-radius:7px}.actions-menu button:hover{background:#f0f4fb;color:#2167d5}.actions-menu button.danger{color:#d94343;background:transparent;border:none;font-weight:inherit}.actions-menu button.danger:hover{background:#fdecec;color:#d94343;border:none}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f1e3380;display:grid;place-items:center;z-index:80;padding:20px}.modal{width:460px;max-width:100%;max-height:90vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 24px 64px #1f4b7b33}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 0}.modal-head h3{margin:0;font-size:17px}.modal-close{border:none;background:transparent;font-size:22px;line-height:1;padding:2px 8px;color:#8792a5;border-radius:7px}.modal-close:hover{background:#f0f3f8;color:#18212f;border:none}.modal-body{padding:16px 24px 22px}.modal-form{display:grid;gap:14px}.modal-form .modal-hint{margin:0;color:#8792a5;font-size:13.5px;line-height:1.6}.modal-form label{display:grid;gap:7px;font-weight:600;font-size:14px}.pwd-row{display:flex;gap:8px}.pwd-row input{flex:1;min-width:0}.pwd-row button{flex:0 0 auto}.modal-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}button.danger{background:#d94343;border-color:#d94343;color:#fff;font-weight:600}button.danger:hover{background:#bb3434;border-color:#bb3434}
