/* Reflow one set of business content for touch screens and wider workspaces. */
.mobile-title,.mobile-chapters,.tech-picker{display:none}
.shell,.stage,main,.table-wrap{min-width:0;max-width:100%}
:is(.cover,.two-col,.three-col,.outcomes,.arch-layer,.phase,.tech-explorer,.decision-grid,.decision-bottom,.runtime-detail,.runtime-status,.architecture-ribbon,.evidence-workspace,.evidence-ledger,.media-flow)>*{min-width:0}
p,dd,.formula,.receipt,.stack-name,.source-links,.rule-line{overflow-wrap:anywhere}
img{max-width:100%}
.sidebar{height:100dvh}
.status{max-width:100%;white-space:normal}
.milestone strong{font-size:clamp(1.25rem,2vw,1.625rem);font-variant-numeric:tabular-nums}
#toast{bottom:max(25px,env(safe-area-inset-bottom));overflow-wrap:anywhere}
@media screen and (min-width:1024px) and (max-width:1279px){
 .cover{grid-template-columns:1fr}
 .cover>div:first-child{max-width:44rem}
 .two-col,.runtime-detail{grid-template-columns:1fr}
 .tech-explorer{grid-template-columns:180px minmax(0,1fr)}
 .decision-grid,.decision-bottom{grid-template-columns:1fr}
 .evidence-workspace{grid-template-columns:1fr}
 .evidence-review{border-left:0;border-top:1px solid var(--line)}
 .schedule{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media screen and (max-width:1023px){
 .shell{display:block}
 .sidebar,#breadcrumb{display:none}
 .topbar{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:minmax(0,1fr) auto;height:auto;background:var(--paper);padding:6px max(20px,env(safe-area-inset-right)) 8px max(20px,env(safe-area-inset-left));gap:2px 16px;align-items:center}
 .mobile-title{display:block;font-size:.875rem;font-weight:600}
 .mobile-chapters{display:flex;position:relative;grid-column:1/-1;gap:6px;min-width:0;max-width:100%;overflow-x:auto;padding:4px 4px 8px;scroll-padding-inline:4px;scrollbar-width:thin;scrollbar-color:#9ab4a7 transparent}
 .chapter-button{display:flex;flex:0 0 76px;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:66px;padding:8px 4px;border-radius:7px;text-decoration:none;color:var(--muted);font-size:.875rem;line-height:1.3;white-space:nowrap}
 .chapter-button svg{flex-shrink:0}
 .chapter-button:hover{background:#e6ece5;color:var(--ink)}
 .chapter-button.active{background:var(--lime);color:var(--navy);font-weight:600}
 .chapter-button:focus-visible{outline-offset:0}
 .mobile-chapters::-webkit-scrollbar{height:3px}
 .mobile-chapters::-webkit-scrollbar-thumb{background:#9ab4a7;border-radius:4px}
 .topbar>div{flex-shrink:0}
 main{padding:28px max(24px,env(safe-area-inset-right)) 40px max(24px,env(safe-area-inset-left));min-height:calc(100dvh - 150px)}
 .two-col,.runtime-detail{grid-template-columns:1fr}
 .cover{grid-template-columns:1fr 1fr;gap:24px}
 .cover h1{font-size:clamp(2rem,4.5vw,2.75rem)}
 .tech-explorer{grid-template-columns:1fr}
 .tech-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 .tech-choices button{border:1px solid var(--line)}
 .architecture-ribbon{grid-template-columns:repeat(2,minmax(0,1fr))}
 .evidence-workspace{grid-template-columns:1fr}
 .evidence-review{border-left:0;border-top:1px solid var(--line)}
 .row,.section-title,.evidence-workbench-head,.evidence-caption .row{flex-wrap:wrap}
 .evidence-select{min-width:0;max-width:100%}
 .field input,.field select,.fault-picker select,.evidence-select select{font-size:1rem}
 .btn,.btn.small,.text-btn,.tabs button,.frame-list button,.nav-item{min-height:44px}
 .check{min-height:44px;align-items:center}
 .check input{flex-shrink:0}
 .text-btn{display:inline-flex;align-items:center}
 .schedule{grid-template-columns:repeat(2,minmax(0,1fr))}
 #toast{left:50%}
 .footer{padding-bottom:max(20px,env(safe-area-inset-bottom))}
}
@media screen and (max-width:767px){
 main{padding:24px max(16px,env(safe-area-inset-right)) 32px max(16px,env(safe-area-inset-left))}
 .topbar{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-top:max(10px,env(safe-area-inset-top))}
 .stage main :is(p,li,dd){font-size:1rem;line-height:1.8}
 .stage main :is(small,.meta,.note,.subtle,.status,.pill,.formula,.stack-name){font-size:.875rem;line-height:1.6}
 h1{font-size:clamp(1.65rem,5.7vw,2rem);line-height:1.4}
 h2{font-size:1.3rem}
 .page-head{display:block;margin-bottom:24px}
 .page-index{display:none}
 .page-head p{margin-top:12px}
 .cover{display:grid;grid-template-columns:1fr;gap:28px}
 .cover h1{font-size:clamp(1.75rem,6.7vw,2.5rem)}
 .cover p{margin:18px 0}
 .system-map{padding:20px}
 .map-entry,.map-agent{flex-wrap:wrap;gap:6px}
 .map-flow{letter-spacing:0}
 .core-pair,.map-base{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .core{padding:14px}
 .outcomes,.three-col,.assurance-grid{grid-template-columns:1fr;gap:14px}
 .panel,.tech-detail,.runtime-panel{padding:18px}
 .section-title{display:block}
 .section-title .subtle{display:block;max-width:none;text-align:left;margin-top:8px}
 .arch-layer{display:block;padding:18px}
 .arch-layer h3{margin-bottom:10px}
 .tech-picker{display:grid;margin:0}
 .tech-choices{display:none}
 .decision-grid,.decision-bottom,.workflow-detail dl{grid-template-columns:1fr}
 .tech-heading h2,.agent-thesis h2{font-size:1.4rem}
 .tech-example,.runtime-note{padding:16px}
 .architecture-ribbon{padding:18px;gap:16px}
 .architecture-ribbon>span{font-size:.875rem;overflow-wrap:anywhere}
 .source-links{gap:8px 16px}
 .source-links a{display:inline-flex;align-items:center;min-height:44px}
 .runtime-panel>.row{display:block}
 .fault-picker{margin-top:16px;min-width:0}
 .runtime-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}
 .runtime-track>div{flex-direction:row;align-items:center;gap:8px;min-height:44px}
 .runtime-track>div:not(:last-child):after{display:none}
 .runtime-track span{flex-shrink:0}
 .runtime-track b{font-size:.875rem;text-align:left}
 .runtime-status{grid-template-columns:1fr;gap:12px;padding:16px}
 .runtime-status>div{display:flex;justify-content:space-between;gap:16px;align-items:center}
 .runtime-status>div+div{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}
 .runtime-status span{font-size:.875rem}
 .runtime-status b{font-size:1rem;margin:0;text-align:right}
 .actions{align-items:stretch;gap:12px}
 .actions .btn,.runtime-panel .actions .btn,.cover .actions .btn,.evidence-review .actions .btn{flex:1 1 100%;font-size:1rem}
 .tabs{width:100%;gap:4px}
 .tabs button{flex:1;font-size:.875rem;padding:8px;min-width:0}
 .rule-line{display:block;font-size:1rem;padding:12px 0}
 .rule-line b{display:block;white-space:normal;overflow-wrap:anywhere;margin-top:5px}
 .rule-line.total{display:flex;align-items:center;gap:10px}
 .rule-line.total b{margin-top:0}
 .field,.check{font-size:1rem}
 .check{align-items:flex-start}
 .check input{margin-top:4px}
 .result{padding:16px}
 .result .row{display:block}
 .result .row .status{margin:4px 0 10px}
 .metric-pair b{font-size:1.7rem;overflow-wrap:anywhere}
 .metric-pair>div+div{padding-left:14px}
 .evidence-workbench-head{display:block;padding:18px}
 .evidence-select{margin-top:18px}
 .evidence-viewer,.evidence-review{padding:16px}
 .evidence-review .btn{font-size:1rem}
 .evidence-review .text-btn{width:auto}
 .evidence-caption .row{gap:4px}
 .frame-list button{flex:1 1 130px;min-width:0}
 .frame-list img{width:52px;height:40px;flex-shrink:0}
 .frame-list span{font-size:.875rem;min-width:0}
 .capture-meta>div{grid-template-columns:1fr;gap:2px}
 .capture-meta dt{font-size:.875rem}
 .evidence-ledger{grid-template-columns:1fr;padding:18px;gap:14px}
 .evidence-ledger>div+div{border-left:0;border-top:1px solid #c8d4cc;padding:14px 0 0}
 .evidence-ledger span{font-size:.875rem}
 .media-flow{grid-template-columns:1fr;gap:18px}
 .media-flow b{font-size:1rem}
 .photo-finding{position:static;display:block;border-radius:0;max-width:none;font-size:.875rem;padding:8px 12px}
 .milestone strong{font-size:clamp(1.25rem,5.5vw,1.625rem)}
 .milestone b{font-size:1rem}
 .permission-row{grid-template-columns:1fr auto}
 .permission-row span:nth-child(2){grid-column:1/-1;grid-row:2;font-size:.875rem}
 .phase{grid-template-columns:40px minmax(0,1fr);gap:12px}
 .phase>ul{grid-column:2}
 .phase .phase-n{font-size:1.75rem}
 .table-wrap{overflow:visible}
 .matrix,.matrix tbody,.matrix tr,.matrix td{display:block;width:100%}
 .matrix thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .matrix tbody tr{padding:16px 0;border-bottom:1px solid var(--line)}
 .matrix tbody td{min-width:0;padding:6px 0;border:0;font-size:1rem;overflow-wrap:anywhere}
 .matrix tbody td:first-child{font-weight:600;padding-top:0;margin-bottom:6px}
 .matrix tbody td:not(:first-child):before{content:attr(data-label);display:block;font-size:.875rem;color:var(--muted);font-weight:500;margin-bottom:4px}
 .footer{display:block;padding-left:16px;padding-right:16px;font-size:.875rem}
 .footer span{display:block}
}
@media screen and (max-width:380px){
 .topbar{column-gap:12px}
 .chapter-button{flex-basis:68px}
 .topbar .text-btn{font-size:.75rem}
 .runtime-track{grid-template-columns:1fr}
 .architecture-ribbon{grid-template-columns:1fr}
 .rule-line.total{display:block}
 .page-head h1{overflow-wrap:anywhere}
 .evidence-review .row{display:block}
 .evidence-review .status{margin-top:8px;text-align:left}
}
@media print{.mobile-title,.mobile-chapters,.tech-picker{display:none}}
