:root {
  color-scheme: dark;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: #07111f;
  color: #edf5ff;
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at top, #102a49 0, #07111f 52%, #040a12 100%); }
.shell { min-height: 100vh; display: grid; place-items: center; padding: 24px; }
.panel { width: min(440px, 100%); padding: 40px; border: 1px solid rgba(135,190,255,.22); border-radius: 24px; background: rgba(7,17,31,.92); box-shadow: 0 24px 80px rgba(0,0,0,.38); }
.mark { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 14px; background: #153c66; border: 1px solid #2d6ea8; font-weight: 800; font-size: 26px; }
.eyebrow { margin: 26px 0 6px; color: #8fbce7; text-transform: uppercase; letter-spacing: .14em; font-size: 12px; font-weight: 700; }
h1 { margin: 0; font-size: clamp(38px, 8vw, 54px); letter-spacing: .08em; }
.subhead { color: #a9bbcd; line-height: 1.55; }
.login { display: grid; gap: 10px; margin-top: 28px; }
label { font-size: 13px; color: #c5d5e5; }
input, button { width: 100%; min-height: 46px; border-radius: 10px; border: 1px solid #29445f; padding: 0 14px; font: inherit; }
input { background: #0c1b2a; color: #dcecff; }
button { margin-top: 6px; background: #1d5585; color: #eaf5ff; font-weight: 700; }
input:disabled, button:disabled { opacity: .58; cursor: not-allowed; }
.notice { margin-top: 24px; padding: 12px 14px; border-radius: 10px; background: #251b13; color: #f3c69b; font-size: 13px; line-height: 1.45; }
footer { margin-top: 20px; color: #70869b; font-size: 11px; }
.panel { margin: 1rem 0; padding: 1rem 1.1rem; border: 1px solid rgba(127,127,127,.25); border-radius: .8rem; }
.panel label { display: block; margin: .7rem 0; }
.panel input, .panel select { display: block; width: 100%; max-width: 34rem; padding: .55rem; margin-top: .25rem; }
.panel button { margin: .35rem .4rem .35rem 0; padding: .6rem .9rem; }
.privileged { border-width: 2px; }
.warning { font-weight: 700; }
pre { white-space: pre-wrap; word-break: break-word; }
