.auth-layout{min-height:100dvh;background-color:var(--brand-500);background-size:cover;background-position:center;display:flex;justify-content:center}.auth-content{width:100%;max-width:440px;display:flex;flex-direction:column;justify-content:space-between;padding:calc(env(safe-area-inset-top) + 24px) 16px calc(env(safe-area-inset-bottom) + 40px);color:#fff}@media(min-width:768px){.auth-content{justify-content:center;gap:56px}}.auth-logo{width:78px;height:75px}.auth-form h1{font-size:32px;font-weight:400;margin:0 0 16px}.auth-form p{font-size:16px;margin:0 0 32px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-size:14px;color:#ffffffe6}.field input{height:52px;border-radius:12px;border:1px solid transparent;padding:0 16px;font-size:16px;background:#fff;color:#141414;outline:none}.field input:focus{border-color:var(--brand-300);box-shadow:0 0 0 3px #437ed459}.field-error input{border-color:#f87171}.field-error-text{font-size:13px;color:#fecaca}.btn{height:52px;width:100%;border-radius:12px;border:0;font-size:16px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.btn:disabled{opacity:.6;cursor:default}.btn-primary{background:#fff;color:var(--brand-500)}.btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.7)}.btn-link{background:none;height:auto;width:auto;color:#fff;text-decoration:underline;font-weight:400}.spinner{width:20px;height:20px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .8s linear infinite}.spinner-lg{width:48px;height:48px;border-width:4px;color:var(--brand-500)}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.auth-logo-tenant{width:auto;height:75px;max-width:100%;object-fit:contain;align-self:flex-start}.workspace-chip{display:flex;align-items:center;gap:8px;width:fit-content;max-width:100%;box-sizing:border-box;margin:0 0 20px;padding:6px 12px;border-radius:999px;background:#ffffff29;border:1px solid rgba(255,255,255,.35);font-size:14px;color:#fff}.workspace-chip-label{opacity:.85;flex:0 0 auto}.workspace-chip-value{font-weight:600;min-width:0;overflow-wrap:anywhere}.auth-layout.auth-tenant{background-color:var(--bg)}.auth-tenant .auth-content{color:var(--text)}.auth-tenant .field label{color:var(--text);opacity:.8}.auth-tenant .field input{border-color:#7f7f7f59}.auth-tenant .field input:focus{border-color:var(--brand-500);box-shadow:0 0 0 3px #7f7f7f33}.auth-tenant .field-error-text{color:#dc2626}.auth-tenant .btn-primary{background:var(--brand-500);color:#fff}.auth-tenant .btn-outline{color:var(--brand-500);border-color:var(--brand-500)}.auth-tenant .btn-link{color:var(--brand-500)}.auth-tenant .workspace-chip{background:#7f7f7f1f;border-color:#7f7f7f4d;color:var(--text)}.auth-tenant a{color:var(--brand-500)}@media(prefers-color-scheme:dark){.auth-tenant .field input{background:#1c2430;color:#f2f4f7}}.auth-tenant .auth-form .auth-or{color:var(--text);opacity:.7}@media(prefers-color-scheme:dark){.auth-tenant .auth-logo-tenant{background:#fff;border-radius:12px;padding:6px 10px;box-sizing:content-box;height:63px}}:root{--pwa-accent: #0052cd;--pwa-accent-hover: #0044ad;--pwa-on-accent: #ffffff;--pwa-surface: #ffffff;--pwa-on-surface: #0f1216;--pwa-muted: #5a6270;--pwa-border: rgba(15, 18, 22, .12);--pwa-shadow: 0 10px 28px rgba(15, 18, 22, .18);--pwa-offline-bg: #1f2530;--pwa-offline-text: #ffffff}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--pwa-accent: #3b7ce8;--pwa-accent-hover: #5a92ef;--pwa-on-accent: #ffffff;--pwa-surface: #1a1f27;--pwa-on-surface: #eef1f5;--pwa-muted: #a4adbb;--pwa-border: rgba(255, 255, 255, .12);--pwa-shadow: 0 10px 28px rgba(0, 0, 0, .5);--pwa-offline-bg: #2a3240;--pwa-offline-text: #eef1f5}}:root[data-theme=dark]{--pwa-accent: #3b7ce8;--pwa-accent-hover: #5a92ef;--pwa-on-accent: #ffffff;--pwa-surface: #1a1f27;--pwa-on-surface: #eef1f5;--pwa-muted: #a4adbb;--pwa-border: rgba(255, 255, 255, .12);--pwa-shadow: 0 10px 28px rgba(0, 0, 0, .5);--pwa-offline-bg: #2a3240;--pwa-offline-text: #eef1f5}.pwa-stack{position:fixed;left:0;right:0;bottom:0;z-index:1000;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 16px calc(16px + env(safe-area-inset-bottom,0px));pointer-events:none}.pwa-stack:empty{display:none}.pwa-stack>*{pointer-events:auto;width:100%;max-width:480px}.pwa-toast{box-sizing:border-box;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;border:1px solid var(--pwa-border);background:var(--pwa-surface);color:var(--pwa-on-surface);box-shadow:var(--pwa-shadow);font:500 14px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.pwa-toast p{margin:0}.pwa-toast__text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}.pwa-toast__actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.pwa-install__icon{flex:0 0 auto;width:40px;height:40px;border-radius:10px}.pwa-muted{color:var(--pwa-muted);font-size:13px}.pwa-share-icon{display:inline-block;vertical-align:-4px;color:var(--pwa-accent)}.pwa-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:36px;padding:8px 16px;border:0;border-radius:999px;background:var(--pwa-accent);color:var(--pwa-on-accent);font:600 14px/1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;cursor:pointer;white-space:nowrap}.pwa-button:hover{background:var(--pwa-accent-hover)}.pwa-button--ghost{background:transparent;color:var(--pwa-accent)}.pwa-button--ghost:hover{background:transparent;text-decoration:underline}.pwa-icon-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--pwa-muted);cursor:pointer}.pwa-button:focus-visible,.pwa-icon-button:focus-visible{outline:2px solid var(--pwa-accent);outline-offset:2px}.pwa-offline{position:fixed;top:0;left:0;right:0;z-index:1001;padding:calc(8px + env(safe-area-inset-top,0px)) 16px 8px;background:var(--pwa-offline-bg);color:var(--pwa-offline-text);text-align:center;font:600 13px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.pwa-ios{flex-direction:column;align-items:stretch;gap:10px}.pwa-ios__head{display:flex;align-items:center;gap:8px}.pwa-ios__summary{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:12px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.pwa-ios__steps{margin:0;padding:10px 0 2px 22px;border-top:1px solid var(--pwa-border);display:flex;flex-direction:column;gap:8px;font-weight:400}.pwa-ios__steps li{line-height:22px}.pwa-ios__steps .pwa-share-icon{vertical-align:-3px;color:var(--pwa-accent)}.ws-divider{margin-top:24px;display:flex;align-items:center}.ws-divider:before,.ws-divider:after{content:"";flex:1;height:1px;background:#fff6}.ws-divider span{margin:0 12px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#fffc}.auth-form .ws-hint{margin:16px 0 0;text-align:center;font-size:14px;line-height:20px;color:#fffc}.ws-open{display:block;margin:12px auto 0}.ws-recent{margin-top:20px}.ws-recent-label{margin:0 0 8px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:#fffc}.ws-recent-list{display:flex;flex-wrap:wrap;gap:8px}.ws-chip{max-width:100%;height:36px;padding:0 14px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:#ffffff1f;color:#fff;font:inherit;font-size:14px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-chip:hover:not(:disabled){background:#ffffff38}.ws-chip:focus-visible{outline:2px solid #fff;outline-offset:2px}.ws-chip:disabled{opacity:.5;cursor:default}.ws-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;background:#00000080}.ws-modal{width:100%;max-width:400px;padding:24px;border-radius:16px;background:var(--bg);color:var(--text);box-shadow:0 16px 48px #0000004d}.ws-modal h2{margin:0 0 8px;font-size:20px;font-weight:600}.ws-modal p{margin:0 0 24px;font-size:15px;line-height:22px}.ws-modal-actions{display:flex;gap:12px;justify-content:flex-end}.ws-modal-actions .btn{width:auto;min-width:120px;padding:0 16px;height:44px}.ws-modal .btn-outline{color:var(--text);border-color:#00000040}.ws-modal .btn-primary{background:var(--brand-500);color:#fff}.auth-form form{display:flex;flex-direction:column}.auth-meta-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:-4px 0 16px}.auth-link{color:#fff;font-size:14px;text-decoration:underline}.auth-error{font-size:14px;color:#fecaca;margin:0 0 12px}.auth-form .auth-or{text-align:center;font-size:13px;color:#ffffffe6;margin:20px 0 12px}.auth-actions{display:flex;flex-direction:column}.auth-footer{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:24px}.auth-footer .btn-link{width:auto}.auth-suggestion{align-self:flex-start;margin:-8px 0 12px;padding:0;border:0;background:none;color:#fff;font-size:14px;text-decoration:underline;cursor:pointer}:root{--toaster-error-bg: #b91c1c;--toaster-error-text: #ffffff;--toaster-success-bg: #15803d;--toaster-success-text: #ffffff;--toaster-info-bg: #1f2937;--toaster-info-text: #ffffff}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--toaster-error-bg: #7f1d1d;--toaster-error-text: #fee2e2;--toaster-success-bg: #14532d;--toaster-success-text: #dcfce7;--toaster-info-bg: #e5e7eb;--toaster-info-text: #111827}}:root[data-theme=dark]{--toaster-error-bg: #7f1d1d;--toaster-error-text: #fee2e2;--toaster-success-bg: #14532d;--toaster-success-text: #dcfce7;--toaster-info-bg: #e5e7eb;--toaster-info-text: #111827}.toaster{position:fixed;top:calc(env(safe-area-inset-top) + 12px);left:0;right:0;z-index:2147483000;box-sizing:border-box;padding:0 16px;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toaster-item{pointer-events:auto;box-sizing:border-box;width:100%;max-width:480px;display:flex;align-items:flex-start;gap:12px;padding:12px 8px 12px 16px;border-radius:12px;box-shadow:0 8px 24px #00000040;font-size:15px;line-height:1.4;cursor:pointer;animation:toaster-in .2s ease-out}.toaster-error{background:var(--toaster-error-bg);color:var(--toaster-error-text)}.toaster-success{background:var(--toaster-success-bg);color:var(--toaster-success-text)}.toaster-info{background:var(--toaster-info-bg);color:var(--toaster-info-text)}.toaster-message{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;padding-top:1px}.toaster-close{flex:0 0 auto;width:32px;height:32px;margin:-4px -4px 0 0;padding:0;border:0;border-radius:8px;background:transparent;color:inherit;font-size:22px;line-height:1;cursor:pointer}.toaster-close:focus-visible{outline:2px solid currentColor;outline-offset:2px}@keyframes toaster-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.toaster-item{animation:none}}:root{--brand-300: #99b4e6;--brand-500: #0052cd;--brand-800: #0035ab;--bg: #ffffff;--text: #141414;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color-scheme:light dark;-webkit-tap-highlight-color:transparent}@media(prefers-color-scheme:dark){:root{--bg: #0f1216;--text: #f2f4f7}}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;height:100%}body{background:var(--bg);color:var(--text);overscroll-behavior:none}
