/* Standalone administration sign-in. No storefront or workspace shell. */
html[data-app-area="admin"] body.auth-page-admin { margin:0; min-width:320px; min-height:100dvh; background:var(--admin-canvas,#fafafa); color:var(--admin-text,#171717); font:400 14px/1.5 var(--gv-font-sans); }
.auth-page-admin *, .auth-page-admin *::before, .auth-page-admin *::after { box-sizing:border-box; }
.auth-page-admin .admin-auth-layout { min-height:100dvh; display:grid; grid-template-columns:minmax(0,1fr); padding:0; }
.auth-page-admin .admin-auth-shell { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(360px,1fr); align-items:stretch; gap:0; width:100%; min-width:0; min-height:100dvh; }
.auth-page-admin .admin-auth-visual { position:relative; display:block; min-width:0; overflow:hidden; background:var(--admin-surface-muted,#f5f5f5); }
.auth-page-admin .admin-auth-visual img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.auth-page-admin .admin-auth-panel { display:grid; grid-template-columns:minmax(0,1fr); place-items:center; min-width:0; padding:48px 32px; background:var(--admin-surface,#fff); border:0; border-radius:0; }
.auth-page-admin .admin-auth-panel-inner { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; width:min(360px,100%); min-width:0; }
.auth-page-admin .admin-auth-heading { text-align:start; }
.auth-page-admin .admin-auth-heading h1 { margin:0 0 8px; font-size:24px; line-height:1.25; font-weight: 500; letter-spacing:-.02em; }
.auth-page-admin .admin-auth-heading p { margin:0; font-size:14px; color:var(--admin-text-secondary,#666); }
.auth-page-admin .admin-auth-form { display:grid; grid-template-columns:minmax(0,1fr); gap:18px; min-width:0; }
.auth-page-admin .admin-auth-field { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; min-width:0; font-size:13px; font-weight:500; }
.auth-page-admin .admin-auth-field input { width:100%; min-width:0; height:40px; padding:0 12px; border: 1px solid var(--gv-input-border); border-radius: var(--gv-radius-input); background:var(--admin-surface,#fff); color:inherit; font:400 14px var(--gv-font-sans); }
.auth-page-admin :is(input,button,a):focus-visible { outline:2px solid #2563eb; outline-offset:2px; }
.auth-page-admin :is(.admin-auth-submit,.admin-auth-passkey) { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; min-height:40px; padding: 8px 16px; border:1px solid var(--admin-primary,#171717); border-radius: var(--gv-radius-button); background:var(--admin-primary,#171717); color:var(--admin-primary-text,#fff); font:500 14px var(--gv-font-sans); cursor:pointer; touch-action:manipulation; -webkit-tap-highlight-color:transparent; }
.auth-page-admin .admin-auth-passkey { background:var(--admin-surface,#fff); color:var(--admin-text,#171717); border-color:var(--admin-border,#ddd); }
.auth-page-admin .admin-auth-passkey svg { width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:1.6; }
.auth-page-admin .admin-auth-alert { padding:12px; border:1px solid #f8b4b4; border-radius:12px; background:color-mix(in srgb,#dc2626 6%,var(--admin-surface)); color:var(--admin-red); font-size:13px; }
.auth-page-admin .admin-auth-divider { display:flex; align-items:center; gap:12px; color:var(--admin-text-secondary,#666); font-size:12px; }
.auth-page-admin .admin-auth-divider::before,.auth-page-admin .admin-auth-divider::after { content:""; flex:1; height:1px; background:var(--admin-border,#e5e5e5); }
@media(max-width:480px) { .auth-page-admin .admin-auth-panel { padding:24px; }
.auth-page-admin .admin-auth-field input { font-size:16px; } }

@media(max-width:800px) { .auth-page-admin .admin-auth-shell { grid-template-columns:minmax(0,1fr); width:100%; gap:0; } .auth-page-admin .admin-auth-visual { display:none; } }
