.auth-shell{background:var(--background);min-height:100vh;color:var(--foreground);flex-direction:column;align-items:center;gap:24px;padding:40px 24px 56px;display:flex}.auth-header{text-align:center;justify-items:center;gap:8px;display:grid}.auth-header a{border-radius:var(--radius-sm);display:inline-flex}.auth-header p{color:var(--muted-foreground);margin:0;font-size:14px}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:440px;box-shadow:var(--shadow-sm);padding:32px}.auth-card-wide{max-width:680px}.auth-heading h1,.auth-notice h1{letter-spacing:-.03em;margin:0;font-size:26px;font-weight:650;line-height:1.2}.auth-heading p{color:var(--muted-foreground);margin:8px 0 0;font-size:15px;line-height:1.55}.auth-form{gap:16px;margin-top:24px;display:grid}.auth-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.auth-grid .auth-full{grid-column:1/-1}.auth-field{align-content:start;gap:6px;min-width:0;font-size:14px;font-weight:600;display:grid}.auth-field :is(input,select){background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;min-height:48px;color:var(--foreground);padding:0 14px;font-size:16px;font-weight:400}.auth-field select{text-overflow:ellipsis}.auth-field :is(input,select):hover{border-color:#cbd0c9}.auth-field input::placeholder{color:#8a94a3}.auth-fixed{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-md);min-height:48px;color:var(--foreground);overflow-wrap:anywhere;align-items:center;padding:8px 14px;font-size:16px;font-weight:400;display:flex}.auth-field small{color:var(--muted-foreground);font-size:13px;font-weight:400;line-height:1.45}.auth-password{display:block;position:relative}.auth-password input{padding-right:52px}.auth-password button{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--muted-foreground);background:0 0;border:0;place-items:center;display:grid;position:absolute;top:2px;right:2px}.auth-password button:hover{color:var(--primary)}.auth-button{background:var(--primary);border:1px solid var(--primary);border-radius:var(--radius-md);width:100%;min-height:48px;color:var(--primary-foreground);text-align:center;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:15px;font-weight:600;transition:background-color .15s;display:inline-flex}.auth-button:hover:not(:disabled){background:var(--primary-hover)}.auth-button:disabled{opacity:.55;cursor:not-allowed}.auth-shell .auth-link{color:var(--primary);text-underline-offset:3px;font-weight:600;text-decoration:underline}.auth-shell .auth-link:hover{color:var(--sage)}.auth-forgot,.auth-alt .auth-link,button.auth-link{align-items:center;min-height:44px;display:inline-flex}.auth-forgot{justify-self:start;margin:-10px 0;font-size:14px}button.auth-link{background:0 0;border:0;padding:0;font-size:14px}.auth-actions button.auth-link{margin-bottom:-6px}.auth-alt{border-top:1px solid var(--border);color:var(--muted-foreground);text-align:center;margin:20px 0 -6px;padding-top:14px;font-size:14px;line-height:1.5}.auth-actions{justify-items:center;gap:4px;display:grid}.auth-message{border-radius:var(--radius-md);border:1px solid;gap:10px;margin:0;padding:12px 14px;font-size:14px;line-height:1.5;display:flex}.auth-message svg{flex:none;margin-top:1px}.auth-heading+.auth-message{margin-top:20px}.auth-error{background:var(--danger-subtle);color:var(--danger);border-color:#f3cdd2}.auth-success{background:var(--sage-subtle);border-color:var(--sage-soft);color:var(--success)}.auth-info{background:var(--surface-muted);border-color:var(--border);color:var(--foreground)}.auth-info svg{color:var(--sage)}.auth-loading{color:var(--muted-foreground);text-align:center;margin:0;padding:24px 0;font-size:15px}.auth-notice{text-align:center}.auth-notice-mark{background:var(--sage-subtle);width:52px;height:52px;color:var(--sage);border-radius:50%;place-items:center;margin:0 auto 16px;display:grid}.auth-notice-copy{color:var(--muted-foreground);margin:10px 0 24px;font-size:15px;line-height:1.6}.auth-notice-copy p{margin:0}.auth-notice-copy p+p{margin-top:8px}.auth-note{color:var(--muted-foreground);text-align:center;margin:0;font-size:13px;line-height:1.5}@media (max-width:600px){.auth-shell{gap:16px;padding:20px 16px 40px}.auth-header p{font-size:13px}.auth-card{padding:24px 20px}.auth-heading h1,.auth-notice h1{font-size:23px}.auth-form{margin-top:20px}.auth-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:360px){.auth-shell{padding:16px 10px 32px}.auth-card{padding:24px 16px}.auth-field select{padding:0 4px 0 10px}}.auth-google{gap:12px;margin:24px 0 4px;display:grid}.auth-message+.auth-google{margin-top:16px}.auth-google-button{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;min-height:48px;color:var(--foreground);justify-content:center;align-items:center;gap:10px;padding:12px 20px;font-size:15px;font-weight:600;transition:background-color .15s;display:inline-flex}.auth-google-button:hover:not(:disabled){background:var(--surface-muted)}.auth-google-button:disabled{opacity:.55;cursor:not-allowed}.auth-google-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.auth-google-note{color:var(--muted-foreground);text-align:center;margin:-4px 0 0;font-size:13px;line-height:1.45}.auth-divider{color:var(--muted-foreground);align-items:center;gap:12px;margin:4px 0 8px;font-size:13px;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-top:1px solid var(--border);flex:1}
