:root{color-scheme:light;--bg: #f6f7f5;--panel: #ffffff;--panel-soft: #f0f4f1;--ink: #18201b;--muted: #657168;--line: #dfe6e0;--accent: #24745b;--accent-strong: #155942;--accent-soft: #dff0e9;--danger: #b33a3a;--shadow: 0 18px 60px rgba(24, 32, 27, .1);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{color-scheme:dark;--bg: #0f1411;--panel: #161d18;--panel-soft: #1c2520;--ink: #ddeae0;--muted: #6b8472;--line: #253029;--accent: #3a9b78;--accent-strong: #5bbf99;--accent-soft: #172b22;--danger: #d96060;--shadow: 0 18px 60px rgba(0, 0, 0, .45)}:root[data-theme=dark] .sidebar{background:#111a14}:root[data-theme=dark] .project-panel{background:#ffffff0a}:root[data-theme=dark] .project-select,:root[data-theme=dark] .auth-form input,:root[data-theme=dark] .composer,:root[data-theme=dark] .model-select{background:var(--panel-soft);border-color:var(--line)}:root[data-theme=dark] .icon-button,:root[data-theme=dark] .mini-icon-button{background:#ffffff0d}:root[data-theme=dark] .search-box{background:#ffffff0a}:root[data-theme=dark] .session-item.active,:root[data-theme=dark] .session-item:hover{background:#ffffff12}:root[data-theme=dark] .token-pill{background:var(--panel-soft)}:root[data-theme=dark] .workspace-drawer{background:var(--panel-soft)}:root[data-theme=dark] .user-message .message-body{background:var(--panel-soft)}:root[data-theme=dark] .message-text code{background:#ffffff12;border-color:var(--line)}:root[data-theme=dark] .source-list a{background:var(--panel-soft)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(120deg,#24745b1f,#4466921a),var(--bg)}.auth-panel{width:min(440px,100%);background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);padding:28px}.brand-lockup,.sidebar-top,.profile-row,.chat-header,.header-controls,.token-summary,.message,.message-tokens,.status-banner,.composer-error,.ready-chip{display:flex;align-items:center}.brand-lockup{gap:14px;margin-bottom:24px}.brand-mark,.avatar,.message-avatar{display:grid;place-items:center;color:var(--accent-strong);background:var(--accent-soft)}.brand-mark{width:46px;height:46px;border-radius:8px}h1,h2,p{margin:0}.brand-lockup h1,.chat-header h1{font-size:20px;line-height:1.2}.brand-lockup p,.chat-header p,.profile-row small,.session-item small,.empty-chat p{color:var(--muted)}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--line);background:var(--panel-soft);border-radius:8px;margin-bottom:18px}.segmented button{border:0;background:transparent;border-radius:6px;padding:10px 12px;color:var(--muted)}.segmented button.active{background:var(--panel);color:var(--ink);box-shadow:0 1px 4px #18201b1f}.auth-form{display:grid;gap:14px}.auth-form label{display:grid;gap:7px;color:var(--muted);font-size:14px}.auth-form input,.search-box input,.composer textarea,.model-select select{border:0;outline:0;background:transparent;color:var(--ink)}.auth-form input{min-height:44px;border:1px solid var(--line);border-radius:8px;padding:0 12px;background:#fbfcfb}.primary-button,.new-chat,.send-button{border:0;background:var(--accent);color:#fff;font-weight:700}.primary-button{min-height:46px;border-radius:8px}.error-row,.composer-error,.status-banner{gap:8px;color:var(--danger);font-size:14px}.app-shell{min-height:100vh;display:grid;grid-template-columns:auto 1fr}.sidebar{width:292px;height:100vh;display:flex;flex-direction:column;gap:12px;padding:14px;border-right:1px solid var(--line);background:#ecf1ee;transition:width .18s ease}.sidebar.collapsed{width:74px}.sidebar-top{justify-content:space-between;min-height:36px}.project-panel{display:grid;gap:8px;border:1px solid var(--line);border-radius:8px;background:#ffffffa3;padding:10px}.project-panel-title,.section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:13px;font-weight:700}.project-panel-title span,.section-title span{min-width:0;display:inline-flex;align-items:center;gap:7px}.project-select{width:100%;min-height:36px;border:1px solid var(--line);border-radius:8px;background:#fbfcfb;color:var(--ink);padding:0 9px}.project-panel small{color:var(--muted);font-size:12px}.icon-button{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#ffffffb8;color:var(--ink)}.mini-icon-button{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;background:#fffc;color:var(--muted)}.new-chat{min-height:42px;display:flex;align-items:center;justify-content:center;gap:9px;border-radius:8px}.search-box{min-height:40px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:#ffffffc2;border-radius:8px;padding:0 10px;color:var(--muted)}.search-box input{width:100%}.session-list{flex:1;overflow:auto;display:grid;align-content:start;gap:6px;padding-right:2px}.session-item{width:100%;min-height:52px;display:flex;align-items:center;gap:10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ink);padding:8px;text-align:left}.session-item.active,.session-item:hover{background:#ffffffd1;border-color:var(--line)}.session-item span,.profile-row span:nth-child(2){min-width:0;flex:1;display:grid;gap:2px}.session-item strong,.profile-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.session-item small,.profile-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.delete-chat{flex:0 0 auto;color:var(--muted)}.profile-row{min-height:52px;gap:10px;border-top:1px solid var(--line);padding-top:12px}.avatar{flex:0 0 34px;width:34px;height:34px;border-radius:8px;cursor:pointer;transition:opacity .15s ease}.avatar:hover{opacity:.75}.chat-shell{height:100vh;min-width:0;display:flex;flex-direction:column;background:var(--panel)}.chat-header{min-height:72px;justify-content:space-between;gap:16px;padding:14px 22px;border-bottom:1px solid var(--line)}.chat-header>div:first-of-type{min-width:0}.chat-header h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-controls{gap:9px}.mobile-menu{display:none}.model-select{min-height:36px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:8px;padding:0 9px;background:#fbfcfb;color:var(--muted)}.model-select select{max-width:210px}.status-banner{margin:12px 22px 0;border:1px solid rgba(179,58,58,.28);background:#b33a3a14;border-radius:8px;padding:10px 12px}.token-summary{flex:0 0 auto;flex-wrap:wrap;gap:8px;padding:12px 22px;border-bottom:1px solid var(--line)}.workspace-drawer{flex:0 0 auto;display:grid;gap:14px;padding:14px 22px;border-bottom:1px solid var(--line);background:#f8faf8}.workspace-drawer.two-panel{grid-template-columns:minmax(0,1.2fr) minmax(360px,.9fr)}.workspace-drawer.single-panel{grid-template-columns:minmax(0,720px)}.workspace-section{display:grid;align-content:start;gap:12px}.settings-section{max-width:720px}.status-drawer{max-width:640px}.status-grid{display:flex;flex-direction:column;gap:14px}.status-row{display:flex;align-items:flex-start;gap:12px}.status-dot{width:8px;height:8px;border-radius:50%;margin-top:4px;flex-shrink:0}.status-dot.dot-ok{background:var(--accent)}.status-dot.dot-err{background:var(--danger)}.status-dot.dot-warn{background:#b07b2a}.status-info{display:flex;flex-direction:column;gap:2px;min-width:0}.status-info strong{font-size:12px;font-weight:600;color:var(--ink)}.status-url{font-size:11px;font-family:ui-monospace,Cascadia Code,Fira Code,monospace;color:var(--accent);word-break:break-all}.status-detail{font-size:11px;color:var(--muted)}.field-stack{display:grid;gap:7px;color:var(--muted);font-size:13px;font-weight:700}.field-stack textarea,.field-stack input,.field-stack select{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);padding:10px 11px;outline:0;resize:vertical;font-weight:400}.field-stack select{min-height:40px;resize:none}.check-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:10px 11px}.check-row input{width:16px;height:16px;margin-top:2px;accent-color:var(--accent)}.check-row span{display:grid;gap:3px}.check-row strong{font-size:13px}.check-row small{color:var(--muted);font-size:12px;line-height:1.35}.secondary-button{width:fit-content;min-height:36px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);padding:0 12px;font-weight:700}.document-list{display:grid;gap:7px;max-height:170px;overflow:auto}.document-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:8px}.document-item span{min-width:0;display:grid;gap:1px}.document-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.document-item small{color:var(--muted);font-size:12px}.range-row{display:grid;gap:8px;color:var(--muted);font-size:13px;font-weight:700}.range-row span{display:flex;justify-content:space-between;gap:10px}.range-row strong{color:var(--ink)}.range-row input{width:100%;accent-color:var(--accent)}.token-pill,.ready-chip{display:inline-flex;align-items:center;gap:7px;min-height:28px;border:1px solid var(--line);border-radius:999px;padding:0 10px;color:var(--muted);background:#fbfcfb;font-size:12px}.token-pill strong{color:var(--ink)}.ready-chip{color:var(--accent-strong);background:var(--accent-soft);border-color:#24745b33}.offline-chip{color:var(--danger);background:#b33a3a14;border-color:#b33a3a3d}.messages{flex:1;min-height:0;overflow:auto;padding:28px 26px}.empty-chat{min-height:100%;display:grid;place-items:center;align-content:center;gap:12px;text-align:center;color:var(--muted)}.empty-chat h2{color:var(--ink);font-size:24px}.message{gap:13px;align-items:flex-start;margin-bottom:22px}.message-avatar{width:34px;height:34px;flex:0 0 34px;border-radius:8px}.user-message .message-avatar{background:#e8edf5;color:#34527b}.message-body{min-width:0;max-width:none;flex:1}.message-text{line-height:1.6;overflow-wrap:anywhere}.user-message .message-text{white-space:pre-wrap}.message-text p,.message-text ul,.message-text ol,.message-text pre,.message-text blockquote,.message-text table{margin:0 0 12px}.message-text p:last-child,.message-text ul:last-child,.message-text ol:last-child,.message-text pre:last-child,.message-text blockquote:last-child,.message-text table:last-child{margin-bottom:0}.message-text ul,.message-text ol{padding-left:22px}.message-text li+li{margin-top:4px}.message-text code{border:1px solid var(--line);border-radius:6px;background:#eef4f0;padding:2px 5px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.92em}.message-text pre{overflow:auto;border:1px solid var(--line);border-radius:8px;background:#15201b;color:#f3faf6;padding:14px}.message-text pre code{border:0;background:transparent;color:inherit;padding:0}.code-block-wrapper{border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-bottom:12px}.code-block-header{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#1a2920;border-bottom:1px solid rgba(255,255,255,.07)}.code-lang{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;color:#f3faf673;text-transform:uppercase;letter-spacing:.04em}.code-copy-btn{display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid rgba(255,255,255,.14);border-radius:6px;color:#f3faf68c;padding:3px 8px;font-size:12px;transition:background .12s ease,color .12s ease}.code-copy-btn:hover{background:#ffffff14;color:#f3faf6e6}.message-text blockquote{border-left:3px solid var(--accent);color:var(--muted);padding-left:12px}.message-text table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}.message-text th,.message-text td{border:1px solid var(--line);padding:8px 10px;text-align:left}.message-text th{background:var(--panel-soft)}.user-message .message-body{background:#f4f7f6;border:1px solid var(--line);border-radius:8px;padding:12px 14px}.assistant-message{max-width:1180px;margin-right:auto}.assistant-message .message-body{padding-right:22px}.assistant-message .message-text{max-width:1080px}.assistant-message .message-text>*+*{margin-top:12px}.assistant-message .message-text h1,.assistant-message .message-text h2,.assistant-message .message-text h3,.assistant-message .message-text h4{margin:22px 0 10px;line-height:1.25;font-weight:750}.assistant-message .message-text h1:first-child,.assistant-message .message-text h2:first-child,.assistant-message .message-text h3:first-child,.assistant-message .message-text h4:first-child{margin-top:0}.assistant-message .message-text h1{font-size:24px}.assistant-message .message-text h2{font-size:21px}.assistant-message .message-text h3{font-size:18px}.assistant-message .message-text strong{font-weight:760}.message-tokens{flex-wrap:wrap;gap:7px;margin-top:12px}.source-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.source-list a{max-width:360px;min-height:30px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;background:#fbfcfb;color:var(--accent-strong);padding:0 10px;text-decoration:none;font-size:12px}.source-list span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-list strong{color:var(--muted);font-size:11px}.reasoning-summary{margin-top:10px;border-left:3px solid var(--line);color:var(--muted);padding-left:10px;font-size:12px;line-height:1.45}.completion-warning{margin-top:10px;border:1px solid rgba(179,58,58,.24);border-radius:8px;background:#b33a3a12;color:var(--danger);padding:9px 10px;font-size:12px;line-height:1.45}.message-time{position:absolute;top:0;right:0;font-size:11px;color:var(--muted);opacity:0;transition:opacity .12s ease;pointer-events:none}.message:hover .message-time{opacity:1}.message-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px;opacity:0;transition:opacity .14s ease}.message:hover .message-actions,.message:focus-within .message-actions{opacity:1}.message-actions button{min-height:28px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;background:#fbfcfb;color:var(--muted);padding:0 9px;font-size:12px;font-weight:700}.message-images{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.message-image-thumb{max-width:260px;max-height:200px;border-radius:8px;object-fit:contain;border:1px solid var(--line)}.message-edit-form{display:flex;flex-direction:column;gap:8px}.message-edit-form textarea{width:100%;padding:10px 12px;border:1px solid var(--accent);border-radius:8px;resize:vertical;font-size:14px;line-height:1.5;background:var(--panel);color:var(--ink);outline:none;min-height:80px}.edit-actions{display:flex;gap:8px}.typing{display:inline-flex;gap:5px;padding-top:8px}.typing span{width:8px;height:8px;border-radius:50%;background:var(--muted);animation:pulse 1s infinite ease-in-out}.typing span:nth-child(2){animation-delay:.12s}.typing span:nth-child(3){animation-delay:.24s}.streaming-cursor{display:inline-block;margin-left:2px;color:var(--accent);animation:cursor-blink .9s step-end infinite;vertical-align:text-bottom;line-height:1}@keyframes cursor-blink{0%,to{opacity:1}50%{opacity:0}}.avatar-streaming{animation:avatar-pulse 1.6s ease-in-out infinite;border-radius:50%}@keyframes avatar-pulse{0%{box-shadow:0 0 #24745b80}60%{box-shadow:0 0 0 7px #24745b00}to{box-shadow:0 0 #24745b00}}:root[data-theme=dark] .avatar-streaming{animation:avatar-pulse-dark 1.6s ease-in-out infinite}@keyframes avatar-pulse-dark{0%{box-shadow:0 0 #3a9b788c}60%{box-shadow:0 0 0 7px #3a9b7800}to{box-shadow:0 0 #3a9b7800}}.composer-error{margin:0 22px 10px}.composer{width:calc(100% - 52px);min-height:58px;display:grid;grid-template-columns:1fr auto auto;align-items:end;gap:10px;justify-self:center;margin:0 26px 20px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fbfcfb;box-shadow:0 8px 26px #18201b14}.image-preview-strip{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px;padding-bottom:6px;border-bottom:1px solid var(--line);margin-bottom:2px}.image-thumb{position:relative;width:64px;height:64px;border-radius:6px;overflow:hidden;border:1px solid var(--line)}.image-thumb img{width:100%;height:100%;object-fit:cover}.image-thumb-remove{position:absolute;top:3px;right:3px;width:18px;height:18px;border-radius:50%;background:#0000008c;color:#fff;border:none;cursor:pointer;display:grid;place-items:center;padding:0;line-height:1}.attach-image-btn{width:36px;height:36px;color:var(--muted);margin-bottom:3px}.attach-image-btn:hover{color:var(--ink)}.composer textarea{width:100%;min-height:36px;max-height:180px;resize:none;overflow-y:auto;padding:8px 4px 6px;line-height:1.45}.send-button{width:42px;height:42px;display:grid;place-items:center;border-radius:8px}.send-button:disabled{opacity:.46;cursor:not-allowed}.stop-button{background:var(--danger);color:#fff}.spin{animation:spin .9s linear infinite}@keyframes pulse{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 780px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;z-index:10;inset:0 auto 0 0;transform:translate(0);box-shadow:var(--shadow)}.sidebar.collapsed{transform:translate(-100%);width:292px}.mobile-menu{display:grid}.chat-header{flex-wrap:wrap;padding:10px 14px;gap:8px;min-height:0}.chat-header>div:first-of-type{flex:1 1 auto}.chat-header p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-controls{flex:1 1 100%;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.header-controls::-webkit-scrollbar{display:none}.header-controls>*{flex:0 0 auto}.model-select select{max-width:128px}.messages{padding:22px 14px}.workspace-drawer{grid-template-columns:1fr;padding:12px 14px}.token-summary{padding:10px 14px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.token-summary::-webkit-scrollbar{display:none}.token-summary>*{flex:0 0 auto}.composer{width:calc(100% - 28px);margin:0 14px 14px}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;z-index:300}.modal{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow-y:auto;display:flex;flex-direction:column}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid var(--line);gap:12px}.modal-header h2{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--ink)}.modal-body{display:flex;flex-direction:column;gap:18px;padding:20px}.modal-section h3{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:10px}.modal-section{display:flex;flex-direction:column;gap:10px}.profile-field{display:flex;align-items:center;gap:12px}.profile-label{width:52px;font-size:12px;font-weight:600;color:var(--muted);flex-shrink:0}.profile-value{font-size:14px;color:var(--ink);padding:7px 12px;background:var(--panel-soft);border-radius:7px;border:1px solid var(--line);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-hint{font-size:12px;color:var(--muted);line-height:1.5}.modal-hint code{font-family:ui-monospace,monospace;background:var(--panel-soft);border:1px solid var(--line);border-radius:4px;padding:1px 5px;font-size:11px}.modal-divider{border:none;border-top:1px solid var(--line);margin:0}.modal-actions{display:flex;gap:8px;padding-top:2px}.settings-divider{border:none;border-top:1px solid var(--line);margin:4px 0}.kb-header{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.kb-header span{display:flex;align-items:center;gap:5px}.kb-header-actions{display:flex;gap:4px}.kb-doc-list{display:grid;gap:5px;max-height:190px;overflow-y:auto}.kb-doc-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:7px;background:var(--panel);padding:7px 8px}.kb-doc-info{min-width:0;display:grid;gap:2px}.kb-doc-info strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}.kb-doc-info small{color:var(--muted);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kb-empty{font-size:12px;color:var(--muted);text-align:center;padding:12px 0;margin:0;line-height:1.5}.spinning{animation:icon-spin .9s linear infinite}@keyframes icon-spin{to{transform:rotate(360deg)}}.landing{--land-ink: #0b0f0d;--land-panel: #121815;--land-line: #223028;--land-paper: #ede9df;--land-muted: #8ba497;--land-accent: #45b98a;--land-signal: #e8a24b;min-height:100vh;display:flex;flex-direction:column;background:var(--land-ink);color:var(--land-paper);font-family:IBM Plex Sans,Inter,ui-sans-serif,system-ui,sans-serif}.landing-bar{display:flex;align-items:center;justify-content:space-between;padding:22px clamp(20px,5vw,64px);border-bottom:1px solid var(--land-line)}.landing-word{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:13px;letter-spacing:.14em;color:var(--land-paper)}.landing-nav-cta{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:13px;letter-spacing:.04em;background:transparent;color:var(--land-paper);border:1px solid var(--land-line);border-radius:7px;padding:8px 16px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.landing-nav-cta:hover{border-color:var(--land-accent);color:var(--land-accent)}.landing-hero{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(24px,6vw,72px);max-width:1180px;width:100%;margin:0 auto;padding:clamp(40px,8vh,96px) clamp(20px,5vw,64px)}.landing-eyebrow{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--land-accent);margin:0 0 18px}.landing-headline{font-family:Fraunces,Georgia,serif;font-optical-sizing:auto;font-weight:500;font-size:clamp(34px,5vw,54px);line-height:1.08;letter-spacing:-.01em;margin:0 0 20px;color:var(--land-paper)}.landing-sub{font-size:16px;line-height:1.65;color:var(--land-muted);max-width:46ch;margin:0 0 30px}.landing-cta-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.landing-cta{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:14px;letter-spacing:.03em;background:var(--land-accent);color:#06120c;border:none;border-radius:8px;padding:13px 26px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.landing-cta:hover{transform:translateY(-1px);box-shadow:0 10px 26px #45b98a47}.landing-cta-note{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;color:var(--land-muted)}.landing-diagram-wrap{display:flex;align-items:center;justify-content:center;padding:20px}.landing-diagram{width:100%;max-width:460px;height:auto;overflow:visible}.landing-trace-line{stroke:var(--land-accent);stroke-width:1.5;opacity:.75;stroke-dasharray:360;stroke-dashoffset:360;animation:landing-draw 1s ease-out forwards}.landing-trace-1{animation-delay:.15s}.landing-trace-2{animation-delay:.3s}.landing-trace-3{animation-delay:.45s}.landing-node circle,.landing-node rect{fill:var(--land-panel);stroke:var(--land-line);stroke-width:1.5}.landing-node text{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px;fill:var(--land-muted)}.landing-node-you circle{stroke:var(--land-accent)}.landing-node-you text{text-anchor:middle;fill:var(--land-paper);letter-spacing:.08em}.landing-node-hub rect{fill:var(--land-accent);stroke:none}.landing-node-hub-label{text-anchor:middle;fill:#06120c!important;font-weight:500;letter-spacing:.06em}.landing-node-leaf circle{fill:var(--land-ink);stroke:var(--land-signal)}.landing-node-leaf text{text-anchor:start;fill:var(--land-paper)}.landing-pulse{fill:var(--land-signal);offset-path:path("M 264 180 L 396 180");animation:landing-pulse-travel 2.8s ease-in-out 1.2s infinite}@keyframes landing-draw{to{stroke-dashoffset:0}}@keyframes landing-pulse-travel{0%{offset-distance:0%;opacity:0}8%{opacity:1}92%{opacity:1}to{offset-distance:100%;opacity:0}}@media (prefers-reduced-motion: reduce){.landing-trace-line{animation:none;stroke-dashoffset:0}.landing-pulse{animation:none;opacity:0}}.landing-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,40px);max-width:1180px;width:100%;margin:0 auto;padding:40px clamp(20px,5vw,64px) 60px;border-top:1px solid var(--land-line)}.landing-feature-label{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px;letter-spacing:.1em;color:var(--land-signal);margin:0 0 10px}.landing-feature-body{font-size:14.5px;line-height:1.6;color:var(--land-muted);margin:0}.landing-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:22px clamp(20px,5vw,64px);border-top:1px solid var(--land-line);font-size:12.5px;color:var(--land-muted)}.landing-footer a{color:var(--land-muted);text-decoration:none;border-bottom:1px solid var(--land-line);padding-bottom:1px;transition:color .15s ease,border-color .15s ease}.landing-footer a:hover{color:var(--land-accent);border-color:var(--land-accent)}@media (max-width: 860px){.landing-hero{grid-template-columns:1fr}.landing-diagram-wrap{order:-1}.landing-features{grid-template-columns:1fr}}
