:root{color-scheme:light;--ink:#172638;--muted:#64748b;--accent:#2864df;--line:#dfe6ef;--panel:#fff;--canvas:#f3f6fb;font-family:"Segoe UI","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:14px/1.6 "Segoe UI","Microsoft YaHei",sans-serif}
main{max-width:1240px;margin:28px auto;padding:0 28px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;padding:0;background:transparent;border:0}h1{font-size:26px;letter-spacing:-.5px;margin:0}h2{font-size:18px;margin:0 0 16px}h3{font-size:15px}p{color:var(--muted)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
section,.card,fieldset{background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 3px 12px #22395704;padding:24px;margin-bottom:22px}section section{box-shadow:none;margin-top:22px}fieldset{min-width:0}legend{font-weight:600;padding:0 10px}
label{color:#475569;font-size:13px;font-weight:500}input,select,textarea{font:inherit;color:var(--ink);background:#fff;border:1px solid #ccd6e2;border-radius:8px;padding:10px 12px;max-width:100%;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px #2864df1a}input[type=checkbox]{accent-color:var(--accent);width:17px;height:17px;padding:0}textarea{min-height:96px;resize:vertical}button{font:600 13px "Segoe UI","Microsoft YaHei",sans-serif;border:1px solid transparent;border-radius:8px;background:var(--accent);color:#fff;padding:11px 16px;cursor:pointer;transition:background .15s,box-shadow .15s;white-space:normal}button:hover{background:#1c4fb9;box-shadow:0 2px 6px #18356a24}button:disabled{opacity:.5;cursor:wait}.secondary,button.secondary{background:#f1f5f9;border-color:var(--line);color:#334155}.danger,button.danger{color:#b42336;background:#fff1f2;border-color:#fecdd3}button:focus-visible,a:focus-visible{outline:3px solid #8eb6ff;outline-offset:3px}
.row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:16px 0}.columns{gap:24px}.table-wrap{border:1px solid var(--line);border-radius:10px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}thead{background:#f6f8fc;text-align:left}th{color:#5f6e81;font-size:12px;font-weight:600;letter-spacing:.2px;padding:13px 16px}td{border-bottom:1px solid #edf1f6;padding:14px 16px}tbody tr:hover{background:#f8faff}#count{margin-left:auto;color:var(--muted)}#error{color:#b42336}#message{color:#2864df}.login{max-width:460px;margin:10vh auto}small,.muted{color:var(--muted)}[hidden]{display:none!important}
.admin-panel{padding:24px}input:not([type=checkbox]),select,textarea{background:#fff;border-color:#ccd6e2;border-radius:8px}.sticky-actions{background:var(--panel);border-color:var(--line)}
.workspace{height:100dvh;display:grid;grid-template-columns:232px 1fr;grid-template-rows:76px 1fr;overflow:hidden}.workspace .brand{grid-column:1;background:#14243b;color:white;padding:22px 24px;font-size:19px;font-weight:700;letter-spacing:1px}.workspace .topbar{grid-column:2;margin:0;background:white;border-bottom:1px solid var(--line);padding:16px 32px;display:flex;justify-content:space-between;align-items:center}.workspace .topbar strong{font-size:16px}.version{font-size:12px;color:#2864df;background:#edf3ff;border:1px solid #d7e5ff;border-radius:20px;padding:4px 12px}.workspace .sidebar{grid-column:1;grid-row:2;background:#14243b;padding:16px;display:flex;flex-direction:column;gap:8px}.sidebar button{background:transparent;color:#aabbd1;text-align:left;padding:14px 16px;border-radius:9px}.sidebar button:hover{background:#203651;box-shadow:none;color:white}.sidebar button[aria-selected=true]{color:white;background:#2864df}.sidebar .caption{font-size:11px;letter-spacing:2px;color:#66809d;padding:8px 16px}.sidebar footer{margin-top:auto;padding:16px;color:#7e95af;font-size:12px}.workspace iframe{grid-row:2;grid-column:2;border:0;width:100%;height:100%;background:var(--canvas)}
@media(max-width:760px){main{padding:0 16px;margin:18px auto}section,.card,fieldset{padding:18px;border-radius:12px}header{align-items:flex-start;flex-direction:column;gap:8px}h1{font-size:23px}.columns{grid-template-columns:1fr}.workspace{grid-template-columns:1fr;grid-template-rows:64px 62px 1fr}.workspace .brand{display:none}.workspace .topbar{grid-column:1;padding:12px 18px}.workspace .sidebar{grid-column:1;grid-row:2;flex-direction:row;padding:8px 12px;gap:6px}.sidebar button{padding:8px 14px;font-size:13px}.sidebar .caption,.sidebar footer{display:none}.workspace iframe{grid-column:1;grid-row:3}}
