:root{--ink:#182230;--muted:#718096;--line:#e8edf3;--brand:#f2a900;--brand2:#ffcb54;--nav:#111a29;--bg:#f5f7fa;--green:#16a36a;--red:#e45656}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif}body{min-height:100vh}a{color:inherit;text-decoration:none}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr;background:#fff}.login-hero{background:radial-gradient(circle at 20% 18%,#38465a 0,#182334 38%,#0e1724 100%);color:#fff;padding:9vh 8vw;position:relative;overflow:hidden}.login-hero:after{content:"";position:absolute;width:450px;height:450px;border:1px solid #ffffff1c;border-radius:50%;right:-120px;bottom:-160px;box-shadow:0 0 0 90px #ffffff08,0 0 0 180px #ffffff05}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:700}.brand-mark{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#ffda72,#e99b00);display:grid;place-items:center;color:#17202e;font-weight:900}.hero-copy{margin-top:20vh;max-width:630px}.hero-copy h1{font-size:46px;line-height:1.2;margin:0 0 22px}.hero-copy p{font-size:18px;line-height:1.8;color:#cdd5df}.login-panel{display:grid;place-items:center;padding:50px}.login-card{width:min(410px,100%)}.login-card h2{font-size:30px;margin:0 0 8px}.login-card>p{color:var(--muted);margin:0 0 34px}.app-shell{display:grid;grid-template-columns:244px 1fr;min-height:100vh}.sidebar{background:var(--nav);color:#d7dee8;padding:24px 16px;position:fixed;inset:0 auto 0 0;width:244px;overflow:auto}.sidebar .brand{padding:0 8px 26px;color:#fff}.nav-group{font-size:11px;color:#738095;padding:14px 12px 7px;letter-spacing:1px}.nav-item{display:flex;gap:12px;padding:11px 13px;border-radius:9px;margin:3px 0;color:#b6c0ce}.nav-item.active,.nav-item:hover{background:#263246;color:#fff}.nav-item.active{box-shadow:inset 3px 0 var(--brand)}.main{grid-column:2;min-width:0}.topbar{height:70px;background:white;border-bottom:1px solid var(--line);justify-content:space-between;padding:0 30px;position:-webkit-sticky;position:sticky;top:0;z-index:5}.top-actions,.topbar{display:flex;align-items:center}.top-actions{gap:15px}.avatar{width:36px;height:36px;border-radius:50%;background:#fff0c7;color:#9a6300;display:grid;place-items:center;font-weight:700}.content{padding:28px 30px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.page-head h1{font-size:26px;margin:0 0 7px}.page-head p{margin:0;color:var(--muted)}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:16px;gap:16px}.kpi-card,.panel{background:white;border:1px solid var(--line);border-radius:14px;box-shadow:0 2px 10px #16203308}.kpi-card{padding:19px}.kpi-label{font-size:13px;color:var(--muted)}.kpi-value{font-size:26px;font-weight:750;margin:10px 0 4px}.up{color:var(--green);font-size:12px}.panel{padding:22px}.dashboard-grid{display:grid;grid-template-columns:1.55fr 1fr;grid-gap:16px;gap:16px;margin-top:16px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.panel-head h3{margin:0}.report{background:linear-gradient(135deg,#fff9eb,#fff);border-color:#f6d98d}.report-title{display:flex;gap:10px;align-items:center}.report-dot{width:10px;height:10px;border-radius:50%;background:var(--brand)}.bars{height:190px;display:flex;align-items:end;gap:16px;border-bottom:1px solid var(--line);padding:0 10px}.bar{flex:1 1;background:linear-gradient(#ffc94d,#f2a900);border-radius:6px 6px 0 0;min-height:10px;position:relative}.bar span{position:absolute;bottom:-24px;font-size:11px;color:var(--muted);left:50%;transform:translateX(-50%)}.risk{display:flex;padding:13px 0;border-bottom:1px solid var(--line);gap:12px}.risk:last-child{border:0}.risk-icon{width:33px;height:33px;border-radius:9px;background:#fff0ed;color:var(--red);display:grid;place-items:center}.table-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.ai-fab{position:fixed;right:26px;bottom:24px;background:var(--nav);color:white;border-radius:28px;padding:13px 20px;box-shadow:0 10px 30px #10182745;z-index:20}.agent-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}.agent-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.agent-top{display:flex;gap:13px;align-items:center}.agent-face{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#1b283d,#425675);color:#ffd264;display:grid;place-items:center;font-weight:800}.agent-status{font-size:12px;color:var(--green)}.agent-metrics{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:16px;padding-top:14px;color:var(--muted);font-size:12px}.goal-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px}.strategy{border-left:3px solid var(--brand);background:#fffaf0;margin:12px 0;padding:14px 18px;border-radius:0 10px 10px 0}@media(max-width:1050px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.agent-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.login-shell{grid-template-columns:1fr}.login-hero{display:none}.app-shell{display:block}.sidebar{display:none}.main{grid-column:auto}.content{padding:18px 14px}.topbar{padding:0 15px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.agent-grid,.dashboard-grid{grid-template-columns:1fr}}.topbar-left{display:flex;align-items:center;gap:12px;min-width:0}.company-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-button{display:none;width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);place-items:center;cursor:pointer}.mobile-nav-drawer .brand{color:#fff;padding:0 8px 24px}.mobile-nav-drawer .nav-item{color:#b6c0ce}.mobile-nav-drawer .nav-item.active,.mobile-nav-drawer .nav-item:hover{color:#fff}@media (max-width:760px){.mobile-menu-button{display:grid;flex:0 0 auto}.company-title{max-width:155px;font-size:12px}.user-copy{display:none}.top-actions{gap:8px}.page-head{gap:12px}.page-head h1{font-size:23px}.page-head>.ant-btn{flex:0 0 auto}.ai-fab{right:14px;bottom:14px;padding:11px 16px}}