:root{color-scheme:light;--bg:#fff;--ink:#172b20;--muted:#526759;--line:#d4e0d7;--soft:#f4f8f5;--hover:#eaf1ec;--selected:#e7f2eb;--accent:#176b41;--brown:#bd7748;--mono:ui-monospace,'SFMono-Regular',Menlo,Monaco,Consolas,monospace;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif}

*{box-sizing:border-box}
html{scroll-padding-top:65px}
body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 var(--sans);-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit;color:inherit}
button{border:0;background:none;cursor:pointer}
button:disabled{opacity:.4;cursor:default}
button,a,input,summary,select{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid #409366;outline-offset:3px}
a{color:inherit;text-decoration:none}
p,h1,h2,h3{margin:0}
.hidden{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.site-header{position:sticky;top:0;z-index:30;height:46px;padding:0 26px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;white-space:nowrap}
.brand-mark{width:21px;height:23px;display:grid;place-items:center;border:1.5px solid var(--ink);border-radius:2px;font:700 15px Georgia,serif}
.brand-light{color:#b7b6af}
.brand-caption{color:var(--muted);font-weight:400}
.site-header nav{display:flex;align-items:center;gap:22px;color:var(--muted);font-size:14px}
.site-header nav a:hover{color:var(--ink)}
.model-pill{border-radius:4px;background:var(--soft);font-size:13px;padding:3px 7px;white-space:nowrap}
main{max-width:1660px;margin:auto;padding:0 42px}
.intro{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:39px 0 30px}
.eyebrow{color:var(--muted);font-size:12px;letter-spacing:.35px;font-weight:400}
h1{font-size:36px;line-height:1.2;letter-spacing:-1.2px;margin:8px 0 12px}
.intro-description{color:var(--muted);font-size:14px;line-height:1.75}
.intro-note{border-left:1px solid var(--line);padding-left:20px;display:flex;flex-direction:column;gap:7px;color:var(--muted);font:12px/1.4 var(--mono);white-space:nowrap}
.intro-note strong{font-weight:500;color:var(--ink)}
.intro-note i{color:#c7c7bf;font-style:normal}
.workspace{display:grid;grid-template-columns:294px minmax(0,1fr);gap:32px;align-items:start}
.controls{position:sticky;top:60px;max-height:calc(100dvh - 74px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#d4d4cf transparent;background:var(--soft);border:1px solid #ededeb;border-radius:7px}
.sidebar-heading{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:13px 16px;background:var(--soft);border-bottom:1px solid var(--line)}
.sidebar-heading h2{font-size:14px;font-weight:600;display:flex;align-items:center;gap:12px}
.small-tag{font-size:10px;font-weight:400;color:#5d7163;letter-spacing:.4px}
.text-button{padding:1px;color:var(--muted);font-size:12px}
.text-button:hover{color:var(--accent)}
.control-section{padding:15px 16px;border-bottom:1px solid var(--line)}
.field-label,.section-label h2{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;margin-bottom:10px}
.step{color:#66786b;font-size:12px;font-weight:400}
.section-label{display:flex;align-items:center;justify-content:space-between}
.section-label .small-tag{margin-top:-10px;font-size:10px}
select{width:100%;min-width:0;background:#fff;border:1px solid #deded9;border-radius:4px;padding:6px 7px;font-size:13px;cursor:pointer}
textarea{display:block;width:100%;min-height:80px;resize:vertical;border:1px solid #e1e1dc;border-radius:4px;background:#fff;padding:9px 10px;font-size:14px;line-height:1.65;outline:none}
textarea:focus{border-color:#7ba88c}
.mode-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:14px 0 12px}
.mode-row .field-note{font-size:11px;max-width:140px;text-align:right}
.segmented{display:flex;width:max-content;max-width:100%;padding:2px;gap:1px;background:#f0f0ed;border:1px solid #e8e8e3;border-radius:5px}
.segmented button{padding:3px 9px;color:var(--muted);border:1px solid transparent;border-radius:3px;font-size:12px;line-height:1.4;white-space:nowrap}
.segmented button.active{background:#fff;color:var(--ink);border-color:#e2e2dc;box-shadow:0 1px 2px #172b2008}
.message{margin-bottom:10px}
.message-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}
.message-top select{width:90px;padding:2px 4px;font:11px var(--mono);background:transparent;border-color:transparent;color:var(--muted)}
.message-top select:focus{background:#fff}
.message-top button{font-size:14px;line-height:1;color:#66786b}
.message textarea{min-height:72px}
.message[data-role=system] textarea{min-height:58px;font-size:13px}
.add-message{font-size:12px}
.field-note{color:var(--muted);font-size:12px;line-height:1.65}
.thinking-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:16px 0 13px}
.thinking-row>div>label{font-size:13px;font-weight:500}
.thinking-row p{font-size:11px;margin-top:2px}
.switch{position:relative;display:block;width:28px;height:16px;cursor:pointer;flex-shrink:0}
.switch input{position:absolute;width:100%;height:100%;opacity:0;margin:0}
.switch>span{display:block;height:100%;background:#c5c5bf;border-radius:12px;pointer-events:none}
.switch>span:after{content:'';position:absolute;top:3px;left:3px;width:10px;height:10px;background:#fff;border-radius:50%}
.switch input:checked+span{background:#176b41}
.switch input:checked+span:after{transform:translateX(12px)}
.switch:has(input:disabled){opacity:.4;cursor:default}
summary{list-style:none;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:12px;cursor:pointer}
summary::-webkit-details-marker{display:none}
summary>span{font-size:14px}
details[open]>summary{margin-bottom:8px}
pre{font:12px/1.75 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;background:#efefec;border-radius:4px;padding:10px;margin:8px 0;color:#5f5e57;max-height:270px;overflow-y:auto}
#raw-text{font:12px/1.75 var(--mono);min-height:200px}
#raw-editor .field-note{margin-top:6px}
.special-tokens{display:flex;gap:5px;flex-wrap:wrap;margin:0 0 8px}
.special-tokens button{background:#fff;border:1px solid #e3e3dd;border-radius:3px;padding:3px 5px;color:#526759;font:11px/1.5 var(--mono)}
.special-tokens button:hover{border-color:#9bc2aa;background:var(--selected);color:var(--accent)}
.special-tokens button.think{color:#98643f;background:#faf5ef}
.extra-tokens{margin-top:9px}
.run-controls>.primary-button{margin-top:0}
.primary-button{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:15px;padding:9px 11px;border-radius:4px;background:var(--ink);color:#fff;font-size:13px;font-weight:500}
.primary-button:hover:not(:disabled){background:#10492e}
.primary-button>span:last-child{opacity:.65}
.run-meta{display:flex;justify-content:space-between;color:#5d7163;font-size:10px;margin-top:7px}
.load-status{margin-top:10px;font-size:11px;line-height:1.65;color:var(--muted);overflow-wrap:anywhere}
.load-status.ready:before{content:'';display:inline-block;width:4px;height:4px;background:#6e9b7a;border-radius:50%;margin:0 5px 2px 0}
.error{color:#bd5148;font-size:12px;line-height:1.65;margin-top:10px}
.sidebar-footnote{padding:12px 16px;font-size:11px;color:#5d7163;line-height:1.7}
.results{min-width:0}
.result-toolbar{display:flex;justify-content:space-between;align-items:center;min-height:29px;margin-bottom:10px}
.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px 0 15px;border-bottom:1px solid var(--line)}
.metrics article{min-width:0;padding:4px 18px 2px;border-left:1px solid var(--line)}
.metrics article:first-child{padding-left:0;border:0}
.metrics article:last-child{padding-right:0}
.metrics article>span{font-size:12px;color:var(--muted)}
.metrics strong{display:block;font-size:30px;line-height:1.2;letter-spacing:-.6px;font-weight:600;margin:10px 0 7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:36px}
.metrics p{font-size:11px;line-height:1.6;color:var(--muted)}
#metric-next{color:var(--accent);font-family:var(--mono);font-size:25px;padding-top:3px}
.notice{display:flex;align-items:center;gap:8px;border-radius:4px;padding:9px 11px;background:#faf4eb;color:#74552a;font-size:12px;margin:12px 0}
#busy-notice{background:var(--selected);color:#4d7a94}
#busy-time{margin-left:auto;font:12px var(--mono)}
.spinner{width:10px;height:10px;border:1.5px solid #9bc2aa;border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}
}
.empty-state{text-align:center;padding:77px 20px 80px;border-bottom:1px solid var(--line)}
.empty-diagram{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:29px;font:12px var(--mono);color:var(--muted)}
.empty-diagram>span{border:1px solid var(--line);border-radius:4px;padding:9px 13px;background:var(--soft)}
.empty-diagram i{font-style:normal;color:#b3b2aa}
.empty-diagram .diagram-layers{color:var(--accent);background:#edf6f0;border-color:#cbded1}
.empty-state h2{font-size:18px;letter-spacing:-.3px;font-weight:500}
.empty-state p{color:var(--muted);font-size:13px;line-height:1.8;margin-top:11px}
.empty-footnote{display:block;font-size:11px;color:#66786b;margin-top:32px}
.panel{padding:23px 0 25px;border-bottom:1px solid var(--line)}
.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:14px}
.panel h2,.method-panel h2{font-size:19px;line-height:1.4;letter-spacing:-.3px;font-weight:600;margin-top:4px}
.small-muted{font-size:11px;color:#5d7163}
.panel-description{color:var(--muted);font-size:13px;line-height:1.75;margin-top:10px}
.panel-description strong{font-weight:500;color:var(--ink)}
.token-legend{display:flex;flex-wrap:wrap;gap:15px;font-size:11px;color:#5d7163;margin:14px 0 11px}
.token-legend>span{display:flex;align-items:center;gap:5px}
.legend-square{display:inline-block;width:8px;height:8px;border:1px solid #e0e0db;border-radius:2px;background:var(--soft)}
.legend-square.special{background:#e9f1e8;border-color:#c8d7c6}
.legend-square.selected{background:#d8eee0;border-color:#80aa8d}
.legend-square.generated{background:#edf4ee;border-color:#bdcdbf}
.context-tokens,.attention-tokens{display:flex;flex-wrap:wrap;gap:5px}
.context-token{position:relative;display:flex;align-items:center;gap:7px;max-width:100%;border:1px solid #e6e6e1;background:#fafaf8;border-radius:4px;padding:5px 7px;font:13px/1.5 var(--mono);overflow-wrap:anywhere}
.context-token .position{font-size:10px;color:#66786b;font-variant-numeric:tabular-nums}
.context-token.special{background:#eef5eb;color:#42653a;border-color:#cfddc9}
.context-token.generated{box-shadow:inset 0 -2px #bdd0c0}
.context-token.active{border-color:#56956e;background:#e5f2e9;color:#176b41}
.context-token:hover{border-color:#a9b8c1}
.heat-legend{display:flex;align-items:center;gap:7px;margin:14px 0 10px;color:#5d7163;font-size:10px}
.heat-legend>span:first-child{margin-right:6px}
.heat-legend>i{width:70px;height:6px;background:linear-gradient(90deg,#f5fbf7,#176b41);border-radius:1px}
.scroll-hint{margin-left:auto}
.lens-scroll{overflow:auto;max-height:650px;border:1px solid var(--line);border-radius:4px;scrollbar-width:thin;overscroll-behavior-x:contain}
.lens-scroll table{border-spacing:2px;table-layout:fixed;width:100%;min-width:100%;font:12px var(--mono)}
.lens-scroll th{font-weight:400}
.lens-scroll thead th{position:sticky;top:0;z-index:2;background:#fff;height:46px;min-width:75px;max-width:75px;padding:5px;font-size:11px;color:#526759;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lens-scroll thead th>span{display:block;margin-bottom:4px;font-size:10px;color:#66786b}
.lens-scroll th.row-label{position:sticky;left:0;background:#fff;z-index:1;min-width:52px;padding:0 6px;text-align:left;color:#5d7163;font-size:10px}
.lens-scroll thead th:first-child{z-index:4;left:0}
.lens-scroll td{padding:0;min-width:75px;width:75px;height:37px}
.lens-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%;height:37px;max-width:90px;padding:3px;border:1px solid transparent;border-radius:2px;line-height:1.2}
.lens-cell>span{display:block;max-width:70px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px}
.lens-cell>small{font-size:10px;opacity:.75;font-variant-numeric:tabular-nums}
.lens-cell:hover{border-color:#3f8b5c}
.lens-cell.active{border:2px solid #176b41}
.lens-cell.column-selected{box-shadow:inset 1px 0 #176b412a,inset -1px 0 #176b412a}
.lens-scroll .active-header{color:var(--accent);background:#edf6f0}
.table-footnote{font:10px/1.7 var(--mono);color:#5d7163;margin-top:9px}
.inspector-navigation{display:flex;gap:4px}
.inspector-navigation button{width:28px;height:26px;border:1px solid var(--line);border-radius:4px;color:var(--muted)}
.inspector-navigation button:hover{background:var(--soft)}
.inspector-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;margin-top:20px}
.mini-label{font-size:10px;color:#5d7163;letter-spacing:.4px;margin-bottom:10px}
.selected-token{font:21px/1.6 var(--mono);color:var(--accent);overflow-wrap:anywhere;white-space:pre-wrap}
.causal-note{background:var(--soft);color:#5d7163;font-size:12px;line-height:1.7;padding:8px 10px;margin-top:14px;border-radius:3px}
.prediction-row{position:relative;display:flex;justify-content:space-between;gap:10px;margin:3px 0;padding:4px 7px;font:12px var(--mono);border-radius:2px;isolation:isolate}
.prediction-row:before{content:'';position:absolute;inset:0;right:auto;width:var(--probability);background:#e5f2e9;z-index:-1;border-radius:2px}
.prediction-row>span:first-child{white-space:pre-wrap;overflow-wrap:anywhere}
.prediction-row>span:last-child{font-size:11px;color:#426b51;flex-shrink:0}
.attention-toolbar{position:sticky;top:46px;background:#fff;z-index:5;padding:12px 0 10px;border-bottom:1px solid var(--line);margin-top:-12px}
.attention-selectors{display:flex;flex-wrap:wrap;max-width:100%;gap:15px}
.attention-selectors label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}
.attention-selectors select{width:49px;font:12px var(--mono);padding:4px}
.attention-selectors #head-select{width:180px;max-width:100%}
.attention-subbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
.check-field{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}
.check-field input{margin:0;accent-color:#73736d}
.attention-summary{display:flex;justify-content:space-between;gap:12px;margin:17px 0 10px;font:11px/1.8 var(--mono);color:var(--muted)}
#attention-query{color:var(--accent)}
.attention-token{display:flex;align-items:center;gap:6px;max-width:100%;padding:5px 7px;border:1px solid transparent;border-radius:3px;font:12px var(--mono);overflow-wrap:anywhere;min-height:29px}
.attention-token small{font-size:10px;opacity:.75;white-space:nowrap}
.attention-token.query-token{outline:1.5px solid #176b41;outline-offset:1px}
.attention-token.masked{background:repeating-linear-gradient(135deg,#fafaf8,#fafaf8 3px,#f0f0ed 3px,#f0f0ed 4px)!important;color:#728377!important}
.attention-token:hover{border-color:#3f8b5c}
.masked-legend{margin-left:auto}
.attention-view-heading,.heads-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:24px 0 13px}
h3{font-size:13px;font-weight:500}
.matrix-layout{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:24px}
.matrix-wrap{width:100%;min-width:0;max-width:590px}
.matrix-wrap canvas{display:block;width:100%;height:auto;aspect-ratio:1;cursor:crosshair;touch-action:pan-y}
.matrix-detail{padding-top:25px}
.matrix-detail>.field-note{font-size:11px;margin-top:10px}
#edge-detail{font:12px/1.9 var(--mono);overflow-wrap:anywhere}
#edge-detail strong{font-weight:500;display:block;font-size:22px;line-height:1.5;color:var(--accent);margin-top:8px}
.secondary-button{border:1px solid #deded9;border-radius:4px;background:#fff;padding:6px 8px;font-size:12px;width:100%;margin-top:26px}
.secondary-button:hover{background:var(--soft)}
.heads-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.head-card{border:1px solid var(--line);border-radius:4px;padding:9px 10px;min-width:0;text-align:left;background:#fff}
.head-card.active{border-color:#83ae93;background:#f0f7f2}
.head-card:hover{border-color:#83ae93}
.head-card .head-title{display:flex;justify-content:space-between;gap:4px;font-size:11px;color:var(--muted);margin-bottom:9px}
.head-card .head-title>span:last-child{font:10px var(--mono);color:#66786b}
.head-strip{display:block;width:100%;height:11px;border-radius:1px}
.head-peak{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:10px var(--mono);color:#5d7163;margin-top:7px}
.method-panel{padding:28px 0 23px}
.method-panel h2{font-size:18px}
.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px;margin-top:24px}
.method-grid article>span{font:11px var(--mono);color:#66786b}
.method-grid h3{margin:7px 0;font-size:13px;font-weight:500}
.method-grid p{font-size:12px;line-height:1.8;color:var(--muted)}
.formula-strip{background:var(--soft);border-radius:4px;padding:12px 14px;margin-top:25px;font:11px/1.8 var(--mono);overflow-wrap:anywhere;color:#526759}
.formula-strip>span{color:#ccc;margin:0 6px}
.method-bottom{font-size:11px;line-height:1.9;color:#5d7163;margin-top:12px}
.method-bottom a{color:var(--accent);white-space:nowrap}
.site-footer{display:flex;justify-content:space-between;gap:10px;padding:16px 0 23px;border-top:1px solid var(--line);font-size:11px;color:#66786b}
.site-footer i{font-style:normal;margin:0 7px;color:#ccc}
#generation-details{margin-top:14px}
#generation-details pre{background:#f4f7f3;font-size:13px}

@media(min-width:1500px){.workspace{grid-template-columns:310px minmax(0,1fr);gap:38px}
.control-section{padding:16px 18px}
.sidebar-heading{padding:14px 18px}
.metrics strong{font-size:34px}
}

@media(max-width:1100px){main{padding:0 26px}
.workspace{grid-template-columns:265px minmax(0,1fr);gap:24px}
.intro-note{font-size:11px}
.heads-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.head-card{padding:7px}
.head-card .head-title{font-size:10px}
.head-card .head-title>span:last-child{display:none}
.matrix-layout{grid-template-columns:minmax(0,1fr) 125px;gap:15px}
.metrics article{padding-left:12px;padding-right:12px}
.metrics article>span{font-size:11px}
.metrics strong{font-size:26px}
.small-muted{display:none}
.empty-diagram{gap:7px;font-size:10px}
.empty-diagram>span{padding:7px}
.empty-state{padding:60px 0}
.attention-selectors{gap:8px}
.inspector-grid{gap:20px}
.masked-legend{font-size:10px}
}

@media(max-width:820px){main{padding:0 22px}
.intro{padding:28px 0 25px}
.intro-note{display:none}
.workspace{grid-template-columns:240px minmax(0,1fr);gap:20px}
.site-header{padding:0 22px}
.site-header nav{gap:13px}
.brand-caption{display:none}
.metrics{grid-template-columns:1fr 1fr}
.metrics article:last-child{display:none}
.metrics article:nth-child(2){padding-right:0}
.panel h2{font-size:17px}
.panel-heading{align-items:flex-start;flex-wrap:wrap}
.attention-selectors{margin-top:5px}
.attention-subbar{align-items:flex-start;flex-direction:column;gap:5px}
.inspector-grid{grid-template-columns:1fr;gap:18px}
.matrix-layout{grid-template-columns:1fr}
.matrix-detail{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}
.matrix-detail .mini-label{grid-column:1/-1;margin:0}
.matrix-detail>.field-note{margin-top:0}
.matrix-detail .secondary-button{margin-top:0;align-self:start}
.matrix-detail>p:last-child{grid-column:2}
.heads-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.attention-summary{flex-direction:column;gap:2px}
.masked-legend{display:none}
.attention-view-heading,.heads-heading{align-items:flex-start;flex-direction:column;gap:4px}
.method-grid{gap:20px;grid-template-columns:1fr}
.empty-diagram{flex-wrap:wrap;gap:6px}
.empty-state h2{font-size:16px}
.empty-state p{font-size:12px}
.site-footer>span:last-child{display:none}
.scroll-hint{display:none}
.intro h1{font-size:32px}
.intro-description{font-size:14px}
}

@media(max-width:600px){.site-header{padding:0 16px}
.site-header nav a{display:none}
main{padding:0 16px}
.workspace{display:block}
.controls{position:relative;top:0;max-height:none;margin-bottom:24px}
.intro{padding:27px 0 23px}
.intro h1{font-size:32px}
.controls .control-section{padding:14px 16px}
.message textarea{min-height:78px}
.sidebar-heading{position:static}
.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
.metrics article:last-child{display:block}
.metrics article{padding:0 10px}
.metrics strong{font-size:24px}
.metrics article>span{font-size:10px}
#metric-next{font-size:19px;min-height:29px}
.metrics p{font-size:10px}
.metrics strong{min-height:29px}
.panel h2{font-size:18px}
.attention-toolbar{top:46px}
.attention-toolbar .panel-heading{flex-wrap:nowrap}
.attention-subbar{flex-direction:row;align-items:center}
.heads-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.matrix-layout{grid-template-columns:minmax(0,1fr) 115px}
.matrix-detail{display:block;padding-top:18px}
.matrix-detail .mini-label{margin-bottom:7px}
.matrix-detail>.field-note{font-size:10px;margin-top:9px}
.matrix-detail .secondary-button{margin-top:20px;font-size:10px}
.inspector-grid{grid-template-columns:1fr 1.2fr;gap:18px}
.method-grid{grid-template-columns:1fr 1fr;gap:23px}
.empty-state{padding:45px 10px}
.empty-diagram{font-size:11px;gap:7px}
.empty-diagram>span{padding:8px}
.panel-description{font-size:12px}
.attention-summary{flex-direction:row}
.lens-scroll{max-height:560px}
.formula-strip{font-size:10px}
.thinking-row{margin-top:14px}
}

@media(max-width:390px){.metrics article:last-child{display:none}
.metrics{grid-template-columns:1fr 1fr}
.heads-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.matrix-layout{grid-template-columns:1fr}
.matrix-detail{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding-top:0}
.matrix-detail .secondary-button{margin-top:0}
.method-grid{grid-template-columns:1fr}
.inspector-grid{grid-template-columns:1fr}
.attention-toolbar .panel-heading{flex-wrap:wrap}
.attention-subbar{flex-direction:column;align-items:flex-start}
.attention-summary{flex-direction:column}
.empty-diagram{gap:5px;font-size:10px}
.empty-diagram>span{padding:6px}
}

@media(prefers-reduced-motion:reduce){.spinner{animation:none}
}


.model-control .field-note{margin-top:7px;font-size:11px}
.formula-strip>#attention-formula{color:inherit;margin:0}


/* Layer explorer: readable cells, input anchored below the decoder stack. */
.intro{padding:28px 0 25px}
.primary-button{background:#176b41;font-weight:600}
.primary-button:hover:not(:disabled){background:#10492e}
.field-note,.panel-description,.method-grid p{color:#526759}
.small-tag,.eyebrow,.step{color:#5b7061}
select,textarea{border-color:#c5d5ca}
.lens-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;margin:18px 0 14px;padding:14px;background:#f2f7f3;border:1px solid #cbdcd0;border-radius:7px}
.lens-color-switch{background:#e3ece6;border-color:#c5d7cb;flex-shrink:0}
.lens-color-switch button{padding:7px 13px;font-size:13px;font-weight:600}
.lens-color-switch button.active{color:#104d2e;border-color:#abc5b4;box-shadow:0 1px 3px #163c2412}
.lens-head-control{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;min-width:0;max-width:100%}
.lens-head-control select{width:185px;min-width:0;font-size:12px;padding:7px}
.lens-attention-setting{font-size:12px;line-height:1.5}
.lens-status-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;min-height:28px}
#lens-status{font-size:12px;line-height:1.65;color:#284e36;overflow-wrap:anywhere}
#lens-peak{font-size:12px;color:#176b41}
.flow-label{margin-left:auto;flex-shrink:0;color:#335c42;font:10px var(--mono);padding:5px 7px;background:#edf5ef;border:1px solid #d2e2d7;border-radius:4px}
.heat-legend{font-size:11px;color:#526759;gap:8px;flex-wrap:wrap}
.heat-legend>i{background:linear-gradient(90deg,#f5fbf7,#075b34);width:90px;height:8px;border:1px solid #c8d9ce}
.scroll-hint{font-size:11px}
.lens-scroll{height:520px;min-height:240px;max-height:none;resize:vertical;overflow:auto;overflow-anchor:none;border:2px solid #b7cdbf;border-radius:7px;background:#e2ebe5;scrollbar-width:auto;scrollbar-color:#7e9f8a #edf3ef;scroll-padding-bottom:80px}
.lens-scroll:focus-visible{outline:3px solid #409366;outline-offset:3px}
.lens-scroll table{border-spacing:2px;table-layout:fixed;min-width:100%;font:12px var(--mono)}
.lens-scroll th.row-label{min-width:70px;width:70px;max-width:70px;padding:0 9px;background:#f6faf7;color:#274e35;font-size:12px;font-weight:600;white-space:nowrap;border-right:1px solid #ccdbd1;z-index:2}
.lens-scroll tbody th.row-label>span{display:inline}
.lens-scroll .row-label small{display:inline;font:8px/1 var(--sans);letter-spacing:0;color:#426b50;margin:0 0 0 3px}
.lens-scroll td{min-width:104px;width:104px;height:22px}
.lens-cell{flex-direction:row;height:22px;width:100%;max-width:none;padding:0 5px;gap:4px;border:2px solid transparent;border-radius:3px;white-space:nowrap}
.lens-cell>span{flex:1;min-width:0;max-width:100%;text-align:left;font-size:13px;font-weight:550;line-height:1.2}
.lens-cell>small{flex:0 0 auto;white-space:nowrap;font-size:11px;line-height:1.2;opacity:1;font-variant-numeric:tabular-nums}
.lens-scroll[data-label-mode="token-only"] .lens-cell>span,.lens-scroll[data-label-mode="probability"] .lens-cell>span{text-align:center}
.lens-cell:hover{border-color:#174e2e;box-shadow:inset 0 0 0 1px #fff9}
.lens-cell.column-selected{box-shadow:inset 2px 0 #176b4170,inset -2px 0 #176b4170}
.lens-cell.active{border:2px solid #0a3d22;outline:1px solid #fff;outline-offset:-4px}
.lens-cell.lens-masked{background:repeating-linear-gradient(135deg,#f1f4f2,#f1f4f2 4px,#e6ece8 4px,#e6ece8 6px)!important;color:#56695d!important}
.lens-scroll tfoot th{position:sticky;bottom:0;z-index:4;background:#f7fbf8;padding:4px 3px;min-width:104px;width:104px;max-width:104px;border-top:2px solid #71977e;height:72px}
.lens-scroll tfoot th.row-label{left:0;bottom:0;z-index:6;color:#18492c;background:#e3efe7;font-size:11px}
.input-column{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:100%;height:60px;min-width:0;padding:6px 4px;border:1px solid #c6d9cc;border-radius:4px;background:#fff;color:#1c3526;font:12px/1.3 var(--mono)}
.input-column>small{font-size:10px;color:#526e5b}
.input-column>span{display:block;max-width:90px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}
.input-column.special{background:#edf5e9;border-color:#c3d5b9}
.input-column.generated{box-shadow:inset 0 -3px #6c9a78}
.input-column:hover{border-color:#176b41;background:#e4f0e8}
.lens-scroll .active-header{background:#d8eadd}
.active-header .input-column{background:#176b41;color:#fff;border-color:#104d2e}
.active-header .input-column>small{color:#e3f2e8}
.lens-scroll .append-placeholder{background:#f5faf6;border-left:1px dashed #aac8b4;border-right:1px dashed #aac8b4}
.lens-scroll tfoot .append-column{background:#e4f1e8;border-top-color:#176b41}
#append-next{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:34px;padding:3px 6px;border:1px solid #104d2e;border-radius:4px;background:#176b41;color:#fff}
#append-next:hover:not(:disabled){background:#104d2e}
#append-next strong{font:23px/1 var(--sans)}
#append-next span{font:12px var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#write-token{display:block;width:100%;margin-top:3px;padding:2px;font:11px var(--sans);color:#176b41;text-decoration:underline;text-underline-offset:3px}
.token-composer{margin:14px 0;padding:14px;background:#f2f8f4;border:1px solid #b6d0c0;border-radius:6px}
.composer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.composer-heading .field-label{margin:0}
.token-composer textarea{font:13px/1.6 var(--mono);min-height:64px}
.token-composer .field-note{margin-top:8px}
.append-preview{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0;max-height:140px;overflow:auto}
.append-preview span{padding:4px 6px;background:#fff;border:1px solid #c5d9cc;border-radius:3px;font:12px var(--mono);overflow-wrap:anywhere;max-width:100%}
.token-composer .secondary-button{margin-top:6px;font-size:12px}
.table-footnote{font:11px/1.7 var(--mono);color:#526759}
.attention-token{font-size:12px;padding:7px 9px;min-height:36px}
.attention-token small{font-size:11px;opacity:1}
.context-token{font-size:12px;padding:7px 9px}
.context-token .position{font-size:10px;color:#5e7665}
.head-card{padding:12px;border-color:#c9d9ce}
.head-card .head-title{font-size:12px;font-weight:500}
.head-peak{font-size:11px}
.head-card.active{border:2px solid #317c4d;padding:11px;background:#eef7f0}
.prediction-row{font-size:12px;padding:6px 8px}
.prediction-row>span:last-child{font-size:12px}
.panel-description{font-size:13px;line-height:1.8}
@media(max-width:1100px){
  .lens-status-row{align-items:flex-start}
  .flow-label{font-size:9px}
  .heads-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:820px){
  .lens-toolbar{gap:12px;padding:12px}
  .lens-head-control{flex-wrap:wrap}
  .flow-label{display:none}
  .scroll-hint{display:block;width:100%;margin-left:0}
  .heads-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lens-head-control select{max-width:100%}
}
@media(max-width:600px){
  .lens-toolbar{gap:14px}
  .lens-head-control{flex-wrap:nowrap;width:100%}
  .lens-head-control select{flex:1;width:0}
  .lens-scroll{max-height:none}
  .lens-scroll td,.lens-scroll tfoot th{min-width:96px;width:96px;max-width:96px}
  .lens-scroll th.row-label{min-width:62px;width:62px;max-width:62px;padding:0 6px}
  .lens-cell>span{font-size:12px}
  .input-column>span{max-width:78px}
  .panel-heading>.segmented button{font-size:12px;padding:5px 8px}
  .attention-toolbar .panel-heading{flex-wrap:wrap}
  .attention-subbar{flex-wrap:wrap}
  .attention-summary{flex-wrap:wrap}
  .matrix-layout{grid-template-columns:1fr}
  .matrix-detail{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:0}
  .matrix-detail .secondary-button{margin-top:0}
  .attention-selectors select{width:55px}
  .method-grid{grid-template-columns:1fr}
  .metrics p{font-size:10px}
  .run-meta{font-size:10px}
}
