.login-modal{position:fixed;inset:0;margin:auto;padding:0;border:1px solid var(--app-border, #D8E2DB);border-radius:var(--radius-modal, 24px);width:min(960px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);overflow:auto;background:var(--app-surface, #FFFFFF);color:var(--app-text, #172B30);box-shadow:0 28px 90px #172b3038;font-family:inherit}.login-modal[open]{display:grid;grid-template-columns:1fr 1fr}.login-modal::backdrop{background:#0f172a80;backdrop-filter:blur(5px)}.login-modal-close{position:absolute;top:16px;right:16px;z-index:2;display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;border:1px solid var(--app-border, #D8E2DB);border-radius:50%;background:var(--app-surface, #FFFFFF);color:var(--app-text, #172B30);cursor:pointer}.login-modal-form{min-height:520px;display:flex;flex-direction:column;padding:40px}.login-modal-brand{display:flex;align-items:center;gap:12px;color:var(--app-accent-text, #1D4ED8);font-size:var(--type-section);font-weight:700}.login-modal-brand img{width:34px;height:34px;-o-object-fit:contain;object-fit:contain}.login-modal-content{margin:auto 0;padding:36px 0;text-align:center}.login-modal-content h2{margin:0 0 12px;font-size:25px;font-weight:400;line-height:1.45;color:var(--app-text, #172B30)}.login-modal-content h2 strong{font-weight:750}.login-modal-content p{margin:0 0 24px;font-size:var(--type-label);line-height:1.65;color:var(--app-text-secondary, #52656A)}.login-modal-methods{display:flex;flex-direction:column;gap:12px}.login-modal-google{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;padding:12px 18px;border:1px solid var(--app-border, #D8E2DB);border-radius:14px;background:var(--app-surface, #FFFFFF);color:var(--app-text, #172B30);font:inherit;font-size:var(--type-label);font-weight:600;cursor:pointer;box-shadow:0 1px 2px #172b300a;transition:background .15s,border-color .15s,box-shadow .15s}.login-modal-google:hover{background:var(--app-surface-soft, #F5F2E6);border-color:var(--app-border-strong, #BCCBC1);box-shadow:0 2px 6px #172b3014}.login-modal-email{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:12px 18px;border:1px solid var(--app-primary, #2563EB);border-radius:14px;background:var(--app-primary, #2563EB);color:var(--app-primary-text, #FFFFFF);font:inherit;font-size:var(--type-label);font-weight:600;cursor:pointer;box-shadow:0 4px 12px #2563eb38;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s}.login-modal-email:hover{background:var(--app-primary-hover, #1D4ED8);border-color:var(--app-primary-hover, #1D4ED8);box-shadow:0 6px 16px #2563eb4d}.login-modal-email-main{display:inline-flex;align-items:center;justify-content:center;gap:10px}.login-modal-email-arrow{position:absolute;right:18px;opacity:.85;transition:transform .15s}.login-modal-email:hover .login-modal-email-arrow{transform:translate(2px)}.login-modal-security-note{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px;padding:11px 14px;border-radius:12px;background:var(--app-surface-soft, #F5F2E6);border:1px solid var(--app-border, #D8E2DB);color:var(--app-text-secondary, #52656A);font-size:var(--type-caption);font-weight:500;line-height:1.4}.login-modal-security-note svg{color:#2563eb;flex-shrink:0}.login-modal-email-form{display:flex;flex-direction:column;gap:12px;text-align:left}.login-modal button:disabled{opacity:.55;cursor:not-allowed}.login-modal .login-modal-otp-hint{margin:0;font-size:var(--type-caption)}.login-modal-otp-error{padding:10px 12px;border:1px solid var(--app-border);border-radius:10px;color:var(--app-text);background:var(--app-surface-soft);font-size:var(--type-caption);line-height:1.5}.login-modal-email-label{display:flex;flex-direction:column;gap:6px;font-size:var(--type-caption);font-weight:600;color:var(--app-text-secondary, #52656A)}.login-modal-email-label input{width:100%;min-height:46px;padding:10px 14px;border:1px solid var(--app-border, #D8E2DB);border-radius:12px;background:var(--app-surface, #FFFFFF);color:var(--app-text, #172B30);font:inherit;font-size:var(--type-label);outline:none;transition:border-color .15s,box-shadow .15s}.login-modal-email-label input:focus{border-color:var(--app-primary, #2563EB);box-shadow:0 0 0 3px #2563eb29}.login-modal-back{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:40px;padding:8px 12px;border:0;border-radius:10px;background:transparent;color:var(--app-text-secondary, #52656A);font:inherit;font-size:var(--type-caption);font-weight:600;cursor:pointer;transition:color .15s,background .15s}.login-modal-back:hover{background:var(--app-surface-soft, #F5F2E6);color:var(--app-text, #172B30)}.login-modal button:focus-visible,.login-modal a:focus-visible{outline:3px solid var(--app-primary, #2563EB);outline-offset:3px}.login-modal-links{display:flex;justify-content:center;gap:24px;font-size:var(--type-label)}.login-modal-links a{color:var(--app-text-secondary, #52656A);text-decoration:none}.login-modal-links a:hover{text-decoration:underline}.login-modal-art{position:relative;display:flex;align-items:flex-end;overflow:hidden;min-height:520px;padding:40px;background-color:#0f172a;background-position:center top;background-repeat:no-repeat;background-size:cover}.login-modal-art-copy{position:relative;z-index:1;color:#fff}.login-modal-art h3{margin:0 0 16px;font-size:var(--type-display-sm);line-height:1.25;font-weight:750}.login-modal-art p{margin:0;font-size:var(--type-label);line-height:1.7;color:#e0f2fe}@media(max-width:640px){.login-modal{width:calc(100vw - 28px);border-radius:20px}.login-modal[open]{grid-template-columns:1fr}.login-modal-form{min-height:440px;padding:32px 24px}.login-modal-art{display:none}.login-modal-content h2{font-size:23px}}
