.login-page{--login-scene-base:var(--wash);isolation:isolate;background:var(--login-scene-base);min-height:100dvh;color:var(--ink-strong);grid-template-rows:auto minmax(0,1fr);display:grid;position:relative;overflow-x:clip}.login-page:before,.login-page:after{content:"";pointer-events:none;position:absolute;inset:0}.login-page:before{z-index:-2;filter:contrast(.92);opacity:.36;background-image:url(/images/login-landscape-final.webp);background-position:-24px bottom;background-repeat:no-repeat;background-size:auto 100%}.login-page:after{z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--wash) 38%,transparent) 0%,color-mix(in srgb,var(--paper) 52%,transparent) 43%,color-mix(in srgb,var(--paper) 90%,transparent) 68%,var(--paper) 100%)}.login-header{justify-content:flex-start;align-items:center;gap:var(--space-4);min-height:104px;padding-inline:clamp(var(--space-4),4vw,var(--space-8));color:var(--ink-strong);background:0 0;display:flex}.login-brand{align-items:center;gap:var(--space-3);min-width:0;color:var(--ink-strong);display:flex}.login-mark{object-fit:contain;flex:none;width:88px;height:88px}.login-studio{grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.login-context{justify-content:center;gap:var(--space-10);min-width:0;padding:clamp(var(--space-8),8vw,var(--space-16)) clamp(var(--space-4),6vw,var(--space-12));color:var(--ink-strong);background:0 0;flex-direction:column;display:flex}.login-context h1{overflow-wrap:anywhere;min-width:0;max-width:12ch;font-family:var(--font-display);letter-spacing:-.06em;margin:0;font-size:clamp(38px,7vw,58px);font-style:normal;font-weight:520;line-height:1.02}.login-context>div>p{max-width:45ch;margin:var(--space-5) 0 0;color:var(--ink-secondary);font-size:var(--text-readable);line-height:1.6}.login-access{min-width:0;padding:clamp(var(--space-8),8vw,var(--space-16)) clamp(var(--space-4),6vw,var(--space-12));color:var(--ink-strong);background:0 0;align-items:center;display:grid}.login-access-inner{width:min(100%,420px);margin-inline:auto}.login-copy{margin:0 0 var(--space-8)}.login-copy h2{font-family:var(--font-display);font-size:var(--text-section);letter-spacing:-.04em;margin:0;font-style:normal;font-weight:650;line-height:1.15}.login-copy p{margin:var(--space-2) 0 0;color:var(--ink-secondary);font-size:var(--text-readable);line-height:1.5}.login-form{gap:var(--space-2);grid-template-columns:minmax(0,1fr);display:grid}.login-form label{margin-top:var(--space-3);color:var(--ink-secondary);font-size:var(--text-caption);font-weight:600;line-height:1.4}.login-input{align-items:center;gap:var(--space-3);min-width:0;height:48px;padding-inline:var(--space-3) var(--space-1);border:1px solid var(--rule-soft);border-radius:var(--radius-md);outline-offset:1px;background:var(--surface-elevated);color:var(--ink-secondary);transition:background-color var(--dur-micro) var(--ease-out),border-color var(--dur-micro) var(--ease-out);outline:2px solid #0000;display:flex}.login-input:focus-within{border-color:var(--ink-muted);outline-color:var(--ink-strong)}.login-input.is-error{border-color:var(--status-error-ink)}.login-input input{min-width:0;height:100%;color:var(--ink-strong);font-size:var(--text-control);background:0 0;border:0;outline:0;flex:1}.login-input input::placeholder{color:var(--ink-secondary)}.login-input button{border-radius:var(--radius-sm);outline-offset:1px;width:44px;height:44px;color:var(--ink-secondary);cursor:pointer;transition:background-color var(--dur-micro) var(--ease-out),color var(--dur-micro) var(--ease-out),transform var(--dur-micro) var(--ease-out);background:0 0;border:0;outline:2px solid #0000;flex:none;place-items:center;display:grid}.login-input button:focus-visible{outline-color:var(--ink-strong)}.login-input button:active{transform:translateY(1px)}.login-feedback{min-height:1.5em;margin:var(--space-1) 0 0;color:#0000;font-size:var(--text-caption);line-height:1.5}.login-feedback.is-error{color:var(--status-error-ink)}.login-submit{justify-content:center;align-items:center;gap:var(--space-2);width:100%;min-height:48px;margin-top:var(--space-2);padding-inline:var(--space-4);border:1px solid var(--ink-strong);border-radius:var(--radius-md);outline-offset:2px;background:var(--ink-strong);color:var(--surface-elevated);cursor:pointer;font-size:var(--text-control);white-space:nowrap;transition:background-color var(--dur-micro) var(--ease-out),transform var(--dur-micro) var(--ease-out);outline:2px solid #0000;font-weight:650;line-height:1;display:inline-flex}.login-submit:focus-visible{outline-color:var(--ink-muted)}.login-submit:active{transform:translateY(1px)}.login-submit:disabled{cursor:not-allowed;opacity:.55}@media (hover:hover) and (pointer:fine){.login-input:hover{background:var(--surface-soft)}.login-input button:hover{background:var(--surface-selected);color:var(--ink-strong)}.login-submit:hover:not(:disabled){background:var(--button-hover);transform:translateY(-1px)}}@media (min-width:52rem){.login-studio{grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr)}.login-context{padding-block-start:var(--space-8);padding-block-end:clamp(var(--space-16),22vh,240px)}.login-context h1{font-size:clamp(48px,5vw,68px)}}@media (max-width:30rem){.login-page:before{opacity:.18;background-position:-18px bottom;background-size:auto 72%}.login-page:after{background:color-mix(in srgb,var(--paper) 80%,transparent)}}@media (prefers-reduced-motion:reduce){.login-input,.login-input button,.login-submit{transition:none}.login-input button:active,.login-submit:active,.login-submit:hover:not(:disabled){transform:none}}
