.auth-page{margin:0;min-height:100dvh;background:var(--ui-bg);color:var(--ui-text);font-family:var(--font-body,Arial,sans-serif);--ui-border:var(--ui-divider)}
.auth-page *{box-sizing:border-box}
.auth-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 32px;border-bottom:1px solid var(--ui-border);background:var(--ui-surface)}
.auth-header .brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:24px;font-weight:700;color:var(--ui-text)}
.auth-header-settings{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
.auth-main{max-width:580px;margin:48px auto;padding:0 20px 48px}.auth-main.wide{max-width:860px}
.auth-card{background:var(--ui-surface);border:1px solid var(--ui-border);border-top:3px solid #f5cb4f;border-radius:16px;padding:28px}
.auth-card h1{font-size:30px;line-height:1.2;margin:0 0 12px}.auth-card p{line-height:1.6}.auth-card a{color:var(--ui-link)}
.auth-access{display:grid;gap:16px}.auth-access form,.auth-form{display:grid;gap:14px}.auth-access label,.auth-form label{display:grid;gap:8px;font-weight:600}
.auth-access input,.auth-access select,.auth-form input,.auth-form select{width:100%;min-width:0;min-height:48px;font-size:16px}
.auth-access button,.auth-form button{min-height:48px;width:100%}.auth-provider-list{display:grid;gap:12px}
html[data-ui] body button.auth-provider{display:flex!important;align-items:center;justify-content:center;gap:12px;min-height:48px!important;width:100%;border:1px solid #747775!important;border-radius:8px!important;font:500 14px/1.4 Arial,sans-serif!important;letter-spacing:.25px!important;background:#fff!important;color:#1f1f1f!important;box-shadow:none!important;padding:12px 16px!important;text-transform:none!important}
html[data-ui] body button.auth-provider.github{background:#24292f!important;border-color:#8c959f!important;color:#fff!important}
.auth-provider img{width:20px;height:20px;object-fit:contain}.auth-provider:focus-visible{outline:3px solid var(--ui-focus)!important;outline-offset:3px}
.auth-provider:disabled{opacity:.55;cursor:wait}.auth-divider{text-align:center;color:var(--ui-text-muted);font-size:14px}.auth-status{min-height:24px;overflow-wrap:anywhere;line-height:1.5}.auth-status[data-error=true]{color:var(--ui-danger,#b52530)}
.auth-note{padding:12px 16px;background:var(--ui-surface-raised,var(--ui-bg));border:1px solid var(--ui-border);border-radius:8px;font-size:14px;line-height:1.6}
.auth-method{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--ui-border);padding:18px 0}.auth-method p{margin:4px 0}
.auth-check{display:flex!important;align-items:flex-start;gap:12px!important;font-size:14px;font-weight:400!important}.auth-check input{width:20px!important;min-height:20px!important;flex-shrink:0}
.auth-footer{display:flex;flex-wrap:wrap;gap:18px;margin-top:24px}.auth-footer a{min-height:44px;display:flex;align-items:center}
.auth-access [hidden],.auth-card [hidden]{display:none!important}
@media(max-width:600px){.auth-header{padding:16px;align-items:flex-start;flex-wrap:wrap}.auth-header-settings{gap:10px}.auth-main{margin:24px auto;padding:0 14px 32px}.auth-card{padding:20px}.auth-card h1{font-size:26px}.auth-method{align-items:flex-start;flex-direction:column}.auth-method button{width:100%;min-height:48px}}

.auth-page button:not(.auth-provider){background:var(--ui-action);color:var(--ui-on-action);border:1px solid var(--ui-action);padding:12px 18px;cursor:pointer;font-size:15px;font-weight:600}
.auth-page button.secondary{background:var(--ui-surface);color:var(--ui-link);border-color:var(--ui-control-border)}
.auth-page .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-access>.auth-divider{margin:0}
.auth-status:empty{display:none}
.auth-header-settings>label{display:flex;align-items:center;gap:8px}
@media(max-width:760px),(pointer:coarse){.auth-access>a{display:flex;align-items:center;min-height:44px}}
