#main-content{background:var(--gc-surface);color:var(--gc-text);font-family:var(--gc-font);font-size:var(--gc-size-3);line-height:var(--gc-leading-prose)}#main-content :is(a,button,input,textarea,select,summary):focus-visible{outline:var(--gc-focus-width) solid var(--gc-focus);outline-offset:var(--gc-focus-offset)}[hidden]{display:none!important}body.auth-layout{background:var(--gc-surface);min-height:100vh}.auth-layout-header{border-bottom:1px solid var(--gc-rule);background:var(--gc-surface)}.auth-layout-header-inner{justify-content:space-between;align-items:center;gap:var(--gc-space-3);width:min(520px, calc(100% - var(--gc-gutter)));padding:var(--gc-space-5) 0;flex-wrap:wrap;margin:0 auto;display:flex}.auth-layout-brand{color:var(--gc-text);font-family:var(--gc-font-display);font-size:var(--gc-size-5);font-weight:var(--gc-weight-display);letter-spacing:var(--gc-tracking-snug);flex:none;text-decoration:none}.auth-layout-tools{justify-content:flex-end;align-items:center;gap:var(--gc-space-3);flex-wrap:wrap;min-width:0;display:flex}.auth-layout-links{align-items:center;gap:var(--gc-space-1) var(--gc-space-3);flex-wrap:wrap;display:flex}.auth-layout-links a{min-height:var(--gc-target-min);color:var(--gc-text-2);font-size:var(--gc-size-2);font-weight:var(--gc-weight-medium);align-items:center;text-decoration:none;display:inline-flex}.auth-layout-links a:hover{color:var(--gc-text);text-decoration:underline}.auth-layout-theme{min-height:var(--gc-target-min);padding:0 var(--gc-space-3);border:1px solid var(--gc-rule);border-radius:var(--gc-radius);background:var(--gc-surface);color:var(--gc-text);font:inherit;font-size:var(--gc-size-2);font-weight:var(--gc-weight-strong);cursor:pointer;justify-content:center;align-items:center;display:none}.auth-layout-theme:not([hidden]){display:inline-flex}.auth-layout-theme:hover{border-color:var(--gc-accent);color:var(--gc-accent)}.auth-layout-header :is(a,button):focus-visible{outline:var(--gc-focus-width) solid var(--gc-focus);outline-offset:var(--gc-focus-offset)}.auth-layout-footer{width:min(520px, calc(100% - var(--gc-gutter)));padding:var(--gc-space-4) 0 var(--gc-space-6);border-top:1px solid var(--gc-rule);justify-content:center;margin:0 auto;display:flex}.auth-layout-footer :is(a,button):focus-visible{outline:var(--gc-focus-width) solid var(--gc-focus);outline-offset:var(--gc-focus-offset)}.auth-shell{gap:var(--gc-space-6);width:min(520px, calc(100% - var(--gc-gutter)));padding:var(--gc-space-12) 0 var(--gc-space-13);margin-inline:auto;display:grid}.auth-shell h1{font-family:var(--gc-font-display);font-size:var(--gc-size-8);font-weight:var(--gc-weight-display);letter-spacing:var(--gc-tracking-display);line-height:var(--gc-leading-display);text-wrap:balance;margin:0}.lead{color:var(--gc-text-2);font-size:var(--gc-size-4);line-height:var(--gc-leading-body);text-wrap:pretty;margin:0}.context-card,.auth-context{gap:var(--gc-space-2);min-width:0;padding:var(--gc-space-5);border:1px solid var(--gc-border);border-radius:var(--gc-radius);background:var(--gc-surface-sunken);overflow-wrap:anywhere;display:grid}.context-card h2,.auth-context h2,.auth-context h3{font-size:var(--gc-size-4);line-height:var(--gc-leading-snug);margin:0}.context-card p{justify-content:space-between;gap:var(--gc-space-4);font-size:var(--gc-size-2);margin:0;display:flex}.auth-context p,.auth-context ul{margin:0}.auth-context ul{gap:var(--gc-space-2);padding-inline-start:var(--gc-space-5);display:grid}.field-label{color:var(--gc-text-3);font-size:var(--gc-size-1);font-weight:var(--gc-weight-strong)}.auth-entry,.auth-methods,.auth-method,.auth-state,.auth-success{gap:var(--gc-space-4);min-width:0;display:grid}.auth-methods{border:0;margin:0;padding:0}.auth-methods>legend{color:var(--gc-text-3);font-size:var(--gc-size-2);font-weight:var(--gc-weight-strong);padding:0}.auth-divider,.auth-method-separator{align-items:center;gap:var(--gc-space-3);color:var(--gc-text-3);font-size:var(--gc-size-2);font-weight:var(--gc-weight-strong);text-align:center;margin:0;display:flex}.auth-divider:before,.auth-divider:after,.auth-method-separator:before,.auth-method-separator:after{content:"";border-top:1px solid var(--gc-border);flex:1}.auth-divider span{white-space:nowrap}form{gap:var(--gc-space-2);display:grid}form label{font-size:var(--gc-size-2);font-weight:var(--gc-weight-strong)}form input+label{margin-top:var(--gc-space-4)}form input{width:100%;min-height:var(--gc-control-h);border:1px solid var(--gc-border);border-radius:var(--gc-radius);background:var(--gc-surface);color:var(--gc-text);font:inherit;font-size:var(--gc-size-3);padding:0 14px}form input[aria-invalid=true]{border-color:var(--gc-danger)}form input:focus{border-color:var(--gc-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--gc-accent) 25%, transparent);outline:none}.password-control,.password-field{min-width:0;position:relative}.password-control input,.password-field input{padding-inline-end:124px}.password-toggle{min-width:96px;min-height:var(--gc-target-min);padding:0 var(--gc-space-2);border-radius:var(--gc-radius-sm);color:var(--gc-link);font:inherit;font-size:var(--gc-size-2);font-weight:var(--gc-weight-strong);white-space:nowrap;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex;position:absolute;inset-block-start:50%;inset-inline-end:4px;transform:translateY(-50%)}.password-toggle:hover{color:var(--gc-link-hover);text-decoration:underline}.hint{color:var(--gc-text-3);font-size:var(--gc-size-2);margin:0}.status{min-height:1.3em;color:var(--gc-text-2);font-size:var(--gc-size-2);margin:0}.form-error{min-height:1.3em;color:var(--gc-danger);font-size:var(--gc-size-2);font-weight:var(--gc-weight-strong);margin:0}.form-error a{color:inherit}.auth-feedback{padding:var(--gc-space-3) var(--gc-space-4);border:1px solid var(--gc-border);background:var(--gc-surface-sunken);color:var(--gc-text-2);font-size:var(--gc-size-3);line-height:var(--gc-leading-body);overflow-wrap:anywhere;margin:0}.auth-feedback[data-tone=error]{border-color:var(--gc-danger);color:var(--gc-danger)}.auth-feedback[data-tone=success]{border-color:var(--gc-accent);color:var(--gc-text)}.auth-feedback a{color:inherit}.btn{width:100%;min-height:var(--gc-control-h);border:1px solid var(--gc-accent-strong);border-radius:var(--gc-radius);background:var(--gc-accent-strong);color:var(--gc-surface);font:inherit;font-size:var(--gc-size-2);font-weight:var(--gc-weight-strong);cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:0 24px;text-decoration:none;display:inline-flex}.btn:hover{background:var(--gc-accent-strong-hover);border-color:var(--gc-accent-strong-hover);color:var(--gc-surface)}.btn:disabled,.btn[aria-busy=true]{cursor:progress;opacity:.62}.btn-secondary{border-color:var(--gc-border);background:var(--gc-surface);color:var(--gc-text)}.btn-secondary:hover{border-color:var(--gc-text-3);background:var(--gc-surface-sunken);color:var(--gc-text)}.auth-state,.auth-success{padding:var(--gc-space-5);border:1px solid var(--gc-border);border-radius:var(--gc-radius);background:var(--gc-surface-raised)}.auth-state h2,.auth-success h2{font-family:var(--gc-font-display);font-size:var(--gc-size-6);line-height:var(--gc-leading-head);letter-spacing:var(--gc-tracking-head);margin:0}.auth-state p,.auth-success p{font-size:var(--gc-size-3);line-height:var(--gc-leading-body);margin:0}.auth-state[data-tone=success],.auth-success[data-tone=success]{border-color:var(--gc-accent)}.auth-shell>p{margin:0}.text-link{min-height:var(--gc-target-min);color:var(--gc-text);font-size:var(--gc-size-2);font-weight:var(--gc-weight-strong);text-underline-offset:3px;align-items:center;gap:8px;text-decoration:none;display:inline-flex}.text-link:hover{color:var(--gc-accent);text-decoration:underline}.auth-signed-in{display:none}html[data-auth=in] .auth-signed-in{padding:var(--gc-space-4);border:1px solid var(--gc-border);background:var(--gc-surface-sunken);color:var(--gc-text-2);font-size:var(--gc-size-3);line-height:var(--gc-leading-body);margin:0;display:block}@media (max-width:640px){.auth-shell{padding:var(--gc-space-9) 0 var(--gc-space-11)}.context-card p{gap:var(--gc-space-1);flex-direction:column}}@media (max-width:500px){.auth-layout-header-inner{align-items:flex-start}.auth-layout-links{gap:var(--gc-space-1) var(--gc-space-2)}}
