:root { color-scheme: dark; --gold:#caa458; --gold2:#f0d083; --bg:#080d12; --panel:#111a22; --panel2:#17232d; --line:#2a3b47; --text:#edf3f6; --muted:#91a1ab; --good:#4dd49d; --bad:#ff7b73; }
* { box-sizing:border-box; }
html,body { margin:0; min-height:100%; font-family:"Segoe UI","Microsoft YaHei",sans-serif; color:var(--text); background:radial-gradient(circle at 70% -20%,#243644 0,#0d151c 38%,var(--bg) 72%); }
body:before { content:""; position:fixed; inset:0; pointer-events:none; opacity:.22; background:linear-gradient(120deg,transparent 35%,rgba(202,164,88,.13),transparent 67%); }
a { color:inherit; text-decoration:none; }
.topbar { height:72px; padding:0 max(28px,calc((100vw - 1180px)/2)); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(202,164,88,.4); background:rgba(7,12,16,.92); position:sticky; top:0; z-index:10; backdrop-filter:blur(12px); }
.brand { display:flex; flex-direction:column; font-family:Georgia,serif; letter-spacing:1.5px; color:var(--gold2); }
.brand span { font-size:22px; font-weight:700; }
.brand small { font:12px "Segoe UI","Microsoft YaHei",sans-serif; color:var(--muted); letter-spacing:4px; }
nav { display:flex; align-items:center; gap:22px; color:#c8d1d7; }
nav a:hover,.link-button:hover { color:var(--gold2); }
nav form { margin:0; }
.link-button { border:0; background:none; color:#c8d1d7; font:inherit; cursor:pointer; padding:0; }
.page-shell { width:min(1180px,calc(100% - 40px)); margin:38px auto 80px; position:relative; }
.hero { padding:32px 36px; border:1px solid rgba(202,164,88,.45); background:linear-gradient(120deg,rgba(24,36,45,.96),rgba(12,19,25,.96)); box-shadow:0 18px 60px rgba(0,0,0,.28); }
.eyebrow { color:var(--gold2); font-size:13px; letter-spacing:3px; text-transform:uppercase; }
h1,h2,h3 { margin:0; font-weight:600; }
h1 { margin-top:8px; font-size:30px; }
h2 { font-size:20px; color:#f3e2b6; }
.muted { color:var(--muted); }
.grid { display:grid; gap:18px; margin-top:22px; }
.stats { grid-template-columns:repeat(4,1fr); }
.stat,.card { border:1px solid var(--line); background:linear-gradient(145deg,rgba(24,35,44,.96),rgba(13,20,26,.96)); padding:24px; }
.stat span { color:var(--muted); font-size:14px; }
.stat strong { display:block; margin-top:10px; font-size:27px; color:var(--gold2); }
.card { margin-top:22px; }
.card-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:20px; }
.button { display:inline-flex; min-height:44px; align-items:center; justify-content:center; padding:0 24px; border:1px solid #9e7a38; color:#15120b; background:linear-gradient(#e5c579,#a97e32); font-weight:700; cursor:pointer; }
.button:hover { filter:brightness(1.08); }
.button.secondary { color:#d8e1e6; border-color:#506470; background:#263640; }
.button.danger { color:white; border-color:#8f3d3d; background:#713131; }
.actions { display:flex; gap:12px; flex-wrap:wrap; }
table { width:100%; border-collapse:collapse; font-size:14px; }
th { color:#9eabb3; text-align:left; font-weight:500; border-bottom:1px solid var(--line); padding:12px 10px; }
td { border-bottom:1px solid rgba(42,59,71,.6); padding:14px 10px; }
.money { color:var(--gold2); font-variant-numeric:tabular-nums; }
.ok { color:var(--good); }
.bad { color:var(--bad); }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px 24px; }
.top-gap { margin-top:24px; }
.align-end { justify-content:flex-end; }
.field { display:flex; flex-direction:column; gap:8px; }
.field.full { grid-column:1/-1; }
label { color:#cbd4da; font-size:14px; }
input,textarea { width:100%; padding:12px 14px; color:var(--text); background:#091117; border:1px solid #40535f; outline:none; font:inherit; }
input:focus,textarea:focus { border-color:var(--gold); box-shadow:0 0 0 2px rgba(202,164,88,.15); }
textarea { min-height:88px; resize:vertical; }
.validation-summary-errors,.field-validation-error { color:var(--bad); }
.confirm { display:flex; align-items:flex-start; gap:10px; color:#d8e0e5; }
.confirm input { width:auto; margin-top:4px; }
.target { border-left:3px solid var(--gold); padding:18px 20px; background:#0b141a; }
.target-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.target small { display:block; color:var(--muted); }
.target strong { display:block; margin-top:6px; }
.notice { padding:14px 18px; margin-bottom:18px; border:1px solid; }
.notice.success { background:rgba(39,131,95,.18); border-color:#357e61; color:#8ce2bb; }
.notice.error { background:rgba(146,55,55,.18); border-color:#8e4747; color:#ffaaa5; }
.login-wrap { min-height:calc(100vh - 190px); display:grid; place-items:center; }
.login-card { width:min(440px,100%); padding:38px; border:1px solid rgba(202,164,88,.5); background:rgba(13,21,27,.96); box-shadow:0 25px 80px rgba(0,0,0,.45); }
.login-card .field { margin-top:18px; }
.login-card .button { width:100%; margin-top:24px; }
.empty { color:var(--muted); padding:26px 0; text-align:center; }
@media(max-width:800px){ .topbar{height:auto;min-height:72px;align-items:flex-start;padding:16px 20px;gap:15px}.topbar nav{gap:10px;flex-wrap:wrap;justify-content:flex-end}.brand span{font-size:17px}.stats{grid-template-columns:1fr 1fr}.form-grid,.target-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.table-wrap{overflow:auto}.page-shell{width:calc(100% - 24px);margin-top:20px}.hero,.card{padding:20px} }
