/* 元朔动力进销存 - 公共样式 */
* { margin:0; padding:0; box-sizing:border-box; font-family:"Microsoft YaHei",sans-serif; }
body { background:#f5f7fa; }
.sidebar { width:240px; height:100vh; background:#1677ff; color:white; position:fixed; left:0; top:0; }
.logo { padding:20px; font-size:18px; font-weight:bold; border-bottom:1px solid rgba(255,255,255,0.2); }
.menu { padding:10px 0; }
.menu-item { display:block; padding:12px 20px; color:rgba(255,255,255,0.8); text-decoration:none; transition:all 0.2s; }
.menu-item:hover, .menu-item.active { background:rgba(255,255,255,0.15); color:white; }
.main { margin-left:240px; padding:20px; }
.page-title { font-size:20px; margin-bottom:20px; color:#333; }
.card { background:white; border-radius:8px; padding:20px; box-shadow:0 2px 8px rgba(0,0,0,0.08); margin-bottom:20px; }
.stat-card { flex:1; background:white; border-radius:8px; padding:20px; box-shadow:0 2px 8px rgba(0,0,0,0.08); }
.stat-card .num { font-size:32px; font-weight:bold; color:#1677ff; margin:10px 0; }
table { width:100%; border-collapse:collapse; }
th, td { padding:12px; text-align:left; border-bottom:1px solid #f0f0f0; }
th { background:#fafafa; color:#666; font-weight:normal; }
.form-group { margin:15px 0; }
label { display:block; margin-bottom:5px; color:#666; }
input, select { width:100%; padding:10px; border:1px solid #d9d9d9; border-radius:4px; font-size:14px; }
.btn { display:inline-block; padding:10px 20px; background:#1677ff; color:white; border:none; border-radius:4px; cursor:pointer; font-size:14px; text-decoration:none; }
.btn:hover { background:#4096ff; color:white; }
.btn-sm { padding:5px 10px; font-size:12px; }
.btn-danger { background:#ff4d4f; }
.btn-danger:hover { background:#ff7875; }
.tag { padding:3px 8px; border-radius:4px; font-size:12px; }
.tag-red { background:#fff2f0; color:#ff4d4f; }
.tag-green { background:#f6ffed; color:#52c41a; }
.alert { padding:15px; border-radius:8px; margin-bottom:20px; }
.alert-ok { background:#f6ffed; border:1px solid #b7eb8f; color:#389e0d; }
.alert-err { background:#fff2f0; border:1px solid #ffccc7; color:#cf1322; }

/* 登录页 */
.login-body { background:linear-gradient(135deg,#1677ff 0%,#0958d9 100%); height:100vh; display:flex; align-items:center; justify-content:center; }
.login-box { background:white; width:400px; padding:40px; border-radius:8px; box-shadow:0 10px 40px rgba(0,0,0,0.2); }
.login-box h2 { text-align:center; color:#333; margin-bottom:30px; }
.captcha-row { display:flex; gap:10px; align-items:center; }
.captcha-img { border-radius:4px; cursor:pointer; height:44px; }
.login-btn { width:100%; padding:12px; background:#1677ff; color:white; border:none; border-radius:4px; cursor:pointer; font-size:16px; margin-top:10px; }
.error-text { color:#ff4d4f; text-align:center; margin:10px 0; }

/* 激活页 */
.active-body { background:#f5f7fa; max-width:500px; margin:50px auto; padding:20px; }
.active-box { background:white; border-radius:8px; padding:30px; box-shadow:0 2px 10px rgba(0,0,0,0.1); }
.active-box h2 { text-align:center; color:#1677ff; margin-bottom:20px; }
.readonly-input { background:#f5f5f5; color:#666; cursor:not-allowed; border:1px solid #ddd; }
.msg { padding:15px; border-radius:4px; margin:15px 0; text-align:center; }
.msg-ok { background:#f6ffed; color:#389e0d; border:1px solid #b7eb8f; }
.msg-err { background:#fff2f0; color:#cf1322; border:1px solid #ffccc7; }

/* 打印页 */
.print-body { font-family:"Microsoft YaHei",sans-serif; max-width:210mm; margin:20px auto; padding:20px; }
.print-body h1 { text-align:center; font-size:22px; margin-bottom:20px; }
.info-line { margin:10px 0; font-size:14px; }
.print-body table { width:100%; border-collapse:collapse; margin:15px 0; font-size:13px; }
.print-body th, .print-body td { border:1px solid #333; padding:8px; text-align:left; }
.print-body th { background:#f5f5f5; }
.total-row { font-weight:bold; background:#fafafa; }
.sign-area { margin-top:40px; display:flex; justify-content:space-between; font-size:14px; }
.btn-print { position:fixed; top:20px; right:20px; padding:10px 20px; background:#1677ff; color:white; border:none; border-radius:4px; cursor:pointer; font-size:14px; }
@media print { .btn-print { display:none; } }

/* 内联小表格（明细弹窗/统计） */
.mini-table { width:100%; font-size:12px; border-collapse:collapse; }
.mini-table th, .mini-table td { padding:6px; border:1px solid #eee; }
