*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;background:#f0f2f5;color:#333}
.admin-body{display:flex;min-height:100vh}
.admin-sidebar{width:220px;background:#1a1a2e;color:#fff;flex-shrink:0}
.sidebar-brand{padding:20px;font-size:1.1rem;font-weight:700;border-bottom:1px solid rgba(255,255,255,.1)}
.admin-sidebar nav a{display:block;padding:12px 20px;color:rgba(255,255,255,.8);text-decoration:none;font-size:.9rem;border-left:3px solid transparent}
.admin-sidebar nav a:hover{background:rgba(255,255,255,.05);color:#fff;border-left-color:#e94560}
.admin-main{flex:1;display:flex;flex-direction:column}
.admin-header{background:#fff;padding:16px 24px;border-bottom:1px solid #e8e8e8}
.admin-header h1{font-size:1.2rem}
.admin-content{padding:24px;flex:1}
.admin-body.admin-guest{display:block;min-height:100vh;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%)}
.admin-login-wrap{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%;padding:24px}
.login-container{width:100%;max-width:440px;display:flex;flex-direction:column;align-items:center}
.login-brand{text-align:center;color:#fff;margin-bottom:32px;width:100%}
.login-brand h1{font-size:1.8rem;margin-bottom:4px}
.login-brand p{opacity:.7;font-size:.9rem}
.login-form{background:#fff;padding:36px 32px;border-radius:16px;width:100%;box-shadow:0 16px 48px rgba(0,0,0,.25)}
.login-form h2{text-align:center;margin-bottom:28px;font-size:1.2rem;color:#333}
.form-group{margin-bottom:18px}
.form-group label{display:block;margin-bottom:6px;font-size:.85rem;color:#555;font-weight:500}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border:1px solid #e0e0e0;border-radius:8px;font-size:.95rem;transition:border-color .2s}
.form-group input:focus{border-color:#e94560;outline:none}
.captcha-group{display:flex;gap:10px;align-items:flex-end}
.captcha-group input{flex:1}
.captcha-img{height:40px;border-radius:6px;cursor:pointer;border:1px solid #e0e0e0}
.btn-block{width:100%;padding:12px;font-size:1rem;margin-top:8px}
@media(max-width:768px){
    .admin-login-wrap{padding:16px}
    .login-form{padding:28px 20px}
    .login-brand h1{font-size:1.4rem}
}
.btn{padding:8px 20px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;display:inline-block}
.btn-primary{background:#e94560;color:#fff}
.btn-primary:hover{opacity:.9}
.btn-sm{padding:4px 10px;font-size:.8rem}
.btn-danger{background:#e74c3c;color:#fff}
.alert{padding:10px 16px;border-radius:6px;margin-bottom:16px;font-size:.9rem}
.alert-success{background:#d4edda;color:#155724}
.alert-error{background:#f8d7da;color:#721c24}
.alert-info{background:#d1ecf1;color:#0c5460}
.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;margin:12px 0}
.data-table th,.data-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #f0f0f0;font-size:.85rem}
.data-table th{background:#1a1a2e;color:#fff}
.dash-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}
.dash-card{background:#fff;padding:24px;border-radius:10px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.dash-card .num{font-size:2rem;font-weight:700;color:#e94560}
.dash-card .label{color:#999;margin-top:4px}
.badge{padding:2px 8px;border-radius:10px;font-size:.75rem}
.badge-success{background:#d4edda;color:#155724}
.badge-skip{background:#fff3cd;color:#856404}
.badge-fail{background:#f8d7da;color:#721c24}
.copy-input{width:100%;padding:4px 8px;font-size:.75rem;border:1px solid #ddd;border-radius:4px;cursor:pointer}
.admin-form{max-width:600px}
.admin-form h3{margin:20px 0 12px;padding-bottom:8px;border-bottom:1px solid #eee}
.inline-form select{font-size:.8rem;padding:4px}
@media(max-width:768px){
    .admin-body{flex-direction:column}
    .admin-sidebar{width:100%}
}
