@font-face{font-family:"BudMax";src:url('./assets/budmax.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--ink:#111;--paper:#f3f1eb;--edge:clamp(28px,4.6vw,82px);--safe-bottom:max(22px,env(safe-area-inset-bottom))}
*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:var(--paper);color:var(--ink)}body{font-family:"BudMax",ui-monospace,monospace;font-synthesis:none;letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}button,input{font:inherit;color:inherit}.portal-shell{position:relative;min-height:100svh;overflow:hidden}.portal-logo{position:absolute;left:4.8vw;top:5svh;width:min(52vw,880px)}.portal-actions{position:absolute;right:var(--edge);bottom:15svh;width:min(34vw,510px);display:grid;gap:38px}.portal-action{position:relative;display:block;width:100%;border:0;padding:0 48px 14px 0;background:transparent;color:inherit;text-align:left;text-decoration:none;cursor:pointer;animation:soft-pulse 4.2s ease-in-out infinite}.portal-action:first-child{animation-delay:-2.1s}.portal-action-copy{display:block;width:62%;height:auto}.portal-rule{position:absolute;left:0;right:39px;bottom:0;height:1px;background:currentColor}.portal-arrow{position:absolute;right:5px;bottom:7px;width:11px;height:11px;border-top:1px solid;border-right:1px solid;transition:transform 150ms linear}.portal-action:hover .portal-arrow,.portal-action:focus-visible .portal-arrow{transform:translate(3px,-3px)}.portal-action:active{animation:press 190ms ease-out both}.portal-action.primary{margin-top:12px}.budmax-text{display:block;width:100%;height:auto;overflow:visible}.budmax-text use{fill:currentColor}@keyframes soft-pulse{0%,100%{opacity:.72}50%{opacity:1}}@keyframes press{0%{opacity:1}48%{opacity:.28}100%{opacity:.9}}
@media(max-width:700px){:root{--edge:24px}.portal-logo{left:3vw;top:6svh;width:94vw}.portal-actions{left:var(--edge);right:auto;bottom:15svh;width:min(77vw,350px);gap:30px}}
.auth-shell,.account-shell{min-height:100svh;padding:max(clamp(24px,4.6vw,82px),env(safe-area-inset-top)) max(clamp(24px,4.6vw,82px),env(safe-area-inset-right)) max(clamp(24px,4.6vw,82px),env(safe-area-inset-bottom)) max(clamp(24px,4.6vw,82px),env(safe-area-inset-left));background:var(--paper)}
.auth-logo,.account-logo{display:block;width:min(46vw,620px);height:auto}
.auth-form{width:min(88vw,620px);margin:clamp(120px,24svh,260px) 0 0 auto;display:grid;gap:28px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.auth-field{display:block;width:100%;min-height:58px;padding:12px 0;border:0;border-bottom:1px solid currentColor;border-radius:0;background:transparent;font-size:clamp(22px,2.4vw,40px);line-height:1.15;outline:1px solid transparent;outline-offset:7px;-webkit-appearance:none;appearance:none}
.auth-field::placeholder{color:currentColor;opacity:.48}
.auth-field:focus-visible{border-bottom-width:2px;outline-color:rgba(17,17,17,.34)}
.turnstile-slot{min-height:0}
.turnstile-slot:empty{display:none}
.auth-submit,.account-action,.account-logout{border:0;border-bottom:1px solid currentColor;border-radius:0;padding:12px 32px 12px 0;background:transparent;text-align:left;cursor:pointer;opacity:.82}
.auth-submit{justify-self:end;min-width:170px;font-size:clamp(24px,2.5vw,40px)}
.auth-submit:hover,.auth-submit:focus-visible,.account-action:hover,.account-action:focus-visible,.account-logout:hover,.account-logout:focus-visible{opacity:1}
.auth-submit:disabled,.account-action:disabled{cursor:not-allowed;opacity:.34}
.auth-status,.account-status{min-height:1.4em;margin:0;opacity:.62;font-size:clamp(14px,1vw,17px)}
.auth-status[hidden],.account-status[hidden]{display:block;visibility:hidden}

.account-shell{display:grid;grid-template-rows:auto 1fr;gap:clamp(70px,13svh,160px)}
.account-head{display:flex;align-items:flex-start;justify-content:space-between;gap:30px}
.account-logo{width:min(36vw,520px)}
.account-logout{font-size:clamp(16px,1.4vw,24px)}
.account-body{width:min(100%,1100px);margin-left:auto;display:grid;gap:clamp(48px,7vw,90px)}
.account-surface{display:grid;gap:24px}
.account-surface[hidden]{display:none}
.account-label{margin:0;font-size:clamp(28px,4.4vw,70px);font-weight:400}
.account-action{width:min(100%,360px);font-size:clamp(20px,2vw,32px)}
.connect-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:36px}
.connect-mount{min-height:1px}
.empty-surface{margin:0;font-size:clamp(20px,2vw,32px);opacity:.56}

@media(max-width:700px){
  .auth-shell,.account-shell{padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}
  .auth-logo,.account-logo{width:min(82vw,420px)}
  .auth-form{margin-top:24svh;width:100%;gap:24px}
  .auth-field{font-size:24px;min-height:56px}
  .account-shell{gap:12svh}
  .account-head{display:grid;gap:28px}
  .account-logout{justify-self:end}
  .account-body{width:100%}
  .connect-grid{grid-template-columns:1fr}
}
@media(min-width:900px){
  .auth-shell{
    display:grid;
    grid-template-columns:minmax(280px,.9fr) minmax(420px,1.1fr);
    grid-template-rows:1fr;
    column-gap:clamp(40px,6vw,96px);
    align-items:start;
  }
  .auth-logo{
    grid-column:1;
    grid-row:1;
    width:min(100%,520px);
  }
  .auth-form{
    grid-column:2;
    grid-row:1;
    width:min(100%,620px);
    margin:clamp(110px,16svh,150px) 0 0 auto;
  }
  .account-shell{
    position:relative;
    grid-template-columns:minmax(280px,.85fr) minmax(420px,1.15fr);
    grid-template-rows:1fr;
    column-gap:clamp(40px,6vw,96px);
    align-items:start;
  }
  .account-head{
    display:block;
    grid-column:1;
    grid-row:1;
  }
  .account-logo{
    grid-column:1;
    grid-row:1;
    width:min(100%,500px);
  }
  .account-logout{
    position:absolute;
    top:max(clamp(24px,4.6vw,82px),env(safe-area-inset-top));
    right:max(clamp(24px,4.6vw,82px),env(safe-area-inset-right));
  }
  .account-body{
    grid-column:2;
    grid-row:1;
    width:100%;
    margin:clamp(110px,14svh,132px) 0 0;
    gap:clamp(30px,4svh,42px);
  }
  .account-body>#account-status[hidden]{display:none}
}
@media(prefers-reduced-motion:reduce){.portal-action,.portal-arrow{animation:none;transition:none}}
