:root{color-scheme:light dark;--bg:#090c0f;--surface:#10151a;--raised:#151b21;--soft:#0d1216;--line:#28313a;--strong:#3a4652;--text:#f4f6f8;--muted:#9ca7b4;--coral:#f47655;--coral2:#df5b3e;--mint:#72e0b3;--red:#ff7f8e;--amber:#edc06c;--radius:16px;--shadow:0 18px 54px rgba(0,0,0,.28);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
*{box-sizing:border-box}html{min-width:320px;background:var(--bg)}body{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(circle at 82% -8%,rgba(244,118,85,.09),transparent 28rem),var(--bg)}button,input,select,textarea{font:inherit}button{color:inherit}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--coral);outline-offset:2px}h1,h2,h3,p{margin:0}h1{font-size:clamp(1.65rem,6vw,2.3rem);line-height:1.08;letter-spacing:-.035em}h2{font-size:1.15rem;line-height:1.3}h3{font-size:1rem;line-height:1.35}p{line-height:1.55}
.app-shell{width:100%;min-height:100vh;padding-bottom:138px}.app-bar{position:sticky;z-index:20;top:0;display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);background:rgba(9,12,15,.9);backdrop-filter:blur(18px)}.brand-button{flex:none;padding:8px 0;border:0;background:none;font-size:1.05rem;font-weight:780;letter-spacing:-.03em}.brand-button span{color:var(--mint)}.context-controls,.project-control{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:6px}.context-select{min-width:0;max-width:136px;height:38px;padding:0 28px 0 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font-size:.82rem;font-weight:650}.environment-select{max-width:112px;color:var(--mint)}.add-project-button{display:grid;width:38px;height:38px;flex:none;place-items:center;border:1px solid var(--strong);border-radius:10px;background:var(--raised);color:var(--mint);font-size:1.25rem;font-weight:500}.add-project-button:hover{border-color:var(--mint);filter:brightness(1.12)}
.route-view{width:min(100%,900px);margin:0 auto;padding:22px 16px 28px;animation:route-in .18s cubic-bezier(.2,.8,.2,1)}@keyframes route-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.bottom-nav{position:fixed;z-index:30;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);min-height:68px;padding:5px max(8px,env(safe-area-inset-right)) max(5px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border-top:1px solid var(--line);background:rgba(12,16,20,.95);backdrop-filter:blur(20px)}.nav-item{position:relative;min-width:0;border:0;border-radius:11px;background:transparent;color:var(--muted);font-size:.78rem;font-weight:680}.nav-item.active{color:var(--text);background:rgba(255,255,255,.045)}.nav-item.active:before{position:absolute;top:3px;left:50%;width:20px;height:2px;border-radius:9px;background:var(--coral);content:"";transform:translateX(-50%)}.chat-launcher{position:fixed;z-index:35;right:14px;bottom:80px;display:flex;min-height:46px;align-items:center;gap:8px;padding:0 17px;border:1px solid rgba(244,118,85,.48);border-radius:999px;background:linear-gradient(135deg,#242a30,#15191e);color:#fff;box-shadow:0 14px 36px rgba(0,0,0,.5);font-weight:780}.chat-launcher span{color:var(--coral);font-size:1.05rem}.chat-launcher:hover{border-color:var(--coral);filter:brightness(1.12)}.chat-launcher:active{transform:scale(.985)}
.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:4px 0 20px}.page-heading>div{min-width:0}.page-heading h1{margin-top:4px}.page-heading p:last-child{max-width:650px;margin-top:8px;color:var(--muted);font-size:.95rem}.compact-heading{align-items:center}.eyebrow{color:var(--mint);font-size:.76rem;font-weight:780;letter-spacing:.09em;text-transform:uppercase}
.primary-button,.secondary-button,.quiet-button,.back-button,.remove-button,.run-button{min-height:42px;border-radius:11px;font-weight:720;transition:transform .14s ease,filter .14s ease,border-color .14s ease}.primary-button,.run-button{border:0;background:linear-gradient(135deg,var(--coral),var(--coral2));color:#fff;box-shadow:0 8px 25px rgba(223,91,62,.18)}.primary-button{padding:0 16px}.secondary-button{padding:0 15px;border:1px solid var(--strong);background:var(--raised)}.quiet-button,.back-button,.remove-button{min-height:36px;padding:0 10px;border:1px solid transparent;background:transparent;color:var(--muted)}.back-button{padding-left:0;color:var(--text)}.remove-button{color:var(--red);font-size:.78rem}.primary-button:hover,.secondary-button:hover,.quiet-button:hover,.back-button:hover,.remove-button:hover,.run-button:hover{filter:brightness(1.12)}.primary-button:active,.secondary-button:active,.run-button:active{transform:scale(.985)}button:disabled{cursor:wait;opacity:.6}
.health-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;overflow:hidden;margin-bottom:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--line)}.health-strip button{min-width:0;padding:15px 9px;border:0;background:var(--surface);text-align:left}.health-strip strong,.health-strip span{display:block}.health-strip strong{font-size:1.35rem}.health-strip span{overflow:hidden;margin-top:3px;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}
.section-block,.filter-bar,.api-list,.configuration-list,.run-list,.timeline,.codex-summary,.request-composer,.run-hero{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(20,26,32,.94),rgba(13,18,22,.96));box-shadow:var(--shadow)}.section-block{margin-top:14px;padding:17px}.section-heading,.inline-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading h2{margin-top:3px}.supporting-copy,.modal-intro{color:var(--muted);font-size:.9rem}.section-block>.supporting-copy{margin-top:12px}.source-list,.finding-list,.variable-summary,.task-list,.iteration-list{display:grid;gap:8px;margin-top:14px}.source-row,.variable-summary>div,.task-list>div,.iteration-list>div{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--soft)}.source-row>div{min-width:0}.source-row strong,.source-row span,.variable-summary span,.variable-summary strong{display:block}.source-row strong,.variable-summary span{font-size:.78rem;text-transform:capitalize}.source-row div span{overflow:hidden;margin-top:3px;color:var(--muted);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.variable-summary span{color:var(--muted)}.variable-summary strong{overflow-wrap:anywhere;text-align:right}.tag-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.tag{padding:6px 9px;border:1px solid rgba(114,224,179,.23);border-radius:999px;background:rgba(114,224,179,.08);color:var(--mint);font-size:.75rem}.finding-list button{display:flex;min-height:46px;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:11px;background:var(--soft);text-align:left}.status-mark{min-width:48px;padding:5px 7px;border-radius:7px;background:rgba(237,192,108,.1);color:var(--amber);font-size:.7rem;text-align:center}.status-mark.danger{background:rgba(255,127,142,.1);color:var(--red)}.empty-message{padding:26px 18px;text-align:center}.empty-message p{max-width:470px;margin:8px auto 15px;color:var(--muted)}
.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding:10px 12px;box-shadow:none}.filter-bar select{height:38px;padding:0 30px 0 10px;border:0;background:transparent;color:var(--text);font-weight:700}.filter-bar>span{color:var(--muted);font-size:.8rem}.api-list,.run-list{overflow:hidden}.api-row,.run-row{display:flex;width:100%;min-width:0;min-height:76px;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left}.api-row:last-child,.run-row:last-child{border-bottom:0}.api-row:hover,.run-row:hover{background:rgba(255,255,255,.035)}.api-row-main,.run-row>div:first-child{display:flex;min-width:0;align-items:center;gap:11px}.api-row-main>div,.run-row>div:first-child>div{min-width:0}.api-row strong,.api-row span,.run-row strong,.run-row span{display:block}.api-row-main div span,.run-row div div span{overflow:hidden;margin-top:4px;color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:.77rem;text-overflow:ellipsis;white-space:nowrap}.api-row-meta,.run-row>div:last-child{flex:none;text-align:right}.api-row-meta>span:first-child,.run-row>div:last-child>span:last-child{margin-bottom:4px;color:var(--muted);font-size:.74rem}.method-badge{display:inline-block;min-width:48px;color:var(--mint);font-size:.74rem;font-weight:850;letter-spacing:.04em}.method-POST{color:var(--coral)}.method-PUT,.method-PATCH{color:var(--amber)}.method-DELETE{color:var(--red)}.status-text{font-size:.77rem;font-weight:750}.success,.success-text{color:var(--mint)}.danger,.danger-text{color:var(--red)}.warning{color:var(--amber)}
.request-route-head{display:flex;align-items:flex-start;gap:13px;margin:2px 0 17px}.request-route-head>div{min-width:0;flex:1}.request-route-head h1{overflow-wrap:anywhere;font-size:1.6rem}.title-input{width:100%;padding:3px 0;border:0;background:transparent;color:var(--text);font-size:1.45rem;font-weight:780;letter-spacing:-.025em}.request-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px}.composer-row{display:flex;min-width:0}.method-select,.url-input,.field,.text-input,.code-input,.goal-input,.kv-row input,.kv-row select,.assertion-row input,.assertion-row select,.source-root-row input,.source-root-row select{border:1px solid var(--strong);background:var(--soft);color:var(--text)}.method-select{width:96px;flex:none;padding:0 10px;border-radius:10px 0 0 10px;color:var(--mint);font-weight:800}.url-input{min-width:0;height:48px;flex:1;padding:0 13px;border-left:0;border-radius:0 10px 10px 0;font-family:"SFMono-Regular",Consolas,monospace;font-size:.86rem}.run-button{min-width:128px;padding:0 18px}.run-button span{margin-left:6px;opacity:.65;font-size:.72rem}.configuration-list{overflow:hidden;margin-top:12px}.configuration-list details{border-bottom:1px solid var(--line)}.configuration-list details:last-child{border-bottom:0}.configuration-list summary{display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:14px;padding:0 16px;list-style:none;font-weight:720}.configuration-list summary::-webkit-details-marker{display:none}.configuration-list summary:before{content:"+";width:18px;color:var(--muted);font-size:1.15rem}.configuration-list details[open] summary:before{content:"−";color:var(--mint)}.configuration-list summary span:first-child{margin-right:auto}.configuration-list summary span:last-child{color:var(--muted);font-size:.8rem;font-weight:520}.details-body{display:grid;gap:12px;padding:0 16px 16px 42px;animation:reveal .16s ease-out}@keyframes reveal{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.field-label{display:grid;gap:6px;color:var(--muted);font-size:.8rem;font-weight:650}.field,.text-input,.code-input,.goal-input{width:100%;min-height:44px;padding:10px 11px;border-radius:10px}.text-input,.code-input,.goal-input{resize:vertical}.text-input,.code-input{min-height:120px}.code-input,pre{font-family:"SFMono-Regular",Consolas,monospace}.goal-input{min-height:92px;border-color:transparent;background:transparent;font-size:1rem;line-height:1.55}.kv-list,.assertion-list{display:grid;gap:8px}.kv-row{display:grid;grid-template-columns:24px 1fr 1fr auto;gap:7px;align-items:center}.kv-row input:not([type=checkbox]),.assertion-row input,.assertion-row select{min-width:0;height:40px;padding:0 9px;border-radius:8px}.assertion-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:7px}.add-row-button{justify-self:start}.toggle-row{display:flex;align-items:center;gap:9px;color:var(--text);font-size:.9rem}
.run-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px}.run-hero.success-surface{border-color:rgba(114,224,179,.5);background:linear-gradient(135deg,rgba(36,105,79,.24),rgba(14,28,24,.76))}.run-hero.failure-surface{border-color:rgba(255,127,142,.45);background:linear-gradient(135deg,rgba(112,35,48,.24),rgba(30,14,18,.76))}.run-hero h2{overflow-wrap:anywhere;margin-top:5px}.run-hero>div>p:last-child{margin-top:6px;color:var(--muted);font-size:.86rem}.timeline{position:relative;margin-top:13px;overflow:hidden}.timeline:before{position:absolute;top:31px;bottom:31px;left:34px;width:2px;background:linear-gradient(var(--mint),rgba(114,224,179,.08));content:""}.timeline-step{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:13px;padding:17px 18px 17px 14px}.timeline-step+.timeline-step{border-top:1px solid rgba(40,49,58,.55)}.timeline-step>div{min-width:0}.timeline-step>span:last-child{color:var(--muted);font-size:.78rem}.step-label{z-index:1;display:grid;width:40px;height:40px;place-items:center;border:2px solid var(--mint);border-radius:50%;background:var(--surface);color:var(--mint);font-weight:800}.timeline-step p{margin-top:4px;color:var(--muted);font-size:.86rem}.check-list{display:grid;gap:2px;margin-top:7px}.response-step{grid-template-columns:42px minmax(0,1fr)}.response-step pre{max-height:390px;overflow:auto;margin:12px 0 0;padding:14px;border:1px solid var(--line);border-radius:11px;background:#080b0e;color:#dce6ec;font-size:.79rem;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.codex-summary{margin-top:13px;padding:19px;border-color:rgba(244,118,85,.24);background:linear-gradient(135deg,rgba(244,118,85,.08),rgba(17,21,26,.95))}.codex-summary h2{margin-top:6px}.codex-summary>p:last-of-type,.codex-summary li{color:#c8cfd6}.codex-summary ul{padding-left:20px}.action-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}
.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.summary-grid>div{padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--soft)}.summary-grid strong,.summary-grid span{display:block}.summary-grid strong{font-size:1.35rem}.summary-grid span{margin-top:4px;color:var(--muted);font-size:.72rem}.task-status{min-width:70px;color:var(--mint);font-size:.74rem;text-transform:capitalize}.task-list strong{flex:1}.iteration-list span{color:var(--muted);font-size:.78rem}
.map-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.map-overview>div{padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.map-overview strong,.map-overview span{display:block}.map-overview strong{font-size:1.35rem}.map-overview span{margin-top:3px;color:var(--muted);font-size:.76rem}.integration-list{display:grid;gap:10px}.integration-card{width:100%;padding:15px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(20,26,32,.94),rgba(13,18,22,.96));text-align:left;box-shadow:var(--shadow)}.integration-head{display:flex;min-width:0;align-items:center;gap:10px}.integration-head strong{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.integration-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:9px;margin-top:13px}.integration-flow span{min-width:0;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--soft);overflow-wrap:anywhere;font-size:.8rem}.integration-flow small{display:block;margin-bottom:3px;color:var(--muted);font-size:.68rem;text-transform:uppercase}.integration-flow b{color:var(--mint)}.integration-card>p{margin-top:10px;color:var(--muted);font-size:.75rem}.evidence-stack{display:grid;gap:10px}.evidence-stack p{padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--soft);color:var(--muted)}
.project-picker{margin-bottom:14px}.project-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin-top:14px}.project-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--soft);text-align:left}.project-row.active{border-color:rgba(114,224,179,.45);background:rgba(114,224,179,.06)}.project-avatar{display:grid;width:40px;height:40px;place-items:center;border-radius:10px;background:var(--raised);color:var(--mint);font-weight:850}.project-row>span:nth-child(2){min-width:0}.project-row strong,.project-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-row small{margin-top:3px;color:var(--muted);font-size:.72rem}.project-row b{color:var(--muted);font-size:.72rem}.project-row.active b{color:var(--mint)}.two-column-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.compact-input{min-height:76px}.optional-label{font-weight:500;opacity:.75}
dialog{width:min(620px,calc(100% - 24px));max-height:min(82vh,760px);padding:0;overflow:hidden;border:1px solid var(--strong);border-radius:18px;background:var(--raised);color:var(--text);box-shadow:0 25px 90px rgba(0,0,0,.62)}dialog::backdrop{background:rgba(0,0,0,.64);backdrop-filter:blur(4px)}.modal-form{display:flex;max-height:inherit;flex-direction:column}.modal-header,.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px}.modal-header{border-bottom:1px solid var(--line)}.modal-actions{border-top:1px solid var(--line)}.modal-close{width:38px;height:38px;border:0;border-radius:9px;background:var(--soft);color:var(--muted)}.modal-body{display:grid;gap:13px;overflow:auto;padding:17px}.source-root-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:7px}.source-root-row select,.source-root-row input{min-width:0;height:42px;padding:0 9px;border-radius:9px}.prompt-box{padding:14px;border:1px solid rgba(114,224,179,.24);border-radius:11px;background:rgba(114,224,179,.07);line-height:1.55}.codex-prompt{min-height:280px}.toast{position:fixed;z-index:60;right:14px;bottom:136px;left:14px;max-width:520px;margin:auto;padding:12px 15px;border:1px solid var(--strong);border-radius:12px;background:#20272e;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(12px);transition:.18s ease}.toast.show{opacity:1;transform:none}.fatal-error{display:grid;gap:16px;width:min(100% - 32px,820px);margin:40px auto;padding:28px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgba(20,26,32,.95),rgba(13,18,22,.98));box-shadow:var(--shadow)}.fatal-error h1{max-width:760px;font-size:clamp(2.2rem,7vw,4rem)}.fatal-error>p:not(.eyebrow){max-width:760px;color:#d4d9df;font-size:1.1rem}.fatal-error small{color:var(--muted);font-size:.78rem}.fatal-error code{font-family:"SFMono-Regular",Consolas,monospace}.fatal-error .supporting-copy{max-width:760px}.command-snippet{overflow:auto;margin:3px 0 0;padding:16px;border:1px solid var(--strong);border-radius:13px;background:#080b0e;color:#f4f6f8;font-size:.95rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:620px){.route-view{padding:17px 12px 24px}.app-bar{min-height:60px;padding:8px 12px}.brand-button{font-size:.96rem}.context-select{max-width:125px;height:36px;font-size:.76rem}.add-project-button{width:36px;height:36px}.environment-select{max-width:105px}.page-heading{align-items:flex-start}.page-heading .primary-button{flex:none}.health-strip{grid-template-columns:repeat(2,1fr)}.request-composer{grid-template-columns:1fr}.run-button{width:100%}.api-row,.run-row{align-items:flex-start}.api-row-meta{max-width:90px}.summary-grid,.map-overview{grid-template-columns:repeat(2,1fr)}.integration-flow{grid-template-columns:1fr}.integration-flow b{transform:rotate(90deg);text-align:center}.kv-row{grid-template-columns:24px minmax(0,1fr)}.assertion-row{grid-template-columns:1fr 1fr}.kv-row .remove-button{grid-column:2;justify-self:end}.details-body{padding-left:16px}.run-hero{align-items:flex-start}.run-hero .secondary-button{flex:none}.source-root-row{grid-template-columns:1fr;padding:10px;border:1px solid var(--line);border-radius:11px}}
@media(max-width:400px){.brand-button{font-size:.88rem}.context-controls,.project-control{gap:4px}.context-select{max-width:88px}.environment-select{max-width:76px}.two-column-fields{grid-template-columns:1fr}.page-heading{display:grid}.page-heading .primary-button{justify-self:start}.request-route-head{display:block}.request-route-head .back-button{margin-bottom:8px}.composer-row{display:grid;grid-template-columns:88px minmax(0,1fr)}.run-hero{display:grid}.timeline-step{grid-template-columns:38px minmax(0,1fr);padding-right:12px}.timeline-step>span:last-child{grid-column:2}.step-label{width:36px;height:36px}.timeline:before{left:31px}.api-row-meta{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.context-pack{display:grid;gap:12px}.context-pack-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px}.context-pack-metrics>div{display:grid;gap:5px;min-width:0;padding:11px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.context-pack-metrics>div>span,.context-pack-metrics small{color:var(--muted);font-size:.75rem}.context-pack-metrics>div>strong:not(.status-chip){font-size:.95rem}.context-pack-metrics small{line-height:1.4}.context-token-meter{height:7px;overflow:hidden;border-radius:99px;background:var(--line)}.context-token-meter span{display:block;height:100%;border-radius:inherit;background:var(--mint);transition:width .18s ease}.context-pack-warning{padding:10px 12px;border:1px solid rgba(237,192,108,.32);border-radius:9px;background:rgba(237,192,108,.08);color:var(--amber);font-size:.82rem;line-height:1.45}.context-pack-section{border:1px solid var(--line);border-radius:10px;background:var(--soft)}.context-pack-section summary{padding:11px 12px;font-weight:700;cursor:pointer}.context-pack-section[open] summary{border-bottom:1px solid var(--line)}.context-manifest{display:grid;gap:7px;padding:11px 12px}.context-manifest+.context-manifest{border-top:1px solid var(--line)}.context-manifest>strong{font-size:.78rem}.context-manifest>ul,.context-unresolved-list{display:grid;gap:7px;margin:0;padding-left:18px}.context-manifest li{min-width:0;color:var(--muted);font-size:.76rem;overflow-wrap:anywhere}.context-manifest li code{display:block;color:var(--text);font-size:.72rem}.context-manifest li span,.context-manifest li small{display:block;margin-top:3px}.context-manifest li small{color:var(--muted);font-size:.68rem}.context-manifest>p,.context-pack-section>p,.context-unresolved-list{padding:0 12px 11px;color:var(--muted);font-size:.78rem}.context-unresolved-list{padding-left:30px}.context-pack .supporting-copy{font-size:.78rem}
@media(max-width:420px){.context-pack-metrics{grid-template-columns:1fr}.context-pack-metrics>div{padding:9px}.context-pack-section summary{padding:10px}.context-manifest{padding:10px}}

/* Spacious side-panel experience */
:root{font-size:17px;--radius:18px}
body{background:radial-gradient(circle at 90% 0,rgba(244,118,85,.1),transparent 26rem),var(--bg)}
h1{font-size:clamp(2.05rem,7vw,2.8rem);line-height:1.02}
h2{font-size:1.3rem;line-height:1.25}
h3{font-size:1.05rem}
.app-shell{padding-bottom:128px}
.mobile-header{position:sticky;z-index:40;top:0;display:flex;min-height:64px;align-items:center;justify-content:space-between;gap:12px;padding:9px 18px;border-bottom:1px solid var(--line);background:rgba(9,12,15,.9);backdrop-filter:blur(20px)}
.mobile-header button{min-height:44px;padding:0 14px;border:1px solid transparent;border-radius:12px;background:transparent;font-size:.9rem;font-weight:750}
.header-home{color:var(--muted)}
.header-home.active,.header-home:hover{background:var(--raised);color:var(--text)}
.header-actions{display:flex;align-items:center;gap:7px}
.mobile-header .header-upgrade{border-color:rgba(244,118,85,.45);color:#ff9a7e}
.mobile-header .header-settings{border-color:var(--line);background:var(--surface)}
.route-view{width:min(100%,960px);padding:26px 20px 36px}
.bottom-nav{grid-template-columns:repeat(4,1fr);min-height:72px;padding-top:6px}
.nav-item{min-height:56px;padding:0 3px;font-size:.78rem}
.chat-launcher{right:18px;bottom:88px;min-height:50px;padding:0 19px;font-size:.94rem}
.chat-launcher .chat-spark{color:var(--coral);font-size:1.05rem}
.chat-launcher .chat-label{color:#fff}
.eyebrow{font-size:.8rem;letter-spacing:.1em}
.page-heading{align-items:center;margin:2px 0 24px}
.page-heading p:last-child{max-width:640px;margin-top:10px;font-size:1rem}
.primary-button,.secondary-button,.run-button{min-height:50px;padding:0 18px;border-radius:13px;font-size:.96rem}
.quiet-button,.back-button{min-height:44px;padding:0 12px;font-size:.92rem}
.large-button{min-height:54px;padding:0 22px}
.text-back-button{min-height:40px;margin:0 0 8px;padding:0;border:0;background:transparent;color:var(--muted);font-weight:700;text-align:left}
.text-back-button:before{content:"‹";margin-right:7px;color:var(--mint);font-size:1.25rem}
.section-block{margin-top:18px;padding:20px}
.section-heading{align-items:flex-start}
.section-heading h2{margin-top:5px}
.supporting-copy,.modal-intro{font-size:.96rem}
.health-strip{margin-bottom:18px;border-radius:18px}
.health-strip button{min-height:82px;padding:16px 12px}
.health-strip strong{font-size:1.55rem}
.health-strip span{margin-top:5px;font-size:.82rem}
.home-hero{padding:6px 0 28px}
.product-mark{display:flex;align-items:center;gap:10px;margin-bottom:46px;font-size:1.25rem;font-weight:850;letter-spacing:-.04em}
.product-mark img{width:34px;height:34px;border-radius:8px}
.product-mark .logo-letter{color:#f77412}.product-mark .logo-neutral{color:#11120f}
.home-hero h1{margin-top:7px}
.home-hero>p:last-of-type{max-width:630px;margin-top:12px;color:var(--muted);font-size:1.04rem}
.home-hero .large-button{margin-top:22px}
.home-projects{padding-top:22px;border-top:1px solid var(--line)}
.project-card-list{display:grid;gap:12px;margin-top:16px}
.project-card{display:grid;width:100%;grid-template-columns:52px minmax(0,1fr) 22px;align-items:center;gap:14px;min-height:104px;padding:16px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,rgba(20,26,32,.96),rgba(13,18,22,.98));text-align:left;box-shadow:var(--shadow)}
.project-card:hover{border-color:rgba(114,224,179,.45);background:rgba(114,224,179,.05)}
.project-avatar{width:52px;height:52px;border-radius:14px;font-size:1.1rem}
.project-card-copy{display:block;min-width:0}
.project-card-copy strong,.project-card-copy small,.project-card-meta{display:block}
.project-card-copy strong{font-size:1.08rem}
.project-card-copy h3{margin:0;font-size:inherit;line-height:inherit}
.project-card-copy h3 a{color:inherit;text-decoration:none}
.project-card-copy h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.project-card-copy h3 a:focus-visible{outline:2px solid var(--coral);outline-offset:3px}
.project-card-copy small{overflow:hidden;margin-top:5px;color:var(--muted);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}
.project-card-meta{margin-top:8px;color:var(--mint);font-size:.8rem;font-weight:680}
.project-card-arrow{color:var(--muted);font-size:1.8rem}
.detail-list{display:grid;gap:0;margin-top:16px;border:1px solid var(--line);border-radius:14px;background:var(--soft)}
.detail-list>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;padding:14px 15px;border-bottom:1px solid var(--line)}
.detail-list>div:last-child{border-bottom:0}
.detail-list span{color:var(--muted);font-size:.88rem}
.detail-list strong{overflow-wrap:anywhere;font-size:.94rem;text-align:right}
.environment-list{display:grid;gap:10px;margin-top:16px}
.environment-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border:1px solid var(--line);border-radius:14px;background:var(--soft)}
.environment-card.active{border-color:rgba(114,224,179,.48);background:rgba(114,224,179,.055)}
.environment-select-button{display:flex;min-width:0;min-height:72px;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border:0;background:transparent;text-align:left}
.environment-select-button span,.environment-select-button strong,.environment-select-button small{display:block;min-width:0}
.environment-select-button small{overflow:hidden;margin-top:5px;color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}
.environment-select-button b{color:var(--muted);font-size:.84rem}
.environment-card.active b{color:var(--mint)}
.api-environment-bar{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:1px;overflow:hidden;margin-bottom:12px;border:1px solid rgba(114,224,179,.32);border-radius:16px;background:var(--line)}
.api-environment-bar label,.api-environment-bar>div{display:grid;gap:5px;min-width:0;padding:13px 15px;background:linear-gradient(180deg,rgba(20,26,32,.98),rgba(13,18,22,.98))}
.api-environment-bar span{color:var(--muted);font-size:.8rem;font-weight:650}
.api-environment-bar select{width:100%;min-height:42px;padding:0 34px 0 0;border:0;background:transparent;color:var(--mint);font-size:1rem;font-weight:780}
.api-environment-bar strong{overflow:hidden;color:var(--text);font-family:"SFMono-Regular",Consolas,monospace;font-size:.86rem;text-overflow:ellipsis;white-space:nowrap}
.api-hierarchy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;grid-column:1/-1}
.api-hierarchy>label{display:grid;min-width:0;gap:5px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}
.api-hierarchy>label>span{color:var(--muted);font-size:.74rem;font-weight:700}
.api-hierarchy>label>strong,.api-hierarchy select{width:100%;min-width:0;overflow:hidden;color:var(--text);font-size:.88rem;text-overflow:ellipsis}
.api-hierarchy select{min-height:34px;border:0;background:transparent}
.run-diagnosis{display:grid;gap:12px}
.task-runtime-evidence{display:grid;gap:8px;margin-bottom:14px}
.task-runtime-evidence h3{font-size:.92rem}
@media(max-width:480px){.api-hierarchy{grid-template-columns:1fr}.task-runtime-evidence .linked-request{grid-template-columns:auto minmax(0,1fr)}}
.summary-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:32px 0 4px;padding-top:26px;border-top:1px solid var(--line)}
.summary-heading h2{margin-top:5px;font-size:1.55rem}
.summary-heading>div>p:last-child{max-width:620px;margin-top:8px;color:var(--muted)}
.evidence-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;overflow:hidden;margin-top:16px;border:1px solid var(--line);border-radius:15px;background:var(--line)}
.evidence-strip>div{min-width:0;padding:14px;background:var(--surface)}
.evidence-strip span,.evidence-strip strong{display:block}
.evidence-strip span{color:var(--muted);font-size:.8rem}
.evidence-strip strong{overflow:hidden;margin-top:5px;font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}
.correction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}
.correction-card{min-width:0;padding:16px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(180deg,rgba(20,26,32,.96),rgba(13,18,22,.98))}
.correction-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}
.correction-card>div:first-child strong{font-size:1.35rem}
.correction-list{display:grid;gap:10px;margin-top:14px}
.correction-list>div{display:grid;grid-template-columns:8px minmax(0,1fr);gap:9px;align-items:start}
.severity-dot{width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--amber)}
.severity-dot.danger{background:var(--red)}
.correction-list p,.correction-list b,.correction-list small{display:block;min-width:0}
.correction-list b{font-size:.88rem;line-height:1.35}
.correction-list small{margin-top:4px;color:var(--muted);font-size:.76rem;line-height:1.4}
.correction-empty{margin-top:14px;color:var(--muted);font-size:.88rem;line-height:1.5}
.settings-note{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:52px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.settings-note span{color:var(--muted);font-size:.88rem}
.upgrade-card{padding:17px;border:1px solid rgba(244,118,85,.3);border-radius:14px;background:rgba(244,118,85,.06)}
.upgrade-card h3{margin-top:5px;font-size:1.2rem}
.upgrade-card ul{margin:14px 0 0;padding-left:20px;color:#c8cfd6;line-height:1.65}
.source-row,.variable-summary>div,.task-list>div,.iteration-list>div{min-height:54px;padding:14px}
.source-row strong,.variable-summary span{font-size:.86rem}
.source-row div span{font-size:.88rem}
.tag{padding:8px 11px;font-size:.82rem}
.finding-list button{min-height:54px;padding:10px 12px}
.status-mark{font-size:.76rem}
.filter-bar{padding:12px 14px}
.filter-bar select{height:42px;font-size:.96rem}
.filter-bar>span{font-size:.86rem}
.api-row,.run-row{min-height:88px;padding:16px}
.api-row-main div span,.run-row div div span{font-size:.84rem}
.api-row-meta>span:first-child,.run-row>div:last-child>span:last-child,.status-text,.method-badge{font-size:.8rem}
.field-label{gap:8px;font-size:.9rem}
.field,.text-input,.code-input,.goal-input{min-height:50px;padding:12px 13px;font-size:1rem}
.configuration-list summary{min-height:64px;padding:0 18px;font-size:1rem}
.configuration-list summary span:last-child{font-size:.88rem}
.modal-header,.modal-actions{padding:17px 19px}
.modal-body{gap:16px;padding:19px}
.modal-actions .primary-button,.modal-actions .secondary-button{min-width:112px}

@media(max-width:620px){
  .mobile-header{padding:8px 12px}
  .route-view{padding:22px 16px 28px}
  .page-heading{align-items:flex-start}
  .section-block{padding:18px}
  .health-strip{grid-template-columns:repeat(2,1fr)}
  .api-environment-bar{grid-template-columns:1fr}
  .summary-heading{display:grid;align-items:start}
  .summary-heading .primary-button{justify-self:start}
  .correction-grid{grid-template-columns:1fr}
  .chat-launcher{right:12px;min-width:76px;padding:0 14px}
  .chat-launcher .chat-label{font-size:0}
  .chat-launcher .chat-label:after{content:"Ask";font-size:.9rem}
}

/* Task workspace density and readability for IDE side panels. */
.app-shell.route-task .route-view,.task-unified-workspace{container-type:inline-size}
.app-shell.route-task{padding-bottom:0}
.app-shell.route-task .route-view{padding-bottom:68px}
.app-shell.route-task .task-heading{align-items:flex-start;flex-wrap:wrap;gap:10px 16px}
.app-shell.route-task .task-heading>div:first-child{min-width:min(100%,280px);flex:1}
.app-shell.route-task .task-heading h1{font-size:clamp(1.15rem,3.5vw,1.45rem);font-weight:700;line-height:1.25;letter-spacing:-.015em}
.app-shell.route-task .task-heading h2,.app-shell.route-task .task-heading h3,.app-shell.route-task .task-stage-panel h2,.app-shell.route-task .task-stage-panel h3{font-size:.92rem;font-weight:600;line-height:1.3}
.app-shell.route-task .eyebrow{color:#2dd4bf;font-size:.68rem;font-weight:700;line-height:1.35;letter-spacing:.06em;text-transform:uppercase}
.app-shell.route-task .task-heading>div>p:not(.eyebrow),.app-shell.route-task .task-objective p,.app-shell.route-task .task-stage-panel p,.app-shell.route-task .section-block>.supporting-copy,.app-shell.route-task .task-stage-panel small{color:#cbd5e1;font-size:.8125rem;line-height:1.5}
.app-shell.route-task code,.app-shell.route-task .artifact-file-link,.app-shell.route-task .task-workspace-context,.app-shell.route-task .task-context-budget strong{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.75rem;font-weight:500;overflow-wrap:anywhere;word-break:break-all;white-space:normal}
.task-heading-actions,.task-objective-actions,.task-stage-panel footer{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}
.task-heading-actions button,.task-objective-actions button,.task-stage-panel button,.milestone-home-heading .action-row button,.milestone-home .empty-message button,.app-shell.route-task .section-heading>button{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.milestone-home-heading .milestone-home-actions{display:flex;flex:0 0 auto;flex-wrap:nowrap;align-items:center;gap:8px;margin-top:0}.milestone-home-heading .milestone-home-actions button{min-width:0;min-height:40px;padding:8px 12px;white-space:nowrap}
.task-status-filters [data-task-filter="proposed"].has-attention:not(.active){border-color:color-mix(in srgb,var(--amber) 45%,var(--line));background:color-mix(in srgb,var(--amber) 8%,var(--surface));color:var(--amber)}.task-status-filters [data-task-filter="proposed"].has-attention span{font-weight:750}
@media(max-width:620px){.milestone-home-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.milestone-home-heading .milestone-home-actions{width:100%;justify-content:flex-start}.milestone-home-heading .milestone-home-actions button{flex:0 1 auto}}
@container(max-width:440px){.milestone-home-heading .milestone-home-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}.milestone-home-heading .milestone-home-actions button{width:100%;padding:7px 8px;font-size:12px}}
.button-icon{width:14px;height:14px;flex:0 0 14px;pointer-events:none}
.task-archive-button{border:1px solid transparent;background:transparent;color:var(--muted)}
.task-archive-button:hover{border-color:var(--line);background:var(--soft);color:var(--text)}
.approve-button{border-color:rgba(13,148,136,.32)!important;background:rgba(13,148,136,.14)!important;color:#2dd4bf!important}
.dismiss-button:hover{border-color:rgba(248,113,113,.35);background:rgba(248,113,113,.1);color:#fca5a5}
.task-workspace-heading{align-items:flex-start;flex-wrap:wrap;gap:6px 10px}
.task-workspace-heading>span:first-child{min-width:0;flex:1 1 220px}
.task-workspace-heading>span:first-child>strong,.task-workspace-context{display:inline-flex;width:max-content;max-width:100%;align-items:center;padding:3px 8px;border-radius:6px;background:color-mix(in srgb,var(--blue) 9%,var(--soft));line-height:1.4;white-space:normal}
.task-workspace-context{flex:0 1 auto;margin-left:auto}
.task-stage-number{width:22px;height:22px;background:rgba(13,148,136,.12);color:#2dd4bf;font-size:.75rem;font-weight:700;border-radius:999px}
.app-shell.route-task .status-chip{display:inline-flex;min-height:0;align-items:center;gap:6px;padding:2px 8px;border-radius:6px;font-size:.72rem;font-weight:600;line-height:1.45}
.app-shell.route-task .status-chip:before{width:6px;height:6px;flex:0 0 6px;border-radius:999px;background:currentColor;content:"";opacity:.9}
.task-stage-panel .coverage-message{gap:6px;margin-top:0;padding:11px 12px}
.task-stage-panel .coverage-message p{font-size:.8125rem;line-height:1.45}
.task-context-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}.task-context-actions button{width:100%;min-height:38px}
.task-proposal-summary{display:grid;gap:7px;margin:0 0 12px;padding:12px;border:1px solid color-mix(in srgb,var(--blue) 30%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--blue) 5%,var(--surface))}.task-proposal-summary>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.task-proposal-summary p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.task-proposal-summary small{color:var(--muted);font-size:11px}
.task-proposal-summary .task-proposal-duplicate{padding:7px 9px;border:1px solid color-mix(in srgb,var(--amber) 30%,var(--line));border-radius:7px;background:color-mix(in srgb,var(--amber) 7%,var(--surface));color:var(--text)}.task-proposal-duplicate a{color:var(--blue);text-decoration:underline}
.verification-plan-checks{display:grid;gap:8px;padding:0;list-style:none}.verification-plan-checks>li{display:grid;justify-items:start;gap:6px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.verification-plan-checks>li>small,.verification-command{max-width:100%;overflow-wrap:anywhere;word-break:break-word}.verification-command{display:block;padding:7px 9px;border-radius:6px;background:var(--surface);font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;white-space:pre-wrap}.verification-plan-checks>li>button{min-height:34px}
.bottom-nav.nav-4{height:52px;min-height:52px;padding:3px max(6px,env(safe-area-inset-right)) max(3px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(10px)}
.bottom-nav.nav-4 .nav-item{min-height:44px;gap:2px;padding:2px;font-size:11px;font-weight:600;line-height:1.1}
.bottom-nav.nav-4 .nav-item .ui-icon{width:16px;height:16px}
:root[data-theme="light"] .app-shell.route-task .eyebrow{color:#0d9488}
:root[data-theme="light"] .app-shell.route-task .task-heading>div>p:not(.eyebrow),:root[data-theme="light"] .app-shell.route-task .task-objective p,:root[data-theme="light"] .app-shell.route-task .task-stage-panel p,:root[data-theme="light"] .app-shell.route-task .section-block>.supporting-copy,:root[data-theme="light"] .app-shell.route-task .task-stage-panel small{color:#334155}
:root[data-theme="light"] .task-stage-number{color:#0d9488}

@container (max-width:440px){
  .task-unified-workspace .task-workspace-heading{align-items:flex-start}
  .task-unified-workspace .task-workspace-context{margin-left:0}
  .task-unified-workspace .task-stage-grid{gap:8px}
  .task-unified-workspace .task-stage-panel{padding:10px;border:0;background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px rgba(255,255,255,.035)}
  .task-unified-workspace .task-stage-panel>header{padding-bottom:7px;border-bottom-color:color-mix(in srgb,var(--line) 55%,transparent)}
  .task-unified-workspace .task-contract-reference,.task-unified-workspace .task-context-budget,.task-unified-workspace .task-evidence-link{border:0;background:rgba(255,255,255,.06)}
  .task-unified-workspace .task-stage-evidence,.task-unified-workspace .task-stage-artifact-list,.task-unified-workspace .task-stage-panel footer{border-top-color:color-mix(in srgb,var(--line) 55%,transparent)}
  .task-unified-workspace .coverage-message{border:0;background:rgba(255,255,255,.06)}
}
:root[data-theme="light"] .task-unified-workspace .task-stage-panel{background:#f8fafc}
:root[data-theme="light"] .task-unified-workspace .task-contract-reference,:root[data-theme="light"] .task-unified-workspace .task-context-budget,:root[data-theme="light"] .task-unified-workspace .task-evidence-link,:root[data-theme="light"] .task-unified-workspace .coverage-message{background:#fff}
@media(max-width:440px){
  .app-shell.route-task .route-view{padding:10px 10px 68px}
  .app-shell.route-task .task-heading{margin-bottom:12px}
  .app-shell.route-task .task-heading-actions{width:100%}
  .app-shell.route-task .task-heading-actions button{min-height:36px;padding:0 10px;font-size:.78rem}
  .app-shell.route-task .task-objective,.app-shell.route-task .task-unified-workspace,.app-shell.route-task .section-block{padding:12px}
  .app-shell.route-task .task-objective{gap:8px}
  .app-shell.route-task .task-stage-panel{padding:10px}
  .app-shell.route-task .task-context-budget>div{align-items:flex-start;flex-direction:column;gap:3px}
  .app-shell.route-task .task-context-budget>div>strong{white-space:normal}
  .app-shell.route-task .task-stage-panel>.primary-button{min-height:36px}
}

/* Commercial cockpit pass: live recorder, compact task hero, ROI meter and pipeline. */
.traffic-record-button{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 9px;border:1px solid var(--line);border-radius:7px;background:transparent;color:var(--muted);font-size:11px;font-weight:650;cursor:pointer;white-space:nowrap}
.traffic-record-button .button-icon{width:13px;height:13px}.traffic-record-button:hover{border-color:var(--coral);color:var(--text)}
.traffic-record-button.is-recording{border-color:color-mix(in srgb,#f43f5e 55%,var(--line));background:color-mix(in srgb,#f43f5e 10%,var(--surface));color:#fb7185}.traffic-record-button.is-recording .button-icon{animation:recorder-pulse 1.4s ease-in-out infinite}
@keyframes recorder-pulse{50%{opacity:.35;transform:scale(.82)}}
.task-hero{padding:16px;border:1px solid var(--line);border-radius:10px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,#0d9488 6%),var(--surface));box-shadow:0 1px 2px rgba(0,0,0,.04)}
.task-hero-status{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.task-hero .task-heading-actions{align-content:flex-start;flex-direction:row;flex-wrap:wrap;gap:5px}.task-hero .task-heading-actions button{min-height:28px;height:28px;padding:0 8px;font-size:11px;border-radius:6px}
.task-workspace-meter{display:grid;grid-template-columns:minmax(90px,150px) auto;align-items:center;gap:3px 8px;min-width:min(100%,260px)}.task-workspace-meter .context-token-meter{height:7px}.task-workspace-meter>strong{font:600 .72rem ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;white-space:nowrap}.task-workspace-meter>small{grid-column:1/-1;color:var(--muted);font-size:10px;line-height:1.35;text-align:right}
.visual-chain-skeleton{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:6px;padding:9px;border-radius:8px;background:color-mix(in srgb,var(--soft) 72%,transparent)}.visual-chain-skeleton>i{color:var(--muted);font-style:normal}.chain-skeleton-node{display:grid;min-width:0;gap:2px;padding:7px;border:1px dashed var(--line);border-radius:7px;color:var(--muted)}.chain-skeleton-node.is-linked{border-style:solid;border-color:color-mix(in srgb,#0d9488 45%,var(--line));background:color-mix(in srgb,#0d9488 8%,var(--surface));color:var(--text)}.chain-skeleton-node small{font-size:9px;text-transform:uppercase;letter-spacing:.06em}.chain-skeleton-node strong{font:600 10px/1.35 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.task-stage-grid{position:relative}.task-stage-panel{position:relative;margin-left:13px;width:calc(100% - 13px)!important;overflow:visible!important}.task-stage-panel:not(:last-child):after{content:"";position:absolute;left:-15px;top:34px;bottom:-14px;width:2px;background:var(--line)}.task-stage-panel.is-complete:not(:last-child):after{background:color-mix(in srgb,#0d9488 65%,var(--line))}.task-stage-panel>.task-stage-number,.task-stage-panel>header>.task-stage-number{position:relative;z-index:2}.task-stage-panel.is-active .task-stage-number{box-shadow:0 0 0 4px rgba(13,148,136,.13);animation:stage-ring 2.2s ease-in-out infinite}.task-stage-panel.is-complete .task-stage-number{background:#0d9488!important;color:#fff!important}.task-stage-panel.is-pending{opacity:.72}
@keyframes stage-ring{50%{box-shadow:0 0 0 7px rgba(13,148,136,.04)}}
.task-stage-panel>.primary-button,.task-stage-panel .coverage-message>.primary-button{border-color:#0f766e;background:linear-gradient(180deg,#0d9488 0%,#0f766e 100%);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.08)}.task-stage-panel>.primary-button:hover,.task-stage-panel .coverage-message>.primary-button:hover{filter:brightness(1.07)}
.linked-request .method-badge{margin-right:2px}.artifact-file-link{padding:3px 6px!important;border:1px solid var(--line)!important;border-radius:5px!important;background:color-mix(in srgb,var(--soft) 75%,transparent)!important;text-decoration:none!important}
.status-chip:before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:currentColor}.status-chip{display:inline-flex!important;align-items:center;gap:5px}
@container (max-width:440px){.visual-chain-skeleton{grid-template-columns:1fr;gap:4px}.visual-chain-skeleton>i{transform:rotate(90deg);justify-self:center}.task-workspace-meter{width:100%;grid-template-columns:minmax(80px,1fr) auto}.task-workspace-meter>small{text-align:left}.task-stage-panel{margin-left:9px;width:calc(100% - 9px)!important}.task-stage-panel:not(:last-child):after{left:-11px}.task-hero .task-heading-actions{width:100%;justify-content:flex-start}}
@media(max-width:700px){.traffic-record-button span{display:none}.traffic-record-button{width:30px;padding:0;justify-content:center}.header-actions{gap:4px}}
.plan-tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px}.plan-tier-grid article{display:grid;align-content:start;gap:7px;padding:13px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.plan-tier-grid article.is-current{border-color:color-mix(in srgb,#0d9488 50%,var(--line));background:color-mix(in srgb,#0d9488 6%,var(--surface))}.plan-tier-grid article>span{color:#2dd4bf;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.plan-tier-grid article>strong{font-size:14px}.plan-tier-grid article>p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}.plan-tier-grid article>i{justify-self:start;padding:2px 7px;border-radius:5px;background:rgba(13,148,136,.12);color:#2dd4bf;font-size:11px;font-style:normal;font-weight:700}@media(max-width:700px){.plan-tier-grid{grid-template-columns:1fr}}

/* Contract-scoped K Maps workspaces keep editors and evidence in one route. */
.contract-embedded-workspace,.contract-embedded-evidence{display:grid;gap:12px;margin-top:14px}
.contract-workspace-heading,.embedded-request-status,.embedded-evidence-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.embedded-request-status{flex-wrap:wrap}
.embedded-request-status>div:first-child{min-width:min(100%,360px);flex:1}
.embedded-request-status .request-statuses{justify-content:flex-end}
.embedded-request-status .stale-result-warning{width:100%}
.embedded-evidence-heading>div{display:grid;gap:5px}
.embedded-evidence-heading p:last-child{color:var(--muted)}
.contract-embedded-workspace>.supporting-copy{margin:0 2px}
.contract-embedded-workspace .api-runs-section{margin-top:0}
@media(max-width:600px){.evidence-context-bar,.contract-workspace-heading,.embedded-evidence-heading{align-items:flex-start;flex-direction:column}.embedded-request-status .request-statuses{justify-content:flex-start}}
@media(max-width:430px){
  :root{font-size:16px}
  .route-view{padding:20px 15px 26px}
  .bottom-nav{grid-template-columns:repeat(4,1fr)}
  .nav-item{font-size:.76rem}
  .mobile-header button{padding:0 11px;font-size:.84rem}
  .page-heading{display:grid;gap:16px}
  .page-heading .secondary-button,.page-heading .primary-button{justify-self:start}
  .product-mark{margin-bottom:38px}
  .section-heading{gap:10px}
  .environment-section .section-heading{display:grid}
  .environment-section .secondary-button{justify-self:start}
  .detail-list>div{grid-template-columns:1fr;gap:5px}
  .detail-list strong{text-align:left}
  .evidence-strip{grid-template-columns:1fr}
  .project-card{grid-template-columns:48px minmax(0,1fr) 18px;padding:14px}
  .project-avatar{width:48px;height:48px}
}

/* Keep the request loop visible after execution, especially in narrow panels. */
.request-latest-result{display:grid;gap:13px;margin:14px 0;padding:15px;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:12px;background:linear-gradient(180deg,rgba(20,26,32,.96),rgba(13,18,22,.98))}
.request-latest-result.is-success{border-left-color:var(--mint)}
.request-latest-result.is-failure{border-left-color:var(--red)}
.request-latest-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.request-latest-head>div:first-child{display:grid;min-width:0;gap:3px}
.request-latest-head h2{overflow-wrap:anywhere;font-size:1.08rem}
.request-latest-meta{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.78rem}
.request-assertion-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:7px}
.request-assertion-results>div{display:flex;min-width:0;align-items:flex-start;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}
.request-assertion-results>div>span:first-child{display:grid;width:20px;height:20px;flex:none;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--mint) 14%,transparent);color:var(--mint);font-size:.76rem;font-weight:800}
.request-assertion-results>div.failed>span:first-child{background:color-mix(in srgb,var(--red) 14%,transparent);color:var(--red)}
.request-assertion-results>div>span:last-child{display:grid;min-width:0;gap:2px}
.request-assertion-results small{color:var(--muted);overflow-wrap:anywhere}
.request-response-preview{overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--soft)}
.request-response-preview summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;cursor:pointer;font-size:.82rem;font-weight:720}
.request-response-preview summary span:last-child{color:var(--muted);font-size:.72rem;font-weight:500}
.request-response-preview pre{max-height:320px;overflow:auto;margin:0;padding:12px;border-top:1px solid var(--line);color:var(--text);font-size:.78rem;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.configuration-list details[data-request-section]>summary{display:grid;grid-template-columns:18px minmax(72px,auto) minmax(0,1fr);gap:10px;padding:12px 16px}
.configuration-list [data-request-summary]{min-width:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:right;font-family:ui-monospace,SFMono-Regular,monospace;font-size:12px!important;line-height:1.5}
.configuration-list details[data-request-section][open]>summary [data-request-summary]{display:none}
.request-schema-reference{padding:10px;border:1px solid var(--line);border-radius:8px}
.request-schema-reference pre{max-height:240px;overflow:auto;font-size:12px;white-space:pre-wrap}
.configuration-list .field-label:has(#bodyContent){gap:8px}
.configuration-list #bodyContent{min-height:180px;line-height:1.6}
@media(max-width:600px){
  .api-hierarchy{grid-template-columns:repeat(2,minmax(0,1fr))}
  .api-hierarchy>label:last-child{grid-column:1/-1}
  .request-latest-head{display:grid}
  .request-latest-meta{justify-content:flex-start}
  .request-assertion-results{grid-template-columns:1fr}
  .request-latest-result{padding:12px}
}
@media(max-width:390px){
  .api-hierarchy{gap:6px}
  .api-hierarchy>label{padding:8px 9px}
  .request-latest-meta{gap:6px}
  .request-latest-meta .quiet-button{margin-left:auto}
}

/* API-scoped evidence */
.api-row-meta{display:grid;justify-items:end;gap:7px;max-width:none;text-align:right}
.api-row-tags{display:flex;align-items:center;justify-content:flex-end;gap:7px}
.api-run-time{display:block;color:var(--muted);font-size:.74rem;font-weight:620;white-space:nowrap}
.status-tag{display:inline-flex!important;min-height:30px;align-items:center;padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(156,167,180,.08);color:var(--muted)!important;font-size:.76rem!important;font-weight:760;line-height:1.1;white-space:nowrap}
.status-tag.success{border-color:rgba(114,224,179,.28);background:rgba(114,224,179,.09);color:var(--mint)!important}
.status-tag.danger{border-color:rgba(255,127,142,.28);background:rgba(255,127,142,.09);color:var(--red)!important}
.status-tag.warning{border-color:rgba(237,192,108,.28);background:rgba(237,192,108,.09);color:var(--amber)!important}
.request-statuses{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}
.run-row>div:last-child .status-tag{margin-bottom:6px}
.api-runs-section{margin-top:28px}
.api-runs-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}
.api-runs-heading h2{margin-top:5px}
.api-runs-heading p:last-child{margin-top:7px;color:var(--muted);font-size:.92rem}
.embedded-run-list{box-shadow:none}
.compact-empty{padding:26px 16px}

@media(max-width:620px){
  .api-row{display:grid;gap:12px}
  .api-row-meta{justify-items:start;padding-left:59px;text-align:left}
  .api-row-tags{justify-content:flex-start}
}

@media(max-width:400px){
  .api-row-meta{display:grid;max-width:none}
  .api-runs-heading{display:grid;align-items:start}
  .api-runs-heading .secondary-button{justify-self:start}
}

.activity-list{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(20,26,32,.94),rgba(13,18,22,.96));box-shadow:var(--shadow)}
.connection-pill{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:.7rem;font-weight:700}.connection-pill:before{width:6px;height:6px;border-radius:50%;background:var(--red);content:""}.connection-pill.connected:before{background:var(--mint)}.offline-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;border-bottom:1px solid rgba(255,127,142,.28);background:rgba(255,127,142,.08);color:#ffd7dc;font-size:.84rem}.offline-banner strong{color:var(--red)}.offline-banner code{font-family:"SFMono-Regular",Consolas,monospace;color:#fff}
.activity-row{display:grid;width:100%;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left}
.activity-row:last-child{border-bottom:0}
.activity-row:hover{background:rgba(255,255,255,.035)}
.activity-kind{min-width:48px;padding:5px 7px;border-radius:7px;background:rgba(114,224,179,.1);color:var(--mint);font-size:.68rem;font-weight:800;text-align:center;text-transform:uppercase}
.activity-kind.danger{background:rgba(255,127,142,.1);color:var(--red)}
.activity-kind.info{background:rgba(114,180,255,.1);color:#8fc8ff}
.activity-copy{display:grid;min-width:0;gap:3px}
.activity-copy strong,.activity-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.activity-copy small,.activity-row time{color:var(--muted);font-size:.78rem}
.api-activity-preview{margin-top:14px}
.api-activity-preview .activity-row{margin:0 -1px}
@media(max-width:480px){.activity-row{grid-template-columns:auto 1fr}.activity-row time{grid-column:2}.activity-copy small{white-space:normal}}

/* Project evidence timeline */
.timeline-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;overflow:hidden;margin-bottom:13px;border:1px solid var(--line);border-radius:16px;background:var(--line)}
.timeline-overview>div{padding:15px;background:var(--surface)}
.timeline-overview strong,.timeline-overview span{display:block}.timeline-overview strong{font-size:1.45rem}.timeline-overview span{margin-top:4px;color:var(--muted);font-size:.78rem}.timeline-overview .has-danger strong{color:var(--red)}
.timeline-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.timeline-controls>span{color:var(--muted);font-size:.78rem;white-space:nowrap}.timeline-filters{display:flex;min-width:0;gap:7px;overflow-x:auto;padding:2px}.timeline-filters button{min-height:40px;padding:0 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:.8rem;font-weight:750;white-space:nowrap}.timeline-filters button.active{border-color:rgba(244,118,85,.5);background:rgba(244,118,85,.1);color:#ff9a7e}
.project-timeline{display:grid;gap:25px}.timeline-day>h2{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.timeline-day>h2 small{font-size:.7rem;font-weight:650;letter-spacing:0;text-transform:none}.timeline-ledger{position:relative;display:grid;gap:9px;padding-left:23px}.timeline-ledger:before{position:absolute;top:15px;bottom:15px;left:7px;width:2px;border-radius:2px;background:linear-gradient(rgba(114,224,179,.55),rgba(114,224,179,.04));content:""}
.project-event{position:relative;border:1px solid var(--line);border-radius:15px;background:linear-gradient(180deg,rgba(20,26,32,.96),rgba(13,18,22,.98));box-shadow:var(--shadow)}.project-event:before{position:absolute;z-index:2;top:22px;left:-21px;width:11px;height:11px;border:3px solid var(--bg);border-radius:50%;background:#8fc8ff;content:""}.project-event.severity-success:before{background:var(--mint)}.project-event.severity-warning:before{background:var(--amber)}.project-event.severity-danger:before{background:var(--red)}
.project-event summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px;cursor:pointer;list-style:none}.project-event summary::-webkit-details-marker{display:none}.event-marker{display:none}.event-main{display:grid;min-width:0;gap:4px}.event-meta{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.72rem}.event-meta b{padding:4px 7px;border-radius:6px;background:rgba(143,200,255,.1);color:#8fc8ff;text-transform:uppercase}.severity-success .event-meta b{background:rgba(114,224,179,.1);color:var(--mint)}.severity-warning .event-meta b{background:rgba(237,192,108,.1);color:var(--amber)}.severity-danger .event-meta b{background:rgba(255,127,142,.1);color:var(--red)}.event-meta time{margin-left:auto}.event-main>strong{margin-top:4px;font-size:1rem}.event-main>small{color:var(--muted);font-size:.84rem;line-height:1.45}.event-expand{align-self:center;color:var(--muted);font-size:1.1rem;transition:transform .18s ease}.project-event[open] .event-expand{transform:rotate(180deg)}
.event-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.event-tags i{padding:4px 7px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.68rem;font-style:normal}.event-body{display:grid;gap:12px;padding:0 16px 16px;border-top:1px solid transparent}.project-event[open] .event-body{padding-top:15px;border-top-color:var(--line)}.event-evidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.event-evidence>div{min-width:0;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.event-evidence dt{color:var(--muted);font-size:.68rem;text-transform:capitalize}.event-evidence dd{overflow:hidden;margin:5px 0 0;font-family:"SFMono-Regular",Consolas,monospace;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.event-files{display:grid;gap:6px}.event-files>span{color:var(--muted);font-size:.75rem}.event-files code{overflow:hidden;padding:8px 10px;border-radius:8px;background:#080b0e;color:#dce6ec;font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}
.inline-run-evidence{display:grid;gap:12px}.run-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.run-metrics span{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--soft);color:var(--muted);font-size:.68rem}.run-metrics b{display:block;margin-bottom:4px;color:var(--text);font-size:1rem}.inline-run-evidence>p{color:var(--muted);font-size:.84rem}.inline-run-evidence pre{max-height:260px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:10px;background:#080b0e;color:#dce6ec;font-size:.75rem;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.event-actions{display:flex;flex-wrap:wrap;gap:8px}
@media(max-width:620px){.timeline-overview{grid-template-columns:repeat(2,1fr)}.timeline-controls{display:grid}.timeline-controls>span{padding-left:3px}.event-evidence{grid-template-columns:1fr}}
@media(max-width:430px){.timeline-ledger{padding-left:18px}.timeline-ledger:before{left:5px}.project-event:before{left:-17px}.project-event summary{padding:14px}.event-meta{flex-wrap:wrap}.event-meta time{width:100%;margin-left:0}.run-metrics{grid-template-columns:1fr 1fr}.run-metrics span:last-child{grid-column:1/-1}}

:root{--bottom-nav-height:80px}
.app-shell:not(.route-home){padding-bottom:calc(var(--bottom-nav-height) + 120px + env(safe-area-inset-bottom))}
.app-shell:not(.route-home) .chat-launcher{bottom:calc(var(--bottom-nav-height) + 16px + env(safe-area-inset-bottom))}
.route-home .chat-launcher{bottom:12px}
.project-list-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) repeat(3,minmax(130px,.55fr)) auto;align-items:end;gap:10px;margin:16px 0}
.project-list-toolbar>label{display:grid;min-width:0;gap:5px;color:var(--muted);font-size:.78rem;font-weight:700}
.project-list-toolbar input,.project-list-toolbar select{width:100%;min-width:0;min-height:42px;padding:0 11px;border:1px solid var(--strong);border-radius:10px;background:var(--surface);color:var(--text);font-size:.86rem}
.project-results-count{margin:12px 2px;color:var(--muted);font-size:.8rem}
.project-search-empty{display:grid;justify-items:center;gap:12px;margin-top:14px;padding:28px 18px;border:1px dashed var(--strong);border-radius:14px;color:var(--muted);text-align:center}
.project-card-list{margin:12px 0 0;padding:0;list-style:none}
.project-card-list>li{min-width:0}
.project-card.figma-project-row{position:relative;grid-template-columns:52px minmax(0,1fr) 22px 36px;padding-right:12px}
.project-title-line{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}
.project-title-line h3{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.project-title-line h3 a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.project-card-arrow{display:grid;place-items:center}
.project-card-actions{position:relative;display:grid;place-items:center}
.project-menu-trigger{display:grid;width:36px;height:36px;place-items:center;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);font-size:1.35rem}
.project-menu-trigger:hover,.project-menu-trigger[aria-expanded=true]{border-color:var(--strong);background:var(--raised);color:var(--text)}
.project-actions-menu{position:absolute;z-index:8;top:42px;right:0;display:grid;min-width:160px;gap:2px;padding:5px;border:1px solid var(--strong);border-radius:11px;background:var(--surface);box-shadow:var(--shadow)}
.project-actions-menu[hidden]{display:none}
.project-actions-menu button{min-height:40px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:var(--text);text-align:left}
.project-actions-menu button:hover{background:var(--raised)}
.load-more-projects{display:block;margin:14px auto 0}
.field-label [aria-invalid=true]{border-color:#ef4444;box-shadow:0 0 0 1px #ef4444}
.field-error{display:block;margin:4px 0 0;color:#ff7f8e;font-size:.82rem}
.field-error[hidden]{display:none}
.project-name-counter{display:block;color:var(--muted);font-size:.75rem;font-weight:500;text-align:right}
.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:18px;border-color:rgba(255,127,142,.34)!important;background:linear-gradient(180deg,rgba(255,127,142,.06),rgba(13,18,22,.96))!important}
.danger-zone>div{display:grid;gap:7px;max-width:650px}
.danger-zone>div>p:last-child{color:var(--muted)}
.danger-button{min-height:42px;padding:0 15px;border:1px solid rgba(255,127,142,.5);border-radius:11px;background:rgba(255,127,142,.12);color:var(--red);font-weight:750}
.danger-button:hover{background:rgba(255,127,142,.2)}
.project-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 14px;color:var(--muted);font-size:.82rem}
.project-breadcrumbs button{padding:0;border:0;background:transparent;color:var(--mint);text-decoration:underline;text-underline-offset:3px}
.project-breadcrumbs [aria-current=page]{color:var(--text)}
@media(max-width:760px){.project-list-toolbar{grid-template-columns:1fr 1fr}.project-list-toolbar .project-search-field{grid-column:1/-1}.project-list-toolbar #clearProjectFilters{justify-self:start}.danger-zone{align-items:flex-start;flex-direction:column}.project-card.figma-project-row{grid-template-columns:34px minmax(0,1fr) 18px 34px;gap:9px;padding:14px}.project-card.figma-project-row>.ui-icon:first-child{width:32px;height:32px}.project-card-meta{line-height:1.5}.project-breadcrumbs{font-size:.78rem}}
@media(max-width:380px){.project-list-toolbar{grid-template-columns:1fr}.project-list-toolbar .project-search-field{grid-column:auto}.project-card.figma-project-row{grid-template-columns:28px minmax(0,1fr) 16px 32px;gap:7px;padding:11px}.project-card-meta{font-size:.72rem}}

/* Task workspace stays within the existing narrow companion panel. */
.bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
.task-check{display:flex;align-items:flex-start;gap:10px;padding:10px 0;overflow-wrap:anywhere;font-size:.85rem}
.task-check input{flex:0 0 auto;margin-top:4px}
.task-cards .project-card{grid-template-columns:minmax(0,1fr);width:100%;margin-bottom:10px}
[data-route-name="task"] p,[data-route-name="task"] li{overflow-wrap:anywhere}
#modalBody details{margin:14px 0}#modalBody details>summary{cursor:pointer;padding:10px 0}
@media(max-width:430px){.bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.nav-item{min-width:0;padding-left:4px;padding-right:4px}}

/* Browser surfaces follow the system preference; IDE webviews use VS Code's
   vscode-light/vscode-dark classes instead. */
@media (prefers-color-scheme:light){
  :root:not(.aipi-ide){--bg:#f5f7f9;--surface:#ffffff;--raised:#eef2f5;--soft:#f8fafb;--line:#d8e0e6;--strong:#b7c3cc;--text:#17212b;--muted:#5d6b78;--mint:#087a55;--red:#bd3044;--amber:#966100;--shadow:0 14px 36px rgba(32,49,63,.12)}
  :root:not(.aipi-ide) body{background:radial-gradient(circle at 90% 0,rgba(244,118,85,.12),transparent 26rem),var(--bg)}
  :root:not(.aipi-ide) .app-bar,:root:not(.aipi-ide) .mobile-header{background:rgba(255,255,255,.9)}
  :root:not(.aipi-ide) .bottom-nav{background:rgba(255,255,255,.94)}
  :root:not(.aipi-ide) .section-block,:root:not(.aipi-ide) .filter-bar,:root:not(.aipi-ide) .api-list,:root:not(.aipi-ide) .configuration-list,:root:not(.aipi-ide) .run-list,:root:not(.aipi-ide) .timeline,:root:not(.aipi-ide) .codex-summary,:root:not(.aipi-ide) .request-composer,:root:not(.aipi-ide) .run-hero,:root:not(.aipi-ide) .integration-card,:root:not(.aipi-ide) .project-card,:root:not(.aipi-ide) .correction-card,:root:not(.aipi-ide) .activity-list,:root:not(.aipi-ide) .project-event{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,251,.98))}
  :root:not(.aipi-ide) .chat-launcher{background:linear-gradient(135deg,#ffffff,#edf1f4);color:var(--text);box-shadow:0 12px 30px rgba(32,49,63,.2)}
  :root:not(.aipi-ide) .chat-launcher .chat-label{color:var(--text)}
  :root:not(.aipi-ide) .response-step pre,:root:not(.aipi-ide) .event-files code,:root:not(.aipi-ide) .inline-run-evidence pre,:root:not(.aipi-ide) .command-snippet{background:#17212b;color:#eaf0f4}
  :root:not(.aipi-ide) .toast{background:#ffffff;color:var(--text)}
  :root:not(.aipi-ide) .offline-banner{color:#8e2838}
  :root:not(.aipi-ide) .offline-banner code{color:#17212b}
  :root:not(.aipi-ide) .codex-summary>p:last-of-type,:root:not(.aipi-ide) .codex-summary li,:root:not(.aipi-ide) .upgrade-card ul{color:var(--muted)}
}

/* Native IDE palette takes precedence over the browser system preference. */
body.vscode-light,body.vscode-dark,body.vscode-high-contrast{
  --bg:var(--vscode-sideBar-background);--surface:var(--vscode-editor-background);--raised:var(--vscode-input-background);--soft:var(--vscode-editor-background);
  --text:var(--vscode-foreground);--muted:var(--vscode-descriptionForeground);--line:var(--vscode-panel-border,#7776);--strong:var(--vscode-input-border,#7779);
  color-scheme:light dark;
  background:var(--bg);color:var(--text);font-family:var(--vscode-font-family);font-size:var(--vscode-font-size);
}
body[class*="vscode-"] .mobile-header,body[class*="vscode-"] .bottom-nav,body[class*="vscode-"] .section-block,body[class*="vscode-"] .project-card,body[class*="vscode-"] .configuration-list{background:var(--surface)}

/* Figma-aligned compact IDE workspace. The layout stays data-driven and uses
   the existing dashboard actions instead of the prototype's sample state. */
:root{--bg:#131313;--surface:#181818;--raised:#202020;--soft:#1b1b1c;--line:#2b2b2b;--strong:#3a3a3a;--text:#e5e2e1;--muted:#87929a;--coral:#38bdf8;--coral2:#25aee5;--mint:#4edea3;--red:#ffb4ab;--amber:#fbbf24;--radius:4px;--shadow:0 1px 2px rgba(0,0,0,.18)}
body{background:var(--bg)}
.app-shell{padding-bottom:84px}.app-shell.route-home{padding-bottom:30px}
.route-view{width:min(100%,576px);padding:16px 12px 28px}
.mobile-header{min-height:64px;padding:8px 12px;border-color:#000;background:rgba(0,0,0,.94);box-shadow:0 1px 8px rgba(0,0,0,.35)}
.mobile-header button{min-height:32px;border-radius:4px}
.header-brand{display:flex;min-width:0;align-items:center;gap:7px;padding:0!important;text-align:left}.header-brand img{width:32px;height:32px;border-radius:6px}.header-brand span{display:grid;min-width:0}.header-brand strong{overflow:hidden;color:var(--text);font-size:13px;line-height:18px;text-overflow:ellipsis;white-space:nowrap}.header-brand small{overflow:hidden;color:#bdc8d1;font-family:"SFMono-Regular",Consolas,monospace;font-size:10px;line-height:12px;letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap}.header-actions{display:flex;align-items:center;gap:6px}.header-settings,.header-tool{display:grid!important;width:32px;height:32px;padding:0!important;place-items:center;border:0!important;border-radius:12px!important;background:#2a2a2a!important}.connection-dot{width:6px;height:6px;border-radius:50%;background:var(--red)}.connection-dot.connected{background:var(--mint);box-shadow:0 0 0 3px rgba(78,222,163,.1)}
.ui-icon{display:inline-block;width:14px;height:14px;flex:0 0 auto;object-fit:contain}.header-settings .ui-icon{width:15px;height:15px}.primary-button .ui-icon,.secondary-button .ui-icon{vertical-align:-2px;margin-right:5px}
.primary-button,.run-button{border-radius:2px;background:var(--coral);color:#002b3d;box-shadow:none}.secondary-button{border-color:var(--line);border-radius:2px;background:var(--raised)}.quiet-button,.back-button,.remove-button{border-radius:2px}.primary-button,.secondary-button,.quiet-button,.back-button,.remove-button,.run-button{font-size:12px;font-weight:600}
.full-button{display:flex;width:100%;align-items:center;justify-content:center}.full-button .ui-icon{margin-left:3px;margin-right:0}
.micro-heading{display:flex;min-height:16px;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:10px;letter-spacing:.05em;text-transform:uppercase}.launcher-section{display:grid;gap:6px;margin-top:16px}.workspace-launcher{display:grid;gap:10px;margin-top:8px}.workspace-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.workspace-actions button{min-width:0;padding:0 10px}
.figma-card{border:1px solid var(--line);border-radius:2px;background:var(--surface);box-shadow:var(--shadow)}.workspace-card{position:relative;display:grid;gap:10px;padding:13px;overflow:hidden}.workspace-card:before{position:absolute;top:0;right:0;left:0;height:2px;background:linear-gradient(90deg,transparent,var(--coral),transparent);content:"";opacity:.65}.detection-banner{display:flex;align-items:flex-start;gap:6px;padding:5px 9px;border:1px solid rgba(78,222,163,.25);border-radius:2px;background:rgba(78,222,163,.08);color:var(--mint);font-family:"SFMono-Regular",Consolas,monospace;font-size:10px;line-height:16px}.workspace-title{display:flex;min-width:0;align-items:flex-start;gap:7px}.workspace-title>span{display:grid;min-width:0;flex:1}.workspace-title strong{font-size:13px}.workspace-title small{overflow:hidden;margin-top:2px;color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.git-strip{display:flex;min-width:0;align-items:center;gap:6px;padding:5px 9px;border:1px solid #262626;background:#141414;font-family:"SFMono-Regular",Consolas,monospace;font-size:10px}.git-strip span{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}.git-strip b{color:var(--coral);font-weight:500}.figma-tags{display:flex;flex-wrap:wrap;gap:6px}.figma-tags span{padding:3px 7px;border:1px solid var(--line);border-radius:2px;background:var(--raised);color:#bdc8d1;font-family:"SFMono-Regular",Consolas,monospace;font-size:10px}
.project-card-list{display:grid;gap:8px;margin-top:0}.project-card.figma-project-row{grid-template-columns:minmax(0,1fr) 36px;min-height:88px;gap:12px;padding:13px 12px 13px 14px;border-radius:4px;background:var(--surface);box-shadow:none;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,transform .16s ease}.project-card.figma-project-row:hover,.project-card.figma-project-row:focus-within{border-color:var(--strong);background:var(--raised)}.project-card.figma-project-row:hover{transform:translateY(-1px)}.project-title-line{display:flex;min-width:0;align-items:center;gap:8px}.project-title-line>.ui-icon{width:16px;height:16px}.project-title-line h3{flex:1}.project-title-line strong{min-width:0;overflow:hidden;flex:0 1 auto;text-overflow:ellipsis;white-space:nowrap}.status-chip{display:inline-flex;min-height:18px;align-items:center;gap:4px;padding:1px 6px;border:1px solid var(--line);border-radius:2px;background:var(--raised);color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:10px;font-style:normal;font-weight:500;letter-spacing:0;text-transform:none;white-space:nowrap}.status-chip.success{border-color:rgba(78,222,163,.25);background:rgba(78,222,163,.08);color:var(--mint)}.status-chip.info{border-color:rgba(56,189,248,.25);background:rgba(56,189,248,.08);color:var(--coral)}.status-chip.warning{border-color:rgba(251,191,36,.25);background:rgba(251,191,36,.08);color:var(--amber)}.status-chip.danger{border-color:rgba(255,180,171,.25);background:rgba(255,180,171,.1);color:var(--red)}
.privacy-section{margin-bottom:8px}.privacy-card{display:grid;gap:7px;padding:13px}.privacy-card+.privacy-card{margin-top:2px}.privacy-title{display:flex;align-items:center;gap:6px}.privacy-title strong{flex:1;font-size:12px}.privacy-card p{color:#9ca3af;font-size:11px;line-height:15px}.privacy-card .full-button{min-height:30px;color:var(--coral)}
.project-context-card{display:grid;gap:8px;padding:10px;border-radius:4px;background:var(--soft);box-shadow:var(--shadow)}.project-context-top,.project-context-title,.revision-line{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}.project-context-top .text-back-button{display:flex;align-items:center;gap:5px}.project-context-top .text-back-button .ui-icon{width:10px;height:10px}.project-context-title>span{display:grid;min-width:0}.project-context-title strong{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.project-context-title small,.revision-line{color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:10px}.project-context-title small{overflow:hidden;margin-top:4px;text-overflow:ellipsis;white-space:nowrap}.revision-line b{color:rgba(156,163,175,.72);font-weight:500}.project-context-card+.figma-card{margin-top:12px}
.initialization-card,.topology-card,.urgent-card{display:grid;gap:10px;padding:12px}.card-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.card-title-row>span{display:flex;align-items:center;gap:6px;font-size:13px}.micro-progress{height:4px;overflow:hidden;border-radius:8px;background:#2e2e2e}.micro-progress i{display:block;height:100%;border-radius:inherit;background:var(--coral)}.health-checklist{display:grid;gap:6px}.health-checklist>div{display:grid;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:7px;padding:5px 8px;border-radius:2px;background:var(--soft);font-size:11px}.health-checklist b{color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:10px;font-weight:500}.health-checklist .complete b{color:var(--mint)}.health-checklist .pending{opacity:.72}
.index-status{max-width:min(70vw,720px);white-space:nowrap}.index-status.is-running .ui-icon,.health-checklist .active>.ui-icon{animation:aipi-index-spin 1.15s linear infinite}.micro-progress i{transition:width .25s ease}.micro-progress.is-running i{position:relative;overflow:hidden}.micro-progress.is-running i:after{position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);content:"";transform:translateX(-100%);animation:aipi-progress-sweep 1.25s ease-in-out infinite}.health-checklist>div.active{outline:1px solid color-mix(in srgb,var(--coral) 55%,transparent);background:color-mix(in srgb,var(--coral) 9%,var(--soft))}.health-checklist .active b{color:var(--coral)}.health-checklist .failed b{color:var(--red)}.health-checklist .optional b{color:var(--muted)}.health-checklist span small{display:block;margin-top:1px;color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:.72em;font-weight:450;line-height:1.35}.pipeline-note{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.health-checklist b{max-width:min(46vw,680px);overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}@keyframes aipi-index-spin{to{transform:rotate(360deg)}}@keyframes aipi-progress-sweep{to{transform:translateX(100%)}}@media(prefers-reduced-motion:reduce){.index-status.is-running .ui-icon,.health-checklist .active>.ui-icon,.micro-progress.is-running i:after{animation:none}}
.topology-card .micro-heading{padding-bottom:1px}.topology-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.topology-grid button{display:grid;min-width:0;gap:3px;padding:8px;border:0;border-radius:2px;background:#161616;color:var(--text);text-align:left}.topology-grid small{color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:9px;text-transform:uppercase}.topology-grid strong{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.topology-grid span{overflow:hidden;color:var(--coral);font-family:"SFMono-Regular",Consolas,monospace;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.contract-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;border-radius:2px;background:#151515}.contract-summary span{color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:9px;text-transform:uppercase}.contract-summary b{font-family:"SFMono-Regular",Consolas,monospace;font-size:10px;font-weight:500}
.urgent-card h2{font-size:13px}.urgent-card p{color:var(--red);font-size:11px;line-height:15px}.urgent-card .workspace-actions{margin-top:2px}.project-primary-actions{display:grid;gap:6px;margin-top:12px}.project-primary-actions>div{display:grid;grid-template-columns:1fr 42px;gap:8px}.project-primary-actions>div button{min-height:30px}.project-primary-actions>p{display:flex;align-items:center;justify-content:space-between;padding:5px 8px;border-radius:2px;background:#0e0e0e;color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:9px;text-transform:uppercase}.project-primary-actions>p span{color:var(--mint)}.setup-details{margin-top:12px}
.section-block,.filter-bar,.api-list,.configuration-list,.run-list,.timeline,.codex-summary,.request-composer,.run-hero,.integration-card,.project-card,.correction-card,.activity-list,.project-event{border-radius:4px;box-shadow:var(--shadow)}
.bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr));min-height:64px;padding:8px;border-color:var(--line);background:rgba(19,19,19,.96)}.nav-item{display:flex;min-height:48px;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:4px;font-size:11px;font-weight:500}.nav-item .ui-icon{width:18px;height:18px;opacity:.85}.nav-item.active{background:#2a2a2a;color:#8ed5ff}.nav-item.active:before{display:none}.nav-item.active .ui-icon{opacity:1}.chat-launcher{right:12px;bottom:76px;min-height:34px;padding:0 11px;border-color:rgba(56,189,248,.35);border-radius:4px;background:#202020;font-size:11px;box-shadow:0 4px 14px rgba(0,0,0,.35)}.route-home .chat-launcher{bottom:12px}
@media(max-width:430px){.route-view{padding:12px 10px 24px}.mobile-header{padding:8px 10px}.workspace-actions{grid-template-columns:1fr 1fr}.topology-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.setup-details{padding:12px}.chat-label{display:none}.chat-launcher{width:34px;padding:0;justify-content:center}.chat-launcher span{font-size:.9rem}}
/* Accessible dashboard scale. Keep the full IDE panel at compact widths and
   use at most 85% of the browser viewport on desktop. */
body{font-size:15px;line-height:1.55}
.route-view{width:100%;max-width:100%;padding:18px 14px 32px}
.mobile-header button,.primary-button,.secondary-button,.quiet-button,.back-button,.remove-button,.run-button{font-size:14px;font-weight:550;line-height:1.4}
.header-brand strong{font-size:15px;line-height:21px;font-weight:600}.header-brand small{font-size:12px;line-height:17px;font-weight:400}
.micro-heading{min-height:20px;font-size:12px;line-height:18px;font-weight:450;letter-spacing:.035em}
.launcher-section{gap:10px;margin-top:22px}.workspace-launcher{gap:12px;margin-top:12px}
.workspace-card{gap:14px;padding:17px}.detection-banner{padding:8px 11px;font-size:13px;line-height:20px;font-weight:400}
.workspace-title{gap:9px}.workspace-title strong{font-size:16px;line-height:23px;font-weight:600}.workspace-title small{margin-top:3px;font-size:13px;line-height:20px;font-weight:400}

/* Keep the IDE view usable at sidebar widths without changing its bottom nav. */
html,body,#app{width:100%;min-width:0;max-width:100%;overflow-x:hidden}
.app-shell,.route-view{min-width:0;box-sizing:border-box}
.route-view{width:100%;max-width:420px}
.route-view>*{min-width:0;max-width:100%}
.route-view :is(p,li,small,code,strong,summary,label){overflow-wrap:anywhere}
.route-view :is(input,select,textarea,button){max-width:100%;min-width:0}
.vault-environment-switcher{display:flex;max-width:100%;gap:6px;overflow-x:auto;margin-bottom:14px;padding:2px 0;scrollbar-width:thin}.vault-environment-switcher button{flex:none;min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:var(--soft);color:var(--muted);font-size:.8rem}.vault-environment-switcher button.active{border-color:color-mix(in srgb,var(--mint) 55%,var(--line));background:color-mix(in srgb,var(--mint) 12%,var(--surface));color:var(--mint)}
.vault-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:14px 0}.vault-toolbar>span{color:var(--muted);font-size:.82rem}.vault-toolbar>label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.78rem}.vault-toolbar select{min-width:140px;max-width:220px;min-height:38px;padding:0 9px;border:1px solid var(--line);border-radius:9px;background:var(--soft);color:var(--text)}.vault-credential-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.vault-credential-main{display:grid;min-width:180px;flex:1;gap:5px}.vault-credential-main strong{overflow-wrap:anywhere;color:var(--mint);font-family:"SFMono-Regular",Consolas,monospace}.vault-credential-main small{overflow-wrap:anywhere;color:var(--muted);font-size:.72rem}.vault-credential-actions{display:flex;flex-wrap:wrap;gap:5px}.vault-credential-actions button{min-height:34px;padding:0 9px;font-size:.72rem}.vault-privacy-disclosure{margin-top:14px;padding:0 15px}.vault-privacy-disclosure>summary{display:flex;min-height:52px;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;font-size:.85rem;font-weight:700;list-style:none}.vault-privacy-disclosure>summary::-webkit-details-marker{display:none}.vault-privacy-disclosure>summary span{color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:.7rem}.vault-crypto-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px 0;border-top:1px solid var(--line)}.vault-crypto-detail-grid strong{color:var(--mint);font-size:.8rem}.vault-crypto-detail-grid p{margin-top:5px;color:var(--muted);font-size:.78rem}.vault-environment-targets{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0;padding:10px;border:1px solid var(--line);border-radius:10px}.vault-environment-targets legend{padding:0 5px;color:var(--muted);font-size:.78rem}.vault-environment-targets .task-check{margin:0}
@media(max-width:560px){.vault-toolbar{align-items:stretch}.vault-toolbar>label{justify-content:space-between}.vault-toolbar select{flex:1;max-width:none}.vault-toolbar .management-heading-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.vault-credential-row{align-items:flex-start}.vault-credential-actions{width:100%}.vault-credential-actions button{flex:1}.vault-privacy-disclosure>summary{align-items:flex-start;flex-direction:column;justify-content:center;padding:8px 0}.vault-crypto-detail-grid{grid-template-columns:1fr}}
@media(max-width:420px){.vault-environment-switcher{margin-right:-10px;padding-right:10px}.vault-credential-actions button{font-size:.66rem;padding:0 6px}.vault-privacy-disclosure{padding-right:11px;padding-left:11px}}
.git-strip{min-height:38px;padding:7px 11px;font-size:13px;line-height:20px;font-weight:400}.figma-tags span{padding:5px 9px;font-size:12px;line-height:18px;font-weight:400}
.project-card-list{gap:10px}.project-card.figma-project-row{grid-template-columns:minmax(0,1fr) 36px;min-height:108px;gap:12px;padding:16px}.project-title-line>.ui-icon{width:18px;height:18px}
.project-title-line{gap:8px}.project-card-copy strong{font-size:16px;line-height:24px;font-weight:600}.project-card-copy small{margin-top:5px;font-size:14px;line-height:21px;font-weight:400}.project-card-meta{margin-top:7px;font-size:13px;line-height:20px;font-weight:500}
.status-chip{min-height:22px;padding:2px 7px;font-size:12px;line-height:16px;font-weight:450}

:root{--bg:var(--vscode-sideBar-background,#090c0f);--surface:var(--vscode-editorWidget-background,#10151a);--raised:var(--vscode-input-background,#151b21);--soft:var(--vscode-editor-background,#0d1216);--text:var(--vscode-foreground,#f4f6f8);--muted:var(--vscode-descriptionForeground,#9ca7b4)}
.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))}
.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:4px 2px;font-size:clamp(.62rem,2.6vw,.78rem)}
.nav-item .ui-icon{width:16px;height:16px}
.chat-launcher{display:none!important}
.contextual-return{display:flex;width:100%;min-height:42px;align-items:center;gap:7px;margin:0 0 14px;padding:8px 11px;border:1px solid var(--strong);border-radius:4px;background:var(--raised);color:var(--text);text-align:left}
.contextual-return small{margin-left:auto;color:var(--muted)}
.task-row-v2{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}
.task-row-main,.task-row-status{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:7px}
.task-row-title{display:flex;min-width:0;align-items:center;gap:8px}
.task-row-title h3{overflow:hidden;text-overflow:ellipsis}
.task-row-title a{color:var(--text);text-decoration:none}
.task-row-title a:hover{text-decoration:underline}
.task-row-description{flex-basis:100%;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.task-row-tags{display:flex;flex-wrap:wrap;gap:5px}
.task-row-tags i{padding:2px 6px;border:1px solid var(--line);border-radius:2px;color:var(--muted);font-size:10px;font-style:normal}
.task-row-status{justify-content:flex-end}
.task-row-v2:focus-within{outline:1px solid var(--coral)}
.task-heading-actions{display:flex;flex-wrap:wrap;gap:6px}
.task-archive-notice{margin:0 0 12px;padding:8px 11px;border:1px solid var(--line);background:var(--raised);color:var(--muted);font-size:12px}
.archived-task-list>summary{cursor:pointer;color:var(--muted);font-weight:600}
.archived-task-list .task-list-v2{display:grid;gap:8px;margin-top:12px}
@media(max-width:520px){.app-shell{padding-bottom:calc(74px + env(safe-area-inset-bottom))}.bottom-nav{min-height:64px;padding-bottom:max(4px,env(safe-area-inset-bottom))}.nav-item{gap:2px}.task-row-v2{grid-template-columns:minmax(0,1fr)}.task-row-status{justify-content:flex-start}.contextual-return{align-items:flex-start}.contextual-return small{white-space:nowrap}}
.privacy-card{gap:10px;padding:17px}.privacy-title{gap:8px}.privacy-title strong{font-size:15px;line-height:22px;font-weight:600}.privacy-card p{font-size:14px;line-height:21px;font-weight:400}.privacy-card .full-button{min-height:40px}
.project-context-card{gap:11px;padding:14px}.project-context-title strong{font-size:17px;line-height:25px;font-weight:600}.project-context-title small,.revision-line{font-size:12px;line-height:19px;font-weight:400}
.initialization-card,.topology-card,.urgent-card{gap:13px;padding:16px}.card-title-row>span{font-size:15px;line-height:22px;font-weight:600}.health-checklist{gap:8px}.health-checklist>div{min-height:39px;grid-template-columns:16px minmax(0,1fr) auto;gap:9px;padding:8px 10px;font-size:14px;line-height:20px;font-weight:400}.health-checklist b{font-size:12px;line-height:18px;font-weight:450}
.topology-grid button{gap:5px;min-height:76px;padding:11px}.topology-grid small,.topology-grid span{font-size:11px;line-height:17px;font-weight:400}.topology-grid strong{font-size:14px;line-height:21px;font-weight:600}.contract-summary{min-height:42px;padding:10px}.contract-summary span,.contract-summary b{font-size:12px;line-height:18px;font-weight:450}
.urgent-card h2{font-size:16px;line-height:23px;font-weight:600}.urgent-card p{font-size:14px;line-height:21px}.project-primary-actions>div button{min-height:42px}.project-primary-actions>p{min-height:34px;padding:7px 10px;font-size:11px;line-height:17px}
.supporting-copy,.modal-intro{font-size:15px;line-height:23px}.section-block{padding:20px}.section-block p,.section-block li,.configuration-list,.api-list,.run-list,.task-list{line-height:1.55}
.bottom-nav .nav-item{font-size:13px;font-weight:450;line-height:18px}
@media(min-width:768px){.route-view,.route-home .route-view,.route-project .route-view,.route-tasks .route-view,.route-task .route-view{width:85%;max-width:85%;min-height:calc(100dvh - 64px);padding-right:20px;padding-left:20px}.route-home .launcher-section,.route-home .workspace-launcher{width:100%;max-width:none;margin-right:0;margin-left:0}}
@media(prefers-color-scheme:light){
  :root:not(.aipi-ide){--bg:#f3f5f7;--surface:#fff;--raised:#e9eef2;--soft:#f5f7f9;--line:#c7d0d7;--strong:#8998a4;--text:#15212b;--muted:#4c5b67;--coral:#075f86;--coral2:#054a69;--mint:#08704f;--red:#a52639;--amber:#754800;--shadow:0 1px 3px rgba(30,50,65,.15)}
  :root:not(.aipi-ide) body{background:var(--bg)}
  :root:not(.aipi-ide) .mobile-header{border-color:var(--line);background:rgba(255,255,255,.98);box-shadow:0 1px 4px rgba(25,42,55,.14)}
  :root:not(.aipi-ide) .header-brand small{color:#425462}
  :root:not(.aipi-ide) .header-settings,:root:not(.aipi-ide) .header-tool{border:1px solid var(--line)!important;background:#e7edf1!important;color:#2f414f!important}
  :root:not(.aipi-ide) .connection-dot.connected{box-shadow:0 0 0 3px rgba(8,112,79,.14)}
  :root:not(.aipi-ide) .primary-button,:root:not(.aipi-ide) .run-button{background:var(--coral);color:#fff}
  :root:not(.aipi-ide) .primary-button .ui-icon,:root:not(.aipi-ide) .run-button .ui-icon{filter:brightness(0) invert(1)}
  :root:not(.aipi-ide) .secondary-button{border-color:var(--strong);background:#e8edf1;color:var(--text)}
  :root:not(.aipi-ide) button:disabled{opacity:.72}
  :root:not(.aipi-ide) .detection-banner{border-color:rgba(8,112,79,.34);background:#e9f5ef;color:var(--mint)}
  :root:not(.aipi-ide) .figma-tags span{border-color:var(--line);background:#e9eef2;color:#40515e}
  :root:not(.aipi-ide) .git-strip,:root:not(.aipi-ide) .topology-grid button,:root:not(.aipi-ide) .contract-summary{border-color:var(--line);background:#f3f6f8}
  :root:not(.aipi-ide) .micro-progress{background:#c7d0d7}
  :root:not(.aipi-ide) .health-checklist .pending{opacity:.88}
  :root:not(.aipi-ide) .project-primary-actions>p{background:#e9eef2;color:#425462}
  :root:not(.aipi-ide) .privacy-card p{color:var(--muted)}
  :root:not(.aipi-ide) .bottom-nav{border-color:var(--line);background:rgba(255,255,255,.98);box-shadow:0 -1px 5px rgba(25,42,55,.12)}
  :root:not(.aipi-ide) .nav-item{color:#4b5c68}
  :root:not(.aipi-ide) .nav-item.active{background:#dceef7;color:#075f86}
  :root:not(.aipi-ide) .nav-item .ui-icon,:root:not(.aipi-ide) .header-settings .ui-icon,:root:not(.aipi-ide) .header-tool .ui-icon{filter:brightness(0);opacity:.68}
  :root:not(.aipi-ide) .nav-item.active .ui-icon{opacity:.86}
  :root:not(.aipi-ide) .project-title-line>.ui-icon{filter:brightness(0);opacity:.58}
  :root:not(.aipi-ide) .status-chip.success,:root:not(.aipi-ide) .status-tag.success{border-color:rgba(8,112,79,.38);background:#e8f4ee;color:#075e43!important}
  :root:not(.aipi-ide) .status-chip.info{border-color:rgba(7,95,134,.35);background:#e4f0f6;color:#075f86}
  :root:not(.aipi-ide) .status-chip.warning,:root:not(.aipi-ide) .status-tag.warning{border-color:rgba(117,72,0,.36);background:#f7eedf;color:#754800!important}
  :root:not(.aipi-ide) .status-chip.danger,:root:not(.aipi-ide) .status-tag.danger{border-color:rgba(165,38,57,.34);background:#fae9ec;color:#9c2034!important}
  :root:not(.aipi-ide) .urgent-card{border-color:#d7a9b0}
  :root:not(.aipi-ide) .urgent-card p{color:#9c2034}
  :root:not(.aipi-ide) .chat-launcher{border-color:#526675;background:#1d2b35;color:#fff}
}
@media(max-width:420px){
  .route-view{padding:12px 10px 24px}.section-block{padding:12px;margin-top:12px}.mobile-header{gap:4px;padding:4px 8px;min-height:48px}.header-actions{gap:4px;flex-wrap:wrap;justify-content:flex-end}.mobile-header button{padding:0 7px;font-size:.75rem}.connection-pill{font-size:.65rem}
  h1{font-size:1.7rem}h2{font-size:1.1rem}.page-heading{gap:10px;margin-bottom:12px}.section-heading{flex-wrap:wrap}.two-column-fields{grid-template-columns:minmax(0,1fr)}
  pre,.code-input{max-width:100%;overflow:auto}.route-view>*{min-width:0}.task-cards .project-card-copy small{white-space:normal}.event-actions{gap:8px}
}
.context-artifact{display:grid;gap:6px;padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.context-artifact small,.context-artifact p{color:var(--muted);font-size:.8rem}.context-artifact button{justify-self:start}.context-excerpt{max-width:100%;max-height:280px;overflow:auto;background:var(--soft);padding:12px;font-size:.8rem;white-space:pre}#artifactEvidence{min-width:0}

/* Readability system: tuned for editor and chat-like reading rather than dense
   monitoring dashboards. Keep labels clear, copy relaxed, and controls easy to
   scan without relying on heavy font weights. */
body{font-size:16px;line-height:1.62;font-weight:400;letter-spacing:0}
button,input,select,textarea{font-size:15px;line-height:1.5;font-weight:450}
h1{font-size:clamp(2rem,4vw,2.65rem);line-height:1.15;font-weight:650;letter-spacing:-.025em}
h2{font-size:21px;line-height:1.35;font-weight:620;letter-spacing:-.012em}
h3{font-size:17px;line-height:1.45;font-weight:600}p,li{line-height:1.62}
.route-view{padding-top:24px;padding-bottom:42px}.page-heading{margin-bottom:26px}.section-block{margin-top:18px;padding:22px}.section-heading,.inline-heading{gap:16px}.section-block>.supporting-copy{margin-top:14px}
.mobile-header{min-height:70px;padding:10px 16px}.header-brand{gap:10px}.header-brand img{width:36px;height:36px}.header-brand strong{font-size:16px;line-height:24px;font-weight:600}.header-brand small{font-size:13px;line-height:20px;font-weight:400}.header-settings,.header-tool{width:38px;height:38px!important}.connection-dot{width:7px;height:7px}
.primary-button,.secondary-button,.quiet-button,.back-button,.remove-button,.run-button{min-height:46px;font-size:15px;line-height:1.45;font-weight:550}.primary-button,.secondary-button,.run-button{padding-right:18px;padding-left:18px}
.eyebrow,.micro-heading{font-size:13px;line-height:21px;font-weight:500;letter-spacing:.035em}.supporting-copy,.modal-intro,.page-heading p:last-child{font-size:16px;line-height:25px;font-weight:400}
.launcher-section{gap:12px;margin-top:26px}.workspace-launcher{gap:14px;margin-top:14px}.workspace-card{gap:16px;padding:20px}.detection-banner{padding:9px 12px;font-size:14px;line-height:22px}.workspace-title strong{font-size:17px;line-height:26px;font-weight:600}.workspace-title small{font-size:15px;line-height:23px}.git-strip{min-height:42px;padding:8px 12px;font-size:14px;line-height:22px}.figma-tags{gap:8px}.figma-tags span{padding:5px 9px;font-size:13px;line-height:20px}
.project-card-list{gap:12px}.project-card.figma-project-row{min-height:122px;padding:18px;gap:13px}.project-card-copy strong{font-size:17px;line-height:26px;font-weight:600}.project-card-copy small{margin-top:6px;font-size:15px;line-height:23px;font-weight:400}.project-card-meta{margin-top:8px;font-size:14px;line-height:22px;font-weight:500}.status-chip{min-height:24px;padding:2px 8px;font-size:13px;line-height:18px;font-weight:450}.figma-project-row .project-card-arrow{width:40px;height:40px}
.privacy-card{gap:12px;padding:20px}.privacy-title strong{font-size:16px;line-height:24px;font-weight:600}.privacy-card p{font-size:15px;line-height:24px}.privacy-card .full-button{min-height:44px}
.project-context-card{gap:13px;padding:17px}.project-context-title strong{font-size:18px;line-height:27px}.project-context-title small,.revision-line{font-size:14px;line-height:22px}.initialization-card,.topology-card,.urgent-card{gap:15px;padding:18px}.card-title-row>span{font-size:16px;line-height:24px}.health-checklist{gap:9px}.health-checklist>div{min-height:44px;padding:9px 11px;font-size:15px;line-height:23px}.health-checklist b{font-size:13px;line-height:20px}.topology-grid button{min-height:86px;padding:13px}.topology-grid small,.topology-grid span{font-size:12px;line-height:19px}.topology-grid strong{font-size:15px;line-height:23px}.contract-summary{min-height:46px;padding:11px}.contract-summary span,.contract-summary b{font-size:13px;line-height:20px}.urgent-card h2{font-size:17px;line-height:26px}.urgent-card p{font-size:15px;line-height:24px}.project-primary-actions{gap:8px;margin-top:15px}.project-primary-actions>div button{min-height:46px}.project-primary-actions>p{min-height:38px;font-size:12px;line-height:19px}
.source-list,.finding-list,.variable-summary,.task-list,.iteration-list{gap:10px;margin-top:17px}.source-row,.variable-summary>div,.task-list>div,.iteration-list>div{min-height:56px;padding:14px}.source-row strong,.variable-summary span{font-size:14px;line-height:22px;font-weight:550}.source-row div span{margin-top:4px;font-size:15px;line-height:23px}.tag{padding:6px 10px;font-size:13px;line-height:20px}.finding-list button{min-height:54px;padding:10px 12px;font-size:15px;line-height:23px}.status-mark{min-width:58px;font-size:12px;line-height:18px}
.filter-bar{gap:14px;padding:12px 14px}.filter-bar select{height:44px;font-size:15px;font-weight:550}.filter-bar>span{font-size:14px;line-height:22px}.api-row,.run-row{min-height:90px;gap:16px;padding:15px 16px}.api-row strong,.run-row strong{font-size:16px;line-height:24px;font-weight:600}.api-row-main div span,.run-row div div span{margin-top:5px;font-size:14px;line-height:22px}.api-row-meta>span:first-child,.run-row>div:last-child>span:last-child,.method-badge,.status-text,.task-status{font-size:13px;line-height:20px;font-weight:500}
.configuration-list{margin-top:15px}.configuration-list summary{min-height:64px;padding:0 18px;font-size:15px;line-height:23px;font-weight:550}.configuration-list summary span:last-child{font-size:13px;line-height:20px;font-weight:400}.details-body{gap:15px;padding:2px 18px 20px 44px}.field-label{gap:8px;font-size:14px;line-height:22px;font-weight:500}.field,.text-input,.code-input,.goal-input{min-height:48px;padding:11px 12px}.toggle-row{font-size:15px;line-height:23px}
.summary-grid,.map-overview{gap:10px}.summary-grid>div,.map-overview>div{padding:15px}.summary-grid strong,.map-overview strong{font-size:23px;line-height:30px;font-weight:600}.summary-grid span,.map-overview span{font-size:13px;line-height:20px}.integration-card{padding:18px}.integration-card>p{font-size:14px;line-height:22px}.integration-flow span{font-size:14px;line-height:22px}.integration-flow small{font-size:12px;line-height:18px}
.timeline-step{gap:15px;padding:19px}.timeline-step>span:last-child{font-size:13px;line-height:20px}.timeline-step p{font-size:15px;line-height:23px}.response-step pre,.context-excerpt{font-size:14px;line-height:1.65}.iteration-list span,.context-artifact small,.context-artifact p{font-size:14px;line-height:22px}
.bottom-nav{min-height:72px;padding:9px}.bottom-nav .nav-item{min-height:54px;font-size:14px;line-height:21px;font-weight:450}.chat-launcher{min-height:40px;padding:0 14px;font-size:14px;font-weight:550}
@media(max-width:767px){body{font-size:15px}.route-view{width:100%;max-width:100%;padding:18px 12px 32px}.mobile-header{min-height:60px;padding:8px 10px}.header-brand img{width:34px;height:34px}.header-brand strong{font-size:15px}.workspace-actions{grid-template-columns:1fr 1fr}.project-card.figma-project-row{min-height:112px;padding:15px}.topology-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.bottom-nav .nav-item{font-size:13px}.chat-label{display:none}}

/* AIPI v2 task workspace and operational tools. */
.tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tool-card{display:flex;min-height:230px;flex-direction:column;justify-content:space-between;gap:22px;padding:22px;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:var(--shadow)}.tool-card h2{margin-top:5px}.tool-card p:not(.eyebrow){margin-top:8px;color:var(--muted);font-size:15px;line-height:24px}.tool-card-actions{display:flex;flex-wrap:wrap;gap:9px}.tool-card>button{align-self:flex-start}.tool-status-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:4px;background:var(--soft);color:var(--muted);font-size:14px}
.task-heading{align-items:flex-start}.task-state-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;margin-bottom:14px;border:1px solid var(--line);border-radius:6px;background:var(--line)}.task-state-grid>div{display:grid;align-content:start;gap:5px;min-height:126px;padding:16px;background:var(--surface)}.task-state-grid span{color:var(--muted);font-size:13px;line-height:20px}.task-state-grid strong{font-size:17px;line-height:25px;font-weight:600;text-transform:capitalize}.task-state-grid small{color:var(--muted);font-size:13px;line-height:20px}.task-primary-actions{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:10px;margin-bottom:18px}.task-primary-actions button{min-width:0}
.task-implementation>.section-heading{align-items:flex-start}.implementation-path{position:relative;display:grid;gap:0;margin:20px 0 0;padding:0;list-style:none}.implementation-path:before{position:absolute;top:26px;bottom:26px;left:20px;width:2px;background:var(--line);content:""}.implementation-path li{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:92px;padding:12px 0}.implementation-path li+li{border-top:1px solid rgba(43,43,43,.72)}.path-index{z-index:1;display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(56,189,248,.38);border-radius:50%;background:var(--surface);color:var(--coral);font:500 13px/1 "SFMono-Regular",Consolas,monospace}.implementation-path li>div{display:grid;min-width:0;gap:2px}.artifact-kind{color:var(--coral);font:500 12px/19px "SFMono-Regular",Consolas,monospace;text-transform:uppercase}.implementation-path strong{overflow:hidden;font-size:16px;line-height:24px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.implementation-path code{overflow:hidden;color:var(--muted);font-size:13px;line-height:21px;text-overflow:ellipsis;white-space:nowrap}.implementation-path small{color:var(--muted);font-size:12px;line-height:19px}.coverage-message{display:grid;justify-items:start;gap:9px;margin-top:18px;padding:18px;border:1px dashed var(--strong);border-radius:5px;background:var(--soft)}.coverage-message p{color:var(--muted);font-size:15px;line-height:24px}.linked-request-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.linked-request-grid>.eyebrow{grid-column:1/-1}.linked-request{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;min-height:72px;padding:12px;border:1px solid var(--line);border-radius:4px;background:var(--soft);text-align:left}.linked-request>span{grid-row:1/3;color:var(--coral);font:550 13px/20px "SFMono-Regular",Consolas,monospace}.linked-request strong{font-size:15px;line-height:22px}.linked-request small{color:var(--muted);font-size:13px;line-height:20px}.acceptance-list{display:grid;gap:9px;padding-left:24px}.acceptance-list li{padding-left:4px;font-size:15px;line-height:24px}
.task-findings,.external-link-list,.verification-history{display:grid;gap:9px;margin-top:16px}.task-findings article,.external-link-list article{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:4px 12px;padding:14px;border:1px solid var(--line);border-radius:4px;background:var(--soft)}.task-findings article>.status-chip{grid-row:1/3}.task-findings strong,.external-link-list strong{font-size:15px;line-height:23px;font-weight:600}.task-findings small,.external-link-list span,.external-link-list small{color:var(--muted);font-size:13px;line-height:21px}.external-link-list article{grid-template-columns:150px minmax(0,1fr)}.external-link-list small{grid-column:2;overflow-wrap:anywhere}.verification-history details{padding:14px;border:1px solid var(--line);border-radius:4px;background:var(--soft)}.verification-history summary{display:flex;align-items:center;gap:10px;cursor:pointer}.verification-history summary strong{font-size:14px;font-weight:500}
.task-toolbar{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,.75fr) auto;align-items:end;gap:12px;margin-bottom:18px;padding:16px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.task-toolbar .field-label{min-width:0}.task-toolbar button{min-height:48px}.task-list-v2{display:grid;gap:10px}.task-row-v2{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:132px;padding:18px;border:1px solid var(--line);border-radius:6px;background:var(--surface);text-align:left}.task-row-v2:hover{border-color:var(--strong);background:var(--raised)}.task-row-main{display:grid;min-width:0;gap:6px}.task-row-title{display:flex;min-width:0;align-items:center;gap:8px}.task-row-title strong{overflow:hidden;font-size:18px;line-height:27px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.task-row-description{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:15px;line-height:23px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.task-row-tags{display:flex;flex-wrap:wrap;gap:6px}.task-row-tags i{padding:3px 7px;border:1px solid var(--line);border-radius:3px;color:var(--muted);font-size:12px;font-style:normal;line-height:18px}.task-row-status{display:grid;grid-template-columns:repeat(2,auto);align-items:center;justify-items:end;gap:7px 12px}.task-row-status>span:not(.status-chip){color:var(--muted);font-size:13px;line-height:20px}.task-row-status b{color:var(--text);font-weight:600}
@media(max-width:1000px){.task-state-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-toolbar{grid-template-columns:1fr 1fr}.task-toolbar button{grid-column:1/-1}.task-row-v2{grid-template-columns:1fr}.task-row-status{grid-template-columns:repeat(4,auto);justify-content:start;justify-items:start}}
@media(max-width:767px){.tools-grid{grid-template-columns:1fr}.tool-card{min-height:190px;padding:18px}.task-state-grid{grid-template-columns:1fr 1fr}.task-state-grid>div{min-height:112px;padding:13px}.task-primary-actions{grid-template-columns:1fr}.task-toolbar{grid-template-columns:1fr}.task-toolbar button{grid-column:auto}.task-row-v2{min-height:0;padding:15px}.task-row-status{grid-template-columns:1fr 1fr}.implementation-path li{grid-template-columns:38px minmax(0,1fr)}.implementation-path li>button{grid-column:2;justify-self:start}.implementation-path:before{left:18px}.path-index{width:38px;height:38px}.linked-request-grid{grid-template-columns:1fr}.external-link-list article{grid-template-columns:1fr}.external-link-list small{grid-column:1}.bottom-nav{overflow-x:auto}}

/* Desktop reading mode: wider working area with chat-like text sizing and
   relaxed vertical rhythm. Narrow IDE panels retain the compact rules above. */
@media(min-width:768px){
  body{font-size:18px;line-height:1.68}
  .route-view,.route-home .route-view,.route-project .route-view,.route-tasks .route-view,.route-task .route-view{width:92%;max-width:92%;padding:30px 24px 52px}
  h1{font-size:clamp(2.45rem,4.2vw,3.15rem);line-height:1.14}h2{font-size:24px;line-height:1.42}h3{font-size:19px;line-height:1.5}p,li{line-height:1.68}
  button,input,select,textarea{font-size:16px;line-height:1.55}
  .mobile-header{min-height:74px;padding:11px 18px}.header-brand img{width:40px;height:40px}.header-brand strong{font-size:18px;line-height:26px}.header-brand small{font-size:14px;line-height:21px}.header-settings,.header-tool{width:42px;height:42px!important}
  .page-heading{margin-bottom:30px}.page-heading p:last-child,.supporting-copy,.modal-intro{font-size:18px;line-height:29px}.eyebrow,.micro-heading{font-size:14px;line-height:22px;letter-spacing:.03em}
  .primary-button,.secondary-button,.quiet-button,.back-button,.remove-button,.run-button{min-height:50px;font-size:16px;line-height:1.5}.section-block{margin-top:22px;padding:26px}.section-block>.supporting-copy{margin-top:16px}
  .workspace-card{gap:18px;padding:23px}.detection-banner{font-size:16px;line-height:25px}.workspace-title strong{font-size:19px;line-height:28px}.workspace-title small{font-size:17px;line-height:26px}.git-strip{min-height:46px;font-size:16px;line-height:24px}.figma-tags span{font-size:15px;line-height:22px}
  .project-card-list{gap:14px}.project-card.figma-project-row{min-height:142px;padding:21px}.project-card-copy strong{font-size:19px;line-height:29px}.project-card-copy small{font-size:17px;line-height:26px}.project-card-meta{font-size:16px;line-height:24px}.status-chip{min-height:26px;font-size:14px;line-height:20px}.figma-project-row .project-card-arrow{width:44px;height:44px}
  .privacy-card{padding:23px}.privacy-title strong{font-size:18px;line-height:27px}.privacy-card p{font-size:17px;line-height:27px}
  .project-context-card{padding:20px}.project-context-title strong{font-size:20px;line-height:30px}.project-context-title small,.revision-line{font-size:15px;line-height:23px}.initialization-card,.topology-card,.urgent-card{padding:21px}.card-title-row>span{font-size:18px;line-height:27px}.health-checklist>div{min-height:50px;font-size:17px;line-height:25px}.health-checklist b{font-size:15px;line-height:22px}.topology-grid button{min-height:98px}.topology-grid small,.topology-grid span{font-size:14px;line-height:21px}.topology-grid strong{font-size:17px;line-height:26px}.contract-summary span,.contract-summary b{font-size:15px;line-height:22px}.urgent-card h2{font-size:20px;line-height:29px}.urgent-card p{font-size:17px;line-height:27px}
  .source-row strong,.variable-summary span{font-size:16px;line-height:24px}.source-row div span{font-size:17px;line-height:26px}.finding-list button{font-size:17px;line-height:26px}.filter-bar select{font-size:17px}.filter-bar>span{font-size:16px;line-height:24px}
  .api-row,.run-row{min-height:104px}.api-row strong,.run-row strong{font-size:18px;line-height:27px}.api-row-main div span,.run-row div div span{font-size:16px;line-height:25px}.api-row-meta>span:first-child,.run-row>div:last-child>span:last-child,.method-badge,.status-text,.task-status{font-size:15px;line-height:22px}
  .configuration-list summary{min-height:70px;font-size:17px;line-height:26px}.configuration-list summary span:last-child{font-size:15px;line-height:22px}.field-label{font-size:16px;line-height:24px}.field,.text-input,.code-input,.goal-input{min-height:52px}
  .tool-card{min-height:250px;padding:26px}.tool-card p:not(.eyebrow){font-size:17px;line-height:27px}.tool-status-row{font-size:16px}
  .task-state-grid>div{min-height:142px;padding:19px}.task-state-grid span,.task-state-grid small{font-size:15px;line-height:23px}.task-state-grid strong{font-size:19px;line-height:28px}.task-row-v2{min-height:150px;padding:21px}.task-row-title strong{font-size:20px;line-height:30px}.task-row-description{font-size:17px;line-height:26px}.task-row-tags i{font-size:14px;line-height:21px}.task-row-status>span:not(.status-chip){font-size:15px;line-height:23px}
  .implementation-path li{min-height:104px}.artifact-kind{font-size:14px;line-height:21px}.implementation-path strong{font-size:18px;line-height:27px}.implementation-path code{font-size:15px;line-height:23px}.implementation-path small{font-size:14px;line-height:21px}.coverage-message p,.acceptance-list li{font-size:17px;line-height:27px}.linked-request strong,.task-findings strong,.external-link-list strong{font-size:17px;line-height:26px}.linked-request small,.task-findings small,.external-link-list span,.external-link-list small{font-size:15px;line-height:23px}
  .bottom-nav{min-height:80px}.bottom-nav .nav-item{min-height:60px;font-size:16px;line-height:24px}.chat-launcher{min-height:46px;font-size:16px}
}

/* Enhanced desktop reading scale. Every explicit desktop text size is raised
   by 2px, with taller leading and components for easier scanning. */
@media(min-width:768px){
  body{font-size:24px;line-height:1.75}
  .route-view,.route-home .route-view,.route-project .route-view,.route-tasks .route-view,.route-task .route-view{padding:34px 28px 62px}
  h1{font-size:clamp(calc(2.45rem + 6px),calc(4.2vw + 6px),calc(3.15rem + 6px));line-height:1.18}h2{font-size:30px;line-height:1.5}h3{font-size:25px;line-height:1.58}p,li,dd,dt,label,summary,td,th{line-height:1.75}
  button,input,select,textarea{font-size:22px;line-height:1.65}
  .mobile-header{min-height:82px;padding:14px 20px}.header-brand img{width:44px;height:44px}.header-brand strong{font-size:24px;line-height:30px}.header-brand small{font-size:20px;line-height:25px}.header-settings,.header-tool{width:48px;height:48px!important}
  .page-heading{margin-bottom:36px}.page-heading p:last-child,.supporting-copy,.modal-intro{font-size:24px;line-height:34px}.eyebrow,.micro-heading{font-size:20px;line-height:26px;letter-spacing:.025em}
  .primary-button,.secondary-button,.quiet-button,.back-button,.remove-button,.run-button{min-height:58px;padding-top:13px;padding-bottom:13px;font-size:22px;line-height:1.6}.section-block{margin-top:27px;padding:31px}.section-block>.supporting-copy{margin-top:20px}
  .workspace-card{gap:22px;padding:28px}.detection-banner{padding:14px 16px;font-size:22px;line-height:30px}.workspace-title strong{font-size:25px;line-height:33px}.workspace-title small{font-size:23px;line-height:31px}.git-strip{min-height:54px;padding:11px 14px;font-size:22px;line-height:29px}.figma-tags span{padding:6px 10px;font-size:21px;line-height:27px}
  .project-card-list{gap:18px}.project-card.figma-project-row{min-height:164px;padding:26px}.project-card-copy strong{font-size:25px;line-height:34px}.project-card-copy small{font-size:23px;line-height:31px}.project-card-meta{font-size:22px;line-height:29px}.status-chip{min-height:32px;padding:4px 9px;font-size:20px;line-height:24px}.figma-project-row .project-card-arrow{width:50px;height:50px}
  .privacy-card{padding:28px}.privacy-title strong{font-size:24px;line-height:32px}.privacy-card p{font-size:23px;line-height:32px}
  .project-context-card{gap:18px;padding:25px}.project-context-title strong{font-size:26px;line-height:35px}.project-context-title small,.revision-line{font-size:21px;line-height:28px}.initialization-card,.topology-card,.urgent-card{gap:19px;padding:26px}.card-title-row>span{font-size:24px;line-height:32px}.health-checklist{gap:12px}.health-checklist>div{min-height:58px;padding:12px 14px;font-size:23px;line-height:30px}.health-checklist b{font-size:21px;line-height:27px}.topology-grid button{min-height:114px;padding:17px}.topology-grid small,.topology-grid span{font-size:20px;line-height:26px}.topology-grid strong{font-size:23px;line-height:31px}.contract-summary{min-height:54px;padding:14px}.contract-summary span,.contract-summary b{font-size:21px;line-height:27px}.urgent-card h2{font-size:26px;line-height:34px}.urgent-card p{font-size:23px;line-height:32px}
  .source-row,.variable-summary{min-height:64px;padding-top:14px;padding-bottom:14px}.source-row strong,.variable-summary span{font-size:22px;line-height:29px}.source-row div span{font-size:23px;line-height:31px}.finding-list button{min-height:58px;font-size:23px;line-height:31px}.filter-bar{gap:14px}.filter-bar select{min-height:58px;font-size:23px}.filter-bar>span{font-size:22px;line-height:29px}
  .api-row,.run-row{min-height:122px;padding-top:20px;padding-bottom:20px}.api-row strong,.run-row strong{font-size:24px;line-height:32px}.api-row-main div span,.run-row div div span{font-size:22px;line-height:30px}.api-row-meta>span:first-child,.run-row>div:last-child>span:last-child,.method-badge,.status-text,.task-status{font-size:21px;line-height:27px}
  .configuration-list summary{min-height:82px;padding-top:17px;padding-bottom:17px;font-size:23px;line-height:31px}.configuration-list summary span:last-child{font-size:21px;line-height:27px}.field-label{font-size:22px;line-height:29px}.field,.text-input,.code-input,.goal-input{min-height:60px;padding-top:13px;padding-bottom:13px}
  .tool-card{min-height:286px;padding:31px}.tool-card p:not(.eyebrow){font-size:23px;line-height:32px}.tool-status-row{min-height:58px;padding:15px;font-size:22px;line-height:29px}
  .task-state-grid>div{min-height:164px;padding:24px}.task-state-grid span,.task-state-grid small{font-size:21px;line-height:28px}.task-state-grid strong{font-size:25px;line-height:33px}.task-primary-actions{gap:13px}.task-row-v2{min-height:174px;padding:26px}.task-row-main{gap:9px}.task-row-title strong{font-size:26px;line-height:35px}.task-row-description{font-size:23px;line-height:31px}.task-row-tags i{padding:5px 9px;font-size:20px;line-height:26px}.task-row-status>span:not(.status-chip){font-size:21px;line-height:28px}
  .implementation-path li{min-height:122px;padding-top:20px;padding-bottom:20px}.artifact-kind{font-size:20px;line-height:26px}.implementation-path strong{font-size:24px;line-height:32px}.implementation-path code{font-size:21px;line-height:28px}.implementation-path small{font-size:20px;line-height:26px}.coverage-message{padding:22px}.coverage-message p,.acceptance-list li{font-size:23px;line-height:32px}.linked-request,.task-findings article,.external-link-list article{min-height:74px;padding-top:15px;padding-bottom:15px}.linked-request strong,.task-findings strong,.external-link-list strong{font-size:23px;line-height:31px}.linked-request small,.task-findings small,.external-link-list span,.external-link-list small{font-size:21px;line-height:28px}
  .bottom-nav{min-height:92px}.bottom-nav .nav-item{min-height:70px;padding-top:10px;padding-bottom:10px;font-size:22px;line-height:29px}.chat-launcher{min-height:54px;padding:12px 17px;font-size:22px;line-height:29px}
  .micro-progress{height:8px}.health-checklist span small{margin-top:3px;font-size:17px;line-height:23px}.pipeline-note{font-size:21px;line-height:31px}
}

/* Complete desktop coverage for legacy and diagnostic surfaces that use their
   own compact metadata styles instead of inheriting the dashboard scale. */
@media(min-width:768px){
  .health-strip button,.summary-grid>div,.map-overview>div{min-height:104px;padding:20px}.health-strip strong,.summary-grid strong,.map-overview strong{font-size:32px;line-height:40px}.health-strip span,.summary-grid span,.map-overview span{font-size:24px;line-height:32px}
  .integration-list{gap:18px}.integration-card{padding:24px}.integration-head{gap:14px}.integration-head strong{font-size:26px;line-height:36px}.integration-flow{gap:14px;margin-top:18px}.integration-flow span{display:flex;min-height:94px;flex-direction:column;justify-content:center;padding:16px;font-size:24px;line-height:33px}.integration-flow small{margin-bottom:6px;font-size:22px;line-height:30px}.integration-card>p{margin-top:15px;font-size:22px;line-height:31px}.evidence-stack{gap:16px}.evidence-stack p{padding:16px;font-size:24px;line-height:34px}
  .tag{font-size:22px;line-height:30px}.status-mark{min-width:76px;padding:8px 10px;font-size:22px;line-height:29px}.empty-message p{font-size:24px;line-height:35px}
  .request-route-head h1{font-size:42px;line-height:50px}.title-input{font-size:32px;line-height:42px}.url-input{height:64px;font-size:22px;line-height:30px}.run-button span{font-size:20px;line-height:27px}.toggle-row{font-size:24px;line-height:34px}
  .run-hero>div>p:last-child{font-size:23px;line-height:33px}.timeline-step{min-height:112px;padding:24px}.timeline-step>span:last-child{font-size:22px;line-height:30px}.timeline-step p{font-size:24px;line-height:34px}.response-step pre,.context-excerpt{font-size:22px;line-height:1.75}.iteration-list span,.context-artifact small,.context-artifact p{font-size:22px;line-height:31px}
  .project-row{min-height:92px;padding:16px}.project-row small,.project-row b{font-size:22px;line-height:30px}.project-avatar{width:52px;height:52px;font-size:24px}.prompt-box,.command-snippet{font-size:24px;line-height:35px}
  dialog{font-size:24px}.modal-header,.modal-actions{padding:20px 22px}.modal-body{gap:18px;padding:22px}.modal-close{width:48px;height:48px;font-size:24px}.source-root-row select,.source-root-row input{height:58px;font-size:22px}.toast{padding:17px 20px;font-size:24px;line-height:34px}.fatal-error small{font-size:22px;line-height:30px}.fatal-error>p:not(.eyebrow){font-size:26px;line-height:38px}
}

/* Project overview v2 — adapted from the Figma project intelligence screen.
   Values always come from the local companion; empty and zero states stay factual. */
.route-project .route-view{display:grid;gap:12px;align-content:start}
.project-overview-header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:start;gap:10px;padding:4px 10px 2px}.overview-back{display:grid;width:42px;height:42px;padding:0;place-items:center;border:0;border-radius:6px;background:color-mix(in srgb,var(--red) 12%,transparent)}.overview-back .ui-icon{width:18px;height:18px}.overview-identity{display:grid;min-width:0}.overview-identity>strong{overflow:hidden;font-size:18px;line-height:24px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.overview-identity>small{overflow:hidden;color:var(--muted);font:400 12px/18px "SFMono-Regular",Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.overview-identity>span{display:flex;min-width:0;align-items:center;gap:8px;margin-top:4px}.overview-identity time{overflow:hidden;color:var(--muted);font:400 11px/17px "SFMono-Regular",Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.overview-edit{min-height:42px}
.overview-controls{display:grid;gap:12px;padding:12px}.overview-stack-tags{display:flex;flex-wrap:wrap;gap:6px}.overview-stack-tags span{padding:4px 8px;border:1px solid var(--line);border-radius:2px;background:var(--raised);color:var(--muted);font:450 11px/17px "SFMono-Regular",Consolas,monospace}.overview-environment{display:flex;align-items:center;gap:2px;min-height:42px;padding:4px;border:1px solid var(--line);border-radius:4px;background:var(--soft)}.overview-environment small,.overview-services>small,.overview-actions>small{margin-right:4px;color:var(--muted);font:500 10px/16px "SFMono-Regular",Consolas,monospace;letter-spacing:.05em}.overview-environment button{min-height:32px;padding:4px 10px;border:0;border-radius:3px;background:transparent;color:var(--muted);font-size:12px}.overview-environment button.active{background:var(--raised);color:var(--text)}.overview-environment .environment-settings{display:grid;margin-left:auto;padding:0;place-items:center}.overview-services{display:grid;gap:5px}.overview-services>div{display:flex;min-height:38px;align-items:center;gap:12px;padding:7px 10px;border:1px solid var(--line);border-radius:4px;background:var(--soft)}.overview-services span{display:flex;align-items:center;gap:6px;color:var(--text);font:450 11px/17px "SFMono-Regular",Consolas,monospace}.overview-services span+span:before{width:1px;height:12px;margin-right:6px;background:var(--line);content:""}.overview-services span i{width:6px;height:6px;border-radius:50%;background:var(--mint)}.overview-services .muted-service{color:var(--muted)}.overview-services .muted-service:before{display:none}.overview-actions{display:grid;gap:5px}.overview-actions>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.overview-actions button{min-width:0;min-height:44px;padding:6px 8px}
.overview-pulse{display:grid;gap:6px}.overview-pulse>.micro-heading{padding:0 3px}.overview-pipeline{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:9px 10px;border:1px solid var(--line);border-radius:4px;background:var(--surface)}.overview-pipeline>span{overflow:hidden;font-size:13px;line-height:19px;text-overflow:ellipsis;white-space:nowrap}.overview-pipeline>b{color:var(--coral);font:550 12px/18px "SFMono-Regular",Consolas,monospace}.overview-pipeline>.micro-progress{grid-column:1/-1;width:100%}.pulse-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.pulse-grid button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 8px;min-height:78px;padding:10px;border:1px solid var(--line);border-radius:4px;background:var(--soft);color:var(--text);text-align:left}.pulse-grid button:last-child{grid-column:1/-1}.pulse-grid span{color:var(--muted);font-size:12px;line-height:18px}.pulse-grid strong{grid-column:1;font-size:22px;line-height:27px;font-weight:650}.pulse-grid strong em{color:var(--muted);font-size:12px;font-style:normal;font-weight:400}.pulse-grid small{grid-column:2;grid-row:2;font:500 10px/16px "SFMono-Regular",Consolas,monospace;text-align:right}.danger-text{color:var(--red)!important}.warning-text{color:var(--amber)!important}
.overview-urgent{display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--red) 58%,var(--line));border-radius:4px;background:color-mix(in srgb,var(--red) 12%,var(--surface))}.overview-urgent>.urgent-bug-icon,.overview-urgent>.urgent-issue-copy{display:grid;min-width:0}.overview-urgent>.urgent-bug-icon{grid-template-columns:1fr}.overview-urgent>.urgent-bug-icon>.ui-icon{grid-row:auto}.overview-urgent>.urgent-issue-copy{grid-template-columns:minmax(0,1fr);align-items:center;gap:0}.overview-urgent b{color:var(--red);font:550 10px/16px "SFMono-Regular",Consolas,monospace;text-transform:uppercase}.overview-urgent strong{overflow:hidden;font-size:13px;line-height:19px;text-overflow:ellipsis;white-space:nowrap}.overview-urgent button{min-height:38px;flex:0 0 auto;padding:6px 10px;font-size:12px}
.overview-focus{display:grid;gap:7px;padding:12px}.focus-reference{margin:0;color:var(--coral);font:500 11px/17px "SFMono-Regular",Consolas,monospace}.overview-focus h2{margin:0;font-size:17px;line-height:23px}.overview-focus>p:not(.focus-reference){display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:13px;line-height:20px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.overview-focus>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:6px}.overview-focus>button{justify-self:start}
.overview-events{display:grid;padding:12px 12px 0}.overview-events>div{display:grid;margin-top:7px}.overview-events>div>button{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;padding:6px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left}.overview-events>div>button span{overflow:hidden;font-size:12px;line-height:18px;text-overflow:ellipsis;white-space:nowrap}.overview-events time{color:var(--muted);font:400 10px/16px "SFMono-Regular",Consolas,monospace}.event-dot{width:6px;height:6px;border-radius:50%;background:var(--coral)}.event-dot.success{background:var(--mint)}.event-dot.warning{background:var(--amber)}.event-dot.danger{background:var(--red)}.overview-events>div>p{margin:8px 0;color:var(--muted);font-size:13px}.overview-footer-link{min-height:36px;padding:7px;border:0;background:transparent;color:var(--coral);font-size:11px}
.overview-vault{display:flex;width:100%;min-height:58px;align-items:center;justify-content:space-between;padding:10px 12px;color:var(--text);text-align:left}.overview-vault>span{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:0 8px}.overview-vault .ui-icon{grid-row:1/3}.overview-vault b{font-size:14px;line-height:20px}.overview-vault small{color:var(--muted);font-size:11px;line-height:17px}.overview-vault>strong{font-size:24px;font-weight:400}
.overview-sources{display:grid;padding:12px 12px 0}.overview-sources>div{display:grid;margin-top:8px;border:1px solid var(--line);border-radius:5px;background:var(--soft)}.overview-sources article{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:58px;padding:8px}.overview-sources article+article{border-top:1px solid var(--line)}.source-kind-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:4px;background:var(--raised)}.overview-sources article>span:nth-child(2){display:grid;min-width:0}.overview-sources article strong,.overview-sources article small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-sources article strong{font-size:13px;line-height:19px}.overview-sources article small{color:var(--muted);font-size:11px;line-height:17px}
@media(max-width:420px){.project-overview-header{padding-right:2px;padding-left:2px}.overview-edit{display:none}.overview-controls,.overview-focus,.overview-events,.overview-sources{padding:10px}.overview-stack-tags span:nth-child(n+5){display:none}.overview-services>div{overflow-x:auto}.overview-environment{overflow-x:auto}.overview-environment small{position:sticky;left:0;background:var(--soft)}.overview-actions button{font-size:12px}.overview-urgent strong{max-width:175px}.overview-sources article{grid-template-columns:32px minmax(0,1fr)}.overview-sources article>i{grid-column:2;justify-self:start}.bottom-nav{padding-right:4px;padding-left:4px}}
@media(min-width:768px){.route-project .route-view{gap:20px}.project-overview-header{grid-template-columns:58px minmax(0,1fr) auto;padding:8px 4px}.overview-back{width:58px;height:58px}.overview-identity>strong{font-size:30px;line-height:39px}.overview-identity>small{font-size:20px;line-height:28px}.overview-identity time{font-size:18px;line-height:25px}.overview-controls,.overview-focus,.overview-events,.overview-sources{padding:24px}.overview-stack-tags span{font-size:18px;line-height:25px}.overview-environment{min-height:58px}.overview-environment small,.overview-services>small,.overview-actions>small{font-size:17px;line-height:24px}.overview-environment button{min-height:46px;font-size:19px}.overview-services>div{min-height:54px}.overview-services span{font-size:18px;line-height:26px}.overview-actions button{min-height:62px;font-size:20px}.overview-pulse{gap:10px}.overview-pipeline{padding:15px 18px}.overview-pipeline>span{font-size:21px;line-height:29px}.overview-pipeline>b{font-size:20px;line-height:27px}.pulse-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.pulse-grid button,.pulse-grid button:last-child{grid-column:auto;min-height:132px;padding:18px}.pulse-grid span{font-size:19px;line-height:27px}.pulse-grid strong{font-size:34px;line-height:42px}.pulse-grid strong em{font-size:18px}.pulse-grid small{font-size:17px;line-height:24px}.overview-urgent{min-height:82px;padding:14px 18px}.overview-urgent b{font-size:17px;line-height:24px}.overview-urgent strong{font-size:21px;line-height:29px}.overview-urgent button{min-height:54px;font-size:19px}.overview-focus{gap:12px}.focus-reference{font-size:18px;line-height:25px}.overview-focus h2{font-size:28px;line-height:36px}.overview-focus>p:not(.focus-reference){font-size:21px;line-height:31px}.overview-events>div>button{min-height:58px}.overview-events>div>button span{font-size:20px;line-height:28px}.overview-events time{font-size:17px;line-height:24px}.overview-footer-link{min-height:50px;font-size:19px}.overview-vault{min-height:86px;padding:16px 22px}.overview-vault b{font-size:23px;line-height:31px}.overview-vault small{font-size:19px;line-height:27px}.overview-sources article{min-height:88px;padding:14px}.source-kind-icon{width:48px;height:48px}.overview-sources article strong{font-size:22px;line-height:30px}.overview-sources article small{font-size:19px;line-height:27px}}
@media(prefers-color-scheme:light){:root:not(.aipi-ide) .overview-back{background:#fae9ec}:root:not(.aipi-ide) .overview-controls,:root:not(.aipi-ide) .overview-focus,:root:not(.aipi-ide) .overview-events,:root:not(.aipi-ide) .overview-sources,:root:not(.aipi-ide) .overview-vault{background:#fff}:root:not(.aipi-ide) .overview-urgent{background:#fff4f5}:root:not(.aipi-ide) .overview-stack-tags span,:root:not(.aipi-ide) .overview-environment button.active,:root:not(.aipi-ide) .source-kind-icon{background:#e9eef2}:root:not(.aipi-ide) .overview-environment,:root:not(.aipi-ide) .overview-services>div,:root:not(.aipi-ide) .pulse-grid button,:root:not(.aipi-ide) .overview-sources>div{background:#f5f7f9}:root:not(.aipi-ide) .overview-pipeline{background:#fff}}

/* Figma-aligned task, milestone and repository setup forms. */
.modal-form-intro{display:grid;gap:7px;padding:2px 0 5px}.modal-form-intro h3{font-size:1.35rem}.modal-form-intro>p:last-child{color:var(--muted)}
.modal-form-section{display:grid;gap:16px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.modal-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;font-size:.78rem;letter-spacing:.055em;text-transform:uppercase}.modal-section-heading small{color:var(--muted);font:inherit}.optional-label{float:right;color:var(--muted);font-weight:400}.field-help{margin-top:-10px;color:var(--muted);font-size:.82rem;line-height:1.5}
.priority-field{min-width:0;margin:0;padding:0;border:0}.priority-field legend{margin-bottom:7px;font-weight:700}.priority-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.priority-option{position:relative}.priority-option input{position:absolute;opacity:0;pointer-events:none}.priority-option span{display:grid;min-height:42px;padding:7px;place-items:center;border:1px solid var(--strong);border-radius:7px;background:var(--raised);color:var(--muted);font-family:"SFMono-Regular",Consolas,monospace;text-transform:capitalize}.priority-option input:checked+span{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 12%,var(--raised));color:var(--text)}.priority-option input:focus-visible+span{outline:2px solid var(--coral);outline-offset:2px}
.modal-advanced{padding:0 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.modal-advanced>summary{min-height:52px}.modal-advanced-body{display:grid;gap:13px;padding-bottom:16px}.modal-guidance{display:grid;gap:5px;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--raised)}.modal-guidance p{color:var(--muted);font-size:.88rem}
.repository-binding-card{display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.repository-binding-card>strong{overflow-wrap:anywhere;font-family:"SFMono-Regular",Consolas,monospace}.repository-binding-card dl{display:grid;gap:1px;margin:0;border:1px solid var(--line);border-radius:7px;background:var(--line);overflow:hidden}.repository-binding-card dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:10px;background:var(--raised)}.repository-binding-card dt{color:var(--muted)}.repository-binding-card dd{min-width:0;margin:0;overflow-wrap:anywhere;text-align:right}.repository-reference{overflow-wrap:anywhere;color:var(--muted);font-size:.82rem}
.task-meta-line{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.task-meta-line span{padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:var(--soft);color:var(--muted);font-size:.8rem;text-transform:capitalize}.priority-urgent{color:var(--red)!important}.priority-high{color:var(--amber)!important}
.milestone-strip{display:grid;gap:10px;margin-bottom:14px}.milestone-strip>.micro-heading{align-items:center}.milestone-strip>.micro-heading button{min-height:36px}.milestone-strip>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px}.milestone-card{display:flex;min-width:0;min-height:82px;align-items:center;justify-content:space-between;gap:12px;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--surface);text-align:left}.milestone-card.active{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 7%,var(--surface))}.milestone-card>span{display:grid;min-width:0;gap:3px}.milestone-card>span:last-child{flex:0 0 auto;text-align:right}.milestone-card strong,.milestone-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.milestone-card small{color:var(--muted);font-size:.77rem}.milestone-card b{color:var(--mint)}
@media(max-width:520px){.priority-options{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-form-section,.repository-binding-card{padding:12px}.repository-binding-card dl>div{grid-template-columns:1fr}.repository-binding-card dd{text-align:left}.milestone-strip>div{grid-template-columns:1fr}}
@media(min-width:768px){.modal-form-intro h3{font-size:28px;line-height:38px}.modal-form-intro>p:last-child{font-size:22px;line-height:32px}.modal-form-section{gap:22px;padding:24px}.modal-section-heading{font-size:20px;line-height:28px}.field-help,.modal-guidance p,.repository-reference{font-size:20px;line-height:30px}.priority-option span{min-height:58px;font-size:21px}.modal-advanced>summary{min-height:68px}.repository-binding-card{padding:24px}.repository-binding-card dl>div{padding:15px}.task-meta-line span{font-size:20px;line-height:27px}.milestone-card{min-height:130px;padding:22px}.milestone-card strong{font-size:23px;line-height:31px}.milestone-card small{font-size:20px;line-height:28px}.milestone-card b{font-size:24px}}
@media(prefers-color-scheme:light){:root:not(.aipi-ide) .modal-form-section,:root:not(.aipi-ide) .repository-binding-card{background:#f5f7f9}:root:not(.aipi-ide) .priority-option span,:root:not(.aipi-ide) .modal-guidance{background:#fff}:root:not(.aipi-ide) .priority-option input:checked+span{background:#fff3ef}:root:not(.aipi-ide) .milestone-card{background:#fff}}

/* Project requirements: purpose → index → task context → agent → verification. */
.overview-delivery-grid{display:grid;grid-template-columns:1fr;gap:8px}.overview-purpose,.overview-milestone{display:grid;align-content:start;gap:10px;padding:14px}.overview-purpose .micro-heading,.overview-milestone .micro-heading{align-items:center}.overview-purpose .quiet-button,.overview-milestone .quiet-button{min-height:34px}.overview-purpose>p,.overview-milestone>p{color:var(--muted);font-size:14px;line-height:21px}.overview-milestone>strong{font-size:17px;line-height:24px}.overview-milestone>small{color:var(--muted);font:450 11px/18px "SFMono-Regular",Consolas,monospace}
.project-workflow{display:grid;gap:7px}.project-workflow>.micro-heading{padding:0 3px}.workflow-stages{display:grid;grid-template-columns:1fr;gap:6px}.workflow-stages>button{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:64px;padding:9px 11px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--text);text-align:left}.workflow-stages>button:hover{border-color:var(--strong);background:var(--raised)}.workflow-stages>button>i{display:grid;width:30px;height:30px;place-items:center;border:1px solid color-mix(in srgb,var(--coral) 42%,var(--line));border-radius:50%;background:color-mix(in srgb,var(--coral) 9%,transparent);color:var(--coral);font:600 12px/1 "SFMono-Regular",Consolas,monospace}.workflow-stages>button>span{display:grid;min-width:0;gap:2px}.workflow-stages small,.workflow-stages strong{overflow-wrap:anywhere}.workflow-stages small{color:var(--muted);font-size:11px;line-height:17px}.workflow-stages strong{font-size:13px;line-height:19px;font-weight:600}.overview-services .service-offline{color:var(--muted)}.overview-services .service-offline i{background:var(--amber)}
@media(min-width:620px){.overview-delivery-grid{grid-template-columns:1.25fr .75fr}}
@media(min-width:768px){.overview-delivery-grid{gap:14px}.overview-purpose,.overview-milestone{min-height:170px;padding:22px}.overview-purpose>p,.overview-milestone>p{font-size:21px;line-height:31px}.overview-milestone>strong{font-size:26px;line-height:35px}.overview-milestone>small{font-size:18px;line-height:26px}.workflow-stages{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.workflow-stages>button{grid-template-columns:42px minmax(0,1fr);min-height:104px;padding:14px}.workflow-stages>button>i{width:38px;height:38px;font-size:18px}.workflow-stages small{font-size:17px;line-height:24px}.workflow-stages strong{font-size:20px;line-height:28px}}
@media(min-width:768px) and (max-width:1099px){.workflow-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-stages>button:last-child{grid-column:1/-1}.pulse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pulse-grid button:last-child{grid-column:1/-1}}
@media(min-width:1100px){.workflow-stages{grid-template-columns:repeat(5,minmax(0,1fr))}.workflow-stages>button:last-child{grid-column:auto}.pulse-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.pulse-grid button:last-child{grid-column:auto}}
@media(prefers-color-scheme:light){:root:not(.aipi-ide) .overview-purpose,:root:not(.aipi-ide) .overview-milestone,:root:not(.aipi-ide) .workflow-stages>button{background:#fff}:root:not(.aipi-ide) .workflow-stages>button:hover{background:#f5f7f9}}

/* Project Tools catalog */
.tools-heading{align-items:center}.tools-health{flex:none;font-size:.72rem;font-weight:760}.tools-health.is-ready{color:var(--mint)}.tools-health.is-offline{color:var(--amber)}
.tool-telemetry{margin-bottom:14px;padding:16px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(150deg,rgba(19,31,32,.96),rgba(13,18,22,.98));box-shadow:var(--shadow)}
.tool-telemetry-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.tool-telemetry-heading>div{display:grid;gap:4px}.tool-telemetry-heading>div strong{font-size:.92rem}.tool-state{padding:4px 7px;border:1px solid rgba(114,224,179,.3);border-radius:999px;color:var(--mint);font-size:.65rem;font-weight:800;letter-spacing:.06em}.tool-state.offline{border-color:rgba(237,192,108,.35);color:var(--amber)}
.tool-telemetry-subtitle{margin-top:8px;color:var(--muted);font-size:.75rem}.tool-telemetry-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.tool-telemetry-grid>div{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(5,9,12,.45)}.tool-telemetry-grid span,.tool-telemetry-grid strong,.tool-telemetry-grid small{display:block}.tool-telemetry-grid span{color:var(--muted);font-size:.67rem}.tool-telemetry-grid strong{overflow:hidden;margin-top:5px;font-size:.96rem;text-overflow:ellipsis;white-space:nowrap}.tool-telemetry-grid small{margin-top:4px;color:var(--muted);font-size:.63rem;line-height:1.35}
.tool-catalog-controls{display:grid;gap:9px;margin:14px 0}.tool-search{display:flex;height:42px;align-items:center;gap:9px;padding:0 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted)}.tool-search>span{font-size:1.15rem}.tool-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font-size:.8rem}.tool-search input:focus-visible{outline:0}
.tool-filter-tabs{display:flex;gap:6px;overflow-x:auto;padding:1px 0 3px;scrollbar-width:thin}.tool-filter-tabs button{flex:none;min-height:34px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font-size:.68rem;font-weight:700;white-space:nowrap}.tool-filter-tabs button.active{border-color:rgba(114,224,179,.4);background:rgba(114,224,179,.1);color:var(--mint)}.tool-filter-tabs button span{margin-left:3px;opacity:.7}.tool-result-count{color:var(--muted);font-size:.68rem}
.tool-groups{display:grid;gap:12px}.tool-group{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,rgba(17,23,28,.96),rgba(11,16,20,.98))}.tool-group-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.tool-group-heading h2{font-size:.86rem}.tool-group-heading>span{flex:none;color:var(--mint);font-size:.58rem;font-weight:800;letter-spacing:.045em;text-align:right}.tool-card-list{display:grid}
.tool-group[aria-label="Pipeline Transforms & Lenses"]{border-color:color-mix(in srgb,var(--mint) 28%,var(--line));background:linear-gradient(155deg,color-mix(in srgb,var(--mint) 5%,var(--surface)),rgba(11,16,20,.98))}.tool-group[aria-label="Pipeline Transforms & Lenses"] .tool-group-heading{border-bottom-color:color-mix(in srgb,var(--mint) 18%,var(--line))}.tool-group-note{margin:0;padding:9px 12px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.67rem;line-height:1.45}.tool-action:disabled{cursor:not-allowed;opacity:.45}
.payload-lens-actions{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0}.payload-lens{min-width:0;color:var(--muted);font-size:.69rem}.payload-lens summary{cursor:pointer;color:var(--blue);font-weight:700}.payload-lens pre{max-height:260px;overflow:auto;margin:7px 0;padding:9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);font: .68rem/1.45 "SFMono-Regular",Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.tool-card-list .tool-card{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;gap:7px;padding:12px;border:0;border-bottom:1px solid rgba(255,255,255,.055);border-radius:0;background:transparent;box-shadow:none}.tool-card-list .tool-card:last-child{border-bottom:0}.tool-card-head{display:flex;width:100%;min-width:0;align-items:center;justify-content:space-between;gap:12px}.tool-name{display:flex;min-width:0;flex:1 1 auto;align-items:center;gap:6px}.tool-name h3{min-width:0;overflow:hidden;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.tool-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--mint);box-shadow:0 0 8px currentColor}.tool-dot.blue{background:#85c7ff}.tool-dot.amber{background:var(--amber)}.tool-dot.coral{background:var(--coral)}
.tool-card-badge{flex:none;padding:3px 5px;border:1px solid rgba(143,200,255,.22);border-radius:5px;color:#8fc8ff;font-size:.54rem;font-weight:750;white-space:nowrap}.tool-action{flex:none;min-height:30px;padding:0 9px;border:1px solid rgba(143,200,255,.35);border-radius:7px;background:rgba(143,200,255,.12);color:#a9d8ff;font-size:.66rem;font-weight:780}.tool-action:hover{border-color:#8fc8ff;background:rgba(143,200,255,.2)}.tool-card-list .tool-card>p{margin:0;color:#c7d0d7;font-size:.7rem;line-height:1.45}.tool-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);font-size:.62rem}.tool-card-foot>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-card-foot small{flex:none;color:var(--mint);font-size:.6rem}
.tool-task-select{display:grid;width:min(100%,420px);max-width:420px;gap:5px;color:var(--muted);font-size:.67rem}.tool-task-select select{width:100%;min-width:0;min-height:34px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font-size:.72rem}.tool-result-output{max-height:55vh;overflow:auto;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#080b0e;color:#dce6ec;font:.72rem/1.5 "SFMono-Regular",Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:560px){.tool-telemetry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-group-heading{align-items:flex-start}.tool-group-heading h2{font-size:.82rem}}
@media(max-width:380px){.tools-heading{align-items:flex-start}.tools-health{font-size:.61rem}.tool-name{gap:4px}.tool-name h3{font-size:.67rem}.tool-card-badge{font-size:.48rem}.tool-card-list .tool-card{padding:10px}.tool-action{padding:0 7px}}
@media(max-width:560px){.tool-card-head{align-items:flex-start;gap:8px}.tool-name{flex-wrap:wrap;align-content:flex-start}.tool-name h3{flex:1 1 100%;white-space:normal;overflow-wrap:anywhere}.tool-card-head>.tool-action{align-self:flex-start}.tool-card-foot{align-items:flex-start}.tool-card-foot>span{white-space:normal;overflow-wrap:anywhere}.tool-card-foot small{text-align:right}}

/* Keep the Tools catalog readable when the dashboard switches themes. */
:root .tool-telemetry,
:root .tool-group{color:var(--text);background:var(--surface)}
:root .tool-telemetry{border-color:var(--line)}
:root .tool-telemetry-grid>div{border-color:var(--line);background:var(--soft)}
:root .tool-telemetry-grid span,
:root .tool-telemetry-grid small,
:root .tool-telemetry-subtitle,
:root .tool-group-note,
:root .tool-task-select{color:var(--muted)}
:root .tool-telemetry-grid strong,
:root .tool-telemetry-heading>div strong,
:root .tool-group-heading h2,
:root .tool-card-list .tool-card,
:root .tool-card-list .tool-card>p{color:var(--text)}
:root .tool-group{border-color:var(--line)}
:root .tool-group-heading,
:root .tool-group-note,
:root .tool-card-list .tool-card{border-color:var(--line)}
:root .tool-card-badge{border-color:color-mix(in srgb,var(--coral) 35%,var(--line));color:var(--coral)}
:root .tool-action{border-color:color-mix(in srgb,var(--coral) 40%,var(--line));background:color-mix(in srgb,var(--coral) 10%,var(--surface));color:var(--coral)}
:root .tool-action:hover{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 16%,var(--surface))}
:root .tool-task-select select{border-color:var(--line);background:var(--raised);color:var(--text);color-scheme:inherit}
:root .tool-result-output{border-color:var(--line);background:var(--soft);color:var(--text)}
:root .payload-lens pre{border-color:var(--line);background:var(--soft);color:var(--text)}
:root .tool-group[aria-label="Pipeline Transforms & Lenses"]{border-color:color-mix(in srgb,var(--mint) 40%,var(--line));background:color-mix(in srgb,var(--mint) 4%,var(--surface))}
:root .tool-group[aria-label="Pipeline Transforms & Lenses"] .tool-group-heading{border-color:color-mix(in srgb,var(--mint) 25%,var(--line))}
:root .api-environment-bar label,
:root .api-environment-bar>div{background:var(--surface);color:var(--text)}
:root .api-environment-bar{border-color:color-mix(in srgb,var(--mint) 35%,var(--line))}
:root .tool-card-foot{display:flex;width:100%;min-width:0;align-items:center;justify-content:space-between;gap:12px}
:root .tool-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
:root .tool-name{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:6px 8px}
:root .tool-name h3{flex:0 1 auto;white-space:normal;overflow-wrap:anywhere}
:root .tool-action{display:inline-flex;min-width:104px;min-height:36px;align-items:center;justify-content:center;gap:7px;padding:0 11px;border:1px solid var(--coral);border-radius:7px;background:var(--coral);color:var(--bg);font-size:.72rem;font-weight:720;line-height:1.2;white-space:nowrap;box-shadow:0 1px 2px color-mix(in srgb,var(--text) 14%,transparent)}
:root .tool-action svg{width:15px;height:15px;flex:none}
:root .tool-action:hover{border-color:var(--coral2);background:var(--coral2);color:var(--bg);filter:brightness(1.06)}
:root .tool-action:focus-visible{outline:2px solid var(--coral);outline-offset:3px}
:root .tool-action:disabled{border-color:var(--strong);background:var(--raised);color:var(--muted);box-shadow:none}
:root .tool-card-badge{display:inline-flex;min-height:19px;align-items:center;padding:1px 6px;border:1px solid var(--line);border-radius:999px;background:var(--soft);color:var(--muted);font-size:.56rem;font-weight:650;letter-spacing:.025em}
:root .tool-group-heading>span{padding:4px 7px;border:1px solid var(--line);border-radius:999px;background:var(--soft);color:var(--muted)}
:root .tool-group[aria-label="Pipeline Transforms & Lenses"] .tool-group-heading>span{border-color:color-mix(in srgb,var(--mint) 30%,var(--line));color:var(--mint)}
:root .tool-card-list .tool-card{gap:9px}
:root .tool-card-list .tool-card>p{max-width:78ch}
:root .tool-task-select{margin-top:2px}
@media(prefers-color-scheme:light){:root:not(.aipi-ide):not([data-theme="dark"]) .tool-action{color:#fff}:root:not(.aipi-ide):not([data-theme="dark"]) .tool-action:hover{color:#fff}}
:root[data-theme="light"] .tool-action{color:#fff}
:root[data-theme="light"] .tool-action:hover{color:#fff}
:root[data-theme="dark"] .tool-action{color:#131313}
:root[data-theme="dark"] .tool-action:hover{color:#131313}
@media(max-width:560px){:root .tool-card-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}:root .tool-name{align-content:flex-start}:root .tool-name h3{flex:1 1 100%}:root .tool-card-foot{align-items:flex-start}:root .tool-card-foot>span{white-space:normal;overflow-wrap:anywhere}:root .tool-card-foot small{text-align:right}}

/* Dedicated task creation workspace. It stays useful at IDE panel widths while
   preserving the larger reading scale used throughout the dashboard. */
.task-create-shell{display:grid;min-width:0;gap:14px;padding-bottom:96px}.task-create-header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;padding:2px}.task-create-header>div{min-width:0}.task-create-header h1{margin:0;font-size:24px;line-height:31px}.task-create-header .eyebrow{margin:0}.task-create-context{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(130px,.65fr);gap:1px;border:1px solid var(--line);border-radius:8px;background:var(--line);overflow:hidden}.task-create-context>span,.task-create-context>label{display:grid;min-width:0;align-content:center;gap:2px;min-height:66px;padding:10px 13px;background:var(--surface)}.task-create-context b{overflow:hidden;color:var(--coral);font:600 14px/21px "SFMono-Regular",Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.task-create-context small,.task-create-context label{color:var(--muted);font-size:12px;line-height:18px}.task-create-context select{width:100%;min-width:0;margin-top:2px;padding:3px 20px 3px 0;border:0;background:transparent;color:var(--text);font:600 14px/21px "SFMono-Regular",Consolas,monospace}
.task-create-card{display:grid;min-width:0;gap:16px;padding:17px;border:1px solid var(--line);border-radius:9px;background:var(--surface);box-shadow:var(--shadow)}.task-create-label{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:1px solid var(--line);color:var(--text);font:600 13px/20px "SFMono-Regular",Consolas,monospace;letter-spacing:.035em;text-transform:uppercase}.task-create-label small{color:var(--muted);font:450 11px/17px "SFMono-Regular",Consolas,monospace;letter-spacing:0}.task-create-label small.success{color:var(--mint)}.task-create-label small.warning{color:var(--amber)}.task-create-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.task-preset-row{display:flex;flex-wrap:wrap;gap:8px}.task-preset-row button{min-height:38px;padding:7px 11px;border:1px solid var(--line);border-radius:6px;background:var(--soft);color:var(--muted);font-size:13px}.task-preset-row button.active{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 11%,var(--surface));color:var(--coral)}.task-spec-input{min-height:150px;resize:vertical;white-space:pre-wrap}.task-scope-empty{display:grid;gap:5px;padding:15px;border:1px dashed var(--strong);border-radius:7px;background:var(--soft)}.task-scope-empty p{margin:0;color:var(--muted);font-size:14px;line-height:22px}.task-scope-list{display:grid;gap:7px}.task-scope-list article{position:relative;display:grid;min-width:0;gap:2px;padding:11px 42px 11px 12px;border:1px solid var(--line);border-radius:6px;background:var(--soft)}.task-scope-list article>span{color:var(--coral);font:500 11px/17px "SFMono-Regular",Consolas,monospace;text-transform:uppercase}.task-scope-list article>strong,.task-scope-list article>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-scope-list article>small{color:var(--muted);font:400 12px/18px "SFMono-Regular",Consolas,monospace}.task-scope-list article>button{position:absolute;top:50%;right:8px;width:32px;height:32px;padding:0;transform:translateY(-50%);border:0;border-radius:5px;background:var(--raised);color:var(--muted)}
.task-agent-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.task-agent-modes label{position:relative;display:grid;min-width:0;align-content:start;gap:4px;min-height:94px;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--soft);cursor:pointer}.task-agent-modes label.active{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 9%,var(--surface))}.task-agent-modes input{position:absolute;top:10px;right:10px}.task-agent-modes strong{padding-right:19px;font-size:14px;line-height:21px}.task-agent-modes small{color:var(--muted);font-size:12px;line-height:18px}.task-branch-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px 12px;border:1px solid var(--line);border-radius:6px;background:var(--soft)}.task-branch-row>span{color:var(--muted);font-size:12px}.task-branch-row>strong{overflow:hidden;font:550 13px/20px "SFMono-Regular",Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.task-branch-row>small{color:var(--muted);font-size:11px;line-height:17px}.verification-gate-list{display:grid;gap:8px}.verification-gate-list>label{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--soft);cursor:pointer}.verification-gate-list input{width:20px;height:20px;margin-top:2px;accent-color:var(--coral)}.verification-gate-list span{display:grid;gap:2px}.verification-gate-list strong{font-size:14px;line-height:21px}.verification-gate-list small{color:var(--muted);font-size:12px;line-height:19px}.task-create-actions{position:sticky;z-index:5;bottom:72px;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:8px;padding:10px;border:1px solid var(--line);border-radius:9px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 -8px 24px rgba(0,0,0,.12);backdrop-filter:blur(12px)}
.task-scope-picker{display:grid;max-height:min(55dvh,560px);gap:7px;overflow:auto}.task-scope-option{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:10px;padding:11px;border:1px solid var(--line);border-radius:7px;background:var(--soft);cursor:pointer}.task-scope-option input{width:18px;height:18px;margin-top:2px;accent-color:var(--coral)}.task-scope-option span{display:grid;min-width:0;gap:2px}.task-scope-option strong,.task-scope-option small{overflow-wrap:anywhere}.task-scope-option small{color:var(--muted);font:400 12px/18px "SFMono-Regular",Consolas,monospace}
.task-criteria-list{display:grid;gap:8px;margin-top:8px}.task-criteria-row{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;cursor:pointer}.task-criteria-row>input[type="checkbox"]{width:18px;height:18px;margin:0;accent-color:var(--mint)}.task-criteria-row>.field{min-width:0}
.task-plan-contract-suggestion{max-width:100%;padding:8px 10px;border:1px solid color-mix(in srgb,var(--mint) 45%,var(--line));border-radius:7px;background:color-mix(in srgb,var(--mint) 9%,var(--surface));color:var(--mint);font-size:13px;text-align:left;overflow-wrap:anywhere;cursor:pointer}
@media(max-width:520px){.task-create-shell{gap:11px}.task-create-header{grid-template-columns:40px minmax(0,1fr)}.task-create-header>.status-chip{grid-column:2;justify-self:start}.task-create-context{grid-template-columns:1fr}.task-create-context>span,.task-create-context>label{min-height:54px}.task-create-card{gap:14px;padding:14px}.task-create-grid,.task-agent-modes{grid-template-columns:1fr}.task-agent-modes label{min-height:76px}.task-branch-row{grid-template-columns:1fr}.task-branch-row>small{margin-top:-4px}.task-create-actions{bottom:68px}.task-create-actions button{padding-right:10px;padding-left:10px}.task-preset-row button{flex:1 1 auto}}
@media(min-width:768px){.task-create-shell{gap:20px;padding-bottom:120px}.task-create-header{grid-template-columns:58px minmax(0,1fr) auto}.task-create-header h1{font-size:34px;line-height:42px}.task-create-context>span,.task-create-context>label{min-height:88px;padding:14px 18px}.task-create-context b,.task-create-context select{font-size:20px;line-height:28px}.task-create-context small,.task-create-context label{font-size:17px;line-height:24px}.task-create-card{gap:22px;padding:24px}.task-create-label{font-size:20px;line-height:28px}.task-create-label small{font-size:17px;line-height:24px}.task-preset-row button{min-height:52px;font-size:19px}.task-scope-empty{padding:22px}.task-scope-empty p{font-size:20px;line-height:30px}.task-scope-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.task-scope-list article{padding:16px 48px 16px 16px}.task-scope-list article>span,.task-scope-list article>small{font-size:17px;line-height:24px}.task-scope-list article>strong{font-size:20px;line-height:28px}.task-agent-modes label{min-height:132px;padding:18px}.task-agent-modes strong{font-size:20px;line-height:28px}.task-agent-modes small{font-size:18px;line-height:26px}.task-branch-row{padding:16px}.task-branch-row>span,.task-branch-row>small{font-size:17px;line-height:25px}.task-branch-row>strong{font-size:20px;line-height:28px}.verification-gate-list>label{padding:18px}.verification-gate-list strong{font-size:20px;line-height:28px}.verification-gate-list small{font-size:18px;line-height:26px}.task-create-actions{bottom:84px;padding:14px}.task-scope-option{padding:16px}.task-scope-option strong{font-size:20px;line-height:28px}.task-scope-option small{font-size:17px;line-height:25px}}
@media(prefers-color-scheme:light){:root:not(.aipi-ide) .task-create-context>span,:root:not(.aipi-ide) .task-create-context>label,:root:not(.aipi-ide) .task-create-card{background:#fff}:root:not(.aipi-ide) .task-preset-row button,:root:not(.aipi-ide) .task-scope-empty,:root:not(.aipi-ide) .task-scope-list article,:root:not(.aipi-ide) .task-agent-modes label,:root:not(.aipi-ide) .task-branch-row,:root:not(.aipi-ide) .verification-gate-list>label,:root:not(.aipi-ide) .task-scope-option{background:#f5f7f9}:root:not(.aipi-ide) .task-create-actions{background:rgba(255,255,255,.94)}}

/* Full settings workspace. Controls use the same reading scale and 42–48 px
   targets as the project dashboard instead of the former compact modal. */
.route-settings{padding-bottom:0}.route-settings .chat-launcher{display:none}.route-settings .route-view{padding-bottom:48px}.settings-page{display:grid;min-width:0;gap:24px}.settings-page-header{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px}.settings-page-header h1{font-size:28px;line-height:36px}.settings-back{display:grid;width:46px;height:46px;padding:0;place-items:center;border:1px solid color-mix(in srgb,var(--coral) 55%,var(--line));border-radius:5px;background:color-mix(in srgb,var(--coral) 10%,var(--surface));color:var(--coral);font-size:24px}.settings-connection{display:flex;min-height:38px;align-items:center;gap:8px;padding:7px 11px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--muted);font:450 12px/18px "SFMono-Regular",Consolas,monospace}.settings-connection i{width:7px;height:7px;border-radius:50%;background:var(--red)}.settings-connection.connected i{background:var(--mint);box-shadow:0 0 0 3px color-mix(in srgb,var(--mint) 12%,transparent)}
.settings-tabs{position:sticky;z-index:7;top:72px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:5px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(16px)}.settings-tabs button{min-width:0;min-height:44px;padding:7px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:14px;font-weight:500}.settings-tabs button.active{background:var(--raised);color:var(--text)}
.settings-profile-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:start;gap:14px;padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);scroll-margin-top:140px}.settings-avatar{display:grid;width:58px;height:58px;place-items:center;border-radius:9px;background:var(--raised);color:var(--coral);font:550 17px/1 "SFMono-Regular",Consolas,monospace}.settings-profile-copy{display:grid;min-width:0;gap:3px}.settings-profile-copy .status-chip{justify-self:start}.settings-profile-copy h2{margin-top:5px;font-size:20px;line-height:28px}.settings-profile-copy>strong{overflow:hidden;color:var(--coral);font:500 13px/20px "SFMono-Regular",Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.settings-profile-copy p{overflow:hidden;color:var(--muted);font-size:13px;line-height:20px;text-overflow:ellipsis;white-space:nowrap}.settings-profile-actions{display:flex;align-self:center;gap:8px}.settings-profile-actions button{min-height:42px}.settings-profile-actions .cloud-action{border-color:color-mix(in srgb,var(--coral) 60%,var(--line));color:var(--coral)}
.settings-group{display:grid;gap:9px;scroll-margin-top:140px}.settings-group-heading{display:flex;min-height:24px;align-items:center;justify-content:space-between;gap:12px;padding:0 4px;color:var(--muted);font:550 13px/20px "SFMono-Regular",Consolas,monospace;letter-spacing:.045em;text-transform:uppercase}.settings-group-heading b{font-size:12px;font-weight:500;letter-spacing:0;text-transform:none}.settings-list,.settings-preferences-card{overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.settings-list article{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:82px;padding:14px 16px}.settings-list article+article,.settings-preference+.settings-preference{border-top:1px solid var(--line)}.settings-item-icon{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:8px;background:var(--raised);color:var(--mint);font:550 11px/1 "SFMono-Regular",Consolas,monospace}.settings-list article>div{display:grid;min-width:0;gap:3px}.settings-list article strong{font-size:15px;line-height:22px;font-weight:600}.settings-list article small{color:var(--muted);font-size:13px;line-height:20px}.settings-list article>button{min-height:40px}.settings-list article>.status-chip{justify-self:end}.settings-preference{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;min-height:96px;padding:16px}.settings-preference>div:first-child{display:grid;gap:3px}.settings-preference strong{font-size:15px;line-height:22px}.settings-preference small{color:var(--muted);font-size:13px;line-height:20px}.theme-choice,.preference-choice{display:grid;grid-template-columns:repeat(3,minmax(76px,1fr));gap:3px;padding:4px;border:1px solid var(--line);border-radius:7px;background:var(--soft)}.preference-choice{grid-template-columns:repeat(2,minmax(105px,1fr))}.theme-choice button,.preference-choice button{min-height:38px;padding:6px 12px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:13px}.theme-choice button.active,.preference-choice button.active{background:var(--raised);color:var(--text)}.theme-choice button:disabled{cursor:not-allowed}.preference-value{padding:7px 10px;border:1px solid var(--line);border-radius:5px;background:var(--raised);color:var(--muted);font:450 12px/18px "SFMono-Regular",Consolas,monospace}.settings-session,.settings-organization{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.settings-session>div{display:grid;gap:2px}.settings-session strong{font-size:14px}.settings-session small{color:var(--mint);font:450 12px/18px "SFMono-Regular",Consolas,monospace}.settings-organization{grid-template-columns:minmax(0,1fr) auto;color:var(--muted)}.settings-organization button{color:var(--coral)}
.header-settings,.header-tool{width:42px;height:42px!important;border-radius:8px!important}.header-settings .ui-icon{width:18px;height:18px}
@media(max-width:620px){.settings-page{gap:20px}.settings-page-header{grid-template-columns:42px minmax(0,1fr)}.settings-page-header h1{font-size:24px;line-height:31px}.settings-back{width:42px;height:42px}.settings-connection{grid-column:1/-1;justify-self:stretch}.settings-tabs{top:62px}.settings-tabs button{min-height:42px;padding:5px 2px;font-size:12px}.settings-profile-card{grid-template-columns:52px minmax(0,1fr);padding:16px}.settings-avatar{width:52px;height:52px}.settings-profile-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;width:100%}.settings-list article{grid-template-columns:40px minmax(0,1fr) auto;gap:10px;padding:13px}.settings-item-icon{width:40px;height:40px}.settings-list article small{font-size:12px;line-height:19px}.settings-list article>button{padding-right:10px;padding-left:10px}.settings-preference{grid-template-columns:1fr;gap:11px;min-height:0}.theme-choice,.preference-choice{width:100%}.preference-value{justify-self:start}.settings-session{grid-template-columns:auto minmax(0,1fr)}.settings-session button{grid-column:2;justify-self:start}.settings-organization{grid-template-columns:1fr}.settings-organization button{justify-self:start}.header-settings,.header-tool{width:38px;height:38px!important}}
@media(min-width:768px){.settings-page{gap:30px}.settings-page-header h1{font-size:38px;line-height:46px}.settings-tabs button{min-height:56px;font-size:19px}.settings-profile-card{grid-template-columns:76px minmax(0,1fr) auto;gap:20px;padding:28px}.settings-avatar{width:76px;height:76px;font-size:22px}.settings-profile-copy h2{font-size:27px;line-height:36px}.settings-profile-copy>strong,.settings-profile-copy p{font-size:18px;line-height:27px}.settings-profile-actions button{min-height:54px;font-size:18px}.settings-group-heading{font-size:19px;line-height:27px}.settings-group-heading b{font-size:17px}.settings-list article{grid-template-columns:58px minmax(0,1fr) auto;min-height:112px;padding:20px 24px}.settings-item-icon{width:58px;height:58px;font-size:16px}.settings-list article strong,.settings-preference strong{font-size:21px;line-height:29px}.settings-list article small,.settings-preference small{font-size:18px;line-height:27px}.settings-list article>button{min-height:52px;font-size:18px}.settings-preference{min-height:126px;padding:22px 24px}.theme-choice button,.preference-choice button{min-height:50px;font-size:18px}.preference-value{font-size:17px;line-height:25px}.settings-session,.settings-organization{padding:22px}.settings-session strong,.settings-organization{font-size:20px}.settings-session small{font-size:17px;line-height:25px}}

/* Browser theme overrides. IDE webviews continue to inherit VS Code/Cursor. */
:root[data-theme="light"]{--bg:#f3f5f7;--surface:#fff;--raised:#e9eef2;--soft:#f5f7f9;--line:#c7d0d7;--strong:#8998a4;--text:#15212b;--muted:#4c5b67;--coral:#075f86;--coral2:#054a69;--mint:#08704f;--red:#a52639;--amber:#754800;--shadow:0 1px 3px rgba(30,50,65,.15)}
:root[data-theme="light"] body{background:var(--bg)}:root[data-theme="light"] .mobile-header{border-color:var(--line);background:rgba(255,255,255,.98);box-shadow:0 1px 4px rgba(25,42,55,.14)}:root[data-theme="light"] .header-brand small{color:#425462}:root[data-theme="light"] .header-settings,:root[data-theme="light"] .header-tool{border:1px solid var(--line)!important;background:#e7edf1!important;color:#2f414f!important}:root[data-theme="light"] .bottom-nav{border-color:var(--line);background:rgba(255,255,255,.98)}:root[data-theme="light"] .nav-item.active{background:#dceef7;color:#075f86}:root[data-theme="light"] .figma-card,:root[data-theme="light"] .settings-profile-card,:root[data-theme="light"] .settings-list,:root[data-theme="light"] .settings-preferences-card,:root[data-theme="light"] .settings-session,:root[data-theme="light"] .settings-organization,:root[data-theme="light"] .task-create-card{background:#fff}:root[data-theme="light"] .secondary-button{border-color:var(--strong);background:#e8edf1;color:var(--text)}:root[data-theme="light"] .primary-button,:root[data-theme="light"] .run-button{background:var(--coral);color:#fff}:root[data-theme="light"] .header-settings .ui-icon,:root[data-theme="light"] .header-tool .ui-icon,:root[data-theme="light"] .nav-item .ui-icon{filter:brightness(0);opacity:.68}:root[data-theme="light"] .settings-tabs{background:rgba(243,245,247,.94)}
:root[data-theme="dark"]{--bg:#131313;--surface:#181818;--raised:#202020;--soft:#1b1b1c;--line:#2b2b2b;--strong:#3a3a3a;--text:#e5e2e1;--muted:#87929a;--coral:#38bdf8;--coral2:#25aee5;--mint:#4edea3;--red:#ffb4ab;--amber:#fbbf24;--shadow:0 1px 2px rgba(0,0,0,.18)}
:root[data-theme="dark"] body{background:var(--bg)}:root[data-theme="dark"] .mobile-header{border-color:#000;background:rgba(0,0,0,.94);box-shadow:0 1px 8px rgba(0,0,0,.35)}:root[data-theme="dark"] .header-brand small{color:#bdc8d1}:root[data-theme="dark"] .header-settings,:root[data-theme="dark"] .header-tool{border:0!important;background:#2a2a2a!important;color:var(--text)!important}:root[data-theme="dark"] .bottom-nav{border-color:var(--line);background:rgba(19,19,19,.96)}:root[data-theme="dark"] .nav-item{color:var(--muted)}:root[data-theme="dark"] .nav-item.active{background:#2a2a2a;color:#8ed5ff}:root[data-theme="dark"] .figma-card,:root[data-theme="dark"] .settings-profile-card,:root[data-theme="dark"] .settings-list,:root[data-theme="dark"] .settings-preferences-card,:root[data-theme="dark"] .settings-session,:root[data-theme="dark"] .settings-organization,:root[data-theme="dark"] .task-create-card{background:var(--surface)}:root[data-theme="dark"] .secondary-button{border-color:var(--line);background:var(--raised);color:var(--text)}:root[data-theme="dark"] .primary-button,:root[data-theme="dark"] .run-button{background:var(--coral);color:#002b3d}:root[data-theme="dark"] .header-settings .ui-icon,:root[data-theme="dark"] .header-tool .ui-icon,:root[data-theme="dark"] .nav-item .ui-icon{filter:none;opacity:.85}:root[data-theme="dark"] .settings-tabs{background:rgba(19,19,19,.94)}

/* Readability refinement: preserve the generous type scale while giving text
   enough horizontal space and using prose-friendly labels. */
@media(prefers-color-scheme:dark){:root:not(.aipi-ide):not([data-theme="light"]){--muted:#aab2bb;--line:#353535;--text:#f0eeee}}
:root[data-theme="dark"]{--muted:#aab2bb;--line:#353535;--text:#f0eeee}
.micro-heading,.overview-environment small,.overview-services>small,.overview-actions>small{font-family:inherit;letter-spacing:.012em;text-transform:none}.micro-heading{font-weight:650}.overview-environment small,.overview-services>small,.overview-actions>small{font-weight:600}.route-project .route-view{gap:22px}.overview-controls{gap:16px}.overview-purpose,.overview-milestone{gap:13px}.overview-purpose>p,.overview-milestone>p{max-width:72ch}.workflow-stages{gap:10px}.workflow-stages>button{border-radius:7px}.workflow-stages small,.workflow-stages strong{overflow-wrap:normal;word-break:normal;hyphens:none}.workflow-stages small{font-weight:520}.workflow-stages strong{font-weight:650}.overview-pulse{gap:12px}.overview-pipeline{border-radius:7px}.pulse-grid{gap:10px}.pulse-grid button{border-radius:7px}.pulse-grid span{font-weight:520}.pulse-grid small{align-self:end}.overview-focus,.overview-events,.overview-sources,.overview-vault{border-radius:7px}.overview-focus>p:not(.focus-reference){-webkit-line-clamp:3}.overview-footer-link{font-weight:600}.overview-actions button,.workflow-stages>button,.pulse-grid button{transition:border-color .15s ease,background .15s ease,transform .15s ease}.workflow-stages>button:hover,.pulse-grid button:hover{border-color:color-mix(in srgb,var(--coral) 48%,var(--line));background:color-mix(in srgb,var(--coral) 5%,var(--surface))}.workflow-stages>button:active,.pulse-grid button:active{transform:translateY(1px)}
@media(min-width:768px) and (max-width:1279px){.overview-delivery-grid{grid-template-columns:1fr}.overview-purpose,.overview-milestone{min-height:0}.workflow-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow-stages>button{min-height:116px}.workflow-stages>button:last-child{grid-column:1/-1}.pulse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pulse-grid button,.pulse-grid button:last-child{grid-column:auto;min-height:124px}.pulse-grid button:last-child{grid-column:1/-1}.overview-actions>div{gap:10px}}
@media(min-width:1280px){.overview-delivery-grid{grid-template-columns:1.35fr .65fr}.workflow-stages{grid-template-columns:repeat(5,minmax(0,1fr))}.workflow-stages>button:last-child{grid-column:auto}.pulse-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.pulse-grid button,.pulse-grid button:last-child{grid-column:auto}}
@media(max-width:767px){.micro-heading{font-size:13px;line-height:20px}.overview-actions>div{grid-template-columns:1fr}.overview-actions button{min-height:48px}.workflow-stages>button{min-height:74px}.pulse-grid{grid-template-columns:1fr 1fr}.pulse-grid button{min-height:92px}.pulse-grid button:last-child{grid-column:1/-1}.overview-pipeline{grid-template-columns:1fr}.overview-pipeline>b{justify-self:start}.overview-pipeline>.micro-progress{grid-column:1}.overview-milestone .micro-heading,.overview-purpose .micro-heading{align-items:flex-start}}

/* Desktop accessibility baseline. This block is intentionally last so all
   dashboard routes share one readable scale while the 320–420px IDE panel
   keeps the compact rules above. */
@media(min-width:768px){
  body{font-size:18px;line-height:1.68;font-weight:400}
  .route-view,.route-home .route-view,.route-project .route-view,.route-tasks .route-view,.route-task .route-view,.route-settings .route-view{width:96%;max-width:96%;padding-right:28px;padding-left:28px}
  h1{font-weight:650}h2,.section-heading h2,.inline-heading h2,.card-title-row>span,.settings-group-heading,.task-create-label,.micro-heading{font-size:21px;line-height:1.48;font-weight:600}h3{font-size:19px;line-height:1.55;font-weight:600}
  strong,b{font-weight:600}
  p,li,dd,dt,label,summary,td,th{line-height:1.68}
  p+p{margin-top:.85em}ul,ol{line-height:1.68}li+li{margin-top:.42em}
  .supporting-copy,.modal-intro,.page-heading p:last-child,.project-card-copy small,.workspace-title small,.project-context-title small,.revision-line,.task-row-description,.overview-focus>p:not(.focus-reference),.overview-purpose>p,.overview-milestone>p{font-size:17px;line-height:1.68;font-weight:400}
  .project-card-copy strong,.workspace-title strong,.project-context-title strong,.task-row-title strong,.overview-identity>strong,.settings-profile-copy h2{font-size:21px;line-height:1.48;font-weight:600}
  .project-card-meta,.source-row div span,.api-row-main div span,.run-row div div span,.implementation-path code,.context-artifact small,.context-artifact p,.overview-identity>small,.overview-identity time{font-size:17px;line-height:1.62;font-weight:400}
  button,input,select,textarea{font-size:18px;line-height:1.55;font-weight:500}
  .primary-button,.secondary-button,.quiet-button,.back-button,.remove-button,.run-button,.full-button{min-height:56px;padding:12px 20px;font-size:18px;line-height:1.55;font-weight:550}
  .ui-icon{width:22px;height:22px}.primary-button .ui-icon,.secondary-button .ui-icon,.quiet-button .ui-icon,.back-button .ui-icon,.remove-button .ui-icon,.run-button .ui-icon,.full-button .ui-icon{width:24px;height:24px}
  .header-settings,.header-tool{width:50px;height:50px!important}.header-settings .ui-icon,.header-tool .ui-icon{width:24px;height:24px}
  .figma-project-row .project-card-arrow,.modal-close,.settings-back{width:50px;height:50px}.figma-project-row .project-card-arrow .ui-icon,.modal-close .ui-icon,.settings-back .ui-icon{width:24px;height:24px}
  .section-block,.figma-card,.task-create-card{padding:28px}.section-heading,.inline-heading{gap:18px}.section-block>.supporting-copy{margin-top:18px}
  .project-card.figma-project-row{min-height:154px;padding:24px}.workspace-card,.privacy-card,.project-context-card{padding:26px}
  .task-row-v2{min-height:158px;padding:24px}.task-row-main{gap:10px}.task-row-tags{gap:8px;margin-top:3px}
  .task-row-tags i,.tag,.status-chip,.status-tag{font-size:15px;line-height:1.45;font-weight:500}
  .source-row,.variable-summary>div,.task-list>div,.iteration-list>div{min-height:68px;padding:16px}
  .api-row,.run-row{min-height:112px;padding:19px 20px}
  .configuration-list summary{min-height:76px;padding:14px 20px}
  .finding-list button{min-height:62px;padding:13px 16px}
  .field,.text-input,.code-input,.goal-input,.kv-row input:not([type=checkbox]),.assertion-row input,.assertion-row select,.source-root-row input,.source-root-row select{min-height:56px;padding-top:13px;padding-bottom:13px}
  pre,.code-input,.context-excerpt,.command-snippet,.prompt-box{font-size:17px;line-height:1.75}
  pre,.context-excerpt,.command-snippet,.prompt-box{padding:18px}
  .acceptance-list,.check-list,.task-findings,.external-link-list,.verification-history{gap:12px}.acceptance-list li,.coverage-message p{font-size:18px;line-height:1.68}
  .bottom-nav{min-height:86px}.bottom-nav .nav-item{min-height:64px;font-size:17px;line-height:1.5;font-weight:500}.bottom-nav .nav-item .ui-icon{width:24px;height:24px}
  .chat-launcher{min-height:52px;padding:11px 18px;font-size:17px;font-weight:550}.chat-launcher .ui-icon{width:22px;height:22px}
}

/* Milestone-first task navigation. */
.milestone-home{display:grid;gap:12px}.milestone-strip>.micro-heading{display:flex;justify-content:space-between}.milestone-strip>.micro-heading b{color:var(--muted);font-weight:500}.milestone-home>div:last-child{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:10px}
.milestone-route-card{display:grid;grid-template-columns:minmax(0,1fr) auto;min-height:132px;padding:18px;text-align:left}.milestone-route-card>span:first-child{gap:5px}.milestone-route-card>span:last-child{align-content:center;gap:2px}.milestone-route-card strong{font-size:18px;line-height:1.45;font-weight:600}.milestone-route-card small{font-size:14px;line-height:1.5;font-weight:400}.milestone-index{color:var(--coral);font-size:12px;line-height:1.4;text-transform:uppercase}
.milestone-progress-track{display:block;width:100%;height:6px;margin-top:8px;overflow:hidden;border-radius:999px;background:var(--raised)}.milestone-progress-track>i{display:block;height:100%;border-radius:inherit;background:var(--mint)}
.milestone-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;padding:0!important;background:var(--line)}.milestone-summary>div{display:grid;align-content:start;gap:4px;min-height:108px;padding:16px;background:var(--surface)}.milestone-summary span{color:var(--muted);font-size:13px}.milestone-summary strong{font-size:20px;line-height:1.4}.milestone-summary small{color:var(--muted);font-size:13px;line-height:1.45}.milestone-summary>.milestone-progress-track{grid-column:1/-1;height:8px;margin:0;border-radius:0;background:var(--raised)}
.milestone-task-toolbar{grid-template-columns:minmax(0,1fr) auto}.milestone-task-toolbar button{align-self:end}.unassigned-task-section .task-list-v2{margin-top:18px}.milestone-create-card{max-width:920px;width:100%;justify-self:center}
@media(max-width:767px){.milestone-home>div:last-child{grid-template-columns:1fr}.milestone-route-card{grid-template-columns:minmax(0,1fr) auto;min-height:112px;padding:14px}.milestone-summary{grid-template-columns:1fr}.milestone-summary>.milestone-progress-track{grid-column:1}.milestone-task-toolbar{grid-template-columns:1fr}.milestone-task-toolbar button{grid-column:1}.milestone-detail-heading{align-items:flex-start}}
@media(min-width:768px){.milestone-route-card{min-height:164px;padding:24px}.milestone-route-card strong{font-size:21px;line-height:1.48}.milestone-route-card small{font-size:17px;line-height:1.6}.milestone-index{font-size:15px}.milestone-summary>div{min-height:134px;padding:22px}.milestone-summary span,.milestone-summary small{font-size:17px;line-height:1.6}.milestone-summary strong{font-size:24px}.milestone-task-toolbar{padding:20px}.milestone-create-card{padding:30px}.milestone-home-heading,.milestone-detail-heading{margin-bottom:28px}}

/* Project management routes linked from Project Home. */
.project-management-page{display:grid;min-width:0;gap:16px}.project-management-header{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px}.project-management-header>div{min-width:0}.project-management-header h1{overflow:hidden;margin:2px 0 0;font-size:26px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.project-management-header p:last-child{margin-top:4px;color:var(--muted)}
.project-management-tabs{position:sticky;z-index:7;top:70px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;overflow-x:auto;padding:5px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(16px)}.project-management-tabs button{min-width:112px;min-height:44px;padding:7px 10px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:14px;font-weight:500}.project-management-tabs button.active{background:var(--raised);color:var(--text)}
.project-management-content{display:grid;gap:14px}.management-card{display:grid;min-width:0;gap:16px;padding:18px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);container-type:inline-size}.management-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.management-card-heading>div{min-width:0;flex:1 1 200px}.management-card-heading h2{margin-top:3px}.management-heading-actions,.management-actions{display:flex;flex-wrap:wrap;gap:8px}.management-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.management-actions{padding-top:2px}
.management-resource-list,.environment-management-list,.vault-variable-list,.mesh-service-list,.policy-management-list{display:grid;gap:8px}
.source-registry-card .management-resource-list article,.vault-variable-list article,.policy-management-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:68px;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--soft)}
.source-registry-card .management-resource-list article>div,.vault-variable-list article>div,.policy-management-list article>div{display:grid;min-width:0;gap:3px}
.management-resource-list strong,.management-resource-list small,.management-resource-list p,.vault-variable-list strong,.vault-variable-list small,.policy-management-list strong,.policy-management-list small{overflow-wrap:anywhere;word-break:break-word}
.management-resource-list p{margin:0;color:var(--muted);font-size:13px;line-height:1.4}
.management-resource-list small,.vault-variable-list small,.policy-management-list small{color:var(--muted);font-size:13px;line-height:1.5}
.vault-variable-list article>span:first-child{display:grid;width:38px;height:38px;place-items:center;border-radius:6px;background:var(--raised);color:var(--coral);font-family:"SFMono-Regular",Consolas,monospace}
.resource-git-row{display:flex;flex-direction:column;align-items:stretch;gap:10px;min-height:auto;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--soft);box-sizing:border-box}
.resource-git-info{display:grid;min-width:0;width:100%;gap:4px}
.resource-git-info strong{font-size:14px;line-height:1.4;color:var(--text);overflow-wrap:anywhere;word-break:break-word}
.resource-git-info p{margin:0;font-size:13px;line-height:1.4;color:var(--muted);overflow-wrap:anywhere;word-break:break-word}
.resource-git-info small{font-size:12px;line-height:1.4;color:var(--muted);overflow-wrap:anywhere;word-break:break-word}
.management-resource-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-start;width:100%;box-sizing:border-box}
.management-resource-actions button,.management-resource-actions .secondary-button,.management-resource-actions .primary-button{flex:0 1 auto;min-height:34px;padding:0 12px;font-size:13px;white-space:nowrap;max-width:100%}
.management-source-identity{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-height:auto;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}
.management-source-identity>div{display:grid;min-width:0;width:100%;gap:3px}
.management-title-chip-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:3px}
.management-title-chip-row h2{margin:0}
@container (min-width:540px){.resource-git-row{flex-direction:row;align-items:center;justify-content:space-between}.resource-git-info{flex:1 1 auto;width:auto}.management-resource-actions{flex:0 0 auto;width:auto;justify-content:flex-end}}
@media (min-width:768px){:root:not(.aipi-ide) .resource-git-row{flex-direction:row;align-items:center;justify-content:space-between}:root:not(.aipi-ide) .resource-git-info{flex:1 1 auto;width:auto}:root:not(.aipi-ide) .management-resource-actions{flex:0 0 auto;width:auto;justify-content:flex-end}}
.vault-security-card{overflow:hidden}.vault-loading,.vault-unavailable,.vault-setup{display:flex;min-height:76px;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.vault-loading .connection-dot{flex:0 0 auto}.vault-unavailable,.vault-setup{display:grid}.vault-unavailable strong{color:var(--danger)}.vault-unavailable p,.vault-setup p{margin:0;color:var(--muted)}.vault-crypto-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.vault-crypto-summary>div{display:grid;gap:4px;min-height:106px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.vault-crypto-summary span,.vault-key-identity span{color:var(--muted);font-size:13px}.vault-crypto-summary strong{font-size:18px}.vault-crypto-summary small,.vault-key-identity small{color:var(--muted);line-height:1.5}.vault-key-identity{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.vault-key-identity>div{display:grid;min-width:0;gap:6px}.vault-key-identity code,.vault-fingerprint{overflow-wrap:anywhere;color:var(--coral);font:500 14px/1.65 "SFMono-Regular",Consolas,monospace}.vault-crypto-flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;counter-reset:vault-step}.vault-crypto-flow li{position:relative;display:grid;gap:6px;min-height:112px;padding:16px 16px 16px 54px;border:1px solid var(--line);border-radius:8px;background:var(--soft);counter-increment:vault-step}.vault-crypto-flow li:before{position:absolute;top:16px;left:16px;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:var(--coral);color:#071018;font-weight:750;content:counter(vault-step)}.vault-crypto-flow span{color:var(--muted);line-height:1.55}
@media(max-width:767px){.vault-crypto-summary,.vault-crypto-flow{grid-template-columns:1fr}.vault-key-identity{align-items:stretch;flex-direction:column}.vault-key-identity .status-chip{align-self:flex-start}.vault-management-page .management-heading-actions{width:100%}.vault-management-page .management-heading-actions button{flex:1}}
.management-facts{display:grid;gap:1px;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line)}.management-facts>div{display:grid;grid-template-columns:minmax(130px,.45fr) minmax(0,1fr);gap:14px;padding:12px;background:var(--soft)}.management-facts dt{color:var(--muted)}.management-facts dd{margin:0;text-align:right;overflow-wrap:anywhere}
.git-binding-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--line)}.git-binding-summary>div{display:grid;min-width:0;gap:5px;padding:14px;background:var(--soft)}.git-binding-summary span,.publish-route span{color:var(--muted);font-size:13px}.git-binding-summary strong{overflow-wrap:anywhere;font-weight:550}.git-binding-form{display:grid;gap:14px}.publish-route{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.publish-route>div{display:grid;min-width:0;gap:4px}.publish-route strong,.publish-route small{overflow-wrap:anywhere}.publish-route small{color:var(--muted)}.publish-route>span{color:var(--coral);font-size:22px}.publish-blocker{padding:14px;border:1px solid color-mix(in srgb,var(--amber) 50%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--amber) 8%,var(--surface))}.publish-blocker p{margin-top:5px;color:var(--muted)}.publish-item-list{display:grid;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line)}.publish-item-list article{display:flex;gap:12px;padding:11px 13px;background:var(--soft)}.publish-item-list code{flex:0 0 auto;color:var(--coral)}.publish-item-list span{min-width:0;overflow-wrap:anywhere}.publish-confirm{padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}
.environment-management-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.environment-management-list>button{display:flex;min-height:82px;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--line);border-radius:7px;background:var(--soft);text-align:left}.environment-management-list>button.active{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 8%,var(--surface))}.environment-management-list>button>span:first-child{display:grid;gap:4px}.environment-management-list small{color:var(--muted)}
.mesh-service-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px 12px;min-height:82px;padding:14px;border:1px solid var(--line);border-radius:7px;background:var(--soft)}.mesh-service-list article>div{display:grid;min-width:0;gap:3px}.mesh-service-list code{overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.mesh-service-list article>small{grid-column:2/-1;color:var(--muted)}.management-policy-list{padding-left:24px}.overview-management-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(max-width:767px){.project-management-header{grid-template-columns:42px minmax(0,1fr)}.project-management-header>.settings-connection{grid-column:1/-1;justify-self:stretch}.project-management-header h1{font-size:22px}.project-management-tabs{top:60px;grid-template-columns:repeat(5,minmax(112px,1fr))}.management-form-grid,.git-binding-summary{grid-template-columns:1fr}.management-card-heading{align-items:stretch;flex-direction:column}.management-heading-actions{display:grid;grid-template-columns:1fr 1fr}.management-facts>div{grid-template-columns:1fr}.management-facts dd{text-align:left}.overview-management-links{grid-template-columns:1fr}.publish-route{grid-template-columns:1fr}.publish-route>span{transform:rotate(90deg);justify-self:center}}
@media(min-width:768px){.project-management-page{gap:24px}.project-management-header{grid-template-columns:58px minmax(0,1fr) auto}.project-management-header h1{font-size:34px;line-height:1.35}.project-management-header p:last-child{font-size:17px;line-height:1.68}.project-management-tabs{top:74px}.project-management-tabs button{min-height:56px;font-size:18px}.project-management-content{gap:20px}.management-card{gap:22px;padding:28px}.management-card-heading h2{font-size:21px}.management-resource-list article,.vault-variable-list article,.policy-management-list article{min-height:92px;padding:17px}.management-resource-list strong,.vault-variable-list strong,.policy-management-list strong{font-size:19px;line-height:1.5}.management-resource-list small,.vault-variable-list small,.policy-management-list small{font-size:17px;line-height:1.6}.vault-variable-list article>span:first-child{width:48px;height:48px}.management-facts>div{min-height:58px;padding:15px}.management-facts dt,.management-facts dd,.git-binding-summary span,.publish-route span{font-size:17px;line-height:1.6}.git-binding-summary>div{min-height:92px;padding:17px}.git-binding-summary strong,.publish-route strong{font-size:18px;line-height:1.55}.publish-route{padding:20px}.publish-item-list article{padding:14px 16px}.environment-management-list>button{min-height:112px;padding:18px}.environment-management-list strong{font-size:20px}.environment-management-list small{font-size:17px}.mesh-service-list article{min-height:110px;padding:18px}.mesh-service-list strong{font-size:20px}.mesh-service-list code,.mesh-service-list small{font-size:17px;line-height:1.6}.overview-management-links .overview-vault{min-height:100px}.vault-crypto-summary>div{min-height:132px;padding:20px}.vault-crypto-summary span,.vault-key-identity span{font-size:16px}.vault-crypto-summary strong{font-size:21px;line-height:1.5}.vault-crypto-summary small,.vault-key-identity small,.vault-crypto-flow span{font-size:17px;line-height:1.62}.vault-key-identity{padding:20px}.vault-key-identity code{font-size:16px}.vault-crypto-flow li{min-height:144px;padding:20px 20px 20px 64px}.vault-crypto-flow li:before{top:20px;left:20px;width:32px;height:32px}.vault-crypto-flow strong{font-size:19px}}
:root[data-theme="light"] .project-management-tabs{background:rgba(243,245,247,.95)}:root[data-theme="dark"] .project-management-tabs{background:rgba(19,19,19,.95)}

/* Dialog layout and source resource editor. Keep headers and actions visible
   while the body scrolls, and reserve most horizontal space for file paths. */
.modal-sheet{display:flex;max-height:inherit;min-height:0;flex-direction:column;overflow:hidden}.modal-header,.modal-actions{flex:0 0 auto}.modal-body{min-height:0;overscroll-behavior:contain}.modal-actions{position:relative;z-index:1;background:var(--raised)}
.source-resource-section{gap:14px}.source-section-help{max-width:64ch;color:var(--muted);font-size:15px;line-height:1.6}.source-resource-section #sourceRootList{display:grid;gap:12px}.source-root-row{display:grid;grid-template-columns:minmax(150px,.34fr) minmax(280px,1fr) 104px;align-items:end;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.source-root-row label{display:grid;min-width:0;gap:7px}.source-root-row label>span{color:var(--muted);font-size:13px;line-height:1.4;font-weight:550}.source-root-row select,.source-root-row input{width:100%;min-width:0}.source-root-path input{font-family:"SFMono-Regular",Consolas,monospace}.source-root-remove{min-width:0;min-height:56px;border:1px solid color-mix(in srgb,var(--red) 36%,var(--line));background:color-mix(in srgb,var(--red) 5%,var(--surface));font-size:16px}.add-source-root{display:flex;width:100%;min-height:50px;align-items:center;justify-content:center;gap:8px;border:1px dashed var(--strong);background:var(--surface);color:var(--text)}.add-source-root span{color:var(--coral);font-size:22px;font-weight:400}
@media(min-width:768px){dialog{width:min(780px,calc(100% - 48px));max-height:min(calc(100dvh - 32px),1100px);font-size:18px;line-height:1.55}.modal-header,.modal-actions{padding:18px 22px}.modal-header h2{font-size:21px;line-height:1.45}.modal-body{gap:20px;padding:22px}.modal-form-intro h3{font-size:25px;line-height:1.42}.modal-form-intro>p:last-child{font-size:18px;line-height:1.62}.modal-form-section,.repository-binding-card{padding:20px}.modal-section-heading{font-size:16px;line-height:1.45}.field-help,.modal-guidance p,.repository-reference{font-size:16px;line-height:1.62}.source-root-row select,.source-root-row input{min-height:56px;height:56px;padding:11px 13px;font-size:17px;line-height:1.5}.modal-actions .primary-button,.modal-actions .secondary-button{min-height:54px;font-size:17px}}
@media(max-width:767px){dialog{width:min(100% - 20px,620px);max-height:calc(100dvh - 20px);border-radius:12px}.modal-sheet{max-height:inherit}.source-root-row{grid-template-columns:1fr;padding:12px}.source-root-remove{width:100%}.source-section-help{font-size:14px}.modal-actions{display:grid;grid-template-columns:1fr 1fr}.modal-actions button{min-width:0}}
@media(max-width:420px){dialog{width:calc(100% - 12px);max-height:calc(100dvh - 12px)}.modal-header,.modal-body,.modal-actions{padding:14px}.modal-actions{grid-template-columns:1fr}.modal-actions .primary-button{grid-row:1}.source-root-row{gap:10px}.source-resource-section{padding:11px}.source-section-help{font-size:13px;line-height:1.55}}

/* Selected environment configuration. */
.environment-config-page .management-card-heading p:last-child{max-width:66ch;margin-top:5px;color:var(--muted)}
.environment-scope-card{border-color:color-mix(in srgb,var(--mint) 34%,var(--line))}.environment-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--line)}.environment-summary-grid>div{display:grid;gap:4px;padding:15px;background:var(--soft)}.environment-summary-grid span,.environment-summary-grid small{color:var(--muted)}.environment-summary-grid strong{font-size:22px;line-height:1.35;font-weight:620}.environment-summary-grid small{font-size:13px;line-height:1.5}
.subsection-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.subsection-heading h3{margin-top:2px}.environment-variable-preview{display:grid;gap:10px}.environment-variable-preview>div:last-child{display:grid;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--line)}.environment-variable-preview article{display:grid;grid-template-columns:minmax(140px,.45fr) minmax(0,1fr) auto;align-items:center;gap:12px;min-height:56px;padding:11px 13px;background:var(--soft)}.environment-variable-preview article.disabled{opacity:.55}.environment-variable-preview code{overflow-wrap:anywhere;color:var(--coral);font-weight:600}.environment-variable-preview article>span{min-width:0;overflow:hidden;color:var(--text);font-family:"SFMono-Regular",Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.environment-variable-preview small{color:var(--muted)}
.endpoint-binding-list{display:grid;gap:10px}.endpoint-binding-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:104px;padding:15px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.endpoint-binding-row.disabled{opacity:.58}.endpoint-kind{display:grid;width:46px;height:46px;place-items:center;border:1px solid var(--line);border-radius:9px;background:var(--raised);color:var(--coral);font:650 14px/1 "SFMono-Regular",Consolas,monospace}.endpoint-kind.local{color:var(--mint)}.endpoint-kind.external{color:var(--amber)}.endpoint-binding-copy{display:grid;min-width:0;gap:5px}.endpoint-binding-copy>div{display:flex;align-items:center;gap:8px}.endpoint-binding-copy strong{font-size:18px;line-height:1.45;font-weight:620}.endpoint-binding-copy code{min-width:0;overflow:hidden;color:var(--text);font-size:15px;line-height:1.5;text-overflow:ellipsis;white-space:nowrap}.endpoint-binding-copy small{color:var(--muted);font-size:14px;line-height:1.5}.endpoint-binding-copy small b{color:var(--coral);font-weight:550}.endpoint-binding-actions{display:flex;align-items:center;gap:7px}.endpoint-binding-actions button{min-height:42px}.endpoint-enabled{display:flex;min-height:42px;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--line);border-radius:7px;color:var(--muted);font-size:13px}.endpoint-enabled input{width:18px;height:18px;accent-color:var(--mint)}
.endpoint-variable-chips{display:flex!important;flex-wrap:wrap;gap:6px!important;margin-top:4px}.endpoint-variable-chips span{padding:3px 7px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--muted);font:500 12px/1.5 "SFMono-Regular",Consolas,monospace}.endpoint-variable-chips span.disabled{opacity:.5;text-decoration:line-through}.endpoint-variable-empty{margin-top:3px;font-style:italic}
.environment-guard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.environment-guard-grid article{padding:15px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.environment-guard-grid strong{font-weight:620}.environment-guard-grid p{margin-top:6px;color:var(--muted);font-size:14px;line-height:1.6}.environment-guard-grid code{font-size:.92em}.endpoint-editor{display:grid;gap:16px}.endpoint-enable-control{min-height:52px;padding:11px 13px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.endpoint-enable-control input{width:20px;height:20px;accent-color:var(--mint)}
.endpoint-variable-editor{display:grid;gap:14px}.endpoint-variable-editor>.field-help{margin:0}.endpoint-variable-editor>.field-help code{color:var(--coral);font-family:"SFMono-Regular",Consolas,monospace}.endpoint-variable-editor #endpointVariableRows{display:grid;gap:10px}.endpoint-variable-row{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(170px,1fr) auto auto auto;align-items:end;gap:9px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.endpoint-variable-row>label:not(.endpoint-variable-option){display:grid;min-width:0;gap:6px}.endpoint-variable-row>label>span{color:var(--muted);font-size:13px;line-height:1.4}.endpoint-variable-option{display:flex;min-height:48px;align-items:center;gap:6px;padding:0 9px;border:1px solid var(--line);border-radius:8px}.endpoint-variable-option input{width:17px;height:17px;accent-color:var(--mint)}.endpoint-variable-row>.remove-button{min-height:48px}.add-endpoint-variable{display:flex;width:100%;align-items:center;justify-content:center;gap:8px;border-style:dashed}.add-endpoint-variable span{color:var(--coral);font-size:22px}
.environment-kv-row{grid-template-columns:24px minmax(140px,.72fr) minmax(180px,1fr) auto auto}.kv-secret-control{display:flex;min-height:40px;align-items:center;gap:6px;padding:0 9px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:13px}.kv-secret-control input{width:17px;height:17px;accent-color:var(--mint)}
@media(max-width:767px){.environment-summary-grid,.environment-guard-grid{grid-template-columns:1fr}.environment-variable-preview article{grid-template-columns:1fr}.endpoint-binding-row{grid-template-columns:auto minmax(0,1fr)}.endpoint-binding-actions{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto auto}.endpoint-enabled{justify-content:flex-start}.endpoint-bindings-card .management-card-heading .primary-button{width:100%}.environment-kv-row{grid-template-columns:24px minmax(0,1fr)}.environment-kv-row .kv-secret-control,.environment-kv-row .remove-button{grid-column:2}.environment-kv-row .remove-button{width:100%}.endpoint-variable-row{grid-template-columns:1fr 1fr}.endpoint-variable-row>.remove-button{grid-column:1/-1;width:100%}}
@media(max-width:420px){.endpoint-binding-row{grid-template-columns:38px minmax(0,1fr);padding:12px}.endpoint-kind{width:38px;height:38px}.endpoint-binding-copy>div:not(.endpoint-variable-chips){align-items:flex-start;flex-direction:column}.endpoint-binding-actions{grid-template-columns:1fr 1fr}.endpoint-enabled{grid-column:1/-1}.endpoint-binding-actions .remove-button{min-height:50px}.environment-variable-preview article{gap:4px}.environment-summary-grid>div{padding:12px}.endpoint-variable-row{grid-template-columns:1fr}.endpoint-variable-row>.remove-button{grid-column:1}.endpoint-variable-option{min-height:44px}}
@media(min-width:768px){.environment-summary-grid>div{min-height:108px;padding:20px}.environment-summary-grid span,.environment-summary-grid small{font-size:17px;line-height:1.55}.environment-summary-grid strong{font-size:28px}.environment-variable-preview article{min-height:72px;padding:14px 16px}.environment-variable-preview code,.environment-variable-preview article>span,.environment-variable-preview small{font-size:17px;line-height:1.55}.endpoint-binding-row{min-height:126px;padding:19px}.endpoint-kind{width:54px;height:54px;font-size:16px}.endpoint-binding-copy strong{font-size:21px}.endpoint-binding-copy code{font-size:18px}.endpoint-binding-copy small,.endpoint-enabled{font-size:16px}.endpoint-variable-chips span{font-size:14px}.endpoint-binding-actions button{min-height:50px;font-size:16px}.environment-guard-grid article{min-height:124px;padding:20px}.environment-guard-grid strong{font-size:19px}.environment-guard-grid p{font-size:17px;line-height:1.62}.endpoint-variable-row>label>span{font-size:15px}.endpoint-variable-option{min-height:56px;font-size:15px}.endpoint-variable-row>.remove-button{min-height:56px;font-size:15px}}

/* Project-aware header and finding review flow. */
.project-context-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;min-height:86px;gap:12px;padding:9px 16px}.project-header-back{display:grid!important;width:46px;height:46px;min-height:46px!important;padding:0!important;place-items:center;border:1px solid color-mix(in srgb,var(--red) 34%,var(--line))!important;border-radius:9px!important;background:color-mix(in srgb,var(--red) 8%,var(--surface))!important}.project-header-back .ui-icon{width:20px;height:20px}.project-header-identity{width:min(100%,760px);gap:11px!important}.project-header-identity>span{gap:1px}.project-header-identity>span>small{max-width:min(60vw,720px)}.project-header-meta{display:flex!important;min-width:0;align-items:center;gap:8px;margin-top:3px}.project-header-meta .status-chip{display:inline-flex;min-height:22px;align-items:center;gap:5px;padding:2px 7px;font-size:11px;line-height:16px}.project-header-meta .status-chip .ui-icon{width:12px;height:12px;animation:aipi-index-spin 1.15s linear infinite}.project-header-meta time{overflow:hidden;color:var(--muted);font:450 11px/17px "SFMono-Regular",Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.header-manage-project{min-height:40px!important;padding:7px 12px!important;border:1px solid var(--line)!important;border-radius:8px!important;background:var(--surface)!important;color:var(--text)}.header-project-settings{border-color:color-mix(in srgb,var(--coral) 26%,var(--line))!important}.header-global-settings{border-color:color-mix(in srgb,var(--coral) 62%,var(--line))!important;background:color-mix(in srgb,var(--coral) 10%,var(--surface))!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--coral) 14%,transparent)}
.header-environment-control{display:grid;min-width:154px;gap:2px;color:var(--muted);font:500 10px/13px "SFMono-Regular",Consolas,monospace;letter-spacing:.04em;text-transform:uppercase}.header-environment-control select{width:100%;min-height:38px;padding:6px 30px 6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font-family:inherit;font-size:14px;font-weight:550;line-height:20px;text-transform:none}.header-environment-control select:focus-visible{outline:2px solid var(--coral);outline-offset:2px}.bottom-nav.nav-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.overview-environment-group{display:grid;gap:6px}.overview-environment-group>small,.overview-services>small,.overview-actions>small{color:var(--muted);font-weight:600}.overview-environment{min-width:0}.overview-environment button{border:1px solid transparent}.overview-environment button.active{border-color:color-mix(in srgb,var(--coral) 34%,var(--line));box-shadow:0 1px 2px rgba(0,0,0,.08)}
.overview-urgent{display:grid;grid-template-columns:auto minmax(0,1fr) auto;min-height:88px;align-items:center;gap:14px;padding:13px 14px;border-width:1px;border-left-width:4px;border-radius:8px;box-shadow:var(--shadow)}.urgent-bug-icon{display:grid;width:46px;height:46px;place-items:center;border:1px solid color-mix(in srgb,var(--red) 46%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--red) 12%,var(--surface))}.urgent-bug-icon .ui-icon{width:25px;height:25px}.urgent-issue-copy{display:grid;min-width:0;gap:2px}.overview-urgent .urgent-issue-copy b{color:var(--red);font:650 11px/17px "SFMono-Regular",Consolas,monospace;letter-spacing:.045em;text-transform:uppercase}.overview-urgent .urgent-issue-copy strong{overflow:visible;font-size:15px;line-height:22px;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.overview-urgent .urgent-issue-copy small{color:var(--muted);font-size:12px;line-height:18px}.overview-urgent>button{display:inline-flex;min-width:156px;align-items:center;justify-content:center;gap:8px}.button-spinner{width:18px;height:18px;flex:0 0 auto;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:aipi-index-spin .7s linear infinite}.finding-review{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px}.finding-review-icon{display:grid;width:48px;height:48px;place-items:center;border:1px solid color-mix(in srgb,var(--red) 42%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--red) 10%,var(--surface))}.finding-review-icon .ui-icon{width:26px;height:26px}.finding-review>div{display:grid;gap:8px}.finding-review h3{overflow-wrap:anywhere}.finding-review>div>p:not(.eyebrow){color:var(--muted)}.finding-review-evidence{display:flex;flex-wrap:wrap;gap:7px}.finding-review-evidence code{padding:4px 7px;border:1px solid var(--line);border-radius:5px;background:var(--soft);color:var(--text);font-size:.82em}.finding-review+.modal-guidance{margin:0}
:root[data-theme="light"] .header-global-settings{background:#dff3fc!important}:root[data-theme="light"] .urgent-bug-icon,:root[data-theme="light"] .finding-review-icon{background:#fff0f1}
@media(prefers-reduced-motion:reduce){.button-spinner,.project-header-meta .status-chip .ui-icon{animation:none}}
@media(max-width:767px){.project-context-header{min-height:76px;gap:7px;padding:7px 10px}.project-header-back{width:40px;height:40px;min-height:40px!important}.project-header-identity{gap:7px!important}.project-header-identity>img{width:34px;height:34px}.project-header-identity strong{font-size:15px;line-height:20px}.project-header-identity>span>small{max-width:44vw;font-size:11px;line-height:15px}.project-header-meta{gap:5px;margin-top:1px}.project-header-meta .status-chip{font-size:9px;line-height:13px}.project-header-meta time{font-size:9px;line-height:14px}.header-environment-control{min-width:118px}.header-environment-control>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.header-environment-control select{min-height:40px;font-size:12px}.overview-environment-group>small{font-size:13px;line-height:20px}.overview-urgent{grid-template-columns:auto minmax(0,1fr);gap:10px}.overview-urgent>button{grid-column:1/-1;width:100%;min-width:0}.urgent-bug-icon{width:40px;height:40px}.overview-urgent .urgent-issue-copy strong{font-size:14px;line-height:20px}.overview-urgent .urgent-issue-copy small{font-size:12px;line-height:18px}}
@media(max-width:420px){.project-context-header{grid-template-columns:36px minmax(0,1fr) auto;min-height:68px;padding:6px}.project-header-back{width:36px;height:36px;min-height:36px!important}.project-header-identity>img{display:none}.project-header-identity>span>small{max-width:34vw}.project-header-meta time{display:none}.project-header-meta .status-chip{max-width:34vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-context-header .connection-dot{display:none}.project-context-header .header-settings{width:38px;height:38px!important}.header-environment-control{min-width:100px;max-width:112px}.header-environment-control select{padding-right:22px;padding-left:7px}.overview-environment{overflow-x:auto}.overview-urgent{padding:11px}.finding-review{grid-template-columns:1fr}.finding-review-icon{width:42px;height:42px}}
@media(min-width:768px){.project-context-header{min-height:104px;padding:11px 2%}.project-header-back{width:54px;height:54px;min-height:54px!important}.project-header-identity>img{width:46px;height:46px}.project-header-identity strong{font-size:21px;line-height:28px}.project-header-identity>span>small{font-size:16px;line-height:23px}.project-header-meta .status-chip,.project-header-meta time{font-size:14px;line-height:20px}.header-manage-project{min-height:50px!important;padding:9px 16px!important;font-size:17px!important}.route-project-manage .project-management-tabs{top:104px}.overview-environment-group>small{font-size:17px;line-height:24px}.overview-urgent{min-height:112px;padding:18px 20px}.urgent-bug-icon{width:58px;height:58px}.urgent-bug-icon .ui-icon{width:31px;height:31px}.overview-urgent .urgent-issue-copy b{font-size:15px;line-height:22px}.overview-urgent .urgent-issue-copy strong{font-size:21px;line-height:30px}.overview-urgent .urgent-issue-copy small{font-size:17px;line-height:25px}.overview-urgent>button{min-height:56px;min-width:210px;font-size:18px}.finding-review-icon{width:58px;height:58px}.finding-review h3{font-size:21px;line-height:1.5}.finding-review>div>p:not(.eyebrow){font-size:17px;line-height:1.62}}

/* Vault credential presets and provider metadata. */
.vault-preset-card{border-color:color-mix(in srgb,var(--coral) 24%,var(--line))}.vault-preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:10px}.vault-preset-grid>button{display:grid;grid-template-columns:42px minmax(0,1fr);align-content:start;gap:3px 10px;min-height:132px;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--soft);color:var(--text);text-align:left}.vault-preset-grid>button:hover:not(:disabled){border-color:var(--coral);background:color-mix(in srgb,var(--coral) 6%,var(--soft));transform:translateY(-1px)}.vault-preset-grid>button:disabled{cursor:not-allowed;opacity:.52}.vault-preset-grid>button>span,.vault-type-icon{display:grid;width:42px;height:42px;grid-row:1/4;place-items:center;border:1px solid color-mix(in srgb,var(--coral) 34%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--coral) 8%,var(--raised));color:var(--coral);font:650 12px/1 "SFMono-Regular",Consolas,monospace}.vault-preset-grid strong{font-size:15px;line-height:1.45;font-weight:620}.vault-preset-grid small{color:var(--muted);font-size:12px;line-height:1.5}.vault-preset-grid i{align-self:end;color:var(--coral);font:500 10px/1.45 "SFMono-Regular",Consolas,monospace;font-style:normal;text-transform:uppercase}.vault-credential-main>div{display:flex;flex-wrap:wrap;align-items:center;gap:7px}.vault-credential-main>div>.status-chip{font-family:inherit}.vault-credential-type-details{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--line);border-left:3px solid var(--coral);border-radius:8px;background:var(--soft)}.vault-credential-type-details strong{font-size:15px}.vault-credential-type-details span{color:var(--text);font-size:14px;line-height:1.55}.vault-credential-type-details small{color:var(--muted);font:500 11px/1.5 "SFMono-Regular",Consolas,monospace}.vault-credential-row>.vault-type-icon{grid-row:auto!important;background:color-mix(in srgb,var(--coral) 8%,var(--raised))!important}
:root[data-theme="light"] .vault-preset-grid>button,:root[data-theme="light"] .vault-credential-type-details{background:#f7f9fa}
@media(max-width:560px){.vault-preset-grid{grid-template-columns:1fr}.vault-preset-grid>button{min-height:112px}.vault-credential-row>.vault-type-icon{width:38px;height:38px}.vault-credential-main>div{align-items:flex-start;flex-direction:column}}
@media(min-width:768px){.vault-preset-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.vault-preset-grid>button{min-height:172px;padding:18px}.vault-preset-grid>button>span{width:50px;height:50px;font-size:14px}.vault-preset-grid strong{font-size:19px;line-height:1.45}.vault-preset-grid small{font-size:16px;line-height:1.55}.vault-preset-grid i{font-size:13px}.vault-credential-type-details{padding:17px 19px}.vault-credential-type-details strong{font-size:19px}.vault-credential-type-details span{font-size:17px;line-height:1.62}.vault-credential-type-details small{font-size:14px}}

/* Runtime Mesh control plane. */
.runtime-mesh-page{--mesh-accent:var(--coral)}.mesh-gateway-card{border-color:color-mix(in srgb,var(--mesh-accent) 30%,var(--line))}.mesh-environment-switcher{display:flex;flex-wrap:wrap;gap:6px;padding:5px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.mesh-environment-switcher button{min-height:38px;padding:7px 11px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted)}.mesh-environment-switcher button.active{border-color:color-mix(in srgb,var(--mesh-accent) 32%,var(--line));background:var(--raised);color:var(--text);box-shadow:var(--shadow)}
.mesh-topology{display:grid;grid-template-columns:minmax(160px,.34fr) minmax(0,1fr);align-items:stretch;gap:12px}.mesh-gateway-node{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid color-mix(in srgb,var(--mesh-accent) 45%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--mesh-accent) 7%,var(--soft))}.mesh-gateway-node>span{display:grid;width:46px;height:46px;flex:0 0 auto;place-items:center;border-radius:9px;background:var(--raised)}.mesh-gateway-node .ui-icon{width:25px;height:25px}.mesh-gateway-node>div{display:grid;gap:3px}.mesh-gateway-node small{color:var(--muted)}.mesh-gateway-node strong{font:650 18px/1.4 "SFMono-Regular",Consolas,monospace}.mesh-topology-links{display:grid;gap:6px}.mesh-topology-links article{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:54px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.mesh-topology-links article>div{display:grid;min-width:0}.mesh-topology-links strong,.mesh-topology-links small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mesh-topology-links small{color:var(--muted)}.mesh-topology-links code{color:var(--coral)}.mesh-topology-links>p{display:grid;place-items:center;color:var(--muted)}
.mesh-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--line)}.mesh-metric-grid article{display:grid;gap:4px;min-height:92px;padding:13px;background:var(--soft)}.mesh-metric-grid span,.mesh-metric-grid small{color:var(--muted)}.mesh-metric-grid strong{font-size:23px;line-height:1.3;font-weight:620}.mesh-metric-grid small{overflow-wrap:anywhere;font-size:12px;line-height:1.45}.mesh-primary-actions .ui-icon{width:17px;height:17px}.mesh-sync-note{margin:0;color:var(--muted);font:450 11px/1.55 "SFMono-Regular",Consolas,monospace}
.runtime-service-list{display:grid;gap:9px}.runtime-service-list>article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.runtime-service-icon{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);border-radius:8px;background:var(--raised)}.runtime-service-icon .ui-icon{width:23px;height:23px}.runtime-service-copy{display:grid;min-width:0;gap:7px}.runtime-service-copy>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.runtime-service-copy strong{font-size:16px;font-weight:620}.runtime-service-copy>small{color:var(--muted)}.runtime-service-copy dl{display:grid;gap:1px;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:6px;background:var(--line)}.runtime-service-copy dl>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px;padding:8px 10px;background:var(--surface)}.runtime-service-copy dt{color:var(--muted)}.runtime-service-copy dd{min-width:0;margin:0;overflow-wrap:anywhere;text-align:right;font-family:"SFMono-Regular",Consolas,monospace}
.mesh-route-list{display:grid;gap:8px}.mesh-route-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px 12px;padding:13px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.mesh-route-list>article.unresolved{border-color:color-mix(in srgb,var(--red) 45%,var(--line))}.mesh-route-list>article>div:first-child{display:flex;min-width:0;align-items:center;gap:10px}.mesh-route-list code{color:var(--coral);font-weight:600}.mesh-route-list strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mesh-route-list>article>small{grid-column:1;color:var(--muted)}.mesh-route-list>article>.status-chip{grid-column:2;grid-row:1/3}.mesh-route-actions{display:flex;grid-column:3;grid-row:1/3;gap:5px}.mesh-route-actions button{min-height:38px}
.mesh-policy-list{display:grid;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--line)}.mesh-policy-list>label{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;background:var(--soft)}.mesh-policy-list>label>span{display:grid;gap:3px}.mesh-policy-list small{color:var(--muted);line-height:1.5}.mesh-policy-list input[role="switch"]{width:44px;height:24px;flex:0 0 auto;accent-color:var(--mint)}
.mesh-telemetry-list{display:grid;gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--line)}.mesh-telemetry-list>button{display:grid;grid-template-columns:76px 64px minmax(0,1fr) 60px 64px;align-items:center;gap:9px;min-height:52px;padding:8px 11px;border:0;background:var(--soft);color:var(--text);text-align:left}.mesh-telemetry-list>button:hover{background:var(--raised)}.mesh-telemetry-list time,.mesh-telemetry-list code,.mesh-telemetry-list small{font:450 11px/1.5 "SFMono-Regular",Consolas,monospace}.mesh-telemetry-list time,.mesh-telemetry-list small{color:var(--muted)}.mesh-telemetry-list code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mesh-telemetry-list>button>strong,.mesh-telemetry-list>button>small{text-align:right}
:root[data-theme="light"] .mesh-gateway-node{background:#f0f8fb}:root[data-theme="light"] .mesh-gateway-node .ui-icon,:root[data-theme="light"] .runtime-service-icon .ui-icon{filter:brightness(.46) saturate(.75);opacity:.96}
@media(max-width:767px){.mesh-topology{grid-template-columns:1fr}.mesh-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.runtime-service-list>article{grid-template-columns:auto minmax(0,1fr)}.runtime-service-list>article>.quiet-button{grid-column:1/-1;width:100%}.mesh-route-list>article{grid-template-columns:1fr auto}.mesh-route-list>article>.status-chip{grid-column:2;grid-row:1}.mesh-route-list>article>small{grid-column:1/-1}.mesh-route-actions{grid-column:1/-1;grid-row:auto}.mesh-route-actions button{flex:1}.mesh-telemetry-list>button{grid-template-columns:70px 60px minmax(0,1fr) 50px}.mesh-telemetry-list>button>small{display:none}}
@media(max-width:420px){.mesh-metric-grid{grid-template-columns:1fr 1fr}.mesh-metric-grid article{min-height:84px;padding:11px}.mesh-primary-actions{display:grid;grid-template-columns:1fr}.mesh-primary-actions button{width:100%}.runtime-service-copy dl>div{grid-template-columns:1fr;gap:2px}.runtime-service-copy dd{text-align:left}.mesh-route-list>article>div:first-child{align-items:flex-start;flex-direction:column;gap:4px}.mesh-route-list>article>div:first-child>span{display:none}.mesh-policy-list>label{min-height:82px}.mesh-telemetry-list>button{grid-template-columns:56px minmax(0,1fr) 48px}.mesh-telemetry-list>button>.status-chip{display:none}.mesh-telemetry-list>button>strong{grid-column:3}.mesh-telemetry-list time{font-size:10px}}
@media(min-width:768px){.mesh-environment-switcher button{min-height:48px;padding:9px 16px;font-size:17px}.mesh-topology{gap:16px}.mesh-gateway-node{padding:20px}.mesh-gateway-node>span{width:56px;height:56px}.mesh-gateway-node small{font-size:16px}.mesh-gateway-node strong{font-size:22px}.mesh-topology-links article{min-height:68px;padding:12px 16px}.mesh-topology-links strong,.mesh-topology-links code{font-size:17px}.mesh-topology-links small{font-size:15px}.mesh-metric-grid article{min-height:118px;padding:18px}.mesh-metric-grid span,.mesh-metric-grid small{font-size:16px;line-height:1.5}.mesh-metric-grid strong{font-size:30px}.mesh-sync-note{font-size:14px}.runtime-service-list>article{padding:18px}.runtime-service-icon{width:52px;height:52px}.runtime-service-copy strong{font-size:20px}.runtime-service-copy>small,.runtime-service-copy dt,.runtime-service-copy dd{font-size:16px;line-height:1.55}.runtime-service-copy dl>div{padding:11px 13px}.mesh-route-list>article{min-height:96px;padding:17px}.mesh-route-list code,.mesh-route-list strong{font-size:18px}.mesh-route-list>article>small{font-size:15px}.mesh-policy-list>label{min-height:92px;padding:16px 18px}.mesh-policy-list strong{font-size:18px}.mesh-policy-list small{font-size:16px}.mesh-telemetry-list>button{min-height:68px;padding:11px 15px}.mesh-telemetry-list time,.mesh-telemetry-list code,.mesh-telemetry-list small{font-size:15px}}

/* Project policy manifest. */
.policy-console{gap:14px}.policy-disclosure{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.policy-section-card{display:grid;min-width:0;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}
.policy-section-heading{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:28px}.policy-section-heading h2{min-width:0;margin:0;font-size:15px;line-height:1.4;font-weight:650}
.policy-section-icon{display:grid;width:22px;height:22px;place-items:center;font-size:19px;font-weight:700}.policy-section-icon.airgap{color:#27ddb2}.policy-section-icon.mutation{color:#5bbdff}.policy-section-icon.ingestion{color:#2bdcb1}.policy-section-icon.permissions{color:#c5a2ff}.policy-section-icon.manifest{color:#81c9ff}
.policy-section-badge{max-width:130px;padding:3px 6px;border-radius:3px;background:var(--raised);color:var(--muted);font:600 10px/1.2 "SFMono-Regular",Consolas,monospace;letter-spacing:.06em;text-align:center}
.policy-section-badge.success{color:var(--mint)}.policy-section-badge.info{color:var(--blue)}
.policy-inner-card{display:grid;min-width:0;gap:10px;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--soft)}
.policy-control-row{display:grid;grid-template-columns:18px minmax(0,1fr) 38px;align-items:start;gap:8px}.policy-control-icon{color:#43d5bd;font-size:17px;line-height:1.35}.policy-control-icon.shield{color:#43d5bd}
.policy-control-copy{display:grid;min-width:0;gap:3px}.policy-control-copy strong,.policy-limit-row strong{font-size:14px;line-height:1.35;font-weight:620}.policy-control-copy small,.policy-limit-row small{color:var(--muted);font-size:12px;line-height:1.4}
.policy-control-row input[role="switch"]{position:relative;width:36px;height:20px;margin:1px 0 0;appearance:none;border:0;border-radius:999px;background:#555;cursor:pointer;transition:background .15s ease}.policy-control-row input[role="switch"]:before{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#e7e7e7;content:"";transition:transform .15s ease}.policy-control-row input[role="switch"]:checked{background:#00aa81}.policy-control-row input[role="switch"]:checked:before{transform:translateX(16px)}.policy-control-row input[role="switch"]:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.policy-shield-row{grid-template-columns:18px minmax(0,1fr) auto;align-items:center}.policy-shield-row .policy-section-badge{color:var(--mint)}
.policy-list-card{gap:12px}.policy-list-block{display:grid;gap:7px;min-width:0}.policy-list-heading{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:12px}.policy-list-heading strong{color:var(--mint);font:650 10px/1.4 "SFMono-Regular",Consolas,monospace;letter-spacing:.08em;text-transform:uppercase}
.policy-token-list{display:flex;flex-wrap:wrap;gap:5px}.policy-token-list code{max-width:100%;overflow-wrap:anywhere;padding:3px 5px;border-radius:3px;background:var(--raised);color:var(--mint);font:11px/1.35 "SFMono-Regular",Consolas,monospace}.policy-token-list code.locked{color:#d7b6fa}.policy-token-list code.blocked{color:#ff9a8e}.policy-empty{color:var(--muted);font-size:12px}
.policy-edit-list{justify-self:start;min-height:27px;padding:2px 7px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--muted);font-size:11px}.policy-edit-list:hover{color:var(--text);background:var(--raised)}
.policy-limit-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.policy-limit-row>span{display:grid;gap:3px}.policy-number-field{display:flex;align-items:center;gap:5px;padding:5px 7px;border:1px solid var(--line);border-radius:4px;background:var(--raised);color:var(--blue);font:600 11px/1.3 "SFMono-Regular",Consolas,monospace}.policy-number-field input{width:42px;min-height:24px;padding:0;border:0;outline:0;background:transparent;color:var(--blue);font:700 14px/1.2 "SFMono-Regular",Consolas,monospace;text-align:right}.policy-number-field input::-webkit-inner-spin-button,.policy-number-field input::-webkit-outer-spin-button{margin:0;appearance:none}
.policy-permission-list{display:grid;gap:7px}.policy-permission-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:48px;padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--soft)}.policy-permission-list article>div{display:grid;min-width:0;gap:2px}.policy-permission-list code{color:var(--blue);font:600 12px/1.35 "SFMono-Regular",Consolas,monospace;overflow-wrap:anywhere}.policy-permission-list small{color:var(--muted);font-size:11px;line-height:1.35}.policy-permission-list .status-chip{font-size:10px;white-space:nowrap}
.policy-permission-list .status-chip.success{border-color:rgba(114,224,179,.28);background:rgba(114,224,179,.1);color:var(--mint)!important}.policy-permission-list .status-chip.info{border-color:rgba(91,189,255,.28);background:rgba(91,189,255,.1);color:var(--blue)!important}.policy-permission-list .status-chip.warning{border-color:rgba(197,162,255,.28);background:rgba(197,162,255,.12);color:#d7b6fa!important}.policy-permission-list .status-chip.danger{border-color:rgba(255,127,142,.28);background:rgba(255,127,142,.12);color:#ff9a8e!important}
.policy-configure-roles,.policy-reset-button{min-height:38px;border:1px solid var(--line);border-radius:5px;background:var(--raised);color:var(--text);font-size:12px}.policy-configure-roles:hover,.policy-reset-button:hover{background:color-mix(in srgb,var(--raised) 70%,var(--text) 8%)}
.policy-hash-panel{display:grid;gap:6px;padding:9px;border:1px solid var(--line);border-radius:6px;background:var(--soft)}.policy-hash-panel>span{color:var(--muted);font-size:11px}.policy-hash-panel>div{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;gap:8px}.policy-hash-panel code{min-width:0;overflow-wrap:anywhere;color:var(--blue);font:600 11px/1.45 "SFMono-Regular",Consolas,monospace}.policy-copy-hash{min-height:30px;border:1px solid var(--line);border-radius:4px;background:var(--raised);color:var(--text)}
.policy-export-button{display:flex;min-height:42px;align-items:center;justify-content:center;gap:7px;border:1px solid #28b9ee;border-radius:5px;background:#29b8ed;color:#063047;font-size:13px;font-weight:650}.policy-export-button:hover{filter:brightness(1.08)}
.policy-reset-button{background:var(--raised);color:var(--muted)}
.policy-engine-status{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;padding:2px 3px;color:var(--muted);font:10px/1.4 "SFMono-Regular",Consolas,monospace;letter-spacing:.06em}.policy-engine-status strong{font-weight:650}.policy-engine-status .success-text{color:var(--mint)}.policy-engine-status .warning-text{color:#eab96b}
.policy-role-matrix{display:grid;gap:10px}.policy-role-matrix fieldset{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--soft)}.policy-role-matrix legend{padding:0 5px;font-weight:650}.policy-role-matrix label{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px}.policy-role-matrix input{accent-color:var(--mint)}
@media(max-width:420px){.policy-section-card{padding:9px;gap:8px}.policy-section-heading{grid-template-columns:20px minmax(0,1fr) auto;gap:5px}.policy-section-heading h2{font-size:13px}.policy-section-icon{font-size:17px}.policy-section-badge{max-width:105px;padding:3px 4px;font-size:9px}.policy-inner-card{padding:8px}.policy-control-copy small{font-size:11px}.policy-permission-list article{grid-template-columns:minmax(0,1fr) auto;padding:7px}.policy-permission-list .status-chip{padding:3px 5px;font-size:9px}.policy-role-matrix fieldset{grid-template-columns:1fr}}
@media(min-width:768px){.policy-console{gap:16px}.policy-disclosure{font-size:14px}.policy-section-card{gap:12px;padding:16px}.policy-section-heading{grid-template-columns:26px minmax(0,1fr) auto;gap:10px}.policy-section-heading h2{font-size:18px}.policy-section-icon{width:26px;height:26px;font-size:22px}.policy-section-badge{font-size:11px}.policy-inner-card{padding:13px}.policy-control-copy strong,.policy-limit-row strong{font-size:16px}.policy-control-copy small,.policy-limit-row small{font-size:14px}.policy-list-heading{font-size:14px}.policy-token-list code{font-size:13px}.policy-permission-list article{min-height:60px;padding:11px}.policy-permission-list code{font-size:14px}.policy-permission-list small{font-size:13px}.policy-permission-list .status-chip{font-size:11px}.policy-configure-roles,.policy-reset-button{min-height:44px;font-size:14px}.policy-hash-panel{padding:12px}.policy-hash-panel>span{font-size:13px}.policy-hash-panel code{font-size:13px}.policy-export-button{min-height:48px;font-size:15px}}

/* K Maps: contract inventory, built-in knowledge graph, API testing, and proof. */
.kmap-heading{margin-bottom:0}.kmap-tabs,.contract-tabs{position:sticky;z-index:6;top:70px;display:flex;gap:4px;overflow-x:auto;padding:5px;border:1px solid var(--line);border-radius:9px;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(16px)}.kmap-tabs button,.contract-tabs button{min-width:max-content;min-height:42px;padding:8px 14px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-weight:600}.kmap-tabs button.active,.contract-tabs button.active{background:var(--raised);color:var(--text);box-shadow:var(--shadow)}
.kmap-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--line)}.kmap-summary>div{display:grid;gap:4px;min-height:92px;padding:16px;background:var(--surface)}.kmap-summary strong{font-size:25px;font-weight:650}.kmap-summary span{color:var(--muted);font-size:13px}
.contract-inventory{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.contract-inventory-head,.contract-row{display:grid;grid-template-columns:minmax(260px,1.5fr) .7fr .7fr minmax(150px,1fr) .7fr;align-items:center;gap:12px;padding:12px 16px}.contract-inventory-head{min-height:42px;background:var(--raised);color:var(--muted);font:600 11px/1.4 "SFMono-Regular",Consolas,monospace;letter-spacing:.07em;text-transform:uppercase}.contract-row{min-height:84px;border:0;border-top:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left}.contract-row:hover{background:var(--soft)}.contract-row>span{display:grid;min-width:0;gap:4px}.contract-row small{overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.contract-row code{color:#f8fafc;font:600 12px/1.4 "SFMono-Regular",Consolas,monospace}.contract-route{display:flex!important;align-items:center;gap:10px}.contract-route>span{display:grid;min-width:0;gap:3px}.contract-route strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contract-row i{justify-self:start;font-style:normal}
:root[data-theme="light"] .contract-row code{color:#15212b}
.contract-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:9px}.contract-quick-card{display:grid;gap:10px;min-height:92px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--text);text-align:left}.contract-quick-card>span{display:flex;align-items:center;gap:9px}.contract-quick-card small{color:var(--muted)}
.workflow-section{padding:17px}.workflow-grid{display:grid;gap:10px;margin-top:14px}.workflow-card{display:grid;gap:12px;padding:15px;border:1px solid var(--line);border-radius:10px;background:var(--soft)}.workflow-card-header,.workflow-card-title>div,.workflow-card-actions{display:flex;align-items:center;justify-content:space-between;gap:9px}.workflow-card-header{align-items:flex-start}.workflow-card-title{display:grid;min-width:0;gap:5px}.workflow-card-title>div{justify-content:flex-start;flex-wrap:wrap}.workflow-card-title>div>strong{font-size:15px}.workflow-card-title>small{color:var(--muted);font-size:12px}.workflow-card-actions{flex:none}.workflow-card-actions .primary-button,.workflow-card-actions .secondary-button{min-height:34px;padding:0 11px;border-radius:7px;font-size:12px}.workflow-steps{display:grid;gap:6px;padding-top:11px;border-top:1px solid var(--line)}.workflow-steps[hidden],.workflow-run-output[hidden]{display:none}.workflow-step{display:flex;min-width:0;align-items:center;gap:8px;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.workflow-step-index{flex:none;color:var(--muted);font:12px "SFMono-Regular",Consolas,monospace}.workflow-step .method-badge{flex:none}.workflow-step code{min-width:0;overflow:hidden;flex:1;color:var(--text);font:12px "SFMono-Regular",Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.workflow-step .step-status-badge{flex:none}.workflow-test-link,.workflow-run-output a{flex:none;color:var(--blue);font-size:12px;text-decoration:none}.workflow-test-link:hover,.workflow-run-output a:hover{text-decoration:underline}.workflow-missing-request{flex:none;color:var(--amber);font-size:11px}.workflow-run-output{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;border:1px solid var(--line);border-radius:8px;font-size:12px}.workflow-run-output>span:last-child{display:flex;flex-wrap:wrap;gap:12px}.workflow-run-output.is-running{border-color:color-mix(in srgb,var(--blue) 35%,var(--line));color:var(--muted)}.workflow-run-output.is-passed{border-color:color-mix(in srgb,var(--mint) 35%,var(--line));background:color-mix(in srgb,var(--mint) 8%,var(--surface));color:var(--mint)}.workflow-run-output.is-failed{border-color:color-mix(in srgb,var(--red) 35%,var(--line));background:color-mix(in srgb,var(--red) 7%,var(--surface));color:var(--red)}
.tool-governance-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.tool-governance-links>button{display:flex;min-height:88px;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);text-align:left}.tool-governance-links>button:hover{border-color:var(--coral);background:var(--soft)}.tool-governance-links>button>span{display:grid;gap:4px}.tool-governance-links small{color:var(--muted);line-height:1.45}.tool-governance-links b{color:var(--coral);font-size:21px}
.graph-workspace{display:grid;gap:14px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}.graph-workspace-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.graph-workspace-head>div{display:grid;max-width:720px;gap:5px}.graph-workspace-head h2{font-size:22px}.graph-workspace-head p:last-child{color:var(--muted);line-height:1.5}.graph-health-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--line);gap:1px}.graph-health-strip>div{display:grid;gap:4px;padding:12px;background:var(--soft)}.graph-health-strip span{color:var(--muted);font-size:12px}.graph-health-strip strong{font-size:21px}.graph-health-strip strong.success{color:var(--mint)}.graph-health-strip strong.warning{color:var(--amber)}.graph-health-strip strong.danger{color:var(--danger,#ff7f79)}.graph-health-warning{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--amber) 8%,var(--soft))}.graph-health-warning strong{color:var(--amber)}.graph-health-warning span{color:var(--muted);font-size:12px;line-height:1.45}.graph-toolbar{display:grid;grid-template-columns:minmax(240px,1.25fr) minmax(190px,.8fr) 120px minmax(160px,.7fr);gap:9px;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.graph-toolbar label{display:grid;gap:5px;color:var(--muted);font-size:12px}.graph-toolbar input,.graph-toolbar select{min-height:42px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text)}.graph-index-browser{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.graph-browser-intro{display:grid;grid-column:1/-1;gap:3px;padding:2px}.graph-browser-intro span{color:var(--muted);font-size:13px}.graph-node-group,.graph-relationship-group{overflow:hidden;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.graph-node-group>summary,.graph-relationship-group>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;cursor:pointer;list-style:none}.graph-node-group>summary::-webkit-details-marker,.graph-relationship-group>summary::-webkit-details-marker{display:none}.graph-node-group>summary>span,.graph-relationship-group>summary>span{display:flex;min-width:0;align-items:center;gap:9px}.graph-node-group>summary b,.graph-relationship-group>summary b{display:grid;min-width:28px;height:28px;place-items:center;border-radius:99px;background:var(--raised);font-size:12px}.graph-node-group[open]>summary,.graph-relationship-group[open]>summary{border-bottom:1px solid var(--line)}.graph-node-group>div,.graph-relationship-group>div{display:grid;gap:7px;padding:9px}.graph-node-button{display:flex;width:100%;min-width:0;align-items:flex-start;gap:10px;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text);text-align:left}.graph-node-button:hover,.graph-node-button:focus-visible,.graph-node-button.active{border-color:var(--blue);box-shadow:0 0 0 1px color-mix(in srgb,var(--blue) 45%,transparent)}.graph-node-button>span{display:grid;min-width:0;gap:3px}.graph-node-button strong,.graph-node-button small,.graph-node-button em{overflow-wrap:anywhere}.graph-node-button small{color:var(--muted);font-size:11px}.graph-node-button em{color:var(--blue);font-size:11px;font-style:normal}.graph-node-button em.is-gap{color:var(--amber)}.graph-node-dot{width:9px;height:9px;flex:0 0 auto;margin-top:4px;border-radius:50%;background:var(--blue)}.graph-node-dot.route,.graph-node-dot.contract{background:var(--coral)}.graph-node-dot.schema,.graph-node-dot.database{background:var(--mint)}.graph-node-dot.finding{background:var(--amber)}.graph-node-dot.task,.graph-node-dot.test{background:#c5a2ff}.graph-focus-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,340px);gap:12px}.graph-focus,.graph-inspector{display:grid;min-width:0;align-content:start;gap:10px}.graph-selected-node,.graph-inspector{padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.graph-selected-node{display:grid;gap:7px}.graph-selected-node>span,.graph-selected-node>small{color:var(--muted);font-size:12px}.graph-relationship-group>summary>span{display:grid;gap:2px}.graph-relationship-group>summary small{color:var(--muted);font-weight:400}.graph-empty-relationship{padding:12px;color:var(--muted);line-height:1.45}.graph-inspector h3{font-size:18px}.graph-inspector>p{color:var(--muted);overflow-wrap:anywhere}.graph-legend{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;padding-top:4px;color:var(--muted);font-size:11px}.graph-legend span{display:flex;align-items:center;gap:6px}.graph-legend .graph-node-dot{margin:0}.graph-legend small{margin-left:auto}.graph-inspector dl,.contract-facts{display:grid;gap:1px;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:7px;background:var(--line)}.graph-inspector dl>div,.contract-facts>div{display:flex;justify-content:space-between;gap:12px;padding:10px;background:var(--soft)}.graph-inspector dt,.contract-facts dt{color:var(--muted)}.graph-inspector dd,.contract-facts dd{margin:0;text-align:right}
.contract-route-head{align-items:flex-start}.contract-overview-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px}.contract-overview-grid article{align-content:start}.contract-overview-grid h2{display:flex;align-items:center;gap:10px;margin:8px 0 18px}.implementation-chain{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:12px;overflow-x:auto;padding:8px 0}.implementation-chain article{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;min-height:142px;padding:13px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.implementation-chain article:not(:last-child):after{position:absolute;top:50%;right:-10px;color:var(--muted);content:"→"}.implementation-chain article>span{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:var(--raised);color:var(--coral);font-weight:700}.implementation-chain article>div{display:grid;align-content:start;gap:5px;min-width:0}.implementation-chain small,.implementation-chain p{color:var(--muted);font-size:11px}.implementation-chain strong{overflow-wrap:anywhere}.implementation-chain article.missing{border-style:dashed;opacity:.75}
.test-request-preview{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.test-request-preview code{overflow:hidden;color:var(--blue);font-size:15px;text-overflow:ellipsis;white-space:nowrap}.test-capability-grid,.coverage-gap-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.test-capability-grid>div,.coverage-gap-grid>article{display:grid;align-content:start;gap:5px;min-height:110px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.test-capability-grid span,.coverage-gap-grid p{color:var(--muted);font-size:13px;line-height:1.5}.coverage-gap-grid span{color:var(--coral);font-size:27px;font-weight:650}.contract-task-list{display:grid;gap:8px}.contract-task-list>button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:68px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--text);text-align:left}.contract-task-list>button>span{display:grid;gap:4px}.contract-task-list small{color:var(--muted)}.evidence-context-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--muted);font-size:12px}
@media(max-width:900px){.contract-inventory-head{display:none}.contract-row{grid-template-columns:minmax(220px,1.5fr) .8fr .8fr}.contract-row>span:nth-child(4),.contract-row>span:nth-child(5){display:none}.contract-overview-grid,.graph-focus-layout{grid-template-columns:1fr}.graph-health-warning{grid-template-columns:1fr}.graph-inspector{grid-row:auto}.test-capability-grid,.coverage-gap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-governance-links{grid-template-columns:1fr}}
@media(max-width:600px){.kmap-tabs,.contract-tabs{top:60px}.kmap-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-row{grid-template-columns:minmax(0,1fr) auto;padding:13px}.contract-row>span:nth-child(3){display:none}.graph-workspace{padding:13px}.graph-workspace-head{align-items:stretch;flex-direction:column}.graph-health-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.graph-toolbar,.graph-index-browser{grid-template-columns:1fr}.graph-toolbar label:first-child{grid-column:auto}.graph-legend small{width:100%;margin-left:0}.test-request-preview{grid-template-columns:auto minmax(0,1fr)}.test-request-preview button{grid-column:1/-1}.test-capability-grid,.coverage-gap-grid{grid-template-columns:1fr}.evidence-context-bar{align-items:flex-start;flex-direction:column}}

/* Closed-loop workspace: triage, bounded context, contract evidence, and proof. */
.issue-inbox-list,.recent-proof-list{display:grid;gap:8px}.issue-inbox-list article,.recent-proof-list>article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.issue-inbox-list article>span,.recent-proof-list>article>span{display:grid;min-width:0;gap:4px}.issue-inbox-list small,.recent-proof-list small,.recent-proof-list time{color:var(--muted);font-size:12px}.contracts-evidence-panes{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(360px,1.35fr) minmax(250px,.85fr);gap:10px}.contracts-evidence-panes>aside,.contracts-evidence-panes>main{display:grid;min-width:0;align-content:start;gap:10px;padding:15px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.contracts-evidence-panes>aside>button{display:flex;min-width:0;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--soft);color:var(--text);text-align:left}.contracts-evidence-panes>aside>button.active{border-color:var(--coral)}.contracts-evidence-panes>aside>button span{display:grid;min-width:0;gap:2px}.contracts-evidence-panes>aside>button small{color:var(--muted)}.implementation-chain.compact{grid-template-columns:1fr}.implementation-chain.compact article{min-height:72px}.implementation-chain.compact article:not(:last-child):after{top:auto;right:50%;bottom:-12px;content:"↓"}.graph-node-dot.contract{background:var(--coral)}.graph-node-dot.finding{background:var(--amber)}.graph-node-dot.evidence{background:var(--blue)}.graph-edge-list{display:grid;gap:7px}.graph-edge-list article{display:grid;gap:5px;padding:9px;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.graph-edge-list article span{display:flex;gap:6px}.graph-edge-list button,.context-artifact-actions button{padding:4px 7px;border:1px solid var(--line);border-radius:5px;background:var(--raised);color:var(--text);font-size:11px}.context-level-tabs,.task-stage-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.context-level-tabs button,.task-stage-tabs button{min-height:40px;border:0;border-radius:5px;background:transparent;color:var(--muted)}.context-level-tabs button.active,.task-stage-tabs button.active{background:var(--raised);color:var(--text)}.context-artifact-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.task-stage-tabs,.task-stage-mobile{display:none}
@media(max-width:900px){.contracts-evidence-panes{grid-template-columns:1fr}.contracts-evidence-panes>aside:first-child{max-height:260px;overflow:auto}.graph-toolbar{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.issue-inbox-list article{align-items:stretch;flex-direction:column}.issue-inbox-list button{width:100%}.contracts-evidence-panes>main{padding:12px}.task-stage-tabs{position:sticky;z-index:6;top:68px;display:grid;margin:0 -4px;padding:4px;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(12px)}.task-stage-tabs button{padding:5px 3px;font-size:12px}.task-stage-mobile{display:none;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.task-stage-mobile.active{display:grid;gap:10px}.task-stage-tabs~.section-block{display:none}.task-stage-mobile .implementation-path{margin:0}.bottom-nav.nav-4 .nav-item{padding-right:2px;padding-left:2px;font-size:10px}.bottom-nav.nav-4 .nav-item span{max-width:84px;line-height:1.15}.graph-toolbar{grid-template-columns:1fr}.graph-toolbar label:first-child{grid-column:auto}}
.task-objective{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 16px;margin:0 0 12px;padding:15px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.task-objective>div:first-child{display:grid;gap:5px;min-width:0}.task-objective h2{font-size:17px}.task-objective>div:first-child>p:last-child{color:var(--muted);font-size:13px;line-height:1.5}.task-objective-status,.task-objective-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.task-objective-actions{grid-column:1/-1}.task-objective-actions button{min-height:34px;padding:0 12px}.task-unified-workspace{display:grid;gap:10px;margin:0 0 14px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.task-workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.task-workspace-heading>span:first-child{display:grid;gap:4px}.task-workspace-heading>span:first-child>strong{font-size:12px}.task-workspace-context{flex:none;color:var(--blue);font:600 12px "SFMono-Regular",Consolas,monospace}.task-unified-workspace .task-stage-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.task-unified-workspace .task-stage-tabs button{min-width:0;min-height:38px;padding:5px;border:0;border-radius:5px;background:transparent;color:var(--muted);font-size:12px;line-height:1.25}.task-unified-workspace .task-stage-tabs button.active{background:var(--raised);color:var(--text)}.task-stage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px}.task-stage-panel{display:grid;min-width:0;align-content:start;gap:9px;padding:11px;border:1px solid var(--line);border-radius:8px;background:var(--soft)}.task-stage-panel>header{display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--line)}.task-stage-number{display:grid;width:25px;height:25px;flex:none;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--blue) 13%,var(--surface));color:var(--blue);font:700 12px "SFMono-Regular",Consolas,monospace}.task-stage-panel>header>div{display:grid;min-width:0;gap:2px}.task-stage-panel>header h2{font-size:14px}.task-stage-panel>header small,.task-stage-panel>.supporting-copy{color:var(--muted);font-size:11px;line-height:1.45}.task-stage-panel .implementation-path{margin:0}.task-stage-panel .implementation-path:before{left:14px}.task-stage-panel .implementation-path li{grid-template-columns:30px minmax(0,1fr) auto;gap:7px;min-height:65px;padding:8px 0}.task-stage-panel .path-index{width:28px;height:28px;font-size:10px}.task-stage-panel .implementation-path strong{font-size:12px;line-height:1.4}.task-stage-panel .implementation-path code{font-size:10px;line-height:1.4}.task-stage-panel .implementation-path small{font-size:10px}.task-stage-panel .implementation-path li>button{min-height:30px;padding:0 6px;font-size:10px}.task-stage-panel .linked-request-grid{grid-template-columns:1fr;margin-top:0;padding-top:9px}.task-stage-panel .linked-request{min-height:55px;padding:8px}.task-stage-panel .linked-request strong{font-size:12px}.task-stage-panel .linked-request small{font-size:10px}.task-stage-panel footer{display:flex;flex-wrap:wrap;gap:5px;margin-top:auto;padding-top:8px;border-top:1px solid var(--line)}.task-stage-panel footer button{min-height:32px;padding:0 9px;font-size:11px}.task-stage-evidence,.task-stage-artifact-list{display:grid;gap:6px;padding-top:8px;border-top:1px solid var(--line)}.task-stage-evidence>strong,.task-stage-artifact-list>strong{font-size:11px}.task-stage-evidence>article{display:flex;align-items:center;gap:6px;min-width:0}.task-stage-evidence>article>span:last-child{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis}.task-stage-evidence>span,.task-stage-artifact-list>span{color:var(--muted);font-size:10px;line-height:1.4;overflow-wrap:anywhere}.task-evidence-link{display:grid;gap:2px;padding:7px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);text-align:left}.task-evidence-link>span{font-size:10px}.task-evidence-link>small{color:var(--muted);font-size:9px}.task-context-budget{display:grid;gap:7px;padding:9px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.task-context-budget>div{display:flex;align-items:center;justify-content:space-between;gap:7px}.task-context-budget>div>span,.task-context-budget>small{color:var(--muted);font-size:10px;line-height:1.4}.task-context-budget>div>strong{font:600 11px "SFMono-Regular",Consolas,monospace;white-space:nowrap}.task-context-budget .context-token-meter{display:block;height:6px}.task-context-budget .context-token-meter>span{display:block;height:100%;border-radius:inherit;background:var(--mint)}.task-stage-panel>.primary-button{width:100%;min-height:38px;padding:0 8px;font-size:12px}.task-verification-summary{display:grid;justify-items:start;gap:5px}.task-verification-summary>p{color:var(--muted);font-size:11px;line-height:1.45}
.task-contract-reference{display:grid;gap:4px;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}.task-contract-reference>span,.task-contract-reference>small{color:var(--muted);font-size:11px}.task-contract-reference>strong{overflow-wrap:anywhere;font:600 12px/1.45 "SFMono-Regular",Consolas,monospace}
.artifact-file-link{display:inline-flex;max-width:100%;width:max-content;min-width:0;align-items:flex-start;padding:0;border:0;background:transparent;color:var(--blue);text-align:left;cursor:pointer}.artifact-file-link:hover{text-decoration:underline}.artifact-file-link code{max-width:100%;overflow-wrap:anywhere;word-break:break-word;white-space:normal}.task-stage-artifact-list .artifact-file-link{font-size:10px}
@media(max-width:700px){.task-stage-grid{grid-template-columns:1fr}.task-unified-workspace .task-stage-tabs{position:sticky;z-index:6;top:68px;margin:0 -1px;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(12px)}.task-unified-workspace .task-stage-tabs button{font-size:clamp(9px,2.8vw,12px)}.task-stage-panel{display:none}.task-stage-panel.active{display:grid}.task-stage-panel .implementation-path li{grid-template-columns:34px minmax(0,1fr) auto;min-height:72px}.task-stage-panel .path-index{width:30px;height:30px}.task-stage-panel .implementation-path:before{left:15px}.task-stage-panel .implementation-path strong{font-size:13px}.task-stage-panel .implementation-path code{font-size:11px}.task-stage-panel .implementation-path small{font-size:10px}.task-stage-panel .linked-request strong{font-size:13px}.task-stage-panel .linked-request small{font-size:11px}}
@media(max-width:420px){.task-objective{grid-template-columns:minmax(0,1fr)}.task-objective-status{justify-content:flex-start}.task-workspace-heading{align-items:flex-start;flex-wrap:wrap}.task-workspace-heading>span:first-child{min-width:0}.task-workspace-context{margin-left:auto;font-size:10px}}
.task-stage-grid{grid-template-columns:minmax(0,1fr);align-items:stretch}.task-stage-panel{display:grid;width:100%;min-width:0;overflow-wrap:anywhere}.task-stage-panel>*{min-width:0;max-width:100%}.task-stage-panel .implementation-path li{min-width:0;grid-template-columns:30px minmax(0,1fr) auto}.task-stage-panel .implementation-path li>div{min-width:0;overflow-wrap:anywhere}.task-stage-panel .implementation-path strong,.task-stage-panel .implementation-path code,.task-stage-panel .implementation-path small,.task-stage-evidence>article>span:last-child,.task-stage-artifact-list>span,.task-context-budget small,.task-contract-reference>*{overflow-wrap:anywhere;word-break:break-word}.task-stage-panel footer{margin-top:0}.task-stage-panel>.primary-button{white-space:normal}
@media(max-width:420px){.task-unified-workspace{padding:10px}.task-stage-panel{padding:10px}.task-stage-panel .implementation-path li{grid-template-columns:28px minmax(0,1fr);gap:6px}.task-stage-panel .implementation-path li>button{grid-column:2;justify-self:start}.task-stage-panel .linked-request{min-width:0}.task-stage-panel .linked-request strong,.task-stage-panel .linked-request small{overflow-wrap:anywhere;word-break:break-word}}
/* Contract workspaces: progressive disclosure instead of compressed columns. */
.contract-browser { margin-top: 24px; }
.contract-browser .section-heading p, .chain-guidance { color: var(--muted, #a8b3bd); font-size: 14px; line-height: 1.6; }
.contract-search { display: grid; gap: 8px; margin: 20px 0; font-size: 13px; }
.contract-search input { width: 100%; min-height: 44px; padding: 10px 14px; border: 1px solid var(--strong); border-radius: 8px; background: var(--soft); color: var(--text); }
.contract-accordion, .chain-group { border: 1px solid var(--line); border-radius: 10px; margin: 10px 0; background: var(--surface); color: var(--text); overflow: hidden; }
.contract-accordion > summary { display: flex; gap: 14px; align-items: center; padding: 18px; cursor: pointer; }
.contract-accordion > summary::before, .chain-group > summary::before { content: '+'; color: var(--coral); flex: 0 0 16px; font-size: 20px; }
.contract-accordion[open] > summary::before, .chain-group[open] > summary::before { content: '−'; }
.contract-accordion summary::-webkit-details-marker, .chain-group summary::-webkit-details-marker { display: none; }
.contract-route-label { display: grid; gap: 5px; min-width: 0; flex: 1; }
.contract-route-label strong { color: var(--text); font-size: 16px; overflow-wrap: anywhere; line-height: 1.5; }
.contract-route-label small { color: var(--muted); font-size: 12px; overflow-wrap: anywhere; }
:root[data-theme="dark"] .contract-accordion>summary .contract-route-label strong{color:#f8fafc}
:root[data-theme="dark"] .contract-accordion>summary .contract-route-label small{color:#cbd5e1}
.contract-accordion > summary .method-badge { flex-shrink: 0; }
.accordion-content { border-top: 1px solid var(--line); padding: 4px 18px 20px; }
.chain-group > summary { display: flex; align-items: center; gap: 10px; cursor: pointer; padding: 15px; font-size: 14px; }
.chain-group > summary strong { flex: 1; }
.chain-group > summary > span { color: var(--muted); font-size: 12px; }
.chain-references { padding: 0 15px 15px; }
.chain-references > p { font-size: 13px; color: var(--muted); line-height: 1.6; }
.chain-reference { display: grid; gap: 7px; border-top: 1px solid var(--line); padding: 14px 0; min-width: 0; }
.chain-reference strong { font-size: 14px; overflow-wrap: anywhere; }
.chain-reference code { color: var(--coral); font-size: 12px; white-space: normal; overflow-wrap: anywhere; }
.chain-reference small { color: var(--muted); font-size: 12px; overflow-wrap: anywhere; }
.chain-reference button { justify-self: start; }
.contract-tabs, .kmap-tabs { flex-wrap: wrap; height: auto; gap: 5px; }
.contract-tabs button, .kmap-tabs button { white-space: normal; min-height: 42px; min-width: 0; }
.contract-route-head h1 { overflow-wrap: anywhere; }
.contract-accordion[hidden] { display: none; }
summary:focus-visible { outline: 2px solid var(--coral); outline-offset: -3px; }
.api-filter-bar{display:grid;grid-template-columns:minmax(170px,1fr) repeat(3,auto) auto}.api-filter-bar input{width:100%;min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:var(--soft);color:var(--text)}.status-dimension{display:grid!important;gap:3px}.status-dimension>small{color:var(--muted);font-size:10px;font-weight:600}.api-row-tags{display:flex;justify-content:flex-end;gap:7px}.api-run-time.is-stale{color:var(--amber)!important}.request-statuses{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.stale-result-warning{margin-top:10px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--line));border-radius:7px;background:color-mix(in srgb,var(--amber) 8%,var(--surface));color:var(--amber);font-size:12px}
@media(max-width:700px){.api-filter-bar{grid-template-columns:1fr 1fr}.api-filter-bar label:first-child,.api-filter-bar>span{grid-column:1/-1}.api-row-tags{display:grid}.status-dimension>small{display:none}}
@media (max-width: 640px) {
  .contract-accordion > summary { flex-wrap: wrap; padding: 13px; gap: 9px; }
  .contract-route-label { flex-basis: calc(100% - 100px); }
  .contract-accordion > summary > .status-tag { margin-left: 25px; }
  .accordion-content { padding: 4px 10px 14px; }
  .chain-group > summary { flex-wrap: wrap; }
  .chain-group > summary > span { margin-left: 26px; }
  .contract-overview-grid { grid-template-columns: minmax(0, 1fr); }
  .contract-tabs button, .kmap-tabs button { flex: 1 1 40%; font-size: 13px; }
  .contract-browser .action-row { flex-wrap: wrap; }
}

/* Final task-workspace cascade: keep side-panel rules above legacy responsive layers. */
.app-shell.route-task .task-workspace-heading{align-items:flex-start;flex-wrap:wrap;gap:6px 10px}
.app-shell.route-task .task-workspace-heading>span:first-child{min-width:0;flex:1 1 220px}
.app-shell.route-task .task-workspace-context{flex:0 1 auto;margin-left:auto;white-space:normal}
.app-shell.route-task .task-stage-number{width:22px;height:22px;background:rgba(13,148,136,.12);color:#2dd4bf;font-size:.75rem;font-weight:700;border-radius:999px}
.app-shell.route-task .task-stage-panel .implementation-path code,.app-shell.route-task .task-stage-artifact-list .artifact-file-link{font:500 .75rem/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;overflow-wrap:anywhere;word-break:break-all;white-space:normal}
.task-artifact-overflow{overflow:hidden;border-top:1px solid var(--line)}
.task-artifact-overflow>summary{display:flex;min-height:36px;align-items:center;gap:6px;padding:6px 2px;color:var(--coral);font-size:.75rem;font-weight:600;cursor:pointer;list-style:none}
.task-artifact-overflow>summary::-webkit-details-marker{display:none}
.task-artifact-overflow>summary:before{content:"+";font-size:1rem}
.task-artifact-overflow[open]>summary:before{content:"−"}
.task-artifact-overflow>.implementation-path{margin:0}
@media(prefers-color-scheme:light){
  :root:not(.aipi-ide):not([data-theme]) .app-shell.route-task .eyebrow{color:#0d9488}
  :root:not(.aipi-ide):not([data-theme]) .app-shell.route-task .task-heading>div>p:not(.eyebrow),:root:not(.aipi-ide):not([data-theme]) .app-shell.route-task .task-objective p,:root:not(.aipi-ide):not([data-theme]) .app-shell.route-task .task-stage-panel p,:root:not(.aipi-ide):not([data-theme]) .app-shell.route-task .section-block>.supporting-copy,:root:not(.aipi-ide):not([data-theme]) .app-shell.route-task .task-stage-panel small{color:#334155}
  :root:not(.aipi-ide):not([data-theme]) .app-shell.route-task .task-stage-number{color:#0d9488}
  :root:not(.aipi-ide):not([data-theme]) .task-unified-workspace .task-stage-panel{background:#f8fafc}
  :root:not(.aipi-ide):not([data-theme]) .task-unified-workspace .task-contract-reference,:root:not(.aipi-ide):not([data-theme]) .task-unified-workspace .task-context-budget,:root:not(.aipi-ide):not([data-theme]) .task-unified-workspace .task-evidence-link,:root:not(.aipi-ide):not([data-theme]) .task-unified-workspace .coverage-message{background:#fff}
}
@media(max-width:440px){
  .app-shell.route-task .route-view{padding:10px 10px 68px}
  .app-shell.route-task .task-objective,.app-shell.route-task .task-unified-workspace,.app-shell.route-task .section-block{padding:12px}
  .app-shell.route-task .task-stage-panel{padding:10px}
  .app-shell.route-task .task-workspace-context{margin-left:0}
}
.issue-inbox-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.generate-test-button{justify-self:start;margin-top:6px}.payload-diff{grid-column:1/-1;display:grid;gap:4px;width:100%;margin-top:7px;padding:8px;border:1px solid var(--line);border-radius:7px;background:color-mix(in srgb,var(--soft) 80%,transparent)}.payload-diff>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:8px;align-items:baseline}.payload-diff span{color:var(--muted);font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.payload-diff code{min-width:0;color:var(--text);font:500 11px/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;white-space:normal;overflow-wrap:anywhere}.payload-diff>small{display:flex;flex-wrap:wrap;gap:4px;color:var(--amber);font-size:10px}.payload-diff>small b{padding:1px 4px;border-radius:4px;background:color-mix(in srgb,var(--amber) 12%,transparent)}.payload-diff>small.aligned{color:#2dd4bf}@container(max-width:440px){.payload-diff>div{grid-template-columns:1fr;gap:2px}.issue-inbox-actions{justify-content:stretch}.issue-inbox-actions button{flex:1 1 auto}}
.working-tree-impact{display:flex;align-items:center;gap:9px;padding:7px 12px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--soft) 90%,transparent);color:var(--muted)}.working-tree-impact.has-impact{background:color-mix(in srgb,var(--amber) 9%,var(--surface));color:var(--text)}.working-tree-impact>.button-icon{width:15px;height:15px;color:var(--amber)}.working-tree-impact>div{display:grid;min-width:0;gap:1px;flex:1}.working-tree-impact strong{font-size:11px}.working-tree-impact small{overflow:hidden;color:var(--muted);font:500 10px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.working-tree-impact button{min-height:26px;padding:0 7px;font-size:10px}@media(max-width:520px){.working-tree-impact{flex-wrap:wrap}.working-tree-impact button{margin-left:24px}}
.task-create-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:2px}
.task-create-stepper button{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;column-gap:8px;min-width:0;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);text-align:left}
.task-create-stepper button>span{grid-row:span 2;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--soft);font-size:12px;font-weight:700}
.task-create-stepper button strong{overflow:hidden;color:var(--text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.task-create-stepper button small{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.task-create-stepper button.is-current{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 7%,var(--surface));color:var(--coral)}
.task-create-stepper button.is-current>span,.task-create-stepper button.is-complete>span{background:var(--coral);color:#fff}
.task-create-stepper button.is-complete>span{background:var(--mint);color:#08251d}
.task-create-stepper button:disabled{opacity:.56;cursor:not-allowed}
.task-create-shell{width:min(100%,880px);margin-inline:auto;container-type:inline-size}
.task-create-shell .task-create-card{gap:16px;padding:18px}
.task-create-shell .task-create-label{font-size:13px;line-height:20px}
.task-create-shell .task-create-label small{font-size:11px;line-height:17px}
.task-create-stage{align-content:start;min-height:270px}
.task-intent-options{display:grid;gap:9px;margin:0;padding:0;border:0}
.task-intent-options>label{position:relative;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;padding:13px;border:1px solid var(--line);border-radius:8px;background:var(--soft);cursor:pointer}
.task-intent-options>label.active{border-color:var(--coral);background:color-mix(in srgb,var(--coral) 8%,var(--surface))}
.task-intent-options input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--coral)}
.task-intent-options label>span{display:grid;gap:3px}.task-intent-options strong{font-size:14px;line-height:20px}.task-intent-options small{color:var(--muted);font-size:12px;line-height:18px}
.task-step-guidance,.task-search-message{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.task-search-message{padding:10px 12px;border:1px dashed var(--line);border-radius:7px;background:var(--soft);overflow-wrap:anywhere}
.task-search-message.is-error,.task-project-search-status.is-error{border-color:color-mix(in srgb,var(--danger) 50%,var(--line));color:var(--danger)}
.task-project-search{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px}
.task-project-search>.field-label{min-width:0;margin:0}.task-project-search>.secondary-button{min-height:42px}
.task-project-search-status{display:grid;gap:2px;padding:9px 11px;border-radius:7px;background:var(--soft);color:var(--muted);font-size:12px;line-height:18px}.task-project-search-status strong{color:var(--text);font-weight:650}.task-project-search-status span,.task-project-search-status small{overflow-wrap:anywhere}.task-project-search-status small{font-size:11px}
.task-create-subheading{margin-top:5px}
.task-contract-options{display:grid;gap:8px;min-width:0}
.task-contract-option{display:grid;grid-template-columns:18px auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--soft);cursor:pointer;transition:border-color .14s ease,background .14s ease,transform .14s ease}
.task-contract-option:hover{border-color:var(--strong);transform:translateY(-1px)}
.task-contract-option.is-match{border-color:color-mix(in srgb,var(--coral) 48%,var(--line))}
.task-contract-option.is-selected{border-color:var(--mint);background:color-mix(in srgb,var(--mint) 7%,var(--surface))}
.task-contract-option>input{width:17px;height:17px;margin:0;accent-color:var(--mint)}
.task-contract-method{display:inline-grid;min-width:42px;height:24px;padding:0 6px;place-items:center;border-radius:5px;background:color-mix(in srgb,var(--mint) 12%,var(--surface));color:var(--mint);font:700 10px/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
.task-contract-method.method-post{background:color-mix(in srgb,#0ea5e9 12%,var(--surface));color:#0ea5e9}.task-contract-method.method-put,.task-contract-method.method-patch{background:color-mix(in srgb,var(--amber) 13%,var(--surface));color:var(--amber)}.task-contract-method.method-delete{background:color-mix(in srgb,var(--danger) 12%,var(--surface));color:var(--danger)}
.task-contract-copy{display:grid;min-width:0;gap:3px}.task-contract-title{display:flex;min-width:0;align-items:center;gap:7px}.task-contract-title strong{min-width:0;overflow-wrap:anywhere;font:650 13px/18px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.task-contract-title .status-chip{flex:0 0 auto}
.task-contract-copy small{color:var(--muted);font-size:11px;line-height:17px}.task-contract-copy code{overflow:hidden;color:var(--muted);font:500 11px/17px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;text-overflow:ellipsis;white-space:nowrap}.task-contract-option>b{color:var(--coral);font-size:11px}
.task-source-match-list{display:grid;gap:7px}
.task-source-match{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--soft);color:var(--text);text-align:left;cursor:pointer}
.task-source-match>span{display:grid;min-width:0;gap:4px}.task-source-match strong,.task-source-match small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-source-match small{display:flex;min-width:0;align-items:center;gap:7px;color:var(--muted);font:11px/17px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.task-source-match small i{flex:0 0 auto;padding:1px 5px;border-radius:4px;background:color-mix(in srgb,var(--coral) 9%,var(--surface));color:var(--coral);font:700 9px/15px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;text-transform:uppercase}.task-source-match>b{color:var(--coral);font-size:11px}.task-source-match.is-selected{border-color:var(--mint);background:color-mix(in srgb,var(--mint) 7%,var(--surface))}
.task-chain-artifact-list{display:grid;gap:5px;margin:8px 0 0;padding-left:18px;color:var(--muted);font:11px/17px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;overflow-wrap:anywhere}
.task-chain-preview{display:grid;gap:8px;min-width:0}.task-chain-preview>div{display:grid;gap:8px}.task-chain-preview>article{padding:11px 12px;border:1px solid var(--line);border-radius:7px;background:var(--soft)}.task-chain-preview>article>strong{font:650 12px/18px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.task-chain-preview>article ul{display:grid;gap:4px;margin:8px 0 0;padding-left:18px;color:var(--muted);font:500 11px/17px ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
.task-planned-contract{display:grid;gap:13px;padding:13px;border:1px solid color-mix(in srgb,var(--coral) 36%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--coral) 4%,var(--surface))}.task-planned-contract-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.task-planned-contract-head>div{display:grid;gap:3px}.task-planned-contract-head small{color:var(--muted);font-size:12px;line-height:18px}.task-json-fields textarea{font:500 12px/1.55 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.task-provision-summary{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:9px;padding:10px;border-radius:7px;background:var(--soft)}.task-provision-summary>span{display:grid;width:28px;height:28px;place-items:center;border-radius:6px;background:color-mix(in srgb,var(--mint) 12%,var(--surface));color:var(--mint)}.task-provision-summary>span .button-icon{width:15px;height:15px}.task-provision-summary>div{display:grid;gap:2px}.task-provision-summary small{color:var(--muted);font-size:11px;line-height:17px}
.task-context-seed{display:grid;gap:9px;padding:12px;border:1px solid color-mix(in srgb,var(--mint) 32%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--mint) 5%,var(--surface))}.task-context-seed>div{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px}.task-context-seed>div>span{display:grid;width:28px;height:28px;place-items:center;border-radius:6px;background:color-mix(in srgb,var(--mint) 12%,var(--surface));color:var(--mint)}.task-context-seed .button-icon{width:15px;height:15px}.task-context-seed>div>div{display:grid;gap:2px}.task-context-seed small,.task-context-seed p{margin:0;color:var(--muted);font-size:11px;line-height:17px}.task-context-seed meter{width:100%;height:7px;accent-color:var(--mint)}
.task-create-context-note{padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--soft)}.task-create-context-note strong{font-size:13px}.task-create-context-note ol{display:grid;gap:5px;margin:8px 0;padding-left:19px;color:var(--muted);font-size:12px;line-height:18px}.task-create-context-note small{color:var(--muted);font-size:11px}
.task-create-step-actions:has([data-create-task]){grid-template-columns:minmax(0,.7fr) minmax(0,.7fr) minmax(0,1.6fr)}
.general-traffic-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.general-traffic-controls .traffic-record-button{height:38px;padding:0 12px;font-size:12px}.general-traffic-controls .traffic-record-button .button-icon{width:15px;height:15px}.general-traffic-controls .traffic-record-button span{display:inline}
@media(max-width:700px){.general-traffic-controls .traffic-record-button{width:auto;padding:0 11px}.general-traffic-controls .traffic-record-button span{display:inline}}
@media(max-width:520px){.task-create-stepper{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.task-create-stepper button{display:flex;min-height:62px;flex-direction:column;justify-content:center;gap:4px;padding:6px;text-align:center}.task-create-stepper button>span{width:22px;height:22px;grid-row:auto}.task-create-stepper button strong{width:100%;font-size:10px}.task-create-stepper button small{display:none}.task-project-search{grid-template-columns:1fr}.task-project-search>.secondary-button{width:100%}.task-contract-option{grid-template-columns:18px auto minmax(0,1fr);align-items:start;padding:10px}.task-contract-option>b{grid-column:3;justify-self:start}.task-contract-title{align-items:flex-start;flex-direction:column;gap:4px}.task-contract-copy code{white-space:normal;overflow-wrap:anywhere}.task-json-fields,.task-route-fields{grid-template-columns:1fr}.task-create-step-actions:has([data-create-task]){grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.task-create-step-actions:has([data-create-task])>[data-create-task="context"]{grid-column:1/-1}.task-create-stage{min-height:0}}
@container(max-width:440px){.task-create-shell{gap:10px;padding-bottom:82px}.task-create-header{gap:8px}.task-create-header h1{font-size:20px;line-height:26px}.task-create-header p:last-child{font-size:12px;line-height:18px}.task-create-shell .task-create-card{gap:12px;padding:12px}.task-create-shell .task-create-label{align-items:flex-start;flex-direction:column;gap:3px;padding-bottom:8px}.task-intent-options{gap:6px}.task-intent-options>label{padding:9px}.task-intent-options small{line-height:17px}.task-planned-contract{padding:10px}.task-create-actions{bottom:60px;padding:7px}.task-create-actions button{min-height:40px}.task-source-match strong,.task-source-match small{white-space:normal;overflow-wrap:anywhere}.task-source-match small{align-items:flex-start;flex-direction:column;gap:2px}}

/* IDE webview responsive contract. Keep the shared dashboard fluid inside both
   a narrow activity-bar view and a wide editor panel without horizontal loss. */
body[class*="vscode-"] .app-shell{
  width:99%;
  max-width:99%;
  min-width:0;
  margin-inline:auto;
  overflow-x:clip;
}
body[class*="vscode-"] .route-view,
body[class*="vscode-"] .route-home .route-view,
body[class*="vscode-"] .route-project .route-view,
body[class*="vscode-"] .route-tasks .route-view,
body[class*="vscode-"] .route-task .route-view{
  width:99%;
  max-width:none;
  min-width:0;
  margin-inline:auto;
  padding:clamp(12px,2.5vw,22px) clamp(8px,2vw,18px) calc(84px + env(safe-area-inset-bottom));
}
body[class*="vscode-"] .bottom-nav{
  right:.5%;
  left:.5%;
  width:99%;
}
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]){
  font-size:clamp(13px,1.5vw,16px);
  line-height:1.5;
}
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) h1{font-size:clamp(1.55rem,5.2vw,2.35rem);line-height:1.16}
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) h2{font-size:clamp(1.08rem,3.4vw,1.45rem);line-height:1.3}
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) h3{font-size:clamp(.95rem,2.7vw,1.15rem);line-height:1.4}
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) button,
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) input,
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) select,
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) textarea{min-width:0;font-size:clamp(12px,1.7vw,15px)}
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) .route-view>*,
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) .section-block>*,
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) .figma-card>*,
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) .task-row-v2>*,
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) .graph-workspace>*{min-width:0;max-width:100%}
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) :is(h1,h2,h3,p,small,strong,code,a,span){overflow-wrap:anywhere}
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) .management-card{
  padding:clamp(12px,2.5vw,18px);
  container-type:inline-size;
}
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) .management-resource-actions{
  justify-content:flex-start;
  width:100%;
}
:is(.aipi-ide, body[data-aipi-channel="aipi.ide.v1"], body[class*="vscode-"]) .management-resource-actions button{
  white-space:nowrap;
  max-width:100%;
}

/* The project identity is the header anchor. Main navigation pages intentionally
   omit the redundant all-projects back control. */
.project-context-header{min-width:0;gap:10px}
.project-main-header .project-header-identity{flex:1 1 auto}
.project-header-identity{min-width:0;overflow:hidden}
.project-header-identity>span{min-width:0}
.project-header-meta{display:flex;min-width:0;align-items:center;gap:7px;margin-top:3px}
.project-header-meta time{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.project-context-header .header-actions{flex:0 1 auto;min-width:0}
.header-environment-control{display:block;min-width:0}
.header-environment-control select{width:clamp(88px,20vw,170px);max-width:100%;height:38px;padding:0 28px 0 10px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font-weight:600;text-overflow:ellipsis}
.project-header-back{flex:0 0 auto}

/* Shared component containment. */
.section-heading,.page-heading,.inline-heading,.card-title-row{min-width:0;flex-wrap:wrap}
.status-chip,.status-tag{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.action-row{min-width:0;flex-wrap:wrap}
.action-row>*{max-width:100%}
.task-row-v2{overflow:hidden}
.task-row-title{align-items:center;flex-wrap:wrap}
.task-row-title h3{min-width:min(100%,180px);flex:1 1 220px;margin:0}
.task-row-title h3 a{display:block;min-width:0;white-space:normal;overflow-wrap:anywhere}
.task-row-description{white-space:normal;overflow-wrap:anywhere}
.task-row-status{display:flex;align-items:flex-start;justify-content:flex-start;flex-wrap:wrap;gap:6px}
.task-row-status .status-chip{flex:0 1 auto;white-space:normal}
.task-status-filters{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}
.task-status-filters button{flex:1 0 auto;white-space:nowrap}
.milestone-card,.milestone-route-card{min-width:0;overflow:hidden}
.graph-blind-spots .task-row-v2{align-items:start}
.graph-blind-spot>.action-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;width:min(100%,420px)}
.graph-blind-spot>.action-row select{width:100%}
.graph-blind-spot>.action-row .quiet-button,
.graph-blind-spot>.action-row .secondary-button{white-space:normal}
.contract-accordion>summary{min-width:0}
.contract-route-label{min-width:0}
.contract-route-label strong,.contract-route-label small{white-space:normal;word-break:break-word}
.graph-node-button>span{min-width:0}
.graph-node-button strong,.graph-node-button small,.graph-node-button em{white-space:normal;word-break:break-word}
.working-tree-impact{min-width:0}

@media(max-width:700px){
  body[class*="vscode-"] .mobile-header{padding:8px 10px}
  body[class*="vscode-"] .project-context-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
  body[class*="vscode-"] .project-detail-header{grid-template-columns:auto minmax(0,1fr)}
  body[class*="vscode-"] .project-detail-header .header-actions{grid-column:1/-1;justify-self:stretch}
  body[class*="vscode-"] .project-main-header .header-actions{justify-self:end}
  body[class*="vscode-"] .project-header-meta time{display:none}
  body[class*="vscode-"] .task-row-v2{grid-template-columns:minmax(0,1fr);gap:12px;padding:clamp(11px,3vw,15px)}
  body[class*="vscode-"] .task-row-status{justify-items:start}
  body[class*="vscode-"] .graph-blind-spot>.action-row{grid-template-columns:minmax(0,1fr)}
  body[class*="vscode-"] .graph-blind-spot>.action-row>*{width:100%}
  body[class*="vscode-"] .contract-accordion>summary{align-items:flex-start}
  body[class*="vscode-"] .bottom-nav .nav-item{font-size:clamp(10px,2.5vw,13px)}
  body[class*="vscode-"] .bottom-nav .nav-item span{max-width:100%;line-height:1.15;white-space:normal}
}
@media(max-width:520px){
  body[class*="vscode-"] .project-main-header{grid-template-columns:minmax(0,1fr) auto}
  body[class*="vscode-"] .project-main-header .header-actions{grid-column:1/-1;width:100%;justify-content:flex-end}
  body[class*="vscode-"] .project-main-header .header-environment-control{flex:1 1 auto}
  body[class*="vscode-"] .project-main-header .header-environment-control select{width:100%}
  body[class*="vscode-"] .project-header-identity small{font-size:10px}
  body[class*="vscode-"] .project-header-meta .status-chip{font-size:10px}
  body[class*="vscode-"] .working-tree-impact{display:grid;grid-template-columns:auto minmax(0,1fr)}
  body[class*="vscode-"] .working-tree-impact button{grid-column:2;width:max-content;max-width:100%;margin-left:0}
  body[class*="vscode-"] .milestone-home-actions{display:grid;width:100%;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  body[class*="vscode-"] .milestone-home-actions button{width:100%;padding-inline:8px;white-space:normal}
  body[class*="vscode-"] .task-row-title h3{flex-basis:100%}
  body[class*="vscode-"] .task-row-status .status-chip{flex:1 1 calc(50% - 6px)}
  body[class*="vscode-"] .section-block{padding:clamp(11px,3vw,16px)}
  body[class*="vscode-"] .graph-health-strip,
  body[class*="vscode-"] .kmap-summary{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:360px){
  body[class*="vscode-"] .project-header-identity img{width:28px;height:28px}
  body[class*="vscode-"] .project-header-identity small{display:none}
  body[class*="vscode-"] .header-actions{gap:4px}
  body[class*="vscode-"] .header-settings,
  body[class*="vscode-"] .header-tool{width:34px;height:34px!important}
  body[class*="vscode-"] .task-row-status .status-chip{flex-basis:100%}
  body[class*="vscode-"] .bottom-nav{padding-inline:3px}
  body[class*="vscode-"] .bottom-nav .nav-item{padding-inline:1px;font-size:10px}
}

/* Keep the shared dashboard layout fluid inside narrow IDE webviews. */
body[class*="vscode-"] #app,
body[class*="vscode-"] .app-shell{
  width:100%;
  max-width:100%;
  min-width:0;
}
body[class*="vscode-"] .route-view{
  width:100%;
  max-width:none;
  min-width:0;
  padding-inline:clamp(10px,3vw,16px);
  font-size:clamp(12px,3.5vw,14px);
}
body[class*="vscode-"] .route-view h1{font-size:clamp(1.35rem,5vw,1.8rem)}
body[class*="vscode-"] .route-view h2{font-size:clamp(1rem,3.8vw,1.15rem)}
body[class*="vscode-"] .route-view h3{font-size:clamp(.9rem,3.5vw,1rem)}
body[class*="vscode-"] .route-view :is(.section-block,.project-card,.task-row-v2,.milestone-card,.milestone-route-card,.contract-accordion,.chain-group,.workflow-card,.task-stage-panel,.task-unified-workspace){
  min-width:0;
  max-width:100%;
}
body[class*="vscode-"] .route-view :is(.page-heading,.section-heading,.inline-heading,.action-row,.task-row-status,.tag-row,.figma-tags){
  min-width:0;
  flex-wrap:wrap;
}
body[class*="vscode-"] .route-view .status-chip{
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
}
body[class*="vscode-"] .project-context-header{min-width:0}
body[class*="vscode-"] .project-header-identity{min-width:0;max-width:100%}
body[class*="vscode-"] .project-header-identity>span{min-width:0;flex:1}
body[class*="vscode-"] .project-header-identity>span>strong{
  display:-webkit-box;
  overflow:hidden;
  white-space:normal;
  overflow-wrap:anywhere;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
body[class*="vscode-"] .header-actions{min-width:0;max-width:100%;flex-wrap:wrap}
body[class*="vscode-"] .header-environment-control{min-width:0;max-width:100%}
body[class*="vscode-"] .header-environment-control select{min-width:0;max-width:100%}
@media(max-width:520px){
  body[class*="vscode-"] .project-header-identity{align-items:flex-start}
  body[class*="vscode-"] .project-header-identity>span>strong{font-size:12px;line-height:1.25}
  body[class*="vscode-"] .project-detail-header .header-actions{grid-column:1/-1;width:100%}
}

/* Narrow IDE panels: let content use the panel width and keep labels readable. */
body[class*="vscode-"] .route-view{
  width:99%;
  max-width:none;
  padding-right:0;
  padding-left:0;
}
body[class*="vscode-"] .route-view > :is(
  .page-heading,
  .section-block,
  .figma-card,
  .overview-controls,
  .overview-delivery-grid,
  .project-workflow,
  .overview-pulse,
  .task-toolbar,
  .task-list-v2,
  .task-unified-workspace,
  .task-objective,
  .task-findings,
  .external-link-list
){
  width:99%;
  max-width:none;
  min-width:0;
  margin-right:auto;
  margin-left:auto;
}
body[class*="vscode-"] .route-view :is(.figma-card,.section-block,.task-row-v2,.task-unified-workspace,.task-stage-panel,.task-findings article,.external-link-list article,.overview-controls,.overview-purpose,.overview-milestone){
  min-width:0;
  max-width:100%;
}
body[class*="vscode-"] .offline-banner{
  display:grid;
  grid-template-columns:minmax(0,150px) minmax(0,1fr);
  align-items:start;
  gap:6px 12px;
  overflow-wrap:normal;
}
body[class*="vscode-"] .offline-banner strong{
  min-width:0;
  overflow-wrap:normal;
  word-break:normal;
}
body[class*="vscode-"] .offline-banner span{min-width:0;overflow-wrap:anywhere}
body[class*="vscode-"] .task-findings article{
  grid-template-columns:minmax(0,1fr);
  justify-items:start;
  gap:7px;
}
body[class*="vscode-"] .task-findings article>.status-chip{
  grid-row:auto;
  justify-self:start;
  max-width:100%;
  white-space:normal;
  overflow-wrap:normal;
  word-break:normal;
}
body[class*="vscode-"] .task-findings article>strong,
body[class*="vscode-"] .task-findings article>small{
  width:100%;
  min-width:0;
  overflow-wrap:anywhere;
  word-break:normal;
}
body[class*="vscode-"] .task-stage-evidence>article{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  justify-items:start;
  align-items:start;
  gap:5px;
}
body[class*="vscode-"] .task-stage-evidence>article>*{min-width:0;max-width:100%}
body[class*="vscode-"] .task-stage-evidence>article>span:last-child{
  width:100%;
  overflow:visible;
  overflow-wrap:anywhere;
  text-overflow:clip;
  white-space:normal;
}
body[class*="vscode-"] .task-row-v2{
  grid-template-columns:minmax(0,1fr);
  width:100%;
}
body[class*="vscode-"] .task-row-main,
body[class*="vscode-"] .task-row-status,
body[class*="vscode-"] .task-row-title{min-width:0}
body[class*="vscode-"] .task-row-title{align-items:flex-start;flex-wrap:wrap}
body[class*="vscode-"] .task-row-title h3{
  flex:1 1 100%;
  min-width:0;
  overflow:visible;
  white-space:normal;
  overflow-wrap:anywhere;
}
body[class*="vscode-"] .task-row-description{
  display:block;
  max-width:100%;
  overflow:visible;
  white-space:normal;
  overflow-wrap:anywhere;
}
body[class*="vscode-"] .task-row-status{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  justify-content:stretch;
  justify-items:stretch;
  width:100%;
}
body[class*="vscode-"] .task-row-status .status-chip{
  width:100%;
  min-width:0;
  justify-content:flex-start;
  white-space:normal;
  overflow-wrap:anywhere;
  text-overflow:clip;
}
body[class*="vscode-"] .implementation-path li{
  grid-template-columns:34px minmax(0,1fr);
}
body[class*="vscode-"] .implementation-path li>button{
  grid-column:2;
  justify-self:start;
  max-width:100%;
  white-space:normal;
}
body[class*="vscode-"] .implementation-path strong,
body[class*="vscode-"] .implementation-path code{
  min-width:0;
  overflow:visible;
  text-overflow:clip;
  white-space:normal;
  overflow-wrap:anywhere;
}
body[class*="vscode-"] .linked-request{
  grid-template-columns:auto minmax(0,1fr);
  width:100%;
  min-width:0;
}
body[class*="vscode-"] .linked-request>span{grid-row:1/3}
body[class*="vscode-"] .linked-request strong,
body[class*="vscode-"] .linked-request small{
  min-width:0;
  overflow-wrap:anywhere;
  word-break:normal;
}
body[class*="vscode-"] .payload-diff>div{grid-template-columns:minmax(0,1fr)}
body[class*="vscode-"] .payload-diff span,
body[class*="vscode-"] .payload-diff code{min-width:0;overflow-wrap:anywhere;word-break:normal}

body.vscode-dark,
body.vscode-high-contrast{
  color-scheme:dark;
  --bg:var(--vscode-sideBar-background,#131313);
  --surface:var(--vscode-editor-background,#181818);
  --raised:var(--vscode-input-background,#202020);
  --soft:var(--vscode-sideBar-background,#1b1b1c);
  --line:var(--vscode-panel-border,#353535);
  --strong:var(--vscode-input-border,#555);
  --text:var(--vscode-foreground,#f0eeee);
  --muted:var(--vscode-descriptionForeground,#aab2bb);
  --coral:var(--vscode-textLink-foreground,#8ed5ff);
  --coral2:var(--vscode-textLink-activeForeground,#b8e5ff);
  --mint:var(--vscode-testing-iconPassed,#4edea3);
  --red:var(--vscode-errorForeground,#ffb4ab);
  --amber:var(--vscode-editorWarning-foreground,#fbbf24);
  --blue:var(--vscode-textLink-foreground,#8ed5ff);
}
body.vscode-light{
  color-scheme:light;
  --bg:var(--vscode-sideBar-background,#f3f5f7);
  --surface:var(--vscode-editor-background,#fff);
  --raised:var(--vscode-input-background,#e9eef2);
  --soft:var(--vscode-sideBar-background,#f5f7f9);
  --line:var(--vscode-panel-border,#c7d0d7);
  --strong:var(--vscode-input-border,#8998a4);
  --text:var(--vscode-foreground,#15212b);
  --muted:var(--vscode-descriptionForeground,#4c5b67);
  --coral:var(--vscode-textLink-foreground,#075f86);
  --coral2:var(--vscode-textLink-activeForeground,#054a69);
  --mint:var(--vscode-testing-iconPassed,#08704f);
  --red:var(--vscode-errorForeground,#a52639);
  --amber:var(--vscode-editorWarning-foreground,#754800);
  --blue:var(--vscode-textLink-foreground,#075f86);
}
body.vscode-dark :is(.figma-card,.overview-controls,.overview-focus,.overview-events,.overview-sources,.overview-vault,.task-stage-panel,.task-findings article,.external-link-list article),
body.vscode-high-contrast :is(.figma-card,.overview-controls,.overview-focus,.overview-events,.overview-sources,.overview-vault,.task-stage-panel,.task-findings article,.external-link-list article),
body.vscode-light :is(.figma-card,.overview-controls,.overview-focus,.overview-events,.overview-sources,.overview-vault,.task-stage-panel,.task-findings article,.external-link-list article){
  background:var(--surface);
  color:var(--text);
  border-color:var(--line);
}
body.vscode-dark :is(.offline-banner,.task-row-v2,.task-findings,.external-link-list,.task-stage-evidence),
body.vscode-high-contrast :is(.offline-banner,.task-row-v2,.task-findings,.external-link-list,.task-stage-evidence),
body.vscode-light :is(.offline-banner,.task-row-v2,.task-findings,.external-link-list,.task-stage-evidence){
  color:var(--text);
}
body.vscode-dark .offline-banner,
body.vscode-high-contrast .offline-banner,
body.vscode-light .offline-banner{
  border-color:color-mix(in srgb,var(--red) 32%,var(--line));
  background:color-mix(in srgb,var(--red) 10%,var(--surface));
}
body.vscode-dark .offline-banner code,
body.vscode-high-contrast .offline-banner code,
body.vscode-light .offline-banner code{color:var(--text)}
body.vscode-dark :is(.overview-stack-tags span,.overview-environment,.overview-services>div,.linked-request,.payload-diff),
body.vscode-high-contrast :is(.overview-stack-tags span,.overview-environment,.overview-services>div,.linked-request,.payload-diff),
body.vscode-light :is(.overview-stack-tags span,.overview-environment,.overview-services>div,.linked-request,.payload-diff){
  background-color:var(--soft);
  color:var(--text);
  border-color:var(--line);
}
@media(max-width:700px){
  body[class*="vscode-"] .offline-banner{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:520px){
  body[class*="vscode-"] .task-findings article{padding:12px}
  body[class*="vscode-"] .task-row-status{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:360px){
  body[class*="vscode-"] .task-row-status{grid-template-columns:minmax(0,1fr)}
}

/* Use the actual IDE webview viewport rather than mobile-browser width guesses. */
body[data-aipi-channel="aipi.ide.v1"]{
  min-width:0;
  overflow-x:hidden;
}
html:has(body[data-aipi-channel="aipi.ide.v1"]){
  min-width:0;
}
body[data-aipi-channel="aipi.ide.v1"] :is(#app,.app-shell,.route-view){
  width:100%!important;
  min-width:0;
  max-width:none!important;
  box-sizing:border-box;
}
body[data-aipi-channel="aipi.ide.v1"] .app-shell{
  padding-bottom:74px;
  overflow-x:hidden;
}
body[data-aipi-channel="aipi.ide.v1"] .route-view{
  padding:12px 10px 88px;
}
body[data-aipi-channel="aipi.ide.v1"] .route-view>*{
  width:100%;
  min-width:0;
  max-width:none;
  box-sizing:border-box;
}
body[data-aipi-channel="aipi.ide.v1"] .route-view :is(h1,h2,h3,p,small,strong,code,a,li,dd,dt,summary,time,span){
  max-width:100%;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  overflow-wrap:anywhere;
  word-break:normal;
}
body[data-aipi-channel="aipi.ide.v1"] .route-view :is(
  .task-create-shell,
  .milestone-create-card,
  .project-management-page,
  .task-unified-workspace,
  .task-list-v2,
  .project-workflow,
  .overview-delivery-grid
){
  width:100%;
  max-width:none;
  margin-inline:0;
}
body[data-aipi-channel="aipi.ide.v1"] .route-view :is(
  .project-header-identity strong,
  .project-header-identity small,
  .project-card-copy strong,
  .project-card-copy small,
  .project-card-meta,
  .run-row strong,
  .run-row span,
  .api-row strong,
  .api-row span,
  .task-row-title strong,
  .task-row-description,
  .task-stage-evidence>article>span:last-child,
  .implementation-path strong,
  .implementation-path code,
  .contract-route-label strong,
  .contract-route-label small,
  .contract-task-list strong,
  .contract-task-list small,
  .source-row span,
  .linked-request strong,
  .linked-request small,
  .task-findings strong,
  .task-findings small,
  .management-resource-list strong,
  .management-resource-list small,
  .vault-variable-list strong,
  .vault-variable-list small,
  .policy-management-list strong,
  .policy-management-list small,
  .project-management-header h1,
  .pulse-grid button span,
  .pulse-grid button small
){
  min-width:0;
  height:auto;
  max-width:100%;
  overflow:visible;
  text-overflow:clip;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:normal;
}
body[data-aipi-channel="aipi.ide.v1"] .project-header-identity{
  flex:1 1 0;
  overflow:visible;
}
body[data-aipi-channel="aipi.ide.v1"] .project-header-identity>span{
  display:grid;
  flex:1 1 0;
}
body[data-aipi-channel="aipi.ide.v1"] .project-header-identity>span>strong{
  display:block;
  -webkit-line-clamp:unset;
}
body[data-aipi-channel="aipi.ide.v1"] .project-header-identity>span>small{
  display:block;
  line-height:1.3;
}
body[data-aipi-channel="aipi.ide.v1"] .project-context-header{
  width:100%;
  min-width:0;
  gap:6px;
  padding:6px 8px;
}
body[data-aipi-channel="aipi.ide.v1"] .header-actions{
  flex:0 1 auto;
  flex-wrap:nowrap;
  gap:4px;
}
body[data-aipi-channel="aipi.ide.v1"] .header-environment-control select{
  width:clamp(76px,26vw,150px);
  min-width:70px;
  max-width:150px;
  padding-inline:7px 22px;
}
body[data-aipi-channel="aipi.ide.v1"] .project-header-back,
body[data-aipi-channel="aipi.ide.v1"] .header-tool,
body[data-aipi-channel="aipi.ide.v1"] .header-settings{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  flex:0 0 32px;
}
body[data-aipi-channel="aipi.ide.v1"] :is(button,.primary-button,.secondary-button,.quiet-button,.back-button,.remove-button,.run-button):has(>.ui-icon,>.button-icon){
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
}
body[data-aipi-channel="aipi.ide.v1"] :is(button,.primary-button,.secondary-button,.quiet-button,.back-button,.remove-button,.run-button)>.ui-icon,
body[data-aipi-channel="aipi.ide.v1"] :is(button,.primary-button,.secondary-button,.quiet-button,.back-button,.remove-button,.run-button)>.button-icon{
  display:block;
  width:16px;
  height:16px;
  min-width:16px;
  flex:0 0 16px;
  margin:0;
  object-fit:contain;
}
body[data-aipi-channel="aipi.ide.v1"] .pulse-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,130px),1fr));
}
body[data-aipi-channel="aipi.ide.v1"] .pulse-grid button strong{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
body[data-aipi-channel="aipi.ide.v1"] .run-row{
  grid-template-columns:minmax(0,1fr) auto;
}
body[data-aipi-channel="aipi.ide.v1"] .run-row>div:first-child{
  min-width:0;
}
body[data-aipi-channel="aipi.ide.v1"] .run-row>div:last-child{
  min-width:0!important;
}
@media(max-width:420px){
  body[data-aipi-channel="aipi.ide.v1"] .project-context-header{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto;
  }
  body[data-aipi-channel="aipi.ide.v1"] .project-detail-header{
    grid-template-columns:32px minmax(0,1fr);
  }
  body[data-aipi-channel="aipi.ide.v1"] .project-context-header .header-actions{
    grid-column:1/-1;
    justify-self:stretch;
    width:100%;
  }
  body[data-aipi-channel="aipi.ide.v1"] .project-context-header .header-environment-control{
    flex:1 1 auto;
  }
  body[data-aipi-channel="aipi.ide.v1"] .project-context-header .header-environment-control select{
    width:100%;
    max-width:none;
  }
  body[data-aipi-channel="aipi.ide.v1"] .run-row{
    grid-template-columns:minmax(0,1fr);
  }
  body[data-aipi-channel="aipi.ide.v1"] .run-row>div:last-child{
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
  }
  body[data-aipi-channel="aipi.ide.v1"] .health-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* =========================================================================
   UI Polish: Space Utilization, Layout Width, Button Alignment, Header Flow
   ========================================================================= */

/* 1. Clear button and icon alignment */
.primary-button, .secondary-button, .quiet-button, .back-button, .remove-button, .run-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  vertical-align: middle !important;
  box-sizing: border-box !important;
  line-height: 1.2 !important;
}
.primary-button .ui-icon, .secondary-button .ui-icon, .quiet-button .ui-icon, .back-button .ui-icon, .remove-button .ui-icon, .run-button .ui-icon, .button-icon {
  display: inline-block !important;
  flex-shrink: 0 !important;
  vertical-align: middle !important;
  margin: 0 !important;
}
.button-icon {
  width: 14px;
  height: 14px;
}

/* Header Action Buttons & Back Button */
.project-header-back, .header-tool, .header-settings {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  min-width: 36px !important;
  padding: 0 !important;
  border: 1px solid var(--line) !important;
  border-radius: 8px !important;
  background: var(--surface) !important;
  color: var(--text) !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  transition: all 0.15s ease !important;
}
.project-header-back:hover, .header-tool:hover, .header-settings:hover {
  background: var(--raised) !important;
  border-color: var(--strong) !important;
}
.project-header-back .ui-icon, .header-tool .ui-icon, .header-settings .ui-icon {
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
}

/* 2. Header Space Efficiency & No Artificial Truncation */
.mobile-header {
  padding: 8px 12px !important;
  gap: 10px !important;
  box-sizing: border-box !important;
}
.project-context-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 56px !important;
  gap: 8px !important;
  box-sizing: border-box !important;
}
.project-header-identity {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  padding: 0 !important;
  text-align: left !important;
}
.project-header-identity > img {
  width: 32px !important;
  height: 32px !important;
  flex-shrink: 0 !important;
  border-radius: 6px !important;
}
.project-header-identity > span {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  gap: 1px !important;
}
.project-header-identity > span > strong {
  font-size: 13px !important;
  line-height: 1.25 !important;
  color: var(--text) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.project-header-identity > span > small {
  max-width: 100% !important;
  width: 100% !important;
  min-width: 0 !important;
  font-size: 11px !important;
  line-height: 1.25 !important;
  color: var(--muted) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  letter-spacing: 0 !important;
}
.project-header-meta {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 2px !important;
  min-width: 0 !important;
}
.project-header-meta .status-chip {
  flex-shrink: 0 !important;
  white-space: nowrap !important;
  font-size: 10px !important;
  padding: 2px 6px !important;
}
.header-actions {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  flex-shrink: 0 !important;
  min-width: 0 !important;
}
.header-environment-control {
  display: block !important;
  min-width: 0 !important;
  flex-shrink: 1 !important;
}
.header-environment-control select {
  width: auto !important;
  min-width: 80px !important;
  max-width: 140px !important;
  height: 34px !important;
  padding: 0 24px 0 8px !important;
  font-size: 12px !important;
  border: 1px solid var(--line) !important;
  border-radius: 7px !important;
  background: var(--surface) !important;
  color: var(--text) !important;
  font-weight: 600 !important;
  text-overflow: ellipsis !important;
}

/* 3. Utilise Complete Width of Panel for Components */
body[class*="vscode-"] .route-view {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}
body[class*="vscode-"] .route-view > * {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
.run-list, .embedded-run-list {
  width: 100% !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}
.run-row {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 12px 14px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--line) !important;
  background: transparent !important;
  text-align: left !important;
  cursor: pointer !important;
}
.run-row:last-child {
  border-bottom: 0 !important;
}
.run-row:hover {
  background: rgba(255, 255, 255, 0.035) !important;
}
.run-row > div:first-child {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-width: 0 !important;
  width: 100% !important;
}
.run-row > div:first-child > div {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}
.run-row > div:first-child strong {
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: var(--text) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  display: block !important;
}
.run-row > div:first-child span {
  font-size: 11px !important;
  line-height: 1.3 !important;
  color: var(--muted) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
  display: block !important;
}
.run-row > div:last-child {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  width: 100% !important;
  font-size: 11px !important;
}
.run-row > div:last-child .status-tag {
  margin: 0 !important;
  flex-shrink: 0 !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
.run-row > div:last-child > span:last-child {
  font-size: 11px !important;
  color: var(--muted) !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  margin-left: auto !important;
}
@media (min-width: 480px) {
  .run-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
  }
  .run-row > div:last-child {
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: center !important;
    width: auto !important;
    min-width: max-content !important;
    text-align: right !important;
  }
  .run-row > div:last-child .status-tag {
    margin-bottom: 3px !important;
  }
}

/* 4. Pulse Grid Metrics: Full space utilization without breaking letters */
.pulse-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.pulse-grid button {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: stretch !important;
  min-height: 84px !important;
  padding: 10px 12px !important;
  gap: 6px !important;
  box-sizing: border-box !important;
  border: 1px solid var(--line) !important;
  border-radius: 8px !important;
  background: var(--soft) !important;
  color: var(--text) !important;
  text-align: left !important;
}
.pulse-grid button span {
  display: block !important;
  width: 100% !important;
  color: var(--muted) !important;
  font-size: 11px !important;
  line-height: 1.3 !important;
  font-weight: 550 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}
.pulse-grid button strong {
  display: block !important;
  font-size: 24px !important;
  line-height: 1.15 !important;
  font-weight: 700 !important;
  color: var(--text) !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
.pulse-grid button small {
  display: block !important;
  width: 100% !important;
  font: 500 10px/1.3 "SFMono-Regular", Consolas, monospace !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  text-align: left !important;
}

/* 5. Closed-Loop Tasks & Status Chips */
.contract-task-list {
  display: grid !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.contract-task-list > button {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  min-height: 62px !important;
  padding: 12px 14px !important;
  border: 1px solid var(--line) !important;
  border-radius: 8px !important;
  background: var(--soft) !important;
  color: var(--text) !important;
  width: 100% !important;
  box-sizing: border-box !important;
  text-align: left !important;
}
.contract-task-list > button > span {
  display: grid !important;
  gap: 4px !important;
  min-width: 0 !important;
}
.contract-task-list > button > span > strong {
  font-size: 13px !important;
  line-height: 1.35 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.contract-task-list > button > span > small {
  font-size: 11px !important;
  line-height: 1.35 !important;
  color: var(--muted) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.contract-task-list > button > .status-chip {
  flex-shrink: 0 !important;
  min-width: max-content !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  padding: 4px 8px !important;
  border-radius: 4px !important;
  align-self: center !important;
  font-size: 11px !important;
}

/* 6. Accordion toggle alignment */
.contract-accordion > summary {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 14px 16px !important;
  cursor: pointer !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.contract-accordion > summary::before, .chain-group > summary::before {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  color: var(--coral) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  margin: 0 !important;
}

/* 7. Tool Catalog, Payload Lenses, and Headings Responsiveness */
.tool-group-heading {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
  padding: 12px 14px !important;
  border-bottom: 1px solid var(--line) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
@media (min-width: 480px) {
  .tool-group-heading {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
  }
}
.tool-group-heading h2 {
  font-size: 14.5px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  color: var(--text) !important;
  margin: 0 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}
.tool-group-heading > span {
  flex: 0 0 auto !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  padding: 4px 8px !important;
  border: 1px solid var(--line) !important;
  border-radius: 999px !important;
  background: var(--soft) !important;
  color: var(--mint) !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

.tool-card-list .tool-card {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding: 14px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  border-bottom: 1px solid var(--line) !important;
}
.tool-card-head {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px 12px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.tool-name {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px 8px !important;
  flex: 1 1 140px !important;
  min-width: 0 !important;
}
.tool-name h3 {
  font-size: 13.5px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: var(--text) !important;
  margin: 0 !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}
.tool-card-head .tool-action {
  flex: 0 0 auto !important;
  margin-left: auto !important;
  min-height: 36px !important;
  padding: 0 12px !important;
  font-size: 12px !important;
  white-space: nowrap !important;
}
.tool-card-badge {
  font-size: 10px !important;
  padding: 2px 7px !important;
  border-radius: 999px !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
.tool-task-select {
  display: grid !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  gap: 5px !important;
}
.tool-task-select select {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 36px !important;
  padding: 0 10px !important;
  border: 1px solid var(--line) !important;
  border-radius: 8px !important;
  background: var(--surface) !important;
  color: var(--text) !important;
  font-size: 12px !important;
  box-sizing: border-box !important;
}
.tool-telemetry-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
.tool-telemetry-grid strong {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

/* 8. API inventory rows */
.api-row {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 12px 14px !important;
}
.api-row-main {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-width: 0 !important;
  width: 100% !important;
}
.api-row-main > div {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}
.api-row strong {
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: var(--text) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}
.api-row-main span {
  font-size: 11px !important;
  line-height: 1.3 !important;
  color: var(--muted) !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}
@media (min-width: 480px) {
  .api-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
  }
}

/* 9. Global word-break protection for VS Code headers and titles */
body[class*="vscode-"] :is(h1, h2, h3, .section-heading h2, .tool-group-heading h2, .tool-name h3, .run-row strong, .api-row strong, .method-badge, .tool-action, .status-tag) {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

/* Keep IDE content readable after the shared compact-layout overrides above. */
body[data-aipi-channel="aipi.ide.v1"] :is(#app,.app-shell,.route-view),
body[data-aipi-channel="aipi.ide.v1"] .mobile-header,
body[data-aipi-channel="aipi.ide.v1"] .route-view>*{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  box-sizing:border-box;
}
body[data-aipi-channel="aipi.ide.v1"] .route-view :is(
  .api-row strong,
  .api-row span,
  .run-row strong,
  .run-row span,
  .project-header-identity strong,
  .project-header-identity small,
  .project-card-copy strong,
  .project-card-copy small,
  .task-row-description,
  .task-row-title strong,
  .source-row span,
  .linked-request strong,
  .linked-request small
){
  height:auto!important;
  max-width:100%!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  hyphens:auto!important;
}
body[data-aipi-channel="aipi.ide.v1"] .route-view .project-header-identity small{
  display:block!important;
}
body[data-aipi-channel="aipi.ide.v1"] .route-view :is(
  .task-create-shell,
  .milestone-create-card,
  .project-management-page,
  .task-unified-workspace,
  .task-list-v2,
  .project-workflow,
  .overview-delivery-grid
){
  width:100%!important;
  max-width:none!important;
  margin-inline:0!important;
}
body[data-aipi-channel="aipi.ide.v1"] .app-shell.route-task .task-stage-panel{
  background:var(--surface)!important;
  color:var(--text)!important;
  opacity:1!important;
}
body[data-aipi-channel="aipi.ide.v1"] .app-shell.route-task .task-stage-panel :is(h2,h3,p,small,strong){
  color:inherit;
}
.workspace-explorer{display:grid;gap:18px;min-width:0}.workspace-explorer h1{margin:0}.workspace-explorer-toolbar{display:grid;grid-template-columns:minmax(160px,1fr) minmax(240px,2fr) auto;gap:12px;align-items:end}.workspace-explorer-toolbar .field-label{margin:0}.workspace-explorer-filters{display:flex;gap:8px;flex-wrap:wrap}.workspace-explorer-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,1fr);gap:22px;align-items:start}.workspace-target-list{display:grid;gap:8px}.workspace-target-row{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:9px;background:var(--surface);padding:12px;min-width:0}.workspace-target-open{display:grid;gap:4px;flex:1;min-width:0;border:0;background:transparent;text-align:left;color:var(--text);padding:2px;cursor:pointer}.workspace-target-open strong,.workspace-target-open code,.workspace-context-panel code{overflow-wrap:anywhere}.workspace-target-open small,.workspace-selection small,.workspace-member-list small{display:block;color:var(--muted);font-size:12px}.workspace-target-open code{font-size:12px}.workspace-context-panel{display:grid;gap:20px;border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:18px;min-width:0}.workspace-context-panel section{display:grid;gap:10px;min-width:0}.workspace-context-panel .workspace-target-row{padding:8px}.workspace-selection{border-top:1px solid var(--line);padding-top:16px}.workspace-selection>div{display:flex;gap:10px;justify-content:space-between;align-items:start}.workspace-selection strong{overflow-wrap:anywhere}.workspace-coverage-note{padding:12px;border:1px solid var(--line);border-radius:8px;color:var(--muted)}.workspace-member-list{display:grid;gap:10px;margin-top:16px;max-height:40vh;overflow:auto}.workspace-member-list small{overflow-wrap:anywhere}.workspace-explorer :focus-visible{outline:2px solid var(--coral);outline-offset:3px}.workspace-target-row>[aria-pressed="true"]{border-color:var(--coral)}.bottom-nav.nav-5{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:780px){.workspace-explorer-toolbar{grid-template-columns:1fr}.workspace-explorer-layout{grid-template-columns:1fr}.workspace-context-panel{padding:12px}.workspace-target-row{padding:10px}.workspace-explorer .page-heading{flex-wrap:wrap}.workspace-explorer-filters button{font-size:12px;min-height:38px}.bottom-nav.nav-5 .nav-item{min-width:0;padding:8px 3px;font-size:10px}}
.workspace-explorer-layout{grid-template-columns:minmax(0,1fr)}
.workspace-bindings{display:grid;gap:12px;margin-top:20px}.workspace-bindings h3{margin:0}.workspace-binding{display:grid;gap:9px;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px}.workspace-binding legend{padding:0 5px;font-weight:650}.workspace-binding .supporting-copy{margin:0}
.explorer-import-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;cursor:pointer}
.workspace-target-open{cursor:default}
.workspace-target-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.workspace-target-actions [aria-pressed="true"]{border-color:var(--coral)}
.workspace-selection-bar{position:sticky;bottom:90px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}
.workspace-selection-bar>div{display:grid;gap:4px;min-width:0}
.workspace-selection-bar small{color:var(--muted);font-size:13px;line-height:1.5}
.workspace-selection-bar>button{flex-shrink:0}
.workspace-task-context{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--soft)}
.workspace-task-context-row{display:flex;align-items:flex-start;gap:10px;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);cursor:pointer}
.workspace-task-context-row>input{flex:none;margin-top:4px}
.workspace-task-context-row>span{display:grid;gap:4px;min-width:0}
.workspace-task-context-row small{color:var(--muted);font-size:12px}
.workspace-task-context-row code{overflow-wrap:anywhere;font-size:12px}
.workspace-task-context>details>summary{padding:8px 0;cursor:pointer;font-weight:650}
.workspace-task-context>details .workspace-task-context-row{margin-top:8px}
@media(max-width:600px){.workspace-target-actions{flex-direction:column;align-items:stretch;gap:6px}.workspace-target-actions button{min-height:38px;padding:7px 10px;font-size:12px}.workspace-selection-bar{flex-wrap:wrap;bottom:78px;padding:12px}.workspace-selection-bar>button{width:100%}}
.task-target-results { max-height: 28rem; overflow: auto; display: grid; gap: 8px; margin-block: 12px; }
.task-context-review { border: 1px solid var(--border, #444); border-radius: 10px; padding: 18px; margin-block: 18px; }
.task-context-review .workspace-target-row { margin-block: 8px; }
[data-task-target-picker] { display: grid; gap: 12px; min-width: 0; }
[data-task-target-picker] .workspace-target-row > div { min-width: 0; display: grid; gap: 5px; flex: 1; }
[data-task-target-picker] .workspace-target-row small, [data-task-target-picker] .workspace-target-row code { font-size: 13px; color: var(--muted); }
[data-task-target-picker] code { overflow-wrap: anywhere; white-space: normal; }
.connection-health-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.connection-health-grid .task-create-card { margin: 0; align-content: start; gap: 12px; }
.tools-advanced > summary { padding: 18px; cursor: pointer; font-weight: 650; }
@media (max-width: 680px) { [data-task-target-picker] .workspace-explorer-toolbar { grid-template-columns: 1fr; } }
.context-generation-history{min-width:0;padding-top:10px}
.context-generation-history>summary{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px;color:var(--text);font-size:12px;font-weight:600;cursor:pointer;list-style:none}
.context-generation-history>summary::-webkit-details-marker{display:none}
.context-generation-history>summary:before{content:"+";flex:none;color:var(--muted);font-size:15px}
.context-generation-history[open]>summary:before{content:"−"}
.context-generation-count{flex:none;color:var(--muted);font-size:11px;font-weight:450}
.context-generation-intro{color:var(--muted);font-size:11px;line-height:1.45}
.context-generation-history>.context-generation-row{display:grid;min-width:0;gap:5px;padding:9px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}
.context-generation-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px}
.context-generation-heading .status-chip{max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.context-generation-heading time{flex:none;color:var(--muted);font-size:10px;line-height:1.4}
.context-generation-identity{display:grid;min-width:0;gap:3px}
.context-generation-identity>code{overflow-wrap:anywhere;color:var(--text);font:500 11px/1.45 "SFMono-Regular",Consolas,monospace}
.context-generation-identity>span,.context-generation-meta{display:flex;min-width:0;flex-wrap:wrap;gap:4px;color:var(--muted);font-size:10px;line-height:1.4}
.context-generation-identity>span code,.context-generation-meta code{overflow-wrap:anywhere;color:var(--muted);font:500 10px/1.4 "SFMono-Regular",Consolas,monospace}
.context-generation-meta{justify-content:space-between}
@media(max-width:420px){.context-generation-heading{align-items:flex-start;flex-direction:column;gap:4px}.context-generation-heading .status-chip{max-width:100%}.context-generation-meta{display:grid}}
@media (max-width: 620px) {
  .request-composer,.configuration-list,.configuration-list details,.details-body,.kv-list,.kv-row { min-width: 0; max-width: 100%; }
  .configuration-list .details-body { padding: 10px 12px 16px; }
  .configuration-list .kv-row { grid-template-columns: 24px minmax(0,1fr) minmax(0,1fr) auto; gap: 7px; }
  .configuration-list .kv-row .remove-button { grid-column: 4; grid-row: 1; justify-self: end; }
}
@media (max-width: 480px) {
  .configuration-list .kv-row { grid-template-columns: 24px minmax(0,1fr) auto; }
  .configuration-list .kv-row [data-kv-key] { grid-column: 2; grid-row: 1; }
  .configuration-list .kv-row [data-kv-value] { grid-column: 2; grid-row: 2; }
  .configuration-list .kv-row .remove-button { grid-column: 3; grid-row: 1 / span 2; }
}
.target-location { overflow-wrap: anywhere; font-size: 13px; }
.workspace-scan { padding: 14px; border: 1px solid var(--line); border-radius: 9px; }
.workspace-scan .action-row { display: flex; align-items: end; gap: 10px; flex-wrap: wrap; }
.workspace-scan .field-label { flex: 1; min-width: min(220px, 100%); margin: 0; }
.workspace-scan p { overflow-wrap: anywhere; }
.target-full-location { font-size: 12px; color: var(--muted); }
.target-full-location summary { cursor: pointer; padding-block: 4px; }
.target-full-location code { display: block; white-space: normal; overflow-wrap: anywhere; }
.team-shared-lane { border:1px solid var(--border, #d5d9e0); padding:20px; margin:18px 0; }
.team-shared-lane-actions { margin:12px 0; }
.team-shared-task { display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding:12px; border:1px solid var(--border, #d5d9e0); }
.team-shared-task strong { flex:1 1 220px; }
.team-shared-task small { color:var(--muted, #6b7280); }
