/* The sign-in view on a conference's own host (functions/_portal-page.js).
   The page carries the conference's tokens in a <style> before this file;
   the values here are what a conference with no brand profile yet gets. */
*{box-sizing:border-box}
html{color-scheme:light}
body{margin:0;min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:24px 16px;background:var(--brand-bg,#f5f6f8);color:var(--brand-text,#202225);font:16px/1.5 var(--brand-body-font,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif);-webkit-font-smoothing:antialiased}
.ps-card{width:min(100%,420px);padding:32px 28px 28px;border-radius:20px;background:#fff;box-shadow:0 24px 64px color-mix(in srgb,var(--brand-ink,#202225) 14%,transparent),0 1px 2px rgba(0,0,0,.05)}
.ps-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ps-brand{display:flex;align-items:center;gap:12px;margin:0 0 26px}
.ps-logo{display:block;width:auto;height:auto;max-height:48px;max-width:220px}
.ps-mark{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:12px;background:var(--brand-ink,#202225);color:#fff;font-size:15px;font-weight:800;letter-spacing:.02em}
.ps-name{color:var(--brand-ink,#202225);font-size:15px;font-weight:700;letter-spacing:-.01em}
h1{margin:0 0 6px;font-family:var(--brand-heading-font,var(--brand-body-font,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif));font-size:30px;font-weight:600;line-height:1.1;letter-spacing:-.02em;color:var(--brand-ink,#202225)}
.ps-sub{margin:0 0 20px;color:#5c626c}
.ps-identity{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;padding:10px 14px;border-radius:12px;background:color-mix(in srgb,var(--brand-ink,#202225) 6%,#fff);font-size:14px;font-weight:600;overflow-wrap:anywhere}
.ps-identity[hidden]{display:none}
.ps-error{margin:0 0 12px;color:#a01625;font-size:14px;font-weight:600}
.ps-error:empty{display:none}
form{display:grid;gap:14px}
[hidden]{display:none!important}
.ps-field{display:grid;gap:6px}
.ps-field label{font-size:13px;font-weight:700;color:var(--brand-text,#202225)}
.ps-field input{width:100%;min-height:50px;padding:12px 14px;border:1px solid #cfd4db;border-radius:12px;background:#fff;color:inherit;font:inherit;font-size:16px}
.ps-field input:hover{border-color:#aab1bb}
.ps-field input:focus{outline:none;border-color:var(--brand-accent,#202225);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand-accent,#202225) 22%,transparent)}
.ps-code{font-size:24px;letter-spacing:.35em;font-variant-numeric:tabular-nums}
.ps-password{position:relative}
.ps-password input{padding-right:64px}
.ps-show{position:absolute;right:6px;bottom:3px;min-height:44px;padding:0 10px}
.ps-note{margin:-4px 0 0;color:#5c626c;font-size:13px}
.ps-button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin-top:4px;padding:0 20px;border:0;border-radius:12px;background:var(--brand-ink,#202225);color:#fff;font:inherit;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .15s,transform .1s}
.ps-button:hover{background:color-mix(in srgb,var(--brand-ink,#202225) 86%,#000)}
.ps-button:active{transform:scale(.99)}
.ps-button:disabled{opacity:.7;cursor:wait}
.ps-link{display:inline-flex;align-items:center;min-height:44px;margin:0;padding:0;border:0;background:none;color:var(--brand-ink,#202225);font:inherit;font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer;justify-self:start}
.ps-link:hover{text-decoration-thickness:2px}
.ps-link:disabled{opacity:.6;cursor:wait}
.ps-success .ps-big{margin:0 0 6px;font-family:var(--brand-heading-font,inherit);font-size:24px;font-weight:600;line-height:1.15;color:var(--brand-ink,#202225)}
.ps-success p{margin:0;color:#5c626c}
.ps-help{margin:22px 0 0;color:#5c626c;font-size:14px}
.ps-help[hidden]{display:none}
a:focus-visible,button:focus-visible{outline:3px solid var(--brand-accent,#202225);outline-offset:3px}
@media (max-width:480px){.ps-card{padding:26px 20px 22px;border-radius:16px}h1{font-size:27px}}
@media (prefers-reduced-motion:reduce){.ps-button{transition:none}}
