/* Copyright © 2026 Pro_Amine LLC
   Created & Developed by Amine Saoud ibn al-Bashir
   Git Architecture Diagram · SPDX-License-Identifier: MIT · Provenance ID: GAD-WORKSPACE-UI-001 */
/* Git Architecture Diagram: graphite glass, clear source hierarchy, and restrained motion. */
:root{color-scheme:dark;--bg:#0c1018;--surface:rgba(23,30,43,.9);--surface2:#1d2738;--surface3:#29354a;--text:#f0f4fb;--muted:#a4b1c4;--line:#ffffff16;--accent:#9ccaff;--accent-ink:#101f36;--purple:#c4b3ff;--danger:#ffabab;--shadow:0 18px 45px #0002;--glass:linear-gradient(145deg,#ffffff24,#ffffff04);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,sans-serif;font-synthesis:none}
:root[data-theme=light]{color-scheme:light;--bg:#f3f6fc;--surface:rgba(255,255,255,.92);--surface2:#eaf0f9;--surface3:#dce7f6;--text:#162238;--muted:#536780;--line:#203b611f;--accent:#225fa9;--accent-ink:#fff;--purple:#6850b5;--danger:#a9293c;--shadow:0 18px 45px #34547a0c;--glass:linear-gradient(145deg,#fff,#dfeafb)}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 12% 0,#49629f15,transparent 45%),var(--bg);color:var(--text);font-size:16px;line-height:1.55}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;transition:background .18s,transform .18s,box-shadow .18s}button:disabled{cursor:not-allowed;opacity:.55}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{border:1px solid var(--line)}button{border-radius:10px;background:transparent;padding:9px 13px;min-height:38px}button:hover{background:var(--surface3)}button:active{transform:translateY(1px)}:focus-visible{outline:2px solid var(--accent)}input,textarea,select{color:var(--text);background:var(--surface2);border-radius:9px;padding:10px 12px;min-width:0;max-width:100%}input:focus,textarea:focus{border-color:var(--accent)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.subtle{color:var(--muted);font-size:13px}.ui-icon{width:20px;height:20px;flex:none;vertical-align:middle}span[data-icon]{display:inline-flex;align-items:center;justify-content:center}.glass-icon{display:inline-grid;place-items:center;width:49px;height:49px;flex:none;border-radius:15px;color:var(--accent);background:var(--glass);border:1px solid #9abce342;box-shadow:inset 0 1px 1px #ffffff38,inset 0 -2px 3px #0001,0 8px 18px #0001;backdrop-filter:blur(12px)}.glass-icon .ui-icon{width:25px;height:25px}.small-glass{width:42px;height:42px;border-radius:13px}.small-glass .ui-icon{width:21px;height:21px}.brand:hover .glass-icon{transform:rotate(-5deg);transition:transform .22s}
/* Application chrome keeps the analysis controls in the first viewport. */
.topbar{min-height:82px;padding:16px 3%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px;background:color-mix(in srgb,var(--surface) 72%,transparent);backdrop-filter:blur(18px)}.brand{display:flex;gap:13px;color:var(--text);align-items:center;line-height:1.25;font-size:17px;letter-spacing:-.35px}.brand:hover{text-decoration:none}.brand strong{font-weight:650}.brand small{display:block;color:var(--muted);font-size:12px;letter-spacing:.8px;margin-top:5px}.top-actions{display:flex;gap:19px;align-items:center;font-size:14px;flex-wrap:wrap}.nav-link{color:var(--muted);padding:7px 0}.nav-link[aria-current=page]{color:var(--text);box-shadow:0 2px var(--accent)}.quiet-button{background:var(--surface2);white-space:nowrap;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-size:14px}.icon-button{width:38px;height:38px;padding:0;display:inline-grid;place-items:center;font-size:21px;flex:none}.text-link{font-size:14px}.primary-button,.primary-link{background:var(--accent);border:1px solid var(--accent);color:var(--accent-ink);font-weight:600;white-space:nowrap;font-size:14px}.primary-button:hover,.primary-link:hover{background:var(--accent);filter:brightness(1.07);text-decoration:none}.primary-link{display:inline-flex;padding:9px 13px;border-radius:10px}main{max-width:1880px;margin:0 auto;padding:25px 3% 52px;min-height:calc(100vh - 165px)}.command-bar{padding:12px 16px 10px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:inset 0 1px #ffffff08,var(--shadow)}.repo-form{display:flex;align-items:center;gap:10px}.repo-label{display:flex;color:var(--muted);padding:0 4px}.repo-form>input{flex:1;border:0;background:transparent;padding:12px 5px;font-size:16px}.repo-form .primary-button{padding:12px 18px;display:flex;gap:20px;justify-content:center}.command-hint{display:flex;justify-content:space-between;gap:18px;color:var(--muted);font-size:12px;margin:9px 2px 0;border-top:1px solid var(--line);padding-top:10px}.inline-button{padding:0;border:0;min-height:0;font-size:13px;color:var(--accent);background:transparent;text-align:left}.analysis-options{display:flex;align-items:end;gap:15px;flex-wrap:wrap;padding:16px 0 10px;border-top:1px solid var(--line);margin-top:10px}.analysis-options label{display:grid;gap:6px;font-size:14px;color:var(--muted)}.analysis-options label input{font-size:14px}.analysis-options #max-files{width:90px}.analysis-options .check-label{display:flex;align-items:center;align-self:center;gap:8px;color:var(--text)}input[type=checkbox]{accent-color:var(--accent);width:17px;height:17px}.status{display:flex;gap:11px;align-items:center;padding:13px 16px;background:var(--surface2);border:1px solid var(--line);border-radius:11px;margin-top:16px;font-size:14px}.status-dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--accent);animation:pulse 1.4s infinite}.status.error{color:var(--danger)}.status.error .status-dot{background:var(--danger);animation:none}@keyframes pulse{50%{opacity:.3}}
/* The empty workspace opens real projects, with measured coverage on each card. */
.welcome,.examples-view{max-width:1280px;margin:38px auto 0}.welcome-heading{display:flex;justify-content:space-between;align-items:center;gap:22px}.eyebrow{font-size:12px;font-weight:650;color:var(--muted);letter-spacing:1.3px}.welcome h1,.catalog-heading h1{font-size:clamp(28px,3vw,42px);line-height:1.2;font-weight:600;letter-spacing:-1.25px;margin:11px 0}.welcome-heading p,.catalog-heading p{color:var(--muted);margin:0;max-width:720px}.welcome-mark{width:72px;height:72px;border-radius:22px}.welcome-mark .ui-icon{width:36px;height:36px}.shortcut-panel{display:flex;align-items:center;gap:17px;padding:18px 20px;border:1px solid var(--line);border-radius:15px;background:var(--surface);margin-top:28px}.shortcut-panel>div{flex:1;min-width:0}.shortcut-panel strong{font-size:15px;font-weight:600}.shortcut-panel p{color:var(--muted);margin:5px 0 0;font-size:14px;overflow-wrap:anywhere}.shortcut-panel code{color:var(--text);font:13px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:28px 0 14px}.section-heading h2{font-size:18px;font-weight:600;margin:0}.section-heading a{font-size:14px}.example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.example-card{padding:21px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:inset 0 1px #ffffff08;display:flex;flex-direction:column;min-width:0;transition:border-color .2s,transform .2s}.example-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent);transform:translateY(-3px)}.example-card-top{display:flex;gap:13px;align-items:center}.card-kind{font-size:12px;color:var(--muted)}.example-card:nth-child(2) .glass-icon{color:var(--purple);border-color:#b6a4e945}.example-card:nth-child(3) .glass-icon{color:#61cbbd;border-color:#7cc8c145}.example-card h3{font-size:19px;line-height:1.35;letter-spacing:-.3px;margin:18px 0 8px;font-weight:600}.example-card>p{font-size:14px;line-height:1.65;color:var(--muted);margin:0 0 15px}.example-repo{font:12px/1.6 ui-monospace,SFMono-Regular,monospace;overflow-wrap:anywhere;color:var(--muted);margin-top:auto;min-height:38px}.example-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:16px 0;border-top:1px solid var(--line);margin-top:16px}.example-stats strong{font-size:17px;font-weight:600}.example-stats small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.example-actions{display:flex;gap:18px;align-items:center;justify-content:space-between}.example-checked{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-top:17px}.welcome-note{font-size:14px;text-align:center;color:var(--muted);margin:25px 0 0}.catalog-heading{display:flex;align-items:center;gap:22px}.catalog-heading>.glass-icon{width:68px;height:68px;border-radius:20px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:28px 0 20px}.catalog-toolbar .search-box{width:min(500px,70%);margin:0;padding:3px 13px}.catalog-note{display:flex;gap:14px;align-items:flex-start;padding:20px 0;color:var(--muted);font-size:14px}.catalog-note>span{color:var(--accent);padding-top:3px}.catalog-note p{margin:0;max-width:960px}
/* The three-pane studio has a traditional tree and a large, independent diagram canvas. */
.repo-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:29px 0 17px}.repo-heading>div:first-child{min-width:0}.repo-heading h1{font-size:clamp(21px,2vw,28px);font-weight:600;letter-spacing:-.65px;line-height:1.3;margin:7px 0;overflow-wrap:anywhere}.repo-heading p{font-size:14px;color:var(--muted);margin:0;max-width:780px}.repo-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0;max-width:440px}.pill{display:inline-block;font:12px ui-monospace,monospace;border:1px solid var(--line);background:var(--surface);padding:8px 9px;border-radius:8px;color:var(--muted);white-space:nowrap}.metrics{display:flex;gap:22px;margin-bottom:22px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.metric strong{color:var(--text);margin-right:6px;font-weight:600}.metric:last-child{margin-left:auto}.studio{display:grid;grid-template-columns:230px minmax(0,1fr) 290px;gap:16px;align-items:start}.panel{border:1px solid var(--line);background:var(--surface);border-radius:16px;overflow:hidden;min-width:0;box-shadow:inset 0 1px #ffffff05}.panel-title{display:flex;justify-content:space-between;align-items:center;min-height:56px;padding:13px 15px;border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.75px;font-weight:650;gap:8px}.panel-label{display:flex;align-items:center;gap:8px}.panel-label .ui-icon{width:17px;height:17px;color:var(--accent)}.genius-panel .panel-label .ui-icon{color:var(--purple)}.count{font:12px ui-monospace,monospace;color:var(--muted);padding:3px 6px;border:1px solid var(--line);border-radius:5px}.search-box{display:flex;align-items:center;gap:9px;margin:13px 12px;background:var(--surface2);border:1px solid var(--line);border-radius:9px;padding:0 10px;color:var(--muted);min-width:0}.search-box input{border:0;background:transparent;width:100%;font-size:14px;padding:9px 0}.tree{height:596px;overflow:auto;padding:0 10px 15px;font:13px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;scrollbar-width:thin}.tree details{margin-left:13px}.tree>.tree-root>details,.tree>.tree-root>button{margin-left:0}.tree details>div{border-left:1px solid var(--line);margin-left:8px}.tree summary{cursor:pointer;color:var(--muted);padding:7px 3px;white-space:nowrap;list-style-position:inside;min-height:35px}.tree summary:hover{color:var(--text)}.tree summary::marker{font-size:12px;color:var(--muted)}.tree summary .ui-icon{width:16px;height:16px;margin:0 7px 2px 1px;color:#9ec4ef}.tree-file{display:flex;align-items:center;gap:7px;border:0;padding:7px 6px;margin-left:13px;text-align:left;white-space:nowrap;border-radius:6px;font:inherit;color:var(--muted);width:calc(100% - 13px);min-height:35px}.tree-file span{overflow:hidden;text-overflow:ellipsis}.tree-file .ui-icon{width:15px;height:15px;opacity:.7}.tree-file[data-read=true]{color:var(--text)}.tree-file[data-read=true] .ui-icon{color:var(--accent);opacity:1}.tree-file.selected{background:var(--surface3);color:var(--accent)}.panel-foot{border-top:1px solid var(--line);font-size:12px;color:var(--muted);padding:12px;min-height:43px}.view-tabs{display:flex;align-items:stretch;gap:18px;border-bottom:1px solid var(--line);padding:0 15px;min-height:56px;overflow-x:auto;white-space:nowrap}.view-tabs button{font-size:14px;padding:13px 2px;border:0;border-bottom:2px solid transparent;border-radius:0;color:var(--muted)}.view-tabs button[aria-selected=true]{border-bottom-color:var(--accent);color:var(--text)}.view-tabs button:hover{background:transparent;color:var(--text)}#docs-count{font-size:12px;padding:1px 5px;background:var(--surface3);border-radius:5px;margin-left:4px}.diagram-meta{padding:12px 15px;display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--line)}.evidence-badge{font-size:13px;color:var(--accent)}.diagram-options{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--line);flex-wrap:wrap}.diagram-options label{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.diagram-options select{font-size:12px;padding:6px;max-width:190px}.diagram-legend{display:flex;gap:6px 12px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.legend-label{width:100%}.legend-item{display:inline-flex;align-items:center;gap:6px}.legend-item i{width:10px;height:10px;border-radius:3px;border:1px solid #fff4}.document-picker{padding:11px 14px;background:var(--surface2);display:grid;gap:6px;font-size:13px;color:var(--muted)}.document-picker select{font-size:13px;max-width:100%}.canvas{height:570px;position:relative;overflow:hidden;background-color:var(--bg);background-image:radial-gradient(var(--line) .8px,transparent .8px);background-size:22px 22px;touch-action:none;cursor:grab}.canvas:active{cursor:grabbing}.canvas:fullscreen{height:100vh;width:100vw}.diagram-content{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;transform-origin:center;will-change:transform;padding:32px 24px 75px}.diagram-content>svg{width:100%;height:100%;max-width:none!important;overflow:visible}.diagram-content [data-source-node]{cursor:pointer;transition:filter .18s}.diagram-content [data-source-node]:hover{filter:brightness(1.2)}.diagram-content [data-source-node]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.canvas-message{position:absolute;inset:0;display:grid;place-content:center;text-align:center;padding:35px;color:var(--muted);font-size:14px;white-space:pre-line}.canvas-tools{position:absolute;z-index:2;bottom:18px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:3px;border:1px solid var(--line);border-radius:13px;padding:5px;background:var(--surface);backdrop-filter:blur(16px);box-shadow:0 8px 30px #0002;cursor:auto}.canvas-tools button{border:0;padding:5px 10px;font-size:14px}.canvas-tools #zoom-label{font:12px ui-monospace,monospace;min-width:38px;text-align:center;color:var(--muted)}.canvas-tools select{border:0;border-left:1px solid var(--line);border-radius:0;font-size:13px;padding:6px;background:transparent}.diagram-foot{padding:12px 14px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:7px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.diagram-foot span:last-child{white-space:nowrap}.mini-pill{font-size:12px;letter-spacing:0;background:var(--surface2);color:var(--purple);border:1px solid var(--line);border-radius:6px;padding:3px 6px;white-space:nowrap}.spark{color:var(--purple)}
/* Explanations, source evidence, and credentials have distinct reading surfaces. */
.genius-content{padding:18px 17px 12px;max-height:535px;overflow:auto;scrollbar-width:thin}.genius-content>p{color:var(--muted);font-size:14px;line-height:1.75;margin:0 0 16px}.genius-content h3,.evidence-search h3{font-size:15px;margin:20px 0 9px;font-weight:600}.genius-content h3:first-child{margin-top:0}.genius-item{font-size:14px;margin:8px 0;overflow-wrap:anywhere}.genius-file{padding:0;border:0;min-height:0;color:var(--accent);font-size:14px;text-align:left;overflow-wrap:anywhere}.check-row{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--muted);padding:5px 0}.check-row span:last-child{color:var(--accent);text-align:right}.warning-list{padding-left:17px;color:var(--muted);font-size:13px;line-height:1.7}.warning-list li+li{margin-top:7px}.evidence-search{border-top:1px solid var(--line);padding:0 17px 17px}.evidence-search h3{margin-bottom:5px}.evidence-search>p{font-size:13px;color:var(--muted);margin:0 0 12px}.evidence-search form{display:flex;gap:7px}.evidence-search input{width:100%;font-size:13px;padding:9px}.evidence-search .icon-button{background:var(--surface2)}#search-results{max-height:270px;overflow:auto}.search-result{display:block;border-bottom:1px solid var(--line);padding:12px 0;font-size:13px;overflow-wrap:anywhere}.search-result code{display:block;color:var(--muted);margin-top:5px;font-size:12px}.reference-link{display:block;font-size:13px;overflow-wrap:anywhere;padding:8px 0;border-bottom:1px solid var(--line)}.source-panel{padding:14px;border-top:1px solid var(--line);background:var(--surface2)}.source-panel>div{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted)}.source-panel>div>span{margin-right:auto}.source-panel textarea{width:100%;height:265px;resize:vertical;font:13px/1.7 ui-monospace,monospace;margin-top:12px;background:var(--bg);tab-size:2}.source-panel p{font-size:13px;color:var(--muted);margin-bottom:0}.guide{height:730px;overflow:auto;padding:25px}.prose{font-size:16px;line-height:1.8;color:var(--muted);overflow-wrap:anywhere}.prose h1,.prose h2,.prose h3{color:var(--text);line-height:1.4}.prose h1{font-size:26px}.prose h2{font-size:20px;margin-top:28px}.prose ul{padding-left:22px}.prose pre{background:var(--bg);padding:16px;overflow:auto;border:1px solid var(--line);border-radius:9px;font-size:13px}.prose code{font-family:ui-monospace,monospace}.prose table{width:100%;border-collapse:collapse;font-size:14px}.prose td,.prose th{padding:9px;border:1px solid var(--line)}.file-inspector{margin-top:18px;padding:21px}.inspector-header{display:flex;justify-content:space-between;gap:14px;align-items:center}.inspector-header h2{font:16px/1.5 ui-monospace,monospace;margin:8px 0;overflow-wrap:anywhere}.inspector-header>div:last-child{display:flex;gap:16px;align-items:center}.file-inspector pre{margin-bottom:0;max-height:380px;overflow:auto;padding:17px;background:var(--bg);border-radius:10px;font:13px/1.8 ui-monospace,monospace;color:var(--muted);tab-size:2}.file-relationships{max-height:180px;overflow:auto;margin-top:10px}footer>span:first-child{color:var(--text)}footer a{color:var(--muted)}dialog{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:22px;padding:26px;width:min(570px,calc(100vw - 32px));max-height:90vh;box-shadow:0 28px 90px #0005;backdrop-filter:blur(24px)}dialog::backdrop{background:#080c16ad;backdrop-filter:blur(6px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.dialog-heading h2{font-size:25px;margin:4px 0 0;letter-spacing:-.4px}dialog p{color:var(--muted);font-size:14px;line-height:1.7}dialog label{display:grid;gap:7px;margin-top:18px;font-size:14px}dialog label span{font-size:12px;color:var(--muted)}dialog label .field-title{font-size:14px;color:var(--text)}dialog input,dialog select{font-size:14px}.provider-section{padding-top:4px;margin-top:20px;border-top:1px solid var(--line)}.model-help{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size:12px}.settings-note{padding:14px;background:var(--surface2);border-radius:11px;color:var(--muted);font-size:14px;line-height:1.7;margin-top:20px}.dialog-actions{display:flex;justify-content:space-between;gap:12px;margin-top:23px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--text);color:var(--bg);border-radius:11px;padding:13px 20px;font-size:14px;z-index:20;width:max-content;max-width:90vw;box-shadow:var(--shadow)}
@media(min-width:1600px){.studio{grid-template-columns:260px minmax(0,1fr) 330px}.canvas{height:620px}.tree{height:646px}.genius-content{max-height:585px}}
@media(max-width:1250px){.studio{grid-template-columns:225px minmax(0,1fr)}.genius-panel{grid-column:1/-1;display:grid;grid-template-columns:1.4fr 1fr}.genius-panel .panel-title{grid-column:1/-1}.genius-content{max-height:370px}.evidence-search{border-top:0;border-left:1px solid var(--line)}.repo-heading{align-items:start}.repo-controls{max-width:280px}.metric:last-child{margin-left:0}.top-actions{gap:14px}.brand small{letter-spacing:0;font-size:12px}}
@media(max-width:950px){.topbar{flex-wrap:wrap;gap:16px}.top-actions{margin-left:auto}.brand small{display:none}.example-grid{grid-template-columns:1fr}.example-card{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.example-card>p,.example-repo{grid-column:1}.example-card h3{margin:14px 0 8px}.example-card-top{grid-column:1/-1}.example-stats{grid-column:2;grid-row:2/4;margin:0;align-self:center}.example-actions{grid-column:2;grid-row:4}.example-checked{grid-column:1/-1}.shortcut-panel{flex-wrap:wrap}.shortcut-panel>.quiet-button{margin-left:59px}.welcome-mark{display:none}}
@media(max-width:720px){.topbar{padding:17px 16px;gap:15px}.brand{font-size:16px}.brand-icon{width:41px;height:41px;border-radius:13px}.top-actions{width:100%;justify-content:space-between;gap:10px;font-size:14px}.github-link{display:none}.top-actions .quiet-button{padding:7px 10px}.top-actions .quiet-button .ui-icon{width:17px;height:17px}main{padding:18px 14px 35px}.command-bar{padding:11px}.repo-form{flex-wrap:wrap;gap:7px}.repo-form>input{width:calc(100% - 36px);flex:auto;font-size:16px}.repo-form .primary-button{flex:1;font-size:14px;padding:11px}.repo-form>#options-toggle{order:3}.repo-form>#analyze{order:4}.repo-form>#cancel{order:5}.command-hint{font-size:12px;flex-wrap:wrap;gap:7px}.command-hint .inline-button{font-size:12px}.welcome,.examples-view{margin-top:28px}.welcome h1,.catalog-heading h1{font-size:29px;letter-spacing:-.8px}.welcome-heading p,.catalog-heading p{font-size:15px}.shortcut-panel{padding:15px;gap:12px}.shortcut-panel>.glass-icon{display:none}.shortcut-panel>.quiet-button{margin:0}.shortcut-panel strong{font-size:15px}.section-heading{align-items:start}.section-heading h2{font-size:17px}.section-heading a{font-size:13px}.example-card{display:flex;padding:20px}.example-card h3{margin-top:16px}.example-stats{margin-top:15px;align-self:stretch}.example-actions{align-self:stretch}.example-checked{align-self:stretch}.catalog-heading{align-items:start;gap:14px}.catalog-heading>.glass-icon{width:45px;height:45px;border-radius:14px}.catalog-toolbar{align-items:start;flex-direction:column;gap:10px}.catalog-toolbar .search-box{width:100%}.repo-heading{flex-direction:column;margin-top:23px;gap:14px}.repo-controls{max-width:none;justify-content:flex-start;flex-shrink:1}.metrics{gap:9px 15px;font-size:13px}.studio{display:flex;flex-direction:column;gap:16px}.diagram-panel{width:100%;order:0}.tree-panel{width:100%;order:1}.tree{height:300px;font-size:14px}.tree-file{font-size:14px}.genius-panel{width:100%;order:2;display:block}.genius-content{max-height:none}.evidence-search{border-left:0;border-top:1px solid var(--line)}.canvas{height:450px}.view-tabs{gap:17px;padding:0 12px}.view-tabs button{font-size:14px}.diagram-meta{padding:11px;align-items:start}.diagram-options{padding:10px 11px}.diagram-options label{font-size:12px;flex-wrap:wrap}.diagram-options select{max-width:175px}.diagram-legend{padding:10px 11px}.canvas-tools{bottom:14px;gap:0}.canvas-tools button{padding:5px 7px}.canvas-tools select{font-size:12px;max-width:90px}.canvas-tools #zoom-label{min-width:34px}.guide{height:580px;padding:18px}.inspector-header{align-items:start;flex-direction:column}.inspector-header>div:last-child{width:100%;justify-content:space-between}.file-inspector{padding:17px}.analysis-options label{flex:1;min-width:130px}.analysis-options .check-label{flex-basis:100%}.analysis-options .subtle{font-size:13px}dialog{padding:21px}.dialog-heading h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ————— Version 0.4 layer: IBM Plex, collapsible studio, component overview, source editor, browse ————— */
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Sans";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2")}
:root{--sans:"IBM Plex Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Consolas,monospace;--radius:14px;--radius-sm:9px;--ok:#7ed69c;--warn:#f2c66d}
:root[data-theme=light]{--ok:#1f7a45;--warn:#8a5a00}
body{font-family:var(--sans);font-size:15px;line-height:1.55;font-feature-settings:"ss02"}
code,pre,kbd,.tree,.pill-button,.example-repo,.address,#file-code,#mermaid-source,.cite{font-family:var(--mono)}
h1,h2,h3,h4{letter-spacing:-.01em}
.skip-link{position:absolute;left:12px;top:-60px;z-index:20;background:var(--accent);color:var(--accent-ink);padding:8px 12px;border-radius:8px}.skip-link:focus{top:12px}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Header */
.topbar{min-height:64px;padding:10px 3%}
.brand{gap:11px;font-size:17px}.brand-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--line);background:var(--surface2);color:var(--accent)}.brand-icon svg{width:19px;height:19px}.brand-name strong{font-weight:600}
.top-actions{display:flex;align-items:center;gap:6px}.nav-link{color:var(--muted);padding:8px 10px;border-radius:8px;text-decoration:none;font-size:14px}.nav-link:hover{color:var(--text);background:var(--surface2)}.nav-link[aria-current]{color:var(--text);box-shadow:inset 0 -2px var(--accent)}
.icon-button svg,.quiet-button svg,.primary-button svg,.canvas-tools svg{width:17px;height:17px;flex:none}
.primary-button{gap:9px;align-items:center;font-weight:600}

/* Command bar and progress */
main{padding-top:18px}
.command-bar{padding:10px 12px;border-radius:var(--radius)}
.repo-form{display:flex;gap:8px;align-items:center}.repo-form input{flex:1;min-width:0;font-family:var(--mono);font-size:14px}
.analysis-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;padding:14px 4px 6px;border-top:1px solid var(--line);margin-top:10px}
.analysis-options label{display:grid;gap:5px;font-size:13px;color:var(--muted)}.analysis-options .check-label{display:flex;align-items:center;gap:8px;grid-column:1/-1;color:var(--text);font-size:14px}.ai-cost{grid-column:1/-1;margin:0;font-size:13px}
.status{display:grid;grid-template-columns:auto 1fr;gap:6px 10px;align-items:center;margin:12px 0 0;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);font-size:14px}
.status #status-text{overflow-wrap:anywhere}.status-bar{grid-column:1/-1;height:3px;border-radius:3px;background:var(--line);overflow:hidden;display:none}.status.has-progress .status-bar{display:block}.status-bar i{display:block;height:100%;width:0;background:var(--accent);transition:width .3s}
.status.error{border-color:color-mix(in srgb,var(--danger) 50%,transparent);color:var(--danger)}

/* Home */
.welcome{max-width:1180px;margin:42px auto 0}
.hero{display:grid;gap:22px;margin-bottom:46px}
.hero h1{font-size:clamp(28px,3.4vw,46px);line-height:1.12;font-weight:600;max-width:21ch;margin:0}
.address-swap{display:grid;gap:8px;justify-items:start;padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);max-width:760px}
.address{font-size:clamp(14px,1.6vw,18px);overflow-wrap:anywhere}.address-host.was{color:var(--muted);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--danger) 70%,transparent)}.address-host.now{color:var(--accent);font-weight:500}.address-path{color:var(--text)}
.address-swap .quiet-button{margin:6px 0 0}
.hero-note{color:var(--muted);max-width:70ch;margin:0}.hero-note code{font-size:13px;background:var(--surface2);padding:2px 6px;border-radius:6px}
.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:0 0 14px}.section-heading h2{font-size:19px;margin:0;font-weight:600}

/* Example cards (home and browse) */
.example-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.example-card{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}
.example-preview{height:170px;display:grid;place-items:center;background-color:var(--bg);background-image:radial-gradient(var(--line) .8px,transparent .8px);background-size:18px 18px;border-bottom:1px solid var(--line);overflow:hidden;padding:10px}
.example-preview svg{width:100%;height:100%;max-width:none!important}.preview-empty{font-size:13px;color:var(--muted)}
.example-body{display:grid;gap:9px;padding:16px 18px 18px;align-content:start}
.example-top{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted)}.card-kind{color:var(--accent);font-weight:500}.saved{border:1px solid var(--line);border-radius:999px;padding:1px 8px}
.example-card h3{margin:0;font-size:17px;font-weight:600}.example-repo{font-size:12.5px;color:var(--muted);overflow-wrap:anywhere}.example-card p{margin:0;color:var(--muted);font-size:14px}
.example-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:4px 0}.example-stats div{display:grid}.example-stats dt{font-size:12px;color:var(--muted);order:2}.example-stats dd{margin:0;font-weight:600;font-size:15px}
.example-actions{display:flex;gap:8px;margin-top:4px}.example-actions a{text-decoration:none}.example-checked{font-size:12px!important}
.browse-view{max-width:1280px;margin:34px auto 0}.catalog-heading h1{font-size:clamp(26px,3vw,38px);margin:0 0 6px;font-weight:600}.catalog-heading p{color:var(--muted);max-width:72ch;margin:0 0 20px}
.catalog-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:10px}.catalog-toolbar .search-box{flex:1 1 280px}.sort-label{display:flex;gap:8px;align-items:center;font-size:14px;color:var(--muted)}
.chip-row{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:5px 12px;font-size:13px;cursor:pointer}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.chip-row.small .chip{padding:3px 10px;font-size:12px}
.empty-note{color:var(--muted);padding:30px 0;text-align:center}

/* Workspace header */
.repo-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:22px 0 10px;flex-wrap:wrap}
.repo-identity{min-width:0}.repo-identity h1{font-size:clamp(20px,2vw,27px);margin:0;font-weight:600;overflow-wrap:anywhere}.repo-identity p{margin:4px 0 0;color:var(--muted);max-width:90ch}
.crumbs{display:flex;flex-wrap:wrap;gap:4px;align-items:center;font-family:var(--mono);font-size:13px;margin-top:4px}.crumb{color:var(--accent);text-decoration:none}.crumb:hover{text-decoration:underline}.crumb.current{color:var(--text)}.crumb-sep{color:var(--muted)}
.repo-controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.repo-controls .quiet-button,.repo-controls .primary-button{padding:8px 12px;font-size:14px;margin:0}
.pill-button{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;border:1px solid var(--line);background:var(--surface);color:var(--muted);padding:8px 10px;border-radius:8px;cursor:pointer}.pill-button:hover{color:var(--text)}.pill-button svg{width:14px;height:14px}
.metrics{gap:6px 18px;margin-bottom:14px}.metric strong{color:var(--text);font-weight:600}.freshness{margin-left:auto}
.mobile-switch{display:none}

/* Studio: collapsible side panels around a large canvas */
.studio{grid-template-columns:260px minmax(0,1fr) 340px;gap:14px;transition:grid-template-columns .2s}
.studio[data-tree=closed]{grid-template-columns:46px minmax(0,1fr) 340px}.studio[data-genius=closed]{grid-template-columns:260px minmax(0,1fr) 46px}.studio[data-tree=closed][data-genius=closed]{grid-template-columns:46px minmax(0,1fr) 46px}
.panel{border-radius:var(--radius)}
.panel-title{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line);min-height:52px}.panel-title h2{font-size:15px;margin:0;font-weight:600;flex:1}.panel-title .icon-button{width:30px;height:30px;background:transparent;border:0;color:var(--muted)}.panel-title .icon-button:hover{color:var(--text);background:var(--surface2)}
.studio[data-tree=closed] .tree-panel .panel-body,.studio[data-tree=closed] .tree-panel h2,.studio[data-tree=closed] .tree-panel .count,.studio[data-genius=closed] .genius-panel .panel-body,.studio[data-genius=closed] .genius-panel h2,.studio[data-genius=closed] .genius-panel .mini-pill{display:none}
.studio[data-tree=closed] .panel-title,.studio[data-genius=closed] .genius-panel .panel-title{border:0;justify-content:center;padding:8px 0}
.genius-panel .collapse{order:3}
.tree-panel .panel-body{display:grid;grid-template-rows:auto auto 1fr auto;gap:8px;padding:10px 8px 0;height:calc(var(--canvas-h) + 112px)}
.tree{height:auto;min-height:0;padding:0 2px 10px;font-size:13px}.tree details>summary{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:6px;cursor:pointer;list-style:none}.tree details>summary::-webkit-details-marker{display:none}.tree details>summary:hover{background:var(--surface2)}.tree summary svg,.tree-file svg{width:14px;height:14px;flex:none;color:var(--muted)}
.tree-children{margin-left:12px;border-left:1px solid var(--line);padding-left:4px}
.tree-file{margin-left:0;width:100%;min-height:28px;padding:3px 6px;font-size:13px;background:transparent;color:var(--text)}.tree-file .name{overflow:hidden;text-overflow:ellipsis}.tree-file[data-read=false]{color:var(--muted);opacity:.72}.tree-file[data-read=true] .name::after{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--ok);margin-left:6px;vertical-align:middle}
.tree [aria-current]{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--text);opacity:1}.tree-note{margin:4px 6px}
.panel-foot{font-size:12px;color:var(--muted);padding:8px 6px 10px;border-top:1px solid var(--line)}

/* Diagram panel */
:root{--canvas-h:clamp(480px,calc(100vh - 330px),900px)}
.view-tabs{gap:4px;padding:0 8px;min-height:50px}.view-tabs button{padding:12px 10px;font-size:14px}.view-tabs .count{font-size:11px;margin-left:4px;padding:1px 6px;border-radius:999px;background:var(--surface2)}
.diagram-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.diagram-meta label{display:flex;gap:6px;align-items:center}.diagram-meta select{font-size:13px;padding:4px 8px}.node-action{margin-left:auto}
.evidence-badge{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text)}.evidence-badge::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ok)}.evidence-badge[data-basis=documented]::before{background:#b9a4ff}.evidence-badge[data-basis=inferred]::before{background:var(--warn)}.evidence-badge[data-basis=edited]::before{background:var(--danger)}
.drill-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:999px;padding:2px 4px 2px 10px;color:var(--text);font-family:var(--mono);font-size:12px}.drill-chip .icon-button{width:22px;height:22px;background:transparent;border:0}.drill-chip svg{width:13px;height:13px}
.diagram-legend{display:flex;flex-wrap:wrap;gap:6px 14px;padding:8px 12px;border-bottom:1px solid var(--line);font-size:12.5px;color:var(--muted)}.legend-label{color:var(--text);font-weight:500}.legend-item{display:inline-flex;align-items:center;gap:6px}.legend-item i{width:12px;height:12px;border-radius:3px;border:1.6px solid}.legend-item b{display:inline-block;width:22px;border-top:2px solid var(--muted)}.edge-documented b{border-top-width:4px}.edge-inferred b{border-top-style:dotted}
.canvas{height:var(--canvas-h)}.canvas:focus-visible{outline-offset:-3px}.diagram-content{padding:24px 20px 72px}
.canvas-tools{gap:2px;padding:4px}.canvas-tools button{display:grid;place-items:center;width:34px;height:32px;padding:0}.canvas-tools select{font-size:13px;padding:5px 6px;margin-left:4px}
.diagram-foot{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;font-size:12.5px;color:var(--muted);border-top:1px solid var(--line)}
.source-view{display:grid;gap:10px;padding:12px;height:var(--canvas-h);grid-template-rows:auto 1fr auto auto}.source-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;font-size:13px;color:var(--muted)}.source-toolbar label{display:flex;gap:8px;align-items:center}.source-toolbar select{max-width:420px}
#mermaid-source{width:100%;height:100%;min-height:260px;resize:none;font-size:13px;line-height:1.55;padding:12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);color:var(--text);tab-size:2}
.source-actions{display:flex;flex-wrap:wrap;gap:8px}.source-actions button{margin:0}.source-status[data-state=ok]{color:var(--ok)}.source-status[data-state=error]{color:var(--danger)}.source-view>p{margin:0;font-size:12.5px}
.guide{height:var(--canvas-h);overflow:auto;padding:18px 26px}

/* Genius panel */
.genius-panel .panel-body{display:grid;grid-template-rows:1fr auto;height:calc(var(--canvas-h) + 112px)}
.genius-content{max-height:none;min-height:0;overflow:auto;padding:4px 16px 12px}
.genius-section{padding:12px 0;border-bottom:1px solid var(--line)}.genius-section:last-child{border:0}.genius-section h3{font-size:14px;margin:0 0 6px;font-weight:600}.genius-section h4{font-size:13px;margin:10px 0 4px}.genius-section p{margin:0 0 6px;color:var(--muted);font-size:14px;line-height:1.6}
.reading-order{margin:0;padding-left:20px;display:grid;gap:8px}.reading-order li{min-width:0}.reading-order .why{overflow-wrap:anywhere}.reading-order li::marker{color:var(--muted);font-size:13px}.reading-order .why{display:block;font-size:12.5px;color:var(--muted)}
.genius-file{display:block;white-space:normal;background:none;border:0;padding:0;color:var(--accent);font-family:var(--mono);font-size:12.5px;text-align:left;cursor:pointer;overflow-wrap:anywhere}.genius-file:hover{text-decoration:underline}
.check-row{display:flex;justify-content:space-between;font-size:13px;padding:2px 0}.check-row .found{color:var(--ok)}.check-row .missing{color:var(--muted)}
.fineprint{font-size:12px!important;color:var(--muted)}.suggestions,.findings,.warning-list{margin:4px 0;padding-left:18px;font-size:13px;color:var(--muted);display:grid;gap:4px}
.ask{border-top:1px solid var(--line);padding:12px 16px 14px;background:var(--surface2)}.ask h3{font-size:14px;margin:0 0 8px}
#ask-form{display:grid;gap:8px}#ask-form input{width:100%}.ask-actions{display:flex;gap:8px;flex-wrap:wrap}.ask-actions button{margin:0;padding:7px 12px;font-size:13px}
#ask-disclosure{font-size:12px;margin:8px 0 0}#search-results{max-height:260px;overflow:auto;display:grid;gap:8px;margin-top:8px}
.mode-note{font-size:12px;color:var(--muted);margin:0}.mode-note.pending::after{content:"";display:inline-block;width:8px;height:8px;margin-left:8px;border-radius:50%;background:var(--accent);animation:pulse 1s infinite alternate}@keyframes pulse{to{opacity:.25}}
.answer{margin:0;font-size:14px;line-height:1.6}.answer.unanswered{color:var(--warn)}.error-note{color:var(--danger);font-size:13px;margin:0}
.search-result{display:grid;gap:3px}.search-result code{font-size:12px;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}.cite{font-size:12px;color:var(--accent)}

/* Inspector */
.file-inspector{margin-top:14px}.inspector-header{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border-bottom:1px solid var(--line)}.inspector-header h2{font-family:var(--mono);font-size:15px;margin:0;overflow-wrap:anywhere}.inspector-actions,#inspector-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}#inspector-actions a,#inspector-actions button{margin:0;padding:6px 10px;font-size:13px;text-decoration:none}
#file-code{margin:0;max-height:520px;overflow:auto;font-size:12.5px;line-height:1.6;padding:8px 0;counter-reset:none;white-space:normal}
.code-line{display:grid;grid-template-columns:56px 1fr;white-space:pre}.code-line.highlight{background:color-mix(in srgb,var(--warn) 16%,transparent)}.line-number{color:var(--muted);text-align:right;padding-right:14px;text-decoration:none;user-select:none}.line-number:hover{color:var(--accent)}.line-text{padding-right:14px}
.file-relationships{display:grid;gap:3px;padding:6px 14px}.file-relationships:empty{display:none}.reference-link{font-family:var(--mono);font-size:12px}

/* Dialog */
#settings{max-width:560px}#settings label>span:not(.field-title){display:block;font-size:12.5px;color:var(--muted)}

/* Medium screens: the Genius panel moves below */
@media (max-width:1250px){.studio,.studio[data-genius=closed]{grid-template-columns:240px minmax(0,1fr)}.studio[data-tree=closed],.studio[data-tree=closed][data-genius=closed]{grid-template-columns:46px minmax(0,1fr)}.genius-panel{grid-column:1/-1;display:block}.genius-panel .panel-body{height:auto;grid-template-rows:auto auto}.genius-content{max-height:420px}.studio[data-genius=closed] .genius-panel .panel-title{justify-content:flex-start}}
/* Small screens: one panel at a time */
@media (max-width:900px){.mobile-switch{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--surface);margin-bottom:10px}.mobile-switch button{flex:1;border:0;background:transparent;padding:8px;border-radius:9px;color:var(--muted)}.mobile-switch [aria-selected=true]{background:var(--surface2);color:var(--text)}
.studio,.studio[data-tree],.studio[data-genius]{grid-template-columns:minmax(0,1fr)!important}.studio>*{display:none}.studio[data-pane=tree] .tree-panel,.studio[data-pane=diagram] .diagram-panel,.studio[data-pane=genius] .genius-panel{display:block}
.studio .panel-body{display:grid!important}.studio .panel-title h2,.studio .count,.studio .mini-pill{display:initial!important}.panel-title .collapse{display:none}.tree-panel .panel-body{height:70vh}
:root{--canvas-h:min(68vh,620px)}.node-action{margin-left:0}.analysis-options{grid-template-columns:1fr}.repo-form{flex-wrap:wrap}.repo-form input{flex-basis:100%}.freshness{margin-left:0}.diagram-foot .hint{display:none}.view-tabs{overflow-x:auto}}
@media (max-width:560px){.topbar .quiet-button span:last-child{display:none}.github-link{display:none}.hero h1{font-size:27px}.example-grid{grid-template-columns:1fr}.repo-controls{width:100%}.repo-controls .quiet-button,.repo-controls .primary-button{flex:1}}

.catalog-heading{display:block}
.example-actions{align-items:center}.example-actions a{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;font-size:14px;margin:0;text-decoration:none}.example-actions .quiet-button{margin-left:auto}
#inspector-actions a.quiet-button{display:inline-flex;align-items:center;border-radius:10px}
.search-box input{border:0;background:transparent;outline:0}.search-box:focus-within{outline:2px solid var(--accent);outline-offset:2px}

/* ————— Liquid glass and motion (0.5) ————— */
:root{--glass-bg:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035));--glass-strong:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.06));--glass-border:rgba(255,255,255,.14);--glass-hi:inset 0 1px 0 rgba(255,255,255,.2),inset 0 -1px 0 rgba(255,255,255,.03);--glass-shadow:0 12px 32px rgba(2,6,18,.34);--glass-blur:blur(22px) saturate(170%);--ease:cubic-bezier(.2,.8,.2,1)}
:root[data-theme=light]{--glass-bg:linear-gradient(145deg,rgba(255,255,255,.8),rgba(255,255,255,.55));--glass-strong:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,255,255,.7));--glass-border:rgba(24,48,96,.12);--glass-hi:inset 0 1px 0 rgba(255,255,255,.95);--glass-shadow:0 12px 30px rgba(40,70,130,.12)}
body{background:radial-gradient(60vw 55vh at 6% -8%,rgba(92,132,255,.2),transparent 62%),radial-gradient(48vw 48vh at 102% 6%,rgba(176,124,255,.13),transparent 60%),radial-gradient(70vw 60vh at 50% 118%,rgba(54,196,186,.1),transparent 60%),var(--bg);background-attachment:fixed}
:root[data-theme=light] body{background:radial-gradient(60vw 55vh at 6% -8%,rgba(92,132,255,.16),transparent 62%),radial-gradient(48vw 48vh at 102% 6%,rgba(176,124,255,.12),transparent 60%),radial-gradient(70vw 60vh at 50% 118%,rgba(54,196,186,.1),transparent 60%),var(--bg)}
.command-bar,.panel,.status,.example-card,.address-swap,.canvas-tools,#settings,.toast,.tour-card,.system-card,.mobile-switch,.topbar{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-hi),var(--glass-shadow);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}
.topbar{border-width:0 0 1px;box-shadow:var(--glass-hi);position:sticky;top:0;z-index:10}
.quiet-button,.icon-button,.pill-button,.chip,.glass-pill,.canvas-tools select{background:var(--glass-strong);border:1px solid var(--glass-border);box-shadow:var(--glass-hi);-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);transition:transform .18s var(--ease),filter .18s,background .2s,box-shadow .2s}
.primary-button{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 86%,#fff),var(--accent));color:var(--accent-ink);border:1px solid color-mix(in srgb,var(--accent) 70%,#fff);box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 8px 22px color-mix(in srgb,var(--accent) 32%,transparent);transition:transform .18s var(--ease),filter .18s,box-shadow .2s}
:is(.primary-button,.quiet-button,.icon-button,.pill-button,.chip,.glass-pill):hover:not(:disabled){filter:brightness(1.1)}
:is(.primary-button,.quiet-button,.icon-button,.pill-button,.chip,.glass-pill):active:not(:disabled){transform:translateY(1px) scale(.97)}
.chip[aria-pressed=true]{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 86%,#fff),var(--accent));color:var(--accent-ink)}
.view-tabs{gap:4px;padding:6px 8px;min-height:auto}.view-tabs button{border-radius:10px;border:1px solid transparent;padding:8px 12px;transition:background .25s var(--ease),color .2s}.view-tabs button[aria-selected=true]{background:var(--glass-strong);border-color:var(--glass-border);box-shadow:var(--glass-hi);border-bottom-color:var(--glass-border)}
.ai-badge{font-size:10px;font-weight:600;letter-spacing:.02em;margin-left:5px;padding:1px 6px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#6f8dff,#b17cff)}
.glass-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 12px;font-size:13px;color:var(--text);cursor:pointer}.glass-pill svg{width:14px;height:14px}
.canvas-tools{border-radius:14px}.canvas-tools button{border-radius:9px;transition:background .2s}.canvas-tools button:hover{background:var(--glass-strong)}
/* Diagram material: translucent nodes with soft depth; rounded translucent groups. */
#diagram-content g.node :is(rect,circle,ellipse,polygon,path.basic){fill-opacity:.82;filter:drop-shadow(0 8px 14px rgba(0,0,0,.3))}
:root[data-theme=light] #diagram-content g.node :is(rect,circle,ellipse,polygon,path.basic){fill-opacity:.9;filter:drop-shadow(0 6px 12px rgba(40,70,130,.14))}
#diagram-content g.cluster rect{fill-opacity:.32!important;rx:16px;ry:16px;stroke-opacity:.55}
#diagram-content g.node[data-source-node]{transition:filter .2s,opacity .4s}#diagram-content g.node[data-source-node]:hover{filter:brightness(1.18)}
/* Entrance: nodes materialize, edges draw in, labels follow. */
@keyframes materialize{from{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur(0)}}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes fade{from{opacity:0}to{opacity:1}}
.diagram-content.entering g.node,.diagram-content.entering g.cluster{animation:materialize .6s var(--ease) both;animation-delay:calc(var(--i,0) * 26ms)}
.diagram-content.entering path[pathlength]{stroke-dasharray:1;stroke-dashoffset:1;animation:draw .9s .3s var(--ease) forwards}
.diagram-content.entering .edgeLabels,.diagram-content.entering marker{animation:fade .5s .8s both}
/* Flow along the main path and the guided tour. */
@keyframes flow{to{stroke-dashoffset:-16}}
#diagram-content path.flow-edge{stroke-dasharray:8 8!important;animation:flow 1.1s linear infinite;stroke-width:2.2px!important}
.diagram-content.gliding{transition:transform .75s var(--ease)}
.diagram-content.touring g.node,.diagram-content.touring .edgePaths path,.diagram-content.touring .edgeLabels{transition:opacity .45s var(--ease)}
.diagram-content.touring g.node:not(.tour-active){opacity:.3}.diagram-content.touring .edgePaths path:not(.flow-active),.diagram-content.touring .edgeLabels{opacity:.28}
#diagram-content g.node.tour-active{filter:drop-shadow(0 0 16px color-mix(in srgb,var(--accent) 80%,transparent)) brightness(1.15)}
#diagram-content path.flow-active{stroke:var(--accent)!important;stroke-width:3px!important;opacity:1}
.tour-card{position:absolute;z-index:3;left:50%;bottom:74px;transform:translateX(-50%);width:min(560px,calc(100% - 28px));border-radius:18px;padding:14px 16px 12px;display:grid;gap:6px;animation:rise .45s var(--ease)}
@keyframes rise{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
.tour-meta{display:flex;gap:10px;align-items:baseline;font-size:12.5px;color:var(--muted)}.tour-meta strong{color:var(--text);font-size:15px}
.tour-card p{margin:0;font-size:14.5px;line-height:1.55}
.tour-controls{display:flex;gap:6px;justify-content:flex-end}.tour-controls .icon-button{width:34px;height:34px;border-radius:10px}
#tour-play[data-state=playing] .when-paused,#tour-play[data-state=paused] .when-playing{display:none}
.tour-progress{height:3px;border-radius:3px;background:var(--line);overflow:hidden}.tour-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#6f8dff,#b17cff)}
/* System map empty state */
.system-empty{height:var(--canvas-h);display:grid;place-items:center;padding:24px;background-image:radial-gradient(var(--line) .8px,transparent .8px);background-size:22px 22px}
.system-card{max-width:460px;text-align:center;border-radius:22px;padding:28px 26px;display:grid;gap:10px;justify-items:center;animation:rise-plain .6s var(--ease)}
@keyframes rise-plain{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.system-card h3{margin:4px 0 0;font-size:19px}.system-card p{margin:0;color:var(--muted);font-size:14px}.system-card .primary-button{margin-top:6px}
.system-orb{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;color:#fff;background:radial-gradient(circle at 30% 25%,#a9b8ff,#6f8dff 45%,#8a5cff);box-shadow:0 0 0 6px rgba(111,141,255,.14),0 10px 30px rgba(111,141,255,.45);animation:breathe 3.2s ease-in-out infinite}.system-orb svg{width:24px;height:24px}
@keyframes breathe{50%{box-shadow:0 0 0 10px rgba(111,141,255,.08),0 12px 36px rgba(138,92,255,.5)}}
.example-card{transition:transform .25s var(--ease),box-shadow .25s}.example-card:hover{transform:translateY(-3px)}
@media (prefers-reduced-motion:reduce){.tour-card{transform:translateX(-50%)}}

/* ————— Diagram-first workspace (0.6): one glass action bar, a full-width canvas, sliding drawers ————— */
.command-bar.tucked{display:none}
.hero-slot .command-bar{margin:0;max-width:880px;width:100%;padding:12px}
.hero-slot .repo-form input{font-size:16px;padding:14px 12px}
.welcome .hero{justify-items:center;text-align:center}.welcome .hero h1{max-width:24ch;margin-inline:auto}.welcome .address-swap{justify-items:center;margin-inline:auto}.welcome .hero-note{margin-inline:auto}
.action-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:18px auto 12px;padding:8px 10px;border-radius:20px;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-hi),var(--glass-shadow);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);position:relative;z-index:6}
.repo-chip{display:flex;align-items:center;gap:10px;min-width:0;padding:4px 6px 4px 4px;border-radius:14px;background:var(--glass-strong);border:1px solid var(--glass-border);box-shadow:var(--glass-hi);flex:0 1 auto}
.repo-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#6f8dff,#9b6bff);flex:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}.repo-mark svg{width:18px;height:18px}
.repo-chip .repo-identity{min-width:0}.repo-chip h1{font-size:15px;font-weight:600;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:38vw}.repo-chip .crumbs{font-size:12px;margin:0}
.repo-chip .icon-button{width:30px;height:30px;border-radius:9px}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto}
.glass-button{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:12px;font-size:13.5px;color:var(--text);background:var(--glass-strong);border:1px solid var(--glass-border);box-shadow:var(--glass-hi);cursor:pointer;transition:transform .18s var(--ease),filter .18s,background .2s;white-space:nowrap}
.glass-button svg{width:16px;height:16px;flex:none}.glass-button .caret svg{width:13px;height:13px;opacity:.7}
.glass-button:hover{filter:brightness(1.12)}.glass-button:active{transform:translateY(1px) scale(.97)}
.glass-button[aria-pressed=true],.glass-button[aria-expanded=true]{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}
.glass-button.accent{color:#fff;border-color:rgba(255,255,255,.25);background:linear-gradient(135deg,#6f8dff,#9b6bff);box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 8px 22px rgba(111,141,255,.35)}
.bar-divider{width:1px;height:24px;background:var(--glass-border);margin:0 4px}
.menu{position:relative}
.popover{position:absolute;top:calc(100% + 8px);right:0;z-index:30;border-radius:16px;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-hi),0 18px 48px rgba(2,6,18,.45);-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%);animation:pop .22s var(--ease)}
:root[data-theme=dark] .popover{background:linear-gradient(145deg,rgba(28,36,54,.92),rgba(20,26,40,.88))}
@keyframes pop{from{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}
.menu-list{display:grid;min-width:250px;padding:6px}.menu-list button{text-align:left;background:transparent;border:0;border-radius:10px;padding:9px 12px;font-size:14px;color:var(--text);cursor:pointer}.menu-list button:hover,.menu-list button:focus-visible{background:var(--glass-strong)}
.info-panel{width:min(460px,calc(100vw - 32px));max-height:min(70vh,640px);overflow:auto;padding:16px 18px;display:grid;gap:10px;right:auto;left:0}
.info-panel #repo-description{margin:0;color:var(--text);font-size:14.5px}.info-panel .metrics{margin:0}.info-section h3{font-size:13px;margin:6px 0 4px;color:var(--muted);font-weight:600}.info-section p{margin:0;font-size:14px;line-height:1.6}
.reading-order.compact{gap:6px}.info-panel .quiet-button{justify-self:start;margin:4px 0 0}
/* Focus layout: the diagram owns the page; Files and Genius slide in. */
.studio[data-layout=focus]{display:block;position:relative}
.studio[data-layout=focus] .diagram-panel{--canvas-h:clamp(520px,calc(100vh - 290px),1000px)}
.studio[data-layout=focus] .canvas,.studio[data-layout=focus] .source-view,.studio[data-layout=focus] .guide,.studio[data-layout=focus] .system-empty{height:clamp(520px,calc(100vh - 290px),1000px)}
.studio[data-layout=focus] .tree-panel,.studio[data-layout=focus] .genius-panel{position:fixed;top:var(--drawer-top,78px);bottom:16px;width:min(370px,calc(100vw - 24px));z-index:25;display:flex;flex-direction:column;transition:transform .45s var(--ease),opacity .3s;box-shadow:var(--glass-hi),0 24px 60px rgba(2,6,18,.5)}
:root[data-theme=dark] .studio[data-layout=focus] :is(.tree-panel,.genius-panel){background:linear-gradient(145deg,rgba(26,34,52,.9),rgba(18,24,38,.86))}
.studio[data-layout=focus] .tree-panel{left:12px}.studio[data-layout=focus] .genius-panel{right:12px}
.studio[data-layout=focus][data-tree=closed] .tree-panel{transform:translateX(calc(-100% - 30px));opacity:0;pointer-events:none}
.studio[data-layout=focus][data-genius=closed] .genius-panel{transform:translateX(calc(100% + 30px));opacity:0;pointer-events:none}
.studio[data-layout=focus] :is(.tree-panel,.genius-panel) .panel-body{display:grid!important;flex:1;min-height:0;height:auto}
.studio[data-layout=focus] :is(.tree-panel,.genius-panel) :is(h2,.count,.mini-pill){display:initial!important}
.studio[data-layout=focus] .genius-panel .panel-body{grid-template-rows:1fr auto}
.studio[data-layout=focus] .panel-title{justify-content:flex-start!important;border-bottom:1px solid var(--line)!important;padding:8px 10px!important}
.studio[data-layout=focus] ~ .file-inspector,.studio[data-layout=focus] + .file-inspector{margin-top:14px}
.studio[data-layout=focus] .view-tabs{justify-content:center}
#workspace:has(.studio[data-layout=focus]) .mobile-switch{display:none!important}
@media (max-width:1100px){.actions{margin-left:0;width:100%}.glass-button span:not(.caret):not([data-icon]){display:none}.glass-button{padding:9px}}
@media (max-width:900px){.studio[data-layout=focus]>*{display:block}.studio[data-layout=focus] .tree-panel,.studio[data-layout=focus] .genius-panel{display:flex;top:var(--drawer-top,70px);left:8px;right:8px;width:auto}.repo-chip h1{max-width:60vw}.info-panel{position:fixed;left:8px;right:8px;top:120px;width:auto}}
.hero-slot{width:100%;display:flex;justify-content:center}.hero-slot .command-bar{width:min(880px,100%)}

/* ————— 0.7: Highlights, Software hierarchy, Build with Genius, grouped exports ————— */
.hl-menu{width:min(400px,calc(100vw - 24px));padding:12px;display:grid;gap:8px;right:auto;left:0}
.hl-query{display:flex;gap:6px}.hl-query input{flex:1;min-width:0;font-size:13.5px;padding:8px 10px;border-radius:10px;border:1px solid var(--glass-border);background:var(--glass-strong);color:var(--text)}.hl-query .quiet-button{margin:0;padding:6px 12px}
.menu-heading{margin:4px 2px 0;font-size:11.5px;font-weight:600;color:var(--muted);letter-spacing:.02em}
.hl-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px}.hl-mode{display:flex;align-items:center;justify-content:space-between;gap:6px;text-align:left;border:1px solid transparent;background:transparent;color:var(--text);border-radius:10px;padding:7px 9px;font-size:13.5px;cursor:pointer}.hl-mode:hover,.hl-mode:focus-visible{background:var(--glass-strong);border-color:var(--glass-border)}
.tiny-badge{font-size:9.5px;font-weight:600;padding:1px 5px;border-radius:999px;color:#fff;background:linear-gradient(135deg,#6f8dff,#b17cff)}
.hl-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);background:color-mix(in srgb,var(--accent) 14%,transparent);border-radius:999px;padding:2px 4px 2px 12px;color:var(--text);font-size:12.5px}.hl-chip .icon-button{width:24px;height:24px;border:0;background:transparent}.hl-chip svg{width:13px;height:13px}
.basis-tag{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--muted)}.basis-tag[data-basis=source]{color:var(--ok)}.basis-tag[data-basis=genius]{color:#b9a4ff}.basis-tag[data-basis=keyword],.basis-tag[data-basis=selection]{color:var(--warn)}
#diagram-content.highlighting g.node:not(.hl-on){opacity:.16;transition:opacity .45s var(--ease)}#diagram-content.highlighting .edgePaths path:not(.hl-edge),#diagram-content.highlighting .edgeLabels{opacity:.12;transition:opacity .45s var(--ease)}
#diagram-content g.node.hl-on{filter:drop-shadow(0 0 12px color-mix(in srgb,var(--accent) 75%,transparent)) brightness(1.12)}
#diagram-content path.hl-edge{stroke:var(--accent)!important;stroke-width:2.6px!important;stroke-dasharray:8 8!important;animation:flow 1.1s linear infinite;opacity:1}
/* Grouped export menu */
.export-menu{width:min(340px,calc(100vw - 24px));padding:8px;gap:6px}.menu-tabs{display:flex;gap:2px;padding:3px;border-radius:12px;background:var(--glass-strong);border:1px solid var(--glass-border)}.menu-tabs button{flex:1;border:0;background:transparent;color:var(--muted);font-size:12px;padding:6px 4px;border-radius:9px;cursor:pointer}.menu-tabs [aria-selected=true]{background:var(--surface2);color:var(--text);box-shadow:var(--glass-hi)}
.export-menu [data-group]{display:grid}
/* Software hierarchy */
.hierarchy-view{height:var(--canvas-h);overflow:auto;padding:12px 18px 40px;font-family:var(--mono);font-size:13.5px}
.studio[data-layout=focus] .hierarchy-view{height:clamp(520px,calc(100vh - 290px),1000px)}
.hier-tools{position:sticky;top:-12px;z-index:2;display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 0;margin-bottom:6px;background:linear-gradient(var(--surface) 70%,transparent);font-family:var(--sans)}
.hier-count{color:var(--muted);font-size:12.5px;margin-right:auto}
.segmented{display:inline-flex;padding:3px;border-radius:12px;background:var(--glass-strong);border:1px solid var(--glass-border)}.segmented button{border:0;background:transparent;color:var(--muted);padding:5px 12px;border-radius:9px;font-size:12.5px;cursor:pointer}.segmented [aria-pressed=true]{background:var(--surface2);color:var(--text);box-shadow:var(--glass-hi)}
ul.hier,ul.hier ul{list-style:none;margin:0;padding:0}ul.hier ul{margin-left:20px;padding-left:12px;border-left:1px dashed color-mix(in srgb,var(--muted) 35%,transparent)}
.hier-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 9px;padding:5px 8px;border-radius:10px;transition:background .2s}.hier-row:hover,.hier-row:focus-within,.hier-row.selected{background:var(--glass-strong)}.hier-row.selected{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent)}
.hier-caret{width:22px;height:22px;display:grid;place-items:center;border:0;background:transparent;color:var(--muted);border-radius:6px;cursor:pointer;flex:none}.hier-caret::before{content:"";width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(-45deg);transition:transform .25s var(--ease)}li[aria-expanded=true]>.hier-row .hier-caret::before{transform:rotate(45deg)}.hier-caret:disabled{visibility:hidden}
.hier-dot{width:9px;height:9px;border-radius:3px;background:var(--kind);box-shadow:0 0 0 3px color-mix(in srgb,var(--kind) 22%,transparent);flex:none}
.hier-label{color:var(--text)}.hier-label.strong{font-weight:500;color:color-mix(in srgb,var(--kind) 70%,var(--text));font-size:14.5px}
.hier-detail{color:var(--muted);font-size:12px;font-family:var(--sans)}
.hier-badge{font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.04em;padding:2px 7px;border-radius:6px;border:1px solid color-mix(in srgb,var(--b,#8a96a8) 55%,transparent);color:var(--b,#8a96a8);background:color-mix(in srgb,var(--b,#8a96a8) 12%,transparent)}
.b-entry-point{--b:#ff9f68}.b-core{--b:#55d6ca}.b-public-api{--b:#8fb3ff}.b-frontend{--b:#e3a0ed}.b-backend{--b:#8fb3ff}.b-storage{--b:#9fb0c8}.b-external{--b:#8a96a8;border-style:dashed}.b-test{--b:#c3e36b}.b-config{--b:#f2c66d}.b-critical{--b:#ff7a7a}.b-generated{--b:#7f8aa0}.b-hardware{--b:#79d99b}.b-docs{--b:#b9a4ff}.b-examples{--b:#6fc3df}.b-build{--b:#ff9f68}.b-assets{--b:#8aa0b6}.b-actor{--b:#c9a7ff}.b-unmapped{--b:#b0b8c6;border-style:dashed}.b-genius{--b:#b17cff}
:root[data-theme=light] .hier-badge{filter:saturate(1.2) brightness(.72)}
.hier-actions{display:inline-flex;gap:4px;margin-left:auto;opacity:0;transition:opacity .2s}.hier-row:hover .hier-actions,.hier-row:focus-within .hier-actions,.hier-row.selected .hier-actions{opacity:1}
.hier-action{font-family:var(--sans);font-size:11.5px;padding:3px 9px;border-radius:8px;border:1px solid var(--glass-border);background:var(--glass-strong);color:var(--text);cursor:pointer}
.hier-children{display:grid;grid-template-rows:1fr;transition:grid-template-rows .32s var(--ease)}.hier-children>ul{overflow:hidden;min-height:0}li[aria-expanded=false]>.hier-children{grid-template-rows:0fr}
/* Genius drawer: selection, Build with Genius */
.genius-scroll{overflow:auto;min-height:0}.genius-scroll .genius-content{max-height:none;overflow:visible}
.genius-focus{margin:12px 14px 0;padding:14px;border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 16%,transparent),transparent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);animation:rise-plain .4s var(--ease)}
.focus-kicker{margin:0;font-size:11.5px;color:var(--muted)}.genius-focus h3{margin:2px 0 8px;font-size:16px}.focus-facts{margin:0 0 8px;padding-left:18px;font-size:13px;color:var(--muted);display:grid;gap:3px}.focus-sub{margin:6px 0 4px;font-size:12px;font-weight:600}.focus-actions{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 6px}
.build-genius{margin:12px 14px 4px;padding:14px;border-radius:16px;background:var(--glass-strong);border:1px solid var(--glass-border);box-shadow:var(--glass-hi)}.build-genius h3{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:14.5px}.build-genius h3 svg{width:16px;height:16px;color:#b17cff}
.build-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.build-grid button{text-align:left;font-size:12.5px;padding:8px 10px;border-radius:10px;border:1px solid var(--glass-border);background:var(--glass-bg);color:var(--text);cursor:pointer;transition:transform .18s var(--ease),filter .18s}.build-grid button:hover{filter:brightness(1.15)}.build-grid button:active{transform:scale(.97)}
.your-app{display:grid;gap:6px;margin-top:12px}.your-app label{font-size:12.5px;font-weight:600}.your-app textarea{resize:vertical;font:inherit;font-size:13px;padding:8px 10px;border-radius:10px;border:1px solid var(--glass-border);background:var(--bg);color:var(--text)}.your-app .quiet-button{justify-self:start;margin:0;padding:6px 12px;font-size:13px}
.findings.verified li::marker{content:"✓ ";color:var(--ok)}.findings.inferred{opacity:.85}.findings.inferred li::marker{content:"? ";color:var(--warn)}.verified-title{color:var(--ok)}.inferred-title{color:var(--warn)}.quote{display:block;font-size:11.5px;color:var(--muted);white-space:pre-wrap}
/* Info panel */
.info-chip{font-size:12px;padding:3px 9px;border-radius:999px;background:var(--glass-strong);border:1px solid var(--glass-border)}.info-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
/* Document dialog */
.doc-dialog{width:min(880px,94vw);max-width:none;border-radius:20px;padding:0}.doc-dialog form{display:grid;gap:10px;padding:18px 20px}.doc-dialog .dialog-heading h2{margin:0 0 4px;font-size:18px}
.doc-controls{display:flex;flex-wrap:wrap;gap:14px;font-size:13px;color:var(--muted)}.doc-controls label{display:flex;gap:6px;align-items:center}
#doc-text{margin:0;max-height:56vh;overflow:auto;white-space:pre-wrap;font-size:12.5px;line-height:1.55;padding:14px;border-radius:12px;background:var(--bg);border:1px solid var(--line)}
.doc-picture{display:flex;flex-wrap:wrap;gap:8px}
/* Mobile: scrolling action bar, bottom sheets */
@media (max-width:900px){
  .actions{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px;-webkit-overflow-scrolling:touch}.actions::-webkit-scrollbar{display:none}
  .studio[data-layout=focus] .tree-panel,.studio[data-layout=focus] .genius-panel{top:auto!important;bottom:0;left:0!important;right:0!important;width:auto;height:min(80vh,680px);border-radius:22px 22px 0 0}
  .studio[data-layout=focus][data-tree=closed] .tree-panel,.studio[data-layout=focus][data-genius=closed] .genius-panel{transform:translateY(calc(100% + 30px))}
  .popover{position:fixed!important;left:8px!important;right:8px!important;top:auto!important;bottom:8px;width:auto!important;max-height:72vh;overflow:auto}
  .hl-grid,.build-grid{grid-template-columns:1fr}.hier-actions{opacity:1}.hierarchy-view{padding:8px 10px 30px;font-size:12.5px}ul.hier ul{margin-left:10px;padding-left:8px}
}

/* ————— 0.8: Project extract ————— */
.extract-view{height:var(--canvas-h);overflow:auto;padding:14px 16px 40px}
.studio[data-layout=focus] .extract-view{height:clamp(520px,calc(100vh - 290px),1000px)}
.extract-controls{display:grid;gap:10px;padding:14px;border-radius:18px;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-hi);margin-bottom:12px}
.extract-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr) auto;gap:10px}
.extract-field{display:grid;gap:4px;font-size:12px;color:var(--muted)}.extract-field input,.extract-field select{font-family:var(--mono);font-size:13px;padding:8px 10px;border-radius:10px;border:1px solid var(--glass-border);background:var(--bg);color:var(--text)}
.extract-run{display:flex;gap:8px}.extract-run button{margin:0}.extract-note{margin:0}
.extract-status{margin:0 0 12px;padding:10px 14px;border-radius:12px;border:1px solid var(--glass-border);background:var(--glass-strong);font-size:13.5px}.extract-status:empty{display:none}.extract-status.error{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,transparent)}
.extract-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.extract-actions button{margin:0}.extract-meta{font-size:12px;color:var(--muted)}.extract-actions .extract-meta{margin-left:auto}
.extract-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.extract-card{display:grid;grid-template-rows:auto 1fr;min-width:0;border-radius:18px;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-hi),var(--glass-shadow);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);animation:rise-plain .45s var(--ease) both}.extract-card.wide{grid-column:1/-1}
.extract-card header{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line)}.extract-card h3{margin:0;font-size:14.5px}.extract-card header .extract-meta{margin-right:auto}
.extract-pre{margin:0;padding:12px 14px;max-height:280px;overflow:auto;font-family:var(--mono);font-size:12.5px;line-height:1.55;white-space:pre}.extract-pre.tall{max-height:360px}.extract-pre.contents{max-height:560px;white-space:pre-wrap;overflow-wrap:anywhere}
.extract-stats{padding:12px 14px;display:grid;gap:6px;align-content:start;max-height:360px;overflow:auto}
.lang-row{display:grid;grid-template-columns:120px 1fr auto;gap:10px;align-items:center;font-size:12.5px}.lang-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lang-meta{color:var(--muted);font-variant-numeric:tabular-nums}
.lang-track{height:8px;border-radius:99px;background:var(--line);overflow:hidden}.lang-track i{display:block;height:100%;border-radius:99px;transform-origin:left;animation:grow .7s var(--ease) both}@keyframes grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.extract-sub{margin:8px 0 0;font-size:12px;font-weight:600}.extract-list{margin:0;padding-left:18px;font-size:12.5px;font-family:var(--mono);display:grid;gap:2px}.extract-list.muted{color:var(--muted);font-family:var(--sans)}
.extract-important{margin:0;padding:12px 14px 12px 32px;display:grid;gap:6px;max-height:360px;overflow:auto}.extract-important .why{display:block;font-size:12px;color:var(--muted)}
@media (max-width:900px){.extract-row,.extract-grid{grid-template-columns:1fr}.extract-actions .extract-meta{margin-left:0;width:100%}}

/* ————— 0.9: centered view dock (proximity magnification) and Export Project ————— */
.dock-wrap{display:flex;justify-content:center;padding-top:30px;margin:0 auto 12px;overflow:visible;position:relative;z-index:5}
.dock{position:relative;display:flex;align-items:flex-start;gap:10px;width:fit-content;max-width:100%;padding:9px 14px 7px;border-radius:22px;background:linear-gradient(180deg,rgba(32,36,46,.62),rgba(18,21,29,.7));border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 40px rgba(0,0,0,.35);-webkit-backdrop-filter:blur(24px) saturate(170%);backdrop-filter:blur(24px) saturate(170%);overflow:visible}
:root[data-theme=light] .dock{background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(240,243,250,.72));border-color:rgba(24,48,96,.12);box-shadow:inset 0 1px 0 #fff,0 16px 36px rgba(40,70,130,.14)}
.dock-item{position:relative;display:grid;justify-items:center;gap:3px;min-width:52px;padding:0;border:0;background:none;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.dock-item:focus-visible{outline:none}.dock-item:focus-visible .dock-icon{outline:2px solid var(--accent);outline-offset:3px}
.dock-icon{position:relative;display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#202020;border:1px solid #2e2e2e;color:#c8cbd4;transform:translateY(var(--y,0px)) scale(var(--s,1));transform-origin:50% 100%;transition:transform .2s cubic-bezier(.22,1,.36,1),background .25s,color .2s,box-shadow .25s,border-color .25s;will-change:transform}
:root[data-theme=light] .dock-icon{background:#f6f7fb;border-color:#d8dde8;color:#3a4252}
.dock-icon svg{width:26px;height:26px;stroke-width:1.8}
.dock-item:hover .dock-icon{color:#fff}:root[data-theme=light] .dock-item:hover .dock-icon{color:#0d1220}
.dock-item.lifted .dock-icon{box-shadow:0 8px 14px -9px rgba(0,0,0,.5)}
.dock-item[aria-selected=true] .dock-icon,.dock-item[aria-expanded=true] .dock-icon{background:#d4891a;border-color:#e6a23e;color:#101010;box-shadow:0 0 0 1px rgba(212,137,26,.35),0 6px 18px rgba(212,137,26,.22)}
.dock-item[aria-selected=true]:hover .dock-icon{color:#101010}
.dock-dot{width:4px;height:4px;border-radius:999px;background:transparent;transition:background .25s,transform .25s}.dock-item[aria-selected=true] .dock-dot{background:#d4891a}
.dock-label{font-size:10.5px;line-height:1.1;color:var(--muted);white-space:nowrap;transition:color .2s}.dock-item[aria-selected=true] .dock-label{color:var(--text);font-weight:500}
.dock-tip{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,-4px);padding:4px 9px;border-radius:999px;font-size:11.5px;white-space:nowrap;color:#fff;background:rgba(18,22,30,.92);border:1px solid rgba(255,255,255,.14);box-shadow:0 8px 20px rgba(0,0,0,.3);opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;z-index:4}
.dock-item:hover .dock-tip,.dock-item:focus-visible .dock-tip{opacity:1;transform:translate(-50%,0)}
.dock-sep{width:1px;height:22px;margin:13px 2px 0;background:rgba(255,255,255,.12);flex:none}:root[data-theme=light] .dock-sep{background:rgba(24,48,96,.16)}
.dock-badge{position:absolute;top:-6px;right:-8px;font-size:9px;font-weight:700;line-height:1;padding:3px 5px;border-radius:999px;pointer-events:none}
.dock-badge.ai{color:#fff;background:linear-gradient(135deg,#7c6bff,#b17cff);box-shadow:0 2px 8px rgba(155,107,255,.45)}
.dock-badge.count{color:#fff;background:#3b4458;border:1px solid rgba(255,255,255,.18);min-width:16px;text-align:center}
@media (prefers-reduced-motion:reduce){.dock-icon{transition:background .2s,color .2s}}
@media (max-width:900px){
  .dock-wrap{padding-top:8px;margin-bottom:10px}
  .dock{max-width:calc(100vw - 16px);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;gap:8px;padding:8px 10px}.dock::-webkit-scrollbar{display:none}
  .dock-item{min-width:44px}.dock-icon{width:42px;height:42px}.dock-icon svg{width:24px;height:24px}.dock-label,.dock-tip{display:none}.dock-sep{margin-top:10px}
  .dock-item:active .dock-icon{transform:scale(.92)}.dock-badge{top:-3px;right:-4px}
}
/* Export Project */
.xp-head h2{margin:2px 0 4px;font-size:20px}.xp-head p{margin:0 0 14px}
.xp-cards{display:grid;gap:10px}
.xp-card{border-radius:18px;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-hi);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);overflow:hidden}
.xp-card>summary{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;list-style:none}.xp-card>summary::-webkit-details-marker{display:none}
.xp-card>summary::after{content:"";margin-left:auto;width:8px;height:8px;border-right:1.8px solid var(--muted);border-bottom:1.8px solid var(--muted);transform:rotate(45deg);transition:transform .25s var(--ease)}.xp-card[open]>summary::after{transform:rotate(225deg)}
.xp-card>summary:hover{background:var(--glass-strong)}
.xp-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#202020;border:1px solid #2e2e2e;color:#d4891a;flex:none}.xp-icon svg{width:21px;height:21px}:root[data-theme=light] .xp-icon{background:#f6f7fb;border-color:#d8dde8}
.xp-title{display:grid;gap:2px}.xp-title strong{font-size:15px}.xp-title span{font-size:12.5px;color:var(--muted)}
.xp-body{padding:4px 16px 16px;display:grid;gap:10px;animation:rise-plain .35s var(--ease)}
.xp-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.xp-action{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:11px;font-size:13px;color:var(--text);background:var(--glass-strong);border:1px solid var(--glass-border);box-shadow:var(--glass-hi);cursor:pointer;text-decoration:none;transition:transform .18s var(--ease),filter .18s}.xp-action:hover{filter:brightness(1.14)}.xp-action:active{transform:scale(.97)}.xp-action svg{width:15px;height:15px}
.xp-diagrams{display:grid;gap:6px}.xp-diagram-row{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:12px;background:var(--glass-bg);border:1px solid var(--line)}.xp-diagram-name{font-size:13.5px;font-weight:500}
.clone-command{white-space:pre-wrap;max-height:none}
.offscreen-render{position:fixed;left:-20000px;top:0;width:1600px;height:1200px;pointer-events:none}
.menu-list button[role=menuitem]{display:flex;align-items:center;gap:9px}.menu-list button[role=menuitem] svg{width:15px;height:15px;opacity:.8}

/* ————— Version 1.0 layer: analysis modes, two-model chooser, Deep Genius, process view, System Map 2.0 tour ————— */
.basis-tag[data-basis=observed]{color:var(--ok)}.basis-tag[data-basis=documented]{color:#8fb3ff}.basis-tag[data-basis=inferred]{color:#b9a4ff;border-style:dashed}.basis-tag[data-basis=edited]{color:var(--danger)}
:root[data-theme=light] .basis-tag[data-basis=documented]{color:#2d5ab0}:root[data-theme=light] .basis-tag[data-basis=inferred]{color:#6850b5}
/* Analysis modes */
.mode-picker{grid-column:1/-1;border:0;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.mode-picker legend{font-size:13px;color:var(--muted);margin-bottom:6px;padding:0}
.mode-picker label{position:relative;display:block;cursor:pointer}.mode-picker input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.mode-picker span{display:grid;gap:2px;height:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--glass-border);background:var(--glass-strong);box-shadow:var(--glass-hi);transition:border-color .18s var(--ease),box-shadow .18s var(--ease)}
.mode-picker strong{font-size:14px;font-weight:600;color:var(--text)}.mode-picker small{font-size:12px;color:var(--muted);line-height:1.4}
.mode-picker input:checked+span{border-color:color-mix(in srgb,var(--accent) 70%,transparent);box-shadow:var(--glass-hi),0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}
.mode-picker input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
/* API settings: two recommended models, custom ID, Test connection */
.model-picker{border:0;margin:0;padding:0}.model-picker legend{font-size:13px;color:var(--muted);margin-bottom:6px;padding:0}
.model-options{display:grid;grid-template-columns:1fr 1fr;gap:8px}.model-option{position:relative;display:block;cursor:pointer;margin:0!important}.model-option input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.model-card{display:grid;gap:3px;height:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--glass-border);background:var(--glass-strong);box-shadow:var(--glass-hi)}
.model-card strong{font-size:13.5px;color:var(--text)}.model-card code{font-size:12.5px;color:var(--accent);overflow-wrap:anywhere}.model-card small{font-size:12px;color:var(--muted);line-height:1.4}
.model-option input:checked+.model-card{border-color:color-mix(in srgb,var(--accent) 70%,transparent);box-shadow:var(--glass-hi),0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.model-option input:focus-visible+.model-card{outline:2px solid var(--accent);outline-offset:2px}
.availability{font-style:normal;font-size:11.5px;font-weight:600}.availability.ok{color:var(--ok)}.availability.missing{color:var(--warn)}
.custom-model{margin:4px 0}.custom-model summary{cursor:pointer;font-size:13px;color:var(--muted)}.custom-model label{margin-top:8px}
.connection{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.connection .subtle{font-size:12px}
.connection-status{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:4px;font-size:13px;background:var(--surface2)}
.connection-status[data-state=ok]{border-color:color-mix(in srgb,var(--ok) 55%,transparent)}.connection-status[data-state=error]{border-color:color-mix(in srgb,var(--danger) 55%,transparent)}
.connection-status strong{font-size:14px}.connection-status[data-state=ok]>strong{color:var(--ok)}.connection-status[data-state=error]>strong{color:var(--danger)}
.connection-checks{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:6px}.connection-checks li{display:flex;gap:9px;align-items:flex-start;color:var(--muted)}.connection-checks svg{width:16px;height:16px;flex:none;margin-top:2px}
.connection-checks .check-text{display:grid;gap:1px;min-width:0}.connection-checks .check-text strong{font-size:13px;color:var(--text)}.connection-checks .check-text span{font-size:12.5px;overflow-wrap:anywhere}
.connection-checks .check-ok svg{color:var(--ok)}.connection-checks .check-warn svg{color:var(--warn)}.connection-checks .check-fail svg{color:var(--danger)}.connection-checks .check-skip{opacity:.62}
.connection-message{margin:0;color:var(--text);font-size:13px;line-height:1.5}.connection-key-note{margin:2px 0 0;padding:8px 10px;border-radius:10px;background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--text);font-size:12.5px;line-height:1.5}
.connection-more summary{cursor:pointer;color:var(--muted);font-size:12.5px;margin-top:4px}.connection-diagnostics{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:3px 12px;margin:6px 0 0;font-size:12px}.connection-diagnostics dt{color:var(--muted)}.connection-diagnostics dd{margin:0;overflow-wrap:anywhere;font-family:var(--mono,ui-monospace,monospace)}
.key-field{display:grid;gap:6px;margin:14px 0 0}.key-field .field-title{font-weight:600}.key-input{position:relative;display:flex;align-items:center}.key-input input{width:100%;padding-right:46px}
.secret-input:not(.revealed){-webkit-text-security:disc}.key-reveal{position:absolute;right:5px;width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:var(--muted);cursor:pointer}.key-reveal:hover{color:var(--text);background:rgba(255,255,255,.06)}.key-reveal:focus-visible{outline:2px solid rgba(135,170,255,.8);outline-offset:2px}.key-reveal svg{width:18px;height:18px}
.key-note{font-size:12.5px;color:var(--muted)}.key-field+.model-picker{margin-top:16px}
/* Provider failures explained in place */
.provider-error,.deep-error{border:1px solid color-mix(in srgb,var(--warn) 50%,transparent);background:color-mix(in srgb,var(--warn) 9%,var(--surface));border-radius:14px;padding:12px 14px;display:grid;gap:5px;text-align:left;max-width:560px;margin:10px auto 0}
.provider-error strong,.deep-error strong{font-size:14px}.provider-error p,.deep-error p{margin:0;font-size:13.5px}.provider-error .quiet-button,.deep-error .quiet-button{justify-self:start;margin-top:4px}
.provider-error.kind-quota_exhausted,.provider-error.kind-auth,.deep-error.kind-quota_exhausted,.deep-error.kind-auth{border-color:color-mix(in srgb,var(--danger) 50%,transparent);background:color-mix(in srgb,var(--danger) 8%,var(--surface))}
/* Deep Genius section in the Genius panel */
.deep-genius{padding:14px 16px 6px;border-bottom:1px solid var(--line);display:grid;gap:10px}
.deep-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.deep-head h3{display:flex;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600}.deep-head h3 svg{width:18px;height:18px;color:var(--purple)}
.deep-status.status-running{color:var(--accent)}.deep-status.status-complete{color:var(--ok)}.deep-status.status-failed{color:var(--danger)}
.deep-facts{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin:0;font-size:12.5px}.deep-facts dt{color:var(--muted)}.deep-facts dd{margin:0;color:var(--text);overflow-wrap:anywhere}
.deep-teams{display:grid;gap:8px}.deep-team h4{margin:0 0 5px;font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.2px}
.agent-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.deep-team.core .agent-card{max-width:220px}
.agent-card{display:grid;gap:4px;align-content:start;text-align:left;padding:8px 9px;border-radius:11px;border:1px solid var(--glass-border);background:var(--glass-strong);box-shadow:var(--glass-hi);color:var(--text);min-width:0;transition:border-color .2s var(--ease),transform .18s var(--ease)}
.agent-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}
.agent-head{display:flex;gap:6px;align-items:baseline;min-width:0}.agent-id{font:600 11px var(--mono);color:var(--purple)}.agent-name{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.agent-detail{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.agent-state{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}.agent-state svg{width:13px;height:13px}
.state-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.agent-state.state-reading,.agent-state.state-analyzing{color:var(--accent)}.agent-state.state-reading .state-dot,.agent-state.state-analyzing .state-dot{animation:pulse 1.2s ease-in-out infinite}
.agent-state.state-completed{color:var(--ok)}.agent-state.state-approved{color:var(--ok)}.agent-state.state-needs-revision{color:var(--warn)}.agent-state.state-failed{color:var(--danger)}
.agent-card.state-analyzing,.agent-card.state-reading{border-color:color-mix(in srgb,var(--accent) 55%,transparent);box-shadow:var(--glass-hi),0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}
.agent-card.state-approved{border-color:color-mix(in srgb,var(--ok) 55%,transparent)}.agent-card.state-needs-revision{border-color:color-mix(in srgb,var(--warn) 60%,transparent)}.agent-card.state-failed{border-color:color-mix(in srgb,var(--danger) 55%,transparent)}
.deep-actions{display:flex;flex-wrap:wrap;gap:8px}.deep-actions .primary-button{margin:0;flex:0 0 auto;padding:8px 14px}
/* Dialogs: confirmation and agent results */
.deep-plan{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:6px 0 10px;font-size:13.5px}.deep-plan dt{color:var(--muted)}.deep-plan dd{margin:0}
.deep-cost{font-size:13px;padding:10px 12px;border-radius:12px;border:1px solid color-mix(in srgb,var(--warn) 45%,transparent);background:color-mix(in srgb,var(--warn) 8%,transparent)}
.agent-dialog{width:min(760px,calc(100vw - 32px))}.agent-body{display:grid;gap:12px;max-height:62vh;overflow:auto;margin:8px 0}
.agent-section h3{font-size:14px;margin:0 0 6px}.agent-section p{margin:0 0 6px;font-size:13.5px}
.agent-findings{margin:0;padding-left:20px;display:grid;gap:10px}.finding strong{display:block;font-size:13.5px}.finding-meta{font-size:12px;color:var(--muted)}
.finding.inferred{border-left:2px dotted #b9a4ff;padding-left:8px}.finding.verified{border-left:2px solid var(--ok);padding-left:8px}
.evidence-list{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px}.evidence{display:grid;gap:2px;padding:6px 8px;border-radius:9px;font-size:12px;border:1px solid var(--line)}
.evidence.evidence-verified{border-style:solid;border-color:color-mix(in srgb,var(--ok) 45%,transparent)}.evidence.evidence-unverified{border-style:dotted;border-color:#b9a4ff}
.evidence-path{justify-self:start;background:none;border:0;padding:0;color:var(--accent);font:12px var(--mono);cursor:pointer;text-align:left;overflow-wrap:anywhere}.evidence code{font-size:11.5px;color:var(--muted);overflow-wrap:anywhere}.evidence-tag{font-size:11px;color:var(--muted)}
.agent-verdicts{margin:0;padding-left:18px;display:grid;gap:4px;font-size:12.5px}.verdict-APPROVED{color:var(--ok)}.verdict-NEEDS_REVISION{color:var(--warn)}.verdict-REJECTED{color:var(--danger)}
/* Genius process view */
.pipeline-view{min-height:var(--canvas-h);padding:18px clamp(12px,3vw,32px) 28px;overflow:auto;background-color:var(--bg);background-image:radial-gradient(var(--line) .8px,transparent .8px);background-size:18px 18px}
.pipe-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-bottom:16px}.pipe-head h2{margin:0;font-size:18px;font-weight:600}.pipe-head p{margin:0;flex:1 1 280px;font-size:13.5px}.pipe-head .primary-button{margin:0;flex:0 0 auto;padding:8px 14px}
.pipe{display:grid;justify-items:center;max-width:860px;margin:0 auto}
.pipe-node{display:flex;align-items:center;gap:11px;min-width:min(380px,100%);max-width:100%;padding:11px 15px;border-radius:16px;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-hi),var(--glass-shadow);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);transition:border-color .3s var(--ease),box-shadow .3s var(--ease)}
.pipe-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--glass-strong);border:1px solid var(--glass-border);flex:none}.pipe-icon svg{width:19px;height:19px;color:var(--purple)}
.pipe-text{display:grid;min-width:0}.pipe-text strong{font-size:14.5px}.pipe-text small{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.pipe-node[data-state=active],.pipe-team[data-state=active],.pipe-validation[data-state=active]>.pipe-node{border-color:color-mix(in srgb,var(--accent) 65%,transparent);box-shadow:var(--glass-hi),var(--glass-shadow),0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent)}
.pipe-node.final{flex-wrap:wrap}.pipe-node.final .primary-button{margin:4px 0 0 45px;padding:8px 14px;flex:0 0 auto}
.pipe-link{position:relative;width:2px;height:30px;background:linear-gradient(var(--line),var(--line))}
.pipe-link::after{content:"";position:absolute;left:50%;bottom:-1px;width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:translateX(-50%) rotate(45deg);opacity:.7}
.pipe-link.flowing{background:repeating-linear-gradient(to bottom,var(--accent) 0 6px,transparent 6px 12px);background-size:2px 12px;animation:pipe-flow .7s linear infinite}
.pipe-link-label{position:absolute;left:12px;top:50%;transform:translateY(-50%);white-space:nowrap;font-size:11px;color:var(--muted)}
@keyframes pipe-flow{to{background-position:0 12px}}
.pipe-team{width:100%;border-radius:18px;padding:12px;background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-hi),var(--glass-shadow);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);display:grid;gap:9px;transition:border-color .3s var(--ease),box-shadow .3s var(--ease)}
.pipe-team header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;align-items:baseline}.pipe-team header strong{font-size:14px}.pipe-team-note{font-size:12px;color:var(--muted)}
.pipe-team[data-state=done]{border-color:color-mix(in srgb,var(--ok) 35%,transparent)}
.pipe-validation{display:grid;justify-items:center;gap:8px;width:100%}.pipe-branches{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.pipe-branch{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:5px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted)}.pipe-branch svg{width:14px;height:14px}
.pipe-branch.revise{border-style:dashed}.pipe-branch.revise svg{color:var(--warn)}.pipe-branch.approved svg{color:var(--ok)}
.pipe-branch.looping svg{animation:pipe-spin 1.6s linear infinite}.pipe-branch.looping{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 55%,transparent)}
@keyframes pipe-spin{to{transform:rotate(360deg)}}
.pipe-results{max-width:1100px;margin:26px auto 0}.pipe-results h3{font-size:15px;margin:0 0 10px}
.pipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pipe-col{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:10px 12px;min-width:0}.pipe-col h4{margin:0 0 8px;font-size:13px}
.pipe-list{margin:0;padding:0;list-style:none;display:grid;gap:7px}.pipe-item{display:grid;gap:2px;padding:7px 9px;border-radius:10px;border:1px solid var(--line);font-size:12.5px;min-width:0}
.pipe-item.verified{border-style:solid;border-color:color-mix(in srgb,var(--ok) 40%,transparent)}.pipe-item.inferred{border-style:dotted;border-color:#b9a4ff}
.pipe-item strong{font-size:13px;overflow-wrap:anywhere}.pipe-item-meta{font-size:11.5px;color:var(--muted);overflow-wrap:anywhere}
.sev{justify-self:start;font:600 10.5px var(--mono);text-transform:uppercase;letter-spacing:.4px;padding:1px 6px;border-radius:6px;background:var(--surface2);color:var(--muted)}
.sev-critical,.sev-high{color:var(--danger)}.sev-medium{color:var(--warn)}.sev-low{color:var(--accent)}
.dock-badge.deep{color:#fff;background:linear-gradient(135deg,#2f9d6a,#55c98e);box-shadow:0 2px 8px rgba(85,201,142,.4)}
/* System Map 2.0 tour card */
.tour-stage{font-size:11px;font-weight:600;color:var(--purple);text-transform:uppercase;letter-spacing:.5px}
.tour-evidence{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.tour-files{display:flex;flex-wrap:wrap;gap:5px}
.tour-file{font:11.5px var(--mono);padding:2px 8px;border-radius:999px;border:1px solid var(--glass-border);background:var(--glass-strong);color:var(--accent);cursor:pointer;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1250px){.agent-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.mode-picker,.model-options{grid-template-columns:1fr}.agent-row{grid-template-columns:1fr}.pipe-grid{grid-template-columns:1fr}.pipe-link-label{display:none}.pipe-node{min-width:0;width:100%}.pipe-node.final .primary-button{margin-left:0}.deep-facts{grid-template-columns:1fr}.deep-facts dd{margin-bottom:4px}}
@media(prefers-reduced-motion:reduce){.pipe-link.flowing{animation:none;background:var(--accent)}.pipe-branch.looping svg{animation:none}.agent-state .state-dot{animation:none!important}}
.xp-sub{font-size:12.5px;font-weight:600;color:var(--muted);margin:14px 0 6px}

/* ————— Official footer: premium dark glass, Git Architecture Diagram within the Pro_Amine ecosystem ————— */
:root{--ft-bg:#090D14;--ft-bg-2:#0B1020;--ft-bg-3:#101522;--ft-glass:rgba(20,28,40,.55);--ft-glass-2:rgba(15,23,42,.60);--ft-text:#F3F4F6;--ft-text-2:#CBD5E1;--ft-muted:#94A3B8;--ft-accent:#8BA8FF;--ft-accent-2:#7DD3FC;--ft-accent-3:#A78BFA;--ft-border:rgba(255,255,255,.08);--ft-border-strong:rgba(255,255,255,.14);--ft-highlight:inset 0 1px 0 rgba(255,255,255,.07);--ft-shadow:0 24px 60px -24px rgba(0,0,0,.65),0 2px 10px rgba(0,0,0,.22);--ft-glow:0 0 0 1px rgba(139,168,255,.14),0 30px 70px -28px rgba(139,168,255,.30);--ft-plate:rgba(229,233,240,.93);--ft-media:#0b0f17;--ft-ease:cubic-bezier(.22,1,.36,1)}
:root[data-theme=light]{--ft-bg:#EEF2F8;--ft-bg-2:#E7ECF5;--ft-bg-3:#F6F8FC;--ft-glass:rgba(255,255,255,.66);--ft-glass-2:rgba(255,255,255,.56);--ft-text:#0F172A;--ft-text-2:#334155;--ft-muted:#475569;--ft-accent:#4F6BDB;--ft-accent-2:#0E7490;--ft-accent-3:#6D28D9;--ft-border:rgba(15,23,42,.08);--ft-border-strong:rgba(15,23,42,.15);--ft-highlight:inset 0 1px 0 rgba(255,255,255,.8);--ft-shadow:0 24px 60px -30px rgba(15,23,42,.28),0 2px 10px rgba(15,23,42,.06);--ft-glow:0 0 0 1px rgba(79,107,219,.16),0 30px 70px -30px rgba(79,107,219,.30);--ft-plate:rgba(255,255,255,.95);--ft-media:#0b0f17}
.site-footer{position:relative;isolation:isolate;display:block;margin-top:72px;padding:56px 0 0;color:var(--ft-text);font-size:14px;text-align:left;background:linear-gradient(180deg,var(--ft-bg-2),var(--ft-bg) 260px);border-top:1px solid var(--ft-border)}
.site-footer::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(52% 42% at 14% 0%,rgba(139,168,255,.11),transparent 72%),radial-gradient(44% 38% at 86% 6%,rgba(167,139,250,.08),transparent 72%),radial-gradient(40% 30% at 50% 100%,rgba(125,211,252,.05),transparent 70%)}
.footer-identity,.footer-cards{width:min(1440px,94%);margin-inline:auto}
.footer-identity{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 10px;margin-bottom:22px;font-size:13.5px;color:var(--ft-muted)}.footer-identity strong{color:var(--ft-text);font-weight:600}.identity-mark{width:22px;height:22px;object-fit:contain}
.footer-cards{display:grid;grid-template-columns:minmax(0,32fr) minmax(0,36fr) minmax(0,32fr);gap:18px;align-items:stretch}
.footer-card{position:relative;display:flex;flex-direction:column;gap:14px;min-width:0;padding:24px;border-radius:28px;color:var(--ft-text);background:linear-gradient(180deg,rgba(255,255,255,.045),transparent 42%),linear-gradient(160deg,var(--ft-glass),var(--ft-glass-2));border:1px solid var(--ft-border);box-shadow:var(--ft-highlight),var(--ft-shadow);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%);transition:transform .5s var(--ft-ease),box-shadow .5s var(--ft-ease),border-color .5s var(--ft-ease)}
.footer-card:hover{transform:translateY(-4px);border-color:var(--ft-border-strong);box-shadow:var(--ft-highlight),var(--ft-shadow),var(--ft-glow)}
@keyframes ft-fade-up{from{opacity:0;transform:translate3d(0,26px,0)}to{opacity:1;transform:none}}
.footer-card:nth-child(1){--ft-delay:0ms}.footer-card:nth-child(2){--ft-delay:150ms}.footer-card:nth-child(3){--ft-delay:300ms}.footer-copyright{--ft-delay:450ms}
.footer-reveal .footer-card:not(.in-view),.footer-reveal .footer-copyright:not(.in-view){opacity:0}
.footer-reveal .footer-card.in-view,.footer-reveal .footer-copyright.in-view{animation:ft-fade-up 1s var(--ft-ease) var(--ft-delay,0ms) backwards}
.footer-card h3{margin:0;font-size:17px;font-weight:600;letter-spacing:-.2px;line-height:1.35;color:var(--ft-text)}
.footer-card p{margin:0;font-size:14px;line-height:1.7;color:var(--ft-muted)}
.brand-media{position:relative;margin:0;border-radius:18px;overflow:hidden;display:grid;place-items:center;background:rgba(255,255,255,.03);box-shadow:inset 0 0 0 1px var(--ft-border)}
.brand-media img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .7s var(--ft-ease)}
.footer-card:hover .brand-media img{transform:scale(1.015)}
.brand-logo{aspect-ratio:1024/468;width:100%;max-width:252px;padding:12px 18px;background:var(--ft-plate);box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 10px 26px -14px rgba(0,0,0,.55)}
.brand-ide{aspect-ratio:7/5;background:var(--ft-media)}.brand-nanokit{aspect-ratio:1200/560;background:radial-gradient(70% 80% at 50% 55%,rgba(139,168,255,.10),transparent 70%)}.brand-umt{aspect-ratio:16/9;background:var(--ft-media)}
.media-fallback{display:none;position:absolute;inset:0;place-items:center;align-content:center;gap:8px;padding:12px;text-align:center;font-size:13px;color:var(--ft-muted);border:1px dashed var(--ft-border-strong);border-radius:inherit}
.brand-media.missing{aspect-ratio:auto;min-height:112px;background:rgba(255,255,255,.04)}.brand-logo.missing{min-height:96px}
.brand-media.missing img{visibility:hidden}.brand-media.missing .media-fallback{display:grid}.media-fallback svg{width:30px;height:30px;color:var(--ft-accent)}
.fallback-word{font-size:28px;font-weight:700;font-style:italic;letter-spacing:-.5px;color:#111827}
.eco-caption{font-size:13px!important;color:var(--ft-muted)!important;text-align:center}.eco-caption strong{color:var(--ft-text-2);font-weight:600}
.footer-nav{list-style:none;margin:0;padding:0;display:grid;gap:2px}.footer-nav a{display:inline-flex;align-items:center;gap:11px;padding:6px 4px;font-size:15.5px;color:var(--ft-text-2);text-decoration:none;border-radius:10px;transition:color .25s var(--ft-ease),transform .25s var(--ft-ease)}
.footer-nav a:hover{color:var(--ft-text);text-decoration:none;transform:translateX(2px)}.footer-nav svg{width:20px;height:20px;color:var(--ft-muted);transition:color .25s var(--ft-ease)}.footer-nav a:hover svg{color:var(--ft-accent)}.nav-mark{width:21px;height:21px;object-fit:contain;flex:none}
/* Social dock: circular glass buttons with proximity magnification (public/social-dock.js) and glass tooltips. */
.social-dock{container:social/inline-size;display:grid;gap:4px;margin-top:4px;min-width:0}
.social-dock-label{margin:0;font-size:11.5px!important;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--ft-muted)!important}
.footer-social{--dock-size:44px;--dock-gap:8px;list-style:none;margin:0;padding:16px 0 6px;display:grid;grid-template-columns:repeat(8,var(--dock-size));gap:var(--dock-gap);justify-content:start;align-items:end}
.footer-social>li{position:relative;width:var(--dock-size);height:var(--dock-size)}
.social-link{--dock-scale:1;--dock-lift:0px;position:relative;display:grid;place-items:center;width:100%;height:100%;border-radius:50%;color:#D7DCE4;text-decoration:none;background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.12);box-shadow:0 8px 24px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.15),inset 0 -1px 0 rgba(255,255,255,.04);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);transform:translateY(var(--dock-lift)) scale(var(--dock-scale));transform-origin:50% 100%;transition:transform 220ms cubic-bezier(.22,1,.36,1),background .22s ease,box-shadow .22s ease,color .22s ease,border-color .22s ease;will-change:transform}
.social-link:hover,.social-link.is-active{text-decoration:none;color:#F5F7FA;background:linear-gradient(145deg,rgba(255,255,255,.17),rgba(255,255,255,.06));border-color:rgba(255,255,255,.20);box-shadow:0 12px 28px rgba(0,0,0,.34),0 0 18px rgba(139,168,255,.22),inset 0 1px 0 rgba(255,255,255,.22),inset 0 -1px 0 rgba(255,255,255,.05)}
.social-link.is-active{z-index:2}.social-link.is-near{z-index:1}
.social-link:focus-visible{outline:2px solid rgba(135,170,255,.8);outline-offset:3px}
.social-glyph{display:none;width:46%;height:46%;background:currentColor;-webkit-mask:var(--glyph) center/contain no-repeat;mask:var(--glyph) center/contain no-repeat}
.social-mono{font-size:13px;font-weight:600;letter-spacing:.02em;line-height:1;user-select:none}
.social-link.has-glyph .social-glyph{display:block}.social-link.has-glyph .social-mono{display:none}
.social-link.has-glyph[data-network=telegram]{--glyph:url("/assets/brand/social/telegram.svg")}.social-link.has-glyph[data-network=tiktok]{--glyph:url("/assets/brand/social/tiktok.svg")}.social-link.has-glyph[data-network=youtube]{--glyph:url("/assets/brand/social/youtube.svg")}.social-link.has-glyph[data-network=facebook]{--glyph:url("/assets/brand/social/facebook.svg")}
.social-link.has-glyph[data-network=instagram]{--glyph:url("/assets/brand/social/instagram.svg")}.social-link.has-glyph[data-network=github]{--glyph:url("/assets/brand/social/github.svg")}.social-link.has-glyph[data-network=x]{--glyph:url("/assets/brand/social/x.svg")}.social-link.has-glyph[data-network=linkedin]{--glyph:url("/assets/brand/social/linkedin.svg")}
.social-tip{position:absolute;left:50%;bottom:calc(100% + 9px);padding:5px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;color:#F3F4F6;background:rgba(17,24,39,.72);border:1px solid rgba(255,255,255,.14);box-shadow:0 8px 20px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.10);-webkit-backdrop-filter:blur(14px) saturate(150%);backdrop-filter:blur(14px) saturate(150%);opacity:0;pointer-events:none;transform:translate(-50%,4px) scale(calc(1 / var(--dock-scale)));transform-origin:50% 100%;transition:opacity .2s ease,transform .22s cubic-bezier(.22,1,.36,1)}
.social-link:hover .social-tip,.social-link.is-active .social-tip,.social-link:focus-visible .social-tip{opacity:1;transform:translate(-50%,0) scale(calc(1 / var(--dock-scale)))}
:root[data-theme=light] .social-link{color:#1F2937;background:rgba(255,255,255,.55);border-color:rgba(255,255,255,.72);box-shadow:0 8px 22px rgba(15,23,42,.10),inset 0 1px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(15,23,42,.04)}
:root[data-theme=light] .social-link:hover,:root[data-theme=light] .social-link.is-active{color:#0F172A;background:rgba(255,255,255,.78);border-color:rgba(255,255,255,.9);box-shadow:0 12px 26px rgba(15,23,42,.14),0 0 16px rgba(79,107,219,.18),inset 0 1px 0 #fff}
:root[data-theme=light] .social-tip{color:#0F172A;background:rgba(255,255,255,.82);border-color:rgba(15,23,42,.08);box-shadow:0 8px 20px rgba(15,23,42,.14),inset 0 1px 0 #fff}
@container social (max-width:407px){.footer-social{grid-template-columns:repeat(4,var(--dock-size));justify-content:center;row-gap:14px}}
@media(min-width:1536px){.footer-social{--dock-size:46px}}
.product{display:flex;flex-direction:column;gap:12px}.product+.product{padding-top:16px;border-top:1px solid var(--ft-border)}
.product h3{display:flex;align-items:center;gap:10px}.product h3 svg{width:24px;height:24px;flex:none;color:var(--ft-accent)}
.footer-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;font-size:14px;font-weight:600;letter-spacing:.1px;text-decoration:none;color:var(--ft-text);background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.04));border:1px solid var(--ft-border-strong);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 10px 24px -14px rgba(0,0,0,.7);transition:transform .3s var(--ft-ease),box-shadow .3s var(--ft-ease),background .3s var(--ft-ease),border-color .3s var(--ft-ease),color .3s}
.footer-cta:hover{text-decoration:none;transform:translateY(-1px);border-color:rgba(139,168,255,.38);background:linear-gradient(145deg,rgba(139,168,255,.20),rgba(125,211,252,.07));box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 12px 28px -12px rgba(139,168,255,.45)}
.footer-cta.accent{color:#E8EDFF;background:linear-gradient(145deg,rgba(139,168,255,.28),rgba(125,211,252,.12));border-color:rgba(139,168,255,.42)}
.footer-cta.ghost{background:transparent;box-shadow:none;color:var(--ft-text-2)}.footer-cta.ghost:hover{color:var(--ft-text)}
:root[data-theme=light] .footer-cta{background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,255,255,.66));box-shadow:inset 0 1px 0 #fff,0 10px 22px -16px rgba(15,23,42,.45)}
:root[data-theme=light] .footer-cta:hover{border-color:rgba(79,107,219,.40);background:linear-gradient(145deg,rgba(79,107,219,.12),rgba(14,116,144,.05))}
:root[data-theme=light] .footer-cta.accent{color:#1E2A5A;background:linear-gradient(145deg,rgba(79,107,219,.18),rgba(14,116,144,.08));border-color:rgba(79,107,219,.36)}
:root[data-theme=light] .footer-cta.ghost{background:transparent}
:root[data-theme=light] .footer-card{background:linear-gradient(180deg,rgba(255,255,255,.55),transparent 42%),linear-gradient(160deg,var(--ft-glass),var(--ft-glass-2))}
.site-footer a:focus-visible,.site-footer button:focus-visible{outline:2px solid rgba(135,170,255,.8);outline-offset:3px}
.footer-copyright{margin-top:44px;padding:22px 16px 26px;border-top:1px solid var(--ft-border);text-align:center;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent)}
.footer-copyright p{margin:0;font-size:13px;font-weight:400;letter-spacing:.02em;line-height:1.6;color:var(--ft-muted)}.footer-copyright a{color:var(--ft-text-2);text-decoration:none;transition:color .25s var(--ft-ease)}.footer-copyright a:hover{color:var(--ft-text);text-decoration:none}
@media(max-width:1180px){.footer-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.eco-card{grid-column:1/-1;order:-1}.eco-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto 1fr auto;column-gap:24px;align-items:start}.eco-card .brand-ide{grid-column:1;grid-row:1/span 3}.eco-card .eco-caption{grid-column:2;grid-row:1}.eco-card h3{grid-column:2;grid-row:2}.eco-card nav{grid-column:2;grid-row:3}.eco-card .social-dock{grid-column:1/-1;grid-row:4;justify-items:center}.eco-card .social-dock .footer-social{justify-content:center}}
@media(max-width:760px){.footer-social{--dock-size:40px;--dock-gap:8px;display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:6px;scrollbar-width:none;padding:10px 6px 8px;max-width:100%}.footer-social::-webkit-scrollbar{display:none}.footer-social>li{flex:none;scroll-snap-align:start}.footer-social>li:first-child{margin-left:auto}.footer-social>li:last-child{margin-right:auto}.social-tip{display:none}.eco-card .social-dock{justify-items:stretch}.eco-card .social-dock .footer-social{justify-content:flex-start}
.footer-cards{grid-template-columns:1fr;width:calc(100% - 32px)}.footer-identity{width:calc(100% - 32px)}.eco-card{order:0;display:flex;align-items:stretch}.footer-card{padding:18px;border-radius:22px}.footer-nav a{font-size:15px}.site-footer{margin-top:48px;padding-top:40px}.footer-copyright{margin-top:32px}.footer-copyright p{font-size:12.5px}}
@media(prefers-reduced-motion:reduce){.footer-reveal .footer-card,.footer-reveal .footer-copyright,.footer-card,.footer-copyright{opacity:1;animation:none!important;transform:none;transition:none}.footer-card:hover,.footer-card:hover .brand-media img,.footer-cta:hover,.footer-nav a:hover{transform:none}.social-link,.social-link:hover,.social-link.is-active{transform:none!important;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.social-tip{transition:opacity .15s ease;transform:translate(-50%,0)!important}}
/* Header product mark: the official Git Architecture Diagram icon, padded inside its container. */
.brand-icon.official{width:36px;height:36px;padding:2px;border:0;border-radius:9px;background:transparent;overflow:visible}.brand-mark{width:100%;height:100%;object-fit:contain;display:block}
@media(max-width:720px){.brand-icon.official{width:30px;height:30px;padding:1px;border-radius:8px}}
#settings .model-option{display:block;margin:0}#settings .model-option>.model-card{display:grid;gap:3px;font-size:13px;color:var(--text)}#settings .model-card>*{display:block}#settings .model-card small{font-size:12px;color:var(--muted)}
#settings .custom-model label{margin-top:8px}.connection{margin-top:14px}
.pipe-check{width:17px;height:17px;color:var(--ok);margin-left:auto;flex:none}
