.shell{flex-direction:column;height:100%;display:flex}.topbar{border-bottom:1.5px solid var(--ink);flex:none;justify-content:space-between;align-items:center;gap:16px;height:52px;padding:0 20px;display:flex}.brand{letter-spacing:-.02em;font-size:18px;font-weight:800;font-stretch:125%;text-decoration:none}.nav{gap:4px;display:flex}.nav a{border-radius:var(--r-sm);color:var(--graphite);padding:6px 12px;font-weight:560;text-decoration:none}.nav a.active{color:var(--ink);background:var(--rule-soft)}.page{padding:40px 20px 80px;overflow:auto}.page.narrow{width:100%;max-width:760px;margin:0 auto}.lead{margin-top:12px;font-size:17px}.error{color:var(--redline);margin-top:16px}.notice{background:var(--redline-soft);color:var(--ink);border-left:3px solid var(--redline);margin:0;padding:8px 12px}.pad{padding:20px}.drop{border:1.5px dashed var(--graphite);border-radius:var(--r-md);background:var(--sheet);justify-items:center;gap:8px;margin-top:28px;padding:40px 20px;display:grid}.drop.over{border-color:var(--ink);background:color-mix(in srgb, var(--hl-select) 25%, var(--sheet))}.code-box{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--sheet);margin-top:28px;padding:16px 20px}.code-box h2{margin:0 0 8px;font-size:1.05rem}.code-form{grid-template-columns:minmax(0,260px) auto;align-items:end;gap:12px;display:grid}.code-form>p,.code-form .error{grid-column:1/-1;margin:0}.code-form .field input{text-transform:uppercase;letter-spacing:.08em;font-variant-numeric:tabular-nums}.code-form .field input::placeholder{text-transform:none;letter-spacing:0}.code-ok{margin:0}@media (width<=520px){.code-form{grid-template-columns:1fr}}.filelist{gap:16px;margin-top:24px;display:grid}.filelist ul{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none}.filelist li{border-bottom:1px solid var(--rule);grid-template-columns:1fr auto auto;align-items:center;gap:16px;padding:8px 0;display:grid}.field{gap:4px;font-weight:560;display:grid}.field input{border:1.5px solid var(--rule);border-radius:var(--r-sm);background:var(--sheet);padding:8px 10px;font-weight:400}.field input:focus{border-color:var(--ink);outline:none}.link{color:var(--graphite);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.recent{margin-top:48px}.recent ul{margin:12px 0 0;padding:0;list-style:none}.recent li{border-bottom:1px solid var(--rule);justify-content:space-between;gap:16px;padding:8px 0;display:flex}.run-card{gap:2px;min-width:0;display:grid}.run-note{max-width:64ch;margin:0}@media (width<=640px){.recent li{flex-direction:column;gap:4px}}.run{gap:10px;margin-top:24px;display:grid}.bar{background:var(--rule-soft);border-radius:3px;height:6px;overflow:hidden}.bar>div{background:var(--ink);height:100%;transition:width .3s}.log{margin:0;padding-left:18px}.workspace{flex:1;grid-template-columns:300px 1fr;min-height:0;display:grid}.register{border-right:1.5px solid var(--ink);flex-direction:column;display:flex;overflow:auto}.register header{border-bottom:1px solid var(--rule);padding:16px}.register h2{font-size:17px}.register ul{margin:0;padding:0;list-style:none}.register button{text-align:left;border:0;border-bottom:1px solid var(--rule-soft);cursor:pointer;background:0 0;grid-template-columns:1fr auto;gap:2px 8px;width:100%;padding:10px 16px;display:grid}.register button:hover{background:var(--rule-soft)}.register button.on{background:var(--hl-select);color:#16202a}.register button.on .ti{color:#3d4650}.register .no{font-size:13px;font-weight:680;font-stretch:92%}.register .ti{color:var(--graphite);grid-column:1;font-size:13px;line-height:1.3}.register .kind{background:var(--rule-soft);border-radius:2px;grid-area:1/2;align-self:start;padding:1px 6px;font-size:11px}.register .k-foundation_plan{background:var(--hl-footing);color:#10291b}.register .k-framing_plan{background:var(--hl-beam);color:#0e2233}.register .k-general_notes{background:var(--hl-slab);color:#33210a}.register .k-schedule{background:var(--hl-column);color:#3a0f22}.warn-dot{color:var(--redline);grid-area:2/2;justify-self:end;font-weight:800}.viewer{flex-direction:column;min-width:0;min-height:0;display:flex}.viewer-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:start;gap:16px;padding:12px 16px;display:flex}.viewer-head h3{font-size:15px}.toggle{white-space:nowrap;align-items:center;gap:6px;display:flex}.canvas-wrap{background:var(--rule-soft);flex:1;min-height:0;position:relative}.canvas{touch-action:none;cursor:grab;width:100%;height:100%;display:block}.canvas:active{cursor:grabbing}.canvas-tools{gap:8px;display:flex;position:absolute;bottom:12px;right:12px}.canvas-tools .btn{background:var(--sheet);padding:4px 10px}@media (width<=760px){.workspace{grid-template-rows:40% 60%;grid-template-columns:1fr}.register{border-right:0;border-bottom:1.5px solid var(--ink)}}.panel{border-left:1.5px solid var(--ink);align-content:start;gap:24px;padding:16px;display:grid;overflow:auto}.panel h3{margin-bottom:4px}.types,.checks,.questions{margin:8px 0 0;padding:0;list-style:none}.types button{text-align:left;cursor:pointer;border:0;border-bottom:1px solid var(--rule-soft);background:0 0;grid-template-columns:12px 52px 1fr auto;align-items:center;gap:2px 8px;width:100%;padding:6px 4px;display:grid}.types button:hover{background:var(--rule-soft)}.types button.on{background:color-mix(in srgb, var(--hl-select) 55%, transparent)}.levels{margin:0;padding:0;list-style:none}.levels li{border-bottom:1px solid var(--rule-soft);grid-template-columns:1fr auto;gap:2px 12px;padding:8px 0;display:grid}.levels li .small{grid-column:1/-1}.swatch{border-radius:2px;width:12px;height:12px}.mk{font-weight:700;font-stretch:92%}.fam{font-size:13px}.sz{color:var(--graphite);grid-column:3/5;font-size:12px}.ct{grid-area:1/4;font-size:13px}.type-why{gap:4px;padding:6px 4px 10px 24px;display:grid}.checks li{border-bottom:1px solid var(--rule-soft);grid-template-columns:64px 1fr;gap:8px;padding:5px 0;font-size:13px;line-height:1.35;display:grid}.lv{font-size:12px;font-weight:650}.lv-OK .lv{color:var(--ok)}.lv-WARN .lv,.lv-REVIEW .lv{color:var(--warn)}.lv-ERROR .lv{color:var(--redline)}.lv-INFO .lv{color:var(--graphite)}.questions li{border-left:3px solid var(--redline);background:var(--redline-soft);margin-bottom:6px;padding:8px 10px;font-size:14px}@media (width<=1100px){.workspace{grid-template-columns:240px 1fr}.panel{border-left:0;border-top:1.5px solid var(--ink);grid-column:1/-1}}.rules{margin:8px 0 0;padding:0;list-style:none}.rules li{border-bottom:1px solid var(--rule-soft);grid-template-columns:76px 1fr;gap:0 8px;padding:6px 0;font-size:13px;display:grid}.rules .rk{font-size:12px;font-weight:650}.rules .rv{font-weight:600}.rules .ra,.rules q,.rules .flag{grid-column:2}.rules q{quotes:"“" "”";font-style:italic}.rules li.once{background:color-mix(in srgb, var(--warn) 10%, transparent)}.rules .flag{color:var(--warn);font-weight:600}.rules.office li{grid-template-columns:1fr}.rules.used li{grid-template-columns:minmax(110px,30%) 1fr}.rules.office .ra{grid-column:1}.rules .layer{background:var(--rule-soft);border-radius:3px;margin-left:8px;padding:1px 6px;font-size:11px;font-weight:650}.rules .layer.l-engineer{background:color-mix(in srgb, var(--hl-select) 55%, transparent)}.rules .layer.l-office{background:color-mix(in srgb, var(--ok) 18%, transparent);color:var(--ok)}.rules .layer.l-default{background:color-mix(in srgb, var(--warn) 15%, transparent);color:var(--warn)}.method{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.method label{border:1.5px solid var(--rule);cursor:pointer;border-radius:4px;align-items:center;gap:6px;padding:6px 10px;font-size:14px;display:flex}.method label.on{border-color:var(--ink);font-weight:650}.keep{cursor:pointer;align-items:center;gap:6px;margin-top:6px;display:flex}.workspace{grid-template-columns:260px minmax(0,1fr) 430px}.register header{justify-items:start;gap:6px;display:grid}.panel{flex-direction:column;gap:0;padding:0;display:flex}.panel>section,.panel>article,.panel-body{padding:14px 16px}.tabs{border-bottom:1.5px solid var(--ink);background:var(--paper);z-index:1;flex-wrap:wrap;display:flex;position:sticky;top:0}.tabs button{cursor:pointer;color:var(--graphite);background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-1.5px;padding:10px 12px;font-weight:560}.tabs button.on{color:var(--ink);border-bottom-color:var(--ink)}.viewer-head{align-items:center}.sheet-name{flex:1;min-width:0}.sheet-name h3{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.seg{border:1.5px solid var(--ink);border-radius:var(--r-sm);flex:none;display:inline-flex;overflow:hidden}.seg button{cursor:pointer;background:0 0;border:0;padding:5px 12px;font-size:13px;font-weight:600}.seg button.on{background:var(--ink);color:var(--paper)}.updating{color:var(--warn);font-weight:600}.meter{border-bottom:1px solid var(--rule);gap:6px;padding-bottom:12px;display:grid}.meter-bar{background:var(--rule-soft);border-radius:4px;height:8px;overflow:hidden}.meter-bar>div{background:var(--ok);height:100%;transition:width .3s}.meter .btn{justify-self:start}.lines{margin:0;padding:0;list-style:none}.line{text-align:left;border:0;border-bottom:1px solid var(--rule-soft);cursor:pointer;background:0 0;border-left:3px solid #0000;grid-template-columns:1fr auto;gap:2px 10px;width:100%;padding:9px 4px 9px 10px;display:grid}.line:hover{background:var(--rule-soft)}.line.on{background:var(--hl-select);color:#16202a}.line.on .meta{color:#3d4650}.line.st-incomplete{border-left-color:var(--redline)}.line.st-review{border-left-color:var(--warn)}.line.done{opacity:.55;border-left-color:var(--ok)}.line .desc{font-size:14px;line-height:1.3}.line .qty{white-space:nowrap;font-weight:650}.line .meta{color:var(--graphite);grid-column:1/-1}.line.st-incomplete .meta{color:var(--redline);font-weight:600}.why{border-bottom:1.5px solid var(--ink);background:var(--sheet);gap:10px;scroll-margin-top:96px;display:grid}.why .big{font-size:26px;font-weight:750;font-stretch:110%}.inputs,.bars{border-collapse:collapse;width:100%;font-size:13px}.inputs th{text-align:left;vertical-align:top;width:28%;padding:5px 6px 5px 0;font-weight:600}.inputs td{vertical-align:top;border-top:1px solid var(--rule-soft);padding:5px 4px}.inputs tr.missing td{color:var(--redline);font-weight:600}.origin{background:var(--rule-soft);border-radius:2px;margin-right:6px;padding:1px 6px;font-size:11px;font-weight:650;display:inline-block}.o-plan{background:var(--hl-footing);color:#10291b}.o-schedule,.o-drawing{background:var(--hl-beam);color:#0e2233}.o-engineer{background:var(--hl-select);color:#2b2600}.o-default{background:var(--redline-soft);color:var(--redline)}.src{color:var(--graphite);word-break:break-word;margin-top:2px;line-height:1.3;display:block}.bars th,.bars td{border-top:1px solid var(--rule-soft);text-align:left;padding:3px 4px}.note{color:var(--warn)}.open{background:var(--redline-soft);border-left:3px solid var(--redline);gap:4px;padding:8px 10px;display:grid}.open .link{text-align:left;color:var(--ink)}.qs ol{gap:14px;margin:0;padding-left:18px;display:grid}.qs li{gap:6px;display:grid}.qs li.focus{background:color-mix(in srgb, var(--hl-select) 35%, transparent);margin-left:-6px;padding:6px}.answer{flex-wrap:wrap;gap:6px;display:flex}.answer input,.answer select{border:1.5px solid var(--rule);border-radius:var(--r-sm);background:var(--sheet);width:120px;padding:5px 8px}.answered{padding:0;list-style:none}.answered li{border-bottom:1px solid var(--rule-soft);grid-template-columns:1fr auto auto;gap:10px;padding:4px 0;display:grid}.rfi{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:8px;padding-bottom:10px;display:flex}.bbs-wrap{background:var(--sheet);flex:1;overflow:auto}.bbs{border-collapse:collapse;width:100%;font-size:13px}.bbs th{background:var(--paper);text-align:left;border-bottom:1.5px solid var(--ink);white-space:nowrap;padding:8px;position:sticky;top:0}.bbs td{border-bottom:1px solid var(--rule-soft);vertical-align:top;padding:6px 8px}.bbs tr{cursor:pointer}.bbs tr:hover td{background:var(--rule-soft)}.bbs tr.st-incomplete td:first-child{box-shadow:inset 3px 0 var(--redline)}.bbs tr.st-review td:first-child{box-shadow:inset 3px 0 var(--warn)}.bbs tr.ref td{color:var(--graphite)}.bbs tfoot td{border-top:1.5px solid var(--ink);font-weight:700}@media (width<=1200px){.workspace{grid-template-columns:220px minmax(0,1fr)}.panel{grid-column:1/-1}}.nav a{white-space:nowrap}.nav-short{display:none}@media (width<=480px){.topbar{padding:0 12px}.brand{font-size:16px}.nav{gap:2px}.nav a{padding:6px 8px;font-size:14px}.nav-long{display:none}.nav-short{display:inline}}.reg-group h3{color:var(--graphite);letter-spacing:0;padding:12px 16px 4px;font-size:12px;font-weight:650}.register button{grid-template-columns:1fr auto;padding:7px 16px}.register .ti{white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.register .no{font-size:12.5px}.register header .btn{margin-top:4px}.tabs{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.tabs button{white-space:nowrap;align-items:center;gap:5px;padding:10px 9px;font-size:14px;display:inline-flex}.badge{background:var(--rule-soft);border-radius:999px;padding:0 6px;font-size:11px;font-weight:700;line-height:18px}.tabs button.on .badge{background:var(--ink);color:var(--paper)}.summary{border-bottom:1px solid var(--rule);gap:10px;padding:14px 16px 12px;display:grid}.tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0;display:grid}.tiles>div{border-left:3px solid var(--ink);padding:2px 0 2px 10px}.tiles dt{color:var(--graphite);font-size:12px}.tiles dd{margin:0;font-size:24px;font-weight:760;font-stretch:112%;line-height:1.15}.tiles dd span{color:var(--graphite);font-size:13px;font-weight:550;font-stretch:100%}.tiles p{color:var(--warn);margin:2px 0 0;font-size:11.5px;line-height:1.3}.chips-row{flex-wrap:wrap;gap:6px;display:flex}.chip-btn{border:1px solid var(--rule);background:var(--sheet);cursor:pointer;border-radius:999px;padding:4px 10px;font-size:13px}.chip-btn:hover{border-color:var(--ink)}.chip-btn.q strong,.chip-btn.p strong{color:var(--redline)}.chip-btn.r strong{color:var(--ok)}.guide{background:color-mix(in srgb, var(--hl-select) 22%, var(--sheet));border:1px solid color-mix(in srgb, var(--hl-select) 60%, var(--rule));border-radius:var(--r-md);gap:6px;margin:12px 16px 0;padding:12px 14px;display:grid}.guide h3{font-size:14px}.guide ol{gap:4px;margin:0;padding-left:18px;font-size:13px;line-height:1.4;display:grid}.guide .link{justify-self:start}.meter h3{font-size:14px}.legend{background:color-mix(in srgb, var(--sheet) 94%, transparent);border:1px solid var(--rule);border-radius:var(--r-md);gap:4px;max-width:280px;padding:8px 10px;display:grid;position:absolute;bottom:12px;left:12px;box-shadow:0 1px 2px #0000000f}.legend ul{gap:2px;margin:0;padding:0;font-size:12.5px;list-style:none;display:grid}.legend li{align-items:center;gap:6px;display:flex}.legend .swatch{border-radius:2px;flex:none;width:12px;height:12px}.legend p{margin:0;font-weight:600}.canvas-tools{align-items:center}.canvas-tools .hint{background:color-mix(in srgb, var(--sheet) 90%, transparent);border-radius:3px;padding:2px 6px}.boq-wrap{background:var(--sheet);flex:1;overflow:auto}.boq{border-collapse:collapse;width:100%;font-size:14px}.boq thead th{background:var(--paper);text-align:left;border-bottom:1.5px solid var(--ink);z-index:1;padding:8px 10px;position:sticky;top:0}.boq .r{text-align:right}.boq tr.sec th{text-align:left;border-bottom:1px solid var(--rule);padding:16px 10px 6px;font-size:13px;font-weight:750;font-stretch:112%}.boq td{border-bottom:1px solid var(--rule-soft);vertical-align:top;padding:8px 10px}.boq tbody tr:not(.sec){cursor:pointer}.boq tbody tr:not(.sec):hover td{background:var(--rule-soft)}.boq tr.on td{background:color-mix(in srgb, var(--hl-select) 45%, transparent)}.boq .mk{white-space:nowrap;font-weight:700;font-stretch:92%}.boq .why-line{color:var(--graphite);margin-top:2px;display:block}.status{white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:650}.s-ok{background:color-mix(in srgb, var(--ok) 15%, transparent);color:var(--ok)}.s-review{background:color-mix(in srgb, var(--warn) 15%, transparent);color:var(--warn)}.s-incomplete{background:var(--redline-soft);color:var(--redline)}.s-approved{background:var(--ink);color:var(--paper)}.seg button{white-space:nowrap}.panel>*{flex:none}.run-steps{border-left:2px solid var(--rule);gap:0;margin:28px 0 12px;padding:0;list-style:none;display:grid}.run-steps li{grid-template-columns:22px 1fr;align-items:center;gap:2px 10px;margin-left:-7px;padding:8px 0;display:grid}.run-steps li .small{grid-column:2}.run-steps .dot{background:var(--paper);border:2px solid var(--rule);border-radius:50%;width:12px;height:12px}.run-steps li.done .dot{background:var(--ok);border-color:var(--ok)}.run-steps li.done{color:var(--graphite)}.run-steps li.now .dot{background:var(--hl-select);border-color:var(--ink);animation:1.2s ease-in-out infinite pulse}.run-steps li.now{font-weight:650}.run-steps li.next{color:var(--graphite);opacity:.7}@keyframes pulse{50%{transform:scale(1.25)}}@media (width<=760px){html,body,#root{height:auto}.shell{height:auto;min-height:100vh}.workspace{flex-direction:column;display:flex}.register{border-right:0;border-bottom:1.5px solid var(--ink);max-height:34vh}.viewer{flex:none;height:62vh}.viewer-head{flex-wrap:wrap;gap:8px}.seg{max-width:100%;overflow-x:auto}.sheet-name h3{white-space:normal}.panel{border-left:0;overflow:visible}.legend{max-width:60%;font-size:12px;bottom:52px;left:8px}.canvas-tools .hint,.boq td:nth-child(5),.boq th:nth-child(5){display:none}.viewer-head>*{min-width:0}.sheet-name{flex:100%;order:2}.seg button{padding:5px 8px;font-size:12px}}.term{font:inherit;color:inherit;cursor:help;text-align:inherit;text-underline-offset:3px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:1.5px;-webkit-text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);background:0 0;border:0;padding:0}.term:hover,.term[aria-expanded=true]{text-decoration-style:solid;text-decoration-color:currentColor}.info{vertical-align:1px;border:1.25px solid var(--graphite);width:17px;height:17px;color:var(--graphite);cursor:help;background:0 0;border-radius:50%;flex:none;place-items:center;margin-left:4px;padding:0;font-size:11px;font-weight:700;line-height:1;display:inline-grid}.info:hover,.info[aria-expanded=true]{border-color:var(--ink);color:var(--paper);background:var(--ink)}.pop{z-index:50;background:var(--sheet);width:min(320px,100vw - 16px);color:var(--ink);border:1.5px solid var(--ink);border-radius:var(--r-md);text-align:left;letter-spacing:0;gap:6px;padding:12px 14px;font-size:13.5px;font-weight:400;font-stretch:100%;line-height:1.45;display:grid;position:fixed;box-shadow:0 6px 24px #00000024}.pop p{margin:0}.pop .pop-title{font-weight:700}.pop a{justify-self:start;font-size:13px;font-weight:600}.tip{z-index:60;pointer-events:none;background:var(--ink);max-width:280px;color:var(--paper);border-radius:4px;padding:6px 9px;font-size:12.5px;font-weight:450;line-height:1.4;position:fixed;transform:translate(-50%);box-shadow:0 2px 8px #0000002e}.tip.above{transform:translate(-50%,-100%)}.state{align-content:start;gap:14px;display:grid}.state .cta{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.loading:after{content:"";background:var(--hl-select);border:1.5px solid var(--ink);vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-left:8px;animation:1.2s ease-in-out infinite pulse;display:inline-block}.panel-intro{margin-bottom:12px;line-height:1.45}.table-intro{border-bottom:1px solid var(--rule);background:var(--paper);max-width:none;padding:10px 12px;line-height:1.45}.empty{border:1px dashed var(--rule);border-radius:var(--r-md);color:var(--graphite);margin:8px 0;padding:12px 14px}.error-text{color:var(--redline);font-weight:600}.inputs-head{align-items:center;font-weight:650;display:flex}.tabs{align-items:center;padding-right:10px}.tabs [role=tablist]{scrollbar-width:none;flex:1;min-width:0;display:flex;overflow-x:auto}.tabs .info{margin-left:auto}.tabs button:focus-visible,.seg button:focus-visible{outline-offset:-3px}.meter-row{grid-template-columns:1fr auto;align-items:center;gap:10px;display:grid}.meter h3{align-items:center;display:flex}.zoom{display:inline-flex}.zoom .btn{justify-content:center;min-width:30px;font-size:15px;line-height:1}.zoom .btn:first-child{border-radius:var(--r-sm) 0 0 var(--r-sm)}.zoom .btn:last-child{border-radius:0 var(--r-sm) var(--r-sm) 0;border-left:0}.legend .link{color:var(--ink);font-weight:600}.ct.off{color:var(--redline);font-weight:650}.lv{cursor:help}.fine{margin-top:12px}.fine summary{cursor:pointer;color:var(--graphite);padding:6px 0;font-weight:600}.fine summary:hover{color:var(--ink)}.boq tbody tr:focus-visible,.bbs tbody tr:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.bbs .r{text-align:right}.bbs q{quotes:"“" "”"}.origin[data-tip]{cursor:help}.why .big{line-height:1.1}.why header{gap:4px;display:grid}.answered li span:first-child{overflow-wrap:anywhere}.qs li{line-height:1.45}.answer .btn{white-space:nowrap}.run-page .eyebrow{color:var(--graphite);letter-spacing:.02em;margin-bottom:6px;font-weight:650}.run-meter{gap:6px;max-width:420px;margin-top:24px;display:grid}.run-page .run-steps,.run-page>p.small{margin-top:16px}.inputs td.num{white-space:nowrap}.bbs td:nth-child(10){min-width:220px}.bbs td:nth-child(11){min-width:260px}.page.narrow{flex:1;max-width:none;padding-inline:max(20px,50% - 360px)}.sheet-pick{display:none}@media (width<=760px){.register{max-height:none;overflow:visible}.register header{grid-template-columns:1fr auto;align-items:center;gap:4px 12px;padding:12px 16px}.register header h2,.register header p{grid-column:1/-1}.register header .btn{grid-area:3/2;margin-top:0}.reg-group{display:none}.sheet-pick{grid-area:3/1;gap:2px;min-width:0;font-weight:600;display:grid}.sheet-pick select{border:1.5px solid var(--ink);border-radius:var(--r-sm);background:var(--sheet);width:100%;min-width:0;padding:6px 8px;font-size:14px;font-weight:500}.viewer-head{padding:10px 12px}.sheet-name h3{font-size:14px}.legend{max-width:none;padding:6px 8px;inset:8px 8px auto}.legend ul{flex-wrap:wrap;gap:2px 12px;font-size:12px;display:flex}.legend .swatch{width:10px;height:10px}.canvas-tools{bottom:8px;right:8px}.table-intro{padding:10px 12px}.tabs{padding-right:0}.tabs [role=tablist]{justify-content:space-between;padding:0 4px}.tabs button{padding:10px 5px;font-size:13px}}.run-steps li.now .small{font-weight:450}.workspace{grid-template-columns:min(var(--reg-w,260px), 40%) 0 minmax(0, 1fr) 0 min(var(--panel-w,430px), 55%);grid-template-rows:minmax(0,1fr);grid-template-areas:"reg split-reg view split-side panel"}.register{grid-area:reg}.viewer{grid-area:view}.panel{grid-area:panel}.split-reg{grid-area:split-reg}.split-side{grid-area:split-side}.split-bottom{grid-area:split-bottom;display:none}.splitter{z-index:4;touch-action:none;outline:none;position:relative}.split-x{cursor:col-resize;width:13px;margin-left:-6px}.split-y{cursor:row-resize;height:13px;margin-top:-6px}.splitter:after{content:"";background:0 0;transition:background .12s;position:absolute}.split-x:after{width:3px;top:0;bottom:0;left:5px}.split-y:after{height:3px;top:5px;left:0;right:0}.splitter:before{content:"";z-index:1;background:var(--paper);border:1.5px solid var(--ink);border-radius:3px;position:absolute}.split-x:before{width:7px;height:30px;margin-top:-15px;top:50%;left:3px}.split-y:before{width:30px;height:7px;margin-left:-15px;top:3px;left:50%}.splitter:hover:after,.splitter.on:after,.splitter:hover:before,.splitter.on:before{background:var(--ink)}.splitter:focus-visible:after{background:var(--redline)}.splitter:focus-visible:before{background:var(--redline);border-color:var(--redline)}body.resizing-x,body.resizing-x *{-webkit-user-select:none;user-select:none;cursor:col-resize!important}body.resizing-y,body.resizing-y *{-webkit-user-select:none;user-select:none;cursor:row-resize!important}@media (width<=1200px){.workspace{grid-template-columns:min(var(--reg-w,220px), 40%) 0 minmax(0, 1fr);grid-template-rows:minmax(160px, 1fr) 0 min(var(--panel-h,50%), calc(100% - 160px));grid-template-areas:"reg split-reg view""split-bottom split-bottom split-bottom""panel panel panel"}.panel{border-left:0;border-top:1.5px solid var(--ink)}.split-side{display:none}.split-bottom{display:block}}@media (width<=760px){.splitter,.split-bottom{display:none}}.nav{align-items:center}.theme{margin-left:4px;position:relative}.theme-btn{border:1.5px solid var(--rule);border-radius:var(--r-sm);width:34px;height:34px;color:var(--ink);cursor:pointer;background:0 0;place-items:center;display:grid}.theme-btn:hover,.theme-btn[aria-expanded=true]{border-color:var(--ink)}.theme-menu{z-index:30;background:var(--sheet);border:1.5px solid var(--ink);border-radius:var(--r-md);min-width:196px;box-shadow:4px 4px 0 var(--rule-soft);padding:4px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.theme-menu button{color:var(--ink);border-radius:var(--r-sm);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;font-size:14px;font-weight:560;display:flex}.theme-menu button:hover{background:var(--rule-soft)}.theme-menu button:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.theme-menu button[aria-checked=true]{background:color-mix(in srgb, var(--hl-select) 45%, transparent)}.theme-menu button[aria-checked=true]:after{content:"✓";margin-left:auto;font-weight:700}@media (width<=480px){.topbar{gap:8px}.nav{gap:0}.nav a{padding:6px}.theme{margin-left:2px}.theme-btn{width:32px;height:32px}}@media (width<=380px){.nav a{padding:6px 4px;font-size:13.5px}}.flow-steps{flex-wrap:wrap;gap:6px;margin:0 0 20px;padding:0;font-size:13.5px;list-style:none;display:flex}.flow-steps li{border:1px solid var(--rule);color:var(--graphite);border-radius:999px;align-items:center;gap:6px;padding:3px 10px 3px 4px;display:flex}.flow-steps li .num{background:var(--rule-soft);border-radius:50%;place-items:center;width:20px;height:20px;font-size:12px;font-weight:700;display:grid}.flow-steps li.done{color:var(--ink)}.flow-steps li.done .num{background:var(--ok);color:var(--paper)}.flow-steps li.now{color:var(--ink);border-color:var(--ink);font-weight:650}.flow-steps li.now .num{background:var(--ink);color:var(--paper)}.check-page .eyebrow{color:var(--graphite);letter-spacing:.02em;margin-bottom:6px;font-weight:650}.checking{align-items:center;gap:10px;margin-top:24px;font-weight:600;display:flex}.checking .dot{background:var(--hl-select);border:2px solid var(--ink);border-radius:50%;width:12px;height:12px;animation:1.2s ease-in-out infinite pulse}.check-tally{border-top:1.5px solid var(--ink);border-bottom:1px solid var(--rule);flex-wrap:wrap;margin:24px 0 0;padding:0;list-style:none;display:flex}.check-tally li{color:var(--graphite);margin-right:18px;padding:10px 18px 10px 0;font-size:14px}.check-tally strong{color:var(--ink);font-size:26px;font-weight:800;font-stretch:118%;line-height:1.1;display:block}.check-tally li.bad strong{color:var(--redline)}.check-sec{gap:12px;margin-top:36px;display:grid}.check-sec h2,.check-run h2{border-bottom:1.5px solid var(--ink);padding-bottom:8px}.found-list{margin:0}.found-list>div{border-bottom:1px solid var(--rule-soft);grid-template-columns:minmax(160px,34%) 1fr;gap:16px;padding:9px 0;font-size:14.5px;display:grid}.found-list dt{font-weight:650}.found-list dt:before{content:"✓";color:var(--ok);margin-right:8px;font-weight:800}.found-list dd{color:var(--graphite);overflow-wrap:anywhere;margin:0}.sheet-read{margin:4px 0 0;padding:0;list-style:none}.sheet-read li{border-bottom:1px solid var(--rule-soft);grid-template-columns:110px 1fr auto;gap:12px;padding:5px 0;display:grid}.need-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.need-item{border-left:3px solid var(--warn);gap:4px;padding:8px 0 8px 14px;display:grid}.need-item.required{border-left-color:var(--redline)}.need-item p{margin:0}.need-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.need-tag{border-radius:3px;padding:1px 8px;font-size:12px;font-weight:700}.need-tag.required{background:var(--redline-soft);color:var(--redline)}.need-tag.advised{background:color-mix(in srgb, var(--warn) 15%, transparent);color:var(--warn)}.ok-text{color:var(--ok);font-weight:600}.check-run{border:1.5px solid var(--ink);border-radius:var(--r-md);background:var(--sheet);gap:12px;margin-top:40px;padding:18px 20px 20px;display:grid}.check-run h2,.check-run p{margin:0}.check-run .cost strong{font-size:18px}.open-items{border-left:3px solid var(--warn);gap:6px;padding:4px 0 4px 14px;display:grid}.open-items ul{gap:4px;margin:0;padding-left:18px;display:grid}.run-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.check-link{margin-top:6px;font-weight:600;display:inline-block}.proj-note{color:var(--graphite);margin-top:8px}.proj-note summary{cursor:pointer;color:var(--ink);font-weight:600}.proj-note p{margin:4px 0 0;line-height:1.45}.try-flow{gap:14px;margin-top:32px;display:grid}.try-flow h2{border-bottom:1.5px solid var(--ink);padding-bottom:8px}.try-flow .run-guide{border-top:0}.check-guide{gap:8px;display:grid}.check-guide p{margin:0}@media (width<=640px){.found-list>div{grid-template-columns:1fr;gap:2px}.sheet-read li{grid-template-columns:70px 1fr}.sheet-read li>:last-child{grid-column:2}.check-run{padding:14px}}.office-guide{border:1.5px solid var(--rule);border-radius:var(--r-md);background:var(--sheet);gap:8px;margin-top:16px;padding:12px 14px;display:grid}.office-guide>*{margin:0}.office-guide h4{font-size:14px}.og-form{gap:8px;display:grid}.og-drop{text-align:center;gap:6px;margin-top:0;padding:16px 12px}.og-paste summary{cursor:pointer;color:var(--graphite);padding:2px 0;font-weight:600}.og-paste summary:hover{color:var(--ink)}.og-paste[open]{gap:8px;display:grid}.og-paste .field{margin-top:6px}.og-paste textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:120px;font:inherit;color:var(--ink);background:var(--paper);border:1.5px solid var(--rule);border-radius:var(--r-sm);padding:8px 10px;font-size:13px;font-weight:400}.og-paste textarea:focus{border-color:var(--ink);outline:none}.og-paste .btn,.og-form>.link{justify-self:start}.og-name{overflow-wrap:anywhere}.og-cut{color:var(--warn);font-weight:600}.og-preview{border-left:3px solid var(--rule);background:var(--paper);color:var(--graphite);white-space:pre-line;overflow-wrap:anywhere;max-height:160px;margin:0;padding:8px 10px;overflow:auto}.og-actions{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.drawing-guide{gap:8px;display:grid}.drawing-guide>*{margin:0}.dg-office{border-radius:var(--r-sm);background:color-mix(in srgb, var(--ok) 12%, transparent);padding:6px 10px}.dg-group summary{cursor:pointer;border-bottom:1px solid var(--rule);padding:6px 0}.dg-list{margin:0;padding:0;list-style:none}.dg-list li{border-bottom:1px solid var(--rule-soft);gap:2px;padding:6px 0;font-size:13px;display:grid}.dg-line,.dg-src{overflow-wrap:anywhere}.dg-src q{quotes:"“" "”";font-style:italic}.dg-taken{margin-top:8px;font-size:13.5px}.home,.results{flex:1;overflow:auto}.home>section,.results-body>section,.results-head{padding-inline:16px}.hero{gap:32px;max-width:1180px;margin:0 auto;padding:56px 16px 32px;display:grid}.hero h1{letter-spacing:-.02em;max-width:20ch;font-size:clamp(32px,4.6vw,58px);font-weight:780;font-stretch:118%}.hero .lead{max-width:60ch;color:var(--graphite);margin-top:16px;font-size:18px}.cta{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.hero-figure{border:1.5px solid var(--ink);background:#fff;margin:0}.hero-figure img{width:100%;height:auto;display:block}.hero-figure figcaption{border-top:1.5px solid var(--ink);background:var(--paper);padding:8px 12px}.findings,.how{max-width:1180px;margin:0 auto;padding-block:40px}.findings h2,.how h2{margin-bottom:20px}.finding-list{border-top:1.5px solid var(--ink);margin:0;padding:0;list-style:none}.finding-list li{border-bottom:1px solid var(--rule);grid-template-columns:minmax(150px,220px) 1fr;gap:24px;padding:24px 0;display:grid}.fig{letter-spacing:-.03em;font-size:64px;font-weight:800;font-stretch:125%;line-height:1}.fig span{color:var(--graphite);letter-spacing:0;font-size:18px;font-weight:600;font-stretch:100%}.finding-list h3{margin-bottom:8px;font-size:20px}.finding-list p{margin-bottom:10px}.finding-list a{font-weight:620}.steps{counter-reset:s;border-top:1.5px solid var(--ink);grid-template-columns:repeat(3,1fr);gap:0;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:s;border-bottom:1px solid var(--rule);padding:18px 20px 22px 0}.steps li:before{content:counter(s);margin-bottom:6px;font-size:22px;font-weight:800;font-stretch:125%;display:block}.steps h3{margin-bottom:4px}.steps p{color:var(--graphite);font-size:14px}.results{grid-template-columns:240px minmax(0,1fr);align-items:start;display:grid}.toc{gap:8px;padding:32px 16px 16px 20px;display:grid;position:sticky;top:0}.toc ol{gap:2px;margin:0;padding:0;list-style:none;display:grid}.toc a{border-left:2px solid var(--rule);padding:5px 8px;font-size:14px;text-decoration:none;display:block}.toc a:hover{border-left-color:var(--ink);background:var(--rule-soft)}.results-body{max-width:820px;padding:32px 0 96px}.results-head{margin-bottom:24px}.results-head .lead{color:var(--graphite);margin-top:12px;font-size:17px}.results-body>section{border-top:1.5px solid var(--ink);gap:16px;padding-block:36px;scroll-margin-top:8px;display:grid}.results-body figure{border:1px solid var(--rule);background:#fff;margin:0}.results-body figure img{width:100%;height:auto;display:block}.results-body figcaption{background:var(--paper);border-top:1px solid var(--rule);padding:8px 10px}.source{color:var(--graphite);font-stretch:92%}.caveat{border-left:3px solid var(--warn);padding:4px 0 4px 14px}.caveat ul{gap:4px;margin:6px 0 0;padding-left:18px;display:grid}.seg{flex-wrap:wrap}.school{gap:12px;display:grid}.hbars{gap:2px;display:grid}.hb-axis{height:18px;color:var(--graphite);margin-left:calc(38% + 12px);margin-right:96px;font-size:11px;position:relative}.hb-axis span{position:absolute;transform:translate(-50%)}.hb-axis .target{color:var(--ink);font-weight:700}.hb-row{cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:38% 1fr 84px;align-items:center;gap:12px;padding:5px 0;display:grid}.hb-row:hover,.hb-row.on{background:var(--rule-soft)}.hb-name{font-size:14px}.hb-track{background:var(--rule-soft);border-radius:0 4px 4px 0;height:12px;position:relative}.hb-bar{background:var(--graphite);border-radius:0 4px 4px 0;transition:width .35s;position:absolute;inset:0 auto 0 0}.hb-row.low .hb-bar{background:var(--redline)}.hb-target{border-left:2px dashed var(--ink);position:absolute;top:-4px;bottom:-4px}.hb-val{align-items:center;gap:6px;font-weight:700;display:flex}.tag{color:var(--redline);white-space:nowrap;font-size:11px;font-weight:650}.item-why{background:var(--sheet);border:1px solid var(--rule);border-left:3px solid var(--ink);padding:12px 14px}.item-why dl{grid-template-columns:140px 1fr;gap:4px 12px;margin:8px 0 0;font-size:14px;display:grid}.item-why dt{color:var(--graphite)}.item-why dd{margin:0}.totals{gap:2px;display:grid}.learn{gap:18px;display:grid}.stepper{grid-template-columns:repeat(3,1fr);gap:6px;margin:0;padding:0;list-style:none;display:grid}.stepper button{text-align:left;border:1.5px solid var(--rule);background:var(--sheet);cursor:pointer;border-radius:var(--r-sm);gap:4px;width:100%;height:100%;padding:10px 12px;font-weight:560;display:grid}.stepper button.on{border-color:var(--ink);box-shadow:inset 0 -4px 0 var(--hl-select)}.stepper .n{font-weight:800;font-stretch:125%}.learn-out{flex-wrap:wrap;align-items:baseline;gap:40px;display:flex}.err{gap:6px;font-size:48px;font-weight:800;font-stretch:120%;line-height:1;display:grid}.err span{color:var(--graphite);font-size:13px;font-weight:550;font-stretch:100%}.learn-out>.small{flex-basis:100%}.robust{gap:8px;display:grid}.slider{gap:6px;max-width:360px;display:grid}.slider input{width:100%;accent-color:var(--ink)}.robust-table,.method-table,.wh-table{border-collapse:collapse;width:100%;font-size:14px}.robust-table th,.method-table th,.wh-table th{text-align:left;border-bottom:1.5px solid var(--ink);padding:6px 8px 6px 0;font-weight:650}.robust-table td,.method-table td,.wh-table td{border-bottom:1px solid var(--rule-soft);padding:6px 8px 6px 0}.robust-table tr.on td,.method-table tr.on td{background:var(--rule-soft);font-weight:650}.robust-table tr.on td:first-child,.method-table tr.on td:first-child{box-shadow:inset 3px 0 var(--ink);padding-left:8px}.method-table td.good{color:var(--ok);font-weight:750}.beam-svg{background:var(--sheet);border:1px solid var(--rule);width:100%;max-width:640px;height:auto}.beam-svg .col{fill:var(--rule);stroke:var(--drawing-line);stroke-width:1px}.beam-svg .slab{fill:none;stroke:var(--drawing-line);stroke-width:1px;stroke-dasharray:4 3}.beam-svg .beam-outline{fill:none;stroke:var(--drawing-line);stroke-width:1.5px}.beam-svg .measured{fill:var(--hl-beam);opacity:.75;transition:all .3s}.beam-svg .dim{fill:var(--drawing-text);font-size:12px;font-family:var(--font)}.beam-svg .strong{fill:var(--ink);font-weight:700}.count-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 24px;margin:0;padding:0;list-style:none;display:grid}.count-list li{border-bottom:1px solid var(--rule-soft);justify-content:space-between;gap:12px;padding:6px 0;display:flex}.asked{color:var(--warn);font-size:13px;font-weight:650}.issues{gap:6px;margin:0;padding-left:20px;display:grid}.issues li::marker{color:var(--redline);font-weight:700}.callout{gap:12px;display:grid}.callout .field input{padding:10px 12px;font-size:20px;font-stretch:95%}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--rule);background:var(--sheet);cursor:pointer;border-radius:999px;padding:3px 10px;font-size:13px}.parsed{border:1.5px solid var(--ink);grid-template-columns:repeat(4,1fr);gap:0;margin:0;display:grid}.parsed div{border-right:1px solid var(--rule);padding:10px 12px}.parsed div:last-child{border-right:0}.parsed dt{color:var(--graphite);font-size:12px}.parsed dd{margin:0;font-size:22px;font-weight:750}.parsed>p{grid-column:1/-1;margin:0;padding:12px}.examples{columns:2;margin:10px 0;padding:0;list-style:none}.examples li{break-inside:avoid;justify-content:space-between;gap:8px;padding:3px 0;display:flex}.examples li.miss .link{color:var(--redline)}@media (width<=900px){.results{grid-template-columns:1fr}.toc{display:none}.steps{grid-template-columns:1fr}.finding-list li{grid-template-columns:1fr;gap:8px}.fig{font-size:44px}.hb-row{grid-template-columns:1fr 60px}.hb-track{grid-area:2/1/auto/-1}.hb-axis{display:none}.stepper{grid-template-columns:1fr}.parsed{grid-template-columns:repeat(2,1fr)}.examples{columns:1}.item-why dl{grid-template-columns:1fr}}.footer{border-top:1.5px solid var(--ink);flex-wrap:wrap;justify-content:space-between;gap:32px;max-width:1180px;margin:48px auto 0;padding:24px 16px 40px;font-size:14px;display:flex}.footer p{margin-bottom:6px}.footer nav{flex-wrap:wrap;align-content:start;gap:16px;display:flex}.results-body .footer{margin-inline:16px}.page .footer{padding-inline:0}.try-section{gap:12px;margin-top:44px;display:grid}.try-section h2{border-bottom:1.5px solid var(--ink);padding-bottom:8px}.submit-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.filelist .fname{overflow-wrap:anywhere}.drop .btn{margin-top:6px}.guide-table{border-collapse:collapse;width:100%;font-size:14px}.guide-table th,.guide-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--rule-soft);padding:9px 10px 9px 0}.guide-table thead th{color:var(--graphite);border-bottom:1px solid var(--rule);padding-top:0;font-size:12px;font-weight:650}.guide-table tbody th{width:30%;font-weight:650}.guide-table td:nth-child(2){white-space:nowrap;width:1%}.need{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:650}.n-needed{background:color-mix(in srgb, var(--ok) 15%, transparent);color:var(--ok)}.n-helps{background:color-mix(in srgb, var(--hl-beam) 40%, transparent);color:var(--ink)}.n-leave{background:var(--rule-soft);color:var(--graphite)}.run-guide{counter-reset:r;border-top:1.5px solid var(--ink);grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;display:grid}.run-guide li{counter-increment:r;border-bottom:1px solid var(--rule);align-content:start;gap:4px;padding:14px 16px 16px 0;display:grid}.run-guide li:before{content:counter(r);font-size:20px;font-weight:800;font-stretch:125%}.run-guide h3{gap:2px;font-size:15px;display:grid}.run-guide h3 span{font-size:12.5px;font-weight:550;font-stretch:100%}.run-guide p{color:var(--graphite);font-size:14px}.plain-list{gap:8px;margin:0;padding-left:18px;display:grid}.plain-list li::marker{color:var(--graphite)}.plain-list.numbered{padding-left:20px}.control-group{gap:6px;display:grid}.control-group+.control-group{margin-top:12px}.control-list{border-top:1px solid var(--rule);margin:0}.control-list>div{border-bottom:1px solid var(--rule-soft);grid-template-columns:minmax(150px,30%) 1fr;gap:16px;padding:9px 0;font-size:14px;display:grid}.control-list dt{font-weight:650}.control-list dd{color:var(--graphite);margin:0}.glossary{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;margin:0;display:grid}.glossary>div{border-bottom:1px solid var(--rule-soft);padding:12px 0;scroll-margin-top:12px}.glossary>div:target{background:color-mix(in srgb, var(--hl-select) 35%, transparent);box-shadow:-8px 0 0 color-mix(in srgb, var(--hl-select) 35%, transparent)}.glossary dt{font-weight:700}.glossary dd{color:var(--graphite);margin:4px 0 0;font-size:14px}.help .results-body>section h3{margin-top:8px}@media (width<=900px){.run-guide{grid-template-columns:1fr 1fr}}@media (width<=640px){.run-guide,.glossary{grid-template-columns:1fr}.control-list>div{grid-template-columns:1fr;gap:2px}.guide-table thead{display:none}.guide-table tr{border-bottom:1px solid var(--rule-soft);grid-template-columns:1fr auto;gap:2px 10px;padding:10px 0;display:grid}.guide-table th,.guide-table td{border:0;padding:0;width:auto!important}.guide-table td:last-child{color:var(--graphite);grid-column:1/-1}}.swatch-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 24px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.swatch-list li{align-items:center;gap:8px;display:flex}.swatch-list .swatch{border-radius:2px;flex:none;width:14px;height:14px}.swatch-list .swatch.views{border:1.5px dashed var(--redline)}@media (width<=640px){.results-body .seg{width:100%;display:grid}.results-body .seg button{text-align:left;white-space:normal;padding:8px 12px}.results-body .seg button+button{border-top:1px solid var(--rule)}}.ex-head{gap:6px;display:grid}.ex-kind{color:var(--graphite);font-size:16px}.ex-status{border-radius:999px;justify-self:start;padding:2px 10px;font-size:12px;font-weight:650}.ex-status.st-tested{background:color-mix(in srgb, var(--ok) 15%, transparent);color:var(--ok)}.ex-status.st-developing{background:color-mix(in srgb, var(--warn) 16%, transparent);color:var(--warn)}.ex-status.st-study{background:var(--rule-soft);color:var(--graphite)}.ex-facts{border-top:1px solid var(--rule);grid-template-columns:1fr 1fr;gap:0 24px;margin:0;font-size:14px;display:grid}.ex-facts>div{border-bottom:1px solid var(--rule-soft);grid-template-columns:80px 1fr;gap:12px;padding:8px 0;display:grid}.ex-facts>div.wide{grid-column:1/-1}.ex-facts dt{font-weight:650}.ex-facts dd{margin:0}.ex-facts a{white-space:nowrap;font-weight:620}.ex-thumbs{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:4px 0 0;padding:0;list-style:none;display:grid}.ex-thumbs.n1{grid-template-columns:minmax(0,1fr)}.ex-thumbs.n2,.ex-thumbs.n4{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-thumbs button{text-align:left;cursor:zoom-in;background:0 0;border:0;align-content:start;gap:8px;width:100%;height:100%;padding:0;display:grid}.ex-thumbs .paper{aspect-ratio:1.414;border:1px solid var(--rule);background:#fff;padding:6px;transition:border-color .15s,box-shadow .15s;display:block}.ex-thumbs.n1 .paper{aspect-ratio:auto}.ex-thumbs img{object-fit:contain;width:100%;height:100%;display:block}.ex-thumbs.n1 img{height:auto}.ex-thumbs button:hover .paper,.ex-thumbs button:focus-visible .paper{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.ex-thumbs button:focus-visible{outline:none}.ex-thumbs .small{color:var(--graphite)}.ex-results{gap:10px;display:grid}.ex-count{grid-template-columns:minmax(0,1fr);max-width:680px}.ex-count li span{color:var(--graphite)}.ex-count li strong{text-align:right}.ex-progress{grid-template-columns:1fr 1fr;gap:24px;display:grid}.ex-progress h4{margin:0 0 8px;font-size:14px;font-weight:680}.ex-works li{border-left:3px solid var(--ok);padding:2px 0 2px 12px;list-style:none}.ex-todo li{border-left:3px solid var(--warn);padding:2px 0 2px 12px;list-style:none}.ex-works,.ex-todo{padding-left:0;font-size:14px}.ex-links{margin-top:4px}.lightbox{border:1.5px solid var(--ink);border-radius:var(--r-md);background:var(--paper);width:min(1240px,100vw - 32px);max-width:none;max-height:calc(100vh - 32px);color:var(--ink);padding:0;overflow:hidden}.lightbox[open]{flex-direction:column;display:flex}.lightbox::backdrop{background:#0a0e12b8}.lightbox-bar{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 10px 16px;display:flex}.lightbox-actions{gap:6px;display:flex}.lightbox-actions .btn{padding:6px 12px}.lightbox-img{background:#fff;flex:1;justify-content:center;align-items:flex-start;min-height:0;display:flex;overflow:auto}.lightbox-img img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 150px);display:block}.lightbox-cap{color:var(--graphite);border-top:1px solid var(--rule);padding:8px 16px 12px}.lightbox-hint{display:none}@media (width<=640px){.ex-facts{grid-template-columns:1fr}.ex-facts>div{grid-template-columns:1fr;gap:2px}.ex-thumbs,.ex-thumbs.n2,.ex-thumbs.n4{grid-template-columns:minmax(0,1fr)}.ex-progress{grid-template-columns:1fr;gap:16px}.ex-count li{flex-direction:column;gap:0}.ex-count li strong{text-align:left}.lightbox{border:0;border-radius:0;width:100vw;height:100dvh;max-height:100dvh}.lightbox-img{display:block}.lightbox-img img{width:220vw;max-width:none;max-height:none}.lightbox-hint{display:block}}.landing .eyebrow{color:var(--graphite);margin-bottom:10px;font-size:14px;font-weight:650}.landing .hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:48px;padding-top:64px}.landing .hero h1{max-width:18ch;font-size:clamp(32px,3.9vw,54px)}.landing .cta{align-items:center}.text-link{padding:8px 4px;font-weight:620}.trace{background:var(--sheet);border:1.5px solid var(--ink);border-radius:var(--r-md);box-shadow:6px 6px 0 var(--rule-soft);gap:10px;margin:0;padding:16px 18px;display:grid}.trace-head{color:var(--graphite);border-bottom:1px solid var(--rule);justify-content:space-between;gap:12px;margin:0;padding-bottom:8px;font-weight:600;display:flex}.trace-line{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.trace-item{margin:0;font-size:17px;font-weight:680}.trace-qty{white-space:nowrap;margin:0;font-size:34px;font-weight:800;font-stretch:118%;line-height:1}.trace-qty span{color:var(--graphite);font-size:16px;font-weight:600}.trace-formula{color:var(--graphite);margin:0;font-size:14px}.trace-inputs{border-top:1px solid var(--rule);gap:8px;margin:0;padding-top:10px;display:grid}.trace-inputs>div{grid-template-columns:minmax(110px,auto) 1fr;align-items:baseline;gap:4px 12px;display:grid}.trace-inputs dt{color:var(--graphite);font-size:14px}.trace-inputs dt strong{color:var(--ink)}.trace-inputs dd{margin:0;font-size:13.5px}.trace-inputs q,.out q{quotes:"“" "”";font-stretch:92%}.trace figcaption{border-top:1px dashed var(--rule);padding-top:8px}.land{border-top:1.5px solid var(--ink);gap:28px;max-width:1180px;margin:0 auto;padding-block:48px;scroll-margin-top:8px;display:grid}.land-head{gap:8px;max-width:70ch;display:grid}.land-head h2{font-size:clamp(24px,2.6vw,32px);font-weight:760}.land-cols{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.land-cols h3{margin-bottom:10px}.tick-list,.red-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.tick-list li{border-left:3px solid var(--ok);padding:2px 0 2px 12px}.tick-list li.no,.red-list li{border-left-color:var(--redline)}.red-list li{border-left:3px solid var(--redline);padding:2px 0 2px 12px}.sheet-list{border-top:1px solid var(--rule);margin:0 0 12px;display:grid}.sheet-list>div{border-bottom:1px solid var(--rule-soft);grid-template-columns:170px 1fr;gap:12px;padding:9px 0;display:grid}.sheet-list dt{font-weight:650}.sheet-list dd{color:var(--graphite);margin:0;font-size:14px}.out{border-top:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);align-items:start;gap:32px;padding-top:20px;display:grid}.out:first-of-type{border-top:0;padding-top:0}.out-text h3{margin-bottom:8px;font-size:19px}.out-text p{color:var(--graphite)}.out-sheet{background:var(--sheet);border:1px solid var(--rule);border-radius:var(--r-sm);overflow-x:auto}.mini{border-collapse:collapse;width:100%;font-size:13.5px}.mini th{text-align:left;color:var(--graphite);border-bottom:1.5px solid var(--ink);white-space:nowrap;padding:8px 10px;font-size:12px;font-weight:650}.mini td{border-bottom:1px solid var(--rule-soft);vertical-align:top;padding:6px 10px}.mini tr:last-child td{border-bottom:0}.mini .r{text-align:right;white-space:nowrap}.out-list{gap:8px;margin:0;padding:0;display:grid}.q-list{list-style:none}.q-list li{border-left:3px solid var(--redline);background:var(--redline-soft);gap:4px;padding:10px 12px;display:grid}.q-list p{margin:0}.rfi-list{background:var(--sheet);border:1px solid var(--rule);border-left:3px solid var(--redline);gap:6px;margin:0;padding:12px 12px 12px 34px;display:grid}.rfi-list li::marker{color:var(--redline);font-weight:700}.review-item{border-left:3px solid var(--warn);margin:0;padding:6px 0 6px 12px}.review-item .lv{color:var(--warn);margin-right:6px}.workbook{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--sheet);margin:0;display:grid}.workbook>div{border-bottom:1px solid var(--rule-soft);grid-template-columns:150px 1fr;gap:12px;padding:9px 12px;display:grid}.workbook>div:last-child{border-bottom:0}.workbook dt{font-size:14px;font-weight:650}.workbook dt:before{content:"";border:1.5px solid var(--ink);vertical-align:-1px;background:var(--ok);opacity:.85;border-radius:2px;width:10px;height:10px;margin-right:8px;display:inline-block}.workbook dd{color:var(--graphite);margin:0;font-size:14px}.land-figure{margin-top:4px}.layers{border-top:1px solid var(--rule);gap:0;margin:12px 0;padding:0;list-style:none;display:grid}.layers li{border-bottom:1px solid var(--rule-soft);grid-template-columns:130px 1fr;align-items:baseline;gap:12px;padding:9px 0;font-size:14px;display:grid}.lay{border-radius:3px;justify-self:start;padding:2px 8px;font-size:12px;font-weight:650}.lay-answer{background:var(--hl-select);color:#2b2600}.lay-drawing{background:var(--hl-beam);color:#0e2233}.lay-office{background:color-mix(in srgb, var(--ok) 18%, transparent);color:var(--ok)}.lay-default{background:color-mix(in srgb, var(--warn) 15%, transparent);color:var(--warn)}.trust-notes{gap:20px;display:grid}.trust-notes h3{margin-bottom:6px}.trust-notes p{color:var(--graphite)}.wx-sum{border:1.5px solid var(--ink);border-radius:var(--r-md);background:var(--sheet);justify-items:start;gap:12px;padding:16px 18px;display:grid}.wx-sum>*{max-width:72ch;margin:0}.wx-sum h3{font-size:20px}.wx-sum-tag{background:var(--ink);color:var(--paper);border-radius:3px;padding:1px 8px;font-weight:700}.wx-sum-figs{grid-template-columns:1fr 1fr;gap:24px;width:100%;max-width:none;display:grid}.wx-sum-figs .fig{color:var(--ink);margin-bottom:6px;font-size:44px}.wx-sum-figs p{color:var(--graphite);margin:0}.wx-sum a{font-weight:620}.earlier{margin-top:8px}@media (width<=640px){.wx-sum-figs{grid-template-columns:1fr;gap:16px}}.limits{margin-top:4px}.limits h3{margin-bottom:10px}.land-cta{justify-items:start;gap:10px}.land-cta .cta{margin-top:8px}@media (width<=900px){.landing .hero{grid-template-columns:1fr;gap:32px;padding-top:40px}.land-cols,.out{grid-template-columns:1fr;gap:16px}.land{gap:22px;padding-block:36px}}@media (width<=640px){.trace{box-shadow:4px 4px 0 var(--rule-soft);padding:14px}.trace-inputs>div,.sheet-list>div,.workbook>div,.layers li{grid-template-columns:1fr;gap:2px}.layers li{gap:6px}.trace-qty{font-size:28px}.mini-boq thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.mini-boq tr{border-bottom:1px solid var(--rule-soft);grid-template-columns:1fr auto auto auto;align-items:baseline;gap:2px 6px;padding:8px 10px;display:grid}.mini-boq td{border:0;padding:0}.mini-boq td:nth-child(2){grid-area:1/1/auto/-1;font-weight:560}.mini-boq td:first-child{grid-row:2;font-size:12.5px}.mini-boq td:nth-child(3){grid-area:2/2}.mini-boq td:nth-child(4){grid-area:2/3}.mini-boq td:nth-child(5){grid-area:2/4;padding-left:4px}.mini-bbs{min-width:620px}}.verdict{white-space:nowrap;border-radius:3px;padding:1px 7px;font-size:12.5px;font-weight:650;display:inline-block}.v-ok{background:color-mix(in srgb, var(--ok) 16%, transparent);color:var(--ok)}.v-flag{background:color-mix(in srgb, var(--warn) 15%, transparent);color:var(--warn)}.v-silent{background:var(--redline-soft);color:var(--redline)}.v-wait{background:color-mix(in srgb, var(--graphite) 13%, transparent);color:var(--graphite)}.wx-set-box{border:1.5px solid var(--ink);border-radius:var(--r-md);background:var(--sheet);gap:10px;padding:14px 16px;display:grid}.wx-set-box>*{margin:0}.wx-facts{gap:4px;display:grid}.wx-facts>div{grid-template-columns:120px 1fr;gap:12px;display:grid}.wx-facts dt{color:var(--graphite)}.wx-facts dd{overflow-wrap:anywhere;margin:0}.wx-tally{border-block:1px solid var(--rule);grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 16px;margin:0;padding:12px 0;list-style:none;display:grid}.wx-tally li{color:var(--graphite);align-content:start;gap:2px;font-size:13.5px;display:grid}.wx-tally strong{color:var(--ink);font-size:30px;line-height:1.1}.wx-tally .ok strong{color:var(--ok)}.wx-tally .bad strong{color:var(--redline)}.wx-lines{border-collapse:collapse;width:100%;font-size:14px}.wx-lines caption{text-align:left;caption-side:top;padding-bottom:8px}.wx-lines th,.wx-lines td{border-bottom:1px solid var(--rule-soft);text-align:left;vertical-align:top;padding:8px 10px 8px 0}.wx-lines thead th{border-bottom:1.5px solid var(--ink);vertical-align:bottom;font-weight:650}.wx-lines tbody th{font-weight:400}.wx-lines .num{text-align:right;white-space:nowrap}.wx-line{font-weight:650;display:block}.wx-why{max-width:52ch;color:var(--graphite);margin-top:2px;display:block}.set-links{flex-wrap:wrap;gap:4px 16px;margin:0;padding:0;list-style:none;display:flex}.set-links a{font-weight:600}.wx-needs{counter-reset:need;border-top:1.5px solid var(--ink);margin:0;padding:0;list-style:none}.wx-need{counter-increment:need;border-bottom:1px solid var(--rule-soft);gap:6px;padding:12px 0 14px 36px;display:grid;position:relative}.wx-need>*{margin:0}.wx-need:before{content:counter(need);border:1.5px solid var(--ink);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:22px;height:22px;font-size:12.5px;font-weight:700;display:grid;position:absolute;top:12px;left:0}.wx-need-head{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.need-state{white-space:nowrap;border-radius:3px;padding:1px 7px;font-size:12.5px;font-weight:650}.need-state.st-given,.need-state.st-appendix{background:color-mix(in srgb, var(--ok) 16%, transparent);color:var(--ok)}.need-state.st-part{background:color-mix(in srgb, var(--warn) 15%, transparent);color:var(--warn)}.need-state.st-missing{background:var(--redline-soft);color:var(--redline)}.wx-here{font-weight:650}.wx-qs{gap:4px;margin:8px 0 0;padding-left:18px;display:grid}.caveat p+p{margin-top:8px}@media (width<=760px){.wx-tally{grid-template-columns:1fr 1fr}.wx-facts>div{grid-template-columns:1fr;gap:0}.wx-lines>thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.wx-lines>tbody>tr{border-bottom:1px solid var(--rule-soft);grid-template-columns:1fr 1fr;gap:4px 16px;padding:10px 0;display:grid}.wx-lines>tbody>tr>*{border:0;padding:0}.wx-lines>tbody>tr>th{grid-column:1/-1;margin-bottom:2px}.wx-lines>tbody>tr>td[data-label]{text-align:right;justify-content:space-between;gap:8px;display:flex}.wx-lines>tbody>tr>td[data-label]:before{content:attr(data-label);color:var(--graphite)}.wx-lines>tbody>tr>td:empty{display:none}}.support-guide{border-top:1.5px solid var(--ink);grid-template-columns:repeat(3,minmax(0,1fr));gap:0 20px;display:grid}.support{align-content:start;gap:6px;padding:12px 0 14px;font-size:14px;display:grid}.support p{margin:0}.support .plain-list{color:var(--graphite);gap:4px}.support-tag{border-radius:3px;padding:1px 8px;font-size:12.5px;font-weight:700;display:inline-block}.tag-yes{background:color-mix(in srgb, var(--ok) 16%, transparent);color:var(--ok)}.tag-soon{background:color-mix(in srgb, var(--warn) 15%, transparent);color:var(--warn)}.tag-no{background:var(--rule-soft);color:var(--graphite)}.support-head{margin-top:8px}@media (width<=760px){.support-guide{grid-template-columns:1fr}.support+.support{border-top:1px solid var(--rule-soft)}}:root{--paper:#fbfcfa;--sheet:#fff;--ink:#16202a;--graphite:#56616b;--rule:#d6dcd9;--rule-soft:#e9ecea;--redline:#c9302c;--redline-soft:#fbe7e5;--ok:#2f7d55;--warn:#a86a00;--hl-select:#f6e35a;--hl-footing:#7fd6a4;--hl-column:#f59cc0;--hl-beam:#8ec5f2;--hl-slab:#f9c98a;--hl-wall:#c3b3f0;--hl-pile:#9ad9d2;--drawing-line:#16202a;--drawing-text:#2c3a46;--font:"Archivo", system-ui, sans-serif;--r-sm:3px;--r-md:6px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#171c21;--sheet:#1f262d;--ink:#e8ece9;--graphite:#9aa6af;--rule:#34404a;--rule-soft:#262f37;--redline:#ff6b5e;--redline-soft:#3a2220;--ok:#6fd19c;--warn:#f0b44c;--drawing-line:#cfd8dd;--drawing-text:#b9c5cc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--paper:#171c21;--sheet:#1f262d;--ink:#e8ece9;--graphite:#9aa6af;--rule:#34404a;--rule-soft:#262f37;--redline:#ff6b5e;--redline-soft:#3a2220;--ok:#6fd19c;--warn:#f0b44c;--drawing-line:#cfd8dd;--drawing-text:#b9c5cc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}h1,h2,h3{letter-spacing:-.01em;margin:0;font-stretch:112%;line-height:1.15}h1{font-size:clamp(28px,4vw,44px);font-weight:760}h2{font-size:22px;font-weight:700}h3{font-size:16px;font-weight:680}p{max-width:68ch;margin:0}.muted{color:var(--graphite)}.small{font-size:13px}.num{font-variant-numeric:tabular-nums;font-stretch:92%}.btn{border:1.5px solid var(--ink);background:var(--ink);color:var(--paper);border-radius:var(--r-sm);cursor:pointer;align-items:center;gap:8px;padding:8px 16px;font-weight:620;text-decoration:none;display:inline-flex}.btn.ghost{color:var(--ink);background:0 0}.btn:disabled{opacity:.45;cursor:default}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
