.auth-shell{background:var(--cream);min-height:100vh;display:grid}.auth-story,.auth-panel{padding:var(--s-5)}.auth-story{color:var(--on-plum);background:var(--plum-deep);display:none}.auth-story__back,.auth-story__promise,.auth-privacy{align-items:center;display:flex}.auth-story__back{gap:var(--s-2);width:fit-content;color:var(--on-plum);font-weight:700;text-decoration:none}.auth-story__back svg,.auth-story__promise svg,.auth-privacy svg{width:var(--s-5);height:var(--s-5);flex:none}.auth-story__copy{max-width:36rem;margin:auto 0}.auth-story__copy h1{margin:var(--s-3) 0 var(--s-5);font-family:var(--font-display);font-size:var(--type-display);letter-spacing:var(--track-display);line-height:.96}.auth-story__copy>p:last-child{max-width:32rem;color:var(--on-plum-mute);font-size:var(--type-body);margin:0}.auth-story__promise{gap:var(--s-3);padding-top:var(--s-5);border-top:1px solid var(--on-plum-mute)}.auth-story__promise div{gap:var(--s-1);display:grid}.auth-story__promise span{color:var(--on-plum-mute)}.auth-panel{width:min(34rem,100%);margin:auto}.auth-panel__brand{margin-bottom:var(--s-8);font-family:var(--font-display);font-size:var(--type-section);letter-spacing:var(--track-display);font-weight:800}.auth-eyebrow{color:var(--beet);font-family:var(--font-mono);font-size:var(--type-meta);letter-spacing:.12em;text-transform:uppercase;margin:0;font-weight:700}.auth-panel__heading h2{margin:var(--s-2) 0;font-family:var(--font-display);font-size:var(--type-page);letter-spacing:var(--track-display);line-height:1}.auth-panel__heading>p:last-child{margin:0 0 var(--s-6);color:var(--mute);font-size:var(--type-body)}.auth-message{margin:0 0 var(--s-4);padding:var(--s-3) var(--s-4);border-radius:var(--r-card-sm);background:var(--ok-soft);color:var(--ok);font-weight:700}.auth-message--error{color:var(--miss);background:var(--miss-soft)}.auth-google{justify-content:center;align-items:center;gap:var(--s-3);width:100%;min-height:3.5rem;padding:var(--s-3) var(--s-5);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--card);color:var(--ink);cursor:pointer;transition:border-color var(--t-snap), box-shadow var(--t-snap), transform var(--t-snap);font-weight:800;display:flex}.auth-google:hover:not(:disabled),.auth-google:focus-visible{border-color:var(--beet);box-shadow:var(--shadow-card);transform:translateY(-1px)}.auth-google:disabled{cursor:wait;opacity:.7}.auth-google svg{width:var(--s-5);height:var(--s-5)}.auth-social-error{margin:var(--s-3) 0 0;color:var(--miss);font-size:var(--type-meta);text-align:center;font-weight:700}.auth-divider{align-items:center;gap:var(--s-3);margin:var(--s-5) 0;color:var(--mute);font-size:var(--type-meta);display:flex}.auth-divider:before,.auth-divider:after{background:var(--line);content:"";flex:1;height:1px}.auth-divider span{flex:none}.auth-form{gap:var(--s-4);display:grid}.auth-form label{gap:var(--s-2);color:var(--ink);font-weight:700;display:grid}.auth-form input{width:100%;padding:var(--s-4);border:1px solid var(--line);border-radius:var(--r-card-sm);background:var(--card);color:var(--ink);font-size:var(--type-body);transition:border-color var(--t-snap), box-shadow var(--t-snap);outline:none}.auth-form input:focus{border-color:var(--papaya);box-shadow:var(--shadow-card)}.auth-submit{min-height:3.5rem;margin-top:var(--s-2);padding:var(--s-3) var(--s-5);border-radius:var(--r-pill);background:var(--papaya);color:var(--ink);cursor:pointer;transition:background var(--t-snap), transform var(--t-snap);border:0;font-weight:800}.auth-submit:hover{background:var(--papaya-deep);transform:translateY(-1px)}.auth-switch{margin:var(--s-5) 0;color:var(--mute);text-align:center}.auth-switch a{color:var(--beet);font-weight:800}.auth-privacy{justify-content:center;gap:var(--s-2);color:var(--mute);font-size:var(--type-meta);text-align:center;margin:0}@media (min-width:768px){.auth-shell{grid-template-columns:minmax(22rem,.9fr) minmax(30rem,1.1fr)}.auth-story{min-height:100vh;padding:var(--s-6);flex-direction:column;display:flex}.auth-panel{padding:var(--s-8)}}@media (min-width:1200px){.auth-story{padding:var(--s-8)}}
