*{box-sizing:border-box}body{margin:0;min-width:1180px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;color:#172033;background:#f5f7fb}button,input,select,textarea{font:inherit}.admin-shell{min-height:100vh;display:flex}.login-page{min-height:100vh;display:grid;place-items:center;padding:32px;background:#eef2f8}.login-card{width:380px;padding:30px;border-radius:12px;background:#fff;box-shadow:0 18px 50px #12182b1f}.login-brand{margin-bottom:28px;display:flex;align-items:center;gap:12px}.login-brand strong,.login-brand span{display:block}.login-brand span{margin-top:4px;font-size:12px;color:#7b8496}.login-error{margin:-4px 0 14px;color:#b42318;font-size:14px}.sidebar{width:248px;padding:24px 18px;background:#12182b;color:#fff}.brand{display:flex;align-items:center;gap:12px;margin-bottom:34px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:#6f54e8;font-weight:800}.brand strong,.brand span{display:block}.brand span{margin-top:4px;font-size:12px;color:#98a2b8}.nav-btn{width:100%;height:44px;margin-bottom:8px;padding:0 14px;border:0;border-radius:8px;display:flex;align-items:center;gap:10px;color:#b9c2d6;background:transparent;cursor:pointer}.nav-btn.active,.nav-btn:hover{color:#fff;background:#27314d}.main{flex:1;padding:28px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}h1,h2,p{margin:0}h1{font-size:28px}.topbar p{margin-top:8px;color:#7b8496}.refresh,.primary,.secondary,.actions button{border:0;border-radius:8px;background:#6f54e8;color:#fff;cursor:pointer}.refresh{height:40px;padding:0 18px}.topbar-actions{display:flex;align-items:center;gap:10px}.admin-user{color:#596276}.logout{height:40px;padding:0 16px;border:0;border-radius:8px;color:#5b43cf;background:#eef0ff;cursor:pointer}.panel{padding:22px;border-radius:14px;background:#fff;box-shadow:0 10px 30px #202d520f}.alert{margin-bottom:16px;padding:12px 16px;border-radius:10px;color:#a34b00;background:#fff4e5}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stat-card{padding:22px;border-radius:12px;background:#f7f8ff}.stat-card span{color:#7b8496}.stat-card strong{display:block;margin-top:14px;font-size:30px}table{width:100%;border-collapse:collapse}th,td{padding:14px 12px;border-bottom:1px solid #edf0f6;text-align:left;white-space:nowrap}th{color:#697386;font-weight:600;background:#f8f9fc}.actions{display:flex;gap:8px}.actions button{padding:7px 10px;background:#eef0ff;color:#5b43cf}.filter-tabs{margin-bottom:16px;display:flex;gap:10px;flex-wrap:wrap}.filter-tabs button{height:34px;padding:0 14px;border:0;border-radius:999px;color:#596276;background:#f2f4f8;cursor:pointer}.filter-tabs button.active{color:#fff;background:#6f54e8}.tag{padding:4px 8px;border-radius:999px;background:#edf0f6}.tag.approved{color:#137a4b;background:#e7f8ef}.tag.pending{color:#a66200;background:#fff4d8}.tag.rejected{color:#a12626;background:#ffe9e9}.tag.pending_pay,.tag.paid,.tag.deploying{color:#5b43cf;background:#eef0ff}.tag.deployed{color:#137a4b;background:#e7f8ef}.tag.after_sale,.tag.abnormal{color:#a12626;background:#ffe9e9}.tag.published{color:#137a4b;background:#e7f8ef}.tag.offline{color:#697386;background:#edf0f6}.tag.enabled{color:#137a4b;background:#e7f8ef}.tag.disabled{color:#697386;background:#edf0f6}.two-col{display:grid;grid-template-columns:360px 1fr;gap:24px;align-items:start}.editor{padding:18px;border-radius:12px;background:#f8f9fc}.editor h2{margin-bottom:16px;font-size:18px}label{display:block;margin-bottom:14px;color:#596276}input,textarea{width:100%;margin-top:8px;padding:10px 12px;border:1px solid #dfe3ec;border-radius:8px;background:#fff}textarea{min-height:110px;resize:vertical}.primary{width:100%;height:42px}.secondary{width:100%;height:38px;margin-top:10px;background:#eef0ff;color:#5b43cf}.settings-layout{display:grid;grid-template-columns:340px 1fr;gap:24px;align-items:start}.permission-layout{display:grid;grid-template-columns:320px 320px 1fr;gap:24px;align-items:start}.records{min-width:0;grid-row:span 2}.records h2{margin-bottom:16px;font-size:18px}.content-cell{max-width:420px;overflow:hidden;text-overflow:ellipsis}.permission-checks{margin-bottom:14px;display:grid;gap:8px}.sub-record-title{margin-top:24px}.checkbox{display:flex;gap:8px;align-items:center}.checkbox input{width:auto;margin:0}
