:root{--paper:#f5f2e9;--paper2:#ebe5d6;--white:#fffdf7;--ink:#142b3b;--muted:#4e6471;--blue:#0055a7;--blue-dark:#003d7e;--rust:#b44c2a;--rule:#b9bdba;--hair:#d4d2ca;--focus:#d78111;--serif:Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",sans-serif;--mono:ui-monospace,"SFMono-Regular",Consolas,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.5 var(--sans);overflow-wrap:anywhere}body.has-selection{padding-bottom:5rem}[hidden]{display:none!important}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:var(--blue);text-underline-offset:.19em}a:hover{color:var(--blue-dark)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.wrap{width:min(100% - 5rem,1260px);margin-inline:auto}.skip-link{position:absolute;left:1rem;top:-5rem;z-index:200;padding:.7rem 1rem;background:var(--white);color:var(--blue-dark);font-weight:700}.skip-link:focus{top:1rem}.eyebrow{font:750 .74rem/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin:0 0 .9rem}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{margin-top:0}button{border-radius:0}.plain-link{border:0;padding:.45rem 0;background:none;color:var(--blue-dark);font-weight:700;text-decoration:underline;text-underline-offset:.2em}.primary-button{border:2px solid var(--blue-dark);background:var(--blue-dark);color:#fff;font-weight:750;min-height:50px;padding:.7rem 1.1rem;display:inline-flex;gap:1.4rem;justify-content:space-between;align-items:center}.primary-button:hover{background:var(--blue);border-color:var(--blue)}.primary-button:active{transform:translateY(1px)}
.demo-banner{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;align-items:center;justify-content:center;background:#193345;color:#fff;padding:.45rem 1rem;text-align:center;font-size:.74rem;letter-spacing:.015em}.demo-banner strong{color:#ffca7b;letter-spacing:.1em}.demo-banner a{color:#fff;font-weight:700}.site-header{min-height:78px;padding:0 max(2.5rem,calc((100vw - 1260px)/2));display:flex;justify-content:space-between;align-items:center;gap:2rem;border-bottom:1px solid var(--rule);background:var(--white)}.brand{display:inline-flex;align-items:center;gap:.8rem;text-decoration:none;color:var(--ink)}.brand-mark{display:grid;place-items:center;width:48px;height:48px;background:var(--blue);color:#fff;font-weight:850;font-size:.9rem;letter-spacing:-.065em;transform:rotate(-2deg)}.brand-mark span{color:#fbd094}.brand-label{font-size:.83rem;font-weight:750;line-height:1.05}.brand-label small{font-size:.7rem;font-weight:500;color:var(--muted)}.site-links{display:flex;gap:2rem;align-items:center;font-size:.84rem}.site-links a{text-decoration:none;font-weight:700;color:var(--ink)}.site-links a[aria-current]{color:var(--blue);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.5rem}.site-links span{color:var(--muted)}
.product-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;padding:2.2rem 0 1.6rem;border-bottom:4px solid var(--ink)}.product-identity{display:flex;align-items:center;gap:1rem}.section-mark{font:800 2rem/1 var(--serif);color:var(--blue);letter-spacing:-.1em}.section-mark span{color:var(--rust)}.product-head .eyebrow{margin:0 0 .15rem}.product-head h1{font:700 clamp(2.2rem,4vw,3.4rem)/.98 var(--serif);letter-spacing:-.055em;margin:0}.product-head>p{max-width:28rem;color:var(--muted);margin:0;font-size:.94rem}
.entry{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:2rem 5rem;padding-top:4.5rem;padding-bottom:5rem}.entry-heading h2{font:700 clamp(2.3rem,4.5vw,4.5rem)/1.05 var(--serif);letter-spacing:-.05em;max-width:32rem;margin-bottom:1.6rem}.entry-heading>p:last-child{font-size:1.08rem;color:var(--muted);max-width:28rem}.entry-actions{border-top:2px solid var(--ink)}.entry-action{display:grid;grid-template-columns:2.2rem minmax(0,1fr) 2rem;gap:1rem;width:100%;min-height:132px;padding:1.4rem .3rem 1.4rem 0;border:0;border-bottom:1px solid var(--rule);background:transparent;text-align:left;color:var(--ink);align-items:start}.entry-action:hover{background:#e9edf0}.action-index{display:grid;place-items:center;width:1.7rem;height:1.7rem;border:1px solid var(--blue);color:var(--blue);font-size:1rem}.entry-action strong{display:block;font:700 clamp(1.35rem,2.2vw,1.95rem)/1.17 var(--serif);letter-spacing:-.02em}.entry-action small{display:block;color:var(--muted);font-size:.88rem;margin-top:.55rem;line-height:1.45}.action-arrow{font-size:1.35rem;color:var(--blue);text-align:right}.prompts{grid-column:1/-1;margin-top:2rem;border-top:1px solid var(--rule);padding-top:1.2rem}.prompts h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .6rem}.prompt-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.prompt-list button{padding:.5rem 0;border:0;background:transparent;color:var(--blue-dark);font:650 1rem/1.3 var(--sans);display:flex;align-items:start;justify-content:space-between;gap:.5rem;text-align:left;text-decoration:underline;text-underline-offset:.2em}.prompt-list button:hover{color:var(--rust)}
.work{padding:2.1rem 0 4.5rem}.stage-line{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid var(--rule);padding:.2rem 0 .85rem;font-size:.82rem;color:var(--muted)}.stage-label{display:inline-flex;gap:.55rem;align-items:center;color:var(--blue-dark);font-weight:800;letter-spacing:.1em}.stage-dot{width:.62rem;height:.62rem;background:var(--rust);border-radius:50%}.work-title{display:flex;justify-content:space-between;align-items:end;gap:2rem;padding:2rem 0 1.6rem}.work-title h2{font:700 clamp(1.8rem,3.1vw,3rem)/1.07 var(--serif);letter-spacing:-.035em;margin:0}.work-title .eyebrow{margin-bottom:.55rem}.work-mode{display:flex;border-bottom:1px solid var(--rule);flex:none}.work-mode button{padding:.7rem .85rem;border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);font-size:.86rem;font-weight:700}.work-mode button[aria-pressed="true"]{color:var(--blue-dark);border-color:var(--blue)}.question-surface{border-top:3px solid var(--blue);background:var(--white);padding:2.6rem 3rem 2rem;box-shadow:10px 12px 0 var(--paper2)}.question-lead{font:700 clamp(1.65rem,2.8vw,2.6rem)/1.18 var(--serif);letter-spacing:-.03em;margin:0 0 1.6rem}.empty-clauses{display:flex;gap:1rem;align-items:start;max-width:40rem;border-top:1px solid var(--hair);padding:1.2rem 0;color:var(--muted)}.empty-clauses span{font:400 2rem/1 var(--serif);color:var(--blue)}.empty-clauses p{margin:0}.clause-list{list-style:none;padding:0;margin:0;max-width:56rem}.clause{display:grid;grid-template-columns:1.6rem minmax(0,1fr) auto;gap:.7rem;align-items:start;padding:.75rem 0;border-top:1px solid var(--hair)}.clause::before{content:"·";font:700 1.6rem/1 var(--serif);color:var(--rust)}.clause-text{font:500 clamp(1.05rem,1.7vw,1.4rem)/1.35 var(--sans)}.clause-text strong{font-weight:750}.clause-controls{display:flex;gap:.3rem;align-items:center}.clause-controls button{border:0;background:none;color:var(--blue-dark);text-decoration:underline;font-size:.8rem;font-weight:700;padding:.4rem}.clause-controls .remove{color:#9a3424}.composer-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:1.5rem}.add-button{border:1px solid var(--blue);background:transparent;color:var(--blue-dark);font-weight:750;min-height:49px;padding:.65rem .9rem;display:inline-flex;gap:.75rem;align-items:center}.add-button:hover{background:#e9f0f5}.add-button span{font-size:1.45rem;line-height:1}.discovery-line{display:flex;justify-content:space-between;gap:2rem;align-items:start;padding:1.4rem 0;color:var(--muted);font-size:.85rem}.discovery-line p{margin:0;max-width:36rem}.discovery-line strong{color:var(--ink)}#queryPreview{font-family:var(--mono);font-size:.72rem;max-width:30rem;text-align:right;overflow-wrap:anywhere}
.answer{background:var(--blue-dark);color:#fff}.answer-inner{padding:2rem 0 2.4rem}.stage-line--answer{border-color:#93aec8;color:#cfdfef}.stage-line--answer .stage-label,.stage-line--answer .plain-link{color:#fff}.stage-line--answer .stage-dot{background:#f2ad62}.answer-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem;padding:2.3rem 0 2rem}.answer .eyebrow{color:#ffcf91}.answer-top h2{font:700 clamp(2rem,4vw,4.3rem)/1.06 var(--serif);letter-spacing:-.045em;margin:0;max-width:55rem;color:#fff}.answer-context{color:#d9e7f0;font-size:1rem;max-width:48rem;margin:1.1rem 0 0}.answer-figure{display:flex;flex-direction:column;align-items:flex-end;min-width:8rem}.answer-figure span{font:700 clamp(4rem,9vw,9rem)/.85 var(--serif);letter-spacing:-.09em;color:#ffe1b4;font-variant-numeric:tabular-nums}.answer-figure small{font-weight:750;color:#fff;text-transform:uppercase;letter-spacing:.08em}.answer-navigation{display:flex;gap:1.6rem;flex-wrap:wrap;border-top:1px solid #93aec8;padding:1rem 0 0;align-items:center}.answer-navigation button{border:0;background:transparent;color:#fff;font-weight:750;text-decoration:underline;text-underline-offset:.22em;padding:.4rem 0}.answer-navigation button:hover{color:#ffcf91}.answer-navigation span{font-size:.8rem;color:#d9e7f0}
.analysis,.matches{padding-top:3.4rem;padding-bottom:3.5rem}.analysis{border-bottom:4px solid var(--ink)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem 3rem;margin-bottom:1.9rem}.section-heading h2{font:700 clamp(1.8rem,3vw,3rem)/1.08 var(--serif);letter-spacing:-.04em;margin:0}.section-heading>p{max-width:32rem;color:var(--muted);margin:0}.section-heading .eyebrow{margin-bottom:.45rem}.analysis-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(15rem,.65fr);gap:3rem}.analysis-chart{border-top:2px solid var(--ink);padding-top:1rem}.analysis-chart h3{font-size:1.05rem;margin:0 0 .4rem}.analysis-chart>p{color:var(--muted);font-size:.84rem;margin:.2rem 0 1.2rem}.year-plot{display:flex;gap:.5rem;align-items:end;min-height:12rem;border-bottom:1px solid var(--rule);padding:0 .1rem}.year-col{height:12rem;flex:1;min-width:0;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:.25rem}.year-col .year-count{font:700 .77rem var(--mono)}.year-col .year-stem{width:3px;min-height:.3rem;background:var(--blue)}.year-col .year-point{width:.65rem;height:.65rem;border-radius:50%;background:var(--rust)}.year-labels{display:flex;gap:.5rem}.year-labels span{flex:1;min-width:0;text-align:center;font:.72rem var(--mono);color:var(--muted)}.analysis-reading{padding-top:1.1rem;border-top:2px solid var(--ink)}.analysis-reading p{margin:.15rem 0 1rem}.analysis-reading strong{font:700 2rem/1.1 var(--serif);display:block;color:var(--blue-dark);margin-bottom:.5rem}.analysis-reading small{color:var(--muted);font-size:.83rem}.analysis-reading .reading-link{font-size:.86rem;font-weight:700}.comparison-plot{padding:1rem 0 1.5rem}.comparison-plot h3{font-size:1.05rem;margin:0 0 .35rem}.comparison-plot>p{color:var(--muted);font-size:.84rem;margin:0 0 2rem}.scale-labels{display:flex;justify-content:space-between;color:var(--muted);font:.72rem var(--mono);border-bottom:1px solid var(--rule);padding-bottom:.3rem}.rate-row{display:grid;grid-template-columns:8rem minmax(0,1fr) 5rem;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--hair)}.rate-row .rate-name{font-weight:750}.rate-track{height:2px;background:#9eb5c9;position:relative}.rate-track::before{content:"";position:absolute;left:0;top:-3px;height:8px;width:1px;background:var(--blue-dark)}.rate-track .rate-marker{display:block;position:absolute;top:-8px;width:17px;height:17px;margin-left:-8px;border-radius:50%;background:var(--rust);border:3px solid var(--white);box-shadow:0 0 0 1px var(--rust)}.rate-row strong{text-align:right;font:750 1.25rem var(--mono)}.rate-row small{grid-column:2/-1;color:var(--muted);margin-top:-.7rem}.comparison-note{border-left:3px solid var(--rust);padding-left:1rem;margin-top:1.5rem;color:var(--muted);max-width:45rem}.method-note{margin-top:2.5rem;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:.8rem 0;color:var(--muted)}.method-note summary{color:var(--blue-dark);font-weight:750;cursor:pointer;min-height:32px}.method-note>div{padding:.6rem 0;max-width:60rem}.method-note p{margin:.4rem 0}
.ledger-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;border-top:2px solid var(--ink);border-bottom:1px solid var(--rule);font-size:.85rem;color:var(--muted)}.ledger-toolbar label{display:flex;align-items:center;gap:.6rem;font-weight:700;color:var(--ink)}.ledger-toolbar select{border:1px solid var(--rule);padding:.4rem .55rem;background:var(--white);color:var(--ink);min-height:40px}.match-ledger{list-style:none;margin:0;padding:0}.match-ledger li{display:grid;grid-template-columns:2rem 7rem minmax(0,1.3fr) minmax(5rem,.45fr) minmax(8rem,.65fr) auto;gap:.7rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--hair);min-width:0}.match-ledger li:hover{background:#eeeae0}.match-ledger input[type=checkbox]{width:20px;height:20px;accent-color:var(--blue)}.match-date{font:.8rem var(--mono);color:var(--muted)}.match-name{font-weight:750;font-size:1.03rem}.match-score{font:750 1.2rem var(--mono);color:var(--blue-dark);white-space:nowrap}.match-meta{font-size:.78rem;color:var(--muted)}.match-open{border:0;background:transparent;color:var(--blue-dark);font-size:.82rem;font-weight:750;text-decoration:underline;min-height:40px;padding:.25rem .4rem}.ledger-footer{display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.82rem}.ledger-footer p{max-width:42rem}.selection-bar{position:fixed;z-index:50;left:0;right:0;bottom:0;background:var(--ink);color:#fff;display:flex;justify-content:center;align-items:center;gap:1.2rem;padding:.7rem 1rem;box-shadow:0 -8px 20px #0003}.selection-bar .plain-link{color:#fff}.selection-bar .primary-button{border-color:#fff;background:#fff;color:var(--blue-dark)}.prototype-footer{background:var(--ink);color:#d4e0e6;font-size:.82rem}.prototype-footer .wrap{display:flex;justify-content:space-between;gap:1rem;padding-top:1.4rem;padding-bottom:1.4rem}.prototype-footer strong{color:#fff}
dialog{border:0;padding:0;color:var(--ink);background:var(--white);box-shadow:0 28px 90px #061e3080;max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem)}dialog::backdrop{background:#0a2035a8}.condition-dialog{width:min(950px,calc(100vw - 2rem))}.dialog-layout{padding:2rem;max-height:calc(100vh - 2rem);overflow:auto}.dialog-head{position:relative;border-bottom:2px solid var(--ink);padding:0 3rem 1.25rem 0}.dialog-head h2,.simple-dialog h2{font:700 clamp(1.8rem,3vw,2.8rem)/1.1 var(--serif);letter-spacing:-.03em;margin:0}.dialog-head .eyebrow{margin-bottom:.45rem}.icon-button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--rule);background:transparent;color:var(--blue-dark);font-size:1.6rem;line-height:1}.dialog-head .icon-button{position:absolute;right:0;top:0}.condition-columns{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:2rem;padding-top:1.4rem}.condition-choose{min-width:0}.condition-choose label,.condition-edit label{display:block;font-weight:750;font-size:.86rem;margin:0 0 .35rem}.condition-choose input,.condition-edit input,.condition-edit select{width:100%;min-width:0;min-height:44px;border:1px solid #869eac;background:#fff;padding:.5rem .6rem;color:var(--ink)}.category-list{display:flex;flex-wrap:wrap;gap:.35rem;margin:1rem 0}.category-list button{background:transparent;border:1px solid var(--rule);padding:.35rem .5rem;color:var(--blue-dark);font-size:.75rem;font-weight:750;min-height:34px}.category-list button[aria-pressed="true"]{background:var(--blue-dark);border-color:var(--blue-dark);color:#fff}.condition-catalog{max-height:17rem;overflow:auto;border-top:1px solid var(--rule)}.condition-catalog button{display:block;width:100%;border:0;border-bottom:1px solid var(--hair);text-align:left;background:transparent;color:var(--ink);padding:.65rem .2rem;font-weight:650}.condition-catalog button:hover,.condition-catalog button[aria-current="true"]{color:var(--blue-dark);background:#e9f0f5}.condition-catalog small{display:block;color:var(--muted);font-size:.73rem;font-weight:400}.condition-edit{border-left:1px solid var(--rule);padding-left:2rem;min-width:0}.edit-placeholder{color:var(--muted);margin:0;max-width:17rem}.condition-edit h3{font:700 1.45rem var(--serif);margin:0 0 .4rem}.condition-edit>p{font-size:.84rem;color:var(--muted);margin:.4rem 0 1.2rem}.edit-fields{display:grid;gap:.8rem}.edit-fields .field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.edit-fields .field{min-width:0}.edit-fields .field small{display:block;color:var(--muted);margin-top:.2rem}.edit-actions{display:flex;gap:.8rem;align-items:center;margin-top:1.6rem}.condition-edit .validation{color:#9a3424;font-size:.82rem;margin:.6rem 0 0}.simple-dialog{width:min(600px,calc(100vw - 2rem));padding:2.4rem;position:relative}.simple-dialog .dialog-close{position:absolute;right:1rem;top:1rem}.simple-dialog .eyebrow{margin-bottom:.7rem}.simple-dialog>p:not(.eyebrow){max-width:32rem}.clarify-actions{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;margin-top:1.4rem}.dialog-evidence{font-size:.8rem;color:var(--muted);border-top:1px solid var(--hair);padding-top:1rem;margin-top:1.5rem}.match-dialog dl,.comparison-dialog dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem 1rem;margin:1.5rem 0}.match-dialog dl div,.comparison-dialog dl div{border-top:1px solid var(--hair);padding-top:.4rem}.match-dialog dt,.comparison-dialog dt{font-size:.75rem;color:var(--muted)}.match-dialog dd,.comparison-dialog dd{margin:.15rem 0;font-weight:750}.comparison-dialog{width:min(850px,calc(100vw - 2rem))}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.comparison-grid h3{font:700 1.4rem var(--serif);margin:1.5rem 0 0}.comparison-grid .demo-tag{font-size:.7rem;color:var(--rust);font-weight:800;letter-spacing:.08em}
@media(max-width:1000px){.entry{gap:2rem 3rem}.site-header{padding-inline:2.5rem}.analysis-layout{gap:2rem}.match-ledger li{grid-template-columns:2rem 6rem minmax(0,1fr) 5rem auto}.match-meta{grid-column:3/5;margin-top:-.5rem}}
@media(max-width:700px){.wrap{width:min(100% - 2rem,1260px)}.site-header{padding-inline:1rem;min-height:66px}.site-links{gap:1rem}.site-links span{display:none}.product-head{display:block;padding:1.6rem 0 1.1rem}.product-head>p{margin-top:1rem}.entry{grid-template-columns:1fr;padding-top:2.4rem;padding-bottom:3rem;gap:1.4rem}.entry-heading h2{max-width:30rem;margin-bottom:.8rem}.entry-actions{margin-top:.7rem}.entry-action{min-height:105px;padding:1rem .2rem}.prompts{grid-column:auto;margin-top:1rem}.prompt-list{grid-template-columns:1fr;gap:.25rem}.prompt-list button{border-bottom:1px solid var(--hair);padding:.65rem .1rem}.work{padding:1.2rem 0 2.5rem}.stage-line{flex-wrap:wrap}.stage-line #stageHint{display:none}.work-title{display:block;padding:1.4rem 0}.work-mode{margin-top:1rem;width:max-content}.question-surface{padding:1.4rem 1rem 1.2rem;box-shadow:5px 6px 0 var(--paper2)}.clause{grid-template-columns:1rem minmax(0,1fr);gap:.4rem}.clause-controls{grid-column:2;justify-content:flex-start;margin-top:-.3rem}.composer-actions{align-items:stretch;flex-direction:column}.composer-actions button{justify-content:center}.discovery-line{display:block}.discovery-line p+p{margin-top:.7rem}#queryPreview{text-align:left}.answer-inner{padding:1.3rem 0 1.6rem}.answer-top{display:block;padding:1.4rem 0}.answer-figure{align-items:flex-start;margin-top:1.1rem}.answer-figure span{font-size:clamp(4.2rem,22vw,7rem)}.answer-navigation{gap:.5rem 1.1rem}.analysis,.matches{padding-top:2.4rem;padding-bottom:2.5rem}.section-heading{display:block}.section-heading>p{margin-top:.7rem}.analysis-layout{grid-template-columns:1fr;gap:1.5rem}.year-plot{min-height:9rem}.year-col{height:9rem}.rate-row{grid-template-columns:5rem minmax(0,1fr) 4.5rem;gap:.6rem}.match-ledger li{grid-template-columns:1.6rem minmax(0,1fr) auto;gap:.35rem .6rem;padding:.9rem 0}.match-date{grid-column:2;grid-row:1}.match-score{grid-column:3;grid-row:1/3;align-self:center}.match-name{grid-column:2;grid-row:2}.match-meta{grid-column:2/4;grid-row:3;margin:0}.match-open{grid-column:2/4;grid-row:4;text-align:left;padding:0;min-height:30px}.match-ledger input{grid-column:1;grid-row:1/3;align-self:center}.ledger-footer{display:block}.selection-bar{flex-wrap:wrap;gap:.25rem .8rem}.selection-bar .primary-button{min-height:44px}.condition-columns{grid-template-columns:1fr;gap:1.5rem}.condition-edit{border-left:0;border-top:1px solid var(--rule);padding:1rem 0 0}.dialog-layout{padding:1.2rem}.condition-catalog{max-height:10rem}.simple-dialog{padding:2rem 1.25rem}.comparison-grid{grid-template-columns:1fr;gap:.2rem}.prototype-footer .wrap{display:block}.prototype-footer span{display:block;margin-top:.4rem}}
@media(max-width:430px){.demo-banner{font-size:.66rem}.site-header{gap:.6rem}.site-links{font-size:.74rem}.site-links a:last-of-type{display:none}.brand-label{font-size:.75rem}.product-head h1{font-size:2.25rem}.entry-heading h2{font-size:clamp(2rem,10vw,2.7rem)}.entry-action{grid-template-columns:1.8rem minmax(0,1fr) 1.2rem;gap:.6rem}.entry-action strong{font-size:1.35rem}.question-lead{font-size:1.55rem}.work-title h2{font-size:1.8rem}.answer-top h2{font-size:2rem}.year-labels span{font-size:.61rem}.rate-row small{grid-column:1/-1;margin:0}.condition-dialog{width:100vw;max-width:100vw;max-height:100vh;height:100vh;margin:0;inset:0}.condition-dialog .dialog-layout{height:100vh;max-height:100vh;overflow:auto}.edit-fields .field-pair{grid-template-columns:1fr}.ledger-toolbar{align-items:start;flex-direction:column}.selection-bar{justify-content:flex-start}.selection-bar .plain-link{padding:.3rem}}
@media(max-width:340px){.wrap{width:min(100% - 1.25rem,1260px)}body.has-selection{padding-bottom:7rem}.site-header{padding-inline:.65rem}.brand-mark{width:40px;height:40px;font-size:.78rem}.product-identity{gap:.6rem}.section-mark{font-size:1.7rem}.entry-action small{font-size:.78rem}.answer-navigation{font-size:.84rem}.year-labels span{font-size:.56rem}.rate-row{grid-template-columns:4.4rem minmax(0,1fr) 4rem;gap:.3rem}.rate-row strong{font-size:1rem}.simple-dialog{padding:2rem .8rem}.match-dialog dl,.comparison-dialog dl{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.primary-button:active{transform:none}}
.analysis-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem 1rem;border-top:1px solid var(--rule);padding:1rem 0 1.6rem}.analysis-controls label{font-weight:750;font-size:.86rem}.analysis-controls select{min-height:42px;padding:.4rem .6rem;border:1px solid var(--rule);background:var(--white);color:var(--ink)}.analysis-controls span{color:var(--muted);font-size:.8rem}.breakdown{max-width:65rem;border-top:2px solid var(--ink)}.breakdown caption{text-align:left;font-weight:750;padding:.8rem 0}.breakdown table{width:100%;border-collapse:collapse;font-size:.9rem}.breakdown th{text-align:left;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--rule);padding:.5rem}.breakdown td{border-bottom:1px solid var(--hair);padding:.8rem .5rem}.breakdown td:nth-child(n+2){font-family:var(--mono);font-variant-numeric:tabular-nums}.breakdown td:last-child,.breakdown th:last-child{text-align:right}.breakdown td:nth-child(2),.breakdown th:nth-child(2){text-align:right}.breakdown-note{color:var(--muted);font-size:.82rem;margin:1rem 0;max-width:48rem}@media(max-width:430px){.analysis-controls{align-items:stretch;flex-direction:column}.analysis-controls select{width:100%}.breakdown table{font-size:.8rem}.breakdown th,.breakdown td{padding:.6rem .25rem}}

/* IFKDB research identity shared with modern match and season pages. */
:root {
  --paper: #f4f7fb;
  --paper2: #e9eff7;
  --white: #fff;
  --ink: #10243b;
  --muted: #56677d;
  --blue: #1d4289;
  --blue-dark: #16356f;
  --rust: #935300;
  --rule: #bcc9d9;
  --hair: #dce4ed;
  --focus: #a85c00;
  --serif: "Montserrat", "Arial", sans-serif;
  --sans: "Open Sans", "Segoe UI", Arial, sans-serif;
  --display: "Francois One", "Arial Narrow", "Roboto Condensed", sans-serif;
  --panel-shadow: 0 .7rem 2.4rem rgba(16, 45, 97, .075);
}

body {
  background: #fff;
  color: var(--ink);
}

.wrap { width: min(100% - 4rem, 1280px); }
.eyebrow { color: var(--blue); letter-spacing: .085em; }
h1, h2, h3 { font-family: var(--serif); }
a, button { -webkit-tap-highlight-color: transparent; }
.primary-button, .add-button, .icon-button, select, input { border-radius: .7rem; }
.primary-button { border-color: var(--blue); background: var(--blue); box-shadow: 0 .4rem 1rem rgba(29,66,137,.14); }
.primary-button:hover { border-color: var(--blue-dark); background: var(--blue-dark); }
.add-button { background: #fff; }
.add-button:hover { background: #eef4fc; }
.plain-link { color: var(--blue); }
:focus-visible { outline-color: var(--focus); }

.demo-banner {
  background: #102d61;
  color: #f2f6fc;
  font-size: .72rem;
}
.demo-banner strong { color: #fcbd00; }

.site-header {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
  align-items: center;
  min-height: 92px;
  padding-inline: max(2rem, calc((100vw - 1280px)/2));
  border: 0;
  background: linear-gradient(110deg, #1d4289, #16356f);
  box-shadow: 0 .55rem 1.8rem rgba(16,45,97,.16);
  color: #fff;
}
.header-side { display: flex; gap: .65rem; align-items: center; min-width: 0; }
.header-side--right { justify-content: flex-end; }
.header-control, .header-secondary {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  min-height: 44px;
  padding: .55rem .75rem;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: .78rem;
  color: #fff;
  font-size: .78rem;
  font-weight: 800;
  text-decoration: none;
  white-space: nowrap;
}
.header-secondary { border-color: transparent; color: rgba(255,255,255,.87); }
.header-secondary[aria-current] { color: #fff; background: rgba(255,255,255,.11); }
.header-control:hover, .header-secondary:hover { color: #fff; background: rgba(255,255,255,.15); }
.site-header :focus-visible { outline: 3px solid #fcbd00; outline-offset: 3px; }
.header-hamburger { display: grid; width: 1.15rem; gap: .21rem; }
.header-hamburger span { display: block; width: 100%; height: 2px; border-radius: 2px; background: currentColor; }
.header-control-short { display: none; }
.brand {
  display: block;
  color: #fff;
  font: 400 clamp(2.8rem,4.4vw,4.5rem)/.95 var(--display);
  font-stretch: condensed;
  letter-spacing: -.035em;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}
.brand:hover { color: #fff; }

.product-head {
  gap: 2rem;
  margin-top: 1.5rem;
  padding: 2.3rem 2.7rem;
  border: 0;
  border-radius: 1.3rem;
  background: linear-gradient(115deg,#1d4289,#102d61);
  box-shadow: 0 1.2rem 3rem rgba(29,66,137,.21);
  color: #fff;
}
.product-head .eyebrow { color: #fcbd00; }
.product-head h1 { font: 800 clamp(2.5rem,4.1vw,4rem)/1.04 var(--serif); letter-spacing: -.045em; }
.product-head>p { color: #e5edfa; max-width: 29rem; }
.product-identity { gap: 0; }

.entry { padding-top: 4rem; }
.entry-heading h2 { font-weight: 800; letter-spacing: -.045em; }
.entry-actions { display: grid; gap: .85rem; border: 0; }
.entry-action {
  min-height: 125px;
  padding: 1.35rem 1.5rem;
  border: 1px solid rgba(18,54,96,.15);
  border-radius: 1.1rem;
  background: #fff;
  box-shadow: var(--panel-shadow);
  transition: background-color .15s, transform .15s, box-shadow .15s;
}
.entry-action:hover { background: #f9fbfe; transform: translateY(-2px); box-shadow: 0 1rem 2.3rem rgba(16,45,97,.14); }
.action-index { border: 0; border-radius: .55rem; background: #e8f0fb; color: var(--blue); font-weight: 800; }
.entry-action strong { font-weight: 800; }
.prompts { border-color: var(--hair); }
.prompt-list button:hover { color: var(--blue); }

.stage-line { border-color: var(--rule); }
.stage-dot { background: var(--blue); }
.work-title h2, .section-heading h2 { font-weight: 800; }
.work-mode { gap: .2rem; padding: .22rem; border: 1px solid var(--hair); border-radius: 999px; background: #eaf0f8; }
.work-mode button { border: 0; border-radius: 999px; padding-inline: 1rem; }
.work-mode button[aria-pressed="true"] { border: 0; background: #fff; box-shadow: 0 2px 8px rgba(16,45,97,.1); }
.question-surface {
  padding: 2.5rem 2.8rem;
  border: 1px solid rgba(18,54,96,.15);
  border-radius: 1.2rem;
  background: #fff;
  box-shadow: var(--panel-shadow);
}
.question-lead { font-weight: 800; }
.clause::before { color: var(--blue); }
.clause-controls button { min-height: 40px; }
.discovery-line { color: var(--muted); }

.answer {
  width: min(100% - 4rem, 1280px);
  margin: 1.5rem auto 0;
  border-radius: 1.3rem;
  background: linear-gradient(115deg,#1d4289,#102d61);
  box-shadow: 0 1.2rem 3rem rgba(29,66,137,.2);
  overflow: hidden;
}
.answer-inner.wrap { width: 100%; padding: 1.8rem 2.7rem 2.2rem; }
.stage-line--answer { border-color: rgba(255,255,255,.3); color: #e1ebfa; }
.stage-line--answer .stage-dot { background: #fcbd00; }
.answer .eyebrow { color: #fcbd00; }
.answer-top h2 { font-weight: 800; }
.answer-figure span { font: 400 clamp(4.5rem,9vw,9rem)/.85 var(--display); letter-spacing: -.045em; color: #fff; }
.answer-navigation { border-color: rgba(255,255,255,.3); }
.answer-navigation button:hover { color: #fcbd00; }

.analysis, .matches {
  margin-top: 1.35rem;
  padding: 2.5rem 2.7rem;
  border: 1px solid rgba(18,54,96,.14);
  border-radius: 1.15rem;
  background: #fff;
  box-shadow: var(--panel-shadow);
}
.analysis { border-bottom: 1px solid rgba(18,54,96,.14); }
.analysis-chart, .analysis-reading { border-color: var(--blue); }
.year-col .year-point { background: var(--blue-dark); }
.analysis-reading strong { font-family: var(--display); font-weight: 400; color: var(--blue); }
.rate-track .rate-marker { background: var(--blue); box-shadow: 0 0 0 1px var(--blue); }
.comparison-note { border-color: var(--blue); }
.method-note { border-color: var(--hair); }
.ledger-toolbar { border-top-color: var(--blue); }
.ledger-toolbar select { border-color: var(--rule); }
.match-ledger li:hover { background: #f4f8fd; }
.match-score { font-family: var(--display); font-weight: 400; font-size: 1.4rem; }
.selection-bar, .prototype-footer { background: #102d61; }

dialog { border: 1px solid var(--hair); border-radius: 1.15rem; background: #fff; }
dialog::backdrop { background: rgba(11,31,61,.67); }
.dialog-head { border-color: var(--blue); }
.dialog-head h2, .simple-dialog h2 { font-weight: 800; }
.icon-button { background: #f4f7fb; }
.category-list button { border-radius: 999px; padding-inline: .75rem; }
.condition-catalog button:hover, .condition-catalog button[aria-current="true"] { background: #eaf2fc; }
.condition-edit h3, .comparison-grid h3 { font-weight: 800; }
.condition-back { display: none; }
.comparison-grid .demo-tag { color: var(--blue-dark); }

/* Searchable value fields use the same IFKDB controls as the rest of the concept. */
.combo { min-width: 0; }
.combo-line { position: relative; }
.condition-edit .combo-line input {
  min-height: 48px;
  padding: .6rem 3.7rem .6rem .75rem;
  border: 1px solid #8ca3be;
  border-radius: .72rem;
  background: #fff;
}
.condition-edit .combo-line input[aria-expanded="true"] { border-color: var(--blue); border-radius: .72rem .72rem 0 0; }
.condition-edit .combo-line input[aria-invalid="true"] { border-color: #b94747; box-shadow: 0 0 0 2px rgba(185,71,71,.14); }
.combo-clear {
  position: absolute;
  right: .125rem;
  top: .125rem;
  min-width: 3.1rem;
  min-height: 44px;
  padding: .2rem .35rem;
  border: 0;
  border-radius: .5rem;
  background: #eaf2fc;
  color: var(--blue-dark);
  font-size: .76rem;
  font-weight: 800;
}
.combo-clear:hover { background: #dbe9fa; }
.combo-clear[hidden] { display: none; }
.combo-list {
  max-height: 15rem;
  margin: -1px 0 0;
  padding: .25rem;
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid var(--blue);
  border-radius: 0 0 .72rem .72rem;
  background: #fff;
  box-shadow: 0 .8rem 1.5rem rgba(16,45,97,.12);
  list-style: none;
}
.combo-option, .combo-empty {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: .55rem .75rem;
  border-radius: .48rem;
  line-height: 1.3;
}
.combo-option { cursor: pointer; }
.combo-option:hover, .combo-option[aria-selected="true"] { background: #eaf2fc; color: var(--blue-dark); }
.combo-option[aria-selected="true"] { box-shadow: inset 3px 0 var(--blue); font-weight: 800; }
.combo-empty { color: var(--muted); }
.combo-help, .combo-status { margin: .35rem 0 0; color: var(--muted); font-size: .78rem; line-height: 1.4; }
.combo-status { min-height: 1.1rem; }

@media (max-width: 1000px) {
  .site-header { padding-inline: 1.5rem; }
  .header-secondary { display: none; }
}
@media (max-width: 700px) {
  .wrap, .answer { width: min(100% - 2rem, 1280px); }
  .site-header { min-height: 70px; padding-inline: 1rem; gap: .5rem; }
  .brand { font-size: clamp(2rem,6vw,2.9rem); }
  .header-control { min-height: 44px; padding: .5rem .6rem; }
  .product-head { margin-top: 1rem; padding: 1.55rem 1.4rem; }
  .product-head h1 { font-size: clamp(2.2rem,8vw,3rem); }
  .product-head>p { margin-top: .7rem; }
  .entry { padding-top: 2.5rem; }
  .entry-action { min-height: 105px; padding: 1rem; }
  .question-surface { padding: 1.4rem 1.1rem; box-shadow: var(--panel-shadow); }
  .answer-inner.wrap { padding: 1.35rem 1.4rem 1.7rem; }
  .analysis, .matches { padding: 1.7rem 1.4rem; }
  .condition-dialog { border-radius: 1rem; }
  .condition-dialog:not(.is-editing) .condition-edit { display: none; }
  .condition-dialog.is-editing .condition-choose { display: none; }
  .condition-dialog.is-editing .condition-columns { display: block; }
  .condition-dialog.is-editing .condition-edit { border-top: 0; padding-top: 0; }
  .condition-back {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    margin: 0 0 .85rem;
    padding: .4rem .6rem;
    border: 0;
    border-radius: .55rem;
    background: #eaf2fc;
    color: var(--blue-dark);
    font-weight: 800;
  }
  .combo-list { max-height: min(28vh, 14rem); }
}
@media (max-width: 430px) {
  .header-control-long { display: none; }
  .header-control-short { display: inline; }
  .brand { font-size: clamp(1.7rem,7vw,2.2rem); }
  .product-head h1 { font-size: 2.25rem; }
  .product-head .eyebrow { font-size: .67rem; }
  .entry-heading h2 { font-size: clamp(2rem,9vw,2.6rem); }
  .answer-top h2 { font-size: clamp(1.75rem,7.5vw,2.1rem); }
  .answer-figure span { font-size: clamp(4.2rem,20vw,6.7rem); }
  .condition-dialog { border-radius: 0; }
}
@media (max-width: 340px) {
  .wrap, .answer { width: min(100% - 1.25rem, 1280px); }
  .site-header { padding-inline: .65rem; }
  .header-control { font-size: .71rem; padding: .45rem; }
  .brand { font-size: 1.75rem; }
  .product-head, .analysis, .matches { padding-inline: 1rem; }
  .answer-inner.wrap { padding-inline: 1rem; }
}
@media (prefers-reduced-motion: reduce) {
  .entry-action { transition: none; }
  .entry-action:hover { transform: none; }
}

/* Production Matchlabbet: global IFKDB shell and server-rendered data. */
.matchlab-page { min-width:0; overflow-x:clip; padding:1.25rem 0 4rem; background:linear-gradient(180deg,#f4f7fb 0,#fff 18rem,#fff 100%); color:var(--ink); }
.matchlab-page .wrap { max-width:1280px; }
.matchlab-page [hidden], .selection-bar[hidden] { display:none!important; }
.matchlab-page a:focus-visible, .matchlab-page button:focus-visible, .matchlab-page input:focus-visible, .matchlab-page select:focus-visible { outline:3px solid var(--focus); outline-offset:3px; }
.matchlab-page .product-head { margin-top:0; }
.product-head-side { max-width:29rem; }
.product-head-side p { color:#e5edfa; margin:.1rem 0 .7rem; }
.product-head-side a { color:#fff; font-weight:800; text-underline-offset:.2em; }
.matchlab-notice, .matchlab-error { padding:1rem 1.25rem; margin-top:1rem; border-left:4px solid var(--blue); border-radius:.55rem; background:#eaf2fc; }
.matchlab-error { padding:2rem; }
.matchlab-error h2 { margin:0 0 .5rem; }
.matchlab-page .entry-action { text-decoration:none; }
.matchlab-page .entry-action:hover { color:var(--ink); }
.matchlab-page .prompt-list a { display:flex; align-items:start; justify-content:space-between; gap:.5rem; padding:.5rem 0; color:var(--blue-dark); font-weight:700; line-height:1.3; text-underline-offset:.2em; }
.matchlab-page .prompt-list a:hover { color:var(--blue); }
.matchlab-page .answer-navigation a { padding:.4rem 0; color:#fff; font-weight:750; text-underline-offset:.22em; }
.matchlab-page .answer-navigation a:hover { color:#fcbd00; }
.matchlab-page .answer-navigation button { font:inherit; font-weight:750; }
.matchlab-page .stage-line--answer .plain-link { color:#fff; }
.matchlab-page .stage-line .plain-link { margin-left:auto; }
.matchlab-page .work-title .eyebrow { color:var(--blue); }
.matchlab-page .answer-top h2 { max-width:58rem; }
.matchlab-page .answer-context { max-width:55rem; }
.matchlab-page .answer-figure span { font-variant-numeric:tabular-nums; }
.analysis-controls button, .ledger-toolbar button { min-height:42px; padding:.45rem .8rem; border:1px solid var(--blue); border-radius:.6rem; background:#fff; color:var(--blue-dark); font-weight:800; }
.analysis-controls button:hover, .ledger-toolbar button:hover { background:#eaf2fc; }
.analysis-controls form, .ledger-toolbar form { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; }
.ledger-toolbar form label { display:flex; flex-wrap:wrap; align-items:center; gap:.5rem; }
.matchlab-page .analysis { border-bottom:1px solid rgba(18,54,96,.14); }
.matchlab-page .comparison-plot { max-width:62rem; }
.matchlab-secondary { max-width:58rem; color:var(--muted); }
.year-scroll { overflow-x:auto; padding-bottom:.4rem; overscroll-behavior-x:contain; }
.year-scroll .year-plot { width:max-content; min-width:100%; gap:.55rem; }
.year-scroll .year-col { flex:0 0 2.8rem; height:10rem; }
.year-scroll .year-name { display:block; color:var(--muted); font:.7rem var(--mono); white-space:nowrap; }
.year-scroll .year-stem { flex:none; }
.matchlab-page .breakdown { max-width:none; border-color:var(--blue); overflow-x:auto; }
.matchlab-page .breakdown table { min-width:32rem; }
.matchlab-page .breakdown tbody th { color:var(--ink); font-size:.86rem; font-weight:700; text-transform:none; letter-spacing:0; border-bottom:1px solid var(--hair); padding:.8rem .5rem; }
.matchlab-page .breakdown tbody td { white-space:nowrap; }
.matchlab-page .breakdown tbody td:last-child { text-align:right; }
.matchlab-page .method-note summary { min-height:44px; display:flex; align-items:center; }
.matchlab-empty { padding:1.2rem; border:1px dashed var(--rule); border-radius:.65rem; color:var(--muted); }
.matchlab-page .ledger-toolbar { align-items:center; }
.matchlab-page .match-ledger li { grid-template-columns:2rem 7rem minmax(0,1.2fr) minmax(5rem,.4fr) minmax(9rem,.75fr) auto; }
.matchlab-page .match-open { display:inline-flex; align-items:center; min-height:44px; color:var(--blue-dark); font-size:.83rem; font-weight:800; white-space:nowrap; text-underline-offset:.2em; }
.matchlab-page .match-open:hover { color:var(--blue); }
.matchlab-page .match-select { display:none; }
body.matchlab-ready .matchlab-page .match-select { display:block; }
.matchlab-pagination { display:flex; align-items:center; gap:.7rem 1rem; flex-wrap:wrap; }
.matchlab-pagination a { font-weight:800; min-height:44px; display:inline-flex; align-items:center; }
.matchlab-page .ledger-footer { align-items:center; }
.matchlab-page .manual-query { margin-top:2rem; }
.manual-query details { border:1px solid var(--hair); border-radius:1rem; background:#fff; padding:1rem 1.3rem; box-shadow:var(--panel-shadow); }
.manual-query summary { cursor:pointer; color:var(--blue-dark); font-weight:800; min-height:44px; }
.manual-query form { display:grid; gap:1rem; max-width:56rem; }
.manual-query fieldset { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.9rem; min-width:0; padding:1.2rem; border:1px solid var(--hair); border-radius:.7rem; }
.manual-query legend { padding:0 .4rem; color:var(--blue-dark); font-weight:800; }
.manual-query .how-field { display:grid; gap:.2rem; min-width:0; }
.manual-query .how-field span { font-weight:700; }
.manual-query input, .manual-query select { width:100%; min-width:0; min-height:44px; border:1px solid var(--rule); border-radius:.55rem; background:#fff; color:var(--ink); padding:.45rem .6rem; }
.manual-query .field-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; }
.manual-query .primary-button { justify-self:start; }
body.matchlab-ready .manual-query { display:none; }
.matchlab-page .condition-dialog, .matchlab-page .simple-dialog { z-index:100; }
.matchlab-page .condition-catalog button[aria-current="true"] { color:var(--blue-dark); background:#eaf2fc; }
.condition-edit .validation:empty { display:none; }
.condition-edit .validation { font-weight:700; }
.selection-bar { padding-bottom:max(.7rem,env(safe-area-inset-bottom)); }
body.has-selection #topBtn { bottom:6rem!important; }
@media(max-width:1000px) { .matchlab-page .match-ledger li { grid-template-columns:2rem 6rem minmax(0,1fr) 5rem auto; } }
@media(max-width:700px) {
  .matchlab-page { padding-top:.7rem; }
  .product-head-side { margin-top:.8rem; }
  .matchlab-page .prompt-list { gap:.2rem; }
  .matchlab-page .prompt-list a { border-bottom:1px solid var(--hair); padding:.7rem .1rem; }
  .matchlab-page .answer-navigation { gap:.4rem 1rem; }
  .matchlab-page .analysis,.matchlab-page .matches { padding:1.5rem 1.25rem; }
  .matchlab-page .ledger-toolbar { align-items:stretch; }
  .matchlab-page .ledger-toolbar form { width:100%; }
  .matchlab-page .ledger-toolbar select { max-width:100%; }
  .matchlab-page .match-ledger li { grid-template-columns:1.6rem minmax(0,1fr) auto; }
  .matchlab-page .match-open { grid-column:2/4; grid-row:4; }
  .matchlab-page .match-meta { min-width:0; }
  .matchlab-page .ledger-footer { display:block; }
  .manual-query fieldset { grid-template-columns:1fr; }
  .manual-query .field-pair { grid-template-columns:1fr; }
  .selection-bar { bottom:0; }
}
@media(max-width:430px) {
  .matchlab-page .analysis,.matchlab-page .matches { padding:1.25rem .9rem; }
  .matchlab-page .breakdown table { min-width:30rem; }
  .matchlab-page .rate-row { grid-template-columns:4.5rem minmax(0,1fr) 4rem; }
  .matchlab-page .rate-row small { grid-column:1/-1; }
}
@media(max-width:340px) {
  .matchlab-page .answer-navigation { gap:.3rem .7rem; }
  .matchlab-page .match-meta { font-size:.72rem; }
}
.answer-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin:0 0 1.5rem; padding:1rem 0; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.answer-facts div { min-width:0; }
.answer-facts dt { color:#d9e7f0; font-size:.78rem; font-weight:750; }
.answer-facts dd { margin:.2rem 0 0; font:750 clamp(1.1rem,2.5vw,1.55rem) var(--mono); color:#fff; }
@media(max-width:600px) { .answer-facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:.8rem; } }

/* Real result sets need a short first reading and an explicit path to every row. */
.matchlab-page .product-head h1 { color:#fff; }
.matchlab-page .analysis-layout--years { margin:1.1rem 0 1.5rem; }
.matchlab-page .analysis-layout--years .analysis-reading { border-top:2px solid var(--blue); }
.matchlab-page .analysis-layout--years .analysis-reading .eyebrow { color:var(--blue); font-size:.72rem; }
.matchlab-page .analysis-layout--years .analysis-reading strong { font-size:clamp(2.2rem,4vw,3.5rem); }
.matchlab-page .analysis-layout--years .analysis-reading p:not(.eyebrow) { color:var(--ink); font-size:.95rem; line-height:1.5; }
.breakdown-details { margin-top:1.4rem; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.breakdown-details summary { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:.4rem 1rem; min-height:55px; padding:.6rem .1rem; color:var(--blue-dark); cursor:pointer; font-weight:800; }
.breakdown-details summary small { color:var(--muted); font-size:.78rem; font-weight:600; }
.breakdown-details[open] summary { border-bottom:1px solid var(--hair); }
.breakdown-details .breakdown { border-top:0; }
.matchlab-page .match-ledger { list-style:none; padding:0; }
.matchlab-page .match-ledger li { grid-template-columns:2rem 7rem minmax(12rem,1fr) 5.5rem minmax(12rem,1fr) auto; }
.matchlab-page .match-ledger .match-name { min-width:0; }
.matchlab-page .match-ledger .match-date { font-size:.84rem; }
.matchlab-page .match-ledger .match-meta { font-size:.84rem; }
body.matchlab-ready .match-ledger.is-condensed li:nth-child(n+9) { display:none; }
.ledger-reveal { display:flex; align-items:center; gap:1rem; min-height:3.7rem; border-bottom:1px solid var(--hair); }
.ledger-reveal .plain-link { min-height:44px; }
.ledger-reveal [role="status"] { color:var(--muted); font-size:.82rem; }
@media(max-width:1100px) {
  .matchlab-page .match-ledger li { grid-template-columns:1.6rem minmax(0,1fr) auto; gap:.2rem .7rem; padding:.8rem 0; }
  .matchlab-page .match-ledger .match-select { grid-column:1; grid-row:1/3; align-self:center; }
  .matchlab-page .match-ledger .match-date { grid-column:2; grid-row:1; }
  .matchlab-page .match-ledger .match-name { grid-column:2; grid-row:2; font-size:1rem; }
  .matchlab-page .match-ledger .match-score { grid-column:3; grid-row:1/3; align-self:center; }
  .matchlab-page .match-ledger .match-meta { grid-column:2/4; grid-row:3; margin:0; }
  .matchlab-page .match-ledger .match-open { grid-column:2/4; grid-row:4; min-height:36px; }
}
@media(max-width:700px) {
  .matchlab-page .analysis-layout--years { display:flex; flex-direction:column; gap:1.3rem; }
  .matchlab-page .analysis-layout--years .analysis-reading { padding-top:.9rem; }
  .matchlab-page .analysis-layout--years .analysis-reading strong { margin-bottom:.3rem; }
}

/* The shared match-register card is framed by Matchlabbet's comparison control. */
.matchlab-page .match-ledger { display:grid; gap:.62rem; margin:.9rem 0 0!important; padding:0!important; list-style:none!important; border:0; }
.matchlab-page .match-ledger>li.match-card-shell { display:grid!important; grid-template-columns:minmax(0,1fr)!important; gap:0!important; align-items:stretch!important; min-width:0; margin:0!important; padding:0!important; border:0!important; background:transparent!important; box-shadow:none!important; list-style:none!important; }
.matchlab-page .match-ledger>li.match-card-shell::before { content:none!important; display:none!important; }
.matchlab-page .match-card-choice { display:none; grid-column:1; grid-row:1; align-items:center; justify-content:center; min-width:0; border:1px solid rgba(18,54,96,.11); border-right:0; border-radius:.8rem 0 0 .8rem; background:#f5f8fc; }
.matchlab-page .match-card-choice .match-select { display:block; width:20px; height:20px; margin:0; accent-color:var(--blue); }
.matchlab-page .match-card-host { grid-column:1; grid-row:1; min-width:0; }
body.matchlab-ready .matchlab-page .match-ledger>li.match-card-shell { grid-template-columns:2.6rem minmax(0,1fr)!important; }
body.matchlab-ready .matchlab-page .match-card-choice { display:flex; }
body.matchlab-ready .matchlab-page .match-card-host { grid-column:2; grid-row:1; }
body.matchlab-ready .matchlab-page .match-card-host .ifk-match-card { border-radius:0 .95rem .95rem 0!important; }
.matchlab-page .match-card-host .ifk-match-card { margin:0!important; }
.matchlab-page .match-card-host .ifk-match-card__main-link:focus-visible { outline:3px solid var(--focus)!important; outline-offset:-3px!important; }
@media(max-width:430px) {
  body.matchlab-ready .matchlab-page .match-ledger>li.match-card-shell { grid-template-columns:2.1rem minmax(0,1fr)!important; }
  .matchlab-page .match-card-host .ifk-match-card__link { padding:.55rem!important; }
  .matchlab-page .match-card-host .ifk-match-card__fixture { grid-template-columns:minmax(0,1fr) 3.3rem minmax(0,1fr)!important; gap:.25rem!important; }
  .matchlab-page .match-card-host .ifk-match-card__crest { width:2rem!important; height:2rem!important; min-width:2rem!important; }
  .matchlab-page .match-card-host .ifk-match-card__team strong { font-size:.75rem!important; }
  .matchlab-page .match-card-host .ifk-match-card__score strong { font-size:1.4rem!important; }
}

.matchlab-page .work-intro { max-width:56rem; margin:-.35rem 0 1.5rem; color:var(--muted); font-size:1rem; }
.matchlab-page .work-prompts { margin:2.4rem 0 0; }
.matchlab-page .work-mode-status { margin:0; color:var(--muted); font-size:.86rem; }
.matchlab-page .work-mode-status:empty { display:none; }
