.app-card[data-v-639f5d46]{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%}.padding-none[data-v-639f5d46]{padding:0}.padding-sm[data-v-639f5d46]{padding:var(--space-sm)}.padding-md[data-v-639f5d46]{padding:var(--space-md)}.padding-lg[data-v-639f5d46]{padding:var(--space-xl)}@media(max-width:480px){.padding-lg[data-v-639f5d46]{padding:var(--space-lg)}}.auth-layout[data-v-5188fba0]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:var(--space-md);background-color:var(--color-bg)}.auth-container[data-v-5188fba0]{width:100%;max-width:440px;display:flex;flex-direction:column;gap:var(--space-lg);margin:auto}.society-header[data-v-5188fba0]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-xs)}.society-logo-wrapper[data-v-5188fba0]{max-height:52px;margin-bottom:var(--space-3xs)}.society-logo[data-v-5188fba0]{max-height:52px;width:auto;object-fit:contain}.society-title[data-v-5188fba0]{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:-.01em;line-height:var(--line-height-tight)}.auth-subtitle[data-v-5188fba0]{font-size:var(--font-size-xs);color:var(--color-text-muted)}.auth-footer[data-v-5188fba0]{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-sm);padding:0 var(--space-sm)}.security-note[data-v-5188fba0]{font-size:11px;color:var(--color-text-subtle);line-height:var(--line-height-base)}.cancel-btn[data-v-5188fba0]{font-size:var(--font-size-xs);color:var(--color-text-muted);text-decoration:underline;cursor:pointer;padding:var(--space-3xs) var(--space-xs)}.cancel-btn[data-v-5188fba0]:hover{color:var(--color-text)}.app-button[data-v-61975993]{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);font-family:inherit;font-weight:var(--font-weight-medium);text-decoration:none;border-radius:var(--radius-sm);border:1px solid transparent;-webkit-user-select:none;user-select:none;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}.app-button[data-v-61975993]:active:not(:disabled){opacity:.82;transform:translateY(1px)}@media(hover:hover){.app-button[data-v-61975993]:hover:not(:disabled){opacity:.94}}.btn-sm[data-v-61975993]{height:var(--control-height-sm);padding:0 var(--space-md);font-size:var(--font-size-sm)}.btn-md[data-v-61975993]{min-height:var(--control-height-md);padding:0 var(--space-lg);font-size:var(--font-size-base)}.btn-lg[data-v-61975993]{min-height:var(--control-height-lg);padding:0 var(--space-xl);font-size:var(--font-size-md)}.btn-full-width[data-v-61975993]{width:100%}.btn-primary[data-v-61975993]{background-color:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.btn-secondary[data-v-61975993]{background-color:var(--color-secondary);color:var(--color-on-secondary);border-color:var(--color-secondary)}.btn-outline[data-v-61975993]{background-color:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong)}.btn-ghost[data-v-61975993]{background-color:transparent;color:var(--color-text);border-color:transparent}.btn-danger[data-v-61975993]{background-color:var(--color-error);color:var(--color-on-error);border-color:var(--color-error)}.btn-disabled[data-v-61975993]{opacity:.45!important;cursor:not-allowed;pointer-events:none}.btn-content[data-v-61975993]{display:inline-flex;align-items:center;gap:var(--space-sm)}.btn-spinner[data-v-61975993]{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin-61975993 .6s linear infinite}@keyframes spin-61975993{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app-icon[data-v-2a0f92e5]{display:inline-block;vertical-align:middle;flex-shrink:0}.app-field[data-v-ee539bea]{display:flex;flex-direction:column;gap:var(--space-2xs);width:100%}.field-label[data-v-ee539bea]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);line-height:var(--line-height-tight)}.field-required[data-v-ee539bea]{color:var(--color-error);margin-left:var(--space-3xs)}.field-input-wrapper[data-v-ee539bea]{display:flex;align-items:center;position:relative;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:var(--control-height-md);transition:border-color var(--transition-fast)}.field-input[data-v-ee539bea]{flex:1;width:100%;height:100%;min-height:var(--control-height-md);padding:0 var(--space-md);font-size:var(--font-size-input);line-height:var(--line-height-base);color:var(--color-text);background:transparent;border:none;outline:none}.field-input[data-v-ee539bea]::placeholder{color:var(--color-text-subtle)}.field-input-wrapper[data-v-ee539bea]:focus-within{border-color:var(--color-border-strong)}.has-error .field-input-wrapper[data-v-ee539bea]{border-color:var(--color-error)}.is-disabled[data-v-ee539bea]{opacity:.5;cursor:not-allowed}.field-affix[data-v-ee539bea]{display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-muted);padding:0 var(--space-sm)}.toggle-password-btn[data-v-ee539bea]{display:inline-flex;align-items:center;justify-content:center;padding:0 var(--space-sm);color:var(--color-text-muted);cursor:pointer}.toggle-password-btn[data-v-ee539bea]:hover{color:var(--color-text)}.field-message[data-v-ee539bea]{font-size:var(--font-size-xs);line-height:var(--line-height-tight)}.error-message[data-v-ee539bea]{color:var(--color-error)}.auth-view[data-v-020f421a]{display:flex;flex-direction:column;gap:var(--space-lg);width:100%}.google-btn[data-v-020f421a]{background-color:var(--color-white);border-color:var(--color-border-strong);font-weight:var(--font-weight-medium)}.form-divider[data-v-020f421a]{display:flex;align-items:center;text-align:center;color:var(--color-text-subtle);font-size:var(--font-size-xs);margin:var(--space-2xs) 0}.form-divider[data-v-020f421a]:before,.form-divider[data-v-020f421a]:after{content:"";flex:1;border-bottom:1px solid var(--color-border)}.form-divider span[data-v-020f421a]{padding:0 var(--space-sm);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.auth-form[data-v-020f421a]{display:flex;flex-direction:column;gap:var(--space-md)}.password-field-group[data-v-020f421a]{display:flex;flex-direction:column;gap:var(--space-2xs)}.password-header[data-v-020f421a]{display:flex;align-items:center;justify-content:space-between}.field-label[data-v-020f421a]{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.forgot-link[data-v-020f421a]{font-size:var(--font-size-xs);color:var(--color-text-muted);text-decoration:underline;cursor:pointer}.forgot-link[data-v-020f421a]:hover{color:var(--color-text)}.error-banner[data-v-020f421a]{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);background-color:var(--color-error-surface);border:1px solid var(--color-error-border);color:var(--color-error);font-size:var(--font-size-sm)}.auth-config-alert[data-v-020f421a]{display:flex;align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background-color:var(--color-warning-surface);border:1px solid var(--color-warning-border);font-size:var(--font-size-xs);color:var(--color-text)}.alert-content p[data-v-020f421a]{margin-top:2px;color:var(--color-text-muted)}.auth-success-banner[data-v-020f421a]{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-sm);padding:var(--space-2xl) var(--space-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}.existing-session-card[data-v-020f421a]{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md);background-color:var(--color-surface-subtle);border:1px solid var(--color-border)}.existing-user-meta[data-v-020f421a]{display:flex;align-items:center;gap:var(--space-sm)}.user-avatar[data-v-020f421a]{width:42px;height:42px;border-radius:var(--radius-full);background-color:var(--color-surface-muted);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.user-avatar img[data-v-020f421a]{width:100%;height:100%;object-fit:cover}.user-details[data-v-020f421a]{display:flex;flex-direction:column;min-width:0}.user-name[data-v-020f421a]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email[data-v-020f421a]{font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.switch-link[data-v-020f421a]{font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center;text-decoration:underline;cursor:pointer;margin-top:var(--space-2xs)}.switch-link[data-v-020f421a]:hover{color:var(--color-text)}.footer-links[data-v-020f421a]{display:flex;align-items:center;justify-content:center;gap:var(--space-2xs);font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--space-xs)}.create-account-link[data-v-020f421a]{font-weight:var(--font-weight-semibold);color:var(--color-text);text-decoration:underline;cursor:pointer}:root{--color-black: #000000;--color-white: #ffffff;--color-gray-50: #fbfbfb;--color-gray-100: #f6f6f6;--color-gray-200: #eeeeee;--color-gray-300: #dddddd;--color-gray-400: #8c8f94;--color-gray-500: #666666;--color-gray-600: #444444;--color-gray-700: #313131;--color-gray-800: #222222;--color-gray-900: #111111;--color-primary: #000000;--color-on-primary: #ffffff;--color-secondary: #222222;--color-on-secondary: #ffffff;--color-bg: #f6f6f6;--color-surface: #ffffff;--color-surface-subtle: #f6f6f6;--color-surface-muted: #eeeeee;--color-text: #111111;--color-text-muted: #555555;--color-text-subtle: #8c8f94;--color-text-inverted: #ffffff;--color-border: #dddddd;--color-border-subtle: #eeeeee;--color-border-strong: #000000;--color-error: #cf2e2e;--color-on-error: #ffffff;--color-error-surface: #fef2f2;--color-error-border: #fca5a5;--color-success: #15803d;--color-on-success: #ffffff;--color-success-surface: #f0fdf4;--color-success-border: #86efac;--space-3xs: 2px;--space-2xs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 20px;--space-xl: 24px;--space-2xl: 32px;--touch-target-min: 44px;--control-height-sm: 36px;--control-height-md: 44px;--control-height-lg: 50px;--radius-none: 0px;--radius-sm: 0px;--radius-md: 0px;--radius-lg: 2px;--radius-full: 9999px;--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-input: 16px;--font-size-md: 18px;--font-size-lg: 20px;--font-size-xl: 24px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-base: 1.5;--transition-fast: .12s ease;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text);background-color:var(--color-bg);-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body{margin:0;padding:0;min-height:100vh;min-height:-webkit-fill-available;background-color:var(--color-bg);color:var(--color-text);display:flex;flex-direction:column}#app{min-height:100vh;display:flex;flex-direction:column}img,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer}a{color:inherit;text-decoration:none}.touch-target{min-height:var(--touch-target-min);min-width:var(--touch-target-min);display:inline-flex;align-items:center;justify-content:center}.interactive{-webkit-user-select:none;user-select:none;transition:opacity var(--transition-fast)}.interactive:active{opacity:.82}@media(hover:hover){.interactive:hover{opacity:.92}}
