/* home-nest v17 · login and administrator management */
body.auth-locked{background:#ecf3ee}
body.auth-locked .app-shell,body.auth-locked .mobile-nav,body.auth-locked #modal-root,body.auth-locked #toast{display:none!important}
#auth-root:empty{display:none}
.login-layout{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:26px 16px;background:radial-gradient(ellipse 70% 45% at 80% 4%,#d4e9dc,transparent),radial-gradient(ellipse 55% 40% at 3% 100%,#dbe6ef,transparent),#f5f7f3}
.login-card{width:min(100%,470px);padding:clamp(27px,6vw,44px);border-radius:30px;background:rgba(255,255,255,.94);box-shadow:0 25px 75px rgba(33,65,47,.12);border:1px solid #ffffffeb}
.login-brand{display:flex;align-items:center;gap:12px;font:800 25px Manrope,'DM Sans',sans-serif;letter-spacing:-1.5px;color:#314b3f;margin-bottom:37px}
.login-brand small{display:block;letter-spacing:2.3px;font-size:9px;color:#92a79b}
.login-brand-icon{width:46px;height:46px;border-radius:15px;background:#476b58;color:white;display:grid;place-items:center}
.login-brand-icon svg{width:27px;height:27px}
.login-overline{font-size:10px;letter-spacing:2.9px;font-weight:800;color:#6c8c77;margin-bottom:15px}
.login-card h1{font-size:clamp(28px,7vw,36px);margin:0 0 11px}
.login-intro{font-size:13px;line-height:1.7;color:#82938a;margin-bottom:26px}
.login-field{display:grid;gap:9px;margin-bottom:18px}
.login-field span{font-size:12px;color:#526e5e;font-weight:800}
.login-field input{border:1px solid #dce9dd;background:#f9fbf8;border-radius:14px;padding:14px 15px;width:100%;font-size:15px;color:#233a2d}
.login-field input[readonly]{background:#edf3ee;color:#587365}
.login-submit{width:100%;background:#476b58;color:#fff;border-radius:14px;padding:16px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px;font-weight:800;margin-top:25px}
.login-submit svg{width:19px;height:19px}
.login-submit:disabled{opacity:.6}
.login-help,.login-foot{font-size:11px;line-height:1.7;color:#829589}
.login-help{margin-top:0}
.login-foot{border-top:1px solid #e7ece7;padding-top:18px;margin:28px 0 0}
.login-error{color:#a83e39;background:#fff1ed;border-radius:11px;font-size:12px;padding:12px 14px;margin-top:10px}
.admin-modal{width:min(100%,610px)}
.admin-members{display:grid;gap:8px;margin-bottom:15px}
.admin-member-row{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid #e8eee8;border-radius:15px;background:#f9fbf9;min-width:0}
.admin-member-info{display:grid;gap:5px;flex:1;min-width:0}
.admin-member-info strong{font-size:13px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.admin-member-info small{font-size:10px;color:#819185;overflow-wrap:anywhere}
.admin-member-row>.btn{font-size:11px;padding:9px 11px}
.admin-tag{font-size:9px;background:#dfede2;color:#4c7057;border-radius:8px;padding:3px 6px}
.admin-add{width:100%;margin:8px 0 12px}
.admin-modal .field input[type=color]{height:43px;padding:5px}
@media(max-width:700px){.admin-modal{max-height:92dvh}.admin-member-row{gap:7px;padding:8px}.admin-member-row .avatar-big{width:32px;height:32px}.admin-member-row>.btn{padding:8px 9px}.login-card{border-radius:24px}}
