:root{--paper:#f8df58;--blue:#163ee5;--ink:#11256b;--muted:#354573;font-family:"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.55;font-synthesis:none}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--paper)}
body{-webkit-font-smoothing:antialiased}
::selection{background:var(--blue);color:var(--paper)}
a{color:inherit;text-decoration:none}
button,input{font:inherit;color:inherit}
button,a,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.page{max-width:1800px;min-height:100svh;margin-inline:auto;padding:0 54px 32px;display:flex;flex-direction:column}
.site-header{min-height:118px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0}
.brand-home{display:inline-flex;align-items:center;min-height:48px;font-family:"Iowan Old Style","Baskerville","Palatino Linotype",Georgia,serif;font-size:30px;font-weight:400;letter-spacing:-1.7px;line-height:1;white-space:pre}
.brand-home em{font-weight:400}
.account-main{width:100%;max-width:440px;margin:auto;flex:none;padding:30px 0 42px}
h1{font-family:"Iowan Old Style","Baskerville","Palatino Linotype",Georgia,serif;font-weight:400;font-size:clamp(36px,6vw,50px);letter-spacing:-1.8px;line-height:1.12;margin:0 0 14px;overflow-wrap:anywhere}
h2{font-size:14px;font-weight:500;margin:0 0 10px}
p{margin:0 0 16px}
label{display:block;margin:22px 0 8px;font-size:14px}
input{display:block;width:100%;min-width:0;min-height:52px;padding:12px 14px;border:1px solid #11256b60;border-radius:4px;background:#fffdf333;color:var(--ink);font-size:16px;line-height:1.5}
input[readonly]{opacity:.75}
input[aria-invalid="true"]{border:2px solid #8d2035;padding:11px 13px;background:#fff7f566}
small{display:block;color:var(--muted);margin-top:7px;font-size:12px;line-height:1.55}
button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;border:1px solid var(--blue);border-radius:4px;background:var(--blue);color:var(--paper);padding:11px 20px;font-size:14px;font-weight:400;cursor:pointer;line-height:1.5;text-align:center;overflow-wrap:anywhere}
button:disabled{opacity:.65;cursor:wait}
.secondary{background:transparent;color:var(--ink);border-color:transparent;padding:10px 0;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#11256b55}
.password-field{position:relative}
.password-field input{padding-inline-end:94px}
.password-field input[aria-invalid="true"]{padding-inline-end:93px}
.password-toggle{position:absolute;inset-block:2px;inset-inline-end:2px;min-width:82px;min-height:48px;padding:8px 10px;border:0;border-radius:2px;background:transparent;color:var(--ink);font-size:12px;text-decoration:underline;text-underline-offset:3px}
.password-toggle:focus-visible{outline-offset:-3px}
.caps-hint{color:#753500}
.caps-hint:empty{display:none}
.actions{display:flex;flex-direction:column;gap:8px;margin:28px 0 0}
.actions button{width:100%}
#login{justify-content:space-between;padding-inline:18px}
.button-copy{display:grid}
.button-copy>span{grid-area:1/1}
.button-pending{visibility:hidden}
.button-indicator{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;width:20px;height:20px}
button[data-loading="true"] .button-idle{visibility:hidden}
button[data-loading="true"] .button-pending{visibility:visible}
button[data-loading="true"] .button-indicator{color:transparent}
button[data-loading="true"] .button-indicator::after{content:"";position:absolute;inset:1px;border:2px solid #f8df5866;border-top-color:var(--paper);border-radius:50%;animation:loading-turn .8s linear infinite}
.helper{font-size:12px;color:var(--muted);line-height:1.7}
.world-entry{display:flex;align-items:center;flex-direction:column;padding:0 0 34px}
.world-banana{display:block;width:280px;max-width:85%;height:auto;margin:-14px 0 4px;transform:rotate(-13deg);pointer-events:none;user-select:none}
.primary-link{display:inline-flex;align-items:center;gap:28px;min-height:48px;padding:4px 0 4px 2px;font-size:15px;letter-spacing:-.2px}
.entry-arrow{height:48px;width:48px;flex:none;border:1px solid #11256b50;border-radius:50%;display:grid;place-items:center;transition:background .2s,color .2s,transform .2s}
.entry-arrow svg{width:18px;height:18px}
.account-detail{border-top:1px solid #11256b38}
.management{padding:18px 0 12px}
.management h2{color:var(--muted);font-size:12px}
#management a{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:48px;padding:10px 0;font-size:14px}
#message{font-size:13px;overflow-wrap:anywhere;color:var(--muted)}
#message:empty{display:none}
#message:not(:empty){margin:0 0 24px;line-height:1.65}
#message[data-kind="error"]{padding:12px 14px;border:1px solid #8d2035;border-radius:4px;background:#fff7f570;color:#761b2c}
.skip-link{position:fixed;left:20px;top:20px;z-index:5;padding:12px;background:var(--paper);transform:translateY(-200%)}
.skip-link:focus{transform:translateY(0)}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--blue);outline-offset:5px}
#page-title:focus{outline:none}
@media(hover:hover){button:not(:disabled):hover{filter:brightness(.92)}a:hover,summary:hover{text-decoration:underline;text-underline-offset:5px}.primary-link:hover .entry-arrow{background:var(--blue);color:var(--paper);border-color:var(--blue);transform:rotate(45deg)}}
@media(min-width:1500px){.brand-home{font-size:34px}}
@media(max-width:740px){.page{padding:0 24px 26px}.site-header{min-height:100px}.brand-home{font-size:27px;letter-spacing:-1.5px}.account-main{max-width:440px;padding:28px 0 32px}}
@media(max-width:420px){.page{padding:0 22px 23px}.site-header{min-height:94px}.brand-home{font-size:25px;letter-spacing:-1.3px}.page-label{font-size:11px}.account-main{padding-top:20px}.account-heading{margin-bottom:28px}h1{font-size:36px;letter-spacing:-1.2px}.world-banana{width:232px}.world-entry{padding-bottom:28px}.entry-arrow{width:46px;height:46px}}
@media(max-width:350px){.page{padding-inline:19px}.site-header{min-height:84px;gap:12px}.brand-home{font-size:23px}.page-label{font-size:10px}h1{font-size:34px}}
@keyframes loading-turn{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.account-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:0 24px;margin-top:8px}
.account-actions button{font-size:12px;min-height:44px}
#signed-out label:first-child{margin-top:0}
