:root { color-scheme: light; --ink:#211b18; --paper:#fff8dc; --green:#2f6038; --soft-green:#d7edb3; --gold:#f7cf67; --red:#b94b3d; --muted:#695c50; }
* { box-sizing: border-box; }
body { margin:0; min-height:100vh; color:var(--ink); background:#efe4bd; font-family:"Noto Sans SC","Microsoft YaHei",sans-serif; background-image:linear-gradient(rgba(47,96,56,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(47,96,56,.07) 1px,transparent 1px); background-size:24px 24px; }
button,input,select { font:inherit; }
button { cursor:pointer; }
.hidden { display:none !important; }
.shell { width:min(1120px,calc(100% - 28px)); margin:0 auto; padding:38px 0 60px; }
.panel { background:var(--paper); border:3px solid var(--ink); box-shadow:7px 7px 0 rgba(33,27,24,.24); }
.brand-mark { display:inline-block; padding:5px 9px; color:var(--ink); background:var(--gold); border:2px solid var(--ink); font:800 12px monospace; letter-spacing:1px; }
.login-panel { width:min(440px,100%); margin:9vh auto 0; padding:34px; }
h1 { margin:16px 0 5px; font-size:30px; }
p { margin:0; color:var(--muted); }
form { margin-top:28px; }
label { display:flex; flex-direction:column; gap:8px; color:var(--muted); font-size:14px; font-weight:800; }
input,select { min-height:44px; padding:0 12px; color:var(--ink); background:#fff; border:2px solid var(--ink); border-radius:0; }
form label + label { margin-top:18px; }
button { min-height:42px; padding:9px 16px; color:#fff; background:var(--green); border:2px solid var(--ink); font-weight:900; box-shadow:3px 3px 0 rgba(33,27,24,.25); }
button:hover { filter:brightness(1.06); }
button:disabled { cursor:wait; opacity:.55; }
form button { width:100%; margin-top:24px; }
.error { min-height:21px; margin-top:14px; color:var(--red); font-size:14px; font-weight:800; }
.admin-header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 26px; background:var(--green); color:var(--paper); }
.admin-header h1 { display:inline-block; margin:0 0 0 14px; vertical-align:middle; font-size:27px; }
.admin-header p { margin-top:9px; color:#dcebd5; font-size:14px; }
.quiet-button { background:var(--paper); color:var(--ink); }
.tabs { display:flex; gap:10px; margin-top:28px; }
.tab { color:var(--ink); background:#d9ca9f; }
.tab.active { color:#fff; background:var(--green); }
.toolbar { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-top:14px; padding:17px 20px; }
.toolbar label { min-width:220px; }
.notice { margin-top:18px; padding:13px 16px; background:var(--soft-green); border:2px solid var(--ink); font-weight:800; }
.notice.error-notice { color:#fff; background:var(--red); }
.record-list { display:grid; gap:17px; margin-top:20px; }
.record-card { display:grid; grid-template-columns:minmax(210px,1.2fr) minmax(240px,1fr) auto; gap:20px; align-items:center; padding:20px 22px; background:var(--paper); border:3px solid var(--ink); box-shadow:5px 5px 0 rgba(33,27,24,.2); }
.record-card h2 { margin:0; font-size:21px; overflow-wrap:anywhere; }
.record-card dl { display:grid; grid-template-columns:max-content 1fr; gap:7px 12px; margin:11px 0 0; font-size:14px; }
.record-card dt { color:var(--muted); font-weight:800; }
.record-card dd { margin:0; overflow-wrap:anywhere; font-weight:700; }
.record-stats { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.stat { min-width:112px; padding:10px; text-align:center; background:#f6ebc5; border:2px solid var(--ink); }
.stat strong,.stat span { display:block; }
.stat strong { font-size:20px; }
.stat span { margin-top:3px; color:var(--muted); font-size:12px; font-weight:800; }
.record-actions { display:flex; min-width:126px; flex-direction:column; gap:9px; }
.danger { background:var(--red); }
.gold { color:var(--ink); background:var(--gold); }
.empty { padding:42px; text-align:center; color:var(--muted); background:rgba(255,248,220,.7); border:3px dashed var(--muted); font-weight:900; }
.status-tag { display:inline-block; margin-bottom:10px; padding:4px 8px; background:var(--soft-green); border:2px solid var(--ink); font-size:12px; font-weight:900; }
@media (max-width:760px) { .shell{width:min(100% - 20px,620px);padding-top:20px}.admin-header{align-items:flex-start}.admin-header h1{display:block;margin:12px 0 0}.toolbar{align-items:stretch;flex-direction:column}.toolbar label{min-width:0}.record-card{grid-template-columns:1fr}.record-actions{display:grid;grid-template-columns:repeat(2,1fr)} }
