:root{font-family:HarmonyOS Sans SC,PingFang SC,Microsoft YaHei,Arial,sans-serif;color:#172033;background:#f5f7fa}*{box-sizing:border-box}body{margin:0;min-width:1024px}.shell{min-height:100vh}.sider{background:#0f2b5b!important}.logo{height:70px;display:flex;align-items:center;gap:10px;color:#fff;padding:0 20px;border-bottom:1px solid #29466f}.logo>span,.login-brand>span{width:36px;height:36px;border-radius:8px;background:#1d4ed8;display:grid;place-items:center;font-weight:800;font-size:20px}.logo div,.login-brand div{display:flex;flex-direction:column}.logo b{font-size:17px}.logo small{font-size:9px;color:#aabbd3;letter-spacing:1px}.ant-menu-dark,.ant-layout-sider-trigger{background:#0f2b5b!important}.ant-menu-dark .ant-menu-item{margin-block:5px}.ant-menu-dark .ant-menu-item-selected{background:#1d4ed8!important}.topbar{background:#fff!important;border-bottom:1px solid #e5e7eb;padding:0 24px!important;display:flex;align-items:center}.top-title{font-weight:700;margin-left:15px;flex:1}.user{cursor:pointer}.content{padding:24px;overflow:auto}.content-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.content-head h1{font-size:25px;margin:0 0 6px;color:#0f2b5b}.content-head p,.content-head>span{margin:0;color:#667085}.metric{border-radius:12px;box-shadow:0 4px 16px #0f2b5b0a}.metric .ant-card-body{position:relative;display:flex;flex-direction:column}.metric i{position:absolute;right:18px;top:18px;background:#eff6ff;color:#1d4ed8;width:36px;height:36px;display:grid;place-items:center;border-radius:8px}.metric span{color:#667085}.metric b{font-size:30px;color:#0f2b5b;margin:10px 0}.metric small{color:#94a3b8}.charts{margin-top:16px}.charts .ant-card,.todo,.search-card,.content>.ant-card{border-radius:12px;box-shadow:0 4px 16px #0f2b5b0a}.todo{margin-top:16px}.todo .ant-col{display:flex;flex-direction:column;text-align:center;border-right:1px solid #e5e7eb}.todo .ant-col:last-child{border:0}.todo b{font-size:26px;color:#1d4ed8}.todo span{color:#667085}.search-card{margin-bottom:16px}.cell-sub{display:block;color:#667085;margin-top:3px}.orange{color:#ff7a00}.person-head{display:flex;align-items:center;gap:15px;background:#eff6ff;padding:20px;border-radius:12px;margin-bottom:25px}.person-head .avatar{width:52px;height:52px;display:grid;place-items:center;background:#1d4ed8;color:#fff;border-radius:50%;font-size:22px;font-weight:700}.person-head h2{margin:0 0 6px}.person-head a{margin-left:auto;background:#fff;padding:9px 14px;border:1px solid #bfdbfe;border-radius:8px;color:#1d4ed8}.drawer-title{color:#0f2b5b;border-top:1px solid #e5e7eb;padding-top:20px}.record-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.record-grid div{border:1px solid #e5e7eb;border-radius:8px;padding:14px;display:flex;justify-content:space-between}.record-grid span{color:#1d4ed8;font-size:12px}.loading{height:400px;display:grid;place-items:center}.login{min-height:100vh;display:grid;grid-template-columns:48% 52%;background:#fff}.login>section{background:#0f2b5b;color:#fff;padding:55px 9vw;display:flex;flex-direction:column}.login-brand{display:flex;align-items:center;gap:12px}.login-brand b{font-size:21px}.login-brand small{color:#91a3bf;font-size:9px;letter-spacing:1.2px}.login-copy{margin:auto 0}.login-copy>svg{font-size:38px;color:#60a5fa}.login-copy h1{font-size:48px;line-height:1.25;margin:20px 0}.login-copy p{color:#b9c8df;font-size:17px;line-height:1.8}.login-points{display:flex;gap:25px;color:#b9c8df}.login-points span:before{content:"✓";color:#60a5fa;margin-right:7px}.login>main{display:grid;place-items:center;padding:60px}.login-box{width:100%;max-width:400px}.login-box>span{color:#1d4ed8;font-weight:700}.login-box h2{font-size:34px;margin:10px 0;color:#0f2b5b}.login-box>p{color:#667085;margin-bottom:35px}.login-box .ant-btn{height:48px}.security{display:block;text-align:center;color:#94a3b8;margin-top:25px}.admin-media-input{width:100%}.admin-media-preview{display:flex;align-items:flex-end;gap:12px;margin-top:12px}.admin-media-preview video{width:260px;height:146px;border-radius:8px;background:#0f172a}.admin-media-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;margin-top:12px}.admin-media-item{min-width:0;border:1px solid #e5e7eb;border-radius:8px;padding:7px;background:#f8fafc}.admin-media-item .ant-image{display:block;margin-bottom:7px}
