:root { color-scheme: dark; font-family: Inter, "PingFang SC", "Microsoft YaHei", sans-serif; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: #0c0a09; color: #f5f5f4; }
main { width: min(1040px, calc(100% - 32px)); margin: 0 auto; padding: 40px 0; }
header, article, form, .wst-panel, .wst-login-card { border: 1px solid #44403c; border-radius: 16px; background: #1c1917; padding: 22px; }
header { border-color: rgba(245, 158, 11, .4); }
h1, h2 { margin: 0 0 14px; }
p { line-height: 1.65; }
section { display: grid; gap: 16px; margin: 20px 0; }
.wst-grid { grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
form { display: grid; gap: 14px; margin: 20px 0; }
label { display: grid; gap: 7px; color: #e7e5e4; font-size: 14px; }
input, textarea, select { width: 100%; border: 1px solid #57534e; border-radius: 9px; background: #292524; color: #fafaf9; padding: 11px 12px; font: inherit; }
textarea { min-height: 150px; resize: vertical; }
button { width: fit-content; border: 0; border-radius: 9px; background: #fbbf24; color: #1c1917; padding: 11px 18px; font: inherit; font-weight: 700; cursor: pointer; }
button:hover { background: #f59e0b; }
.wst-danger { background: #7f1d1d; color: #fff; }
.wst-muted { color: #a8a29e; }
.wst-eyebrow { color: #fbbf24; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.wst-toolbar { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; }
.wst-toolbar form { margin: 0; padding: 0; border: 0; background: transparent; }
.wst-alert { border-radius: 9px; padding: 12px; }
.wst-alert-error { background: #450a0a; color: #fecaca; }
.wst-alert-success { background: #052e16; color: #bbf7d0; }
.wst-status-ready { color: #86efac; }
.wst-status-disabled { color: #fcd34d; }
.wst-login-shell { min-height: 100vh; display: grid; place-items: center; }
.wst-login-card { width: min(460px, 100%); }
.wst-checkbox { display: flex; gap: 8px; align-items: center; }
.wst-checkbox input { width: auto; }
@media (max-width: 640px) { main { width: min(100% - 20px, 1040px); padding: 20px 0; } header, article, form, .wst-panel, .wst-login-card { padding: 17px; } }
