*,:after,:before{box-sizing:border-box;margin:0}button,input,select,textarea{font-family:inherit}:root{--radius:8px;--shadow:0 1px 3px rgba(0,0,0,0.08);--font-family-base:var(--font-inter),"Inter",sans-serif;--font:var(--font-family-base)}body,html{height:100%}body{font-family:var(--font-family-base);font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);transition:background .25s ease,color .25s ease}.panel-soft{background:var(--panel-soft)}.card{background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 2px rgba(0,0,0,.06),0 8px 24px rgba(0,0,0,.08)}.card--hoverable{transition:transform .2s ease,box-shadow .2s ease}.card--hoverable:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.08),0 16px 40px rgba(0,0,0,.12)}.page-container{max-width:1400px;margin:0 auto;padding:32px 24px;width:100%}.page-container--narrow{max-width:860px}@media (max-width:768px){.page-container{padding:20px 16px}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.page-header-text h1{font-size:28px;font-weight:600;color:var(--text);letter-spacing:-.01em;line-height:1.2}.page-header-text p{font-size:14px;color:var(--muted);margin-top:6px;line-height:1.5}.page-header-action{flex-shrink:0;margin-top:2px}.stack>*+*{margin-top:12px}.stack-lg>*+*{margin-top:24px}.section-gap{margin-bottom:24px}.container{max-width:1120px;margin:0 auto;padding:24px 16px}.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.header h1{font-size:20px;font-weight:400;line-height:1.3;letter-spacing:-.005em}.two-col{display:flex;gap:24px;align-items:flex-start}.col-left{width:420px;flex-shrink:0;display:flex;flex-direction:column;gap:20px}.col-right{flex:1 1;min-width:0}@media (max-width:768px){.two-col{flex-direction:column}.col-left{width:100%}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.card h2{font-size:15px;font-weight:400;margin-bottom:16px;color:var(--color-text);line-height:1.5;letter-spacing:0}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:13px;font-weight:400;color:var(--color-text-muted);margin-bottom:4px}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.input,.select{width:100%;font-size:14px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-text);outline:none;transition:border-color .15s;-moz-appearance:none;appearance:none;-webkit-appearance:none}.input{padding:8px 10px}.select{padding:8px 32px 8px 10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.light .select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23706f6b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}.light .input,.light .select{background:var(--panel);color:var(--text);border-color:var(--border-strong)}.light .input:focus,.light .select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-dim);outline:none}.light .input::placeholder{color:var(--subtle)}.light .input:disabled,.light .select:disabled{background:var(--panel-soft);color:var(--subtle);border-color:var(--border);cursor:not-allowed}.light .input[readonly]{background:var(--bg);color:var(--muted)}.input:focus,.select:focus{border-color:var(--color-primary)}.input::placeholder{color:var(--color-text-muted)}.checkbox-group{display:flex;align-items:center;gap:8px;margin-bottom:14px}.checkbox-group label{font-size:13px;color:var(--color-text-muted);cursor:pointer}.fieldset{border:1px solid var(--color-border);border-radius:6px;padding:14px;margin-bottom:14px}.fieldset legend{font-size:13px;font-weight:400;color:var(--color-text-muted);padding:0 6px}.fieldset .form-row{grid-template-columns:1fr 1fr 1fr}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:400;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:background .15s,border-color .15s}.btn:hover{background:var(--color-bg)}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#ffffff;width:100%}.btn-primary:hover{background:var(--color-primary-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-sm{padding:5px 12px;font-size:14px}.light .btn{background:var(--panel);color:var(--text);box-shadow:var(--shadow-sm)}.light .btn,.light .btn:hover{border-color:var(--border-strong)}.light .btn:hover{background:var(--panel-soft);box-shadow:none}.light .btn:active{background:var(--panel-item)}.light .btn-primary{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.1)}.light .btn-primary:hover{box-shadow:0 2px 6px rgba(37,99,235,.18)}.light .btn-primary:active,.light .btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.light .btn-primary:active{box-shadow:none}.light .btn-primary:disabled{background:var(--primary-dim);color:var(--primary);border-color:transparent;box-shadow:none;opacity:1}.error{color:var(--color-error);font-size:13px;margin-top:8px}.loading,.muted{color:var(--color-text-muted);font-size:13px}.loading{font-style:italic}.badge{display:inline-block;padding:1px 8px;font-weight:400;border-radius:10px;background:var(--color-bg);border:1px solid var(--color-border)}.badge,.metadata-bar{font-size:12px;color:var(--color-text-muted)}.metadata-bar{gap:12px;padding:12px 0;margin-top:16px;border-top:1px solid var(--color-border)}.metadata-bar span{display:inline-flex;align-items:center;gap:4px}.history-list{list-style:none}.history-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--color-border);font-size:13px}.history-item:last-child{border-bottom:none}.history-item-name{font-weight:400;color:var(--color-text)}.history-item-meta{color:var(--color-text-muted);font-size:12px}.streaming-section{margin-top:24px}.streaming-section summary{cursor:pointer;font-weight:400;color:var(--color-text-muted);font-size:13px;padding:8px 0}.streaming-row{display:flex;gap:10px;margin-top:12px}.streaming-row .input{flex:1 1}.prose{line-height:1.5;color:var(--color-text)}.prose h1{font-size:1.5em;font-weight:600;margin:1.2em 0 .5em;padding-bottom:.3em;border-bottom:1px solid var(--color-border);line-height:1.3;letter-spacing:-.005em}.prose h2{font-size:1.25em;margin:1em 0 .4em}.prose h2,.prose h3{font-weight:400;line-height:1.5;letter-spacing:0}.prose h3{font-size:1.1em;margin:.8em 0 .3em}.prose p{margin:.6em 0}.prose ol,.prose ul{margin:.5em 0;padding-left:1.5em}.prose li{margin:.25em 0}.prose table{width:100%;border-collapse:collapse;margin:.8em 0;font-size:13px}.prose td,.prose th{border:1px solid var(--color-border);padding:6px 10px;text-align:left}.prose th{background:var(--color-bg);font-weight:400}.prose blockquote{border-left:3px solid var(--color-primary);padding-left:12px;color:var(--color-text-muted);margin:.8em 0}.prose code{padding:2px 5px;border-radius:3px;font-size:.9em}.prose code,.prose pre{background:var(--color-bg)}.prose pre{padding:12px;border-radius:6px;overflow-x:auto;margin:.8em 0}.prose pre code{background:none;padding:0}.prose hr{border:none;border-top:1px solid var(--color-border);margin:1.5em 0}.gate{display:flex;align-items:center;justify-content:center;min-height:100vh}.gate .card{width:min(360px,calc(100vw - 32px));text-align:center}.gate h1{font-size:18px;margin-bottom:4px;line-height:1.3;letter-spacing:-.005em}.gate p{color:var(--color-text-muted);font-size:13px;margin-bottom:16px}.gate .input{margin-bottom:12px}.placeholder{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--color-text-muted);font-size:14px;text-align:center}@keyframes spin{to{transform:rotate(1turn)}}.spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}.template-preview{margin-top:8px;padding:8px 12px;background:var(--color-bg);border-radius:6px;font-size:12px;color:var(--color-text-muted)}.template-preview ul{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-wrap:wrap;gap:4px}.template-preview li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;padding:2px 8px;font-size:11px}.shell{display:flex;height:100vh;overflow:hidden}@media (max-width:768px){.shell{display:block}.shell-main{height:100vh}}.shell-main{flex:1 1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.shell-content{flex:1 1;overflow-y:auto;padding:0;background:var(--bg)}@keyframes page-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.shell-content>*{animation:page-fade-in .22s ease}.sidebar{width:240px;background:var(--panel);display:flex;flex-direction:column;flex-shrink:0;z-index:100;transition:width .32s cubic-bezier(.4,0,.2,1)}.light .sidebar{background:var(--panel-soft);border-right:1px solid var(--border)}.light .sidebar-group-label{color:var(--subtle);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.light .sidebar-link:hover{background:var(--panel-item);color:var(--text)}.light .sidebar-link--active,.light .sidebar-link--active:hover{background:var(--primary-soft);color:var(--primary)}.light .sidebar-link--active .sidebar-icon{color:var(--primary)}.sidebar--collapsed{width:56px}.sidebar--collapsed .sidebar-label{display:none}.sidebar--collapsed .sidebar-link{padding:0 8px}.sidebar--collapsed .sidebar-link:hover{transform:none}.sidebar--collapsed .sidebar-footer{padding:10px 8px;display:flex;justify-content:center}.sidebar--collapsed .sidebar-footer>div{justify-content:center;gap:0}@media (max-width:768px){.sidebar{position:fixed;top:0;left:0;height:100vh;width:240px!important;transform:translateX(-100%);transition:transform .25s ease;box-shadow:4px 0 24px rgba(0,0,0,.3)}.sidebar--mobile-open{transform:translateX(0)}}.sidebar-backdrop{display:none}@media (max-width:768px){.sidebar-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99}}.sidebar-header{display:flex;align-items:center;padding:0 8px 0 18px;height:52px;flex-shrink:0}.sidebar-brand{font-size:15px;font-weight:600;color:var(--text);white-space:nowrap;letter-spacing:0;line-height:1.5}.sidebar-brand-icon{font-size:16px;font-weight:800;color:var(--primary);margin:0 auto}.sidebar-nav{flex:1 1;padding:4px 8px;overflow-y:auto}.sidebar-group,.sidebar-nav{display:flex;flex-direction:column;gap:1px}.sidebar-group{margin-bottom:1px}.sidebar-group-label{letter-spacing:0;line-height:1.5;padding:10px 0 4px;text-transform:none}.sidebar-group-label,.sidebar-link{font-size:14px;font-weight:400;color:var(--muted)}.sidebar-link{display:flex;align-items:center;gap:8px;height:36px;padding:0 8px;margin-bottom:1px;border-radius:8px;text-decoration:none;white-space:nowrap;overflow:hidden;background:none;border:none;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease}.sidebar-link:hover{background:var(--panel-soft);color:var(--text);transform:translateX(2px)}.sidebar-link--active,.sidebar-link--active:hover{background:var(--panel-item);color:var(--text);font-weight:500}.sidebar-link--active:hover{transform:none}.sidebar-link--active .sidebar-icon{color:var(--text);opacity:.9}.sidebar-icon{font-size:16px;width:22px;text-align:center;flex-shrink:0}.sidebar-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ns-section-title{opacity:.45}.light .ns-section-title{opacity:1;color:var(--muted)}.sidebar-footer{flex-shrink:0;padding:10px 8px}.sidebar-toggle{display:flex;align-items:center;gap:10px;height:36px;width:100%;padding:0 12px;border:none;border-radius:8px;background:transparent;color:var(--muted);font-size:13px;cursor:pointer;text-align:left;transition:background .15s ease,color .15s ease}.sidebar-toggle:hover{background:var(--panel-soft);color:var(--text)}.topbar{display:flex;align-items:center;justify-content:space-between;height:48px;padding:0 20px;border-bottom:1px solid color-mix(in srgb,var(--color-border) 40%,transparent);flex-shrink:0}.light .topbar{background:var(--panel);border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm)}.light .topbar-ns-label,.light .topbar-title{color:var(--muted)}.topbar-left{display:flex;align-items:center}.topbar-title{font-size:14px;font-weight:400;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;line-height:1.5}.topbar-center{display:flex;align-items:center;gap:8px}.topbar-ns-label{font-size:16px;color:var(--color-text-muted);font-weight:400}.topbar-ns-select{width:200px}.topbar-right{display:flex;align-items:center;gap:12px}.topbar-hamburger{display:none;align-items:center;justify-content:center;width:34px;height:34px;border:none;background:transparent;color:var(--muted);font-size:18px;cursor:pointer;border-radius:8px;margin-right:4px}.topbar-hamburger:hover{background:var(--panel-soft);color:var(--text)}@media (max-width:768px){.topbar-hamburger{display:flex}}.health-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--color-text-muted)}.health-dot--ok{background:var(--color-success)}.health-dot--error{background:var(--color-error)}.health-dot--loading{background:var(--color-text-muted);animation:pulse 1.5s ease-in-out infinite}.health-dot--large{width:18px;height:18px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.dashboard h1{font-size:20px;font-weight:400;margin-bottom:20px;line-height:1.3;letter-spacing:-.005em}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:16px;gap:16px}.dashboard-card{text-align:center;padding:24px 20px}.dashboard-card h2{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);margin-bottom:12px;line-height:1.4}.dashboard-stat{font-size:32px;font-weight:600;color:var(--color-text);line-height:1.2;letter-spacing:-.01em}.page-header{margin-bottom:24px}.page-header h1{font-size:20px;font-weight:400;line-height:1.3;letter-spacing:-.005em}.workspace{display:flex;flex-direction:column;gap:12px}.workspace-header-card{border-left:3px solid var(--color-primary)}.workspace-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);gap:12px;flex-wrap:wrap}.workspace-toolbar-left{display:flex;align-items:center;gap:10px}.workspace-toolbar-right{display:flex;align-items:center;gap:8px}.workspace-stat{font-size:13px;font-weight:400;color:var(--color-text-muted)}.workspace-stat--error{color:var(--color-error)}.workspace-sections{display:flex;flex-direction:column;gap:8px}.section-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;transition:border-color .15s}.section-card--failed{border-color:var(--color-error);border-left-width:3px}.section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background .1s}.section-header:hover{background:var(--color-bg)}.section-header-left,.section-header-right{display:flex;align-items:center;gap:8px}.section-title{font-size:14px;font-weight:400;color:var(--color-text);line-height:1.5;letter-spacing:0}.section-toggle{display:inline-block;font-size:12px;color:var(--color-text-muted);transition:transform .2s ease;width:16px;text-align:center}.section-toggle--open{transform:rotate(90deg)}.section-content{padding:0 16px 16px;border-top:1px solid var(--color-border)}.section-regen-btn{font-size:12px;padding:3px 8px;opacity:0;transition:opacity .15s}.section-header:hover .section-regen-btn{opacity:1}.light .section-regen-btn{background:var(--panel);border-color:var(--border-strong);color:var(--text);box-shadow:var(--shadow-sm)}.light .section-regen-btn:hover{background:var(--panel-item);border-color:var(--border-strong);box-shadow:none}.badge--error{background:#fef2f2;border-color:#fecaca}.badge--ok{background:#f0fdf4;border-color:#bbf7d0}.section-card--locked{border-left:3px solid var(--color-primary)}.lock-btn{font-size:12px;padding:3px 8px;opacity:0;transition:opacity .15s}.section-header:hover .lock-btn{opacity:1}.light .lock-btn{background:var(--panel);border-color:var(--border-strong);color:var(--text);box-shadow:var(--shadow-sm)}.light .lock-btn:hover{background:var(--panel-item);border-color:var(--border-strong);box-shadow:none}.section-card--editing{border-left:3px solid #f59e0b}.badge--editing{background:#fffbeb;color:#b45309;border-color:#fde68a}.section-edit{padding:0}.section-edit-textarea{width:100%;min-height:200px;padding:12px;border:1px solid var(--color-border);border-radius:var(--radius);font-family:SF Mono,Fira Code,Fira Mono,Menlo,Consolas,monospace;font-size:13px;line-height:1.6;color:var(--color-text);background:#fafafa;resize:vertical;outline:none;transition:border-color .15s}.section-edit-textarea:focus{border-color:var(--color-primary);background:var(--color-surface)}.light .section-edit-textarea{background:var(--panel-soft);border-color:var(--border-strong)}.light .section-edit-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-dim);background:var(--panel)}.section-edit-actions{display:flex;align-items:center;gap:8px;margin-top:8px;padding-bottom:4px}.section-edit-hint{font-size:11px;color:var(--color-text-muted);margin-left:auto}.badge--draft{background:var(--color-surface);color:var(--color-text-muted);border-color:var(--color-border)}.badge--under-review{background:#fffbeb;color:#b45309;border-color:#fde68a}.badge--approved{background:#f0fdf4;color:var(--color-success);border-color:#bbf7d0}.badge--finalized,.badge--locked{background:#eff6ff;color:var(--primary);border-color:#bfdbfe}.status-controls{gap:4px}.diff-overlay,.status-controls{display:flex;align-items:center}.diff-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:200;justify-content:center;padding:24px}.diff-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 8px 32px rgba(0,0,0,.2);max-width:900px;width:100%;max-height:80vh;display:flex;flex-direction:column}.diff-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.light .diff-overlay{background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.light .diff-modal{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:12px}.light .diff-header{color:var(--text);border-bottom:1px solid var(--border)}.diff-header h2{font-size:16px;font-weight:400;margin:0;line-height:1.5;letter-spacing:0}.diff-body{overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.diff-section{border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.diff-section-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px}.diff-section-title{font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0}.diff-added{border-color:#bbf7d0}.diff-removed{border-color:#fecaca}.diff-changed{border-color:#fde68a}.badge--diff-added{background:#f0fdf4;color:var(--color-success);border-color:#bbf7d0}.badge--diff-removed{background:#fef2f2;color:var(--color-error);border-color:#fecaca}.badge--diff-changed{background:#fffbeb;color:#b45309;border-color:#fde68a}.badge--diff-unchanged{background:var(--color-surface);color:var(--color-text-muted);border-color:var(--color-border)}.diff-content-pair{display:grid;grid-template-columns:1fr 1fr;grid-gap:0;gap:0}.diff-content-old{border-right:1px solid var(--color-border);background:#fef2f2}.diff-content-new{background:#f0fdf4}.diff-content-label{font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.08em;line-height:1.4;padding:6px 14px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border)}.diff-content-single{padding:0}.diff-section pre{margin:0;padding:12px 14px;font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.memory-editor{display:flex;flex-direction:column;gap:12px}.memory-editor-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.memory-editor-actions{display:flex;align-items:center;gap:8px}.memory-editor-card{display:flex;flex-direction:column;padding:0}.memory-editor-status-bar{display:flex;align-items:center;gap:12px;padding:8px 16px;border-bottom:1px solid var(--color-border);min-height:36px;font-size:13px}.memory-editor-parse-error{color:var(--color-error);font-size:12px}.memory-editor-dirty{color:#b45309;font-size:12px}.memory-editor-success{color:var(--color-success);font-size:12px}.memory-editor-error{color:var(--color-error);font-size:12px}.memory-editor-textarea{width:100%;min-height:420px;padding:16px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:13px;line-height:1.6;color:var(--color-text);background:var(--color-surface);border:none;outline:none;resize:vertical;-moz-tab-size:2;tab-size:2}.memory-editor-textarea::placeholder{color:var(--color-text-muted)}.memory-editor-textarea--error{background:#fef2f2}.memory-editor-hint{padding:10px 16px;border-top:1px solid var(--color-border);font-size:12px}.memory-editor-hint code{background:var(--color-bg);padding:1px 5px;border-radius:3px;font-size:11px}.admin-nav{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:12px;gap:12px}.admin-nav-card{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:var(--color-text);transition:border-color .15s,box-shadow .15s}.admin-nav-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px rgba(37,99,235,.1)}.admin-nav-icon{font-size:20px;margin-bottom:4px}.admin-nav-label{font-size:15px;font-weight:400;line-height:1.5;letter-spacing:0}.ns-manager{gap:16px}.ns-manager,.ns-manager-form{display:flex;flex-direction:column}.ns-manager-form{gap:8px}.ns-manager-input-row{display:flex;gap:10px;align-items:flex-start}.ns-manager-success{color:var(--color-success);font-size:13px}.ns-list{list-style:none}.ns-list-item{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid var(--color-border);font-size:14px}.ns-list-item:last-child{border-bottom:none}.ns-list-name{font-weight:400;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:13px}@media (max-width:768px){.sidebar{position:fixed;z-index:100;height:100vh;box-shadow:2px 0 8px rgba(0,0,0,.1)}.sidebar--collapsed{width:0;overflow:hidden;border:none}}.file-uploader{display:flex;flex-direction:column;gap:16px}.upload-zone{border:2px dashed var(--color-border);border-radius:var(--radius);padding:40px 20px;text-align:center;cursor:pointer;transition:border-color .2s,background .2s;background:var(--color-surface)}.upload-zone:hover{border-color:var(--color-primary);background:rgba(37,99,235,.03)}.upload-zone-active{border-color:var(--color-primary);background:rgba(37,99,235,.06)}.upload-zone-content{display:flex;flex-direction:column;align-items:center;gap:6px}.upload-zone-icon{font-size:32px;line-height:1;color:var(--color-text-muted)}.upload-zone-content p{margin:0;font-size:14px}.upload-file-list-title{font-size:14px;font-weight:400;margin:0 0 10px;display:flex;align-items:center;gap:8px}.upload-file-list{list-style:none;margin:0;padding:0}.upload-file-item{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--color-border);font-size:13px}.upload-file-item:last-child{border-bottom:none}.upload-file-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400}.upload-file-remove{background:none;border:none;font-size:18px;line-height:1;color:var(--color-text-muted);cursor:pointer;padding:2px 6px;border-radius:4px}.upload-file-remove:hover{color:var(--color-error);background:rgba(220,38,38,.08)}.upload-file-remove:disabled{opacity:.4;cursor:not-allowed}.upload-progress-track{width:100%;height:6px;background:var(--color-border);border-radius:3px;overflow:hidden;margin-top:10px}.upload-progress-bar{height:100%;background:var(--color-primary);border-radius:3px;transition:width .2s ease}.upload-result{border-color:var(--color-success)}.upload-result h3{font-size:15px;font-weight:400;margin:0 0 12px;color:var(--color-success);line-height:1.5;letter-spacing:0}.upload-result-stats{display:flex;gap:24px}.upload-result-stat{display:flex;flex-direction:column;gap:2px}.upload-result-value{font-size:22px;font-weight:600;line-height:1.3;letter-spacing:-.005em}.existing-files-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.existing-files-header .upload-file-list-title{margin:0}.existing-files-table{width:100%;border-collapse:collapse;font-size:13px}.existing-files-table th{text-align:left;font-size:12px;font-weight:400;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;line-height:1.4;padding:6px 10px;border-bottom:1px solid var(--color-border)}.existing-files-table td{padding:8px 10px;border-bottom:1px solid var(--color-border)}.existing-files-table tr:last-child td{border-bottom:none}.existing-files-name{font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.existing-files-delete{color:var(--color-error);border-color:var(--color-error)}.existing-files-delete:hover{background:rgba(220,38,38,.06)}.existing-files-success{color:var(--color-success);font-size:13px}.ai-builder{margin-bottom:20px}.ai-builder-header{margin-bottom:16px}.ai-builder-header h3{margin:0 0 4px;font-size:14px;font-weight:400;line-height:1.5;letter-spacing:0}.ai-builder-section{display:flex;flex-direction:column;gap:8px}.ai-builder-label{font-size:12px;font-weight:400;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;line-height:1.4}.ai-builder-textarea{width:100%;padding:8px 10px;font-size:13px;font-family:inherit;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);resize:vertical;line-height:1.5}.ai-builder-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-accent) 20%,transparent)}.ai-builder-btn{align-self:flex-start;width:auto}.ai-builder-divider{height:1px;background:var(--color-border);margin:16px 0}.tpl-editor{display:grid;grid-template-columns:240px 1fr;grid-gap:16px;gap:16px;align-items:start}.tpl-editor-sidebar{position:-webkit-sticky;position:sticky;top:16px}.tpl-editor-sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.tpl-editor-sidebar-header h3{font-size:14px;font-weight:400;margin:0;line-height:1.5;letter-spacing:0}.tpl-editor-new{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.tpl-list{list-style:none;margin:0;padding:0}.tpl-list-item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:6px;cursor:pointer;font-size:13px;transition:background .15s}.tpl-list-item:hover{background:rgba(0,0,0,.04)}.tpl-list-item--active{background:rgba(37,99,235,.08);color:var(--color-primary)}.tpl-list-name{font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tpl-editor-main{min-height:400px}.tpl-editor-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.tpl-editor-toolbar h3{font-size:15px;font-weight:400;line-height:1.5;letter-spacing:0;margin:0}.tpl-editor-actions{display:flex;gap:8px}.tpl-editor-textarea{width:100%;min-height:420px;padding:12px;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:13px;line-height:1.6;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);resize:vertical;outline:none;-moz-tab-size:2;tab-size:2;transition:border-color .15s}.tpl-editor-textarea:focus{border-color:var(--color-primary)}.light .tpl-editor-textarea{border-color:var(--border-strong)}.light .tpl-editor-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-dim)}.tpl-editor-success{color:var(--color-success);font-size:13px;margin-top:8px}@media (max-width:768px){.tpl-editor{grid-template-columns:1fr}.tpl-editor-sidebar{position:static}}.presentation-layout{display:grid;grid-template-columns:300px 1fr;grid-gap:16px;gap:16px;align-items:start}.presentation-config-panel{display:flex;flex-direction:column;gap:16px;position:-webkit-sticky;position:sticky;top:24px}.presentation-preview-panel{min-height:400px}@media (max-width:900px){.presentation-layout{grid-template-columns:1fr}.presentation-config-panel{position:static}}.microsite-preview{border-radius:var(--radius);border:1px solid var(--color-border);overflow:hidden}.microsite-preview[data-theme=dark]{--ms-bg:#1a1a2e;--ms-text:#e0e0e0;--ms-border:#2a2a3e}.microsite-preview[data-theme=light]{--ms-bg:#ffffff;--ms-text:#1a1a1a;--ms-border:#e5e7eb}.microsite-preview[data-theme=brand]{--ms-bg:#f0f4ff;--ms-text:#1e293b;--ms-border:#c7d2fe}.microsite-section{padding:24px;border-bottom:1px solid var(--ms-border,var(--color-border));background:var(--ms-bg,var(--color-surface));color:var(--ms-text,var(--color-text))}.microsite-section:last-child{border-bottom:none}.microsite-section-title{font-size:18px;font-weight:400;margin-bottom:12px;color:var(--ms-accent,var(--color-primary));line-height:1.3;letter-spacing:-.005em}.microsite-section-body p{margin-bottom:8px;line-height:1.5}.microsite-section-body p:last-child{margin-bottom:0}.microsite-section-body ul{margin:0 0 8px 20px}.microsite-section-body li{margin-bottom:4px;line-height:1.5}.microsite-section-body pre{background:rgba(0,0,0,.05);padding:12px;border-radius:4px;overflow-x:auto;font-size:13px;margin-bottom:8px}.microsite-section-body code{background:rgba(0,0,0,.06);padding:1px 5px;border-radius:3px;font-size:12px}.microsite-section-body h3,.microsite-section-body h4{font-size:15px;font-weight:400;margin:12px 0 6px;line-height:1.5;letter-spacing:0}.chat-v2{flex-direction:row;height:100vh;background:var(--bg)}.chat-v2,.chat-v2-center{display:flex;overflow:hidden}.chat-v2-center{flex-direction:column;flex:1 1;min-width:0}.chat-v2-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:52px;border-bottom:1px solid transparent;transition:border-color .15s ease;flex-shrink:0;gap:12px}.chat-v2-header--scrolled{border-bottom-color:color-mix(in srgb,var(--border) 55%,var(--panel))}.chat-v2-header-left{display:flex;align-items:center;gap:10px}.chat-v2-ns{font-size:14px;font-weight:400;color:var(--text);line-height:1.5;letter-spacing:0}.chat-v2-status{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted)}.chat-v2-status-dot{width:7px;height:7px;border-radius:50%;background:var(--success);flex-shrink:0;box-shadow:0 0 4px var(--success)}.chat-v2-header-right{display:flex;align-items:center;gap:6px}.chat-v2-action-btn{display:flex;align-items:center;gap:5px;padding:6px 12px;font-size:14px;font-weight:400;color:var(--muted);background:var(--panel-soft);border:1px solid var(--border);border-radius:6px;cursor:pointer;white-space:nowrap}.chat-v2-action-btn:hover{color:var(--text);border-color:var(--primary)}.chat-v2-clear-btn{padding:5px 10px;font-size:12px;color:var(--muted);background:none;border:1px solid var(--border);border-radius:6px;cursor:pointer}.chat-v2-clear-btn:hover{color:var(--danger);border-color:var(--danger)}.proposal-card .chat-v2-clear-btn:hover,.proposal-cards-grid .chat-v2-clear-btn:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.chat-v2-panel-toggle{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--panel-soft);border:1px solid var(--border);border-radius:6px;font-size:14px;color:var(--muted);cursor:pointer}.chat-v2-panel-toggle:hover{color:var(--text);border-color:var(--border)}.chat-v2-body{flex:1 1;min-height:0}.chat-v2-body,.chat-v2-main{display:flex;overflow:hidden}.chat-v2-main{flex-direction:column;flex:1 1;min-width:0}.chat-v2-messages{flex:1 1;overflow-y:auto;padding:28px max(24px,calc((100% - 760px) / 2));display:flex;flex-direction:column;gap:20px;scroll-behavior:smooth}.chat-v2-messages::-webkit-scrollbar{width:4px}.chat-v2-messages::-webkit-scrollbar-track{background:transparent}.chat-v2-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.chat-v2-message{display:flex;align-items:flex-start;animation:msg-slide-in .22s ease both}@keyframes msg-slide-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-v2-message--user{flex-direction:row-reverse}.chat-v2-message--assistant{flex-direction:row;width:100%}.chat-v2-avatar{display:none}.chat-v2-bubble{padding:4px 0;font-size:15px;font-weight:400;line-height:1.6;overflow-wrap:break-word;word-break:normal;color:var(--text)}.chat-v2-message--user .chat-v2-bubble{background:var(--panel);border:none;border-radius:20px;padding:10px 16px;width:-moz-fit-content;width:fit-content;max-width:66.66%;margin-right:12px}.chat-v2-message--assistant .chat-v2-bubble{background:none;border:none;border-radius:0;width:100%;max-width:100%;padding:2px 0}.chat-v2-message--assistant .chat-v2-bubble p{margin:0 0 8px}.chat-v2-message--assistant .chat-v2-bubble p:last-child{margin-bottom:0}.chat-v2-message--assistant .chat-v2-bubble ol,.chat-v2-message--assistant .chat-v2-bubble ul{margin:4px 0 8px;padding-left:20px}.chat-v2-message--assistant .chat-v2-bubble li{margin-bottom:3px}.chat-v2-message--assistant .chat-v2-bubble strong{font-weight:600}.chat-v2-message--assistant .chat-v2-bubble em{font-style:italic}.chat-v2-message--assistant .chat-v2-bubble code{font-family:monospace;font-size:.9em;background:var(--panel);border-radius:4px;padding:1px 5px}.chat-v2-message--assistant .chat-v2-bubble pre{background:var(--panel);border-radius:8px;padding:12px;overflow-x:auto;margin:8px 0}.chat-v2-message--assistant .chat-v2-bubble pre code{background:none;padding:0;font-size:13px}.chat-v2-message--assistant .chat-v2-bubble h1,.chat-v2-message--assistant .chat-v2-bubble h2,.chat-v2-message--assistant .chat-v2-bubble h3{font-weight:600;margin:12px 0 4px;line-height:1.3}.chat-v2-message--assistant .chat-v2-bubble h1{font-size:17px}.chat-v2-message--assistant .chat-v2-bubble h2{font-size:15px}.chat-v2-message--assistant .chat-v2-bubble h3{font-size:14px}.chat-v2-bubble--thinking{display:flex;align-items:center;gap:7px;padding:6px 2px;background:transparent;box-shadow:none;border:none}.chat-status-text{font-size:14px;font-style:italic;color:var(--muted);line-height:1.4;animation:status-text-in .2s ease}@keyframes status-text-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.status-glyph{display:inline-block;width:.6em;height:.6em;flex-shrink:0;background:currentColor;color:var(--muted);animation:shape-morph 3.8s ease-in-out infinite}@keyframes shape-morph{0%,10%{-webkit-clip-path:polygon(50% 0,79% 0,100% 21%,100% 50%,100% 79%,79% 100%,50% 100%,21% 100%,0 79%,0 50%,0 21%,21% 0);clip-path:polygon(50% 0,79% 0,100% 21%,100% 50%,100% 79%,79% 100%,50% 100%,21% 100%,0 79%,0 50%,0 21%,21% 0)}17%,27%{-webkit-clip-path:polygon(50% 0,50% 0,50% 0,75% 50%,100% 100%,75% 100%,50% 100%,25% 100%,0 100%,25% 50%,50% 0,50% 0);clip-path:polygon(50% 0,50% 0,50% 0,75% 50%,100% 100%,75% 100%,50% 100%,25% 100%,0 100%,25% 50%,50% 0,50% 0)}34%,44%{-webkit-clip-path:polygon(50% 0,79% 7%,97% 25%,100% 50%,97% 75%,79% 93%,50% 100%,21% 93%,3% 75%,0 50%,3% 25%,21% 7%);clip-path:polygon(50% 0,79% 7%,97% 25%,100% 50%,97% 75%,79% 93%,50% 100%,21% 93%,3% 75%,0 50%,3% 25%,21% 7%)}51%,61%{-webkit-clip-path:polygon(50% 0,59% 34%,93% 25%,68% 50%,93% 75%,59% 66%,50% 100%,41% 66%,7% 75%,32% 50%,7% 25%,41% 34%);clip-path:polygon(50% 0,59% 34%,93% 25%,68% 50%,93% 75%,59% 66%,50% 100%,41% 66%,7% 75%,32% 50%,7% 25%,41% 34%)}68%,76%{-webkit-clip-path:polygon(50% 0,66% 22%,93% 25%,82% 50%,93% 75%,66% 78%,50% 100%,34% 78%,7% 75%,18% 50%,7% 25%,34% 22%);clip-path:polygon(50% 0,66% 22%,93% 25%,82% 50%,93% 75%,66% 78%,50% 100%,34% 78%,7% 75%,18% 50%,7% 25%,34% 22%);animation-timing-function:cubic-bezier(.4,0,1,1)}83%,91%{-webkit-clip-path:polygon(50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%);clip-path:polygon(50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%,50% 50%);animation-timing-function:cubic-bezier(.34,1.56,.64,1)}to{-webkit-clip-path:polygon(50% 0,79% 0,100% 21%,100% 50%,100% 79%,79% 100%,50% 100%,21% 100%,0 79%,0 50%,0 21%,21% 0);clip-path:polygon(50% 0,79% 0,100% 21%,100% 50%,100% 79%,79% 100%,50% 100%,21% 100%,0 79%,0 50%,0 21%,21% 0)}}.chat-v2-error{padding:10px 16px;background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius);color:var(--danger);font-size:13px}.chat-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1;padding:60px 32px;text-align:center;gap:10px;min-height:0;height:100%}.chat-empty-icon{font-size:44px;line-height:1;margin-bottom:4px;opacity:.5}.chat-empty-title{font-size:22px;font-weight:600;color:var(--text);margin:0;line-height:1.3;letter-spacing:-.005em}.chat-empty-sub{font-size:15px;color:var(--muted);margin:0 0 8px}.chat-empty-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:560px}.chat-suggestion-chip{padding:8px 16px;background:var(--panel-soft);border:none;border-radius:999px;font-size:15px;color:var(--text);cursor:pointer}.chat-suggestion-chip:hover{border-color:var(--primary);background:var(--primary-soft);color:var(--primary);transform:translateY(-1px)!important}.chat-v2-upload-wrap{padding:0 24px 8px;flex-shrink:0}.chat-v2-composer-wrap{flex-shrink:0;padding:12px max(24px,calc((100% - 760px) / 2)) 14px;background:var(--bg)}.chat-v2-composer{display:flex;align-items:flex-end;background:var(--panel-soft);border:none;border-radius:16px;padding:8px 8px 8px 6px;box-shadow:0 2px 8px rgba(0,0,0,.06);transition:box-shadow .15s,border-radius .25s cubic-bezier(.16,1,.3,1)}.chat-v2-composer:focus-within{box-shadow:0 2px 12px rgba(0,0,0,.1)}.light .chat-v2-composer{background:var(--panel)}.chat-v2-attach-btn{flex-shrink:0;width:34px;height:34px;border:none;background:none;border-radius:10px;font-size:22px;line-height:1;color:var(--muted);cursor:pointer;display:flex;align-items:center;justify-content:center;align-self:flex-end}.chat-v2-attach-btn.active,.chat-v2-attach-btn:hover{background:var(--primary-soft);color:var(--primary)}.chat-v2-input{flex:1 1;border:none;outline:none;background:transparent;font-size:15px;color:var(--text);padding:6px 10px;resize:none;line-height:1.5;max-height:160px;overflow-y:auto;scrollbar-width:none}.chat-v2-input::-webkit-scrollbar{display:none}.chat-v2-input::placeholder{color:var(--muted)}.chat-v2-input:disabled{opacity:.6}.chat-v2-send-btn{flex-shrink:0;width:36px;height:36px;border-radius:10px;border:none;background:var(--primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;align-self:flex-end;transition:background .15s,opacity .15s!important}.chat-v2-send-btn:hover:not(:disabled){background:#4a7aee}.chat-v2-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-v2-composer-hint{font-size:11px;color:var(--muted);text-align:center;margin:6px 0 0}.chat-ctx-panel{width:256px;background:var(--panel);overflow-y:auto;display:flex;flex-direction:column;height:100vh;padding-top:15px}.chat-ctx-panel::-webkit-scrollbar{width:3px}.chat-ctx-panel::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}@media (max-width:900px){.chat-ctx-panel,.chat-v2-panel-toggle{display:none}}.chat-ctx-section{padding:16px;border-bottom:1px solid var(--border)}.chat-ctx-title{font-size:11px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;line-height:1.4}.chat-ctx-empty{font-size:12px;color:var(--muted)}.chat-ctx-list{list-style:none;display:flex;flex-direction:column;gap:10px}.chat-ctx-item{display:flex;align-items:center;gap:8px}.chat-ctx-spinner{width:8px;height:8px;border-radius:50%;border:2px solid var(--primary);border-top:2px solid transparent;animation:spin .7s linear infinite;flex-shrink:0}.chat-ctx-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.chat-ctx-dot--done{background:var(--success)}.chat-ctx-dot--failed{background:var(--danger)}.chat-ctx-item-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px}.chat-ctx-item-label{font-size:12px;font-weight:400;color:var(--text)}.chat-ctx-item-label,.chat-ctx-item-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-ctx-item-sub{font-size:11px;color:var(--muted)}.chat-ctx-view-btn{font-size:11px;color:var(--primary);background:none;border:none;cursor:pointer;padding:0;flex-shrink:0}.chat-ctx-view-btn:hover{text-decoration:underline}.chat-ctx-stat-row{display:flex;align-items:baseline;gap:6px;margin-bottom:6px}.chat-ctx-stat-value{font-size:24px;font-weight:600;color:var(--text);line-height:1.2;letter-spacing:-.01em}.chat-ctx-stat-label{font-size:12px;color:var(--muted)}.chat-ctx-link{font-size:12px;color:var(--primary);text-decoration:none}.chat-ctx-link:hover{text-decoration:underline}.chat-ctx-ns-badge{display:inline-block;padding:3px 8px;background:var(--panel-soft);border:1px solid var(--border);border-radius:6px;font-size:12px;font-family:SF Mono,Fira Code,monospace;color:var(--text)}.chat-stream-text{white-space:pre-wrap}.chat-phase-label{font-size:12px}.chat-phase-label,.chat-phase-strip{color:var(--muted,#888);font-style:italic;letter-spacing:.01em}.chat-phase-strip{font-size:11px;text-align:center;padding:2px 0 6px}.chat-cursor{display:inline-block;width:2px;height:1em;background:var(--text);margin-left:2px;vertical-align:text-bottom;animation:blink .8s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.proposal-inline-stream{display:flex;flex-direction:column;gap:20px;padding:2px 0}.proposal-inline-waiting{display:inline-flex;align-items:center;padding:4px 0}.proposal-inline-section{display:flex;flex-direction:column;gap:6px;animation:section-appear .25s ease both}@keyframes section-appear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.proposal-inline-heading{font-size:13px;font-weight:600;color:var(--text);letter-spacing:.01em;margin:0;text-transform:uppercase;opacity:.6}.proposal-inline-body{font-size:14px;line-height:1.65;color:var(--text);position:relative}.proposal-inline-body p{margin:0 0 8px}.proposal-inline-body p:last-child{margin-bottom:0;display:inline}.proposal-inline-body ol,.proposal-inline-body ul{margin:4px 0 8px;padding-left:18px}.proposal-inline-body li{margin-bottom:3px}.chat-spinner-sm{width:14px;height:14px;border-width:2px;border-color:#fff rgba(255,255,255,.3) rgba(255,255,255,.3)}@media (max-width:640px){.chat-v2-action-btn span:last-child{display:none}.chat-v2-messages{padding:16px}.chat-v2-composer-wrap{padding:10px 12px 14px}}.chat-input-add--active{background:var(--color-primary);color:#ffffff}.chat-upload-drawer{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 -2px 12px rgba(0,0,0,.08);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.chat-upload-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-upload-title{font-size:13px;font-weight:400;color:var(--color-text-muted);margin-right:6px}.chat-upload-ns{font-size:13px;font-family:SF Mono,Fira Code,monospace;background:var(--color-bg);padding:1px 6px;border-radius:4px;border:1px solid var(--color-border)}.chat-upload-close{background:none;border:none;font-size:20px;line-height:1;color:var(--color-text-muted);cursor:pointer;padding:2px 6px;border-radius:4px}.chat-upload-close:hover{background:var(--color-bg);color:var(--color-text)}.chat-upload-zone{border:2px dashed var(--color-border);border-radius:var(--radius);padding:20px 12px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s;font-size:13px}.chat-upload-zone--active,.chat-upload-zone:hover{border-color:var(--color-primary);background:rgba(37,99,235,.03)}.chat-upload-icon{font-size:24px;display:block;margin-bottom:4px;color:var(--color-text-muted)}.chat-upload-link{color:var(--color-primary);text-decoration:underline}.chat-upload-file-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.chat-upload-file-item{display:flex;align-items:center;gap:8px;font-size:13px;padding:4px 0;border-bottom:1px solid var(--color-border)}.chat-upload-file-item:last-child{border-bottom:none}.chat-upload-file-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:400}.chat-upload-remove{background:none;border:none;font-size:15px;line-height:1;color:var(--color-text-muted);cursor:pointer;padding:0 4px;border-radius:3px}.chat-upload-remove:hover{color:var(--color-error)}.chat-upload-progress,.chat-upload-success{font-size:13px}.ingestion-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:400;padding:2px 8px;border-radius:10px;border:1px solid;white-space:nowrap}.ingestion-badge--uploaded{color:var(--color-text-muted);background:var(--color-bg);border-color:var(--color-border)}.ingestion-badge--processing{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.ingestion-badge--indexed{color:var(--color-success);background:#f0fdf4;border-color:#bbf7d0}.ingestion-badge--failed{color:var(--color-error);background:#fef2f2;border-color:#fecaca}.section-ai-btn{font-size:12px;padding:3px 8px;opacity:0;transition:opacity .15s;color:var(--color-primary);border-color:var(--color-primary)}.section-header:hover .section-ai-btn{opacity:1}.section-ai-btn:hover{background:var(--color-primary);color:#fff}.light .section-ai-btn{background:var(--panel);box-shadow:var(--shadow-sm)}.light .section-ai-btn:hover{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 2px 6px rgba(37,99,235,.18)}.ai-editor-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}.ai-editor-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 8px 32px rgba(0,0,0,.2);max-width:560px;width:100%;display:flex;flex-direction:column}.ai-editor-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.light .ai-editor-overlay{background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.light .ai-editor-modal{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:12px}.light .ai-editor-header{color:var(--text);border-bottom:1px solid var(--border)}.ai-editor-header h3{font-size:16px;font-weight:400;margin:0;line-height:1.5;letter-spacing:0}.ai-editor-section-name{font-size:13px;color:var(--color-text-muted);background:var(--color-bg);padding:2px 8px;border-radius:4px}.ai-editor-body{padding:16px 20px}.ai-editor-label{display:block;font-size:13px;font-weight:400;margin-bottom:8px;color:var(--color-text)}.ai-editor-textarea{width:100%;min-height:80px;padding:10px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);resize:vertical;line-height:1.5}.ai-editor-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(37,99,235,.15)}.ai-editor-textarea:disabled{opacity:.6;cursor:not-allowed}.light .ai-editor-textarea:focus{box-shadow:0 0 0 3px var(--primary-dim)}.light .ai-editor-textarea:disabled{background:var(--panel-soft);color:var(--subtle);border-color:var(--border);opacity:1;cursor:not-allowed}.ai-editor-suggestions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.ai-editor-suggestion{font-size:12px;padding:4px 10px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-bg);color:var(--color-text-muted);cursor:pointer;transition:all .15s}.ai-editor-suggestion:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.ai-editor-suggestion:disabled{opacity:.5;cursor:not-allowed}.ai-editor-footer{display:flex;flex-direction:column;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--color-border)}.ai-editor-actions{display:flex;justify-content:flex-end;gap:8px}.ai-editor-status{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-muted)}.ai-editor-hint{font-size:11px;color:var(--color-text-muted);text-align:right}.ai-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}.ai-preview-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 8px 32px rgba(0,0,0,.2);max-width:960px;width:100%;max-height:85vh;display:flex;flex-direction:column}.ai-preview-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.light .ai-preview-overlay{background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.light .ai-preview-modal{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:12px}.light .ai-preview-header{color:var(--text);border-bottom:1px solid var(--border)}.ai-preview-header h3{font-size:16px;font-weight:400;margin:0;line-height:1.5;letter-spacing:0}.ai-preview-body{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;padding:16px 20px;overflow-y:auto;flex:1 1}.ai-preview-column{display:flex;flex-direction:column;gap:8px;min-width:0}.ai-preview-column-label{font-size:12px;font-weight:400;text-transform:uppercase;letter-spacing:.08em;line-height:1.4;color:var(--color-text-muted)}.ai-preview-content{padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius);font-size:14px;line-height:1.5;overflow-y:auto;max-height:60vh}.ai-preview-content--original{background:#fef2f2;border-color:#fecaca}.ai-preview-content--rewritten{background:#f0fdf4;border-color:#bbf7d0}.ai-preview-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--color-border)}.block-editor{min-height:200px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.block-editor:focus-within{border-color:var(--color-primary)}.block-editor .tiptap{padding:16px;min-height:200px;outline:none;font-size:14px;line-height:1.5;letter-spacing:0;color:var(--color-text)}.block-editor .tiptap>*+*{margin-top:.75em}.block-editor .tiptap p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--color-text-muted);pointer-events:none;height:0}.block-editor .tiptap h1{font-size:1.5em;font-weight:600;line-height:1.3;letter-spacing:-.005em}.block-editor .tiptap h2{font-size:1.25em;font-weight:400;line-height:1.5;letter-spacing:0}.block-editor .tiptap h3{font-size:1.1em;font-weight:400;line-height:1.5;letter-spacing:0}.block-editor .tiptap ol,.block-editor .tiptap ul{padding-left:1.5em}.block-editor .tiptap table{width:100%;border-collapse:collapse;margin:.5em 0}.block-editor .tiptap table td,.block-editor .tiptap table th{border:1px solid var(--color-border);padding:6px 10px;text-align:left}.block-editor .tiptap table th{background:var(--panel-soft);font-weight:600}.block-editor .tiptap blockquote{border-left:3px solid var(--color-primary);padding-left:12px;color:var(--color-text-muted)}.slash-menu-wrapper{position:absolute;z-index:1000}.slash-menu{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 4px 16px rgba(0,0,0,.12);min-width:240px;max-height:320px;overflow-y:auto;padding:4px}.light .slash-menu{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:8px}.slash-menu__empty{padding:8px 12px;color:var(--color-text-muted);font-size:13px}.slash-menu__item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:none;border-radius:6px;cursor:pointer;text-align:left}.slash-menu__item--active,.slash-menu__item:hover{background:var(--panel-soft)}.slash-menu__item--active .slash-menu__title{color:var(--primary)}.light .slash-menu__item--active,.light .slash-menu__item:hover{background:var(--panel-item);color:var(--text)}.light .slash-menu__item--active .slash-menu__title{color:var(--primary)}.slash-menu__icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:4px;background:var(--color-border);font-size:12px;font-weight:400;color:var(--color-text);flex-shrink:0}.slash-menu__text{display:flex;flex-direction:column;min-width:0}.slash-menu__title{font-size:13px;font-weight:400;color:var(--color-text)}.slash-menu__description{font-size:11px;color:var(--color-text-muted)}.callout-block{border-radius:var(--radius);padding:12px;margin:4px 0;position:relative}.callout-block--info{background:#eff6ff;border-left:3px solid var(--primary)}.callout-block--warning{background:#fffbeb;border-left:3px solid #f59e0b}.callout-block--success{background:#f0fdf4;border-left:3px solid #16a34a}.callout-block__header{display:flex;align-items:center;gap:6px;margin-bottom:8px;position:relative}.callout-block__tone-btn{border:none;background:none;font-size:12px;font-weight:400;cursor:pointer;padding:2px 8px;border-radius:4px;color:var(--color-text)}.callout-block__tone-btn:hover{background:rgba(0,0,0,.06)}.callout-block__tone-menu{position:absolute;top:100%;left:0;z-index:10;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;box-shadow:var(--shadow);padding:4px}.callout-block__tone-option{display:block;width:100%;border:none;background:none;padding:4px 12px;font-size:12px;cursor:pointer;border-radius:4px;text-align:left}.callout-block__tone-option.active,.callout-block__tone-option:hover{background:#f3f4f6}.callout-block__textarea{width:100%;border:none;background:transparent;font-size:13px;line-height:1.6;resize:vertical;min-height:40px;outline:none;color:var(--color-text)}.pricing-table-block{margin:4px 0;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.pricing-table-block__label{background:#f3f4f6;padding:6px 12px;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.08em;line-height:1.4;color:var(--color-text-muted);border-bottom:1px solid var(--color-border)}.pricing-table-block__table{width:100%;border-collapse:collapse}.pricing-table-block__table th{background:#f9fafb;padding:6px 10px;font-size:12px;font-weight:400;text-align:left;border-bottom:1px solid var(--color-border)}.pricing-table-block__table td{padding:2px;border-bottom:1px solid #f3f4f6}.pricing-table-block__table input{width:100%;border:none;background:transparent;padding:4px 8px;font-size:13px;outline:none}.pricing-table-block__table input:focus{background:#eff6ff}.light .pricing-table-block__table input:focus{background:var(--primary-soft)}.pricing-table-block__table input[type=number]{width:60px}.pricing-table-block__action-col{width:32px}.pricing-table-block__remove-btn{border:none;background:none;color:var(--color-text-muted);cursor:pointer;font-size:16px;padding:2px 6px;border-radius:4px}.pricing-table-block__remove-btn:hover{background:#fee2e2;color:var(--color-error)}.pricing-table-block__add-btn{width:100%;border:none;background:none;padding:6px;font-size:12px;color:var(--color-primary);cursor:pointer}.pricing-table-block__add-btn:hover{background:#eff6ff}.timeline-block{margin:4px 0;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.timeline-block__label{background:#f3f4f6;padding:6px 12px;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.08em;line-height:1.4;color:var(--color-text-muted);border-bottom:1px solid var(--color-border)}.timeline-block__items{padding:12px 12px 4px 24px;position:relative}.timeline-block__items:before{content:"";position:absolute;left:18px;top:12px;bottom:4px;width:2px;background:var(--color-border)}.timeline-block__item{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;position:relative}.timeline-block__dot{width:10px;height:10px;border-radius:50%;background:var(--color-primary);flex-shrink:0;margin-top:6px;position:relative;z-index:1}.timeline-block__content{flex:1 1;min-width:0}.timeline-block__row{display:flex;align-items:center;gap:8px}.timeline-block__date{border:none;background:#eff6ff;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:400;color:var(--color-primary);width:80px;outline:none}.timeline-block__title{flex:1 1;border:none;background:transparent;font-size:13px;font-weight:400;outline:none;padding:2px 4px}.timeline-block__title:focus{background:#f9fafb;border-radius:4px}.timeline-block__description{width:100%;border:none;background:transparent;font-size:12px;color:var(--color-text-muted);outline:none;padding:2px 4px;margin-top:2px}.timeline-block__description:focus{background:#f9fafb;border-radius:4px}.timeline-block__remove-btn{border:none;background:none;color:var(--color-text-muted);cursor:pointer;font-size:16px;padding:0 4px;border-radius:4px;flex-shrink:0}.timeline-block__remove-btn:hover{background:#fee2e2;color:var(--color-error)}.timeline-block__add-btn{width:100%;border:none;border-top:1px solid var(--color-border);background:none;padding:6px;font-size:12px;color:var(--color-primary);cursor:pointer}.timeline-block__add-btn:hover{background:#eff6ff}.section-edit-status{font-size:11px;color:#f59e0b;font-weight:400}.exec-indicator-wrap{position:relative}.exec-indicator{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 8px;background:rgba(37,99,235,.08);color:var(--color-primary);border:1px solid rgba(37,99,235,.2);border-radius:20px;font-size:12px;font-weight:400;cursor:pointer;transition:background .15s;white-space:nowrap}.exec-indicator:hover{background:rgba(37,99,235,.15)}.exec-indicator-spinner{display:inline-block;width:10px;height:10px;border:1.5px solid rgba(37,99,235,.25);border-top:1.5px solid var(--color-primary);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.exec-indicator-float{position:fixed;bottom:24px;right:24px;z-index:200}.exec-panel{position:absolute;top:calc(100% + 8px);right:0;width:260px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 4px 16px rgba(0,0,0,.1);z-index:200;overflow:hidden}.light .exec-panel{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:8px}.exec-panel-header{padding:10px 14px;font-size:11px;font-weight:400;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;line-height:1.4;border-bottom:1px solid var(--color-border)}.exec-panel-list{list-style:none;padding:4px 0;max-height:240px;overflow-y:auto}.exec-panel-item{display:flex;align-items:center;gap:10px;padding:9px 14px}.exec-panel-item+.exec-panel-item{border-top:1px solid var(--color-border)}.exec-panel-item-spinner{display:inline-block;width:12px;height:12px;border:1.5px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.exec-panel-item-info{display:flex;flex-direction:column;gap:2px;min-width:0}.exec-panel-item-title{font-size:13px;font-weight:400;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exec-panel-hint,.exec-panel-item-status{font-size:11px;color:var(--color-text-muted)}.exec-panel-hint{padding:8px 14px;border-top:1px solid var(--color-border);line-height:1.5}.exec-drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.2);z-index:290;animation:exec-fade-in .2s ease}.light .exec-drawer-backdrop{background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@keyframes exec-fade-in{0%{opacity:0}to{opacity:1}}.exec-drawer{position:fixed;top:0;right:0;height:100%;width:380px;max-width:100vw;background:var(--color-surface);border-left:1px solid var(--color-border);box-shadow:-4px 0 32px rgba(0,0,0,.08);z-index:300;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .25s cubic-bezier(.4,0,.2,1)}.light .exec-drawer{background:var(--panel);border-left:1px solid var(--border);box-shadow:var(--shadow-lg)}.exec-drawer--open{transform:translateX(0)}.exec-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border);flex-shrink:0}.exec-drawer-title{font-size:15px;font-weight:400;color:var(--color-text);line-height:1.5;letter-spacing:0}.exec-drawer-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:transparent;border:none;color:var(--color-text-muted);font-size:14px;cursor:pointer;transition:background .15s,color .15s}.exec-drawer-close:hover{background:var(--color-bg);color:var(--color-text)}.exec-drawer-body{flex:1 1;overflow-y:auto;padding:4px 0 8px}.exec-drawer-section{padding-top:12px}.exec-drawer-section+.exec-drawer-section{border-top:1px solid var(--color-border);margin-top:4px;padding-top:16px}.exec-drawer-section-title{padding:0 20px 6px;font-size:11px;font-weight:400;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;line-height:1.4}.exec-drawer-item{padding:10px 20px}.exec-drawer-item+.exec-drawer-item{border-top:1px solid var(--color-border)}.exec-drawer-item-row{display:flex;align-items:flex-start;gap:10px}.exec-drawer-item-body{flex:1 1;min-width:0}.exec-drawer-item-title{font-size:13px;font-weight:400;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exec-drawer-item-sub{font-size:11px;color:var(--color-text-muted);margin-top:2px}.exec-drawer-item-sub--error{color:var(--color-error)}.exec-drawer-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(37,99,235,.2);border-top:2px solid var(--color-primary);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0;margin-top:1px}.exec-drawer-item-bar{height:2px;background:var(--color-border);border-radius:2px;overflow:hidden;margin-top:8px;position:relative}.exec-drawer-item-bar:after{content:"";position:absolute;top:0;left:0;height:100%;width:35%;background:var(--color-primary);border-radius:2px;animation:exec-slide 1.8s ease-in-out infinite}@keyframes exec-slide{0%{transform:translateX(-100%)}to{transform:translateX(380%)}}.exec-drawer-item-icon{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;font-weight:600;margin-top:1px}.exec-drawer-item-icon--completed{background:rgba(22,163,74,.1);color:var(--color-success)}.exec-drawer-item-icon--failed{background:rgba(220,38,38,.1);color:var(--color-error)}.exec-drawer-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:220px;gap:10px;color:var(--color-text-muted);font-size:14px}.exec-drawer-empty-icon{font-size:28px;opacity:.35}.exec-drawer-footer{padding:12px 20px;border-top:1px solid var(--color-border);font-size:11px;color:var(--color-text-muted);flex-shrink:0;line-height:1.5}@media (max-width:480px){.exec-drawer{width:100vw}}.trace-page-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.trace-page-heading{display:flex;flex-direction:column;gap:2px}.trace-page-title{font-size:20px;font-weight:600;margin:0;line-height:1.3;letter-spacing:-.005em}.trace-page-id{font-size:11px;color:var(--color-text-muted);font-family:var(--font-mono,monospace);letter-spacing:.01em}.trace-failure-banner{padding:10px 16px;background:rgba(220,38,38,.08);border:1px solid rgba(220,38,38,.25);border-radius:var(--radius-md,8px);color:var(--color-error);font-size:13px;margin-bottom:16px}.trace-summary{margin-bottom:20px}.trace-summary-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.trace-summary-left{display:flex;align-items:center;gap:10px}.trace-summary-model{font-size:12px;color:var(--color-text-muted);background:var(--color-bg-subtle,rgba(0,0,0,.04));border:1px solid var(--color-border);border-radius:4px;padding:2px 8px;font-family:var(--font-mono,monospace)}.metadata-bar{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--color-text-secondary,var(--color-text-muted))}.metadata-bar strong{color:var(--color-text);font-weight:400;margin-right:4px}.badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:99px;font-size:11px;font-weight:600;letter-spacing:.08em;line-height:1.4;text-transform:uppercase;border:1px solid transparent}.badge--ok{background:rgba(22,163,74,.1);color:var(--color-success);border-color:rgba(22,163,74,.2)}.badge--error{background:rgba(220,38,38,.1);color:var(--color-error);border-color:rgba(220,38,38,.2)}.badge--running{background:rgba(59,130,246,.1);color:var(--primary);border-color:rgba(59,130,246,.25);animation:badge-pulse 1.4s ease-in-out infinite}@keyframes badge-pulse{0%,to{opacity:1}50%{opacity:.6}}.trace-layout{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px}.trace-layout--has-panel{grid-template-columns:1fr 380px}.trace-timeline{padding:0;overflow:hidden}.trace-step{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;cursor:pointer;border-bottom:1px solid var(--color-border);transition:background .15s;position:relative;animation:step-mount .2s ease both;animation-delay:calc(var(--step-index, 0) * 30ms)}.trace-step:last-child{border-bottom:none}.trace-step:hover{background:var(--color-bg-hover,rgba(0,0,0,.03))}.trace-step--selected{background:var(--color-bg-selected,rgba(59,130,246,.06))}@keyframes step-mount{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.trace-step-connector{position:absolute;left:27px;top:44px;bottom:-1px;width:2px;background:var(--color-border)}.trace-step-icon-col{flex-direction:column;gap:4px;padding-top:1px}.trace-step-icon,.trace-step-icon-col{flex-shrink:0;display:flex;align-items:center}.trace-step-icon{width:28px;height:28px;border-radius:50%;justify-content:center;font-size:13px;background:var(--color-bg-subtle,rgba(0,0,0,.04));border:1px solid var(--color-border)}.trace-step-icon--planner{background:rgba(139,92,246,.1);border-color:rgba(139,92,246,.25);color:#7c3aed}.trace-step-icon--agent{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.25);color:#d97706}.trace-step-icon--tool{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.25);color:var(--primary)}.trace-step-icon--layout{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.25);color:#059669}.trace-step-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.trace-step-dot--completed{background:var(--color-success)}.trace-step-dot--failed{background:var(--color-error)}.trace-step-dot--running{background:var(--primary);animation:dot-pulse 1.2s ease-in-out infinite}@keyframes dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.75)}}.trace-step-body{flex:1 1;min-width:0}.trace-step-name{font-size:13px;font-weight:400;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trace-step-meta{display:flex;gap:8px;margin-top:3px;font-size:11px;color:var(--color-text-muted)}.trace-step-type{text-transform:capitalize}.trace-step-duration{font-family:var(--font-mono,monospace)}.trace-detail-panel{position:-webkit-sticky;position:sticky;top:80px;max-height:calc(100vh - 100px);display:flex;flex-direction:column;overflow:hidden;padding:0}.trace-detail-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--color-border);flex-shrink:0}.trace-detail-title{font-size:14px;font-weight:400;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trace-detail-body{flex:1 1;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:14px}.trace-detail-meta-grid{display:flex;flex-direction:column;gap:8px}.trace-detail-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.trace-detail-label{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;line-height:1.4;flex-shrink:0}.trace-detail-value{font-size:13px;color:var(--color-text);text-align:right}.trace-detail-section{display:flex;flex-direction:column;gap:6px}.trace-detail-section-title{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;line-height:1.4}.trace-detail-text{font-size:13px;color:var(--color-text);line-height:1.5;margin:0}.trace-detail-toggle{display:flex}.trace-detail-raw{font-size:11px;font-family:var(--font-mono,monospace);background:var(--color-bg-subtle,rgba(0,0,0,.04));border:1px solid var(--color-border);border-radius:var(--radius-sm,6px);padding:10px 12px;overflow-x:auto;white-space:pre;color:var(--color-text);margin:0;line-height:1.5}.trace-empty-state,.trace-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:160px;gap:8px;color:var(--color-text-muted);font-size:14px;text-align:center}.trace-error-state .muted{font-size:12px;opacity:.7}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.trace-skeleton-card,.trace-skeleton-header,.trace-skeleton-step{border-radius:var(--radius-md,8px);background:linear-gradient(90deg,var(--color-border) 25%,var(--color-bg-hover,rgba(0,0,0,.05)) 50%,var(--color-border) 75%);background-size:800px 100%;animation:shimmer 1.4s linear infinite}.trace-skeleton-header{height:40px;width:260px;margin-bottom:20px}.trace-skeleton-card{height:88px;margin-bottom:20px}.trace-skeleton-steps{display:flex;flex-direction:column;gap:10px}.trace-skeleton-step{height:56px}@media (max-width:768px){.trace-layout--has-panel{grid-template-columns:1fr}.trace-detail-panel{position:static;max-height:none}}.trace-step-indicator{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:0;padding-top:1px;position:relative}.trace-step-header-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.trace-step-type-label{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;line-height:1.4;margin-top:3px}.trace-page-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.trace-live-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:600;letter-spacing:.08em;line-height:1.4;text-transform:uppercase;background:rgba(22,163,74,.1);border:1px solid rgba(22,163,74,.3);color:var(--color-success)}.trace-live-dot{width:7px;height:7px;border-radius:50%;background:var(--color-success);animation:live-dot-pulse 1.2s ease-in-out infinite;flex-shrink:0}.trace-live-dot--lg{width:12px;height:12px}@keyframes live-dot-pulse{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 0 0 rgba(22,163,74,.4)}50%{opacity:.8;transform:scale(1.1);box-shadow:0 0 0 4px rgba(22,163,74,0)}}.trace-transport-warning{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-md,8px);font-size:12px;color:#92400e;margin-bottom:14px}.trace-empty-state--live{flex-direction:row;min-height:80px;gap:10px;color:var(--color-text-muted)}.trace-step--running{background:rgba(59,130,246,.03)}.trace-step-icon--spinning{position:relative;overflow:visible}.trace-step-icon--spinning:after{content:"";position:absolute;inset:-3px;border-radius:50%;border-left:2px solid transparent;border-bottom:2px solid transparent;border-top:2px solid transparent;border-top-color:var(--primary);border-right:2px solid transparent;border-right-color:var(--primary);animation:step-icon-spin .8s linear infinite}@keyframes step-icon-spin{to{transform:rotate(1turn)}}.trace-step-spinner{display:block;width:10px;height:10px;border-radius:50%;border:2px solid rgba(59,130,246,.25);border-top:2px solid var(--primary);animation:step-icon-spin .7s linear infinite}.trace-step-progress{margin-top:6px;height:2px;border-radius:99px;background:var(--color-border);overflow:hidden}.trace-step-progress-bar{height:100%;width:40%;border-radius:99px;background:var(--primary);animation:progress-sweep 1.6s ease-in-out infinite;transform-origin:left}@keyframes progress-sweep{0%{transform:translateX(-100%) scaleX(.5)}50%{transform:translateX(150%) scaleX(1.2)}to{transform:translateX(350%) scaleX(.5)}}.theme-toggle{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--border);border-radius:8px;background:var(--panel-soft);color:var(--muted);font-size:15px;cursor:pointer;flex-shrink:0;transition:background .15s ease,color .15s ease,border-color .15s ease}.theme-toggle:hover{background:var(--panel-soft);color:var(--text);border-color:var(--primary)}*,:after,:before{transition:background-color .25s ease,border-color .25s ease,color .25s ease}.page-loading{position:fixed;inset:0;pointer-events:none;z-index:9999}.page-loading-bar{position:absolute;top:0;left:0;height:2px;width:0;background:var(--primary);animation:loading-bar 1s ease-in-out forwards;box-shadow:0 0 8px var(--primary)}@keyframes loading-bar{0%{width:0;opacity:1}70%{width:85%;opacity:1}to{width:95%;opacity:.6}}.dash-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px;margin-bottom:24px}@media (max-width:1024px){.dash-stat-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.dash-stat-grid{grid-template-columns:1fr}}.dash-main-grid{display:grid;grid-template-columns:1fr 320px;grid-gap:20px;gap:20px;align-items:start}@media (max-width:900px){.dash-main-grid{grid-template-columns:1fr}}.dash-col-main,.dash-col-side{display:flex;flex-direction:column;gap:20px}.stat-card{position:relative;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.stat-card-accent{position:absolute;inset:0 auto 0 0;width:4px}.stat-card--blue .stat-card-accent{background:var(--primary)}.stat-card--green .stat-card-accent{background:var(--success)}.stat-card--purple .stat-card-accent{background:#a855f7}.stat-card--orange .stat-card-accent{background:#f97316}.stat-card-body{display:flex;align-items:center;gap:16px;padding:20px 20px 20px 24px}.stat-card-icon{font-size:28px;line-height:1;flex-shrink:0}.stat-card-content{display:flex;flex-direction:column;gap:2px;min-width:0}.stat-card-label{font-size:11px;font-weight:400;letter-spacing:.08em;line-height:1.4;text-transform:uppercase;color:var(--muted)}.stat-card-value{font-size:32px;font-weight:600;line-height:1.2;color:var(--text);letter-spacing:-.01em}.stat-card-trend{font-size:12px;color:var(--muted);margin-top:2px}.stat-card-skeleton{display:inline-block;width:48px;height:32px;background:var(--border);border-radius:4px;animation:skeleton-pulse 1.2s ease-in-out infinite;vertical-align:middle}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}.activity-timeline{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.activity-timeline-title{font-size:13px;font-weight:400;letter-spacing:.08em;line-height:1.4;color:var(--muted);text-transform:uppercase;margin-bottom:16px}.activity-list{list-style:none;display:flex;flex-direction:column;gap:0}.activity-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border);animation:activity-slide-in .3s ease both;animation-delay:calc(var(--item-index, 0) * 60ms)}.activity-item:last-child{border-bottom:none}@keyframes activity-slide-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.activity-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot--blue{background:var(--primary)}.dot--green{background:var(--success)}.dot--purple{background:#a855f7}.dot--orange{background:#f97316}.dot--skeleton{background:var(--border)}.activity-text{display:flex;flex-direction:column;gap:1px;flex:1 1;min-width:0}.activity-label{font-size:13px;font-weight:400;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-label a{color:inherit;text-decoration:none}.activity-label a:hover{color:var(--primary)}.activity-detail{font-size:12px;overflow:hidden;text-overflow:ellipsis}.activity-detail,.activity-ts{color:var(--muted);white-space:nowrap}.activity-ts{font-size:11px;flex-shrink:0}.activity-item--skeleton .activity-skel{display:block;background:var(--border);border-radius:4px;animation:skeleton-pulse 1.2s ease-in-out infinite;animation-delay:calc(var(--item-index, 0) * 80ms)}.activity-skel--label{width:120px;height:12px;margin-bottom:4px}.activity-skel--detail{width:80px;height:10px}.activity-empty{color:var(--muted);font-size:13px;padding:12px 0}.quick-actions{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.quick-actions-title{font-size:13px;font-weight:400;letter-spacing:.08em;line-height:1.4;color:var(--muted);text-transform:uppercase;margin-bottom:14px}.quick-actions-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.quick-action-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border-radius:var(--radius);border:1px solid var(--border);background:var(--panel-soft);text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease!important;cursor:pointer}.quick-action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.quick-action-btn--blue:hover{border-color:var(--primary)}.quick-action-btn--green:hover{border-color:var(--success)}.quick-action-btn--purple:hover{border-color:#a855f7}.quick-action-btn--orange:hover{border-color:#f97316}.quick-action-icon{font-size:20px;line-height:1}.quick-action-label{font-size:11px;font-weight:400;color:var(--text);text-align:center;line-height:1.3}.knowledge-stats{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.knowledge-stats-title{font-size:13px;font-weight:400;letter-spacing:.08em;line-height:1.4;color:var(--muted);text-transform:uppercase;margin-bottom:14px}.knowledge-stats-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.knowledge-stat-item{display:flex;align-items:center;gap:10px;padding:12px;background:var(--panel-soft);border-radius:var(--radius);border:1px solid var(--border)}.knowledge-stat-icon{font-size:20px;line-height:1}.knowledge-stat-body{display:flex;flex-direction:column;gap:2px}.knowledge-stat-value{font-size:20px;font-weight:600;color:var(--text);line-height:1.3;letter-spacing:-.005em}.knowledge-stat-label{font-size:11px;color:var(--muted);white-space:nowrap}.dash-ns-card{padding:20px}.dash-ns-title{font-size:13px;font-weight:400;letter-spacing:.08em;line-height:1.4;color:var(--muted);text-transform:uppercase;margin-bottom:14px}.dash-ns-list{list-style:none;display:flex;flex-direction:column;gap:8px}.dash-ns-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text)}.dash-ns-dot{width:6px;height:6px;border-radius:50%;background:var(--primary);flex-shrink:0}.diagram-container{container-type:inline-size;width:100%}.diagram-container svg{display:block;width:100%;max-width:100%;height:auto;min-height:200px}.diagram-container.type-gantt-chart{overflow-x:auto}.diagram-container.type-gantt-chart svg{min-width:520px}.diagram-container.type-pie-chart svg,.diagram-container.type-quadrant-matrix svg{max-width:480px;margin:0 auto;display:block}.diagram-container.type-mind-map svg{min-width:400px}.diagram-type-label{font-size:.65rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.4;text-align:center;margin-top:4px}.kb-stats{display:flex;gap:12px;margin-bottom:16px}.kb-stat{display:flex;flex-direction:column;align-items:center;padding:12px 20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;min-width:80px}.kb-stat-value{font-size:22px;font-weight:600;line-height:1.2;color:var(--color-text)}.kb-stat-value--ok{color:var(--color-success)}.kb-stat-value--processing{color:var(--primary)}.kb-stat-value--failed{color:var(--color-error)}.kb-stat-label{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.kb-table{width:100%;border-collapse:collapse;font-size:14px}.kb-table th{text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);padding:8px 12px}.kb-table td,.kb-table th{border-bottom:1px solid var(--color-border)}.kb-table td{padding:10px 12px;vertical-align:middle}.kb-table tbody tr:last-child td{border-bottom:none}.kb-table tbody tr:hover{background:var(--color-surface)}.kb-row--failed td{background:#fef2f2}.kb-cell-name{font-weight:500;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kb-cell-meta{color:var(--color-text-muted);font-size:13px;white-space:nowrap}.kb-cell-actions{text-align:right;white-space:nowrap;display:flex;gap:6px;justify-content:flex-end}.kb-btn-delete{color:var(--color-error);border-color:#fecaca}.kb-btn-delete:hover:not(:disabled){background:#fef2f2;border-color:var(--color-error)}.kb-spinner{display:inline-block;width:8px;height:8px;border:1.5px solid;border-top:1.5px solid transparent;border-radius:50%;animation:spin .7s linear infinite;margin-left:5px;vertical-align:middle}.kb-error-hint{margin-left:6px;cursor:help}.kb-error-hint,.kb-fetch-error{color:var(--color-error);font-size:13px}.kb-fetch-error{margin-bottom:12px}.kb-empty{display:flex;flex-direction:column;align-items:center}.kb-empty,.kb-loading-text{padding:48px 0;text-align:center}.ts-scanning{font-size:12px;color:var(--color-text-muted);font-weight:400;margin-left:8px}.ts-rec-banner{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:6px;border:1px solid;margin-top:8px;font-size:13px}.ts-rec-banner--active{background:#f0fdf4;border-color:#bbf7d0}.ts-rec-banner--passive{background:#fffbeb;border-color:#fde68a}.ts-rec-banner--fallback{background:var(--color-surface);border-color:var(--color-border)}.ts-rec-icon{font-size:14px;flex-shrink:0;margin-top:1px}.ts-rec-body{flex:1 1;min-width:0}.ts-rec-title{font-weight:600;margin:0 0 3px;color:var(--color-text)}.ts-rec-reason{margin:0;color:var(--color-text-muted);line-height:1.5}.proposal-sections-wrap{display:flex;flex-direction:column;gap:12px;width:100%}.chat-v2-bubble--sections{background:transparent!important;border:none!important;padding:0!important;box-shadow:none!important;width:100%;max-width:760px}.psb{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;transition:border-color .2s,box-shadow .2s}.psb--highlight,.psb:hover{border-color:var(--primary)}.psb--highlight{box-shadow:0 0 0 3px var(--primary-soft);animation:psb-flash 1.8s ease-out forwards}@keyframes psb-flash{0%{box-shadow:0 0 0 3px var(--primary-soft)}to{box-shadow:none}}.psb-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 8px;border-bottom:1px solid var(--border)}.psb-title{font-size:13px;font-weight:600;color:var(--text);margin:0;letter-spacing:.01em}.psb-meta{display:flex;align-items:center;gap:6px}.psb-version-badge{font-size:11px;font-weight:500;padding:2px 7px;border-radius:20px;background:var(--primary-soft);color:var(--primary);letter-spacing:.02em}.psb-loading-badge{font-size:11px;color:var(--muted);font-style:italic}.psb-body{padding:12px 14px}.psb-prose{font-size:13.5px;line-height:1.65;color:var(--text)}.psb-prose p:last-child{margin-bottom:0}.psb-textarea{width:100%;min-height:120px;max-height:420px;overflow-y:auto;background:var(--surface);border:1px solid var(--primary);border-radius:6px;padding:10px 12px;font-size:13.5px;line-height:1.65;color:var(--text);resize:none;overflow:hidden;font-family:inherit;box-sizing:border-box;outline:none}.psb-textarea:focus{box-shadow:0 0 0 2px var(--primary-soft)}.psb-error{font-size:12px;color:var(--danger);margin:0;padding:0 14px 8px}.psb-actions{display:flex;align-items:center;gap:6px;padding:8px 14px 10px;border-top:1px solid var(--border);background:var(--surface-raised,var(--surface));flex-wrap:wrap}.psb-btn{font-size:12px;padding:4px 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;font-weight:500;transition:background .15s,border-color .15s,color .15s;line-height:1.4}.psb-btn:hover:not(:disabled){background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.psb-btn:disabled{opacity:.45;cursor:not-allowed}.psb-btn--primary{background:var(--primary);border-color:var(--primary);color:#fff}.psb-btn--primary:hover:not(:disabled){background:#4a7aee;border-color:#4a7aee;color:#fff}.light .psb-btn--primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.psb-btn--tone{min-width:64px}.psb-btn--tone.active{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.psb-hint{font-size:11px;color:var(--muted);margin-left:4px}.psb-tone-wrap{position:relative}.psb-tone-menu{position:absolute;bottom:calc(100% + 6px);left:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.12);min-width:160px;z-index:50;overflow:hidden}.psb-tone-item{display:block;width:100%;text-align:left;padding:8px 12px;font-size:13px;background:none;border:none;color:var(--text);cursor:pointer;transition:background .12s}.psb-tone-item:hover{background:var(--primary-soft);color:var(--primary)}.psb--skeleton{pointer-events:none;opacity:.55}.psb-skeleton-title{height:14px;width:140px;border-radius:4px;background:linear-gradient(90deg,var(--border) 25%,var(--surface-raised,var(--surface)) 50%,var(--border) 75%);background-size:200% 100%;animation:psb-shimmer 1.4s infinite}.psb-skeleton-lines{padding:12px 14px;display:flex;flex-direction:column;gap:8px}.psb-skeleton-line{height:12px;border-radius:4px;background:linear-gradient(90deg,var(--border) 25%,var(--surface-raised,var(--surface)) 50%,var(--border) 75%);background-size:200% 100%;animation:psb-shimmer 1.4s infinite}.psb-skeleton-line--short{width:60%}@keyframes psb-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.trace-panel{width:340px;flex-shrink:0;display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--surface);overflow:hidden;font-size:12px}.trace-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border)}.trace-panel-title{font-weight:600;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary,#888)}.trace-panel-meta{display:flex;align-items:center;gap:8px}.trace-panel-live{font-size:10px;font-weight:600;color:#22c55e;letter-spacing:.05em;animation:trace-blink 1s step-start infinite}@keyframes trace-blink{50%{opacity:.4}}.trace-panel-refresh{background:none;border:none;cursor:pointer;font-size:14px;color:var(--text-secondary,#888);padding:2px 4px;border-radius:4px;line-height:1}.trace-panel-refresh:hover{background:var(--border);color:var(--text)}.trace-panel-body{flex:1 1;overflow-y:auto;padding:6px 0}.trace-panel-body::-webkit-scrollbar{width:3px}.trace-panel-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.trace-panel-disabled,.trace-panel-empty{padding:16px 14px;color:var(--text-secondary,#888);font-style:italic;line-height:1.5}.trace-row{display:grid;grid-template-columns:72px 72px 1fr auto;align-items:center;grid-gap:0 8px;gap:0 8px;padding:4px 14px;width:100%;text-align:left;background:none;border:none;cursor:default;font-family:inherit;font-size:12px;color:var(--text)}.trace-row:not(.trace-row--header){cursor:pointer}.trace-row:not(.trace-row--header):hover{background:var(--surface-raised,rgba(0,0,0,.04))}.trace-row--header{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary,#888);padding-bottom:6px;border-bottom:1px solid var(--border);margin-bottom:2px}.trace-col-time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-secondary,#888);white-space:nowrap}.trace-col-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trace-col-expand{color:var(--text-secondary,#888);font-size:10px}.trace-row--expanded .trace-col-expand{transform:rotate(180deg);display:inline-block}.trace-badge{display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;letter-spacing:.04em;padding:2px 6px;border-radius:3px;white-space:nowrap}.trace-badge--state{background:#dbeafe;color:#1d4ed8}.trace-badge--tool{background:#ede9fe;color:#6d28d9}.trace-badge--agent{background:#fce7f3;color:#be185d}.trace-badge--error{background:#fee2e2;color:#b91c1c}.trace-badge--artifact{background:#dcfce7;color:#15803d}.trace-row--error{background:rgba(254,226,226,.25)}.trace-row--artifact{background:rgba(220,252,231,.25)}.trace-detail{margin:0;padding:8px 14px 8px 24px;font-size:11px;font-family:SF Mono,Fira Code,monospace;background:var(--surface-raised,rgba(0,0,0,.03));border-left:2px solid var(--border);overflow-x:auto;white-space:pre-wrap;word-break:break-all;color:var(--text)}.trace-separator{border:none;border-top:1px dashed var(--border);margin:2px 14px}@media (max-width:900px){.trace-panel{display:none}}.ppb{gap:10px;padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:12px}.ppb,.ppb-rows{display:flex;flex-direction:column}.ppb-rows{gap:7px}.ppb-row{display:flex;align-items:flex-start;gap:8px}.ppb-row-icon{width:16px;height:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--muted);opacity:0}.ppb-row--active .ppb-row-icon,.ppb-row--done .ppb-row-icon{opacity:1;color:var(--primary)}.ppb-row-body{display:flex;flex-direction:column;gap:2px;min-width:0}.ppb-row-label{font-size:13px;color:var(--muted);font-weight:400;line-height:1.4;transition:color .2s,font-weight .2s}.ppb-row--active .ppb-row-label,.ppb-row--done .ppb-row-label{color:var(--text);font-weight:500}.ppb-row-detail{font-size:11px;color:var(--muted);font-style:italic;line-height:1.4}.ppb-dots{display:inline-block;width:.6em;height:.6em;flex-shrink:0;background:currentColor;color:var(--muted);animation:shape-morph 3.8s ease-in-out infinite}.ppb-tools{display:flex;flex-wrap:wrap;gap:6px}.ppb-tool{display:inline-flex;align-items:center;gap:5px;font-size:11px;padding:3px 8px;border-radius:20px;font-weight:500}.ppb-tool--active{background:var(--primary-soft,rgba(99,102,241,.12));color:var(--primary)}.ppb-tool--completed{background:var(--success-soft,rgba(34,197,94,.1));color:var(--success,#16a34a)}.ppb-tool--failed{background:rgba(239,68,68,.1);color:#dc2626}.ppb-tool-dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:ppb-pulse 1s ease-in-out infinite}@keyframes ppb-pulse{0%,to{opacity:1}50%{opacity:.3}}.ppb-sections-count{font-size:12px;color:var(--text);font-weight:500;display:flex;align-items:center;gap:6px}.ppb-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--primary);animation:ppb-pulse 1s ease-in-out infinite}.proposal-done-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--surface);border:1px solid var(--primary);border-radius:10px;margin-top:16px;box-shadow:0 0 0 3px var(--primary-soft,rgba(99,102,241,.08));animation:pdc-in .35s ease-out}@keyframes pdc-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.proposal-done-card__icon{width:36px;height:36px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0}.proposal-done-card__body{flex:1 1;min-width:0}.proposal-done-card__title{font-size:13px;font-weight:600;color:var(--text);margin:0}.proposal-done-card__sub{font-size:12px;color:var(--muted);margin:2px 0 0}.proposal-done-card__actions{display:flex;gap:8px;flex-shrink:0}.proposal-done-card__btn{padding:6px 14px;border-radius:6px;font-size:12px;font-weight:500;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:background .15s,border-color .15s}.proposal-done-card__btn:hover{background:var(--hover,var(--bg));border-color:var(--muted)}.proposal-done-card__btn--primary{background:var(--primary);color:#fff;border-color:var(--primary)}.proposal-done-card__btn--primary:hover{background:var(--primary-dark,var(--primary));border-color:var(--primary-dark,var(--primary));filter:brightness(.92)}.proposal-done-footer{margin-top:16px;padding-top:16px;border-top:1px solid var(--border,rgba(255,255,255,.08));display:flex;flex-direction:column;gap:12px}.proposal-done-message{font-size:13px;color:var(--fg-muted,var(--muted))}.proposal-done-actions{display:flex;gap:8px}.proposal-done-link{padding:6px 14px;border-radius:6px;font-size:12px;font-weight:500;border:1px solid var(--border,rgba(255,255,255,.12));color:var(--fg,#fff);text-decoration:none;background:transparent;transition:background .15s}.proposal-done-link:hover{background:var(--hover,rgba(255,255,255,.06))}.proposal-done-link--primary{background:var(--primary);border-color:var(--primary);color:#fff}.proposal-done-link--primary:hover{filter:brightness(.92)}.proposal-history-link-card{display:flex;align-items:center;gap:12px;margin-top:12px;padding:10px 14px;border-radius:8px;border:1px solid var(--border,rgba(255,255,255,.1));background:var(--surface-raised,rgba(255,255,255,.04))}.proposal-history-link-label{font-size:12px;color:var(--fg-muted,var(--muted));flex:1 1}.chat-gen-progress{display:flex;flex-direction:column;gap:6px;padding:12px 16px;background:var(--panel);border:1px solid var(--border);border-radius:4px 16px 16px 16px;max-width:72%;font-size:14px;line-height:1.5}.chat-gen-progress__label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:400;color:var(--text)}.chat-gen-progress__hint{font-size:12px;color:var(--muted)}.generate-proposal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px}.generate-proposal-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 8px 32px rgba(0,0,0,.2);width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.generate-proposal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border);flex-shrink:0}.light .generate-proposal-overlay{background:rgba(0,0,0,.35);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.light .generate-proposal-modal{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:12px}.light .generate-proposal-header{color:var(--text);border-bottom:1px solid var(--border)}.light .generate-proposal-footer{border-top:1px solid var(--border);background:var(--panel-soft)}.generate-proposal-header h3{font-size:16px;font-weight:400;margin:0;line-height:1.5}.generate-proposal-body{padding:20px;overflow-y:auto;flex:1 1}.generate-proposal-body,.generate-proposal-body>form{display:flex;flex-direction:column;gap:12px}.generate-proposal-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--color-border);flex-shrink:0}.proposal-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:14px;gap:14px;padding:20px 24px;max-width:860px;margin:0 auto;align-content:start}.proposal-card{background:var(--panel-soft);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px;transition:box-shadow .15s ease,transform .15s ease,border-color .15s ease;cursor:default;outline:none;text-align:left}.proposal-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.1);transform:translateY(-1px)}.light .proposal-card{background:var(--panel)}.proposal-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.proposal-card-name{font-size:14px;font-weight:500;color:var(--text);line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.proposal-card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}.proposal-card-meta{display:flex;align-items:center;gap:5px;min-width:0;flex:1 1}.proposal-card-ns{font-size:11px;font-weight:500;padding:2px 7px;border-radius:5px;background:var(--primary-soft);color:var(--primary);white-space:nowrap;flex-shrink:0}.proposal-card-date{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proposal-card-view-btn{font-size:12px;font-weight:500;color:var(--primary);text-decoration:none;padding:4px 10px;border-radius:6px;background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 25%,transparent);white-space:nowrap;flex-shrink:0;transition:background .12s ease,border-color .12s ease}.proposal-card-view-btn:hover{background:color-mix(in srgb,var(--primary) 18%,transparent);border-color:color-mix(in srgb,var(--primary) 45%,transparent)}@keyframes proposal-fadein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.proposal-view-fadein{animation:proposal-fadein .18s ease both}@keyframes proposal-skeleton-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.proposal-doc-skeleton{display:flex;flex-direction:column;gap:16px;padding-top:8px}.proposal-doc-skeleton-header,.proposal-doc-skeleton-section{border-radius:12px;background:linear-gradient(90deg,var(--panel-soft) 0,color-mix(in srgb,var(--border) 60%,var(--panel-soft)) 40%,var(--panel-soft) 80%);background-size:1200px 100%;animation:proposal-skeleton-shimmer 1.4s ease-in-out infinite}.proposal-doc-skeleton-header{height:80px;width:100%}.proposal-doc-skeleton-section{height:120px;width:100%}@keyframes proposal-card-border-pulse{0%,to{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 0 0 0 color-mix(in srgb,var(--primary) 0%,transparent)}50%{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent)}}@keyframes proposal-dot-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}.proposal-card--generating{background:color-mix(in srgb,var(--primary) 4%,var(--panel));animation:proposal-card-border-pulse 2s ease-in-out infinite;cursor:default}.proposal-card--generating:hover{transform:none}.proposal-card--gen-failed{background:color-mix(in srgb,var(--danger) 5%,var(--panel));border-color:color-mix(in srgb,var(--danger) 35%,var(--border));animation:none;box-shadow:none}.proposal-card--gen-failed:hover{transform:none;border-color:color-mix(in srgb,var(--danger) 40%,var(--border))}.proposal-card-gen-dots{display:flex;align-items:center;gap:3px;flex-shrink:0}.proposal-card-gen-dots span{width:5px;height:5px;border-radius:50%;background:var(--primary);display:block;animation:proposal-dot-bounce 1.2s ease-in-out infinite}.proposal-card-gen-dots span:nth-child(2){animation-delay:.2s}.proposal-card-gen-dots span:nth-child(3){animation-delay:.4s}.proposal-card-gen-spinner{width:14px;height:14px;border:2px solid color-mix(in srgb,var(--primary) 25%,transparent);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.template-page{display:flex;flex-direction:column;height:100%;background:var(--bg);overflow:hidden}.template-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px 16px;border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.template-page-header-left{display:flex;flex-direction:column;gap:8px;min-width:0}.template-page-back-btn{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-muted);background:none;border:none;cursor:pointer;padding:0;line-height:1}.template-page-back-btn:hover{color:var(--text)}.template-page-title{font-size:18px;font-weight:600;color:var(--text);line-height:1.3}.template-page-description{font-size:13px;color:var(--text-muted);margin-top:2px}.template-page-actions{flex-shrink:0}.template-page-approve-hint{font-size:12px;color:var(--text-muted);background:var(--panel-soft);border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;white-space:nowrap}.template-page-approve-hint strong{color:var(--primary)}.template-page-body{flex:1 1;overflow-y:auto;padding:20px 24px}.template-page-loading{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-size:13px;padding:40px 0}.template-page-spinner{width:16px;height:16px;border:2px solid color-mix(in srgb,var(--primary) 25%,transparent);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.template-page-error-msg{color:var(--error,#e53e3e);font-size:13px;padding:12px;background:color-mix(in srgb,var(--error,#e53e3e) 8%,transparent);border:1px solid color-mix(in srgb,var(--error,#e53e3e) 20%,transparent);border-radius:var(--radius)}.template-page-empty{color:var(--text-muted);font-size:13px;padding:40px 0}.template-page-error{padding:24px;color:var(--text-muted);font-size:13px}.template-sections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:14px;gap:14px}.template-section-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.template-section-card-header{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--panel-soft);border-bottom:1px solid var(--border)}.template-section-number{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--primary);color:#fff;font-size:11px;font-weight:600;flex-shrink:0}.template-section-title{font-size:13px;font-weight:600;color:var(--text)}.template-section-card-body{padding:12px 14px;display:flex;flex-direction:column;gap:10px}.template-section-field{display:flex;flex-direction:column;gap:3px}.template-section-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.template-section-value{font-size:12px;color:var(--text);line-height:1.5}.template-section-query{font-family:monospace;font-size:11px;color:var(--text-muted);background:var(--panel-soft);padding:4px 6px;border-radius:4px}.confirmation-block{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-top:8px;max-width:480px}.confirmation-block--entities{border-left:3px solid var(--primary)}.confirmation-block--template{border-left:3px solid #6c63ff}.confirmation-block--generated{border-left:3px solid #38a169}.confirmation-block-header{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--panel-soft);border-bottom:1px solid var(--border)}.confirmation-block-icon{font-size:14px;flex-shrink:0}.confirmation-block-title{font-size:13px;font-weight:600;color:var(--text);flex:1 1}.confirmation-template-badge{font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary);white-space:nowrap}.confirmation-template-badge--new{background:color-mix(in srgb,#38a169 15%,transparent);color:#38a169}.confirmation-block-body{padding:12px 14px;display:flex;flex-direction:column;gap:10px}.confirmation-entity-list{display:flex;flex-direction:column;gap:6px}.confirmation-entity-row{display:flex;align-items:center;gap:8px;font-size:13px}.confirmation-entity-label{font-weight:600;color:var(--text-muted);min-width:56px;font-size:12px}.confirmation-entity-value{font-weight:500;color:var(--text);flex:1 1}.confirmation-entity-source{font-size:11px;color:var(--text-muted);background:var(--panel-soft);padding:1px 6px;border-radius:10px;border:1px solid var(--border);white-space:nowrap}.confirmation-optional-fields{border-top:1px dashed var(--border);padding-top:8px}.confirmation-optional-label{font-size:11px;color:var(--text-muted);margin-bottom:4px}.confirmation-optional-list{font-size:12px;color:var(--text-muted);padding-left:16px;display:flex;flex-direction:column;gap:2px}.confirmation-template-name{font-size:14px;font-weight:600;color:var(--text)}.confirmation-template-reasoning{font-size:12px;color:var(--text-muted);line-height:1.5}.confirmation-sections-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:4px}.confirmation-sections-list{font-size:12px;color:var(--text);padding-left:18px;display:flex;flex-direction:column;gap:2px}.confirmation-view-link{font-size:12px;color:var(--primary);text-decoration:none;font-weight:500}.confirmation-view-link:hover{text-decoration:underline}.confirmation-block-footer{padding:10px 14px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px;background:var(--panel-soft)}.confirmation-btn{font-size:12px;font-weight:500;padding:6px 14px;border-radius:var(--radius);cursor:pointer;border:1px solid transparent;transition:opacity .15s}.confirmation-btn:disabled{opacity:.5;cursor:not-allowed}.confirmation-btn--primary{background:var(--primary);color:#fff;border-color:var(--primary)}.confirmation-btn--primary:hover:not(:disabled){opacity:.85}.confirmation-btn--secondary{background:transparent;color:var(--text);border-color:var(--border)}.confirmation-btn--secondary:hover:not(:disabled){background:var(--panel-soft)}.confirmation-hint{font-size:11px;color:var(--text-muted)}.chat-file-upload{background:var(--panel);border:none;border-radius:20px;padding:10px 16px;max-width:300px;width:-moz-fit-content;width:fit-content;margin-left:auto}.chat-file-upload--done,.chat-file-upload__header{display:flex;align-items:center;gap:6px}.chat-file-upload__icon{color:var(--muted);flex-shrink:0}.chat-file-upload__icon--primary{color:var(--primary)}.chat-file-upload__name{font-size:13px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px;flex:1 1}.chat-file-upload__name--inline{max-width:170px;flex:unset}.chat-file-upload__size{font-size:12px;color:var(--subtle,var(--muted));white-space:nowrap;flex-shrink:0}.chat-file-upload__track{background:var(--panel-item);border-radius:99px;height:3px;margin-top:8px;overflow:hidden}.chat-file-upload__fill{background:var(--primary);border-radius:99px;height:3px;transition:width .3s ease}.chat-file-upload__fill--error{background:var(--danger)}.chat-file-upload__status{font-size:12px;color:var(--muted);margin-top:6px}.chat-file-upload__status--error{color:var(--danger)}.chat-file-upload__check-icon{color:var(--success);flex-shrink:0;margin-left:auto}.chat-file-upload__steps{display:flex;flex-direction:column;gap:5px;margin-top:10px}.chat-file-upload__step{display:flex;align-items:center;gap:7px;font-size:12px;line-height:1.4;color:var(--muted);opacity:.45;transition:opacity .2s,color .2s}.chat-file-upload__step--done{opacity:.5;color:var(--muted)}.chat-file-upload__step--active{opacity:1;color:var(--text);font-weight:500}.chat-file-upload__step--pending{opacity:.35}.chat-file-upload__step-icon{width:14px;height:14px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.chat-file-upload__step-spinner{display:block;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--primary);border-top:1.5px solid transparent;animation:spin .7s linear infinite}.chat-file-upload__step-check{color:var(--success);opacity:.7}.chat-file-upload__step-dot-pending{display:block;width:5px;height:5px;border-radius:50%;border:1.5px solid}.chat-file-upload__step-pct{margin-left:auto;font-size:11px;color:var(--primary);font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chat-file-upload__chunk-progress{margin-top:8px}.chat-file-upload__chunk-bar{height:2px;background:var(--panel-item);border-radius:2px;overflow:hidden}.chat-file-upload__chunk-fill{height:100%;background:var(--primary);border-radius:2px;transition:width .4s ease;opacity:.6}@media (max-width:768px){.proposal-cards-grid{grid-template-columns:1fr;padding:20px 12px}.dash-stat-grid{grid-template-columns:repeat(2,1fr)}.dash-main-grid,.presentation-layout{grid-template-columns:1fr}.presentation-config-panel{position:static}.admin-nav{grid-template-columns:1fr}.kb-stats{flex-wrap:wrap;gap:8px}.kb-stat{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 4px)}.kb-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}.chat-panel-backdrop{display:none}@media (max-width:768px){.chat-panel-backdrop{display:block;position:fixed;inset:0;z-index:199;background:rgba(0,0,0,.3)}.chat-collection-panel,.chat-side-panel{position:fixed;top:0;right:0;height:100%;z-index:200;background:var(--panel);border-left:1px solid var(--border);box-shadow:-4px 0 24px rgba(0,0,0,.2)}}.skills-list-toggle,.skills-panel-backdrop{display:none}@media (max-width:768px){.skills-list-toggle{display:block;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:5px 12px;font-size:12px;font-weight:500;cursor:pointer}.skills-list-panel,.skills-resize-handle{display:none}.skills-list-panel.is-open{display:flex;position:fixed;top:0;right:0;height:100%;width:260px!important;z-index:200;background:var(--panel);border-left:1px solid var(--border);box-shadow:-4px 0 24px rgba(0,0,0,.2);overflow-y:auto;flex-direction:column}.skills-panel-backdrop{display:block;position:fixed;inset:0;z-index:199;background:rgba(0,0,0,.3)}.mse-bar{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:480px){.mse-bar{padding:0 8px!important}.mse-bar .mse-save-label{display:none}}@media (max-width:768px){.stat-card-body{padding:14px 14px 14px 18px;gap:10px}.stat-card-icon{font-size:20px}.stat-card-value{font-size:24px}}html{scroll-behavior:smooth}@media (max-width:768px){.topbar-hamburger{min-width:44px;min-height:44px}.btn-sm{min-height:44px}.chat-v2-attach-btn,.chat-v2-send-btn{min-width:44px;min-height:44px}.page-container{word-break:break-word;overflow-wrap:break-word}.chat-v2-composer-hint{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-v2-input::placeholder{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-v2-input{max-height:88px;font-size:16px}.chat-v2-composer{align-items:center}.chat-v2-header{padding-left:8px;padding-right:12px}.topbar-hamburger{background:var(--panel-soft);border:1px solid var(--border);border-radius:6px;width:30px;height:30px;min-width:unset;min-height:unset;margin-right:0;padding:7px}.chat-v2-panel-toggle{display:flex!important;padding:7px}.chat-ctx-panel{display:flex!important;width:100%!important;height:100%!important}.page-theme-toggle-corner{display:none}.welcome-mobile-header{display:flex;align-items:center;gap:8px;position:absolute;top:8px;left:12px}.welcome-mobile-brand{font-size:15px;font-weight:600;color:var(--text);letter-spacing:-.01em}}@media (min-width:769px){.welcome-mobile-brand,.welcome-mobile-header{display:none}}@media (max-width:768px){.create-ns-backdrop{padding:16px!important;align-items:flex-end!important}.create-ns-modal{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;border-radius:16px 16px 0 0!important}.create-ns-modal .btn-primary{min-height:44px}}.chat-v2-composer-wrap--question .chat-v2-composer{border-radius:0 0 16px 16px}.composer-context-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s cubic-bezier(.16,1,.3,1)}.composer-context-wrap--open{grid-template-rows:1fr}.composer-context-inner{overflow:hidden;display:flex;flex-direction:column}.composer-question-context{display:flex;flex-direction:column;gap:8px;padding:12px 14px 11px;background:var(--panel-soft);border-radius:16px 16px 0 0;border-bottom:1px solid var(--border);opacity:1;transform:translateY(0);transition:opacity .28s cubic-bezier(.16,1,.3,1),transform .28s cubic-bezier(.16,1,.3,1)}.composer-context-wrap:not(.composer-context-wrap--open) .composer-question-context{opacity:0;transform:translateY(16px)}.light .composer-question-context{background:var(--panel)}.composer-question-heading{margin:0;font-size:15px;font-weight:500;color:var(--muted)}.composer-question-card{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--panel);border-radius:10px}.light .composer-question-card{background:var(--panel-soft);border:1px solid var(--border)}.composer-question-content{flex:1 1;display:flex;flex-direction:column;gap:2px;min-width:0}.composer-question-text{font-size:15px;font-weight:500;color:var(--text);line-height:1.4}.composer-question-hint{font-size:12px;color:var(--muted);line-height:1.4}.composer-question-dismiss{flex-shrink:0;background:none;border:none;cursor:pointer;color:var(--muted);padding:2px;display:flex;align-items:center;border-radius:4px;transition:color .1s;margin-top:1px}.composer-question-dismiss:hover{color:var(--text)}.composer-template-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.composer-template-name{font-size:15px;font-weight:600;color:var(--text);flex:1 1;min-width:0}.composer-template-badge{flex-shrink:0;font-size:11px;font-weight:600;padding:2px 8px;border-radius:99px;background:var(--primary-soft);color:var(--primary);letter-spacing:.02em}.composer-template-subtitle{margin:4px 0 8px;font-size:12px;color:var(--muted);line-height:1.5;opacity:.8}.composer-template-reasoning{margin:0 0 6px;font-size:12px;color:var(--muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.composer-template-sections{margin:0 0 10px;font-size:12px;color:var(--muted);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.composer-template-actions{display:flex;align-items:center;gap:6px}.composer-template-btn{font-size:12px;font-weight:500;padding:5px 12px;border-radius:6px;border:1px solid var(--border);background:var(--panel-soft);color:var(--text);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:background .1s;white-space:nowrap}.composer-template-btn:hover{background:var(--panel)}.composer-template-btn--primary{background:var(--primary);border-color:var(--primary);color:#fff}.composer-template-btn--primary:hover{opacity:.9;background:var(--primary)}.composer-template-context-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.composer-template-card{display:flex;flex-direction:column;gap:8px;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:12px 14px}.composer-template-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.composer-template-section-list{margin:0;padding:0 0 0 16px;list-style:disc;display:flex;flex-direction:column;gap:2px}.composer-template-section-list li{font-size:12px;color:var(--muted);line-height:1.5}.composer-skill-picker{gap:10px}.composer-skill-strips{display:flex;flex-direction:column;gap:5px}.composer-skill-section-label{margin:0 0 4px;font-size:11px;font-weight:500;color:var(--muted)}.composer-skill-strip{display:flex;align-items:center;width:100%;padding:10px 13px;background:var(--panel);border:1px solid var(--border);border-radius:10px;cursor:pointer;text-align:left;transition:background .13s,border-color .13s,transform .1s;gap:10px}.composer-skill-strip:hover{background:var(--primary-soft);border-color:var(--primary);transform:translateX(2px)}.composer-skill-strip:active{transform:translateX(1px)}.composer-skill-strip--plain{background:rgba(255,255,255,.04);border-color:var(--border)}.light .composer-skill-strip--plain{background:var(--surface)}.composer-skill-strip--plain:hover{background:var(--panel-soft);border-color:var(--border);transform:translateX(2px)}.composer-skill-strip-dot{width:7px;height:7px;border-radius:50%;background:var(--primary);flex-shrink:0;opacity:.75;transition:opacity .13s}.composer-skill-strip:hover .composer-skill-strip-dot{opacity:1}.composer-skill-strip-name{flex:1 1;font-size:13px;font-weight:500;color:var(--text);line-height:1.4}.composer-skill-strip--plain .composer-skill-strip-name{font-weight:400;color:var(--muted)}.composer-skill-strip-arrow{font-size:13px;color:var(--muted);flex-shrink:0;transition:color .13s,transform .13s}.composer-skill-strip:hover .composer-skill-strip-arrow{color:var(--primary);transform:translateX(2px)}.composer-skill-divider{height:1px;background:var(--border);margin:3px 0;opacity:.5}.client-panel{flex-direction:column;height:100%;overflow:hidden}.client-panel,.client-panel-tabs{display:flex;background:var(--panel)}.client-panel-tabs{align-items:flex-end;border-bottom:1px solid var(--border);flex-shrink:0;padding:0 4px;gap:0;height:52px;overflow-x:auto;scrollbar-width:none}.client-panel-tabs::-webkit-scrollbar{display:none}.client-panel-tab{flex:1 1;font-size:14px;font-weight:500;color:var(--muted);background:none;border:none;border-bottom:2px solid transparent;height:100%;cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap;min-width:0;display:flex;align-items:flex-end;justify-content:center;padding:0 4px 10px}.client-panel-tab:hover{color:var(--text)}.client-panel-tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.client-panel-body{flex:1 1;overflow-y:auto;overscroll-behavior:contain}.client-panel-body::-webkit-scrollbar{width:3px}.client-panel-body::-webkit-scrollbar-track{background:transparent}.client-panel-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.client-panel-list{display:flex;flex-direction:column;padding:6px 8px;gap:4px}.client-panel-sub-label{font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;padding:4px 2px 2px;display:block}.client-panel-row{display:flex;align-items:center;gap:6px;height:32px;padding:0 10px;border-radius:6px;background:transparent;border:1px solid var(--border);cursor:pointer;position:relative;transition:background .12s;overflow:hidden}.client-panel-row:hover{background:color-mix(in srgb,var(--primary) 8%,transparent)}.client-panel-row-name{flex:1 1;font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.client-panel-version-badge{flex-shrink:0;display:inline-block;background:var(--primary-soft,rgba(91,140,255,.15));color:var(--primary);border-radius:100px;font-size:10px;font-weight:600;padding:2px 7px;letter-spacing:.04em;line-height:1.4}.client-panel-row-menu{position:absolute;right:8px;top:50%;transform:translateY(-50%);padding:1px 5px;border:none;line-height:1;transition:opacity .15s;pointer-events:none}.client-panel-row-menu[style*="opacity: 1"],.client-panel-row:hover .client-panel-row-menu{pointer-events:auto}.brief-side-panel{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--panel)}.brief-side-panel-heading{display:flex;align-items:center;gap:10px;padding:14px 16px 13px;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--panel)}.brief-side-panel-title{font-size:14px;font-weight:600;color:var(--text);letter-spacing:-.01em}.brief-side-panel-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;letter-spacing:.01em}.brief-side-panel-body{flex:1 1;overflow-y:auto;overscroll-behavior:contain;background:var(--panel)}.brief-side-panel-body::-webkit-scrollbar{width:3px}.brief-side-panel-body::-webkit-scrollbar-track{background:transparent}.brief-side-panel-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.brief-side-panel-section{padding:12px 12px 6px}.brief-panel-section-header,.brief-side-panel-section-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;padding:0 4px}.brief-panel-section-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.brief-panel-section-label{flex:1 1;text-transform:uppercase;letter-spacing:.06em}.brief-panel-section-count,.brief-panel-section-label{font-size:11px;font-weight:500;color:var(--muted)}.brief-side-panel-divider{height:1px;background:var(--border);margin:6px 12px;opacity:.5}.brief-side-panel-fields{display:flex;flex-direction:column;gap:2px}.brief-field-card{display:flex;flex-direction:column;padding:7px 4px;border-bottom:1px solid var(--border);gap:4px}.brief-field-card:last-child{border-bottom:none}.brief-field-header{display:flex;align-items:center;gap:7px}.brief-field-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.brief-field-label{font-size:10px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;flex:1 1;min-width:0}.brief-field-actions{display:flex;gap:2px;flex-shrink:0;opacity:0;transition:opacity .15s}.brief-field-card:hover .brief-field-actions{opacity:1}.brief-field-value-row{display:flex;flex-direction:column;gap:2px}.brief-field-value{font-size:12px;color:var(--text);line-height:1.5;word-break:break-word}.brief-field-source{font-size:10px;color:var(--muted);opacity:.6}.brief-field-edit-body{display:flex;flex-direction:column;gap:6px}.brief-field-input,.brief-field-textarea{width:100%;font-size:12px;padding:5px 8px;border:1px solid var(--primary);border-radius:6px;background:var(--panel);color:var(--text);resize:vertical;font-family:inherit;box-sizing:border-box}.brief-field-edit-actions{display:flex;gap:6px}.brief-knowledge-list{display:flex;flex-direction:column;gap:2px}.brief-knowledge-content{font-size:13px;color:var(--text);line-height:1.55;word-break:break-word}.brief-knowledge-icon-btn{background:none;border:none;cursor:pointer;padding:3px;color:var(--muted);border-radius:4px;display:flex;align-items:center;transition:color .1s,background .1s}.brief-knowledge-icon-btn:hover{color:var(--text);background:var(--panel-soft)}.brief-knowledge-edit{flex:1 1;display:flex;flex-direction:column;gap:6px}.brief-knowledge-textarea{font-size:12px;width:100%;resize:vertical;padding:6px 8px;border:1px solid var(--primary);border-radius:6px;background:var(--panel-soft);color:var(--text);font-family:inherit;line-height:1.5}.brief-knowledge-edit-actions{display:flex;gap:6px}.brief-knowledge-save-btn{font-size:11px;padding:3px 10px;cursor:pointer;background:var(--primary);color:#fff;border:none;border-radius:4px;font-weight:500}.brief-knowledge-save-btn:disabled{opacity:.4;cursor:not-allowed}.brief-knowledge-cancel-btn{font-size:11px;padding:3px 10px;cursor:pointer;background:none;border:1px solid var(--border);border-radius:4px;color:var(--text)}.brief-knowledge-show-more{font-size:12px;color:var(--primary);background:none;border:none;cursor:pointer;padding:6px 0 2px;font-weight:400}.brief-sources-list{display:flex;flex-direction:column;gap:2px}.brief-source-row{display:flex;align-items:center;gap:8px;padding:6px 4px;border-bottom:1px solid var(--border)}.brief-source-row:last-of-type{border-bottom:none}.brief-source-icon{font-size:12px;flex-shrink:0}.brief-source-name{flex:1 1;font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brief-source-meta{font-size:10px;color:var(--muted);flex-shrink:0}.brief-collection-field{display:flex;align-items:center;gap:8px;padding:5px 4px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--border)}.brief-collection-field:last-child{border-bottom:none}.brief-collection-field--filled{color:var(--text)}.brief-collection-dot{width:5px;height:5px;border-radius:50%;background:var(--border);flex-shrink:0}.brief-collection-dot--filled{background:var(--success,#22c55e)}.brief-branding-colors{display:flex;gap:5px;padding:4px 0}.brief-branding-swatch{width:18px;height:18px;border-radius:4px;border:1px solid rgba(255,255,255,.08);flex-shrink:0}.brief-branding-fonts{display:flex;flex-wrap:wrap;gap:4px;padding:4px 0}.brief-branding-font{font-size:11px;color:var(--text);background:var(--border);border-radius:4px;padding:1px 6px}.brief-branding-tone{font-size:11px;color:var(--muted);display:block;padding:4px 0}.proposal-card-skill-label{display:flex;align-items:center;gap:4px;padding:4px 12px 6px;font-size:11px;color:var(--muted);border-top:1px solid var(--border)}.proposal-card-skill-label strong{color:var(--primary);font-weight:600}.questions-block{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-top:12px;max-width:480px}.question-row{display:flex;align-items:flex-start;gap:12px;width:100%;padding:14px 16px;background:none;border:none;border-bottom:1px solid var(--border);cursor:pointer;text-align:left;transition:background .12s}.question-row:last-child{border-bottom:none}.question-number,.question-row:hover{background:var(--panel-soft)}.question-number{flex-shrink:0;width:20px;height:20px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--muted);line-height:1;margin-top:1px}.question-content{flex:1 1;display:flex;flex-direction:column;gap:3px;min-width:0}.question-text{font-size:14px;font-weight:500;color:var(--text);line-height:1.4}.question-hint{font-size:12px;color:var(--muted);line-height:1.4}.proposal-body{color:var(--text);font-size:15px;line-height:1.75}.proposal-body h1{font-size:26px;font-weight:700;color:var(--text);margin:0 0 20px;line-height:1.3}.proposal-body h2{font-size:19px;font-weight:650;color:var(--text);margin:32px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--border)}.proposal-body h3{font-size:15px;font-weight:650;color:var(--text);margin:20px 0 6px}.proposal-body p{margin:0 0 14px;color:var(--text)}.proposal-body ol,.proposal-body ul{margin:0 0 14px;padding-left:22px}.proposal-body li{margin-bottom:6px}.proposal-body strong{font-weight:650;color:var(--text)}.proposal-body em{font-style:italic}.proposal-body hr{border:none;border-top:1px solid var(--border);margin:24px 0}.proposal-body blockquote{border-left:3px solid var(--primary);margin:0 0 14px;padding:8px 16px;color:var(--muted);background:var(--panel-soft);border-radius:0 6px 6px 0}@keyframes scToastIn{0%{opacity:0;transform:translateX(-50%) translateY(8px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}