.compose{display:flex;flex-direction:column;min-height:calc(100dvh - var(--gnb-h, 64px))}.compose-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px clamp(16px,3vw,32px);border-bottom:1px solid var(--border)}.compose-head-left{display:flex;align-items:center;gap:10px;min-width:0}.compose-title{border:none;background:none;cursor:pointer;padding:2px 6px;border-radius:var(--radius-sm);font:700 17px/1.4 var(--font-sans);color:var(--text-strong);max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compose-title:hover{background:var(--fill-100)}.compose-save-state{font:500 12px/1.4 var(--font-sans);color:var(--text-faint)}.compose-save-state--error{color:var(--danger-text,#c0392b)}.compose-save-state--saved{color:var(--success-text,#1f8a4c)}.compose-head-actions{display:inline-flex;gap:8px;flex:none}.compose-error{margin:10px clamp(16px,3vw,32px) 0}.compose-body{flex:1 1;display:grid;grid-template-columns:280px 1fr;grid-gap:0;gap:0;min-height:0}.compose-tree{border-right:1px solid var(--border);padding:14px 12px 24px;overflow-y:auto}.compose-tree-head{display:flex;align-items:center;justify-content:space-between;padding:0 4px 8px}.compose-section{margin-bottom:12px}.compose-section-head{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px}.compose-section-title{border:none;background:none;cursor:pointer;padding:2px 4px;border-radius:var(--radius-sm);font:600 13px/1.4 var(--font-sans);color:var(--text-strong);text-align:left;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compose-section-title:hover{background:var(--fill-100)}.compose-section-title--static{cursor:default;color:var(--text-muted)}.compose-section-title--static:hover{background:none}.compose-section-actions{display:inline-flex;gap:2px;flex:none}.compose-row-action{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:var(--radius-sm);background:none;color:var(--text-faint);cursor:pointer}.compose-row-action:hover:not(:disabled){background:var(--fill-200);color:var(--text-strong)}.compose-row-action:disabled{opacity:.35;cursor:default}.compose-page-row{display:flex;align-items:center;justify-content:space-between;gap:6px;border-radius:var(--radius-sm);padding:0 4px 0 12px}.compose-page-row.on{background:var(--interactive-subtle)}.compose-page-btn{flex:1 1;border:none;background:none;cursor:pointer;text-align:left;padding:6px 4px;font:500 12.5px/1.4 var(--font-mono);color:var(--text-muted)}.compose-page-row.on .compose-page-btn{color:var(--interactive-text)}.compose-add-page{display:inline-flex;align-items:center;gap:4px;margin:2px 0 0 12px;border:none;background:none;cursor:pointer;padding:4px 6px;border-radius:var(--radius-sm);font:500 12px/1.4 var(--font-sans);color:var(--text-faint)}.compose-add-page:hover:not(:disabled){background:var(--fill-100);color:var(--interactive-text)}.compose-editor{display:flex;flex-direction:column;min-height:0}.compose-editor--empty{align-items:center;justify-content:center;gap:12px;color:var(--text-muted)}.compose-editor-bar{display:flex;align-items:center;gap:14px;padding:10px clamp(16px,2vw,24px);border-bottom:1px solid var(--border)}.compose-editor-page{font:600 12.5px/1.4 var(--font-mono);color:var(--text-muted)}.compose-editor-section{display:inline-flex;align-items:center;gap:8px;font:500 12.5px/1.4 var(--font-sans);color:var(--text-faint)}.compose-editor-hint{margin-left:auto;font:500 11px/1.4 var(--font-mono);letter-spacing:.06em;color:var(--text-faint)}.compose-textarea{flex:1 1;width:100%;min-height:60vh;resize:none;border:none;outline:none;padding:20px clamp(16px,2vw,24px) 48px;background:transparent;color:var(--text-strong);font:400 14.5px/1.8 var(--font-mono)}.compose-guard{display:flex;flex-direction:column;align-items:center;gap:14px;padding:64px 24px}@media (max-width:860px){.compose-body{grid-template-columns:1fr}.compose-tree{border-right:none;border-bottom:1px solid var(--border)}}.compose-body--ppt{display:block;overflow-y:auto}.ppt-studio{padding:20px clamp(16px,3vw,32px) 48px;display:flex;flex-direction:column;gap:14px}.ppt-studio-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.ppt-project-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.ppt-project-row{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--radius-md);padding:6px 10px 6px 6px;background:var(--surface-1)}.ppt-project-open{flex:1 1;display:flex;align-items:center;gap:10px;min-width:0;border:none;background:none;cursor:pointer;padding:8px;border-radius:var(--radius-sm);text-align:left}.ppt-project-open:hover{background:var(--fill-100)}.ppt-project-name{font-weight:600;color:var(--text-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ppt-project-meta{color:var(--text-faint);flex:none}.ppt-status-chip{flex:none;font:600 11px/1 var(--font-sans);padding:5px 8px;border-radius:999px;background:var(--fill-100);color:var(--text-muted)}.ppt-status-chip[data-status=GENERATING]{background:var(--accent-50,#eef4ff);color:var(--accent-600,#2f5fd0)}.ppt-status-chip[data-status=EXPORTED],.ppt-status-chip[data-status=READY]{background:var(--success-bg,#e8f6ee);color:var(--success-text,#1f8a4c)}.ppt-status-chip[data-status=FAILED]{background:var(--danger-bg,#fdecea);color:var(--danger-text,#c0392b)}.ppt-agent{padding:16px clamp(16px,3vw,32px) 48px;display:flex;flex-direction:column;gap:12px;min-height:0}.ppt-agent-head{display:flex;align-items:center;gap:10px}.ppt-agent-design{color:var(--text-muted)}.ppt-agent-body{flex:1 1;display:grid;grid-template-columns:232px minmax(300px,400px) 1fr;grid-gap:18px;gap:18px;min-height:0}.ppt-agent-left{min-height:0}.ppt-agent-left,.ppt-conversation{display:flex;flex-direction:column;gap:10px}.ppt-conversation{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);padding:12px;overflow-y:auto;max-height:52dvh;min-height:220px}.ppt-msg{display:flex;flex-direction:column;gap:2px;max-width:88%;align-self:flex-start}.ppt-msg p{margin:0;white-space:pre-wrap;word-break:break-word;padding:8px 11px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2,var(--surface-1))}.ppt-msg-role{font:600 11px/1.2 var(--font-sans);color:var(--text-faint);padding:0 4px}.ppt-msg--user{align-self:flex-end;align-items:flex-end}.ppt-msg--user .ppt-msg-role{color:var(--accent-600,#2f5fd0)}.ppt-msg--user p{background:color-mix(in srgb,var(--accent-600,#2f5fd0) 10%,transparent);border-color:color-mix(in srgb,var(--accent-600,#2f5fd0) 30%,var(--border))}.ppt-msg-system{align-self:center;font:500 11.5px/1.4 var(--font-sans);color:var(--text-faint);background:var(--surface-2,var(--surface-1));border:1px solid var(--border);border-radius:999px;padding:3px 12px}.ppt-msg-selection{color:var(--text-faint);font-size:11px;padding:0 4px}.ppt-livelog{border-top:1px dashed var(--border);padding-top:8px;display:flex;flex-direction:column;gap:4px}.ppt-livelog p{margin:0;color:var(--text-muted)}.ppt-livelog-busy{animation:ppt-pulse 1.2s ease-in-out infinite}@keyframes ppt-pulse{50%{opacity:.4}}.ppt-agent-empty{color:var(--text-faint);margin:0}.ppt-instruction{display:flex;flex-direction:column;gap:8px}.ppt-instruction textarea{width:100%;resize:vertical;background:var(--surface-1);color:var(--text-strong);padding:10px 12px;font:400 14px/1.6 var(--font-sans)}.ppt-instruction textarea,.ppt-nav{border:1px solid var(--border);border-radius:var(--radius-md)}.ppt-nav{display:flex;flex-direction:column;min-height:0;max-height:calc(100dvh - 220px);background:var(--surface-card);overflow:hidden}.ppt-nav-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border-subtle);background:var(--surface-sunken)}.ppt-nav-title{font:600 12px/1.3 var(--font-sans);letter-spacing:.04em;color:var(--text-muted)}.ppt-nav-count{font-size:12px;color:var(--text-faint)}.ppt-nav-list{flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding:8px}.ppt-nav-item{display:grid;grid-template-columns:18px auto 1fr;align-items:center;grid-gap:8px;gap:8px;padding:6px 8px;border:1px solid transparent;border-radius:var(--radius-sm);background:none;cursor:pointer;text-align:left;transition:background .14s var(--ease-out),border-color .14s var(--ease-out)}.ppt-nav-item:hover{background:var(--fill-100)}.ppt-nav-item.on{background:var(--interactive-subtle);border-color:var(--blue-100)}[data-theme=dark] .ppt-nav-item.on{border-color:var(--border)}.ppt-nav-no{font-size:11.5px;color:var(--text-faint);text-align:right}.ppt-nav-item.on .ppt-nav-no{color:var(--interactive-text);font-weight:600}.ppt-nav-item-thumb{flex:none;border-radius:4px;overflow:hidden}.ppt-nav-item-title{font:500 12.5px/1.4 var(--font-sans);color:var(--text-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.ppt-nav-item--pending .ppt-nav-item-title,.ppt-nav-thumb-pending{color:var(--text-faint)}.ppt-nav-thumb-pending{display:flex;align-items:center;justify-content:center;width:96px;height:54px;border:1px dashed var(--border);border-radius:4px;background:var(--surface-sunken);font-size:11px}.ppt-nav-thumb-pending--busy{color:var(--interactive-text);border-color:var(--blue-100);animation:ppt-pending-pulse 1.6s ease-in-out infinite}@keyframes ppt-pending-pulse{0%,to{opacity:1}50%{opacity:.5}}.ppt-stage{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0}.ppt-stage-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.ppt-stage-caption{color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ppt-stage-canvas{width:100%;min-height:0}.ppt-stage-canvas .ppt-preview{box-shadow:var(--shadow-2)}.ppt-stage-empty{flex:1 1;display:flex;align-items:center;justify-content:center;border:1px dashed var(--border);border-radius:var(--radius-md);min-height:280px}.ppt-studio-title{cursor:default}.ppt-studio-title:hover{background:none}.ppt-source-chip{display:inline-flex;align-items:center;max-width:320px;height:26px;padding:0 10px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--surface-sunken);font:500 12px/1 var(--font-sans);color:var(--text-muted);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ppt-source-chip:hover{color:var(--interactive-text);border-color:var(--interactive)}.ppt-studio-badge{flex:none;font:600 11px/1 var(--font-sans);padding:4px 8px;border-radius:var(--radius-full);color:var(--interactive-text);background:var(--interactive-subtle)}.ppt-project-select{max-width:320px;height:34px;font-size:12.5px}.ppt-preview{position:relative;overflow:hidden;border-radius:var(--radius-sm);background:#fff;border:1px solid var(--border)}.ppt-preview-frame{width:1280px;height:720px;border:none;transform-origin:top left;pointer-events:none}.ppt-preview-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--text-faint)}.ppt-stage-strip{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.ppt-stage-step{font:600 11px/1.2 var(--font-sans);padding:3px 9px;border-radius:999px;border:1px solid var(--border);color:var(--text-faint);background:var(--surface-1)}.ppt-stage-step[data-state=done]{color:var(--accent-600,#2f5fd0);border-color:color-mix(in srgb,var(--accent-600,#2f5fd0) 35%,var(--border))}.ppt-stage-step[data-state=active]{color:#fff;background:var(--accent-600,#2f5fd0);border-color:var(--accent-600,#2f5fd0)}.ppt-wizard{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 12px;background:var(--surface-1);max-height:40dvh;overflow-y:auto}.ppt-wizard-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.ppt-wizard-title{font:650 12.5px/1.4 var(--font-sans);color:var(--text-strong)}.ppt-wizard-count{font-size:11.5px;color:var(--text-faint)}.ppt-wizard-fields{display:flex;flex-direction:column;gap:8px}.ppt-wizard-field{display:flex;flex-direction:column;gap:4px}.ppt-wizard-label{font:600 11.5px/1.4 var(--font-sans);color:var(--text-muted)}.ppt-wizard-options{display:flex;gap:6px;flex-wrap:wrap}.ppt-wizard-actions{display:flex;gap:8px;align-items:center;padding-top:4px;border-top:1px dashed var(--border)}.ppt-quick-chip{font:500 12px/1.3 var(--font-sans);padding:4px 11px;border-radius:999px;border:1px solid var(--border);background:var(--surface-2,var(--surface-1));color:var(--text-strong);cursor:pointer}.ppt-stage-quick{display:flex;flex-wrap:wrap;gap:6px}.ppt-quick-chip:hover:not(:disabled){border-color:var(--accent-600,#2f5fd0);color:var(--accent-600,#2f5fd0)}.ppt-quick-chip.on,.ppt-quick-chip.on:hover:not(:disabled){background:var(--accent-600,#2f5fd0);border-color:var(--accent-600,#2f5fd0);color:#fff}.ppt-quick-chip:disabled{opacity:.5;cursor:default}.ppt-selection-chip{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid color-mix(in srgb,var(--accent-600,#2f5fd0) 40%,var(--border));background:color-mix(in srgb,var(--accent-600,#2f5fd0) 8%,transparent);border-radius:var(--radius-md);padding:6px 10px}.ppt-selection-chip span{margin:0;color:var(--text-strong);min-width:0}.ppt-selection-chip code{font-family:var(--font-mono);font-size:11.5px}.ppt-selection-chip button{display:inline-flex;align-items:center;border:none;background:none;color:var(--text-faint);cursor:pointer;padding:2px;flex:none}.ppt-selection-chip button:hover{color:var(--text-strong)}.ppt-attach-chips{display:flex;flex-wrap:wrap;gap:6px}.ppt-attach-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;border:1px solid var(--border);background:var(--surface-2,var(--surface-1));border-radius:var(--radius-pill,999px);padding:4px 8px 4px 10px}.ppt-attach-chip>svg{flex:none;color:var(--text-faint)}.ppt-attach-chip span{margin:0;color:var(--text-strong);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ppt-attach-chip button{display:inline-flex;align-items:center;border:none;background:none;color:var(--text-faint);cursor:pointer;padding:2px;flex:none}.ppt-attach-chip button:hover:not(:disabled){color:var(--text-strong)}.ppt-attach-chip button:disabled{opacity:.4;cursor:default}.ppt-instruction-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.ppt-attach-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-muted,var(--text-faint));border-radius:var(--radius-md);padding:6px 10px;font:400 13px/1.2 var(--font-sans);cursor:pointer}.ppt-attach-btn:hover:not(:disabled){color:var(--text-strong);border-color:var(--text-faint)}.ppt-attach-btn:disabled{opacity:.5;cursor:default}.ppt-outline{display:flex;flex-direction:column;gap:12px;min-height:0;overflow-y:auto}.ppt-outline-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ppt-outline-title{font:650 14px/1.3 var(--font-sans);color:var(--text-strong)}.ppt-outline-hint{margin:4px 0 0;color:var(--text-faint)}.ppt-outline-actions{display:flex;gap:8px;flex:none}.ppt-outline-list{display:flex;flex-direction:column;gap:10px;padding-bottom:12px}.ppt-outline-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);padding:10px 12px;display:flex;flex-direction:column;gap:8px}.ppt-outline-card-head{display:flex;align-items:center;gap:8px}.ppt-outline-no{flex:none;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--surface-2,var(--surface-1));border:1px solid var(--border);font-size:12px}.ppt-outline-title-input{flex:1 1;min-width:0;font:600 13.5px/1.4 var(--font-sans);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text-strong);padding:4px 6px}.ppt-outline-title-input:focus{border-color:var(--accent-600,#2f5fd0);background:var(--surface-2,var(--surface-1));outline:none}.ppt-outline-card-tools{display:flex;gap:2px;flex:none}.ppt-outline-card-tools button{border:1px solid transparent;background:none;color:var(--text-faint);cursor:pointer;border-radius:var(--radius-sm);padding:2px 6px;font-size:12px}.ppt-outline-card-tools button:hover:not(:disabled){color:var(--text-strong);border-color:var(--border)}.ppt-outline-card-tools button:disabled{opacity:.35;cursor:default}.ppt-outline-body{width:100%;resize:vertical;font:400 13px/1.6 var(--font-sans);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2,var(--surface-1));color:var(--text-strong);padding:8px 10px}.ppt-preview--editable .ppt-preview-frame{pointer-events:auto}.ppt-preview--editable{outline:2px solid var(--accent-600,#2f5fd0);outline-offset:2px}.ppt-inspector{margin-top:10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-1);padding:10px 12px;display:flex;flex-direction:column;gap:10px}.ppt-inspector--dock{flex:0 0 auto;height:168px;padding:8px 12px;gap:8px;overflow:hidden}.ppt-inspector-empty{margin:auto;color:var(--text-muted);max-width:520px;text-align:center}.ppt-inspector-body{flex:1 1;min-height:0;overflow-y:auto;padding-right:2px}.ppt-inspector-tabs{display:flex;gap:0;margin-left:auto}.ppt-inspector-tab{font:600 12px/1.3 var(--font-sans);padding:5px 12px;border:1px solid var(--border);background:var(--surface-2,var(--surface-1));color:var(--text-muted);cursor:pointer}.ppt-inspector-tab+.ppt-inspector-tab{border-left:none}.ppt-inspector-tab:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.ppt-inspector-tab:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.ppt-inspector-tab.on{background:var(--accent-600,#2f5fd0);border-color:var(--accent-600,#2f5fd0);color:#fff}.ppt-inspector-color{width:44px;height:26px;padding:1px 2px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2,var(--surface-1));cursor:pointer}.ppt-inspector-font{width:min(260px,100%);padding:4px 8px}.ppt-inspector-box-field select,.ppt-inspector-font{font:500 12px/1.3 var(--font-sans);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2,var(--surface-1));color:var(--text-strong)}.ppt-inspector-box-field select{padding:3px 6px}.ppt-inspector-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.ppt-inspector-tag{font:600 12px/1.4 var(--font-mono);color:var(--accent-600,#2f5fd0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.ppt-inspector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:10px;gap:10px}.ppt-inspector-group{display:flex;flex-direction:column;gap:4px}.ppt-inspector-label{font:600 11px/1.3 var(--font-sans);color:var(--text-faint)}.ppt-inspector-box{display:flex;gap:4px;flex-wrap:wrap}.ppt-inspector-box-field{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:var(--text-faint)}.ppt-inspector-box-field input{width:58px;font:500 12px/1.3 var(--font-mono);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2,var(--surface-1));color:var(--text-strong);padding:3px 6px}.ppt-inspector-note{margin:0;color:var(--text-faint)}.ppt-inspector-actions{display:flex;gap:8px;flex-wrap:wrap}@media (max-width:1280px){.ppt-agent-body{grid-template-columns:200px minmax(260px,340px) 1fr}}@media (max-width:1020px){.ppt-agent-body{grid-template-columns:1fr}.ppt-nav{max-height:none}.ppt-nav-list{flex-direction:row;overflow-x:auto;overflow-y:hidden}.ppt-nav-item{grid-template-columns:18px auto;flex:none}.ppt-nav-item-title{display:none}}.ppt-studio-page{height:100%;min-height:0}.ppt-studio-page .ppt-agent{flex:1 1;min-height:0;padding-bottom:16px}.ppt-studio-page .ppt-agent-body{grid-template-rows:minmax(0,1fr)}.ppt-studio-page .ppt-nav{max-height:none}.ppt-studio-page .ppt-conversation{max-height:none;min-height:0;flex:1 1}.ppt-studio-page .ppt-stage{overflow-y:auto;padding-right:2px}.ppt-studio-page .ppt-stage-canvas{flex:1 1;min-height:220px;display:flex;align-items:flex-start;justify-content:center}.ppt-studio-page .ppt-outline{flex:1 1}@media (max-width:1080px){.ppt-studio-page .ppt-conversation{max-height:52dvh}.ppt-studio-page .ppt-nav{max-height:calc(100dvh - 220px)}.ppt-studio-page .ppt-stage-canvas{flex:none}}.ppt-export{display:flex;align-items:center;gap:8px;margin-left:auto;min-width:0}.ppt-export+.ppt-export{margin-left:0}.ppt-export-error{color:var(--danger-text,#c0392b)}.ppt-export-done{color:var(--text-muted)}.ppt-export-done a{color:var(--accent-600,#2f5fd0);text-decoration:underline}.doc-tree-group{display:flex;flex-direction:column;gap:2px}.doc-tree-section{margin-top:8px;padding:4px 8px 2px;font-weight:600;color:var(--text-muted)}.doc-tree-page{display:flex;align-items:baseline;gap:8px;width:100%;padding:6px 8px;border:1px solid transparent;border-radius:8px;background:none;cursor:pointer;text-align:left;color:inherit}.doc-tree-page:hover{background:var(--surface-2,rgba(0,0,0,.04))}.doc-tree-page.on{background:var(--surface-2,rgba(0,0,0,.05));border-color:var(--border-strong,rgba(0,0,0,.12))}.doc-tree-page-no{flex:none;min-width:20px;color:var(--text-muted);font-size:12px}.doc-tree-page-head{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.doc-studio-page .doc-editor-stage{display:flex;flex-direction:column;min-height:0;overflow:hidden}.doc-editor,.doc-editor-empty{display:flex;flex-direction:column;flex:1 1;min-height:0}.doc-editor-empty{align-items:center;justify-content:center}.doc-editor-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 2px 8px;border-bottom:1px solid var(--border,rgba(0,0,0,.08));margin-bottom:8px}.doc-editor-textarea{flex:1 1;min-height:0;width:100%;resize:none;padding:14px;border:1px solid var(--border,rgba(0,0,0,.1));border-radius:10px;background:var(--surface-1,#fff);color:inherit;font-family:var(--font-mono,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:13.5px;line-height:1.65}.doc-editor-textarea:focus{outline:2px solid var(--accent-300,#9db8f0)}.doc-editor-textarea[readonly]{opacity:.7}.doc-tree-page-state{flex:none;font-size:12px;color:var(--text-muted)}.doc-tree-page-state[data-written=true]{color:var(--success-text,#1e7e46)}.doc-stage-guide{gap:8px;max-width:420px;padding:20px;border:1px dashed var(--border-strong,rgba(0,0,0,.15));border-radius:12px}.doc-outline,.doc-stage-guide{display:flex;flex-direction:column}.doc-outline{flex:1 1;min-height:0;gap:10px}.doc-outline-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px;border-bottom:1px solid var(--border,rgba(0,0,0,.08))}.doc-outline-hint{color:var(--text-muted);min-width:0}.doc-outline-actions{display:flex;gap:8px;flex:none}.doc-outline-error{color:var(--danger-text,#c0392b)}.doc-outline-empty{color:var(--text-muted);padding:16px 4px}.doc-outline-body{display:flex;flex-direction:column;gap:12px;overflow-y:auto;min-height:0;padding-bottom:12px}.doc-outline-section{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--border,rgba(0,0,0,.09));border-radius:10px;background:var(--surface-1,#fff)}.doc-outline-section-row{display:flex;align-items:center;gap:8px}.doc-outline-no{flex:none;min-width:28px;color:var(--text-muted);font-size:12px}.doc-outline-title{flex:1 1;min-width:0;padding:6px 10px;border:1px solid var(--border,rgba(0,0,0,.1));border-radius:8px;background:var(--surface-0,#fff);color:inherit;font-size:13.5px}.doc-outline-rowtools{display:flex;gap:2px;flex:none}.doc-outline-textarea{width:100%;resize:vertical;padding:8px 10px;border:1px solid var(--border,rgba(0,0,0,.1));border-radius:8px;background:var(--surface-0,#fff);color:inherit;font-size:13px;line-height:1.55}.doc-outline-preview{color:var(--text-muted)}.doc-outline-pages{display:flex;flex-direction:column;gap:8px}.doc-outline-page{display:flex;flex-direction:column;gap:6px;padding:8px;border:1px dashed var(--border,rgba(0,0,0,.12));border-radius:8px}@media (max-width:1080px){.doc-studio-page .doc-editor-textarea{min-height:40dvh}}.md-editor{display:flex;flex-direction:column;min-height:0;flex:1 1;border:1px solid var(--border);border-radius:12px;background:var(--surface-raised,var(--bg));overflow:hidden}.md-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border)}.md-toolbar__group{display:inline-flex;align-items:center;gap:2px;padding-right:10px;border-right:1px solid var(--border)}.md-toolbar__group:last-child{border-right:none;padding-right:0}.md-tb{min-width:30px;height:28px;padding:0 7px;border:none;border-radius:7px;background:transparent;color:var(--text-muted);font:600 12.5px/1 var(--font-mono);cursor:pointer}.md-tb:hover:not(:disabled){background:var(--fill-100);color:var(--interactive-text)}.md-tb:disabled{opacity:.4;cursor:default}.md-tb--bold{font-weight:800}.md-tb--italic{font-style:italic}.md-tb--strike{text-decoration:line-through}.md-editor__textarea{min-height:52vh}.md-save-state{font:500 12px/1.4 var(--font-sans);color:var(--text-faint)}.md-save-state--error{color:var(--danger,#d5544c)}.md-save-state--saved{color:var(--success,#2bc48a)}.md-run-note{margin:8px clamp(16px,3vw,32px) 0}.landing{min-height:100dvh;display:flex;flex-direction:column;background:var(--bg)}.lp-container{width:100%;max-width:1200px;margin:0 auto;padding:0 clamp(16px,3vw,32px)}.lp-eyebrow{display:inline-flex;align-items:center;gap:8px;font:600 13px/1.3 var(--font-sans);letter-spacing:.05em;color:var(--interactive-text)}.lp-eyebrow-dot{width:6px;height:6px;border-radius:50%;background:var(--interactive)}.lp-header{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-nav);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--border-subtle)}.lp-header-inner{max-width:1200px;margin:0 auto;height:68px;padding:0 clamp(16px,3vw,32px);justify-content:space-between;gap:16px}.lp-brand,.lp-header-inner{display:flex;align-items:center}.lp-brand{gap:12px;min-width:0;line-height:1}.lp-brand>svg{display:block;flex-shrink:0}.lp-brand-id{display:flex;flex-direction:column;justify-content:center;line-height:1}.lp-brand-name{display:flex;align-items:center;font:700 17px/1 var(--font-sans);letter-spacing:-.01em;color:var(--text-strong);white-space:nowrap}.lp-header-actions{display:inline-flex;align-items:center;gap:10px}.lp-main{flex:1 1}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.lp-reveal{animation:lp-rise linear both;animation-timeline:view();animation-range:entry 4% cover 22%}}}@keyframes lp-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.lp-hero{position:relative;padding:clamp(56px,8vw,104px) 0 clamp(40px,6vw,72px);overflow:hidden}.lp-hero-glow{position:absolute;inset:-20% -10% auto -10%;height:620px;pointer-events:none;background:radial-gradient(38% 46% at 18% 34%,rgba(61,107,255,.14),transparent 70%),radial-gradient(30% 40% at 82% 18%,rgba(255,107,61,.12),transparent 72%)}[data-theme=dark] .lp-hero-glow{background:radial-gradient(38% 46% at 18% 34%,rgba(100,136,255,.16),transparent 70%),radial-gradient(30% 40% at 82% 18%,rgba(255,123,80,.12),transparent 72%)}.lp-hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);grid-gap:clamp(32px,5vw,64px);gap:clamp(32px,5vw,64px);align-items:center}.lp-hero-copy{max-width:620px}.lp-hero-title{margin:18px 0 0;font:800 clamp(30px,4.6vw,54px) /1.16 var(--font-sans);letter-spacing:-.025em;color:var(--text-strong);text-wrap:pretty}.lp-hero-title-tail{white-space:nowrap}.lp-rotator{position:relative;display:inline-block;vertical-align:bottom;height:1.16em;color:var(--interactive-text);transition:width .38s var(--ease-out)}.lp-rotator-item{position:absolute;left:0;top:0;white-space:nowrap;opacity:0;transform:translateY(.28em);transition:opacity .42s var(--ease-out),transform .42s var(--ease-out)}.lp-rotator-item.is-on{opacity:1;transform:none}.lp-hero-sub{margin:20px 0 0;font:400 17px/1.75 var(--font-sans);color:var(--text-muted);max-width:560px;text-wrap:pretty}.lp-cta-row{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}.lp-cta-row--center{justify-content:center}.lp-stats{margin-top:36px;padding-top:24px;border-top:1px solid var(--border-subtle);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:16px;gap:16px}.lp-stat{display:flex;flex-direction:column;gap:2px;min-width:0}.lp-stat-num{font:700 clamp(22px,2.2vw,28px) /1.1 var(--font-sans);letter-spacing:-.02em;color:var(--text-strong)}.lp-stat-label{font:600 12.5px/1.3 var(--font-sans);color:var(--text-body)}.lp-stat-note{font:400 11.5px/1.3 var(--font-mono);color:var(--text-faint)}.hc{margin:0;min-width:0}.hc-frame{border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--surface-card);box-shadow:var(--shadow-4);overflow:hidden}.hc-bar{display:flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-bottom:1px solid var(--border-subtle);background:var(--surface-sunken)}.hc-dot{width:9px;height:9px;border-radius:50%;background:var(--line-200)}.hc-dot--a{background:var(--coral-500)}.hc-dot--b{background:var(--amber-500)}.hc-dot--c{background:var(--green-500)}.hc-bar-url{margin-left:10px;font:400 11.5px/1 var(--font-mono);color:var(--text-faint)}.hc-stage{position:relative;height:336px}.hc-panel{position:absolute;inset:0;z-index:0;padding:18px 20px 16px;display:flex;flex-direction:column;gap:12px;background:var(--surface-card);opacity:0;visibility:hidden;transform:translateY(10px);transition:none}.hc-panel.is-on{z-index:1;opacity:1;visibility:visible;transform:none;transition:opacity .36s var(--ease-out),transform .36s var(--ease-out)}.hc-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.hc-tag{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:var(--radius-full);font:600 12px/1 var(--font-sans);color:var(--interactive-text);background:var(--interactive-subtle)}.hc-tag--run{color:var(--amber-600);background:var(--warning-subtle)}.hc-tag--graph{color:var(--positive-text);background:var(--positive-subtle)}.hc-tag--find{color:var(--accent-text);background:var(--accent-subtle)}.hc-panel-meta{font:500 12px/1 var(--font-mono);color:var(--text-faint)}.hc-note{margin-top:auto;padding-top:10px;border-top:1px dashed var(--border-subtle);font:400 12.5px/1.5 var(--font-sans);color:var(--text-muted)}.hc-note strong{color:var(--text-strong);font-weight:600}.hc-files{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.hc-file{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-card);animation:hc-rise .42s var(--ease-out) backwards}.hc-file-ico{width:26px;height:26px;flex:none;border-radius:var(--radius-xs);background:var(--interactive-subtle)}.hc-file-ico--coral{background:var(--accent-subtle)}.hc-file-ico--green{background:var(--positive-subtle)}.hc-file-name{flex:1 1;min-width:0;font:500 13px/1.3 var(--font-sans);color:var(--text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hc-file-size{font:400 11.5px/1 var(--font-mono);color:var(--text-faint)}.hc-stages{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}.hc-stage-row{display:grid;grid-template-columns:86px 46px minmax(0,1fr);align-items:center;grid-gap:10px;gap:10px;animation:hc-rise .38s var(--ease-out) backwards}.hc-stage-name{font:500 12.5px/1.3 var(--font-sans);color:var(--text-body)}.hc-stage-unit{font:500 10.5px/1 var(--font-sans);color:var(--text-faint);border:1px solid var(--border-subtle);padding:3px 0;text-align:center}.hc-stage-bar,.hc-stage-unit{border-radius:var(--radius-full)}.hc-stage-bar{height:6px;background:var(--surface-sunken);overflow:hidden}.hc-stage-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue-500),var(--green-500));transform-origin:left center;animation:hc-grow .9s var(--ease-out) backwards}.hc-panel--graph .hc-graph{flex:1 1;width:100%;min-height:0}.hc-edge{stroke:var(--border);stroke-width:.6;stroke-dasharray:120;stroke-dashoffset:120;animation:hc-draw .7s var(--ease-out) forwards}.hc-node{transform-box:fill-box;transform-origin:center;animation:hc-pop .52s var(--ease-spring) backwards}.hc-query{display:flex;align-items:center;gap:9px;padding:11px 13px;border:1px solid var(--interactive);border-radius:var(--radius-md);background:var(--surface-card);box-shadow:var(--focus-ring)}.hc-query-ico{display:inline-flex;color:var(--interactive)}.hc-query-text{font:500 13px/1.4 var(--font-sans);color:var(--text-strong)}.hc-hits{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.hc-hit{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:2px 10px;gap:2px 10px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-md);animation:hc-rise .42s var(--ease-out) backwards}.hc-hit-title{font:600 12.5px/1.35 var(--font-sans);color:var(--text-strong)}.hc-hit-score{grid-column:2;grid-row:1/span 2;align-self:center;font:700 13px/1 var(--font-sans);color:var(--accent-text)}.hc-hit-why{font:400 11.5px/1.3 var(--font-sans);color:var(--text-faint)}.hc-rail{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;margin-top:12px}.hc-rail-btn{display:flex;flex-direction:column;gap:3px;padding:8px 2px 0;border:none;background:none;cursor:pointer;text-align:left;color:var(--text-faint);transition:color var(--dur-fast) var(--ease-out)}.hc-rail-btn.is-on{color:var(--text-strong)}.hc-rail-btn:hover{color:var(--text-body)}.hc-rail-script{font:600 10px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;opacity:.75}.hc-rail-label{font:600 13px/1.2 var(--font-sans)}.hc-rail-track{margin-top:5px;height:3px;border-radius:var(--radius-full);background:var(--border-subtle);overflow:hidden}.hc-rail-btn.is-on .hc-rail-fill{display:block;height:100%;width:100%;border-radius:inherit;background:var(--interactive);transform-origin:left center;animation:hc-grow linear backwards}@keyframes hc-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes hc-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes hc-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes hc-draw{to{stroke-dashoffset:0}}@media (max-width:940px){.lp-hero-grid{grid-template-columns:minmax(0,1fr)}.lp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.lp-section{padding:clamp(56px,8vw,104px) 0;border-top:1px solid var(--border-subtle)}.lp-section--sunken{background:var(--surface-sunken)}.lp-section--tight{padding-bottom:clamp(36px,5vw,64px)}.lp-section-head{display:flex;flex-direction:column;align-items:flex-start;gap:0}.lp-section-head--center{align-items:center;text-align:center}.lp-section-title{margin:14px 0 0;font:700 clamp(26px,3.2vw,38px) /1.25 var(--font-sans);letter-spacing:-.02em;color:var(--text-strong);text-wrap:balance}.lp-section-desc{margin:12px 0 0;font:400 16px/1.75 var(--font-sans);color:var(--text-muted);max-width:640px;text-wrap:pretty}.lp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:16px;gap:16px;margin-top:36px}.lp-grid--4{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.lp-card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:24px;transition:box-shadow .16s var(--ease-out),transform .16s var(--ease-out),border-color .16s var(--ease-out)}.lp-card:hover{box-shadow:var(--shadow-3);transform:translateY(-3px);border-color:var(--line-strong)}.lp-card-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md)}.lp-card-icon--blue{color:var(--blue-600);background:var(--blue-50)}.lp-card-icon--coral{color:var(--coral-600);background:var(--coral-50)}.lp-card-icon--green{color:var(--green-600);background:var(--green-50)}.lp-card-icon--amber{color:var(--amber-600);background:var(--warning-subtle)}.lp-card-title{margin:16px 0 0;font:700 17px/1.4 var(--font-sans);letter-spacing:-.01em;color:var(--text-strong)}.lp-card-desc{margin:8px 0 0;font:400 13.5px/1.7 var(--font-sans);color:var(--text-muted);text-wrap:pretty}.lp-card-meta{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--border-subtle);font:500 11.5px/1.5 var(--font-mono);color:var(--text-faint)}.kb{margin-top:clamp(8px,2vw,24px)}.kb,.kb-media{position:relative}.kb-media{height:clamp(200px,26vw,380px);overflow:hidden;background:#f2e9db;-webkit-mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent);mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent)}.kb-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity 1.1s var(--ease-out)}[data-theme=dark] .kb-media{background:#2a2823;filter:invert(1) hue-rotate(180deg) saturate(1.5) brightness(1.3) contrast(1.05)}.kb-caption{margin:6px 0 0;text-align:center;font:500 12.5px/1.4 var(--font-sans);letter-spacing:.02em;color:var(--text-faint)}.lp-showcase{padding:clamp(24px,4vw,40px) 0 clamp(48px,7vw,88px)}.sc-head{display:flex;flex-direction:column;gap:14px;margin-bottom:18px}.sc-tabs{display:flex;gap:8px;flex-wrap:wrap}.sc-tab{position:relative;overflow:hidden;height:34px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface-card);color:var(--text-muted);font:600 13px/1 var(--font-sans);cursor:pointer;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.sc-tab:hover{color:var(--text-strong);border-color:var(--line-strong)}.sc-tab.is-on{color:var(--text-on-accent);background:var(--interactive);border-color:var(--interactive)}.sc-tab-timer{position:absolute;left:0;bottom:0;height:2px;width:100%;background:hsla(0,0%,100%,.75);transform-origin:left center;animation:hc-grow linear forwards}.sc-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-gap:24px;gap:24px;align-items:start}.sc-frame{position:relative;aspect-ratio:16/9;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-sunken);box-shadow:var(--shadow-4)}.sc-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;opacity:0;transform:scale(1.012);transition:opacity .52s var(--ease-out),transform .7s var(--ease-out)}.sc-img.is-on{opacity:1;transform:none}.sc-caption{position:-webkit-sticky;position:sticky;top:96px}.sc-caption-title{margin:0;font:700 19px/1.4 var(--font-sans);letter-spacing:-.01em;color:var(--text-strong)}.sc-caption-desc{margin:10px 0 0;font:400 14px/1.75 var(--font-sans);color:var(--text-muted)}@media (max-width:940px){.sc-body{grid-template-columns:minmax(0,1fr)}.sc-caption{position:static}}.pf{margin-top:40px}.pf-meter{display:flex;align-items:center;gap:12px}.pf-meter-label{width:46px;flex:none;font:700 13px/1 var(--font-sans);color:var(--interactive-text)}.pf-meter-track{flex:1 1;height:8px;border-radius:var(--radius-full);background:var(--surface-card);border:1px solid var(--border-subtle);overflow:hidden}.pf-meter-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue-500),var(--coral-500));transition:width .62s var(--ease-out)}.pf-rail{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-gap:8px;gap:8px}.pf-node{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-card);cursor:pointer;text-align:left;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out)}.pf-node:hover{transform:translateY(-2px)}.pf-node.is-on{border-color:var(--interactive);background:var(--interactive-subtle)}.pf-node-dot{width:8px;height:8px;border-radius:50%;background:var(--line-200);transition:background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.pf-node.is-done .pf-node-dot{background:var(--positive)}.pf-node.is-on .pf-node-dot{background:var(--interactive);box-shadow:0 0 0 4px var(--interactive-subtle)}.pf-node-code{font:600 10px/1 var(--font-mono);letter-spacing:.04em;color:var(--text-faint)}.pf-node-label{font:600 12.5px/1.3 var(--font-sans);color:var(--text-body)}.pf-node.is-on .pf-node-label{color:var(--text-strong)}.pf-detail{margin-top:16px;display:grid;grid-template-columns:minmax(0,1fr) 260px;grid-gap:20px;gap:20px;padding:24px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-1);animation:hc-rise .34s var(--ease-out)}.pf-detail-head{display:flex;align-items:center;gap:8px}.pf-chip{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:var(--radius-full);font:600 11.5px/1 var(--font-sans);color:var(--text-muted);background:var(--surface-sunken)}.pf-chip--auto{color:var(--interactive-text);background:var(--interactive-subtle)}.pf-chip--manual{color:var(--accent-text);background:var(--accent-subtle)}.pf-detail-range{margin-left:auto;font:500 12px/1 var(--font-mono);color:var(--text-faint)}.pf-detail-title{margin:12px 0 0;font:700 21px/1.35 var(--font-sans);letter-spacing:-.01em;color:var(--text-strong)}.pf-detail-desc{margin:8px 0 0;font:400 14.5px/1.75 var(--font-sans);color:var(--text-muted)}.pf-detail-out{display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:var(--radius-md);background:var(--surface-sunken);align-self:start}.pf-detail-out-label{font:600 11px/1 var(--font-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.pf-detail-out-value{font:600 14px/1.5 var(--font-sans);color:var(--text-strong)}.pf-foot{margin:16px 0 0;font:400 13.5px/1.7 var(--font-sans);color:var(--text-muted)}.ax-foot strong,.mc-tools-foot strong,.pf-foot strong,.st-foot strong{color:var(--text-strong);font-weight:600}@media (max-width:1000px){.pf-rail{grid-template-columns:repeat(4,minmax(0,1fr))}.pf-detail{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.pf-rail{grid-template-columns:repeat(2,minmax(0,1fr))}}.ax{margin-top:40px}.ax-grid{display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);align-items:stretch;grid-gap:8px;gap:8px}.ax-cross{align-self:center;text-align:center;font:300 28px/1 var(--font-sans);color:var(--text-faint)}.ax-panel{padding:26px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-1);display:flex;flex-direction:column;gap:18px}.ax-panel-kicker{font:600 11.5px/1 var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.ax-panel-title{margin:8px 0 0;font:700 22px/1.3 var(--font-sans);letter-spacing:-.01em;color:var(--text-strong)}.ax-panel-desc{margin:8px 0 0;font:400 13.5px/1.65 var(--font-sans);color:var(--text-muted)}.ax-tabs{display:flex;gap:8px;flex-wrap:wrap}.ax-tab{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface-card);color:var(--text-muted);font:600 13px/1 var(--font-sans);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.ax-tab.is-on,.ax-tab:hover{color:var(--text-strong)}.ax-tab--blue.is-on{border-color:var(--blue-500);background:var(--blue-50)}.ax-tab--green.is-on{border-color:var(--green-500);background:var(--green-50)}.ax-tab--coral.is-on{border-color:var(--coral-500);background:var(--coral-50)}.ax-tab-code{font:600 10.5px/1 var(--font-mono);color:var(--text-faint)}.ax-chain{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ax-chain-step{position:relative;display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:var(--radius-sm);background:var(--surface-sunken);font:600 12.5px/1 var(--font-sans);color:var(--text-body);animation:hc-rise .38s var(--ease-out) backwards}.ax-chain-step:not(:last-child):after{content:"→";position:absolute;right:-13px;color:var(--text-faint);font-size:11px}.ax-defs{margin:0;display:flex;flex-direction:column;gap:14px}.ax-def dt{font:600 11.5px/1 var(--font-sans);letter-spacing:.04em;color:var(--text-faint);margin-bottom:8px}.ax-def dd{margin:0;display:flex;gap:6px;flex-wrap:wrap}.ax-pill{display:inline-flex;align-items:center;height:26px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-full);font:500 12px/1 var(--font-sans);color:var(--text-body);background:var(--surface-card);animation:hc-rise .3s var(--ease-out) backwards}.ax-pill--blue{border-color:var(--blue-100);color:var(--interactive-text);background:var(--blue-50)}.ax-pill--green{border-color:var(--green-100);color:var(--positive-text);background:var(--green-50)}.ax-pill--coral{border-color:var(--coral-100);color:var(--accent-text);background:var(--coral-50)}.ax-hint{margin:auto 0 0;padding-top:14px;border-top:1px dashed var(--border-subtle);font:400 12.5px/1.6 var(--font-sans);color:var(--text-faint)}.ax-tree{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.ax-tree-row{display:flex;align-items:center;gap:8px;height:32px;padding:0 10px;border-radius:var(--radius-sm);font:500 13px/1 var(--font-sans);color:var(--text-body)}.ax-tree-row.is-root{margin-top:6px;font:600 11.5px/1 var(--font-sans);letter-spacing:.04em;color:var(--text-faint);height:26px}.ax-tree-row--d1{margin-left:12px;background:var(--surface-sunken)}.ax-tree-row--d2{margin-left:28px;background:var(--surface-sunken)}.ax-tree-count{margin-left:auto;font:500 11.5px/1 var(--font-mono);color:var(--text-faint)}.ax-hier{display:flex;flex-wrap:wrap}.ax-hier,.ax-hier-node{align-items:center;gap:8px}.ax-hier-node{display:inline-flex;font:600 12.5px/1 var(--font-sans);color:var(--text-body)}.ax-hier-arrow{color:var(--text-faint)}.ax-foot{margin:20px 0 0;text-align:center;font:400 14px/1.7 var(--font-sans);color:var(--text-muted)}@media (max-width:940px){.ax-grid{grid-template-columns:minmax(0,1fr)}.ax-cross{padding:4px 0}}.sd{margin-top:40px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.sd-panel,.sd-side{padding:22px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-1)}.sd-tabs{display:inline-flex;gap:4px;padding:4px;border-radius:var(--radius-full);background:var(--surface-sunken)}.sd-tab{height:30px;padding:0 16px;border:none;border-radius:var(--radius-full);background:none;color:var(--text-muted);font:600 13px/1 var(--font-sans);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.sd-tab.is-on{color:var(--text-strong);box-shadow:var(--shadow-1)}.sd-field,.sd-tab.is-on{background:var(--surface-card)}.sd-field{display:flex;align-items:center;gap:10px;margin-top:16px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-md)}.sd-field-ico{display:inline-flex;color:var(--text-faint)}.sd-field-text{flex:1 1;min-width:0;font:500 14px/1.4 var(--font-sans);color:var(--text-strong)}.sd-caret{display:inline-block;width:2px;height:1em;margin-left:1px;vertical-align:text-bottom;background:var(--interactive);animation:sd-blink 1s steps(2,start) infinite}.sd-caret.is-idle{opacity:.35}@keyframes sd-blink{to{opacity:0}}.sd-field-btn{flex:none;height:30px;padding:0 14px;display:inline-flex;align-items:center;border-radius:var(--radius-sm);background:var(--interactive);color:var(--text-on-accent);font:600 12.5px/1 var(--font-sans)}.sd-results{margin-top:16px;opacity:0;transform:translateY(8px);transition:opacity .42s var(--ease-out),transform .42s var(--ease-out)}.sd-results.is-on{opacity:1;transform:none}.sd-results-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--border-subtle)}.sd-results-count{font:600 13px/1.3 var(--font-sans);color:var(--text-strong)}.sd-results-note{font:400 12px/1.4 var(--font-sans);color:var(--text-faint)}.sd-hits{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.sd-hit{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:2px 12px;gap:2px 12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-md);animation:hc-rise .42s var(--ease-out) backwards}.sd-hit--sim{border-color:var(--coral-100);background:var(--coral-50)}[data-theme=dark] .sd-hit--sim{border-color:var(--accent-subtle);background:var(--accent-subtle)}.sd-hit-title{font:600 13.5px/1.4 var(--font-sans);color:var(--text-strong)}.sd-hit-why{font:400 12px/1.4 var(--font-sans);color:var(--text-muted)}.sd-hit-score{grid-column:2;grid-row:1/span 2;align-self:center;font:700 13px/1 var(--font-sans);color:var(--accent-text);white-space:nowrap}.sd-side{opacity:.35;filter:saturate(.4);transition:opacity .42s var(--ease-out),filter .42s var(--ease-out)}.sd-side.is-on{opacity:1;filter:none}.sd-side-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.sd-side-title{font:700 15px/1.3 var(--font-sans);color:var(--text-strong)}.sd-side-meta{font:500 11.5px/1 var(--font-mono);color:var(--text-faint)}.sd-side-block{margin-top:18px;display:flex;flex-direction:column;gap:8px}.sd-side-label{font:600 11.5px/1 var(--font-sans);letter-spacing:.04em;color:var(--text-faint)}.sd-ents{display:flex;gap:6px;flex-wrap:wrap}.sd-ent{display:inline-flex;align-items:baseline;gap:6px;padding:5px 10px;border-radius:var(--radius-full);background:var(--surface-sunken);font:600 12.5px/1.2 var(--font-sans);color:var(--text-strong)}.sd-ent em{font:500 10.5px/1 var(--font-sans);font-style:normal;color:var(--text-faint)}.sd-rels{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.sd-rel{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font:500 12.5px/1.2 var(--font-sans);color:var(--text-body);flex-wrap:wrap}.sd-rel-node{color:var(--text-strong);font-weight:600}.sd-rel-arrow{color:var(--interactive)}.sd-rel-label{margin-left:auto;font:500 11px/1 var(--font-mono);color:var(--text-faint)}.sd-side-foot{margin:18px 0 0;padding-top:12px;border-top:1px dashed var(--border-subtle);font:400 12px/1.6 var(--font-sans);color:var(--text-faint)}.mc-tool-name,.sd-side-foot code{font:500 11.5px/1.4 var(--font-mono);color:var(--interactive-text)}@media (max-width:940px){.sd{grid-template-columns:minmax(0,1fr)}}.st{margin-top:36px}.st-switch{display:inline-flex;gap:6px;padding:5px;border-radius:var(--radius-full);background:var(--surface-sunken)}.st-switch-btn{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 18px;border:none;border-radius:var(--radius-full);background:none;color:var(--text-muted);font:600 14px/1 var(--font-sans);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.st-switch-btn.is-on{background:var(--surface-card);color:var(--text-strong);box-shadow:var(--shadow-2)}.st-switch-count{font:500 11px/1 var(--font-mono);color:var(--text-faint)}.st-desc{margin:16px 0 0;font:400 15px/1.7 var(--font-sans);color:var(--text-muted);max-width:680px}.st-steps{list-style:none;margin:22px 0 0;padding:0;display:flex;gap:8px;flex-wrap:wrap}.st-step{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface-card);color:var(--text-muted);font:600 13px/1 var(--font-sans);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.st-step:hover{color:var(--text-strong)}.st-step.is-done{color:var(--positive-text);border-color:var(--green-100)}.st-step.is-on{color:var(--text-on-accent);background:var(--interactive);border-color:var(--interactive)}.st-step-no{font:600 10.5px/1 var(--font-mono);opacity:.7}.st-body{margin-top:18px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-gap:16px;gap:16px;animation:hc-rise .34s var(--ease-out)}.st-artifact,.st-chat{padding:22px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-1)}.st-bubble{display:flex;flex-direction:column;gap:6px}.st-bubble--agent{padding:14px 16px;border-radius:var(--radius-md);border-top-left-radius:4px;background:var(--surface-sunken)}.st-bubble--agent p{margin:0;font:400 14px/1.7 var(--font-sans);color:var(--text-body)}.st-bubble-who{font:600 11px/1 var(--font-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.st-bubble--user{margin-top:12px;align-items:flex-end}.st-quick{display:inline-flex;align-items:center;padding:9px 15px;border-radius:var(--radius-full);background:var(--interactive);color:var(--text-on-accent);font:600 13px/1.2 var(--font-sans)}.st-chat-foot{margin:18px 0 0;padding-top:12px;border-top:1px dashed var(--border-subtle);font:400 12.5px/1.6 var(--font-sans);color:var(--text-faint)}.st-artifact-label{font:600 11.5px/1 var(--font-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.st-artifact-list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.st-artifact-list li{display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font:500 13px/1.4 var(--font-sans);color:var(--text-body);background:var(--surface-card);animation:hc-rise .38s var(--ease-out) backwards}.st-artifact-list li:before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:var(--interactive)}.st-foot{margin:18px 0 0;font:400 13.5px/1.7 var(--font-sans);color:var(--text-muted)}@media (max-width:940px){.st-body{grid-template-columns:minmax(0,1fr)}}.mc{margin-top:40px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.mc-main,.mc-tools{padding:22px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-1)}.mc-tabs{display:inline-flex;gap:4px;padding:4px;border-radius:var(--radius-full);background:var(--surface-sunken)}.mc-tab{height:30px;padding:0 14px;border:none;border-radius:var(--radius-full);background:none;color:var(--text-muted);font:600 12.5px/1 var(--font-sans);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.mc-tab.is-on{background:var(--surface-card);color:var(--text-strong);box-shadow:var(--shadow-1)}.mc-hint{margin:14px 0 0;font:400 13.5px/1.7 var(--font-sans);color:var(--text-muted)}.mc-code{margin-top:14px;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--surface-sunken)}.mc-code-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-bottom:1px solid var(--border-subtle)}.mc-code-lang{font:500 11.5px/1 var(--font-mono);color:var(--text-faint)}.mc-copy{height:26px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface-card);color:var(--text-body);font:600 11.5px/1 var(--font-sans);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.mc-copy:hover{border-color:var(--interactive);color:var(--interactive-text)}.mc-code-body{margin:0;padding:16px;overflow-x:auto;font:400 12.5px/1.75 var(--font-mono);color:var(--text-body)}.mc-tools-title{margin:0;font:700 15px/1.3 var(--font-sans);color:var(--text-strong)}.mc-tools-list{list-style:none;margin:14px 0 0;padding:0}.mc-tool,.mc-tools-list{display:flex;flex-direction:column;gap:2px}.mc-tool{padding:9px 11px;border-radius:var(--radius-sm);transition:background var(--dur-fast) var(--ease-out)}.mc-tool:hover{background:var(--surface-sunken)}.mc-tool-desc{font:400 12px/1.4 var(--font-sans);color:var(--text-muted)}.mc-tools-foot{margin:16px 0 0;padding-top:12px;border-top:1px dashed var(--border-subtle);font:400 12.5px/1.6 var(--font-sans);color:var(--text-faint)}@media (max-width:940px){.mc{grid-template-columns:minmax(0,1fr)}}.mm{margin-top:32px;padding:26px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-card);box-shadow:var(--shadow-1)}.mm-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.mm-kicker{font:600 11.5px/1 var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.mm-lead{margin:8px 0 0;font:600 16px/1.5 var(--font-sans);color:var(--text-strong)}.mm-switch{display:inline-flex;gap:4px;padding:4px;border-radius:var(--radius-full);background:var(--surface-sunken)}.mm-switch-btn{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 14px;border:none;border-radius:var(--radius-full);background:none;cursor:pointer;color:var(--text-muted);transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.mm-switch-btn code{font:600 12.5px/1 var(--font-mono)}.mm-switch-tag{font:500 10.5px/1 var(--font-sans);color:var(--text-faint)}.mm-switch-btn.is-on{background:var(--surface-card);color:var(--text-strong);box-shadow:var(--shadow-1)}.mm-rows{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column}.mm-row{display:grid;grid-template-columns:130px minmax(0,1fr);grid-gap:16px;gap:16px;padding:13px 0;border-top:1px solid var(--border-subtle)}.mm-row-label{font:600 13px/1.5 var(--font-sans);color:var(--text-faint)}.mm-row-value{font:500 14px/1.5 var(--font-sans);color:var(--text-strong);animation:hc-rise .3s var(--ease-out)}@media (max-width:560px){.mm-row{grid-template-columns:minmax(0,1fr);gap:4px}}.fm{margin-top:36px;display:flex;flex-direction:column;gap:12px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.fm-row{overflow:hidden}.fm-track{display:flex;gap:10px;width:max-content;animation:fm-scroll 34s linear infinite}.fm-row--rev .fm-track{animation-direction:reverse;animation-duration:42s}.fm-chip{display:inline-flex;align-items:center;height:42px;padding:0 22px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--surface-card);font:600 15px/1 var(--font-mono);color:var(--text-muted);white-space:nowrap}.fm-chip--img{border-color:var(--blue-100);color:var(--interactive-text);background:var(--interactive-subtle)}@keyframes fm-scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.fm-track,.sd-caret{animation:none}}.lp-cta-wrap{padding:clamp(48px,7vw,88px) 0}.lp-cta-band{position:relative;overflow:hidden;background:#1f1e1c;border-radius:var(--radius-xl);padding:clamp(48px,6vw,72px) clamp(24px,4vw,64px);text-align:center}.lp-cta-mark{position:absolute;right:clamp(16px,4vw,48px);top:clamp(16px,4vw,48px);opacity:.9}.lp-cta-overline{font:600 13px/1.3 var(--font-sans);letter-spacing:.05em;color:var(--blue-100)}[data-theme=dark] .lp-cta-overline{color:#e3eaff}.lp-cta-title{margin:14px 0 0;font:700 clamp(30px,3.6vw,42px) /1.2 var(--font-sans);letter-spacing:-.015em;color:#fdfbf7}.lp-cta-desc{margin:14px auto 0;font:400 16px/1.7 var(--font-sans);color:hsla(40,60%,98%,.72);max-width:560px;text-wrap:pretty}.lp-cta-band .lp-cta-row,.lp-cta-ghost{justify-content:center}.lp-cta-ghost{display:inline-flex;align-items:center;height:48px;padding:0 24px;border-radius:var(--radius-md);border:1px solid hsla(40,60%,98%,.3);background:transparent;color:#fdfbf7;font:600 15px/1 var(--font-sans);cursor:pointer;transition:background .14s var(--ease-out),transform .1s var(--ease-out)}.lp-cta-ghost:hover{background:hsla(40,60%,98%,.1)}.lp-cta-ghost:active{transform:scale(.98)}.tut-hero{padding-top:clamp(48px,7vw,84px);padding-bottom:clamp(28px,4vw,44px)}.tut-hero-title{margin:16px 0 0;font:800 clamp(30px,4vw,46px) /1.18 var(--font-sans);letter-spacing:-.025em;color:var(--text-strong);text-wrap:balance}.tut-hero-sub{margin:16px 0 0;max-width:64ch;font:400 16.5px/1.75 var(--font-sans);color:var(--text-muted)}.tut-hero-sub strong{color:var(--text-strong);font-weight:600}.tut-hero-meta{margin-top:22px;display:flex;gap:8px;flex-wrap:wrap}.tut-hero-chip{display:inline-flex;align-items:center;height:30px;padding:0 14px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--surface-card);font:500 12.5px/1 var(--font-sans);color:var(--text-muted)}.tut-layout{display:grid;grid-template-columns:232px minmax(0,1fr);grid-gap:clamp(24px,4vw,56px);gap:clamp(24px,4vw,56px);align-items:start;padding-bottom:clamp(48px,7vw,88px)}.tut-side{position:-webkit-sticky;position:sticky;top:92px}.tut-toc-title{display:block;margin-bottom:10px;font:600 11.5px/1 var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint)}.tut-toc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px;border-left:1px solid var(--border-subtle)}.tut-toc-link{display:flex;align-items:baseline;gap:9px;padding:7px 12px;margin-left:-1px;border-left:2px solid transparent;color:var(--text-muted);font:500 13px/1.4 var(--font-sans);text-decoration:none;transition:color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.tut-toc-link:hover{color:var(--text-strong)}.tut-toc-link.is-on{color:var(--interactive-text);border-left-color:var(--interactive);font-weight:600}.tut-toc-num{font:600 10.5px/1.4 var(--font-mono);color:var(--text-faint)}.tut-toc-link.is-on .tut-toc-num{color:var(--interactive)}.tut-steps{min-width:0;display:flex;flex-direction:column;gap:clamp(3rem,6vw,4.75rem)}.tut-step{scroll-margin-top:92px;padding-top:clamp(1rem,2vw,1.5rem);border-top:1px solid var(--border-subtle)}.tut-step:first-child{border-top:none;padding-top:0}.tut-step-head{display:flex;align-items:flex-start;gap:16px}.tut-step-num{flex:none;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md);font:700 14px/1 var(--font-mono);letter-spacing:.02em;color:var(--interactive-text);background:var(--interactive-subtle);border:1px solid var(--blue-100)}[data-theme=dark] .tut-step-num{border-color:var(--accent-line)}.tut-step-headings{min-width:0}.tut-step-title{margin:2px 0 0;font:700 clamp(21px,2.4vw,27px) /1.3 var(--font-sans);letter-spacing:-.02em;color:var(--text-strong);text-wrap:pretty}.tut-step-lead{margin:10px 0 0;font:400 15px/1.75 var(--font-sans);color:var(--text-muted);max-width:68ch}.tut-step-where{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:5px 12px 5px 10px;border-radius:var(--radius-full);background:var(--surface-sunken)}.tut-step-where-label{font:600 10.5px/1 var(--font-sans);letter-spacing:.06em;color:var(--text-faint)}.tut-step-where code{font:500 12px/1.3 var(--font-mono);color:var(--text-body)}.tut-step-body{margin-top:24px;gap:20px}.tut-step-body,.tut-step-list{display:flex;flex-direction:column}.tut-step-list{margin:0;padding-left:20px;gap:11px;font:400 14.5px/1.75 var(--font-sans);color:var(--text-muted)}.tut-step-list li::marker{color:var(--interactive);font-weight:600}.tut-step-list strong,.tut-tip-text strong{color:var(--text-strong);font-weight:600}.tut-step-list code,.tut-tip-text code{font:500 12.5px/1.4 var(--font-mono);padding:1px 6px;border-radius:var(--radius-xs);background:var(--surface-sunken);border:1px solid var(--border-subtle);color:var(--text-strong);white-space:nowrap}.tut-shot{margin:0;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-sunken);box-shadow:var(--shadow-2)}.tut-shot-link{position:relative;display:block;line-height:0}.tut-shot img{display:block;width:100%;height:auto}.tut-shot-zoom{position:absolute;right:10px;bottom:10px;padding:6px 12px;border-radius:var(--radius-full);background:rgba(31,30,28,.78);color:#fdfbf7;font:600 11.5px/1 var(--font-sans);opacity:0;transform:translateY(4px);transition:opacity var(--dur-base) var(--ease-out),transform var(--dur-base) var(--ease-out)}.tut-shot-link:focus-visible .tut-shot-zoom,.tut-shot-link:hover .tut-shot-zoom{opacity:1;transform:none}.tut-shot-caption{padding:10px 16px;border-top:1px solid var(--border-subtle);background:var(--surface-card);font:400 12.5px/1.5 var(--font-sans);color:var(--text-faint)}.tut-shot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.tut-tip{display:flex;align-items:flex-start;gap:14px;padding:15px 18px;border:1px solid var(--blue-100);border-radius:var(--radius-md);background:var(--interactive-subtle)}[data-theme=dark] .tut-tip{border-color:var(--accent-line)}.tut-tip-label{flex:none;padding-top:2px;font:700 10.5px/1.5 var(--font-sans);letter-spacing:.08em;color:var(--interactive-text);white-space:nowrap}.tut-tip-text{margin:0;font:400 13.5px/1.7 var(--font-sans);color:var(--text-muted)}@media (max-width:1000px){.tut-layout{grid-template-columns:minmax(0,1fr)}.tut-side{position:static}.tut-toc-list{flex-direction:row;flex-wrap:wrap;gap:8px;border-left:none}.tut-toc-link{margin-left:0;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface-card)}.tut-toc-link.is-on{border-color:var(--interactive)}}@media (max-width:760px){.tut-shot-grid{grid-template-columns:minmax(0,1fr)}.tut-step-head{gap:12px}.tut-step-num{width:36px;height:36px;font-size:12px}.tut-tip{flex-direction:column;gap:6px}}.toast-viewport{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:var(--z-toast,400);display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none;max-width:min(480px,calc(100vw - 32px))}.toast{pointer-events:auto;display:inline-flex;align-items:center;gap:10px;padding:10px 12px 10px 14px;border-radius:10px;border:1px solid var(--line-strong,rgba(0,0,0,.12));background:var(--surface-raised,#fff);color:var(--ink-strong,#111);box-shadow:0 8px 24px rgba(0,0,0,.14);font-size:13px;line-height:1.45;animation:toast-in .16s ease-out;max-width:100%}[data-theme=dark] .toast{background:var(--surface-raised,#23262b);color:var(--ink-strong,#f2f3f5);box-shadow:0 8px 24px rgba(0,0,0,.45)}.toast-dot{width:8px;height:8px;border-radius:50%;flex:none}.toast--success .toast-dot{background:#1db469}.toast--error .toast-dot{background:#e5484d}.toast--info .toast-dot{background:var(--madang-blue,#3d6bff)}.toast-msg{word-break:keep-all;overflow-wrap:anywhere}.toast-close{flex:none;border:0;background:transparent;color:inherit;opacity:.55;font-size:15px;line-height:1;cursor:pointer;padding:2px 4px;border-radius:6px}.toast-close:hover{opacity:1;background:hsla(0,0%,50%,.12)}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.login-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:48px 24px;background:var(--bg);position:relative;z-index:2}.login-card{width:100%;max-width:420px;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-3);padding:40px 32px 32px}.login-head{text-align:center;margin-bottom:28px}.login-mark{margin-bottom:16px}.login-brand-row,.login-mark{display:flex;justify-content:center}.login-brand-row{align-items:center;gap:8px}.login-brand-name{font:700 20px/1.3 var(--font-sans);letter-spacing:-.01em;color:var(--text-strong)}.login-brand-domain{font:400 12px/1.3 var(--font-mono);color:var(--text-faint)}.login-tagline{margin:6px 0 0;font:400 14px/1.6 var(--font-sans);color:var(--text-muted)}.login-ms-btn{width:100%;height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:none;border-radius:var(--radius-md);background:var(--interactive);color:#fff;font:600 15px/1 var(--font-sans);cursor:pointer;transition:background .14s var(--ease-out),transform .1s var(--ease-out)}.login-ms-btn:hover{background:var(--interactive-hover)}.login-ms-btn:active{transform:scale(.98)}.login-ms-icon{flex-shrink:0;display:block}.login-google-btn{margin-top:10px;display:flex;justify-content:center;min-height:44px}.login-divider{display:flex;align-items:center;gap:12px;margin:24px 0 20px}.login-divider-line{flex:1 1;height:1px;background:var(--border-subtle)}.login-emergency-toggle{background:none;border:none;padding:0;cursor:pointer;font:500 12px/1.4 var(--font-sans);color:var(--text-muted);text-decoration:underline;text-underline-offset:3px}.login-emergency-toggle:hover{color:var(--text-strong)}.login-form{gap:16px}.login-field,.login-form{display:flex;flex-direction:column}.login-field{gap:6px}.login-field-label{font:var(--text-label);color:var(--text-strong)}.login-field input{height:40px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-md);font:var(--text-body-sm);color:var(--text-strong);background:var(--surface-card);transition:border-color .12s var(--ease-out),box-shadow .12s var(--ease-out)}.login-field input:focus{outline:none;border-color:var(--interactive);box-shadow:var(--focus-ring)}.login-field input::placeholder{color:var(--text-faint)}.login-field input:disabled{background:var(--surface-sunken)}.login-error{margin-bottom:16px;padding:11px 14px;border-radius:var(--radius-sm);background:var(--danger-subtle);border:1px solid transparent;color:var(--danger-text)}.login-error,.login-fine{font:400 12px/1.5 var(--font-sans)}.login-fine{margin:24px 0 0;text-align:center;color:var(--text-faint)}.login-link-btn{display:block;width:100%;margin-top:14px;background:none;border:none;padding:0;cursor:pointer;font:500 13px/1.4 var(--font-sans);color:var(--interactive);text-align:center;text-decoration:underline;text-underline-offset:3px}.login-link-btn:hover{color:var(--interactive-hover)}.login-link-btn:disabled{opacity:.5;cursor:not-allowed}.login-signup-step{margin:0 0 4px;font:600 12px/1.4 var(--font-sans);color:var(--text-muted);letter-spacing:.02em}.login-signup-hint{margin:0 0 12px;font:400 13px/1.5 var(--font-sans);color:var(--text-muted)}.login-signup-done{margin:0 0 16px;font:400 14px/1.6 var(--font-sans);color:var(--text-strong);text-align:center}.mcp-oauth-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:48px 24px;background:var(--bg)}.mcp-oauth-card{width:100%;max-width:480px;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-3);padding:32px}.mcp-oauth-client,.mcp-oauth-scopes{display:flex;flex-direction:column;gap:var(--sp-2);margin:var(--sp-4) 0}.mcp-oauth-scope-list{margin:0;padding-left:var(--sp-4)}.mcp-oauth-actions{display:flex;gap:var(--sp-3);margin-top:var(--sp-5)}.mcp-oauth-error{color:var(--danger,#c0392b)}.mcp-oauth-meta{margin-top:var(--sp-5);word-break:break-all}.legal-hero{padding-top:clamp(48px,8vw,88px);padding-bottom:var(--sp-6);max-width:760px}.legal-hero-title{margin:var(--sp-3) 0 var(--sp-3);font-family:var(--font-display);font-size:clamp(2rem,4.5vw,3rem);font-weight:var(--fw-semibold);letter-spacing:-.03em;line-height:1.15;color:var(--text-primary)}.legal-hero-sub{margin:0 0 var(--sp-3);font-size:var(--fs-body);line-height:1.7;color:var(--text-muted);max-width:var(--content-measure)}.legal-effective{margin:0;font-size:var(--fs-caption);color:var(--text-subtle);letter-spacing:.02em}.legal-doc{max-width:760px;padding-bottom:clamp(64px,10vw,120px)}.legal-section{padding:var(--sp-5) 0;border-top:1px solid var(--line-faint)}.legal-section:first-child{border-top:none;padding-top:0}.legal-section h2{margin:0 0 var(--sp-3);font-family:var(--font-display);font-size:var(--fs-h2);letter-spacing:-.02em}.legal-section h2,.legal-section h3{font-weight:var(--fw-semibold);color:var(--text-primary)}.legal-section h3{margin:0 0 var(--sp-2);font-size:var(--fs-body-sm)}.legal-section p{margin:0 0 var(--sp-3);font-size:var(--fs-body-sm);line-height:1.75;color:var(--text-muted)}.legal-section p:last-child{margin-bottom:0}.legal-section ol,.legal-section ul{margin:0 0 var(--sp-3);padding-left:1.25em;font-size:var(--fs-body-sm);line-height:1.75;color:var(--text-muted)}.legal-section ol:last-child,.legal-section ul:last-child{margin-bottom:0}.legal-section li+li{margin-top:.45em}.legal-section li ul{margin:.45em 0 0}.legal-section strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.legal-section a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.legal-section a:hover{color:var(--text-primary)}.legal-contact{list-style:none;padding-left:0!important}.legal-contact li+li{margin-top:.35em}.legal-card{padding:var(--sp-4);background:var(--surface-glass);border:1px solid var(--line);border-radius:var(--r-lg);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass))}.legal-card,.legal-card+.legal-card{margin-top:var(--sp-3)}@media (max-width:640px){.lp-header-actions .ds-btn--ghost:first-child,.lp-header-actions .ds-btn--ghost:nth-child(2){display:none}}