/* Product switcher, cloud gate and Google sign-in (shared look across the OperAi products). */
.google-btn { gap: 10px; background: var(--panel, #fff); border: 1px solid var(--line, #ddd); color: var(--text, inherit); font-weight: 600; }
.google-btn:hover { border-color: #4285f4; box-shadow: 0 0 0 3px rgba(66, 133, 244, 0.15); }
.auth-divider { display: flex; align-items: center; gap: 10px; color: var(--muted, #888); font-size: 12.5px; margin: 2px 0; }
.auth-divider::before, .auth-divider::after { content: ""; flex: 1; height: 1px; background: var(--line, #ddd); }
.brand-row { display: flex; align-items: center; gap: 2px; min-width: 0; }
.brand-row .brand { min-width: 0; }
.product-menu { position: relative; display: inline-flex; flex: none; }
.product-menu-btn { border: 0; background: transparent; color: inherit; cursor: pointer; padding: 4px; border-radius: 6px; display: inline-grid; place-items: center; opacity: 0.65; }
.product-menu-btn:hover, .product-menu.open .product-menu-btn { opacity: 1; background: rgba(127, 127, 127, 0.15); }
.product-menu-list { display: none; position: fixed; min-width: 230px; background: var(--panel, #fff); color: var(--text, inherit); border: 1px solid var(--line, rgba(127, 127, 127, 0.3)); border-radius: 10px; box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22); padding: 6px; z-index: 60; }
.product-menu.open .product-menu-list { display: block; }
.product-menu-list a { display: flex; flex-direction: column; gap: 1px; padding: 8px 10px; border-radius: 7px; color: inherit; text-decoration: none; font-size: 13px; line-height: 1.3; }
.product-menu-list a:hover { background: rgba(127, 127, 127, 0.14); text-decoration: none; }
.product-menu-list a.active { background: rgba(80, 110, 230, 0.16); }
.product-menu-list a small { opacity: 0.7; font-size: 11.5px; }
.cloud-gate { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: var(--bg, inherit); }
.cloud-card { width: min(440px, 100%); background: var(--panel, #fff); border: 1px solid var(--line, rgba(127, 127, 127, 0.3)); border-radius: 16px; padding: 28px 24px; text-align: center; display: flex; flex-direction: column; gap: 12px; align-items: center; box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12); }
.cloud-card h1 { font-size: 20px; margin: 0; }
.cloud-card p { margin: 0; }
.cloud-card .btn { min-width: 160px; justify-content: center; }
