@font-face{font-family:geistSans;src:url(/_next/static/media/0b78ff376f6b9734-s.p.woff2) format("woff2");font-display:swap;font-weight:100 900;font-style:normal}@font-face{font-family:geistSans Fallback;src:local("Arial");ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.00%;size-adjust:106.28%}.__className_3d9ee9{font-family:geistSans,geistSans Fallback;font-style:normal}.__variable_3d9ee9{--font-geist-sans:"geistSans","geistSans Fallback"}@font-face{font-family:geistMono;src:url(/_next/static/media/723e11e5093b8e80-s.p.woff2) format("woff2");font-display:swap;font-weight:100 900;font-style:normal}@font-face{font-family:geistMono Fallback;src:local("Arial");ascent-override:76.43%;descent-override:22.43%;line-gap-override:0.00%;size-adjust:131.49%}.__className_8ba133{font-family:geistMono,geistMono Fallback;font-style:normal}.__variable_8ba133{--font-geist-mono:"geistMono","geistMono Fallback"}@font-face{font-family:Geist Sans;src:url(/fonts/Geist-Variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--font-sans:"Geist Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--bg:#ffffff;--surface:#f5f5f5;--surface-hover:#e8e8e8;--surface-raised:#ffffff;--text:#0d0d0d;--text-secondary:#6e6e73;--text-tertiary:#9e9e9e;--divider:rgba(0,0,0,0.06);--shadow:0 1px 4px rgba(0,0,0,0.04);--shadow-raised:0 4px 24px rgba(0,0,0,0.08);--error:#e0615f;--error-bg:rgba(224,97,95,0.08);--ok:#34c759;--user-bubble:#f2f2f2;--accent:#0d0d0d;--accent-hover:#2d2d2d;--on-accent:#ffffff}:root[data-theme=dark]{--bg:#000000;--surface:#0a0a0a;--surface-hover:#161616;--surface-raised:#111111;--text:#ececec;--text-secondary:#8e8e93;--text-tertiary:#5c5c5e;--divider:rgba(255,255,255,0.06);--shadow:0 1px 4px rgba(0,0,0,0.4);--shadow-raised:0 8px 32px rgba(0,0,0,0.5),0 0 1px rgba(255,255,255,0.06);--error:#ff6b6b;--error-bg:rgba(255,107,107,0.1);--ok:#30d158;--user-bubble:#1c1c1e;--accent:#ececec;--accent-hover:#ffffff;--on-accent:#000000}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--bg:#000000;--surface:#0a0a0a;--surface-hover:#161616;--surface-raised:#111111;--text:#ececec;--text-secondary:#8e8e93;--text-tertiary:#5c5c5e;--divider:rgba(255,255,255,0.06);--shadow:0 1px 4px rgba(0,0,0,0.4);--shadow-raised:0 8px 32px rgba(0,0,0,0.5),0 0 1px rgba(255,255,255,0.06);--error:#ff6b6b;--error-bg:rgba(255,107,107,0.1);--ok:#30d158;--user-bubble:#1c1c1e;--accent:#ececec;--accent-hover:#ffffff;--on-accent:#000000}}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font-family:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}::selection{background:rgba(128,128,128,.2)}input,textarea{caret-color:var(--accent)}*{scrollbar-width:thin;scrollbar-color:var(--divider) transparent}.attach-btn,.close-btn,.convo,.convo-group-header,.convo-menu button,.copy-btn,.hints button,.linkish,.nav-item,.new-chat,.quick-actions button,.send-btn,.settings-btn{transition:color .15s ease,background .15s ease,opacity .15s ease,transform .15s ease}.app,.sidebar{display:flex;height:100dvh}.sidebar{width:260px;flex:none;background:var(--surface);flex-direction:column;min-width:0;position:relative;overflow:hidden}.sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 8px}.sidebar-head .wordmark{font-size:20px;font-weight:600;letter-spacing:-.03em}.new-chat{margin:2px 12px 10px;display:flex;align-items:center;gap:8px;background:var(--surface-raised);border-radius:10px;padding:9px 12px;font-size:13.5px;color:var(--text);cursor:pointer;border:none;box-shadow:var(--shadow)}.new-chat:hover{background:var(--surface-hover)}.nav-item{display:flex;align-items:center;gap:8px;margin:0 8px 6px;padding:8px 10px;border-radius:8px;font-size:13.5px;color:var(--text);text-decoration:none;cursor:pointer}.nav-item:hover{background:var(--surface-hover)}.convo-search{margin:0 12px 8px}.convo-search input{width:100%;background:var(--surface-raised);border:none;border-radius:10px;padding:8px 12px;font-size:13px;color:var(--text);font-family:inherit;outline:none;box-shadow:var(--shadow)}.convo-search input::placeholder{color:var(--text-tertiary)}.app.collapsed .sidebar{display:none!important}.app.collapsed .rail{display:flex!important}.rail{display:none}@media (max-width:760px){.app.collapsed .sidebar{display:flex!important}.rail{display:none!important}}.convo-list{flex:1 1;overflow-y:auto;padding:2px 8px 8px;min-height:0}.convo-group-header{display:flex;align-items:center;gap:6px;margin:8px 6px 2px;padding:4px 6px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary);cursor:pointer;border-radius:6px;background:none;border:none;width:calc(100% - 12px);text-align:left}.convo-group-header:hover{color:var(--text-secondary);background:var(--surface-hover)}.convo-group-header .chevron{display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid;transition:transform .2s ease;flex:none}.convo-group-header.collapsed .chevron{transform:rotate(-90deg)}.convo-row{gap:2px;padding:2px 8px}.convo-row,.convo-row .convo{display:flex;align-items:center}.convo-row .convo{flex:1 1;gap:6px;border:none;background:none;border-radius:8px;padding:6px 8px;font-size:13px;color:var(--text);cursor:pointer;text-align:left;min-width:0}.convo-row .convo.active,.convo-row .convo:hover{background:var(--surface-hover)}.convo-row .convo.active{font-weight:500}.convo-row .convo .title{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400}.convo-row .convo.active .title{font-weight:500}.convo-menu-btn{flex:none;width:24px;height:24px;border-radius:6px;border:none;background:none;color:var(--text-tertiary);cursor:pointer;display:grid;place-items:center;opacity:0;transition:opacity .15s ease,color .15s ease,background .15s ease;padding:0}.convo-row:hover .convo-menu-btn{opacity:1}.convo-menu-btn:hover{color:var(--text);background:var(--surface-hover)}.sidebar-foot{border-top:1px solid var(--divider);padding:12px 14px;display:flex;align-items:center;gap:10px;font-size:13px}.avatar{width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-size:12px;font-weight:600;flex:none}.sidebar-foot .who{flex:1 1;min-width:0;display:flex;flex-direction:column;line-height:1.3}.sidebar-foot .who .name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-foot .who a,.sidebar-foot .who button{color:var(--text-tertiary);font-size:11.5px;text-decoration:none;background:none;border:none;padding:0;cursor:pointer;text-align:left}.sidebar-foot .who a:hover,.sidebar-foot .who button:hover{color:var(--text)}.linkish{border:none;background:none;color:var(--text-tertiary);font-size:12.5px;cursor:pointer;padding:4px}.linkish:hover{color:var(--text)}.main{flex:1 1;display:flex;flex-direction:column;min-width:0;background:var(--bg)}.main-head{display:none;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--divider)}.burger{border:none;background:none;border-radius:8px;padding:4px 10px;cursor:pointer;font-size:15px;color:var(--text)}.thread{flex:1 1;overflow-y:auto}.thread,.thread-inner{display:flex;flex-direction:column}.thread-inner{max-width:768px;margin:0 auto;padding:32px 20px 16px;gap:16px;width:100%}.empty{margin:auto;text-align:center;color:var(--text-secondary);padding:40px 20px;display:flex;flex-direction:column;align-items:center;gap:12px}.empty .big{font-size:32px;font-weight:600;color:var(--text);margin-bottom:4px;letter-spacing:-.02em}.empty .sub{font-size:15px;color:var(--text-secondary);max-width:400px;line-height:1.5}.msg{white-space:pre-wrap;word-wrap:break-word;position:relative}.msg.user{align-self:flex-end;max-width:78%;background:var(--user-bubble);border-radius:20px;border-bottom-right-radius:6px;padding:10px 16px;font-size:15px;line-height:1.5}.msg.assistant{align-self:stretch;padding:4px 4px 8px;font-size:15px;line-height:1.6}.msg.assistant .msg-label{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:500;color:var(--text-secondary)}.msg.assistant .msg-avatar{width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-size:11px;font-weight:600;flex:none}.msg.error{align-self:flex-start;color:var(--error);border-radius:10px;padding:10px 14px;font-size:13.5px;background:var(--error-bg);display:flex;align-items:center;gap:12px}.msg.error .retry{border:1px solid var(--error);background:none;color:var(--error);border-radius:6px;padding:4px 10px;font-size:12.5px;cursor:pointer;flex:none;font-family:inherit}.msg.error .retry:hover{background:var(--error);color:var(--bg)}.msg-actions{display:flex;align-items:center;gap:4px;margin-top:6px;opacity:.5;transition:opacity .15s ease}.msg.assistant:hover .msg-actions{opacity:1}.copy-btn{width:32px;height:32px;border:none;background:none;color:var(--text-tertiary);cursor:pointer;border-radius:6px;display:grid;place-items:center;padding:0}.copy-btn:hover{color:var(--text);background:var(--surface-hover)}.copy-btn .icon{width:16px;height:16px}.activity{align-self:flex-start;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);font-family:var(--font-mono);padding:4px 0}.activity .dot{width:5px;height:5px;border-radius:50%;background:var(--text-tertiary);flex:none}.typing-indicator{align-self:flex-start;display:flex;align-items:center;gap:4px;padding:8px 4px}.typing-indicator .dot{width:7px;height:7px;border-radius:50%;background:var(--text-tertiary);animation:typing-bounce 1.4s ease-in-out infinite}.typing-indicator .dot:first-child{animation-delay:0s}.typing-indicator .dot:nth-child(2){animation-delay:.2s}.typing-indicator .dot:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.composer-wrap{padding:8px 20px 28px}.composer{max-width:768px;margin:0 auto;display:flex;align-items:flex-end;gap:8px;background:var(--surface-raised);border-radius:24px;padding:10px 14px 10px 18px;box-shadow:var(--shadow-raised);border:none}.composer button.attach-btn{flex:none;background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:8px 4px;opacity:.7;border-radius:50%;width:32px;height:32px;display:grid;place-items:center}.composer button.attach-btn:hover:not(:disabled){opacity:1;color:var(--text);background:var(--surface-hover)}.composer button.attach-btn:disabled{opacity:.3;cursor:default}.composer textarea{flex:1 1;resize:none;border:none;background:none;color:var(--text);font:inherit;outline:none;max-height:200px;padding:6px 0;font-size:15px;line-height:1.5}.composer textarea::placeholder{color:var(--text-tertiary)}.composer button.send-btn{flex:none;width:32px;height:32px;border-radius:50%;background:var(--accent);color:var(--on-accent);border:none;padding:0;display:grid;place-items:center;cursor:pointer;opacity:1}.composer button.send-btn:hover:not(:disabled){background:var(--accent-hover);transform:scale(1.05)}.composer button.send-btn:disabled{opacity:.3;cursor:default}.composer button.send-btn .icon{width:16px;height:16px}.composer button.stop.send-btn{background:none;border:1px solid var(--divider);color:var(--text-secondary)}.composer button.stop.send-btn:hover{border-color:var(--error);color:var(--error);background:none}.pending-chips{max-width:768px;margin:0 auto 8px;display:flex;flex-wrap:wrap;gap:6px}.pending-chips .chip{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border-radius:999px;padding:4px 10px;font-size:12.5px;color:var(--text-secondary)}.pending-chips .chip button{border:none;background:none;color:var(--text-tertiary);cursor:pointer;font-size:11px;padding:0;border-radius:50%;width:16px;height:16px;display:grid;place-items:center}.pending-chips .chip button:hover{color:var(--error);background:var(--surface-hover)}.footnote{max-width:768px;margin:6px auto 0;text-align:center;color:var(--text-tertiary);font-size:12px}.login-wrap{height:100dvh;display:grid;place-items:center}.login-card{background:var(--surface-raised);border-radius:16px;padding:40px;width:min(380px,92vw);text-align:center;box-shadow:var(--shadow-raised)}.login-card .wordmark{font-size:32px;font-weight:600;margin:0 0 4px;letter-spacing:-.03em}.login-card p{color:var(--text-secondary);font-size:13px;margin:0 0 24px}.login-card input{width:100%;background:var(--bg);border:1px solid var(--divider);color:var(--text);border-radius:10px;padding:10px 12px;font:inherit;margin-bottom:10px;font-size:15px;transition:border-color .15s ease}.login-card input:focus{outline:none;border-color:var(--text-tertiary)}.login-card button{width:100%;background:var(--accent);border:none;border-radius:10px;color:var(--on-accent);font-weight:500;padding:10px;font-size:15px;cursor:pointer;margin-top:4px;transition:background .15s ease}.login-card button:hover:not(:disabled){background:var(--accent-hover)}.login-card button:disabled{opacity:.4}.login-error{color:var(--error);font-size:13px;margin-top:10px;min-height:18px}.admin-wrap{max-width:768px;margin:0 auto;padding:32px 20px 60px}.admin-wrap h1{font-weight:600;letter-spacing:-.03em;font-size:26px;margin:6px 0 2px}.admin-wrap .back{color:var(--text-tertiary);font-size:13px;text-decoration:none}.admin-wrap .back:hover{color:var(--text)}.admin-card{background:var(--surface-raised);border-radius:12px;padding:20px;margin-top:20px;box-shadow:var(--shadow)}.admin-card h2{font-size:15px;font-weight:600;margin:0 0 12px}.admin-table{width:100%;border-collapse:collapse;font-size:13.5px}.admin-table th{text-align:left;color:var(--text-tertiary);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.08em;padding:8px 10px}.admin-table td,.admin-table th{border-bottom:1px solid var(--divider)}.admin-table td{padding:10px}.admin-table .role-admin{color:var(--ok);font-weight:500}.admin-row-actions{display:flex;gap:10px}.admin-form{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.admin-form input,.admin-form select{background:var(--bg);border:1px solid var(--divider);color:var(--text);border-radius:8px;padding:8px 10px;font:inherit;font-size:14px;transition:border-color .15s ease}.admin-form input:focus,.admin-form select:focus{outline:none;border-color:var(--text-tertiary)}.admin-form .full{grid-column:1/-1}.admin-form button{grid-column:1/-1;background:var(--accent);color:var(--on-accent);border:none;border-radius:8px;padding:9px;font-weight:500;cursor:pointer;transition:background .15s ease}.admin-form button:hover{background:var(--accent-hover)}.admin-note{font-size:13px;min-height:18px;margin-top:8px}.admin-note.ok{color:var(--ok)}.admin-note.err{color:var(--error)}.artifact-chat-card{align-self:flex-start;width:min(420px,100%);background:var(--surface-raised);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.artifact-chat-head{display:flex;align-items:center;gap:10px;padding:12px 14px}.artifact-chat-head .icon{width:20px;height:20px;flex:none;color:var(--text-tertiary)}.artifact-chat-title{flex:1 1;min-width:0}.artifact-chat-title strong{display:block;font-weight:500;font-size:13.5px}.artifact-chat-title span{display:block;font-size:12px;color:var(--text-tertiary)}.artifact-chat-body{padding:12px 14px;font-size:13px;line-height:1.5;overflow-x:auto;max-height:360px;overflow-y:auto;margin:0;font-family:var(--font-mono);color:var(--text);background:var(--bg)}.data-block{margin:12px 0;background:var(--surface-raised);border-radius:10px;padding:14px 16px;overflow:hidden;box-shadow:var(--shadow)}.data-block-title{font-size:13px;font-weight:500;margin-bottom:10px;color:var(--text-secondary)}.data-table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary)}.data-table td,.data-table th{padding:8px 10px;border-bottom:1px solid var(--divider)}.data-table td{font-size:13px}.data-table tbody tr:last-child td{border-bottom:none}.house-block{padding:16px}.house-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.house-builder{font-weight:500;font-size:14px}.house-sub{font-size:12.5px;color:var(--text-tertiary);margin-top:2px}.house-phases{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.house-phase{display:flex;align-items:center;gap:6px;font-size:12px}.house-phase-dot{width:6px;height:6px;border-radius:50%;background:var(--ok);flex:none}.house-phase-label{font-weight:500}.house-phase-date{color:var(--text-tertiary)}.house-sheets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.house-files{font-size:12px;color:var(--text-tertiary)}.house-actions{margin-top:8px}.sheet-link{display:inline-flex;align-items:center;gap:4px;color:var(--text);text-decoration:none;font-size:12.5px;padding:4px 10px;border-radius:6px;background:var(--surface);cursor:pointer;border:none;font-family:inherit}.sheet-link:hover{background:var(--surface-hover)}.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);display:grid;place-items:center;z-index:30;padding:20px}.modal{background:var(--surface-raised);border-radius:16px;width:min(520px,100%);max-height:85dvh;overflow-y:auto;padding:24px;box-shadow:var(--shadow-raised)}.modal h2{margin:0 0 16px;font-size:20px;font-weight:600;letter-spacing:-.02em}.modal .field{display:block;margin-bottom:16px}.modal .field>span{display:block;font-size:13.5px;font-weight:500;margin-bottom:6px;color:var(--text-secondary)}.modal .field textarea{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--divider);background:var(--bg);color:var(--text);font:inherit;font-size:14px;outline:none;resize:vertical;min-height:80px;transition:border-color .15s ease}.modal .field textarea:focus{border-color:var(--text-tertiary)}.modal .field small{display:block;font-size:12px;color:var(--text-tertiary);margin-top:4px}.modal .field select{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--divider);background:var(--bg);color:var(--text);font:inherit;font-size:14px;outline:none;transition:border-color .15s ease}.modal .field select:focus{border-color:var(--text-tertiary)}.modal .field .admin-link{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;background:var(--bg);color:var(--text);text-decoration:none;font-size:14px;cursor:pointer;border:1px solid var(--divider);font-family:inherit;width:100%;text-align:left}.modal .field .admin-link:hover{background:var(--surface-hover)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:12px;border-top:1px solid var(--divider)}.modal-actions button{padding:8px 16px;border-radius:8px;font-size:14px;cursor:pointer;font-family:inherit;border:none}.modal-actions .linkish{background:none;color:var(--text-secondary)}.modal-actions .linkish:hover{color:var(--text)}.modal-actions .primary{background:var(--accent);color:var(--on-accent);font-weight:500}.modal-actions .primary:hover{background:var(--accent-hover)}.admin-inline{margin-top:8px}.admin-inline .admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-inline .admin-table th{text-align:left;color:var(--text-tertiary);font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:8px 10px;border-bottom:1px solid var(--divider)}.admin-inline .admin-table td{padding:10px;border-bottom:1px solid var(--divider);font-size:13.5px}.admin-inline .admin-table .role-admin{color:var(--ok);font-weight:500}.admin-inline .admin-form{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-top:16px}.admin-inline .admin-form input,.admin-inline .admin-form select{background:var(--bg);border:1px solid var(--divider);color:var(--text);border-radius:8px;padding:8px 10px;font:inherit;font-size:14px;outline:none;transition:border-color .15s ease}.admin-inline .admin-form input:focus,.admin-inline .admin-form select:focus{border-color:var(--text-tertiary)}.admin-inline .admin-form .full{grid-column:1/-1}.admin-inline .admin-form button{grid-column:1/-1;background:var(--accent);color:var(--on-accent);border:none;border-radius:8px;padding:10px;font-weight:500;cursor:pointer;transition:background .15s ease}.admin-inline .admin-form button:hover{background:var(--accent-hover)}.admin-inline .admin-note{font-size:13px;min-height:18px;margin-top:8px}.admin-inline .admin-note.ok{color:var(--ok)}.admin-inline .admin-note.err{color:var(--error)}.back-btn{background:none;border:none;color:var(--text-tertiary);font-size:13px;cursor:pointer;margin-bottom:12px;display:flex;align-items:center;gap:4px;padding:0;font-family:inherit}.back-btn:hover{color:var(--text)}.back-btn .icon{width:14px;height:14px}.convo-menu{position:fixed;background:var(--surface-raised);border-radius:10px;box-shadow:var(--shadow-raised);padding:4px;min-width:180px;z-index:40}.convo-menu button{display:block;width:100%;text-align:left;padding:8px 12px;border:none;background:none;color:var(--text);font-size:13px;cursor:pointer;border-radius:6px;font-family:inherit}.convo-menu button:hover{background:var(--surface-hover)}.convo-menu button.danger:hover{color:var(--error)}.settings-panel{position:fixed;inset:0;z-index:30;display:grid;place-items:center;background:rgba(0,0,0,.35)}.settings-card{background:var(--surface-raised);border-radius:14px;width:min(400px,92vw);padding:24px;box-shadow:var(--shadow-raised)}.settings-card h2{margin:0 0 16px;font-size:18px;font-weight:600}.settings-card label{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--text-secondary)}.settings-card select,.settings-card textarea{width:100%;padding:8px 10px;border-radius:8px;border:1px solid var(--divider);background:var(--bg);color:var(--text);font:inherit;font-size:14px;margin-bottom:12px;transition:border-color .15s ease}.settings-card select:focus,.settings-card textarea:focus{outline:none;border-color:var(--text-tertiary)}.settings-card textarea{min-height:80px;resize:vertical}.settings-card .actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.settings-card .actions button{padding:8px 14px;border-radius:8px;font-size:13.5px;cursor:pointer;font-family:inherit}.settings-card .actions .secondary{background:none;border:none;color:var(--text-secondary)}.settings-card .actions .secondary:hover{color:var(--text)}.settings-card .actions .primary{background:var(--accent);color:var(--on-accent);border:none;font-weight:500}.settings-card .actions .primary:hover{background:var(--accent-hover)}.rail{width:52px;flex:none;background:var(--surface);display:flex;flex-direction:column;align-items:center;padding:12px 0;gap:4px;z-index:25}.rail button{width:36px;height:36px;border-radius:8px;border:none;background:none;color:var(--text-secondary);cursor:pointer;display:grid;place-items:center}.rail button:hover{background:var(--surface-hover);color:var(--text)}.stream-caret{display:inline-block;width:2px;height:1.1em;background:var(--text-tertiary);margin-left:2px;vertical-align:text-bottom;animation:blink 1s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.icon,.msg-text-seg{display:block}.icon{width:18px;height:18px;flex:none}.empty-note{color:var(--text-tertiary);text-align:center;padding:40px 20px}.sf-fields{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;grid-gap:6px 16px;gap:6px 16px}.sf-field{display:flex;flex-direction:column;gap:2px}.sf-field-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary)}.sf-field-value{font-size:13px;color:var(--text)}.sidebar{transition:transform .3s cubic-bezier(.16,1,.3,1),opacity .25s ease}.app.collapsed .sidebar{transform:translateX(-20px);opacity:0}.rail{animation:railIn .3s cubic-bezier(.16,1,.3,1)}@keyframes railIn{0%{transform:translateX(-10px);opacity:0}to{transform:translateX(0);opacity:1}}.modal-backdrop{animation:fadeIn .2s ease}.modal{animation:modalIn .3s cubic-bezier(.16,1,.3,1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalIn{0%{transform:scale(.96) translateY(10px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.convo-menu{animation:menuPop .15s cubic-bezier(.16,1,.3,1);transform-origin:top right}@keyframes menuPop{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.msg{animation:msgIn .25s cubic-bezier(.16,1,.3,1)}@keyframes msgIn{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}.composer button.send-btn:active{transform:scale(.92)}.convo,.convo-group-header,.convo-menu-btn,.nav-item,.new-chat{transition:color .15s ease,background .15s ease,opacity .15s ease,transform .15s ease}.artifact-chat-card,.data-block,.modal{transition:transform .2s ease,box-shadow .2s ease}.activity{animation:activityIn .2s ease}@keyframes activityIn{0%{transform:translateX(-4px);opacity:0}to{transform:translateX(0);opacity:1}}.empty{animation:emptyIn .4s cubic-bezier(.16,1,.3,1)}@keyframes emptyIn{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width:760px){.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;transform:translateX(-100%);transition:transform .2s ease}.sidebar.open{transform:translateX(0)}.main-head{display:flex}.msg.user{max-width:90%}.thread-inner{padding:20px 16px 12px}.composer-wrap{padding:8px 16px 16px}.composer{border-radius:20px}}@media (hover:none){.who-links .linkish,.who-links a{font-size:13px;padding:8px 2px}.pending-chips .chip button{padding:8px;width:28px;height:28px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.stream-caret,.typing-indicator .dot{animation:none}.typing-indicator .dot{opacity:.6}.activity,.convo-menu,.empty,.modal,.msg,.rail,.sidebar{animation:none!important;transition:none!important}}.thread{scroll-behavior:smooth}.composer:focus-within{box-shadow:var(--shadow-raised),0 0 0 2px rgba(255,255,255,.06)}.msg.assistant:hover{transform:translateY(-1px)}.convo-group-header+div{transition:max-height .25s ease,opacity .2s ease;overflow:hidden}.composer button.send-btn.sending{animation:sendPulse 1.2s ease-in-out infinite}@keyframes sendPulse{0%,to{opacity:1}50%{opacity:.6}}.artifacts-page{max-width:720px;margin:0 auto;padding:40px 24px 80px}.artifacts-page .back-link{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);text-decoration:none;font-size:13px;margin-bottom:24px;transition:color .15s ease}.artifacts-page .back-link:hover{color:var(--text)}.artifacts-page h1{font-size:28px;font-weight:600;margin-bottom:8px;letter-spacing:-.02em}.artifacts-page .artifacts-sub{color:var(--text-secondary);font-size:15px;margin-bottom:32px}.artifacts-page .artifacts-empty{color:var(--text-tertiary);font-size:14px;padding:40px 20px;text-align:center;background:var(--surface-raised);border-radius:12px}.artifacts-list{display:flex;flex-direction:column;gap:12px}.artifact-card{background:var(--surface-raised);border-radius:12px;padding:16px 20px;transition:background .15s ease}.artifact-card:hover{background:var(--surface-hover)}.artifact-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.artifact-header .artifact-title{background:none;border:none;color:var(--text);font-size:15px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;padding:0;font-family:inherit;flex:1 1;text-align:left}.artifact-header .artifact-title .icon{width:18px;height:18px;color:var(--text-tertiary);flex:none}.artifact-header .artifact-title:hover{color:var(--accent)}.artifact-header .artifact-meta{color:var(--text-tertiary);font-size:12px;white-space:nowrap}.artifact-actions-bar{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.artifact-actions-bar .artifact-action{color:var(--text-secondary);font-size:12px;padding:4px 8px;border-radius:6px;text-decoration:none;cursor:pointer;background:none;border:none;font-family:inherit;transition:color .15s ease,background .15s ease}.artifact-actions-bar .artifact-action:hover{color:var(--text);background:var(--surface-hover)}.artifact-actions-bar .artifact-action.danger:hover{color:var(--error)}.artifact-body{margin-top:16px;padding-top:16px;border-top:1px solid var(--divider)}.artifact-body pre{white-space:pre-wrap;word-wrap:break-word;font-size:14px;line-height:1.6;color:var(--text);margin:0;font-family:var(--font-mono)}@media (max-width:760px){.artifacts-page{padding:20px 16px 40px}.artifact-header{flex-direction:column;align-items:flex-start;gap:6px}.artifact-actions-bar{margin-top:4px}}