:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#202b43;background:#f7f8fc;font-synthesis:none;font-size:14px;line-height:1.6;--accent: #435bd6;--text: #202b43;--muted: #68758b;--border: #e3e8f1}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #92a4ff;outline-offset:3px}h1,h2,p{margin:0}h1{font-size:26px;line-height:1.4;font-weight:650;letter-spacing:-.5px}h2{font-size:17px;font-weight:600}small{font-size:12px}svg{flex-shrink:0}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 15px;border:1px solid #d9e0ed;border-radius:8px;background:#fff;color:#34445f;white-space:nowrap;font-size:13px;font-weight:550;transition:background .15s,border-color .15s}.button:hover:not(:disabled){background:#f2f4fc;border-color:#bcc8df}.button.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 3px 7px #435bd613}.button.primary:hover:not(:disabled){background:#3247b5;border-color:#3247b5}.button.danger{color:#fff;background:#b83c4e;border-color:#b83c4e}.button.danger:hover:not(:disabled){background:#9f2c3c}.button.compact{min-height:34px;padding:5px 10px}.button.full-width{width:100%}.icon-button{border:0;background:transparent;color:var(--muted);border-radius:6px;padding:6px;display:inline-flex;align-items:center}.icon-button:hover:not(:disabled){background:#edf0f7}.text-button{display:inline-flex;align-items:center;gap:4px;padding:4px 2px;border:0;background:transparent;color:var(--accent);font-size:12px;white-space:nowrap}.text-button:hover{text-decoration:underline}.text-button.danger{color:#b83c4e}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;letter-spacing:-.4px;line-height:1.2;white-space:nowrap}.brand small{display:block;color:var(--muted);font-weight:400;font-size:11px;letter-spacing:1px;margin-top:6px}.brand-icon{display:flex;align-items:center;justify-content:center;width:39px;height:39px;border-radius:11px;background:var(--accent);color:#fff}.app-shell{display:flex;min-height:100vh}.sidebar{width:216px;flex-shrink:0;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;padding:28px 18px 20px;background:#fff;border-right:1px solid var(--border)}.sidebar>a{margin-left:3px}.sidebar nav{display:grid;gap:6px;margin-top:40px}.sidebar nav a{display:flex;align-items:center;gap:11px;border-radius:8px;padding:11px 14px;color:#637089;font-size:14px}.sidebar nav a:hover{background:#f5f6fb}.sidebar nav a.router-link-active{color:var(--accent);background:#edf0fd;font-weight:600}.sidebar-note{margin-top:auto;padding:18px 10px 0;color:#8c96a9;font-size:11px}.workspace{flex:1;min-width:0}.topbar{min-height:79px;padding:16px 32px;background:#ffffffd9;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar-title{font-size:13px;color:var(--muted)}.account-bar,.account-identity{display:flex;align-items:center;gap:12px;min-width:0}.account-bar{gap:22px}.avatar{width:33px;height:33px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#edf0fd;color:var(--accent);font-size:13px;font-weight:600}.identity-name{font-size:12px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity-name small{display:block;color:var(--muted);font-size:10px}.main-content{max-width:1400px;margin:auto;padding:32px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.page-heading p{margin-top:5px;font-size:13px}.card{border:1px solid var(--border);border-radius:12px;background:#fff;box-shadow:0 3px 10px #25325202}.notice{border:1px solid #e0e6f8;border-radius:8px;background:#f3f5ff;color:#52618e;padding:11px 14px;font-size:13px;margin-bottom:18px;overflow-wrap:anywhere}.notice.error{background:#fff3f3;border-color:#f3d3d7;color:#a33242}.notice.success{background:#f0faf5;border-color:#cdebdc;color:#28734f}.notice.warning{background:#fffaef;border-color:#f1e2bd;color:#876321}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:24px}.stat-card{position:relative;padding:24px}.stat-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:11px;background:#eef1ff;color:var(--accent);flex-shrink:0}.stat-icon.green{background:#edf9f2;color:#38875b}.stat-icon.gray{background:#f1f3f7;color:#7b879a}.stat-card .stat-icon{position:absolute;top:24px;right:22px}.stat-card p{color:#657289;font-size:13px;padding-right:50px}.stat-card strong{display:block;font-size:34px;font-weight:600;line-height:1.3;margin-top:9px}.stat-card small{display:block;color:#8a96a9;margin-top:12px;font-size:11px}.overview-card{display:flex;align-items:center;gap:18px;padding:26px}.overview-card>div{flex:1}.overview-card p{margin-top:5px;font-size:13px}.empty-state{text-align:center;padding:45px 18px;color:var(--muted);font-size:13px}label{display:block;font-size:13px;font-weight:550;margin-bottom:20px}input{display:block;width:100%;border:1px solid #d7deea;background:#fff;color:var(--text);border-radius:7px;padding:9px 11px;outline:none;transition:border-color .15s,box-shadow .15s}input:disabled{color:#7b879a;background:#f7f8fb}input:focus{border-color:#8494e7;box-shadow:0 0 0 3px #435bd611}input::placeholder{color:#919caf}label input{margin-top:7px;font-weight:400}label small{display:block;color:var(--muted);font-weight:400;margin-top:6px;font-size:11px}.label-optional{font-weight:400}.settings-card{max-width:760px;padding:26px}.section-heading{display:flex;align-items:center;gap:12px;padding-bottom:22px;margin-bottom:24px;border-bottom:1px solid var(--border)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:24px}.badge{display:inline-flex;border-radius:5px;padding:3px 8px;font-size:11px;color:#5266c4;background:#eef1ff;white-space:nowrap}.badge.neutral{color:#6b788c;background:#f1f3f7}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid var(--border)}.search-field{display:flex;position:relative;align-items:center;margin:0;width:320px;max-width:100%}.search-field svg{position:absolute;left:11px;color:#8692a6}.search-field input{padding-left:37px;margin:0;font-size:12px;font-weight:400}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;white-space:nowrap}th{padding:13px 20px;font-weight:500;font-size:11px;color:#8490a3;background:#fbfcfe}td{padding:18px 20px;border-top:1px solid #edf0f6}.user-name{display:block;font-weight:550;max-width:220px;overflow:hidden;text-overflow:ellipsis}.user-login{display:block;font-size:11px;margin-top:2px}.row-actions{display:flex;align-items:center;gap:14px}.actions-heading{width:245px}.status{display:inline-flex;align-items:center;gap:6px;color:#7d889a}.status i{width:6px;height:6px;border-radius:50%;background:#a6afbd}.status.active{color:#35835a}.status.active i{background:#49a475}.table-footer{padding:14px 20px;border-top:1px solid var(--border);font-size:11px;color:#8490a3}.modal{border:1px solid var(--border);padding:0;width:460px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);border-radius:13px;color:var(--text);box-shadow:0 18px 80px #1d294733}.modal::backdrop{background:#17213d66}.modal>section{padding:24px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.modal-context{font-size:13px;color:var(--muted);margin-bottom:20px;overflow-wrap:anywhere}.modal-context strong{color:var(--text);font-weight:550}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;background:radial-gradient(ellipse at 20% 10%,#edf0ff,transparent 50%),#f7f8fc}.login-card{width:410px;max-width:100%;padding:36px;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:0 12px 50px #25325206}.login-heading{margin:32px 0 26px}.login-heading h1{font-size:24px}.login-heading p{font-size:13px;margin-top:8px}.login-card label{margin-bottom:22px}.login-card input{min-height:43px}.login-card .button{min-height:43px;margin-top:5px}.login-note{margin-top:24px;text-align:center;font-size:11px;color:#8b96a7}.login-footer{margin-top:26px;font-size:11px;color:#9aa4b6}@media(min-width:1600px){.main-content{padding-top:42px}}@media(max-width:1100px){.sidebar{width:196px;padding-inline:14px}.main-content,.topbar{padding-inline:24px}.stats-grid{gap:14px}.stat-card{padding:20px}.stat-card .stat-icon{width:36px;height:36px;right:16px;top:20px}td,th{padding-inline:16px}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:static;width:auto;height:auto;padding:17px 18px 10px;border-right:0;border-bottom:1px solid var(--border)}.sidebar>a{width:fit-content}.sidebar .brand{font-size:18px}.sidebar .brand small{display:none}.sidebar .brand-icon{width:32px;height:32px;border-radius:9px}.sidebar nav{display:flex;gap:7px;margin-top:17px}.sidebar nav a{padding:9px 13px;font-size:12px;gap:7px}.sidebar nav svg{width:16px;height:16px}.sidebar-note{display:none}.topbar{min-height:65px;padding:12px 20px}.account-bar{gap:14px}.identity-name{max-width:120px}.main-content{padding:24px 20px}h1{font-size:23px}.page-heading{margin-bottom:20px;align-items:flex-start}.page-heading p{font-size:12px}.stats-grid{gap:10px}.stat-card{padding:17px 13px}.stat-card .stat-icon{position:static;margin-bottom:13px;width:35px;height:35px}.stat-card p{padding:0;font-size:11px}.stat-card strong{font-size:28px;margin-top:5px}.stat-card small{font-size:10px}.overview-card{padding:20px;flex-wrap:wrap;gap:12px}.overview-card>.stat-icon{display:none}.overview-card>div{flex-basis:100%}.overview-card .button{margin-top:4px}.settings-card{padding:20px}.table-toolbar{padding:15px;gap:10px}.search-field{width:260px}.row-actions{gap:11px}}@media(max-width:440px){.sidebar nav{gap:3px}.sidebar nav a{padding:9px 10px}.main-content{padding:22px 15px}.topbar{padding-inline:16px}.topbar-title{font-size:12px}.account-identity{gap:8px}.avatar{display:none}.identity-name{max-width:105px}.page-heading{gap:10px}.page-heading .button{padding:8px 11px;font-size:12px}.form-grid{grid-template-columns:minmax(0,1fr);gap:0}.login-card{padding:29px 25px}.modal>section{padding:20px}}
