/* Единая компактная оболочка авторизации для администратора и владельца устройства. */
:root{color-scheme:dark;--mf-auth-bg:#0b111a;--mf-auth-card:#151d29;--mf-auth-card-soft:#1b2533;--mf-auth-border:#2a384a;--mf-auth-text:#f4f7fb;--mf-auth-muted:#9ba9bb;--mf-auth-accent:#4ea7ff;--mf-auth-accent-text:#06182a;--mf-auth-danger:#ff8585;--mf-auth-success:#55d5b9;--mf-auth-shadow:0 28px 80px rgba(0,0,0,.34)}
:root[data-theme="light"]{color-scheme:light;--mf-auth-bg:#edf2f7;--mf-auth-card:#fff;--mf-auth-card-soft:#f5f8fb;--mf-auth-border:#d7e0e9;--mf-auth-text:#17202b;--mf-auth-muted:#657386;--mf-auth-accent:#0875d1;--mf-auth-accent-text:#fff;--mf-auth-danger:#c8323d;--mf-auth-success:#087f69;--mf-auth-shadow:0 24px 65px rgba(39,57,77,.13)}
*{box-sizing:border-box}
body.mf-auth-page{min-height:100vh;margin:0;display:grid;place-items:center;padding:clamp(16px,4vw,32px);background:radial-gradient(circle at 14% 12%,color-mix(in srgb,var(--mf-auth-accent) 17%,transparent),transparent 34%),linear-gradient(145deg,var(--mf-auth-bg),color-mix(in srgb,var(--mf-auth-bg) 84%,#172b43));color:var(--mf-auth-text);font:14px/1.45 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.mf-auth-card{width:min(430px,100%);padding:clamp(21px,5vw,30px);border:1px solid var(--mf-auth-border);border-radius:20px;background:color-mix(in srgb,var(--mf-auth-card) 96%,transparent);box-shadow:var(--mf-auth-shadow);backdrop-filter:blur(18px)}
.mf-auth-card.is-wide{width:min(480px,100%)}
.mf-auth-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.mf-auth-brand{display:flex;align-items:center;gap:11px;min-width:0}
.mf-auth-mark{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border-radius:11px;background:linear-gradient(135deg,var(--mf-auth-accent),color-mix(in srgb,var(--mf-auth-accent) 62%,#67dfc7));color:var(--mf-auth-accent-text);font-weight:900;letter-spacing:-.05em}
.mf-auth-product{display:block;font-size:15px;font-weight:800;line-height:1.15}
.mf-auth-context{display:block;margin-top:3px;color:var(--mf-auth-muted);font-size:11px}
.mf-auth-theme{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border:1px solid var(--mf-auth-border);border-radius:10px;background:var(--mf-auth-card-soft);color:var(--mf-auth-text);font:inherit;cursor:pointer}
.mf-auth-card h1{margin:0;font-size:clamp(25px,7vw,31px);line-height:1.12;letter-spacing:-.035em}
.mf-auth-lead{margin:9px 0 20px;color:var(--mf-auth-muted);line-height:1.55}
.mf-auth-field{display:grid;gap:6px;margin-top:13px}
.mf-auth-field span{color:var(--mf-auth-muted);font-size:12px;font-weight:650}
.mf-auth-page .form-control{min-height:44px;border-color:var(--mf-auth-border);border-radius:11px;background:var(--mf-auth-card-soft);color:var(--mf-auth-text)}
.mf-auth-page .form-control:focus{border-color:var(--mf-auth-accent);background:var(--mf-auth-card-soft);color:var(--mf-auth-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--mf-auth-accent) 18%,transparent)}
.mf-auth-page .form-control::placeholder{color:color-mix(in srgb,var(--mf-auth-muted) 70%,transparent)}
.mf-auth-submit{width:100%;min-height:44px;margin-top:18px;border:0;border-radius:11px;background:var(--mf-auth-accent);color:var(--mf-auth-accent-text);font-weight:800}
.mf-auth-submit:hover,.mf-auth-submit:focus-visible{background:color-mix(in srgb,var(--mf-auth-accent) 88%,#fff);color:var(--mf-auth-accent-text)}
.mf-auth-message{margin:14px 0 0;padding:10px 12px;border:1px solid var(--mf-auth-border);border-radius:10px;background:var(--mf-auth-card-soft)}
.mf-auth-message.is-error{border-color:color-mix(in srgb,var(--mf-auth-danger) 48%,var(--mf-auth-border));color:var(--mf-auth-danger)}
.mf-auth-message.is-success{border-color:color-mix(in srgb,var(--mf-auth-success) 48%,var(--mf-auth-border));color:var(--mf-auth-success)}
.mf-auth-hint{margin:17px 0 0;color:var(--mf-auth-muted);font-size:12px;line-height:1.5}
.mf-auth-back{display:flex;align-items:center;justify-content:center;width:100%;min-height:42px;margin-top:10px;border:1px solid var(--mf-auth-border);border-radius:11px;background:transparent;color:var(--mf-auth-muted);font-weight:700;text-decoration:none}
.mf-auth-back:hover{background:var(--mf-auth-card-soft);color:var(--mf-auth-text)}
@media(max-width:480px){body.mf-auth-page{place-items:start center;padding-top:max(16px,env(safe-area-inset-top))}.mf-auth-card{border-radius:17px}.mf-auth-head{margin-bottom:18px}}
