*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#fff;--bg-secondary:#fff;--bg-tertiary:#eceef2;--bg-card:#eceef2;--text-primary:#030213;--text-secondary:#6b6c79;--text-muted:#9092a0;--accent:#1890ff;--accent-hover:#40a9ff;--accent-glow:#1890ff24;--navy:#1e2c48;--pink:#e5157f;--green:#16a34a;--orange:#ea8c1a;--red:#dc2626;--blue:#1890ff;--border:#e6e8ee;--radius:16px;--radius-sm:10px;--radius-pill:999px;--font:"Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--shadow-bar:0 8px 30px #0302131a}html,body,#root{height:100%;font-family:var(--font);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#d7dae2;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.sidebar{background:#f9f9f9;border-right:1px solid #ececec;flex-direction:column;width:268px;min-width:268px;height:100%;padding:10px 8px;display:flex}.sb-brand{align-items:center;gap:8px;padding:6px 8px 10px;display:flex}.sb-logo{object-fit:contain;width:26px;height:26px;display:block}.sb-brand-name{color:var(--text-primary);font-size:16px;font-weight:600}.sb-newchat{width:100%;font-family:var(--font);color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:10px;font-size:14px;font-weight:500;transition:background .15s;display:flex}.sb-newchat:hover{background:#ececec}.sb-newchat svg{width:18px;height:18px}.sb-search{color:var(--text-muted);background:#fff;border:1px solid #ececec;border-radius:10px;align-items:center;gap:8px;margin:6px 2px 10px;padding:8px 10px;display:flex}.sb-search svg{flex-shrink:0;width:16px;height:16px}.sb-search input{min-width:0;font-family:var(--font);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:13px}.sb-search input::placeholder{color:var(--text-muted)}.sb-history{flex:1;margin:0 -2px;padding:0 2px;overflow-y:auto}.sb-empty{color:var(--text-muted);padding:12px 10px;font-size:13px}.sb-group{margin-bottom:10px}.sb-group-label{color:var(--text-muted);padding:8px 10px 4px;font-size:12px;font-weight:600}.sb-chat{border-radius:9px;align-items:center;transition:background .12s;display:flex}.sb-chat:hover{background:#ececec}.sb-chat.active{background:#e6e6e6}.sb-chat-title{text-align:left;min-width:0;font-family:var(--font);color:var(--text-primary);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;flex:1;padding:8px 4px 8px 10px;font-size:14px;overflow:hidden}.sb-chat-del{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:6px;flex-shrink:0;margin-right:4px;padding:6px;transition:opacity .12s,color .12s,background .12s;display:flex}.sb-chat:hover .sb-chat-del{opacity:1}.sb-chat-del svg{width:15px;height:15px}.sb-chat-del:hover{color:var(--red);background:#dc26261f}.sb-footer{border-top:1px solid #ececec;margin-top:4px;padding-top:8px}.sb-clear{width:100%;font-family:var(--font);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:9px 10px;font-size:13px;transition:background .15s,color .15s;display:flex}.sb-clear:hover{color:var(--red);background:#ececec}.sb-clear svg{width:16px;height:16px}.sb-settings{width:100%;font-family:var(--font);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:9px 10px;font-size:13px;transition:background .15s,color .15s;display:flex}.sb-settings:hover{color:var(--text-primary);background:#ececec}.sb-settings svg{width:16px;height:16px}.sb-account{cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;width:100%;padding:8px 10px;text-decoration:none;transition:background .15s;display:flex}.sb-account:hover{background:#ececec}.sb-avatar{background:var(--navy);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-weight:600;display:flex}.sb-avatar.guest{background:var(--text-muted)}.sb-account-name{min-width:0;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;font-size:14px;font-weight:500;overflow:hidden}.sb-account-icon{color:var(--text-muted);display:flex}.sb-account-icon svg{width:16px;height:16px}@media (width<=768px){.sidebar{display:none}}.agent-steps{margin-bottom:12px}.step{border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-mono);background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:3px;padding:7px 12px;animation:.2s stepIn;display:flex}@keyframes stepIn{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.step.tool_start{border-left:3px solid var(--orange)}.step.tool_end{border-left:3px solid var(--green)}.step.thinking{border-left:3px solid var(--accent)}.step-icon{text-align:center;flex-shrink:0;width:16px;font-size:12px}.step-content{align-items:center;gap:6px;min-width:0;display:flex}.tool-name{color:var(--text-primary);white-space:nowrap;font-weight:500}.tool-input{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:400px;font-size:11px;overflow:hidden}.tool-done{color:var(--green);font-size:11px;font-weight:500}.step-text{color:var(--text-secondary)}.steps-toggle{color:var(--accent);font-size:11px;font-family:var(--font-mono);cursor:pointer;background:0 0;border:none;padding:4px 12px;transition:color .2s}.steps-toggle:hover{color:var(--accent-hover)}.conn-graph{border:1px solid var(--border);background:var(--bg-secondary);border-radius:12px;margin-bottom:12px;padding:14px 16px}.conn-graph-head{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:12px;font-size:12px;font-weight:600}.conn-graph-flow{align-items:center;gap:2px;display:flex;overflow-x:auto}.conn-item{flex-shrink:0;align-items:center;display:inline-flex}.conn-node{background:var(--bg-tertiary);border:1px solid var(--border);color:var(--text-primary);white-space:nowrap;border-radius:999px;padding:7px 13px;font-size:13px;font-weight:500;display:inline-block}.conn-node.endpoint{background:var(--navy);border-color:var(--navy);color:#fff}.conn-edge{color:var(--accent);align-items:center;margin:0 2px;display:inline-flex}.conn-line{background:var(--accent);border-radius:2px;width:16px;height:2px}.conn-arrow{width:16px;height:16px;margin-left:-4px}.conn-graph.vertical .conn-graph-flow{flex-direction:column;align-items:flex-start;gap:0;overflow:visible}.conn-graph.vertical .conn-item{flex-direction:column;align-items:flex-start}.conn-graph.vertical .conn-edge{flex-direction:column;margin:3px 0 3px 18px}.conn-graph.vertical .conn-line{width:2px;height:12px}.conn-graph.vertical .conn-arrow{margin-top:-4px;margin-left:0;transform:rotate(90deg)}.message{width:100%;max-width:900px;animation:.3s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message.user{flex-direction:column;align-items:flex-end;display:flex}.user-bubble{background:var(--navy);color:#fff;border-radius:16px;max-width:640px;padding:14px 20px;font-size:15px;line-height:1.5}.user-meta{color:var(--text-secondary);align-items:center;gap:6px;margin-top:8px;font-size:13px;display:flex}.you-avatar{background:var(--bg-tertiary);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:13px;display:flex}.assistant-row{align-items:flex-start;gap:12px;display:flex}.bot-avatar{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-top:2px;display:flex}.assistant-bubble{background:var(--bg-secondary);border:1px solid var(--border);min-width:0;color:var(--text-primary);border-radius:16px;flex:1;padding:16px 20px;font-size:15px;line-height:1.65}.assistant-bubble.error{border-color:var(--red);color:var(--red)}.msg-time{color:var(--text-muted);align-items:center;gap:10px;margin:8px 0 0 48px;font-size:12px;display:flex}.source-badge{letter-spacing:.3px;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:600}.source-profsearch{background:var(--accent-glow);color:var(--accent)}.source-sage{color:var(--green);background:#16a34a1f}.assistant-bubble p{margin-bottom:10px}.assistant-bubble p:last-child{margin-bottom:0}.assistant-bubble strong{color:var(--text-primary);font-weight:600}.assistant-bubble em{color:var(--text-secondary);font-style:italic}.assistant-bubble a{color:var(--accent);border-bottom:1px solid #0000;text-decoration:none;transition:all .2s}.assistant-bubble a:hover{color:var(--accent-hover);border-bottom-color:var(--accent)}.assistant-bubble a .external-icon{vertical-align:middle;opacity:.6;margin-left:2px;display:inline-block}.assistant-bubble a:hover .external-icon{opacity:1}.assistant-bubble ol,.assistant-bubble ul{margin:10px 0;padding-left:22px}.assistant-bubble li{margin-bottom:8px;padding-left:4px}.assistant-bubble li ul,.assistant-bubble li ol{margin:4px 0}.assistant-bubble hr{border:none;border-top:1px solid var(--border);margin:16px 0}.assistant-bubble code{background:var(--bg-tertiary);font-family:var(--font-mono);color:var(--accent);border-radius:4px;padding:2px 6px;font-size:13px}.assistant-bubble pre{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);margin:10px 0;padding:12px 16px;overflow-x:auto}.assistant-bubble pre code{background:0 0;padding:0}.assistant-bubble h1,.assistant-bubble h2,.assistant-bubble h3{color:var(--text-primary);margin:16px 0 8px}.assistant-bubble h1{font-size:18px}.assistant-bubble h2{font-size:16px}.assistant-bubble h3{font-size:15px}.typing{gap:5px;padding:4px 0;display:flex}.typing span{background:var(--text-muted);border-radius:50%;width:8px;height:8px;animation:1.4s infinite bounce}.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}@media (width<=768px){.user-bubble{max-width:100%}.msg-time{margin-left:48px}}.chat-bar{background:var(--bg-secondary);border:1.5px solid var(--border);border-radius:var(--radius-pill);width:100%;box-shadow:var(--shadow-bar);align-items:center;gap:12px;padding:12px 14px 12px 20px;transition:border-color .18s,box-shadow .18s;display:flex}.chat-bar:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow), var(--shadow-bar)}.chat-bar-lead{color:var(--text-muted);flex-shrink:0;align-items:center;display:flex}.chat-bar textarea{color:var(--text-primary);font-size:15px;font-family:var(--font);resize:none;background:0 0;border:none;outline:none;flex:1;max-height:120px;padding:4px 0;line-height:1.5}.chat-bar textarea::placeholder{color:var(--text-muted)}.send-btn{cursor:pointer;color:var(--accent);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:6px;transition:color .18s,transform .18s;display:flex}.send-btn:hover:not(:disabled){color:var(--accent-hover);transform:translate(2px)}.send-btn:disabled{color:var(--text-muted);opacity:.5;cursor:not-allowed}@media (width<=768px){.chat-bar{padding-left:16px}.chat-bar textarea{font-size:14px}}.source-selector{display:inline-block;position:relative}.source-pill{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-pill);font-family:var(--font);color:var(--text-secondary);cursor:pointer;align-items:center;gap:7px;padding:6px 12px;font-size:13px;transition:background .15s,border-color .15s;display:inline-flex}.source-pill:hover{background:var(--bg-tertiary);border-color:#d7dae2}.source-pill strong{color:var(--text-primary);font-weight:600}.src-doc{flex-shrink:0;width:15px;height:15px}.src-chevron{width:14px;height:14px;transition:transform .15s}.src-chevron.up{transform:rotate(180deg)}.source-menu{background:var(--bg-secondary);border:1px solid var(--border);z-index:20;border-radius:14px;min-width:250px;max-height:320px;padding:6px;position:absolute;bottom:calc(100% + 8px);left:0;overflow-y:auto;box-shadow:0 12px 34px #03021324}.source-opt{text-align:left;cursor:pointer;width:100%;font-family:var(--font);background:0 0;border:none;border-radius:9px;flex-direction:column;align-items:flex-start;gap:1px;padding:9px 12px;transition:background .12s;display:flex}.source-opt:hover{background:var(--bg-tertiary)}.source-opt.active{background:var(--accent-glow)}.opt-name{color:var(--text-primary);font-size:14px;font-weight:500}.source-opt.active .opt-name{color:var(--accent)}.opt-sub{color:var(--text-muted);font-size:12px}.source-group{margin-top:4px}.source-group-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;padding:8px 12px 4px;font-size:11px;font-weight:600}.chat-area{background:var(--bg-primary);flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.messages{flex:1;overflow-y:auto}.messages-inner{flex-direction:column;gap:22px;width:100%;max-width:1000px;margin:0 auto;padding:28px 40px 8px;display:flex}.chat-footer{width:100%;max-width:1000px;margin:0 auto;padding:16px 40px 28px}.source-row{margin-bottom:10px}.welcome-center .source-row{justify-content:center;display:flex}.chat-footer .source-row{justify-content:flex-start;padding-left:4px;display:flex}.welcome-mode{justify-content:center;align-items:center}.welcome-illustration{object-fit:contain;object-position:bottom right;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;height:78%;max-height:700px;position:absolute;bottom:0;right:0}.welcome-center{z-index:1;text-align:center;width:100%;max-width:820px;margin-bottom:6vh;padding:0 48px;position:relative}.welcome-title{color:var(--text-primary);letter-spacing:-.5px;font-size:40px;font-weight:600}.welcome-subtitle{color:var(--text-secondary);margin-top:12px;margin-bottom:28px;font-size:16px}.welcome-suggestions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;display:flex}.suggestion-chip{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-pill);font-family:var(--font);color:var(--text-secondary);cursor:pointer;padding:9px 16px;font-size:13px;transition:background .15s,border-color .15s,color .15s}.suggestion-chip:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:#d7dae2}.guest-note{color:var(--text-secondary);margin-top:22px;font-size:14px}.guest-signin{color:var(--pink);font-weight:500;text-decoration:none}.guest-signin:hover{text-decoration:underline}@media (width<=900px){.welcome-illustration{opacity:.22;height:55%}.welcome-center{padding:0 24px}}@media (width<=768px){.messages-inner,.chat-footer{padding-left:16px;padding-right:16px}.welcome-title{font-size:30px}}.modal-overlay{z-index:100;background:#03021373;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-secondary);border-radius:18px;flex-direction:column;width:100%;max-width:560px;max-height:88vh;display:flex;overflow:hidden;box-shadow:0 24px 60px #03021347}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.modal-head h2{color:var(--text-primary);font-size:18px;font-weight:600}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px;font-size:15px;line-height:1}.modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-body{padding:20px 22px;overflow-y:auto}.modal-note{color:var(--text-muted);font-size:13px}.modal-error{color:var(--red);font-size:13px}.setting-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:18px;display:flex}.setting-title{color:var(--text-primary);font-size:15px;font-weight:600}.setting-sub{color:var(--text-secondary);max-width:380px;margin-top:3px;font-size:13px;line-height:1.4}.switch{cursor:pointer;background:#cfd2db;border:none;border-radius:999px;flex-shrink:0;width:44px;height:26px;padding:0;transition:background .18s;position:relative}.switch span{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.switch.on{background:var(--accent)}.switch.on span{transform:translate(18px)}.mem-content{padding-top:18px;transition:opacity .2s}.mem-content.disabled{opacity:.45;pointer-events:none}.mem-section{margin-bottom:22px}.mem-section h3{color:var(--text-primary);margin-bottom:12px;font-size:14px;font-weight:600}.field-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.field-grid label{color:var(--text-secondary);flex-direction:column;gap:5px;font-size:12px;font-weight:500;display:flex}.field-grid input{border:1px solid var(--border);font-family:var(--font);color:var(--text-primary);background:var(--bg-secondary);border-radius:9px;outline:none;padding:9px 11px;font-size:14px}.field-grid input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.btn-primary{background:var(--accent);color:#fff;font-family:var(--font);cursor:pointer;border:none;border-radius:9px;padding:9px 16px;font-size:13px;font-weight:600;transition:background .15s}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{color:var(--red);border:1px solid var(--border);font-family:var(--font);cursor:pointer;background:0 0;border-radius:9px;padding:9px 16px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s}.btn-danger:hover{border-color:var(--red);background:#dc262614}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--bg-tertiary);color:var(--text-primary);border-radius:999px;align-items:center;gap:6px;padding:5px 8px 5px 12px;font-size:13px;display:inline-flex}.chip button{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:50%;padding:2px;font-size:11px;line-height:1}.chip button:hover{color:var(--red)}.fact-list{flex-direction:column;gap:8px;list-style:none;display:flex}.fact-list li{background:var(--bg-tertiary);color:var(--text-primary);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:14px;display:flex}.fact-list li button{cursor:pointer;color:var(--text-muted);background:0 0;border:none;flex-shrink:0;padding:3px;font-size:12px}.fact-list li button:hover{color:var(--red)}@media (width<=560px){.field-grid{grid-template-columns:1fr}}.rate-limit-page{background:var(--bg-primary);justify-content:center;align-items:center;width:100%;min-height:100vh;padding:20px;display:flex}.rate-limit-card{background:var(--bg-secondary);border:1px solid var(--border);text-align:center;border-radius:16px;width:100%;max-width:460px;padding:48px 40px;box-shadow:0 8px 32px #00000014}.rate-limit-icon{margin-bottom:24px}.rate-limit-card h2{color:var(--text-primary);margin-bottom:12px;font-size:24px;font-weight:700}.rate-limit-message{color:var(--text-secondary);margin-bottom:28px;font-size:15px;line-height:1.6}.rate-limit-message strong{color:var(--text-primary);font-weight:600}.rate-limit-btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);font-size:15px;font-weight:600;font-family:var(--font);cursor:pointer;border:none;padding:14px 36px;text-decoration:none;transition:background .2s,transform .1s;display:inline-block}.rate-limit-btn:hover{background:var(--accent-hover)}.rate-limit-btn:active{transform:scale(.98)}.rate-limit-sub{color:var(--text-secondary);margin-top:20px;font-size:14px}.rate-limit-sub a{color:var(--accent);font-weight:500;text-decoration:none}.rate-limit-sub a:hover{text-decoration:underline}.auth-page{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:16px;width:100%;max-width:560px;padding:40px 48px;box-shadow:0 8px 32px #00000014}.auth-logo{text-align:center;margin-bottom:32px}.auth-logo h1{color:var(--text-primary);margin-bottom:4px;font-size:28px;font-weight:700}.coltie-logo{color:var(--accent);letter-spacing:5px;font-size:32px;font-weight:600}.auth-logo .logo-accent{color:var(--accent)}.auth-logo p{color:var(--text-secondary);margin-top:8px;font-size:14px}.auth-form{flex-direction:column;gap:18px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-secondary);letter-spacing:.3px;font-size:13px;font-weight:500}.form-group input,.form-group select{background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;font-family:var(--font);outline:none;padding:12px 14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.form-group input::placeholder{color:var(--text-muted)}.form-row{gap:12px;display:flex}.form-row .form-group{flex:1}.auth-btn{background:var(--accent);color:#fff;border-radius:var(--radius-sm);font-size:15px;font-weight:600;font-family:var(--font);cursor:pointer;border:none;margin-top:4px;padding:13px;transition:background .2s,transform .1s}.auth-btn:hover:not(:disabled){background:var(--accent-hover)}.auth-btn:active:not(:disabled){transform:scale(.98)}.auth-btn:disabled{opacity:.6;cursor:not-allowed}.auth-footer{text-align:center;color:var(--text-secondary);margin-top:24px;font-size:14px}.auth-footer a{color:var(--accent);cursor:pointer;font-weight:500;text-decoration:none}.auth-footer a:hover{color:var(--accent-hover);text-decoration:underline}.auth-link{color:var(--accent);cursor:pointer;font-weight:500;font-size:inherit;font-family:var(--font);background:0 0;border:none;padding:0;text-decoration:none}.auth-link:hover{color:var(--accent-hover);text-decoration:underline}.forgot-link{text-align:right;margin-top:-8px}.forgot-link a{color:var(--accent);font-size:13px;text-decoration:none}.forgot-link a:hover{text-decoration:underline}.auth-error{border-radius:var(--radius-sm);color:var(--red);text-align:center;background:#f871711a;border:1px solid #f871714d;padding:10px 14px;font-size:13px}.auth-success{border-radius:var(--radius-sm);color:var(--green);text-align:center;background:#34d3991a;border:1px solid #34d3994d;padding:10px 14px;font-size:13px}.otp-inputs{justify-content:center;gap:10px;display:flex}.otp-inputs input{text-align:center;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);width:48px;height:52px;color:var(--text-primary);font-size:20px;font-weight:600;font-family:var(--font-mono);outline:none;transition:border-color .2s,box-shadow .2s}.otp-inputs input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.resend-row{text-align:center;color:var(--text-secondary);font-size:13px}.auth-divider{color:var(--text-muted);align-items:center;gap:12px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.step-indicator{justify-content:center;align-items:center;gap:8px;margin-bottom:24px;display:flex}.step-dot{background:var(--border);border-radius:50%;width:10px;height:10px;transition:background .3s}.step-dot.active{background:var(--accent);box-shadow:0 0 8px var(--accent-glow)}.step-line{background:var(--border);width:40px;height:2px;transition:background .3s}.step-line.active{background:var(--accent)}.password-toggle{position:relative}.password-toggle input{padding-right:42px}.password-toggle button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;font-size:16px;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.password-toggle button:hover{color:var(--text-secondary)}.app-shell{background:var(--bg-primary);height:100vh;display:flex;overflow:hidden}
