:root {
  color-scheme: light;
  --paper: #f3efe4;
  --paper-raised: #fbf8ef;
  --paper-muted: #e7e0d1;
  --ink: #20251f;
  --ink-soft: #596057;
  --hairline: rgba(40,50,43,.22);
  --pine: #31594d;
  --cinnabar: #a63f31;
  --danger: #a02620;
  --serif: "Songti SC",STSong,serif;
  --sans: "Microsoft YaHei","PingFang SC",system-ui,sans-serif;
  --raised: var(--paper-raised);
  --muted: var(--paper-muted);
  --soft: var(--ink-soft);
  --line: var(--hairline);
  --accent: var(--cinnabar);
  --error: var(--danger);
  font-size: 14px;
}
html[data-theme="care"] {
  color-scheme: dark;
  --paper: #111713;
  --paper-raised: #1b231e;
  --paper-muted: #28332c;
  --ink: #e8e4dc;
  --ink-soft: #b2b9af;
  --hairline: #445147;
  --pine: #8db6a6;
  --cinnabar: #bd6252;
  --danger: #eb8a80;
}
body { background: var(--paper); color: var(--ink); font-family: var(--sans); font-size: 14px; line-height: 1.6; }
h1,h2,h3 { font-family: var(--serif); font-weight: 600; letter-spacing: 0; }
h1 { font-size: 26px; margin: 0; }
h2,.section-heading h2 { font-size: 21px; }
body>header,.topbar { max-width: none; width: 100%; min-height: 96px; padding: 20px 32px; gap: 20px; background: var(--paper-raised); border-bottom: 1px solid var(--hairline); align-items: center; }
body>header>div:first-child,.topbar>div:first-child { flex-shrink: 0; }
header .actions,.topbar-actions { margin-left: auto; justify-content: flex-end; gap: 10px; }
header .management-nav,header .section-tabs.management-nav { display: flex; gap: 4px; margin: 0; padding: 4px; max-width: none; border: 1px solid var(--hairline); border-radius: 8px; background: var(--paper); }
header .management-nav a,header .management-nav .tab-button { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; padding: 8px 16px; border: 0; border-radius: 5px; color: var(--soft); background: transparent; font: inherit; text-decoration: none; white-space: nowrap; }
header .management-nav [aria-current="page"] { color: var(--pine); background: var(--paper-raised); box-shadow: 0 1px 3px var(--hairline); font-weight: 600; }
header .management-nav a:hover { color: var(--pine); background: var(--paper-muted); }
#operatorName,.account-badge { color: var(--soft); font-size: 13px; border: 0; border-radius: 0; padding: 0 4px; background: none; }
button,.button,input,select,textarea { font-family: var(--sans); font-size: 14px; border-radius: 6px; }
button,.button { font-weight: 400; min-height: 44px; }
.button:hover { transform: none; }
label { font-size: 14px; font-weight: 400; }
input,select,textarea { padding: 10px 13px; }
.button.primary,button.primary { background: var(--cinnabar); border-color: var(--cinnabar); color: #fff8ec; }
body>main,body>#message { max-width: 1440px; }
.workspace { max-width: 1440px; margin: 24px auto; min-height: calc(100vh - 144px); padding: 0 32px; gap: 24px; grid-template-columns: 220px minmax(0,1fr); }
.sidebar,.content-shell,.panel,.metrics { border: 1px solid var(--hairline); border-radius: 9px; background: var(--paper-raised); }
.sidebar { padding: 18px 10px; align-self: start; }
.content-shell { padding: 24px; }
.section-tabs { gap: 22px; }
.section-tabs .tab-button { font-weight: 500; }
table { font-size: 14px; }
th { font-size: 13px; font-weight: 500; background: var(--paper-muted); }
td,th { padding: 14px 12px; }
dialog { border-radius: 12px; box-shadow: 0 12px 36px #0002; }
dialog::backdrop { background: #17201988; }
.login-panel,.login.panel { width: min(440px,100%); max-width: 440px; padding: 28px; box-shadow: none; }
.login-panel h1 { margin: 0; font-size: 26px; }
.login-panel h2 { margin: 0; }
.login-shell { min-height: calc(100vh - 96px); }
.login-shell::before { display: none; }
.login-lead { font-size: 14px; }
#bootStatus { max-width: none; margin: 0; padding: 24px 32px; color: var(--soft); }
#bootStatus button { margin-left: 12px; }
.environment-control { font-size: 13px; color: var(--soft); }
@media(max-width:1100px) {
  body>header,.topbar { flex-wrap: wrap; }
  .workspace { gap: 16px; grid-template-columns: 190px minmax(0,1fr); padding: 0 20px; }
}
@media(max-width:900px) {
  .workspace { grid-template-columns: minmax(0,1fr); }
  .sidebar { align-self: stretch; }
}
@media(max-width:760px) {
  body>header,.topbar { align-items: stretch; flex-direction: column; padding: 20px 16px; gap: 16px; }
  header .actions,.topbar-actions { width: 100%; margin: 0; justify-content: flex-start; }
  header .management-nav { flex-shrink: 0; }
  .topbar-actions .button { flex: none; }
  .workspace { padding: 0 16px; margin: 20px auto; }
  .content-shell { padding: 18px; }
  h1 { font-size: 23px; }
}

body>#message:empty { display: none; }
.login-shell { display: block; min-height: 0; max-width: 1440px; margin: auto; padding: 24px 32px; }
.login-panel { margin: 36px auto; }
.login-panel .form-stack,.login form { display: grid; gap: 20px; margin-top: 24px; }
.form-error:empty { display: none; }
@media(max-width:760px) { .login-shell { padding: 24px 16px; } }
