/* Account entry uses the editor palette, with a single clear primary action. */
#guest-auth-entry:not([hidden]){display:flex;align-items:center;gap:2px}
#guest-auth-entry button{white-space:nowrap;padding:8px;font-size:13px;color:#31382a;background:transparent;border:0;border-radius:5px}
#guest-auth-entry #guest-signup{font-weight:700;background:#e3e6d8}
#auth-dialog{width:min(424px,calc(100vw - 32px));max-height:calc(100dvh - 32px);box-sizing:border-box;overflow:auto;overscroll-behavior:contain;border:1px solid #deded3;border-radius:18px;padding:32px;background:#faf9f5;color:#2c3027;box-shadow:0 24px 80px #1d251b33}
#auth-dialog::backdrop{background:#20271d66;backdrop-filter:blur(4px)}
#auth-dialog #auth-form{margin:0;display:block}
#auth-dialog .auth-masthead{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}
#auth-dialog .auth-wordmark{font-size:12px;font-weight:750;letter-spacing:2px;color:#575f49;line-height:1}
#auth-dialog #auth-close{display:grid;place-items:center;width:36px;height:36px;min-height:0;margin:-8px -8px -8px 0;padding:8px;border:0;border-radius:50%;color:#717469;background:transparent;cursor:pointer}
#auth-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
#auth-dialog #auth-close:hover{background:#eaece3;color:#2c3027}
#auth-dialog h2{font-size:26px;line-height:1.35;letter-spacing:-.9px;font-weight:700;margin:0 0 8px;padding:0;border:0}
#auth-dialog #auth-description{margin:0;font-size:13px;line-height:1.6;color:#6b715f;letter-spacing:-.2px}
#auth-dialog .auth-mode-buttons{display:grid;grid-template-columns:1fr 1fr;margin:26px 0 24px;gap:0;border-bottom:1px solid #dedfd5}
#auth-dialog .auth-mode-buttons button{min-height:42px;margin:0 0 -1px;padding:8px 10px 12px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:#6b715f;font-size:14px;font-weight:500;cursor:pointer;box-shadow:none}
#auth-dialog .auth-mode-buttons button[aria-pressed=true]{border-bottom-color:#545f40;color:#414e30;font-weight:700}
#auth-dialog .auth-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
#auth-dialog label{display:block;margin:0;color:#555b4c;font-size:12px;font-weight:650;line-height:1.5}
#auth-dialog input{display:block;box-sizing:border-box;width:100%;height:48px;min-height:48px;margin:0;padding:12px 14px;border:1px solid #d9ddd1;border-radius:8px;background:#fffefa;color:#2c3027;font-size:15px;line-height:1.4;box-shadow:none;outline:none;transition:border-color .15s,box-shadow .15s}
#auth-dialog input::placeholder{color:#6b715f;opacity:1}
#auth-dialog input:focus{border-color:#6c7958;box-shadow:0 0 0 3px #6c795815}
#auth-dialog input:read-only{background:#f1f2eb}
#auth-dialog .auth-password-label{display:flex;justify-content:space-between;align-items:center;margin-top:12px}
#auth-dialog #auth-hint{font-size:11px;color:#6b715f;font-weight:400}
#auth-dialog .auth-password-field{position:relative}
#auth-dialog .auth-password-field input{padding-right:65px}
#auth-dialog #auth-password-toggle{position:absolute;right:6px;top:6px;height:36px;min-height:0;min-width:48px;margin:0;padding:8px;border:0;border-radius:5px;background:transparent;color:#6b715f;font-size:12px;font-weight:500;cursor:pointer}
#auth-dialog #auth-password-toggle:hover{background:#edf0e6;color:#414e30}
#auth-dialog #auth-status{margin:16px 0 0;padding:12px 14px;border-radius:8px;background:#f8ede7;color:#8d4b32;font-size:12px;line-height:1.65;overflow-wrap:anywhere}
#auth-dialog #auth-status:empty{display:none}
#auth-dialog #auth-status[data-tone=success]{background:#eaf0e2;color:#4d603a}
#auth-dialog #auth-status[data-tone=pending]{background:#eff0e9;color:#666e59}
#auth-dialog #auth-submit{display:block;width:100%;height:48px;min-height:48px;margin:24px 0 0;padding:12px 18px;border:1px solid #535f3f;border-radius:8px;background:#535f3f;color:#fffefa;font-size:14px;line-height:1.5;font-weight:650;letter-spacing:.1px;cursor:pointer;box-shadow:0 2px 3px #2b39200c;transition:background .15s}
#auth-dialog #auth-submit:hover{background:#424f30}
#auth-dialog #auth-footer{margin:14px 0 0;text-align:center;font-size:11px;line-height:1.6;color:#6b715f}
#auth-dialog button:focus-visible{outline:2px solid #7b8a62;outline-offset:3px}
#auth-dialog button:disabled{cursor:wait;opacity:.55}
#auth-dialog [hidden]{display:none!important}
@media(max-width:700px){#guest-auth-entry button{padding:7px 4px;font-size:12px}#auth-dialog{padding:28px 24px;border-radius:16px}#auth-dialog input{font-size:16px}}
@media(prefers-reduced-motion:reduce){#auth-dialog input,#auth-dialog #auth-submit{transition:none}}

/* Mobile sheets stay above the visual keyboard; actions remain reachable. */
@media(max-width:700px){
 #auth-dialog{position:fixed;inset:auto 0 var(--kbd,0px);margin:0;width:100%;max-width:none;max-height:calc(var(--vvh,100dvh) - 24px);overflow:auto;overscroll-behavior:contain;box-sizing:border-box;border-radius:18px 18px 0 0;padding:24px 20px 0;}
 .auth-actions{position:sticky;bottom:0;margin:20px -20px 0;padding:12px 20px max(16px,env(safe-area-inset-bottom));background:#faf9f5;box-shadow:0 -10px 10px -6px #faf9f5;z-index:1;}
 #auth-dialog #auth-submit{margin-top:0}
}
