:root{--bg:#f5f7f9;--surface:#fff;--surface-2:#eef2f5;--border:#dde3e9;--text:#15232e;--text-muted:#5b6b78;--primary:#0b6e74;--primary-hover:#095b60;--primary-text:#fff;--focus:#2a9da5;--active:#0f7a4f;--active-bg:#e3f4ec;--inactive:#9a5b00;--inactive-bg:#fdf1dc;--completed:#3f5a75;--completed-bg:#e6edf4;--danger:#b42318;--radius:10px;--shadow:0 1px 2px #1018280f, 0 1px 3px #10182814;--font-head:"Space Grotesk", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#0e161d;--surface:#152029;--surface-2:#1b2833;--border:#273744;--text:#e6edf2;--text-muted:#94a6b4;--primary:#3cb4bb;--primary-hover:#5cc6cc;--primary-text:#062226;--focus:#6fd3d9;--active:#5fd29e;--active-bg:#143326;--inactive:#f0b456;--inactive-bg:#3a2a10;--completed:#9fb8d2;--completed-bg:#1f2d3b;--danger:#f97066;--shadow:none}}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--text);font:15px/1.55 var(--font-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{font-family:var(--font-head);margin:0;line-height:1.25}h1{font-size:1.75rem;font-weight:700}h2{font-size:1.15rem;font-weight:600}h3{font-size:1.05rem;font-weight:600}a{color:var(--primary)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:10;justify-content:space-between;align-items:center;gap:16px;padding:12px 24px;display:flex;position:sticky;top:0}.brand{font:700 1.25rem var(--font-head);color:var(--text);letter-spacing:-.01em;text-decoration:none}.brand span{color:var(--primary)}.brand-lg{font-size:2.25rem}.user{align-items:center;gap:12px;min-width:0;display:flex}.user-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.page{max-width:1120px;margin:0 auto;padding:32px 24px 64px}.page-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-head h1{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hint{color:var(--text-muted);margin:4px 0 0;font-size:.9rem}.lede{color:var(--text-muted);max-width:70ch;margin:8px 0 0;font-size:1.02rem}.back{margin-bottom:16px;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-block}.btn{font:600 .9rem var(--font-body);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:8px 16px;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.btn:disabled{opacity:.6;cursor:progress}.btn-primary{background:var(--primary);color:var(--primary-text)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--surface);color:var(--primary);border-color:var(--primary)}.btn-secondary:hover:not(:disabled){background:var(--surface-2)}.btn-ghost{color:var(--text-muted);border-color:var(--border);background:0 0}.btn-ghost:hover:not(:disabled){color:var(--text);background:var(--surface-2)}.btn-lg{min-height:48px;padding:12px 24px;font-size:1rem}.section{margin-top:32px}.section>h2,.section summary h2{align-items:center;gap:8px;display:flex}.count{font:600 .8rem var(--font-body);background:var(--surface-2);color:var(--text-muted);border-radius:999px;padding:1px 9px}details.section summary{cursor:pointer;list-style:none}details.section summary::-webkit-details-marker{display:none}details.section summary h2:before{content:"▸";color:var(--text-muted);font-size:.8em;transition:transform .15s}details.section[open] summary h2:before{transform:rotate(90deg)}.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:16px;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:8px;padding:16px 18px;display:flex}.card-active{border-left-color:var(--active)}.card-inactive{border-left-color:var(--inactive)}.card-completed{border-left-color:var(--completed)}.card-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.card h3 a{color:var(--text);text-decoration:none}.card h3 a:hover{color:var(--primary);text-decoration:underline}.card-desc{color:var(--text-muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.9rem;display:-webkit-box;overflow:hidden}.meta{color:var(--text-muted);flex-wrap:wrap;gap:4px 14px;margin:0;font-size:.82rem;display:flex}.card-actions{gap:8px;margin-top:auto;padding-top:8px;display:flex}.badge{font:600 .75rem var(--font-body);background:var(--inactive-bg);color:var(--inactive);border-radius:999px;flex-shrink:0;padding:2px 8px}.empty{border:1px dashed var(--border);border-radius:var(--radius);color:var(--text-muted);text-align:center;margin:16px 0 0;padding:20px}.chip{font:600 .75rem var(--font-body);letter-spacing:.02em;border-radius:999px;padding:3px 10px}.chip-active{background:var(--active-bg);color:var(--active)}.chip-inactive{background:var(--inactive-bg);color:var(--inactive)}.chip-completed{background:var(--completed-bg);color:var(--completed)}.banner{border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:14px 18px;display:flex}.banner-inactive{background:var(--inactive-bg);color:var(--text);border:1px solid var(--inactive)}.banner-completed{background:var(--completed-bg);color:var(--text);border:1px solid var(--completed)}.stats{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1px;margin:0 0 24px;display:grid;overflow:hidden}.stats div{background:var(--surface);padding:14px 16px}.stats dt{color:var(--text-muted);font-size:.8rem}.stats dd{font:600 1.2rem var(--font-head);margin:2px 0 0}.workspace{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.placeholder{border:1px dashed var(--border);min-height:220px;color:var(--text-muted);background:var(--surface-2);border-radius:8px;place-items:center;margin-top:16px;display:grid}.manage{justify-content:flex-end;gap:8px;margin-top:24px;display:flex}.landing{place-items:center;min-height:100vh;padding:24px;display:grid}.landing-card{text-align:center;background:var(--surface);border:1px solid var(--border);width:min(440px,100%);box-shadow:var(--shadow);border-radius:16px;padding:48px 32px}.landing-card .lede{margin:12px auto 32px}.fine{color:var(--text-muted);margin:16px 0 0;font-size:.82rem}.dialog{border:1px solid var(--border);background:var(--surface);width:min(520px,100% - 32px);color:var(--text);border-radius:14px;padding:24px}.dialog::backdrop{background:#0a141c73}.dialog form{flex-direction:column;gap:16px;display:flex}.dialog label{flex-direction:column;gap:6px;font-size:.9rem;font-weight:500;display:flex}.dialog input,.dialog textarea{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);resize:vertical;border-radius:8px;padding:9px 12px}.dialog input:focus,.dialog textarea:focus{outline:2px solid var(--focus);outline-offset:0;border-color:#0000}.dialog label.check,.dialog label.topic-row{flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;font-weight:400}.dialog input[type=checkbox],.dialog input[type=radio]{flex:none;width:16px;height:16px;margin:0;padding:0}.optional{color:var(--text-muted);font-weight:400}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.loading{color:var(--text-muted);justify-content:center;align-items:center;gap:12px;padding:80px 0;display:flex}.spinner{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.error-state{text-align:center;color:var(--text-muted);padding:64px 0}.toast{background:var(--text);max-width:calc(100% - 32px);color:var(--bg);z-index:100;border-radius:8px;padding:12px 18px;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0003}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media (width<=640px){.topbar{padding:10px 16px}.user-name{display:none}.page{padding:24px 16px 48px}.page-head{flex-direction:column;align-items:stretch}.grid{grid-template-columns:1fr}.manage{justify-content:stretch}.manage .btn{flex:1}}.team{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:24px;padding:20px}.team-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.team-head h2{align-items:center;gap:8px;display:flex}.people{margin:12px 0 0;padding:0;list-style:none}.person{border-top:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.person:first-child{border-top:0}.avatar{background:var(--active-bg);width:36px;height:36px;color:var(--primary);font:600 .8rem var(--font-head);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.avatar-pending{background:var(--surface-2);color:var(--text-muted)}.person-main{flex-direction:column;flex:1;min-width:0;display:flex}.person-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.person-sub{color:var(--text-muted);font-size:.82rem}.person-pending .person-name{color:var(--text-muted)}.you{color:var(--text-muted);font-weight:400}.btn-sm{min-height:32px;padding:4px 12px;font-size:.82rem}.loading-inline{color:var(--text-muted);font-size:.9rem}.dialog select{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:9px 12px}.copy-row{gap:8px;display:flex}.copy-row input{min-width:0;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;flex:1;padding:9px 12px;font:.85rem ui-monospace,SFMono-Regular,Consolas,monospace}.error-state h1{color:var(--text);margin-bottom:8px}.error-state .btn{margin-top:16px;text-decoration:none}:root{--cat-principle:#2563a8;--cat-principle-bg:#e7f0fb;--cat-tool:#0f7a4f;--cat-tool-bg:#e3f4ec;--cat-purpose:#9a5b00;--cat-purpose-bg:#fdf1dc;--cat-question:#a3361f;--cat-question-bg:#fbe9e4;--cat-publication:#5b4a9e;--cat-publication-bg:#eeebf8}@media (prefers-color-scheme:dark){:root{--cat-principle:#8fbcf0;--cat-principle-bg:#162a40;--cat-tool:#5fd29e;--cat-tool-bg:#143326;--cat-purpose:#f0b456;--cat-purpose-bg:#3a2a10;--cat-question:#f39a85;--cat-question-bg:#3d1d16;--cat-publication:#b9acf0;--cat-publication-bg:#262043}}.cat-principle{--cat:var(--cat-principle);--cat-bg:var(--cat-principle-bg)}.cat-tool{--cat:var(--cat-tool);--cat-bg:var(--cat-tool-bg)}.cat-purpose{--cat:var(--cat-purpose);--cat-bg:var(--cat-purpose-bg)}.cat-question{--cat:var(--cat-question);--cat-bg:var(--cat-question-bg)}.cat-publication{--cat:var(--cat-publication);--cat-bg:var(--cat-publication-bg)}.ws-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);align-items:start;gap:20px;display:grid}.workspace,.roadmap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.ws-side{flex-direction:column;gap:16px;min-height:0;max-height:calc(100vh - 96px);display:flex;position:sticky;top:76px}.roadmap{flex:auto;min-height:0;overflow:auto}.conv-summary{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);max-height:40%;box-shadow:var(--shadow);flex:0 auto;padding:16px 18px;overflow:auto}.conv-summary h2{margin:0 0 4px;font-size:1rem}.conv-summary .hint{margin:0 0 8px;font-size:.8rem}.conv-summary-text{font-size:.9rem}.roadmap h2{align-items:center;gap:8px;display:flex}.ws-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.demo-note{background:var(--inactive-bg);color:var(--text);border:1px solid var(--inactive);border-radius:8px;margin:12px 0 0;padding:10px 14px;font-size:.85rem}.chat-log{flex-direction:column;gap:12px;min-height:260px;max-height:60vh;margin-top:16px;padding:4px 2px 8px;display:flex;overflow-y:auto}.msg{align-items:flex-end;gap:10px;max-width:88%;display:flex}.msg-user{align-self:flex-end}.msg-coach{align-self:flex-start}.msg-avatar{background:var(--primary);width:30px;height:30px;color:var(--primary-text);font:700 .7rem var(--font-head);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.bubble{overflow-wrap:anywhere;border-radius:14px;padding:10px 14px;line-height:1.5}.msg-coach .bubble{background:var(--surface-2);border-bottom-left-radius:4px}.msg-user .bubble{background:var(--primary);color:var(--primary-text);border-bottom-right-radius:4px}.msg-failed .bubble{opacity:.55}.dots{gap:4px;display:inline-flex}.dots i{background:var(--text-muted);border-radius:50%;width:6px;height:6px;animation:1.2s infinite blink}.dots i:nth-child(2){animation-delay:.2s}.dots i:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:.25}40%{opacity:1}}.chat-error{color:var(--danger);align-self:center;font-size:.85rem}.log-divider{text-align:center;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;border-top:1px solid var(--border);align-self:stretch;padding-top:10px;font-size:.78rem}.composer{align-items:flex-end;gap:8px;margin-top:12px;display:flex}.composer textarea{resize:none;min-width:0;font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:10px;flex:1;max-height:200px;padding:10px 12px}.composer textarea:focus{outline:2px solid var(--focus);outline-offset:0;border-color:#0000}.phi{margin-top:6px}.suggestion{border:1px solid var(--border);border-left:4px solid var(--cat);border-radius:var(--radius);background:var(--surface);flex-direction:column;align-self:stretch;gap:8px;margin-left:40px;padding:14px 16px;display:flex}.sg-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.sg-title{font:600 .95rem var(--font-head)}.sg-title:before{content:"💡 "}.sg-agent{color:var(--text-muted);font-size:.78rem}.sg-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.72rem;font-weight:600;display:block}.sg-quote{font-style:italic}.sg-arrow{text-align:center;color:var(--text-muted);font-size:.78rem}.sg-item{background:var(--cat-bg);border-radius:8px;padding:10px 12px}.sg-item-top{align-items:center;gap:8px;display:flex}.cat-chip{font:600 .7rem var(--font-body);text-transform:uppercase;letter-spacing:.04em;color:var(--cat);border:1px solid var(--cat);border-radius:999px;padding:1px 8px}.sg-num{color:var(--cat);font:600 .82rem ui-monospace,SFMono-Regular,Consolas,monospace}.sg-text{margin-top:4px;font-weight:600}.sg-path{color:var(--text-muted);margin-top:2px;font-size:.8rem}.sg-why summary{cursor:pointer;color:var(--primary);font-size:.85rem;font-weight:500}.sg-why p{margin:6px 0 0;font-size:.88rem}.sg-actions{flex-wrap:wrap;gap:8px;display:flex}.resolved{color:var(--text-muted);align-self:stretch;margin-left:40px;padding:6px 0;font-size:.85rem}.resolved-approved{color:var(--active)}.rm-group{margin-top:16px}.rm-group h3{font:600 .82rem var(--font-body);color:var(--text-muted);margin-bottom:6px}.rm-group ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rm-group li{background:var(--cat-bg);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;display:flex}.rm-text{flex-basis:100%;font-size:.9rem;font-weight:500}.rm-group details{flex-basis:100%;font-size:.82rem}.rm-group details summary{cursor:pointer;color:var(--text-muted)}.rm-group details p{margin:4px 0 0}@media (width<=900px){.ws-grid{grid-template-columns:1fr}.ws-side{max-height:none;position:static}.roadmap,.conv-summary{max-height:none}}@media (width<=640px){.msg{max-width:100%}.suggestion,.resolved{margin-left:0}}.msg-coach .bubble>:first-child{margin-top:0}.msg-coach .bubble>:last-child{margin-bottom:0}.msg-coach .bubble p{margin:0 0 8px}.msg-coach .bubble h4{font:600 .98rem var(--font-head);margin:12px 0 6px}.msg-coach .bubble ul,.msg-coach .bubble ol{margin:4px 0 8px;padding-left:20px}.msg-coach .bubble li,.msg-coach .bubble li>ul,.msg-coach .bubble li>ol{margin:2px 0}.msg-coach .bubble hr{border:0;border-top:1px solid var(--border);margin:10px 0}.msg-coach .bubble code{background:var(--surface);border-radius:4px;padding:1px 4px;font:.85em ui-monospace,SFMono-Regular,Consolas,monospace}.ws-actions{align-items:center;gap:8px;display:flex}.tools-wrap{position:relative}.tools-menu{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:10px;width:min(360px,90vw);max-height:60vh;padding:6px;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 10px 30px #00000026}.tools-group+.tools-group{border-top:1px solid var(--border);margin-top:4px;padding-top:4px}.tools-group-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:6px 10px 2px;font-size:.72rem;font-weight:600}.tools-menu button{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:1fr auto;align-items:baseline;gap:0 10px;padding:7px 10px;display:grid}.tools-menu button:hover,.tools-menu button:focus-visible{background:var(--surface-2);outline:none}.tool-label{font-weight:500}.tool-desc{color:var(--text-muted);grid-column:1;font-size:.8rem}.tool-cmd{color:var(--text-muted);grid-area:1/2;font-size:.78rem}.composer{position:relative}.cmd-suggest{z-index:15;background:var(--surface);border:1px solid var(--border);border-radius:10px;width:min(420px,100%);margin:0;padding:4px;list-style:none;position:absolute;bottom:calc(100% + 6px);left:0;box-shadow:0 10px 30px #00000026}.cmd-suggest button{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 10px}.cmd-suggest button:hover,.cmd-suggest button:focus-visible{background:var(--surface-2);outline:none}.cmd-suggest code{color:var(--primary);margin-right:6px}@media (width<=640px){.ws-head{flex-wrap:wrap}}.admin-nav{gap:4px;margin-left:24px;margin-right:auto;display:flex}.admin-nav a{color:var(--text-muted);border-radius:8px;padding:6px 12px;font-size:.9rem;font-weight:500;text-decoration:none}.admin-nav a:hover{background:var(--surface-2);color:var(--text)}.admin-nav a[aria-current=page]{background:var(--surface-2);color:var(--primary)}.dropzone{border:2px dashed var(--border);border-radius:var(--radius);background:var(--surface);text-align:center;cursor:pointer;justify-items:center;gap:6px;padding:28px 20px;transition:border-color .15s,background-color .15s;display:grid}.dropzone:hover,.dropzone.over,.dropzone:focus-visible{border-color:var(--primary);background:var(--surface-2)}.dz-icon{color:var(--primary);font-size:1.6rem}.linkish{color:var(--primary);text-decoration:underline}.uploads{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.upload{background:var(--surface);border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) auto 160px minmax(120px,auto);align-items:center;gap:12px;padding:8px 12px;font-size:.88rem;display:grid}.upload.ok{border-color:var(--active)}.upload.bad{border-color:var(--danger)}.up-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.up-size,.up-state{color:var(--text-muted)}.upload progress{width:100%;accent-color:var(--primary)}.lib-head{justify-content:space-between;align-items:center;margin-top:28px;display:flex}.lib-head h2{align-items:center;gap:8px;display:flex}.check{color:var(--text-muted);cursor:pointer;align-items:center;gap:6px;font-size:.9rem;display:inline-flex}.resources{grid-template-columns:auto minmax(0,1fr) minmax(140px,220px) minmax(130px,200px) auto;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.resource,.res-header{grid-column:1/-1;grid-template-columns:subgrid;align-items:start;column-gap:14px;display:grid}.resource{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.res-header{font:600 .75rem var(--font-body);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:0 17px}.res-col{flex-wrap:wrap;align-content:flex-start;gap:4px;font-size:.85rem;display:flex}.res-who{flex-flow:column;gap:2px}.res-col .none{color:var(--text-muted);font-style:italic}.res-col-label{display:none}.resource.removed{opacity:.6}.res-icon{margin-top:2px;font-size:1.4rem;line-height:1}.res-main{flex:1;gap:4px;min-width:0;display:grid}.res-title{font-weight:600}.res-desc{color:var(--text-muted);font-size:.88rem}.res-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:200px;display:flex}.badge-muted{font:600 .72rem var(--font-body);background:var(--surface-2);color:var(--text-muted);border-radius:999px;padding:1px 8px}.ai-status{font-size:.82rem;font-weight:600}.ai-note{color:var(--text-muted);font-weight:400}.tone-ok{color:var(--active)}.tone-wait{color:var(--completed)}.tone-warn{color:var(--inactive)}.tone-muted{color:var(--text-muted)}.dialog fieldset.who{border:1px solid var(--border);border-radius:8px;gap:6px;padding:10px 14px;display:grid}.dialog fieldset.who legend{padding:0 4px;font-size:.9rem;font-weight:500}.who-list{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px 12px;padding-left:22px;display:grid}.who-list.disabled{opacity:.5}.dialog.preview{width:min(960px,100% - 32px)}.preview-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.preview-body img,.preview-body video{border-radius:8px;max-width:100%;max-height:70vh;margin:0 auto;display:block}.preview-body audio{width:100%}.preview-body iframe{background:var(--surface-2);border:0;border-radius:8px;width:100%;height:70vh}.people select{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:6px 10px}.level{font:600 .78rem var(--font-body);background:var(--surface-2);color:var(--text-muted);border-radius:999px;padding:3px 10px}.level-atlas_admin{background:var(--completed-bg);color:var(--completed)}.level-group_admin{background:var(--active-bg);color:var(--active)}@media (width<=760px){.admin-nav{margin-left:8px}.upload{grid-template-columns:1fr auto}.upload progress,.up-state{grid-column:1/-1}.resources{grid-template-columns:minmax(0,1fr)}.res-header{display:none}.resource{grid-template-columns:auto minmax(0,1fr);row-gap:8px}.res-col,.res-actions{grid-column:2}.res-col-label{color:var(--text-muted);margin-right:4px;font-weight:600;display:inline}.res-who{flex-flow:wrap;gap:4px 8px}.res-actions{justify-content:flex-start;max-width:none}}.consultant-pick{color:var(--text-muted);align-items:center;gap:8px;margin-left:16px;margin-right:auto;font-size:.88rem;display:flex}.consultant-pick select{font:600 .9rem var(--font-body);color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:8px;max-width:240px;padding:5px 8px}.ai-tag{font:700 .62rem var(--font-body);letter-spacing:.06em;color:var(--primary);border:1px solid var(--primary);vertical-align:middle;border-radius:4px;padding:0 4px}.consultant-expertise{margin-top:6px;font-size:.82rem}.msg-name{font:600 .78rem var(--font-body);color:var(--primary);margin-bottom:4px}.msg-note{text-align:center;max-width:85%;color:var(--text-muted);background:var(--surface-2);border-radius:999px;align-self:center;padding:4px 12px;font-size:.8rem}@media (width<=640px){.consultant-pick{order:3;width:100%;margin-left:0}.consultant-pick select{flex:1;max-width:none}}.lib-tools{align-items:center;gap:12px;display:flex}.upload-topics{gap:6px;margin-bottom:12px;display:grid}.upload-topics>label,.dialog .field>label{font-size:.9rem;font-weight:500}.dialog .field{gap:6px;display:grid}.tag-input{cursor:text;background:var(--bg);border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;min-height:40px;padding:6px 8px;display:flex}.tag-input:focus-within{outline:2px solid var(--focus);border-color:#0000}.tag-input .tags{display:contents}.tag-input input{min-width:140px;color:inherit;font:inherit;background:0 0;border:0;outline:none;flex:1;padding:2px 4px}.topic-chip{background:var(--active-bg);color:var(--primary);border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:.8rem;font-weight:500;display:inline-flex}.topic-chip button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0 0 0 2px;font-size:.95rem;line-height:1}.dialog fieldset.topic-pick{border:1px solid var(--border);border-radius:8px;gap:8px;padding:10px 14px;display:grid}.dialog fieldset.topic-pick legend{padding:0 4px;font-size:.9rem;font-weight:500}.topic-list{border:1px solid var(--border);border-radius:6px;flex-direction:column;max-height:240px;display:flex;overflow-y:auto}.topic-row{cursor:pointer;text-align:left;justify-content:flex-start;align-items:center;gap:10px;padding:6px 10px;font-size:.9rem;display:flex}.topic-row+.topic-row{border-top:1px solid var(--border)}.topic-row:hover{background:var(--surface-2)}.topic-row input{flex:none;width:auto;margin:0}.topic-add{gap:6px;display:flex}.topic-add input{min-width:0;font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;flex:1;padding:6px 10px}.topic-filter{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.chip-btn{font:500 .82rem var(--font-body);color:var(--text-muted);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:999px;padding:3px 10px}.chip-btn.on{background:var(--primary);border-color:var(--primary);color:var(--primary-text)}.chip-btn.on .count{color:inherit;background:0 0}.page-wide{max-width:none;padding:24px 32px 48px}.page-wide .ws-grid{grid-template-columns:minmax(0,2.2fr) minmax(320px,1fr)}.page-wide .chat-log{height:max(380px,100vh - 430px);max-height:none}.title-row{align-items:center;gap:12px;display:flex}.proj-menu-wrap{position:relative}.icon-btn{background:var(--surface);width:38px;height:38px;color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:8px;flex-shrink:0;place-items:center;font-size:1.05rem;display:inline-grid}.icon-btn:hover{background:var(--surface-2)}.icon-btn[aria-expanded=true]{border-color:var(--primary);color:var(--primary)}.proj-menu{z-index:30;background:var(--surface);border:1px solid var(--border);border-radius:10px;min-width:240px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 30px #00000026}.proj-menu button{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;gap:2px;padding:8px 10px;display:grid}.proj-menu button:hover,.proj-menu button:focus-visible{background:var(--surface-2);outline:none}.pm-label{font-weight:600}.pm-desc{color:var(--text-muted);font-size:.8rem}.dialog.team-dialog{width:min(640px,100% - 32px)}.dlg-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.team-body{max-height:65vh;overflow-y:auto}.team-body .team-head{justify-content:space-between;align-items:center;gap:12px;display:flex}@media (width<=900px){.page-wide{padding:20px 16px 40px}.page-wide .ws-grid{grid-template-columns:1fr}.page-wide .chat-log{height:auto;max-height:60vh}}.topbar-left{align-items:center;gap:10px;display:flex}.app-menu-wrap{position:relative}.icon-btn-bar{width:36px;height:36px}.app-menu{z-index:40;background:var(--surface);border:1px solid var(--border);border-radius:10px;min-width:250px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 10px 30px #00000026}.app-menu button{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;gap:2px;padding:8px 10px;display:grid}.app-menu button:hover,.app-menu button:focus-visible{background:var(--surface-2);outline:none}.dialog.speech-dialog{width:min(560px,100% - 32px)}.sp-form{gap:14px;display:grid}.sp-form fieldset{border:1px solid var(--border);border-radius:10px;gap:10px;padding:12px 14px;display:grid}.sp-form legend{padding:0 4px;font-weight:600}.sp-form label:not(.check){gap:4px;font-size:.9rem;font-weight:500;display:grid}.sp-form select{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:7px 10px}.sp-form input[type=range]{accent-color:var(--primary)}.sp-test{gap:8px;display:flex}.mic-btn{min-width:44px;padding:6px 10px;font-size:1.05rem}.mic-btn.speech-on{border-color:var(--primary);background:var(--surface-2)}.mic-btn.listening{border-color:var(--danger);color:var(--danger);animation:1.2s infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 #b4231859}50%{box-shadow:0 0 0 6px #b4231800}}.speak-btn{cursor:pointer;opacity:.65;background:0 0;border:0;margin-left:4px;padding:0 4px;font-size:.85rem}.speak-btn:hover,.speak-btn:focus-visible{opacity:1}.sp-status{color:var(--text-muted);align-self:center;font-size:.82rem}.sp-status.ok{color:var(--active)}.sp-status.bad{color:var(--danger)}.sp-test{flex-wrap:wrap;align-items:center}.panel-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.consultant-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.consultant-card.removed{opacity:.6}.cc-main{flex:1;gap:4px;min-width:0;display:grid}.cc-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cc-name{font-weight:600}.cc-expertise{color:var(--text-muted);font-size:.9rem}.badge-default{font:600 .72rem var(--font-body);background:var(--active-bg);color:var(--active);border-radius:999px;padding:1px 8px}.dialog.consultant-dialog{width:min(760px,100% - 32px)}.consultant-dialog form{gap:12px;display:grid}.consultant-dialog textarea{font-family:inherit;line-height:1.45}.cc-engine{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.cc-engine [hidden]{display:none}.cc-engine select{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:9px 12px}@media (width<=640px){.consultant-card{flex-wrap:wrap}.consultant-card .res-actions{justify-content:flex-start;width:100%;max-width:none}}.cc-tools{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.cc-tools-head{font:600 .75rem var(--font-body);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}.cc-tools ul{gap:2px;margin:4px 0 0;padding:0;list-style:none;display:grid}.cc-tools li{flex-wrap:wrap;align-items:center;gap:8px;padding:2px 0;font-size:.88rem;display:flex}.cc-tools li.removed{opacity:.55}.cc-tools code{background:var(--surface-2);border-radius:6px;padding:1px 6px;font-size:.82rem}.cc-tool-group{color:var(--text-muted);font-size:.8rem}.cc-tool-actions{gap:4px;margin-left:auto;display:flex}.cmd-input{align-items:center;gap:4px;display:flex}.cmd-input>span{color:var(--text-muted);font-weight:600}.cmd-input input{flex:1}.tool-form{gap:12px;display:grid}.tool-form select{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:9px 12px}.km-layout{grid-template-columns:minmax(240px,320px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.km-side{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:10px;max-height:calc(100vh - 140px);padding:14px;display:grid;position:sticky;top:12px;overflow-y:auto}.km-new{gap:6px;display:grid}.km-new label{font-size:.9rem;font-weight:600}.km-new-row{gap:6px;display:flex}.km-new-row input,.km-search input{min-width:0;font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;flex:1;padding:8px 10px}.km-side-title{align-items:center;gap:6px;margin:6px 0 0;font-size:.95rem;display:flex}.km-unplaced{gap:6px;margin:0;padding:0;list-style:none;display:grid}.km-chip{border:1px solid var(--border);background:var(--bg);cursor:grab;border-radius:8px;align-items:center;gap:4px;padding:4px 6px;display:flex}.km-chip.selected{border-color:var(--primary);box-shadow:0 0 0 2px var(--active-bg)}.km-chip-name{text-align:left;font:inherit;color:inherit;cursor:inherit;background:0 0;border:0;flex:1;padding:4px}.km-chip .icon-btn{font-size:.85rem}.km-main{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;min-width:0;display:flex}.km-search{border-bottom:1px solid var(--border);align-items:center;gap:6px;padding:10px 12px;display:flex}.km-search-count{color:var(--text-muted);white-space:nowrap;text-align:right;min-width:4.5em;font-size:.8rem}.km-selected{background:var(--active-bg);color:var(--text);border-bottom:1px solid var(--border);padding:8px 12px;font-size:.88rem}.km-scroll{max-height:calc(100vh - 220px);overflow-y:auto}.km-map{margin:0;padding:4px 0;list-style:none}.km-row{padding:5px 12px 5px calc(12px + var(--depth) * 20px);border-left:3px solid #0000;align-items:center;gap:10px;font-size:.88rem;display:flex}.km-row:hover{background:var(--surface-2)}.km-addr{color:var(--text-muted);flex:none;min-width:6.5em;font:500 .8rem ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.km-name{flex:1;min-width:0}.kind-section{background:var(--surface-2);margin-top:6px;font-weight:700}.kind-subsection{font-weight:600}.kind-group .km-name{color:var(--text-muted);font-style:italic}.kind-topic{border-left-color:var(--primary)}.kind-topic .km-name{color:var(--primary);font-weight:600}.kind-topic[draggable=true]{cursor:grab}.km-badge{font:600 .7rem var(--font-body);background:var(--active-bg);color:var(--active);white-space:nowrap;border-radius:999px;padding:1px 8px}.km-row-actions{flex:none;gap:4px;display:none}.km-row:hover .km-row-actions,.km-row:focus-within .km-row-actions{display:flex}.km-place{display:none}.km-scroll.placing .km-place{display:inline-flex}.km-scroll.placing .km-row-actions{display:flex}.km-scroll.placing .km-row-actions>:not(.km-place){display:none}.km-row.drop-target{background:var(--active-bg);outline:2px dashed var(--primary);outline-offset:-2px}.km-row.match{background:#fff6d6}.km-row.current{border-left-color:var(--inactive);background:#ffe9a3}.km-row.flash{animation:2s ease-out km-flash}@keyframes km-flash{0%{background:var(--active-bg)}to{background:0 0}}.km-menu{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;gap:2px;max-width:460px;margin:2px 12px 8px 52px;padding:8px;display:grid}.km-menu-title{padding:2px 6px 6px;font-size:.85rem}.km-menu button{text-align:left;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 8px;font-size:.88rem}.km-menu button:hover:not([disabled]),.km-menu button:focus-visible{background:var(--surface-2)}.km-menu button[disabled]{color:var(--text-muted);cursor:not-allowed}.km-menu .fine{margin:0;padding:0 8px}.km-menu-cancel{color:var(--text-muted)!important}@media (prefers-color-scheme:dark){.km-row.match{background:#4a3f12}.km-row.current{background:#6b5714}}@media (width<=900px){.km-layout{grid-template-columns:minmax(0,1fr)}.km-side{max-height:none;position:static}.km-scroll{max-height:70vh}.km-row-actions{flex-wrap:wrap;display:flex}.km-row{flex-wrap:wrap}}.km-badge-platform{background:var(--completed-bg);color:var(--completed)}.km-row.platform:not(.kind-topic) .km-name{color:var(--text-muted)}.km-unassign{flex:none;padding:2px 8px;font-size:.78rem}.km-scroll.placing .km-unassign{display:none}.km-side.drop-back{outline:2px dashed var(--primary);outline-offset:-4px;background:var(--active-bg)}.cp-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.cp-item{border:1px solid var(--border);background:var(--bg);border-radius:8px}.cp-item.selected{border-color:var(--primary);box-shadow:0 0 0 2px var(--active-bg);background:var(--surface)}.cp-item.removed .cp-pick{opacity:.6}.cp-pick{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 10px;display:flex}.cp-area-count{color:var(--text-muted);margin-left:auto;font-size:.75rem}.cp-details{gap:8px;padding:0 10px 10px;font-size:.88rem;display:grid}.cp-areas ul{gap:2px;margin:4px 0 0;padding:0;list-style:none;display:grid}.cp-areas li{align-items:center;gap:4px;display:flex}.cp-area-link{text-align:left;min-width:0;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1;gap:6px;padding:3px 4px;display:flex}.cp-area-link:hover{background:var(--surface-2)}.cp-area-link .km-addr{min-width:0}.cp-actions{flex-wrap:wrap;gap:4px;display:flex}.cp-retired summary{cursor:pointer;margin:8px 0 6px;font-size:.9rem;font-weight:600}.cp-map .km-row{cursor:pointer}.cp-map .km-row:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.km-row.linked{background:var(--active-bg);border-left-color:var(--active)}.cp-linked-mark{color:var(--active);font-weight:700}.cp-covers{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:40%;font-size:.72rem;overflow:hidden}.km-hint{background:var(--surface-2);color:var(--text-muted)}.cp-for{background:var(--active-bg);border-radius:8px;margin:0;padding:8px 10px;font-size:.88rem}.cp-tool-chip{font:500 .75rem var(--font-body);background:var(--surface-2);border:1px solid var(--border);cursor:pointer;color:inherit;border-radius:999px;flex:none;padding:1px 8px}.cp-tool-chip:hover{border-color:var(--primary)}.cp-tool-mark{color:var(--primary);white-space:nowrap;font-size:.75rem}.cp-tool-pick{border-bottom:1px solid var(--border);gap:6px;margin-bottom:4px;padding:4px 8px 8px;display:grid}.cp-tool-fields{flex-wrap:wrap;align-items:center;gap:6px;padding-left:22px;display:flex}.cp-tool-fields select,.cp-tool-fields input{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:4px 8px;font-size:.85rem}.cp-tool-fields [hidden]{display:none}.cp-offmap{border-top-style:dashed}.proj-menu button.pm-danger .pm-label{color:var(--danger)}.delete-dialog form{gap:10px;display:grid}.delete-dialog h2{color:var(--danger)}.del-list{gap:2px;margin:0;padding-left:20px;display:grid}.btn-danger{background:var(--danger);color:#fff;border:1px solid var(--danger)}.btn-danger:hover:not(:disabled){filter:brightness(.92)}.btn-danger:disabled{opacity:.45;cursor:not-allowed}.page-head:has(.title-row)>div:first-child{flex:1;min-width:0}.title-row{flex-wrap:wrap}.res-item .cp-pick{align-items:flex-start}.res-pick-main{flex:1;gap:1px;min-width:0;display:grid}.res-pick-main .cc-name{overflow-wrap:anywhere}.res-pick-sub{font-size:.75rem;font-weight:600}.cp-area-count.none{color:var(--inactive)}.cp-side .lib-tools{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.res-filter{font:inherit;color:inherit;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:6px 10px}.km-menu-sub{color:var(--text-muted);border-top:1px solid var(--border);margin-top:4px;padding:6px 8px 0;font-size:.78rem}.res-reach{font-size:.85rem}.res-reach.none{color:var(--inactive)}.res-nobody{font:600 .7rem var(--font-body);color:var(--inactive);background:var(--inactive-bg);white-space:nowrap;border-radius:999px;padding:1px 8px}.km-badge-related{color:#5b4a9e;background:#ede9fe}.km-row.related.kind-section{border-top:2px dashed var(--border);margin-top:10px}@media (prefers-color-scheme:dark){.km-badge-related{color:#c4b8f5;background:#2e2a4a}}.consult-card{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:var(--radius);align-self:stretch;gap:8px;margin-left:40px;padding:12px 14px;display:grid}.consult-q{margin:0}@media (width<=640px){.consult-card{margin-left:0}}.page-full{box-sizing:border-box;max-width:none;height:calc(100dvh - 65px);margin:0;padding:12px 16px}.proj-layout{grid-template-columns:300px minmax(0,1fr);gap:16px;height:100%;display:grid}.proj-layout.collapsed{grid-template-columns:44px minmax(0,1fr)}.proj-side{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-height:0;box-shadow:var(--shadow);flex-direction:column;gap:10px;padding:12px 14px;display:flex}.ps-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.ps-top .back{margin:0}.ps-toggle{flex:none;font-size:1.1rem}.ps-body{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex}.ps-scroll{flex-direction:column;flex:1;gap:14px;min-height:0;padding-right:2px;display:flex;overflow-y:auto}.proj-side .title-row{flex-wrap:nowrap;align-items:flex-start;gap:8px}.proj-side h1{overflow-wrap:anywhere;margin:2px 0 0;font-size:1.3rem;line-height:1.25}.proj-side .lede{margin:0;font-size:.9rem}.proj-side .banner{margin:0;padding:10px 12px;font-size:.88rem}.proj-side .stats{grid-template-columns:1fr 1fr;margin:0}.proj-side .stats div{padding:8px 10px}.proj-side .stats div.wide{grid-column:1/-1}.proj-side .stats dd{font-size:1rem}.proj-side .manage{flex-wrap:wrap;justify-content:flex-start;margin:0}.ps-rail{display:none}.proj-layout.collapsed .proj-side{align-items:center;padding:8px 4px}.proj-layout.collapsed .ps-top{justify-content:center}.proj-layout.collapsed .ps-top .back,.proj-layout.collapsed .ps-body{display:none}.proj-layout.collapsed .ps-rail{writing-mode:vertical-rl;cursor:pointer;color:var(--text-muted);font:600 .9rem var(--font-head);white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;max-height:75%;display:block;overflow:hidden;transform:rotate(180deg)}.proj-layout.collapsed .ps-rail:hover{color:var(--text)}.proj-main{flex-direction:column;min-height:0;display:flex}.page-full .ws-grid{flex:1;grid-template-columns:minmax(0,2.2fr) minmax(300px,1fr);align-items:stretch;min-height:0}.page-full .workspace{flex-direction:column;min-height:0;padding:16px 18px;display:flex}.page-full .chat-log{flex:1;height:auto;min-height:0;max-height:none}.page-full .ws-side{max-height:none;position:static}.page-full .roadmap{min-height:0;max-height:none;overflow:auto}@media (width<=900px){.page-full{height:auto;padding:12px}.proj-layout,.proj-layout.collapsed{grid-template-columns:minmax(0,1fr);height:auto}.proj-layout.collapsed .proj-side{align-items:stretch}.proj-layout.collapsed .ps-top{justify-content:space-between}.proj-layout.collapsed .ps-top .back{display:inline-block}.proj-layout.collapsed .ps-rail{writing-mode:horizontal-tb;text-align:left;max-height:none;transform:none}.ps-scroll{overflow:visible}.page-full .ws-grid{grid-template-columns:minmax(0,1fr)}.page-full .chat-log{flex:none;height:60vh}}.token-count{color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);white-space:nowrap;cursor:default;border-radius:999px;align-items:baseline;gap:4px;padding:2px 10px;font-size:.82rem;display:inline-flex}.token-count[hidden]{display:none}.tc-label{font-weight:600}.tc-value{font:600 .85rem var(--font-head);color:var(--text);font-variant-numeric:tabular-nums}@media (width<=640px){.tc-label{display:none}}.tc-cost{font:600 .85rem var(--font-head);color:var(--primary);font-variant-numeric:tabular-nums}.tc-sep{color:var(--text-muted)}.model-form{gap:8px;display:grid}.dialog .model-opt{border:1px solid var(--border);cursor:pointer;border-radius:8px;flex-direction:row;align-items:flex-start;gap:10px;padding:10px 12px;font-weight:400;display:flex}.model-opt:has(input:checked){border-color:var(--primary);background:var(--active-bg)}.model-opt input{flex:none;margin-top:3px}.model-opt>span{gap:2px;display:grid}.model-note{color:var(--text-muted);font-size:.85rem}.xp-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.xp-head h2{margin:0;font-size:.95rem}.xp-head a{font-size:.8rem}.xp-bars{gap:10px;display:grid}.xp-dept{gap:4px;min-width:0;display:grid}.xp-dept-name{font:600 .78rem var(--font-body);color:var(--text)}.xp-dept-term{color:var(--text-muted);font-weight:500}.xp-bar{gap:3px;display:flex}.xp-seg{cursor:default;background:var(--seg,var(--surface-2));border:1px solid color-mix(in srgb, var(--text) 40%, transparent);border-radius:3px;flex:1;min-width:14px;height:14px;padding:0}.xp-compact .xp-seg{height:12px}.xp-page .xp-seg{height:20px}.xp-seg.xp-none,.xp-swatch.xp-none,.xp-dot.xp-none{background:repeating-linear-gradient(45deg, var(--surface-2), var(--surface-2) 3px, var(--surface) 3px, var(--surface) 6px)}.xp-seg:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.xp-seg.active{box-shadow:0 0 0 2px var(--focus)}.xp-legend{color:var(--text-muted);flex-wrap:wrap;gap:4px 14px;margin-top:6px;font-size:.75rem;display:flex}.xp-key{align-items:center;gap:6px;display:inline-flex}.xp-swatch{border:1px solid color-mix(in srgb, var(--text) 40%, transparent);border-radius:2px;width:14px;height:10px;display:inline-block}.xp-ramp{border:1px solid color-mix(in srgb, var(--text) 40%, transparent);background:linear-gradient(90deg,#e0b100,#e87a1a,#2f9e5b);border-radius:2px;width:64px;height:10px;display:inline-block}.xp-tip{min-height:1.1em;color:var(--text);font-size:.8rem}.xp-page .xp-bars{gap:22px}.xp-page .xp-dept-name{font-size:.95rem}.xp-topics{gap:4px;margin:4px 0 0;padding:0;list-style:none;display:grid}.xp-topics li{flex-wrap:wrap;align-items:center;gap:8px;font-size:.88rem;display:flex}.xp-dot{background:var(--seg);border:1px solid color-mix(in srgb, var(--text) 40%, transparent);border-radius:50%;flex:none;width:12px;height:12px}.xp-topic{flex:12em;min-width:0}.xp-level{color:var(--text-muted);font-size:.82rem}.xp-page{max-width:760px}.proj-side .expertise{border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:6px;padding:10px 0;display:grid}.user-link{white-space:nowrap;font-size:.9rem}.user-link[aria-current=page]{font-weight:600;text-decoration:none}.landing .disclaimer{margin-top:4px}.km-badge-draft{border-style:dashed}.km-row.alias .km-name{font-style:italic}.me-layout{grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);align-items:start;gap:16px;display:grid}@media (width<=900px){.me-layout{grid-template-columns:1fr}}.me-tree-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0;padding:10px}.me-tools{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.me-tools input{flex:12em;min-width:0}.me-tree{max-height:70vh;margin:0;padding:0;list-style:none;overflow:auto}.me-row{padding:4px 6px 4px calc(6px + var(--depth) * 16px);cursor:pointer;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;min-width:0;font-size:.88rem;display:flex}.me-row:hover{background:var(--surface-2)}.me-row:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.me-row.selected{background:var(--active-bg);border-color:var(--primary)}.me-row.readonly{color:var(--text-muted)}.me-row.dragging{opacity:.5}.me-row.drop-onto{outline:2px dashed var(--primary);outline-offset:-2px}.me-row.drop-before{box-shadow:inset 0 3px 0 var(--primary)}.me-row.drop-after{box-shadow:inset 0 -3px 0 var(--primary)}.me-twisty{width:1.2em;color:var(--text-muted);cursor:pointer;background:0 0;border:0;flex:none;padding:0}.me-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.me-row.kind-dept .me-name,.me-row.kind-firm .me-name{font-weight:600}.me-row.kind-topic .me-name{color:var(--primary);font-weight:600}.me-kind{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;font-size:.7rem}.me-link-count{color:var(--text-muted);white-space:nowrap;font-size:.75rem}.me-type{color:var(--primary);white-space:nowrap;font-size:.7rem}.me-type-none{color:var(--text-muted);font-style:italic}.me-retired{margin-top:10px;font-size:.85rem}.me-retired ul{gap:4px;padding:0;list-style:none;display:grid}.me-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0;padding:14px;position:sticky;top:12px}.me-p-head h2{margin:2px 0;font-size:1.1rem}.me-form{gap:8px;display:grid}.me-form label{gap:4px;font-size:.85rem;display:grid}.me-form label.check{align-items:center;gap:6px;display:flex}.me-row2{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.me-sec{border-top:1px solid var(--border);margin-top:12px;padding-top:10px}.me-sec h3{margin:0 0 6px;font-size:.85rem}.me-list{gap:4px;margin:0 0 6px;padding:0;font-size:.85rem;list-style:none;display:grid}.me-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.me-add{gap:6px;display:flex}.me-add input{flex:1;min-width:0}.me-dropmenu{z-index:50;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px;min-width:180px;padding:4px;display:grid;position:fixed}.me-dropmenu button{text-align:left;color:var(--text);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;padding:8px 10px}.me-dropmenu button:hover,.me-dropmenu button:focus-visible{background:var(--surface-2)}.me-dropmenu .me-cancel{color:var(--text-muted)}.me-pick input{width:100%;margin:6px 0}.me-pick-list{gap:2px;max-height:50vh;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.me-pick-list button{text-align:left;cursor:pointer;width:100%;font:inherit;color:var(--text);background:0 0;border:0;border-radius:6px;padding:6px 8px}.me-pick-list button:hover,.me-pick-list button:focus-visible{background:var(--surface-2)}.td-list{gap:4px;max-height:50vh;margin:8px 0;display:grid;overflow:auto}.msg-coach .bubble .md-list{padding-left:0;list-style:none}.msg-coach .bubble .md-list>li{padding-left:1.7em;position:relative}.msg-coach .bubble .md-n{min-width:1.5em;color:var(--text-muted);font-weight:600;position:absolute;left:0}.msg-coach .bubble .md-list .md-list{margin-top:2px}.xp-why{flex-basis:100%;margin:2px 0 6px 20px;font-size:.85rem}.xp-why summary{cursor:pointer;color:var(--primary)}.xp-ev-list{gap:8px;margin:6px 0 0;padding:0;list-style:none;display:grid}.xp-ev-list li{border-left:3px solid var(--border);padding-left:8px}.progress{flex:340px;gap:4px;min-width:260px;margin-left:auto;display:grid}.pg-bar{gap:8px;display:flex}.pg-phase{gap:3px;min-width:0;display:grid}.pg-steps{gap:3px;display:flex}.pg-step{background:var(--surface-2);border:1px solid var(--border);cursor:default;border-radius:3px;flex:1;min-width:8px;height:12px;display:flex;position:relative;overflow:hidden}.pg-step:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.pg-step.started{border-color:var(--active)}.pg-step.waiting{border-color:var(--inactive)}.pg-step.active{box-shadow:0 0 0 2px var(--focus)}.pg-fill{background:var(--active);height:100%;display:block}.pg-pend{background:repeating-linear-gradient(45deg, var(--inactive-bg), var(--inactive-bg) 3px, #f3d9a6 3px, #f3d9a6 6px);height:100%;display:block}.pg-phase-name{font:600 .68rem var(--font-body);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pg-summary{color:var(--text-muted);flex-wrap:wrap;gap:4px 12px;font-size:.8rem;display:flex}.pg-next{color:var(--text)}.pg-tip{min-height:1.1em;color:var(--text);font-size:.8rem}@media (width<=640px){.progress{flex-basis:100%;margin-left:0}.pg-bar{gap:5px}}.proj-side .progress{flex:none;min-width:0;margin:0}.proj-side .pg-bar{flex-direction:column;gap:8px}.proj-side .pg-phase{flex-direction:column-reverse;gap:3px;display:flex}.proj-side .pg-summary{flex-direction:column;gap:2px}.proj-side .plan-progress{border-top:1px solid var(--border);gap:6px;padding:10px 0;display:grid}.pp-title{margin:0;font-size:.95rem}.pp-list{gap:8px;margin:0;padding:0;font-size:.85rem;list-style:none;display:grid}.pp-list li{gap:2px;display:grid}.pp-topic{font-weight:600}.pp-count{color:var(--text-muted)}.pp-bar{background:var(--surface-2);border:1px solid color-mix(in srgb, var(--text) 25%, transparent);border-radius:3px;height:6px;display:block;overflow:hidden}.pp-bar>span{background:var(--primary);height:100%;display:block}
