.portal-login-screen{min-height:100vh;isolation:isolate;color:#fffdf8;background:radial-gradient(47% 43% at 90% 80%,#bd954f38,#0000 78%),radial-gradient(51% 55% at 80% 38%,#1d5e5573,#0000 83%),linear-gradient(122deg,#041e1d 0%,#062c29 52%,#0b3935 100%);min-height:100dvh;position:relative;overflow:hidden}.portal-root .portal-login-screen :where(button,a):focus-visible{outline-offset:5px;outline:2px solid #f0d49a}.portal-login-atmosphere{z-index:-1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.portal-login-atmosphere svg{width:100%;height:100%}.portal-login-curve{fill:none;stroke-width:1.4px}.portal-login-curve--quiet{stroke:#7cbaa626}.portal-login-curve--gold{stroke:#ebc2839e}.portal-login-curve--lower{stroke:#ebc28375}.portal-login-glint{fill:none;stroke:#fff2cf;stroke-width:2.4px;stroke-linecap:round;stroke-dasharray:13 2000;filter:drop-shadow(0 0 6px #f7dc9e);animation:11s linear infinite portal-login-travel}.portal-login-frame{width:min(100%,1600px);min-height:100vh;min-height:100dvh;padding:max(34px, env(safe-area-inset-top)) clamp(28px, 5.1vw, 78px) max(34px, env(safe-area-inset-bottom));grid-template-rows:auto 1fr;margin:0 auto;display:grid;position:relative}.portal-login-header{justify-content:space-between;align-items:center;gap:24px;display:flex}.portal-login-logo-link{align-items:center;width:fit-content;display:inline-flex}.portal-login-logo-link img{width:clamp(142px,12.4vw,181px);height:auto;display:block}.portal-login-back{color:#fffdf8e0;align-items:center;gap:10px;min-height:44px;font-size:.99rem;text-decoration:none;transition:color .16s;display:inline-flex}.portal-login-back:hover{color:#fff}.portal-login-back--bottom{display:none}.portal-login-content{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:center;gap:clamp(30px,4vw,84px);padding-bottom:22px;display:grid}.portal-login-copy{z-index:2;width:min(100%,565px);margin-left:clamp(0px,4vw,64px);animation:.48s ease-out both portal-login-enter;position:relative}.portal-login-copy h1{color:#fffdf8;font-family:var(--font-heading-family), sans-serif;letter-spacing:-.065em;margin:0;font-size:clamp(3.3rem,5.3vw,5.25rem);font-weight:500;line-height:1.02}.portal-login-description{color:#fffdf8c2;max-width:550px;margin:24px 0 0;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.5}.portal-login-copy .portal-login-action{width:min(100%,510px);margin-top:clamp(40px,5vw,61px)}.portal-login-copy .portal-google-button{color:#112326;background:#fffdfa;border:1px solid #fffc;gap:20px;min-height:65px;padding:0 26px 0 29px;font-size:clamp(.96rem,1.18vw,1.12rem);font-weight:650;transition:transform .16s,box-shadow .16s;box-shadow:0 16px 35px #00000026}.portal-login-copy .portal-google-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 20px 42px #00000038}.portal-login-copy .portal-google-button:active:not(:disabled){transform:translateY(0)}.portal-login-copy .portal-google-button>svg{color:#173733}.portal-login-copy .portal-google-mark{object-fit:contain;flex:none;width:22px;height:auto}.portal-login-first-time{color:#fffdf8d1;max-width:510px;margin:24px 0 0;font-size:clamp(.9rem,1.1vw,1rem);line-height:1.55}.portal-login-copy .portal-message--error{color:#ffe0d5;background:#3f0a0973;border-color:#ffd9ca61;width:min(100%,510px)}.portal-login-showcase{justify-self:center;width:min(100%,690px);height:clamp(425px,56vw,620px);max-height:69vh;animation:.55s ease-out 80ms both portal-login-enter;position:relative}.portal-login-stage{--pointer-x:0px;--pointer-y:0px;position:absolute;inset:0 0 30px}.portal-login-stage:after{z-index:-1;filter:blur(22px);content:"";background:#0000006b;border-radius:50%;width:83%;height:15%;position:absolute;bottom:2%;right:4%}.portal-login-model{opacity:0;transform:translate3d(calc(var(--pointer-x) + 16px), calc(var(--pointer-y) + 12px), 0) rotate(2deg);pointer-events:none;transition:opacity .9s,transform .9s cubic-bezier(.22,1,.36,1);position:absolute;inset:0}.portal-login-model--active{z-index:1;opacity:1;transform:translate3d(var(--pointer-x), var(--pointer-y), 0)}.portal-login-card-image,.portal-login-pair{object-fit:contain;filter:drop-shadow(0 28px 34px #00000047);width:auto;height:auto;display:block;position:absolute}.portal-login-card-image{width:66%}.portal-login-card-image--back{animation:6.8s ease-in-out infinite portal-login-float-back;top:11%;right:1%;transform:rotate(6deg)}.portal-login-card-image--front{animation:7.4s ease-in-out infinite portal-login-float-front;top:41%;left:1%;transform:rotate(-7deg)}.portal-login-model--0 .portal-login-card-image--front{border-radius:8% 15% 12%}.portal-login-model--1 .portal-login-card-image--back{top:11%}.portal-login-model--1 .portal-login-card-image--front{top:41%}.portal-login-pair{width:83%;max-height:82%;animation:7.2s ease-in-out infinite portal-login-float-pair;top:8%;left:9%}.portal-login-motion-button{z-index:3;color:#fffdf8e6;cursor:pointer;background:#011b1a99;border:1px solid #fffdf847;border-radius:999px;justify-content:center;align-items:center;gap:7px;min-width:85px;min-height:44px;padding:0 10px;font-size:.75rem;transition:border-color .16s,background .16s;display:inline-flex;position:absolute;bottom:0;right:0}.portal-login-motion-button:hover{background:#011b1adb;border-color:#fffdf894}.portal-login-showcase--still .portal-login-card-image,.portal-login-showcase--still .portal-login-pair{animation-play-state:paused}.portal-login-screen:has(.portal-login-showcase--still) .portal-login-glint{opacity:0;animation-play-state:paused}@keyframes portal-login-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes portal-login-travel{0%{stroke-dashoffset:2000px}to{stroke-dashoffset:0}}@keyframes portal-login-float-back{0%,to{transform:translateY(0)rotate(6deg)}50%{transform:translateY(-8px)rotate(5.5deg)}}@keyframes portal-login-float-front{0%,to{transform:translateY(0)rotate(-7deg)}50%{transform:translateY(7px)rotate(-6.5deg)}}@keyframes portal-login-float-pair{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@media (max-width:850px){.portal-login-frame{padding:max(24px, env(safe-area-inset-top)) clamp(22px, 6vw, 42px) max(23px, env(safe-area-inset-bottom));grid-template-rows:auto 1fr auto}.portal-login-content{flex-direction:column;justify-content:flex-start;gap:0;padding:10px 0 30px;display:flex}.portal-login-showcase{order:-1;width:min(100%,500px);height:clamp(255px,60vw,350px);max-height:none;margin:0 auto 10px}.portal-login-copy{text-align:center;width:min(100%,540px);margin:0 auto}.portal-login-copy h1{font-size:clamp(2.75rem,8.4vw,4.5rem)}.portal-login-description{margin:19px auto 0;font-size:clamp(1rem,3vw,1.25rem)}.portal-login-copy .portal-login-action{width:min(100%,510px);margin:31px auto 0}.portal-login-first-time{margin:20px auto 0}.portal-login-back--top{display:none}.portal-login-back--bottom{justify-self:center;display:inline-flex}}@media (max-width:520px){.portal-login-logo-link img{width:143px}.portal-login-showcase{width:min(100%,390px);height:clamp(230px,68vw,285px);margin-bottom:8px}.portal-login-stage{inset:0 0 25px}.portal-login-card-image{width:70%}.portal-login-card-image--back{top:1%;right:0}.portal-login-card-image--front{top:38%;left:0}.portal-login-model--1 .portal-login-card-image--back{top:1%}.portal-login-model--1 .portal-login-card-image--front{top:38%}.portal-login-pair{width:86%;max-height:90%;top:0;left:7%}.portal-login-motion-button{bottom:0;right:0}.portal-login-copy h1{font-size:clamp(2.45rem,10.8vw,3.3rem)}.portal-login-copy .portal-google-button{gap:14px;min-height:58px;padding:0 21px;font-size:.97rem}.portal-login-first-time{font-size:.88rem}.portal-login-atmosphere svg{width:185%;transform:translate(-27%)}}@media (max-width:360px){.portal-login-copy .portal-google-button{white-space:nowrap;gap:9px;padding:0 15px;font-size:.85rem}.portal-login-copy .portal-google-mark{width:20px;height:auto}.portal-login-copy .portal-google-button>svg{flex:none;width:16px}}@media (max-height:750px) and (min-width:851px){.portal-login-showcase{height:min(65vh,470px)}.portal-login-copy .portal-login-action{margin-top:34px}}@media (prefers-reduced-motion:reduce){.portal-login-copy,.portal-login-showcase,.portal-login-glint,.portal-login-card-image,.portal-login-pair{animation:none!important}.portal-login-model,.portal-login-copy .portal-google-button,.portal-login-motion-button{transition:none}}.portal-email-login{color:#fffdf8e6;text-align:left;width:min(100%,510px);margin-top:20px}.portal-email-login__divider{color:#fffdf8ba;margin:0 0 14px;font-size:.9rem}.portal-email-login label{margin-bottom:8px;font-size:.88rem;font-weight:600;display:block}.portal-email-login__row{gap:9px;display:flex}.portal-email-login input{color:#fffdf8;min-width:0;min-height:48px;font:inherit;background:#fffdf817;border:1px solid #f2e3c980;border-radius:12px;flex:auto;padding:0 14px}.portal-email-login input::placeholder{color:#fffdf88c}.portal-email-login__row button,.portal-activation-submit{color:#0c312e;cursor:pointer;min-height:48px;font:inherit;background:#f4e9d0;border:1px solid #efd8ab;border-radius:12px;padding:0 20px;font-weight:650}.portal-email-login__row button:disabled,.portal-activation-submit:disabled{cursor:wait;opacity:.6}.portal-email-login__message,.portal-email-login>p:not(.portal-email-login__divider){margin:12px 0;font-size:.9rem;line-height:1.5}.portal-email-login__help{color:#fffdf8b3;margin:8px 0 0;font-size:.82rem;line-height:1.45}.portal-email-login__reset,.portal-switch-account{color:#f3dcae;cursor:pointer;min-height:44px;font:inherit;text-underline-offset:3px;background:0 0;border:0;margin-top:8px;padding:5px 0;text-decoration:underline}.portal-activation-account{text-align:left;background:#fffdf813;border:1px solid #f4e4c559;border-radius:15px;gap:5px;width:min(100%,510px);margin:30px 0 22px;padding:18px 20px;display:grid}.portal-activation-account span,.portal-activation-account small{color:#fffdf8bf;font-size:.87rem}.portal-activation-account strong{overflow-wrap:anywhere;font-size:1.12rem}.portal-activation-account small{overflow-wrap:anywhere}.portal-activation-submit{width:min(100%,510px);min-height:56px}.portal-activation-screen .portal-login-first-time a{color:#f3dcae}@media (max-width:850px){.portal-email-login,.portal-activation-account{margin-left:auto;margin-right:auto}.portal-activation-screen .portal-login-copy{padding-bottom:24px}}@media (max-width:460px){.portal-email-login__row{flex-direction:column}.portal-email-login__row button{width:100%}}
