section{display:flex;flex-direction:column;gap:8px;padding-block:16px}section:first-child{padding-top:16px}p{line-height:1.33}.layout{height:100dvh;overflow:hidden;--sidebar-width:380px;--sidebar-narrow-width:56px;--tooltip-width:var(--sidebar-width);--slide-navigator-width:280px;--slide-navigator-narrow-width:56px}.header{color:var(--primary);font-size:1.25em;font-weight:600;margin:0}.button{background:var(--insightforge-accent);border:none;border-radius:8px;color:var(--on-accent);cursor:pointer;font-size:.875em;font-weight:600;padding:8px 16px;white-space:nowrap}a.button{display:inline-block;text-align:center;text-decoration:none}main .button:hover:not(:disabled),main a.button:hover{background:color-mix(in srgb,var(--insightforge-accent) 88%,black);color:var(--on-accent)}.button:disabled{background:var(--outline-variant);color:var(--secondary);cursor:not-allowed;opacity:.85}.button-outline{background:var(--surface-variant);border:1px solid var(--insightforge-accent);color:var(--insightforge-accent)}main .button-outline:hover:not(:disabled),main a.button-outline:hover{background:color-mix(in srgb,var(--insightforge-accent) 88%,black);border-color:color-mix(in srgb,var(--insightforge-accent) 88%,black);color:var(--on-accent)}.button-outline--active{background:var(--insightforge-accent);color:var(--on-accent)}main .button-outline--active:hover:not(:disabled){background:color-mix(in srgb,var(--insightforge-accent) 88%,black);color:var(--on-accent)}.button-outline--active:disabled,.button-outline:disabled{background:var(--surface-variant);border-color:var(--outline-variant);color:var(--secondary);cursor:not-allowed;opacity:.85}.button.wide{width:100%}button:disabled{cursor:not-allowed}.icon-button{background:inherit;border:0;cursor:pointer;color:var(--outline)}.icon-button:hover{color:var(--insightforge-accent)}.input{background:var(--on-primary);border:1px solid var(--outline-variant);border-radius:8px;color:var(--on-surface);font-size:1em;padding:12px 16px;transition:all .2s ease}.input::placeholder{color:var(--outline)}.input:hover{border-color:var(--outline)}.input:focus{border-color:var(--insightforge-accent);outline-color:var(--insightforge-accent)}.input:disabled{cursor:not-allowed;opacity:.85}.input:disabled:hover{border-color:var(--outline-variant)}.note{color:var(--secondary);font-size:.875em;text-decoration:none}.header-with-tooltip{display:flex;flex-direction:row;gap:8px}.tooltip-trigger{background:0;border:0;color:var(--outline);position:relative;top:1px}.tooltip-trigger:hover{color:var(--primary)}.header-with-tooltip .react-tooltip{background:var(--on-primary-container);color:var(--on-primary);max-width:var(--tooltip-width)}.auth-gate-loading{flex:1 1;font-size:1rem;min-height:40vh}.auth-gate-loading,.auth-modal-overlay{align-items:center;display:flex;justify-content:center;padding:24px}.auth-modal-overlay{background:var(--scrim);bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}.auth-modal{background:var(--surface);border:1px solid var(--outline-variant);border-radius:12px;box-shadow:0 24px 48px var(--shadow);max-width:400px;padding:28px 24px 24px;position:relative;width:100%}.auth-modal-close{background:none;border:0;color:var(--outline);cursor:pointer;padding:4px;position:absolute;right:12px;top:12px}.auth-modal-close:hover{color:var(--primary)}.auth-modal-title{font-size:1.25rem;font-weight:600;margin:0 0 8px}.auth-modal-sub{color:var(--on-surface-variant);font-size:.875rem;line-height:1.45;margin:0 0 20px}.auth-modal-label{display:flex;flex-direction:column;font-size:.8125rem;font-weight:500;gap:6px;margin-bottom:12px}.auth-modal-label input{border:1px solid var(--outline-variant);border-radius:8px;font-size:1rem;padding:10px 12px}.auth-modal-label input:disabled{color:var(--on-surface-variant);cursor:not-allowed}.auth-modal-error{color:#b91c1c;font-size:.8125rem;margin:0 0 12px}[data-theme=dark] .auth-modal-error{color:#fca5a5}.auth-modal-actions{display:flex;flex-direction:column;gap:12px;margin-top:8px}.auth-modal-actions .primary{background:var(--insightforge-accent);border:none;border-radius:8px;color:var(--on-accent);cursor:pointer;font-size:.9375rem;font-weight:600;padding:10px 16px;width:100%}.auth-modal-actions .primary:disabled{opacity:.6}.auth-modal-actions .secondary-link{background:none;border:none;color:var(--primary);cursor:pointer;font-size:.8125rem;font-weight:500;padding:4px 0;text-align:center;text-decoration:underline}.auth-modal-actions .secondary-link:disabled{cursor:not-allowed;opacity:.6}.otp-slots{gap:8px;margin-bottom:12px}.otp-slot,.otp-slots{display:flex;justify-content:center}.otp-slot{align-items:center;border:2px solid var(--outline-variant);border-radius:8px;font-size:1.25rem;font-weight:600;height:48px;position:relative;width:40px}.otp-slot.active{border-color:var(--insightforge-accent)}.otp-fake-caret{animation:otp-caret-blink 1s step-end infinite;background:var(--on-surface);height:20px;position:absolute;width:1px}@keyframes otp-caret-blink{0%,to{opacity:1}50%{opacity:0}}.auth-modal-social{display:flex;flex-direction:column;gap:10px;margin-top:16px}.auth-modal-or{color:var(--on-surface-variant);font-size:.8125rem;margin:0;text-align:center}.auth-modal-social-button{align-items:center;background:var(--surface);border:1px solid var(--outline-variant);border-radius:8px;color:var(--on-surface);cursor:pointer;display:flex;gap:10px;font-size:.9375rem;font-weight:600;justify-content:center;padding:10px 16px}.auth-modal-social-button svg{flex-shrink:0}.auth-modal-social-button:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.auth-modal-social-button:disabled{opacity:.6}