* { box-sizing:border-box; }
body { margin:0; font-family:-apple-system,"Microsoft YaHei",sans-serif; background:#ecf0f5; color:#333; }
.top { background:#3c8dbc; color:#fff; height:48px; display:flex; align-items:center; padding:0 16px; justify-content:space-between; position:sticky; top:0; z-index:5; }
.top a { color:#fff; text-decoration:none; }
.wrap { padding:16px; }
.bar { display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin-bottom:12px; }
input,select,button { padding:8px; border:1px solid #ddd; border-radius:6px; font-size:14px; }
button { background:#3c8dbc; color:#fff; border:none; cursor:pointer; }
button.sec { background:#95a5a6; }
button.danger { background:#d9534f; }
table { width:100%; border-collapse:collapse; background:#fff; font-size:13px; }
th,td { border:1px solid #eee; padding:8px; text-align:left; }
th { background:#f4f6f9; }
.hidden-price { color:#bbb; }
.pager { margin-top:12px; display:flex; gap:8px; align-items:center; }
.modal { position:fixed; inset:0; background:rgba(0,0,0,.45); display:none; align-items:flex-start; justify-content:center; overflow:auto; z-index:50; }
.modal .box { background:#fff; margin:40px; padding:22px; border-radius:8px; width:600px; max-width:92vw; }
.modal .box label { display:block; font-size:13px; margin:10px 0 4px; }
.modal .box .half { display:inline-block; width:48%; vertical-align:top; margin-right:2%; }
h3 { margin-top:0; }
