/* Native account dialog shares the current workstation theme and existing artwork. */
.modal.service-auth-dialog{--auth-ink:var(--text);--auth-muted:var(--muted);--auth-accent:var(--purple);width:850px;max-width:calc(100vw - 40px);max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--border);border-radius:18px;background:var(--surface);color:var(--auth-ink);box-shadow:0 24px 90px #5c285432;overflow:auto}
.service-auth-dialog::backdrop{background:#21142b73;backdrop-filter:blur(3px)}
.service-auth-dialog>.modal-titlebar{display:none}
.modal.service-auth-dialog{overflow:hidden}
.service-auth-dialog>.modal-content{padding:0;overflow:auto;max-height:calc(100dvh - 42px);min-height:0}
.auth-layout{display:grid;grid-template-columns:minmax(260px, .85fr) minmax(0,1.15fr);min-height:0;text-align:left}
.auth-brand{background:radial-gradient(ellipse at 10% 100%,#ffd8c9aa,transparent 60%),linear-gradient(145deg,#f6edff,#fff1e9 68%,#ffe8ed);padding:32px 32px 24px;display:flex;flex-direction:column;overflow:hidden;position:relative}
.auth-wordmark{display:flex;align-items:center;gap:10px;white-space:nowrap}
.auth-wordmark>span{width:40px;height:40px;display:grid;place-items:center;background:var(--sunset);border-radius:50%;color:white}
.auth-wordmark strong{font:750 24px/1.1 system-ui,sans-serif;letter-spacing:-.7px;color:var(--auth-ink)}
.auth-kicker{align-self:flex-start;background:var(--lavender);color:var(--auth-accent);border-radius:20px;padding:4px 12px;font-size:0.857143rem;margin:10px 0 16px 38px}
.auth-brand h3{font-size:2.142857rem;line-height:1.4;letter-spacing:-.6px;font-weight:750;color:var(--auth-ink);margin:0}
.service-auth-dialog .auth-brand>p{font-size:1rem;color:var(--auth-muted);margin:12px 0 0;line-height:1.6}
.auth-artwork{display:block;width:250px;max-width:100%;height:auto;aspect-ratio:1;object-fit:contain;margin:8px auto 0;mask-image:linear-gradient(to right,transparent,#000 15%,#000 85%,transparent),linear-gradient(to bottom,transparent,#000 15%,#000 85%,transparent);mask-composite:intersect}
.auth-form-panel{position:relative;min-width:0;padding:28px 36px 20px}
.auth-close{position:absolute;right:14px;top:13px;z-index:3;color:var(--auth-muted);border-radius:50%;width:30px;height:30px;background:var(--surface);box-shadow:0 0 0 4px var(--surface)}
.auth-close:hover{background:var(--lavender)}
.auth-tabs{display:flex;gap:24px;width:max-content;max-width:100%;border-bottom:1px solid var(--border);margin-bottom:18px}
.auth-tabs button{font-size:1.071429rem;color:var(--auth-muted);padding:12px 4px 10px;border-bottom:2px solid transparent;margin-bottom:-1px}
.auth-tabs button[aria-current]{color:var(--auth-accent);font-weight:650;border-color:var(--auth-accent)}
.auth-form-panel h2{font-size:2rem;line-height:1.4;color:var(--auth-ink);letter-spacing:-.6px;font-weight:750;margin:0}
.service-auth-dialog .auth-subtitle{font-size:1rem;color:var(--auth-muted);margin:4px 0 18px;line-height:1.7}
.auth-field{display:block;margin:0 0 14px}
.auth-field>span:first-child:not(.auth-input),.auth-label{font-size:1rem;font-weight:600;color:var(--auth-ink);line-height:20px;margin-bottom:6px;display:block}
.auth-label{display:flex;justify-content:space-between;align-items:center;gap:8px}
.auth-input{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 13px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--auth-muted);box-shadow:0 1px 2px #49304c03}
.service-auth-dialog .auth-input input{width:100%;flex:1;min-width:0;min-height:44px;padding:9px 0;border:0;background:transparent;font-size:1rem;color:var(--auth-ink);outline:none;border-radius:0}
.auth-input:focus-within{border-color:var(--auth-accent)}
.auth-input input::placeholder{color:#a69bab}
.auth-text{font-size:0.857143rem;color:var(--auth-accent);padding:0;line-height:1.7;font-weight:400}
.auth-text:hover{text-decoration:underline}
.auth-eye{color:var(--auth-muted);display:grid;place-items:center;padding:4px;margin-right:-5px}
.auth-eye[aria-pressed=true]{color:var(--auth-accent);background:var(--lavender);border-radius:4px}
.service-auth-dialog .auth-submit{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:15px;background:var(--sunset);color:white;border:1px solid #ff9d8f;border-radius:8px;font-size:1rem;font-weight:500;box-shadow:none}
.service-auth-dialog .auth-submit:hover{background:linear-gradient(120deg,#ffac6f,#ff5269 55%,#d23384);border-color:#ff9c90}
.auth-local{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:12px 0;color:var(--auth-accent);font-size:0.857143rem;font-weight:550}
.auth-secondary.svc-page{padding:0;color:var(--auth-ink);font-size:0.928571rem}
.auth-secondary .svc-card{border:0;border-radius:0;box-shadow:none;padding:0;margin-bottom:22px}
.auth-secondary h3{font-size:1.071429rem;margin:0 0 12px}
.auth-secondary .svc-columns{grid-template-columns:1fr}
.auth-secondary .field input{font-size:0.928571rem}
.auth-secondary form>button[type=submit]{width:100%}
.auth-back{margin-bottom:8px}
.service-auth-dialog .svc-error,.service-auth-dialog .svc-message{font-size:0.857143rem;padding:10px 12px;line-height:1.65;margin:0 0 16px;overflow-wrap:anywhere}
.auth-gate{max-width:650px;margin:40px auto;padding:40px;text-align:center}
.auth-gate .svc-symbol{margin:0 auto 20px}
.auth-gate p{margin:12px 0 24px}
.auth-gate .btn{margin:4px}
.auth-gate small{display:block;margin-top:18px;color:var(--auth-muted)}
/* Preserve useful control sizes; compact spacing and artwork as the viewport shrinks. */
@media(max-width:800px){.modal.service-auth-dialog{width:420px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:14px}.service-auth-dialog>.modal-content{max-height:calc(100dvh - 26px)}.auth-layout{display:block}.auth-brand{display:none}.auth-form-panel{padding:24px 24px 18px}.auth-tabs{margin-right:28px}.auth-form-panel h2{font-size:1.785714rem}.auth-gate{padding:24px;margin:16px auto}}
@media(max-height:720px){.auth-brand{padding:24px 28px 18px}.auth-form-panel{padding:20px 30px 16px}.auth-tabs{margin-bottom:12px}.auth-tabs button{padding-top:8px;padding-bottom:8px}.service-auth-dialog .auth-subtitle{margin-bottom:12px}.auth-field{margin-bottom:12px}.auth-artwork{width:clamp(130px,30dvh,210px)}.auth-brand h3{font-size:2rem}.auth-local{padding:10px 0}}
@media(max-height:600px){.auth-brand{padding-top:20px}.auth-kicker{margin-bottom:12px}.auth-form-panel{padding-top:12px;padding-bottom:10px}.auth-tabs{margin-bottom:6px}.auth-form-panel h2{font-size:1.714286rem}.service-auth-dialog .auth-subtitle{font-size:0.928571rem;margin:3px 0 6px}.auth-field{margin-bottom:8px}.auth-field>span:first-child:not(.auth-input),.auth-label{margin-bottom:2px}.auth-input{min-height:42px}.service-auth-dialog .auth-input input{min-height:40px;padding:7px 0}.service-auth-dialog .auth-submit{min-height:44px}.auth-local{padding:6px 0}}
@media(max-width:420px){.auth-form-panel{padding-left:18px;padding-right:18px}.auth-tabs{gap:18px}}

/* Three account entry tabs remain usable on narrow windows. */
@media(max-width:480px){.auth-tabs{gap:12px}.auth-tabs button{font-size:.93rem;white-space:nowrap}}
