:root{--bg:#fbfbfa;--surface:#fff;--ink:#151715;--ink-2:#454b45;--ink-3:#6b716b;--line:#e4e6e1;--accent:#0d6349;--accent-ink:#0a4f3a;--accent-soft:#e9f2ee;--radius:14px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.75}img{display:block}.container{width:100%;max-width:1040px;margin:0 auto;padding:0 20px}h1,h2,h3,p{margin:0}a{color:var(--accent-ink);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.site-header{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#fbfbfaeb;position:sticky;top:0}.site-header-inner{align-items:center;gap:16px;min-height:64px;display:flex}.brand{align-items:center;display:inline-flex}.brand:hover{text-decoration:none}.nav-desktop{display:none}.nav-desktop a{color:var(--ink-2);padding:6px 2px;font-size:15px}.header-cta{flex-shrink:0;min-height:40px;margin-left:auto;padding:6px 18px;font-size:15px;display:none}.nav-mobile{margin-left:auto;position:relative}.nav-mobile summary{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;list-style:none;display:flex}.nav-mobile summary::-webkit-details-marker{display:none}.nav-mobile-icon,.nav-mobile-icon:before,.nav-mobile-icon:after{background:var(--ink);border-radius:1px;width:16px;height:2px;display:block;position:relative}.nav-mobile-icon:before,.nav-mobile-icon:after{content:"";position:absolute;left:0}.nav-mobile-icon:before{top:-5px}.nav-mobile-icon:after{top:5px}.nav-mobile nav{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;min-width:160px;padding:8px;display:flex;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 30px #15171514}.nav-mobile nav a{color:var(--ink);border-radius:8px;padding:10px 12px;font-size:15px}.nav-mobile nav a:hover{background:var(--accent-soft);text-decoration:none}.hero{padding:88px 0 72px}.hero-inner{text-align:center;max-width:720px}.eyebrow{color:var(--accent-ink);background:var(--accent-soft);border-radius:999px;margin-bottom:24px;padding:4px 14px;font-size:14px;font-weight:600;display:inline-block}h1{letter-spacing:.01em;font-size:clamp(2rem,6vw,3.2rem);font-weight:700;line-height:1.25}.hero-line{display:block}.hero-sub{color:var(--ink-2);margin-top:24px;font-size:clamp(1rem,2.5vw,1.15rem)}.hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px;display:flex}.btn{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;min-height:48px;padding:10px 24px;font-size:16px;font-weight:600;display:inline-flex}.btn:hover{text-decoration:none}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:#2b2e2b}.btn-ghost{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent-ink)}.section{padding:72px 0}.section-tint{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-eyebrow{color:var(--accent-ink);letter-spacing:.04em;margin-bottom:10px;font-size:14px;font-weight:600}h2{margin-bottom:36px;font-size:clamp(1.5rem,4vw,2.1rem);font-weight:700;line-height:1.35}.card-grid{gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px}.section-tint .card{background:var(--bg)}.card h3{margin-bottom:10px;font-size:19px;font-weight:700}.card p{color:var(--ink-2);font-size:16px}.plan-mock{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);margin:0;padding:22px 18px 16px;box-shadow:0 18px 44px #1517150f}.plan-mock-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding:8px 6px 18px;display:flex}.plan-mock-eyebrow{color:var(--ink-3);letter-spacing:.06em;font-size:12px}.plan-mock-title{font-size:20px;font-weight:700}.plan-mock-progress{flex-direction:column;gap:6px;min-width:160px;display:flex}.plan-mock-progress-text{color:var(--ink-2);text-align:right;font-size:13px}.plan-mock-progress-bar{background:var(--line);border-radius:999px;height:6px;overflow:hidden}.plan-mock-progress-bar span{background:var(--accent);border-radius:999px;height:100%;display:block}.plan-mock-columns{gap:12px;display:grid}.plan-mock-col{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:10px;padding:14px;display:flex}.plan-mock-col-title{color:var(--ink-2);align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.plan-mock-col-title .dot{background:var(--ink-3);border-radius:50%;width:8px;height:8px}.plan-mock-col-title.tone-doing .dot{background:var(--accent)}.plan-mock-col-title.tone-done .dot{background:var(--ink)}.plan-mock-col-title .count{color:var(--ink-3);background:var(--bg);border:1px solid var(--line);border-radius:999px;margin-left:auto;padding:0 8px;font-size:12px}.plan-mock-card{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.plan-mock-card-title{margin-bottom:8px;font-size:15px;font-weight:600}.chip{border:1px solid var(--line);color:var(--ink-2);background:var(--surface);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.chip-agent{color:var(--accent-ink);background:var(--accent-soft);border-color:#0000}.plan-mock-caption{color:var(--ink-3);padding:14px 6px 4px;font-size:13px}.steps{counter-reset:step;gap:16px;margin:0;padding:0;list-style:none;display:grid}.step{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.step-num{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-ink);border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;font-size:15px;font-weight:700;display:inline-flex}.step h3{margin-bottom:6px;font-size:17px;font-weight:700}.step p{color:var(--ink-2);font-size:15px}.faq-list{gap:12px;display:grid}.faq-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:0 24px}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;font-size:17px;font-weight:700;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";border:1px solid var(--line);width:26px;height:26px;color:var(--accent-ink);background:var(--accent-soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:15px;font-weight:600;display:inline-flex}.faq-item[open] summary:after{content:"–"}.faq-item p{color:var(--ink-2);max-width:720px;padding:0 0 20px;font-size:16px}.closing-lead{max-width:620px;color:var(--ink-2);font-size:17px}.closing-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.site-footer{border-top:1px solid var(--line);background:var(--bg);padding:48px 0 40px}.site-footer-inner{flex-direction:column;gap:20px;display:flex}.site-footer-brand p{color:var(--ink-2);margin-top:10px;font-size:15px}.site-footer-nav{flex-wrap:wrap;gap:8px 20px;display:flex}.site-footer-nav a{color:var(--ink-2);font-size:15px}.site-footer-note{color:var(--ink-3);font-size:13px}@media (width>=720px){.nav-desktop{gap:22px;margin-left:20px;display:flex}.header-cta{display:inline-flex}.nav-mobile{display:none}.hero{padding:128px 0 104px}.card-grid{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:repeat(2,1fr)}}@media (width>=960px){.plan-mock-columns{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:repeat(4,1fr)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.app-main{padding:48px 0 96px}.app-card{max-width:720px}.app-card h1{margin:0 0 8px;font-size:24px}.app-banner{color:#7a5200;background:#fdf3e3;border:1px solid #f0d9a8;border-radius:10px;max-width:720px;margin:0 0 20px;padding:10px 14px;font-size:14px}.muted{color:var(--ink-3)}.small{font-size:14px}.create-form{border-top:1px solid var(--line);margin:20px 0 28px;padding-top:20px}.create-form label{margin-bottom:8px;font-size:14px;font-weight:600;display:block}.create-form-row{flex-wrap:wrap;gap:10px;display:flex}.create-form input{min-width:200px;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;flex:1;padding:10px 12px}.create-form input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.create-form .btn{cursor:pointer;border:0}.create-form .btn:disabled{opacity:.55;cursor:default}.notice-ok,.notice-err{margin-top:12px;font-size:14px}.notice-ok{color:var(--accent-ink)}.notice-err{color:#a33b20}.project-list{margin:0 0 20px;padding:0;list-style:none}.project-item{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 0;display:flex}.project-item strong,.project-item .muted{display:block}.project-id{color:var(--ink-3);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:2px 8px;font-size:12px}.app-header-cta{display:inline-flex}.header-nav-link{color:var(--ink-2);padding:6px 2px;font-size:15px}.breadcrumb{margin-bottom:16px}.plan-head{flex-wrap:wrap;align-items:baseline;gap:14px;margin-bottom:24px;display:flex}.plan-title{margin:0;font-size:26px}.create-node-form{margin-bottom:28px}.create-node-form h2,.task-editor h1,.card h2{margin-bottom:10px;font-size:19px}.create-node-form label,.task-editor label{margin:16px 0 6px;font-size:14px;font-weight:600;display:block}.create-node-form input,.create-node-form textarea,.task-editor input,.task-editor textarea{width:100%;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:15px}.create-node-form textarea,.task-editor textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;line-height:1.6}.create-node-form input:focus-visible,.create-node-form textarea:focus-visible,.task-editor input:focus-visible,.task-editor textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.field-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.field-head label,.field-head h1{margin-bottom:6px}.preview-toggle{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);cursor:pointer;border-radius:999px;padding:3px 14px;font-size:13px}.preview-toggle:hover{border-color:var(--accent);color:var(--accent-ink)}.todo-preview{border:1px solid var(--line);background:var(--bg);border-radius:10px;min-height:80px;padding:12px 16px}.markdown-view{overflow-wrap:anywhere;font-size:15px;line-height:1.7}.markdown-view h1,.markdown-view h2,.markdown-view h3,.markdown-view h4{margin:14px 0 6px;font-size:17px}.markdown-view p,.markdown-view ul,.markdown-view ol{margin:8px 0}.markdown-view ul,.markdown-view ol{padding-left:22px}.markdown-view code{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1px 5px;font-size:13px}.markdown-view pre{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px;overflow-x:auto}.markdown-view pre code{background:0 0;border:0;padding:0}.markdown-view blockquote{border-left:3px solid var(--line);color:var(--ink-2);margin:8px 0;padding-left:12px}.form-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.form-actions .btn{cursor:pointer;border:0;min-height:44px;padding:8px 20px;font-size:15px}.form-actions .btn:disabled{opacity:.55;cursor:default}.node-list{gap:12px;margin:0 0 20px;padding:0;list-style:none;display:grid}.node-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);padding:16px 18px;display:block}.node-card:hover{border-color:var(--accent);text-decoration:none}.node-card-top{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.node-card-title{font-size:17px}.node-card-summary{color:var(--ink-2);margin-top:6px;font-size:15px;display:block}.node-card-meta{margin-top:8px;display:block}.empty-hint{padding:28px 0}.task-editor{margin-bottom:24px}.task-title{font-size:22px}.task-save-row .save-status{max-width:100%}.checklist{gap:8px;margin:10px 0 16px;padding:0;list-style:none;display:grid}.checklist-item{align-items:flex-start;gap:10px;margin:0;font-size:15px;font-weight:400;display:flex}.checklist-item input{width:16px;height:16px;accent-color:var(--accent);margin-top:5px}.checklist-item.checked span{color:var(--ink-3);text-decoration:line-through}.conflict-panel{background:#fdf8ec;border-color:#e3b23c;margin-bottom:24px}.conflict-panel h2{color:#6b4e00}.conflict-diff{margin:12px 0}.conflict-diff dt{color:var(--ink-2);margin-top:10px;font-size:13px;font-weight:700}.conflict-diff dd{gap:4px;margin:4px 0 0;font-size:14px;display:grid}.conflict-mine,.conflict-server{background:var(--surface);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:8px;padding:6px 10px;display:block}.conflict-mine{border-color:var(--accent)}.draft-candidates{gap:12px;margin:12px 0;padding:0;list-style:none;display:grid}.draft-candidate{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px 12px}.draft-candidate-summary{overflow-wrap:anywhere;margin:0 0 4px;font-weight:700}.project-link{color:var(--ink)}.project-link:hover strong{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline}.chip-recheck{color:#7a4a00;background:#fdf3e0;border-color:#e3b23c}.checklist-text{overflow-wrap:anywhere;flex:1;min-width:0}.checklist-meta{margin-top:2px;font-size:12px;display:block}.checklist-actions{flex-shrink:0;gap:2px;display:inline-flex}.icon-btn{cursor:pointer;color:var(--ink-2);background:0 0;border:1px solid #0000;border-radius:6px;padding:4px 6px;font-size:14px;line-height:1}.icon-btn:hover:not(:disabled){border-color:var(--line);background:var(--surface);color:var(--ink)}.icon-btn:disabled{opacity:.4;cursor:default}.checklist-add-row{gap:8px;margin-top:4px;display:flex}.checklist-add-row input{flex:1;min-width:0}.checklist-edit-row{align-items:center;gap:8px;display:flex}.checklist-edit-row input{flex:1;min-width:0}.checklist-batch-bar{align-items:center;margin:4px 0 10px}.token-once{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.delegation-create{gap:.75rem;margin-top:1rem;display:grid}.delegation-create fieldset{border:1px solid var(--line);border-radius:.75rem;flex-wrap:wrap;gap:.75rem 1rem;display:flex}.scope-check{align-items:center;gap:.35rem;display:inline-flex}.activity-list{gap:.75rem;padding-left:1.2rem;display:grid}.activity-list li{padding-left:.25rem}.activity-list p{white-space:pre-wrap;margin:.35rem 0}.review-panel h2{margin-bottom:8px}.review-recheck-banner{background:#fdf8ec;border-color:#e3b23c}.review-history{margin-top:12px}.review-history summary{cursor:pointer}.review-history ul{color:var(--ink-2);gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}@media (width<=640px){.checklist-edit-row{flex-wrap:wrap}.checklist-edit-row input{flex-basis:100%}}.member-list{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.member-row{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.member-row:last-child{border-bottom:none}.member-main{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.member-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.member-confirm{align-items:center;gap:8px;display:inline-flex}.member-actions select,.assignment-edit select{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;border-radius:8px;padding:6px 8px}.invite-fresh{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:12px 0;padding:12px}.invite-fresh-link{background:var(--bg,#f6f6f4);word-break:break-all;border-radius:8px;margin:8px 0;padding:8px;font-size:13px;display:block}.assignment-panel h2{margin-bottom:4px}.assignment-list{color:var(--ink-2);gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.assignment-edit{gap:10px;margin-top:8px;display:grid}.assignment-columns{grid-template-columns:1fr 1fr;gap:12px;display:grid}.assignment-columns fieldset{border:1px solid var(--line);border-radius:12px;gap:6px;padding:10px 12px;display:grid}.assignment-choice{align-items:center;gap:8px;display:flex}@media (width<=640px){.assignment-columns{grid-template-columns:1fr}}.plan-view-switch{margin:0 0 0 auto}.graph-main{padding:0}.graph-banner{max-width:none;margin:8px 16px}@media (width>=1101px){.graph-main{flex-direction:column;height:100dvh;display:flex}.graph-main .graph-banner{flex:none}.graph-main .plan-graph-shell{flex:1;min-height:0}}.graph-state{padding:32px 24px}.plan-graph-shell{--green:#27865f;--green-ink:#176743;--green-soft:#eaf6ef;--amber:#d58c17;--amber-soft:#fff5df;--cyan-soft:#e5f7f7;--g-line:#dfe4e6;--g-muted:#6f787f;--g-sidebar:#e7eaeb;color:#171b1d;background:#fff;grid-template-columns:292px minmax(560px,1fr) 332px;font-size:14px;line-height:1.5;display:grid}.plan-graph-shell button,.plan-graph-shell input,.plan-graph-shell select,.plan-graph-shell textarea{font:inherit;color:inherit}.plan-graph-shell .sidebar{background:var(--g-sidebar);border-right:1px solid #d2d7d9;flex-direction:column;min-width:0;display:flex;position:relative}.plan-graph-shell .brand-row{border-bottom:1px solid #d5dadd;align-items:center;height:78px;padding:0 24px;display:flex}.plan-graph-shell .brand-row img{width:126px;height:auto}.graph-user-menu{border-top:1px solid #d2d7d9;margin-top:auto;position:relative}.graph-user-menu summary{cursor:pointer;align-items:center;gap:10px;padding:16px 20px;list-style:none;display:flex}.graph-user-menu summary::-webkit-details-marker{display:none}.graph-user-menu summary small{text-overflow:ellipsis;white-space:nowrap;max-width:90px;margin-left:auto;overflow:hidden}.graph-user-actions{z-index:20;background:#fff;border:1px solid #d2d7d9;border-radius:10px;padding:8px;display:grid;position:absolute;bottom:100%;left:12px;right:12px;box-shadow:0 6px 20px #0001}.graph-user-actions a,.graph-user-actions button{text-align:left;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:10px;text-decoration:none}.graph-user-actions a:hover,.graph-user-actions button:hover{background:#eef3f0}.graph-user-actions p{color:#a12b2b;padding:0 10px}.graph-mobile-user{padding:0 18px 18px}.canvas-reset-confirm{align-items:center;gap:5px;font-size:12px;display:flex}.canvas-reset-confirm button{border:1px solid var(--g-line);cursor:pointer;background:#fff;border-radius:6px;padding:5px}.plan-graph-shell .main-nav{border-bottom:1px solid #d1d7d9;gap:5px;padding:15px 14px;display:grid}.plan-graph-shell .nav-item{color:#5c666d;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:620;text-decoration:none;display:flex}.plan-graph-shell .nav-item:hover,.plan-graph-shell .nav-item.active{color:#263137;background:#ffffff9e}.plan-graph-shell .nav-item.active{box-shadow:inset 3px 0 0 var(--green)}.plan-graph-shell .project-section{flex-direction:column;min-height:0;padding:17px 14px 62px;display:flex;overflow:hidden}.plan-graph-shell .section-kicker{color:#929ca2;letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:0 5px 12px;font-size:12px;font-weight:750;display:flex}.plan-graph-shell .project-title,.plan-graph-shell .plan-title{background:#d9edf9;border:1px solid #9fbccf;border-radius:10px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;min-width:0;margin:0;padding:10px 11px;font-size:14px;font-weight:700;display:grid}.plan-graph-shell .project-title.static{cursor:default}.plan-graph-shell .plan-title{background:#e4f3fb;border-color:#b5c7d3;width:calc(100% - 22px);margin:8px 0 8px 22px}.plan-graph-shell .project-title span,.plan-graph-shell .plan-title span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.plan-graph-shell .plan-title em{background:#ffffffbf;border:1px solid #b6c3ca;border-radius:999px;padding:2px 8px;font-style:normal}.plan-graph-shell .outline-list{gap:4px;min-height:0;margin:0 0 0 22px;padding:0 3px 0 0;list-style:none;display:grid;overflow:auto}.plan-graph-shell .outline-list ul{gap:4px;margin:4px 0 0;padding:0;list-style:none;display:grid}.plan-graph-shell .outline-list button{text-align:left;cursor:pointer;background:#ffffff8c;border:0;border-radius:8px;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;padding:8px 9px;display:grid}.plan-graph-shell .outline-list button:hover,.plan-graph-shell .outline-list button.selected{background:#fff;box-shadow:0 1px 3px #25323914}.plan-graph-shell .outline-list button span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:620;overflow:hidden}.plan-graph-shell .outline-list small{color:#68737a;font-variant-numeric:tabular-nums}.plan-graph-shell .outline-dot{background:#8f9ba1;border-radius:50%;width:7px;height:7px}.plan-graph-shell .outline-dot.status-done{background:var(--green)}.plan-graph-shell .outline-dot.status-active,.plan-graph-shell .outline-dot.status-explore{background:#36a5a5}.plan-graph-shell .outline-dot.status-review{background:var(--amber)}.plan-graph-shell .outline-dot.status-planned,.plan-graph-shell .outline-dot.status-muted{background:#9aa5ab}.plan-graph-shell .sidebar-reset{background:var(--g-sidebar);color:#68737a;cursor:pointer;border:0;border-top:1px solid #d2d7d9;align-items:center;gap:10px;width:100%;min-height:52px;padding:6px 20px;display:flex;position:absolute;bottom:0;left:0}.plan-graph-shell .sidebar-reset:hover{color:#263137}.plan-graph-shell .sidebar-reset.armed{gap:8px;font-size:12px}.plan-graph-shell .sidebar-reset.armed button{cursor:pointer;background:#fff;border:1px solid #c3cbce;border-radius:7px;padding:4px 10px}.plan-graph-shell .canvas-column{background:#fff;grid-template-rows:70px auto 1fr;min-width:0;min-height:0;display:grid}.plan-graph-shell .canvas-toolbar{z-index:5;border-bottom:1px solid #edf0f1;grid-row:1;justify-content:space-between;align-items:center;gap:10px;padding:0 16px;display:flex}.plan-graph-shell .crumb{color:#667078;background:#fff;border:1px solid #dce2e4;border-radius:10px;align-items:center;gap:9px;min-width:0;height:42px;padding:0 13px;font-size:13px;display:flex;box-shadow:0 3px 10px #2a343b14}.plan-graph-shell .crumb strong{white-space:nowrap;text-overflow:ellipsis;color:#293136;max-width:250px;overflow:hidden}.plan-graph-shell .crumb-warn{color:#8b5b0c;font-size:12px;font-style:normal}.plan-graph-shell .toolbar-actions{align-items:center;gap:8px;display:flex}.plan-graph-shell .toolbar-actions>button,.plan-graph-shell .segmented button{border:1px solid var(--g-line);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:6px;height:36px;padding:0 11px;display:inline-flex}.plan-graph-shell .toolbar-actions>button:disabled{opacity:.55;cursor:default}.plan-graph-shell .save-layout{color:var(--green-ink);font-size:13px;font-weight:620;border-color:#b9d9c7!important}.plan-graph-shell .segmented{border:1px solid var(--g-line);background:#f7f9f9;border-radius:9px;padding:3px;display:flex}.plan-graph-shell .segmented button{background:0 0;border:0;height:29px;font-size:13px}.plan-graph-shell .segmented button.active{color:var(--green-ink);background:#fff;box-shadow:0 1px 3px #1e2d321f}.plan-graph-shell .graph-notice{grid-row:2;align-items:center;gap:10px;margin:8px 16px 0;font-size:13px;display:flex}.plan-graph-shell .notice-dismiss{cursor:pointer;color:inherit;opacity:.65;background:0 0;border:0;margin-left:auto;font-size:16px;line-height:1}.plan-graph-shell .notice-dismiss:hover{opacity:1}.plan-graph-shell .canvas-wrap{grid-row:3;min-width:0;min-height:0;position:relative;overflow:hidden}.plan-graph-shell .react-flow__pane{cursor:grab}.plan-graph-shell .react-flow__pane:active{cursor:grabbing}.plan-graph-shell .react-flow__node{width:242px}.plan-graph-shell .react-flow__node.selected{z-index:4!important}.plan-graph-shell .react-flow__controls{border:1px solid var(--g-line);border-radius:8px;overflow:hidden;box-shadow:0 2px 9px #1f2e3614}.plan-graph-shell .react-flow__controls button{border-bottom-color:#e7ebec}.plan-graph-shell .react-flow__minimap{border:1px solid var(--g-line);border-radius:8px;overflow:hidden;box-shadow:0 3px 11px #1f2e3614;width:155px!important;height:105px!important}.plan-graph-shell .react-flow__edge.selected path{stroke-width:3px}.plan-graph-shell .canvas-legend{border:1px solid var(--g-line);color:#667178;background:#fffffff0;border-radius:8px;align-items:center;gap:16px;padding:8px 10px;font-size:10px;display:flex;position:absolute;bottom:15px;left:16px;box-shadow:0 2px 8px #1f2e360f}.plan-graph-shell .canvas-legend span{align-items:center;gap:6px;display:flex}.plan-graph-shell .canvas-legend .line{border-top:2px solid;width:25px;height:0}.plan-graph-shell .canvas-legend .line.green{border-color:var(--green)}.plan-graph-shell .canvas-legend .line.gray{border-color:#89959c}.plan-graph-shell .canvas-legend .line.orange{border-color:#b3541e;border-top-style:dashed}.plan-graph-shell .canvas-legend .line.amber{border-color:var(--amber);border-top-style:dashed}.plan-graph-shell .graph-node{background:#fffffffa;border:1px solid #cfd6d9;border-radius:9px;width:242px;position:relative;overflow:visible;box-shadow:0 3px 12px #222f3614}.plan-graph-shell .graph-node.tone-done{background:#e6f5e6;border-color:#94c79f}.plan-graph-shell .graph-node.tone-active,.plan-graph-shell .graph-node.tone-explore{background:var(--cyan-soft);border-color:#72c9c9}.plan-graph-shell .graph-node.tone-review{background:#fff9ed;border-color:#dfbd78}.plan-graph-shell .graph-node.tone-muted{opacity:.62}.plan-graph-shell .graph-node.is-selected{border-color:var(--green);box-shadow:0 0 0 2px #27865f29,0 7px 20px #222f361f}.plan-graph-shell .node-head{justify-content:space-between;align-items:center;gap:7px;min-height:44px;padding:9px 10px 6px;display:flex}.plan-graph-shell .node-head strong{font-size:13px;line-height:1.25}.plan-graph-shell .status-pill{color:#6f797e;background:#ffffffb8;border:1px solid #d5dcde;border-radius:999px;flex:none;align-items:center;min-height:20px;padding:1px 7px;font-size:10px;font-weight:650;display:inline-flex}.plan-graph-shell .status-pill.status-done{color:var(--green-ink);border-color:#acd7bc}.plan-graph-shell .status-pill.status-active,.plan-graph-shell .status-pill.status-explore{color:#15757a;border-color:#82d3d4}.plan-graph-shell .status-pill.status-review{color:#8b5b0c;border-color:#edc878}.plan-graph-shell .node-meta-row{color:#68737a;justify-content:space-between;align-items:center;gap:6px;padding:0 10px 7px;font-size:10px;display:flex}.plan-graph-shell .node-mode{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;min-width:0;display:flex;overflow:hidden}.plan-graph-shell .graph-node>p{color:#536068;background:#ffffffc7;border:1px solid #c2cdd1bf;border-radius:6px;min-height:45px;max-height:45px;margin:0 8px;padding:7px;font-size:10px;line-height:1.45;overflow:hidden}.plan-graph-shell .node-version{color:#718087;min-height:18px;padding:6px 9px 3px;font-size:9px}.plan-graph-shell .node-blocks{grid-template-columns:1fr auto;gap:4px 7px;padding:0 8px 8px;display:grid}.plan-graph-shell .node-blocks span{color:#59646a;background:#ffffffc7;border-radius:5px;align-items:center;gap:5px;height:20px;padding:0 6px;font-size:9px;display:flex}.plan-graph-shell .node-blocks b{background:#fff;border:1px solid #c7d1d4e6;border-radius:999px;place-items:center;min-width:29px;font-size:9px;display:grid}.plan-graph-shell .port{box-shadow:0 0 0 1px #56646b;background:#56646b!important;border:2px solid #fff!important;width:10px!important;height:10px!important}.plan-graph-shell .graph-node.is-selected .port-out{box-shadow:0 0 0 2px #27865f47;background:var(--green)!important;width:14px!important;height:14px!important;right:-8px!important}.plan-graph-shell .graph-node.is-selected .port-in{box-shadow:0 0 0 2px var(--green);background:#fff!important;left:-6px!important}.plan-graph-shell .edge-label-wrap{pointer-events:none;overflow:visible}.plan-graph-shell .feedback-label{color:#a26506;background:#fff7e7;border:1px solid #efc067;border-radius:6px;align-items:center;min-height:24px;padding:3px 7px;font-size:10px;font-weight:650;line-height:1.2;display:inline-flex}.plan-graph-shell .connect-panel{z-index:6;background:#fff;border:1px solid #d8dfe2;border-radius:12px;width:348px;max-width:calc(100% - 28px);max-height:calc(100% - 28px);padding:14px 16px 16px;position:absolute;top:14px;right:14px;overflow:auto;box-shadow:0 12px 34px #1e2c342e}.plan-graph-shell .connect-panel>header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.plan-graph-shell .connect-panel>header strong{font-size:14px}.plan-graph-shell .panel-close{color:var(--g-muted);cursor:pointer;background:0 0;border:0;font-size:13px}.plan-graph-shell .panel-close:hover{color:#263137}.plan-graph-shell .connect-choices{gap:8px;display:grid}.plan-graph-shell .connect-choices button{border:1px solid var(--g-line);text-align:left;cursor:pointer;background:#fff;border-radius:9px;gap:3px;padding:10px 12px;display:grid}.plan-graph-shell .connect-choices button:hover{background:#f7fbf8;border-color:#a8bbb2}.plan-graph-shell .connect-choices b{font-size:13px}.plan-graph-shell .connect-choices span{color:var(--g-muted);font-size:12px;line-height:1.5}.plan-graph-shell .connect-form .panel-label{margin:12px 0 7px}.plan-graph-shell .connect-items{gap:6px;max-height:180px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.plan-graph-shell .connect-items label{cursor:pointer;align-items:flex-start;gap:8px;font-size:13px;line-height:1.45;display:flex}.plan-graph-shell .connect-items input{margin-top:3px}.plan-graph-shell .connect-manual{cursor:pointer;align-items:center;gap:8px;margin-top:10px;font-size:13px;display:flex}.plan-graph-shell .connect-field{color:var(--g-muted);gap:5px;margin-top:12px;font-size:12px;display:grid}.plan-graph-shell .connect-field input,.plan-graph-shell .connect-field textarea,.plan-graph-shell .connect-form textarea{border:1px solid var(--g-line);resize:vertical;background:#fff;border-radius:8px;width:100%;padding:8px 10px;font-size:13px}.plan-graph-shell .connect-form>textarea{margin-top:4px}.plan-graph-shell .connect-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.plan-graph-shell .inspector{background:#fff;border-left:1px solid #e0e5e7;flex-direction:column;min-width:0;min-height:0;display:flex}.plan-graph-shell .inspector-tabs{border-bottom:1px solid #edf0f1;flex:none;align-items:flex-end;gap:18px;height:70px;padding:0 20px 12px;display:flex}.plan-graph-shell .inspector-tabs button{color:#788187;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 1px;font-weight:650}.plan-graph-shell .inspector-tabs button.active{color:#1d2529;border-bottom-color:var(--green)}.plan-graph-shell .panel-content{flex:1;min-height:0;padding:20px;overflow:auto}.plan-graph-shell .panel-content h2{margin:0 0 15px;font-size:17px}.plan-graph-shell .panel-content>p{color:var(--g-muted);margin:-7px 0 20px;font-size:12px;line-height:1.5}.plan-graph-shell .panel-label,.plan-graph-shell .panel-content label{color:#879097;letter-spacing:.09em;text-transform:uppercase;margin:16px 0 7px;font-size:10px;font-weight:750;display:block}.plan-graph-shell .panel-content select,.plan-graph-shell .panel-content input{border:1px solid var(--g-line);background:#fff;border-radius:7px;width:100%;height:38px;padding:0 10px;font-size:13px}.plan-graph-shell .detail-title-row{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.plan-graph-shell .detail-title-row h2{font-size:20px}.plan-graph-shell .readonly-box{border:1px solid var(--g-line);color:#465157;word-break:break-word;background:#fbfcfc;border-radius:7px;padding:10px;font-size:12px;line-height:1.5}.plan-graph-shell .readonly-box svg{vertical-align:-2px}.plan-graph-shell .detail-divider{background:#e9edee;height:1px;margin:20px 0}.plan-graph-shell .check-head{justify-content:space-between;align-items:baseline;display:flex}.plan-graph-shell .check-head label{margin:0}.plan-graph-shell .parent-row{align-items:center;gap:8px;display:flex}.plan-graph-shell .parent-row select,.plan-graph-shell .parent-row input{flex:1;min-width:0}.plan-graph-shell .parent-row button{flex:none;align-items:center;gap:6px;height:38px;display:inline-flex}.plan-graph-shell .relation-list{gap:8px;margin:4px 0 0;padding:0;font-size:12px;line-height:1.5;list-style:none;display:grid}.plan-graph-shell .relation-list li svg{vertical-align:-2px;margin-right:4px}.plan-graph-shell .relation-list .green,.plan-graph-shell .relation-card .green{color:var(--green-ink)}.plan-graph-shell .relation-list .amber,.plan-graph-shell .relation-card .amber{color:#8b5b0c}.plan-graph-shell .check-list{gap:8px;margin:11px 0;padding:0;list-style:none;display:grid}.plan-graph-shell .check-list li{align-items:flex-start;gap:8px;font-size:12px;line-height:1.45;display:flex}.plan-graph-shell .check{border:1px solid #c6ced1;border-radius:4px;flex:none;place-items:center;width:16px;height:16px;margin-top:1px;display:grid}.plan-graph-shell .check.checked{color:#fff;border-color:var(--green);background:var(--green)}.plan-graph-shell .rule-box{background:var(--amber-soft);color:#6c542a;border:1px solid #ead5aa;border-radius:8px;align-items:flex-start;gap:9px;margin-top:14px;padding:10px;display:flex}.plan-graph-shell .rule-box strong{font-size:12px}.plan-graph-shell .rule-box p{margin:3px 0 0;font-size:11px;line-height:1.45}.plan-graph-shell .rule-box.green-box{background:var(--green-soft);color:#295f48;border-color:#b9d9c7}.plan-graph-shell .primary-action{color:#fff;cursor:pointer;background:#1f2628;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:40px;margin-top:18px;font-size:13px;font-weight:650;text-decoration:none;display:flex}.plan-graph-shell .primary-action:disabled{opacity:.55;cursor:default}.plan-graph-shell .danger-action{color:#a33b3b;cursor:pointer;background:#fff;border:1px solid #e3c2c2;border-radius:8px;width:100%;margin-top:10px;padding:8px 10px;font-size:13px}.plan-graph-shell .danger-action:hover{background:#fdf4f4}.plan-graph-shell .confirm-inline{gap:8px;margin-top:10px;display:flex}.plan-graph-shell .confirm-inline button{cursor:pointer;color:#a33b3b;background:#fdf4f4;border:1px solid #e3c2c2;border-radius:8px;flex:1;padding:8px 10px;font-size:13px}.plan-graph-shell .confirm-inline button+button{border-color:var(--g-line);color:var(--g-muted);background:#fff}.plan-graph-shell .relation-card{border-bottom:1px solid #eef1f2;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:12px;display:flex}.plan-graph-shell .relation-card span{color:#7a8489}.plan-graph-shell .relation-card b{text-align:right}.plan-graph-shell .components-panel{align-content:start;display:grid}.plan-graph-shell .components-panel .parent-row button{border:1px solid var(--g-line);cursor:pointer;background:#fff;border-radius:8px;padding:0 11px}.plan-graph-shell .components-panel .parent-row button:hover{background:#f7fbf8;border-color:#a8bbb2}.plan-graph-shell .panel-empty{color:#7b858a;text-align:center;flex:1;place-content:center;justify-items:center;min-height:0;padding:30px;display:grid}.plan-graph-shell .panel-empty h2{color:#49545a;margin:12px 0 5px;font-size:16px}.plan-graph-shell .panel-empty p{margin:0;font-size:12px}@media (width<=1320px){.plan-graph-shell{grid-template-columns:250px minmax(520px,1fr) 300px}}.graph-narrow{max-width:720px;margin:0 auto;padding:24px 20px 72px}.graph-narrow .card{margin-bottom:16px}.graph-narrow .narrow-outline,.graph-narrow .narrow-relations{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.graph-narrow .narrow-outline ul{gap:6px;margin:6px 0 0;padding:0;list-style:none;display:grid}.graph-narrow .narrow-outline button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:14px;display:flex}.graph-narrow .narrow-outline button.selected{border-color:#27865f;box-shadow:0 0 0 2px #27865f24}.graph-narrow .narrow-outline small{color:var(--ink-3);font-variant-numeric:tabular-nums;margin-left:auto}.graph-narrow .outline-dot{background:#9aa5ab;border-radius:50%;flex:none;width:8px;height:8px}.graph-narrow .outline-dot.status-done{background:#27865f}.graph-narrow .outline-dot.status-active,.graph-narrow .outline-dot.status-explore{background:#36a5a5}.graph-narrow .outline-dot.status-review{background:#d58c17}.graph-narrow .narrow-relations li{border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:14px;line-height:1.55}
