.portal-page{min-height:100vh;background:radial-gradient(circle at 12% 8%,rgba(244,132,14,.14),transparent 34rem),linear-gradient(180deg,#0305090a,#030509a3)}.portal-shell{min-height:min(720px,calc(100vh - 122px));display:grid;align-content:start;gap:24px;min-width:0;padding-top:34px}.portal-loading-state,.portal-message-state{display:grid;justify-items:start;align-content:start;gap:16px;min-height:360px;padding:clamp(28px,6vw,72px);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,rgba(244,132,14,.1),transparent 48%),#121622d1;box-shadow:var(--shadow)}.portal-loading-state p,.portal-message-state p{max-width:38rem;margin:4px 0 0;color:var(--body);line-height:1.65}.portal-message-state h1{max-width:17ch;margin:0}.portal-skeleton{display:block;width:min(100%,34rem);height:14px;border-radius:999px;background:linear-gradient(90deg,#ffffff14,#f4840e42,#ffffff14);background-size:220% 100%;animation:portal-skeleton-pulse 1.8s ease-in-out infinite}.portal-skeleton-kicker{width:7rem;height:10px}.portal-skeleton-title{width:min(100%,26rem);height:42px;border-radius:6px}.portal-skeleton-copy{width:min(100%,31rem)}.portal-auth-dialog{width:min(calc(100% - 32px),500px);max-height:min(720px,calc(100vh - 32px));margin:auto;padding:0;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);box-shadow:0 30px 100px #0000009e}.portal-auth-dialog::backdrop{background:#030509cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.portal-auth-panel{display:grid;gap:18px;padding:clamp(24px,5vw,42px);overflow:auto}.portal-auth-panel h2{margin:0;color:var(--text);font-family:Cinzel,Georgia,serif;font-size:clamp(1.6rem,4vw,2.2rem)}.portal-auth-description{margin:-6px 0 0;color:var(--body);line-height:1.55}.portal-auth-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:4px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.portal-auth-tab{min-height:40px;border:0;border-radius:5px;background:transparent;color:var(--soft);cursor:pointer;font:inherit;font-size:.88rem;font-weight:800}.portal-auth-tab.is-active{background:#f4840e29;color:var(--text)}.portal-auth-form{display:grid;gap:15px}.portal-auth-form[hidden]{display:none}.portal-auth-field{display:grid;gap:7px;color:var(--body);font-size:.86rem;font-weight:700}.portal-auth-field input{width:100%;min-height:44px;padding:0 13px;border:1px solid var(--line);border-radius:5px;background:#03050994;color:var(--text);font:inherit}.portal-auth-field input:focus-visible{outline:3px solid rgba(244,132,14,.48);outline-offset:2px;border-color:var(--primary)}.portal-auth-form-actions{display:flex;justify-content:flex-end;margin-top:3px}.portal-auth-error,.portal-auth-status{min-height:1.3em;margin:0;line-height:1.45}.portal-auth-error{color:#ffb0a4}.portal-auth-status{color:var(--body)}.portal-auth-dialog button:focus-visible,.portal-page a:focus-visible{outline:3px solid rgba(244,132,14,.72);outline-offset:3px}.portal-page [data-auth-action]{font-family:inherit;cursor:pointer}@keyframes portal-skeleton-pulse{0%,to{background-position:100% 0}50%{background-position:0 0}}@media(max-width:1120px){.portal-shell{padding-top:24px}}@media(max-width:760px){.portal-shell{min-height:calc(100vh - 180px);padding-top:14px}.portal-loading-state,.portal-message-state{min-height:300px;padding:30px 22px}.portal-auth-form-actions .button{width:100%}}@media(max-width:440px){.portal-auth-dialog{width:min(calc(100% - 20px),500px);max-height:calc(100vh - 20px)}.portal-auth-panel{padding:22px 16px}}@media(prefers-reduced-motion:reduce){.portal-skeleton{animation:none}}
