/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-blue-50:oklch(97% .014 254.604);--color-blue-200:oklch(88.2% .059 254.128);--color-blue-700:oklch(48.8% .243 264.376);--color-blue-900:oklch(37.9% .146 265.522);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-900:oklch(21% .034 264.665);--color-white:#fff;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.my-6{margin-block:calc(var(--spacing) * 6)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.w-full{width:100%}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-pointer{cursor:pointer}.list-decimal{list-style-type:decimal}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-blue-200{border-color:var(--color-blue-200)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.bg-blue-50{background-color:var(--color-blue-50)}.bg-gray-900{background-color:var(--color-gray-900)}.bg-white{background-color:var(--color-white)}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.px-3{padding-inline:calc(var(--spacing) * 3)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-right{text-align:right}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.text-blue-700{color:var(--color-blue-700)}.text-blue-900{color:var(--color-blue-900)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-white{color:var(--color-white)}.underline{text-decoration-line:underline}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.select-all{-webkit-user-select:all;user-select:all}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}}:root{color-scheme:light;--paper:#faf9f6;--surface:#fffefa;--ink:#292d27;--muted:#6b6e64;--line:#ddded5;--accent:#b74724;--accent-wash:#f8eee6;--diagram:#f4f3ec}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--paper);color:var(--ink);font-family:var(--font-manrope),sans-serif;-webkit-font-smoothing:antialiased;margin:0;font-size:15px}a,button,input,select,summary{-webkit-tap-highlight-color:transparent}a,button{transition:color .18s,background .18s,border-color .18s,box-shadow .18s}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:active:not(:disabled){transform:translateY(1px)}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{color:var(--ink);background:#f2d5c2}h1,h2,h3,p{margin:0}button,input,select{font:inherit}.skip-link{z-index:50;background:var(--ink);color:#fff;padding:14px 20px;position:fixed;top:-80px;left:20px}.skip-link:focus{top:12px}.site-header{z-index:20;border-bottom:1px solid var(--line);background:var(--paper);position:relative}.site-header-inner{justify-content:space-between;align-items:center;gap:30px;max-width:1280px;height:88px;margin:auto;padding:0 40px;display:flex}.brand{letter-spacing:-1px;flex-shrink:0;align-items:center;gap:11px;font-size:23px;font-weight:800;display:inline-flex}.brand svg{width:35px;height:35px;color:var(--accent)}.brand-light{font-weight:400}.brand-dot{color:var(--accent)}.primary-nav{align-items:center;gap:30px;font-size:13px;font-weight:600;display:flex}.nav-group{position:relative}.nav-trigger{background:0 0;border:0;align-items:center;gap:8px;padding:14px 0;display:flex}.nav-guide:hover,.nav-guide[aria-current],.nav-trigger.active,.nav-trigger:hover{color:var(--accent)}.nav-dropdown{background:var(--surface);border:1px solid var(--line);border-radius:8px;min-width:220px;padding:8px;position:absolute;top:100%;left:-20px;box-shadow:0 12px 30px #292d2710}.nav-dropdown a{border-radius:4px;justify-content:space-between;align-items:center;gap:20px;padding:12px;display:flex}.nav-dropdown a:hover,.nav-dropdown a[aria-current]{background:var(--accent-wash);color:var(--accent)}.header-note{color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.header-note>span,.live-indicator i{background:#72775d;border-radius:50%;width:5px;height:5px}.mobile-menu{display:none}.site-content{max-width:1280px;margin:auto;padding:30px 40px 0}.breadcrumb{color:var(--muted);margin-bottom:36px;font-size:11px}.breadcrumb ol{flex-wrap:wrap;gap:8px;display:flex}.breadcrumb li{gap:8px}.breadcrumb [aria-current]{color:var(--ink)}.breadcrumb-divider{color:#a6a89c;margin-right:4px}.eyebrow{font-family:var(--font-plex),monospace;letter-spacing:1.15px;color:var(--muted);font-size:10px;font-weight:400;line-height:1.5}.page-intro{justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:38px;display:flex}.page-intro>.eyebrow,.page-intro>div>.eyebrow{color:var(--accent)}.page-intro h1{letter-spacing:-2.5px;text-wrap:balance;margin:12px 0 16px;font-size:clamp(32px,4.15vw,54px);font-weight:800;line-height:1.14}.title-dot{color:var(--accent)}.page-intro p{color:var(--muted);white-space:pre-line;max-width:690px;font-size:14px;line-height:1.8}.intro-guide{color:var(--muted);flex-shrink:0;padding-bottom:4px;font-size:11px;line-height:2.2}.intro-guide>span{color:var(--ink);border-bottom:1px solid var(--line);align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.roof-workbench{background:var(--surface);border:1px solid #d2d5c9;border-radius:12px;grid-template-columns:390px minmax(0,1fr);display:grid;overflow:hidden;box-shadow:0 4px #e8e9df50,0 14px 30px #343f2510}.workbench-inputs{border-right:1px solid var(--line);padding:27px 30px 23px}.diagram-heading,.panel-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.small-square{border:1px solid var(--line);text-align:center;width:19px;height:19px;color:var(--muted);font-size:12px;line-height:17px}.input-topline{margin:22px 0}.input-topline h2{letter-spacing:-.7px;font-size:20px;font-weight:600}.input-topline p{color:var(--muted);margin-top:6px;font-size:11px;line-height:1.6}.input-mode{border:1px solid var(--line);background:#f3f3ed;border-radius:6px;gap:3px;padding:4px;display:flex}.input-mode button{min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:3px;flex:1;font-size:12px;font-weight:600}.input-mode button[aria-pressed=true]{background:var(--ink);color:#fffefa;box-shadow:0 2px 3px #292d2710}.input-mode button:hover:not([aria-pressed=true]){color:var(--ink);background:#e6e7df}.units-row{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin:23px 0 19px;font-size:11px;display:flex}.units-row>div{gap:4px;display:flex}.units-row button{color:var(--muted);font-size:10px;font-family:var(--font-plex),monospace;background:0 0;border:0;border-radius:3px;min-height:32px;padding:7px 8px}.units-row button[aria-pressed=true]{color:var(--accent);background:var(--accent-wash)}.pitch-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.pitch-fields>.measurement:only-child{grid-column:1/-1}.measurement label{margin-bottom:8px;font-size:11px;font-weight:600;display:block}.measurement-input{position:relative}.measurement input{width:100%;min-height:49px;font-family:var(--font-plex),monospace;color:var(--ink);background:#fff;border:1px solid #cfd2c5;border-radius:5px;padding:10px 45px 10px 14px;font-size:19px}.measurement input:focus{border-color:var(--accent);outline:0;box-shadow:0 0 0 3px #b7472410}.measurement-input>span{font-family:var(--font-plex),monospace;color:var(--muted);pointer-events:none;font-size:12px;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.measurement input::-webkit-inner-spin-button{-webkit-appearance:none}.measurement input{appearance:textfield}.field-error,.field-hint{color:var(--muted);margin-top:8px;font-size:10px;line-height:1.7}.field-error{color:#a02f22}.has-error input{background:#fff9f6;border-color:#bc4934}.measurement-tip{margin:10px 0 20px}.length-field{border-top:1px solid var(--line);padding-top:20px}.preset-row{margin-top:24px}.preset-row .eyebrow{letter-spacing:.7px;font-size:9px}.preset-row>div{gap:7px;margin-top:10px;display:flex}.preset-row button{min-height:34px;font-size:11px;font-family:var(--font-plex),monospace;border:1px solid var(--line);background:0 0;border-radius:4px;flex:1}.preset-row button:hover{border-color:var(--accent);color:var(--accent)}.preset-row button[aria-pressed=true]{background:var(--accent-wash);color:var(--accent);border-color:#d7b7a7}.reset-button{color:var(--muted);background:0 0;border:0;margin-top:20px;padding:8px 0;font-size:10px}.reset-button:hover{color:var(--accent)}.workbench-output{background:var(--diagram);flex-direction:column;min-width:0;display:flex}.diagram-heading{padding:29px 30px 0}.live-indicator{color:#667054;white-space:nowrap;gap:6px;font-size:10px}.diagram-stage,.live-indicator{align-items:center;display:flex}.diagram-stage{flex:1;min-height:225px;padding:0 24px}.roof-diagram{width:100%;max-height:320px;font-family:var(--font-plex),monospace;display:block}.roof-diagram path{transition:stroke .18s,stroke-width .18s}.diagram-empty{text-align:center;width:100%;color:var(--muted);padding:32px 16px}.diagram-empty>span{color:#929680;font-size:56px;display:block}.diagram-empty p{margin:8px 0;font-size:14px}.diagram-empty small{font-size:11px}.result-summary{border-top:1px solid #d9dcd0;grid-template-columns:1fr 1fr;gap:25px;margin:0 30px;padding:25px 0 19px;display:grid}.primary-result{flex-direction:column;display:flex}.primary-result>.eyebrow{color:var(--accent);font-size:9px}.primary-result>strong{font-family:var(--font-plex),monospace;letter-spacing:-4px;overflow-wrap:anywhere;margin:7px 0;font-size:clamp(35px,4vw,56px);font-weight:400;line-height:1.3}.primary-result>span:last-child{color:var(--muted);font-size:9px}.secondary-results{border-left:1px solid var(--line);flex-direction:column;gap:13px;padding:0 0 0 20px;display:flex}.secondary-results>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.secondary-results span{color:var(--muted);font-size:10px;line-height:1.6}.secondary-results span>small{font-size:8px;display:block}.secondary-results strong{font-family:var(--font-plex),monospace;text-align:right;overflow-wrap:anywhere;font-size:14px;font-weight:400}.result-actions{flex-wrap:wrap;align-items:center;gap:12px 20px;padding:0 30px;display:flex}.button-primary,.button-text{border-radius:5px;justify-content:center;align-items:center;gap:10px;min-height:42px;font-size:11px;font-weight:600;display:inline-flex}.button-primary{background:var(--accent);color:#fff;border:1px solid var(--accent);padding:10px 22px}.button-primary:hover:not(:disabled){background:#92391d;border-color:#92391d}.button-text{color:var(--ink);background:0 0;border:0;padding:10px 0}.action-status,.button-text:hover{color:var(--accent)}.action-status{width:100%;font-size:10px}.action-status:empty{display:none}.result-footnote{color:var(--muted);margin:15px 30px 24px;font-size:9px;line-height:1.9}.result-footnote a{color:var(--accent);white-space:nowrap;margin-left:4px}.next-tools{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1.15fr 1fr 1fr;align-items:center;gap:28px;margin:36px 0 76px;padding:26px 0;display:grid}.next-tools h2{letter-spacing:-.5px;margin-top:6px;font-size:16px;font-weight:600}.next-tools .eyebrow{font-size:8px}.next-tools>a{border-left:1px solid var(--line);align-items:center;gap:16px;padding:9px 0 9px 26px;display:flex}.next-tools>a>svg:first-child{fill:none;width:38px;height:36px;stroke:var(--accent);stroke-width:1.6px;flex-shrink:0}.next-tools>a>svg:last-child{flex-shrink:0;margin-left:auto}.next-tools>a>span{font-size:13px;font-weight:600}.next-tools small{color:var(--muted);margin-top:4px;font-size:10px;font-weight:400;display:block}.section-heading{justify-content:space-between;align-items:flex-end;gap:25px;display:flex}.section-heading h2{letter-spacing:-1px;margin-top:12px;font-size:28px;font-weight:600}.text-link{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding-bottom:4px;font-size:11px;font-weight:600;display:inline-flex}.steps-grid{grid-template-columns:repeat(3,1fr);gap:38px;margin:35px 0 72px;display:grid}.steps-grid article{border-top:1px solid var(--line);padding-top:23px;position:relative}.step-number{font-family:var(--font-plex),monospace;color:var(--accent);margin-bottom:15px;font-size:12px;display:block}.steps-grid h3{letter-spacing:-.4px;margin-bottom:12px;font-size:16px;font-weight:600}.steps-grid p{color:var(--muted);max-width:310px;font-size:12px;line-height:1.95}.article-layout{border-top:1px solid var(--line);grid-template-columns:300px minmax(0,1fr);gap:85px;padding-top:50px;display:grid}.article-aside h2{letter-spacing:-1px;margin-top:14px;font-size:26px;font-weight:600;line-height:1.4}.article-aside p{color:var(--muted);max-width:240px;margin:18px 0;font-size:12px;line-height:1.9}.article-body{min-width:0}.prose{color:#565b50;font-size:14px;line-height:1.9}.prose h2{color:var(--ink);letter-spacing:-.6px;text-wrap:balance;margin:36px 0 14px;font-size:22px;font-weight:600;line-height:1.4}.prose h2:first-child{margin-top:0}.prose h3{color:var(--ink);margin:25px 0 12px;font-size:18px;font-weight:600}.prose li,.prose p{margin:12px 0}.prose p:first-child{margin-top:0}.prose ul{padding-left:20px;list-style:outside}.prose ol{padding-left:20px;list-style:decimal}.prose strong{color:var(--ink);font-weight:600}.prose a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.prose img{border-radius:8px;max-width:100%;margin:22px 0}.table-scroll{border:1px solid var(--line);border-radius:6px;margin:20px 0;overflow-x:auto}.prose table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}.prose th{color:#4b5143;background:#eceee5;font-weight:600}.prose td,.prose th{border-bottom:1px solid var(--line);vertical-align:top;padding:12px 14px}.prose tr:last-child td{border-bottom:0}.prose td:first-child{font-family:var(--font-plex),monospace;color:var(--ink)}.faq-section{margin-top:40px}.faq-section>h2{letter-spacing:-.6px;margin-bottom:15px;font-size:22px;font-weight:600}.faq-section details{border-bottom:1px solid var(--line);padding:17px 0}.faq-section summary{padding-right:26px;font-size:13px;line-height:1.7;list-style:none;position:relative}.faq-section summary::-webkit-details-marker{display:none}.faq-section summary:after{content:"+";color:var(--accent);font-size:19px;font-weight:400;position:absolute;top:0;right:0}.faq-section details[open] summary:after{content:"−"}.faq-section details[open] summary{color:var(--accent)}.faq-section p{color:var(--muted);margin:14px 22px 0 0;font-size:13px;line-height:1.9}.page-directory{border-top:1px solid var(--line);margin-top:65px;padding:40px 0 0}.page-directory>h2{letter-spacing:-.8px;margin-top:10px;font-size:25px;font-weight:600}.page-directory ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 38px;margin-top:20px;display:grid}.page-directory li{border-bottom:1px solid var(--line);padding:20px 0}.page-directory li>a{justify-content:space-between;gap:15px;font-size:13px;font-weight:600;display:flex}.page-directory li>a>span{color:var(--accent)}.page-directory li>p{color:var(--muted);margin-top:8px;font-size:11px;line-height:1.8}.site-footer{max-width:1280px;margin:75px auto 0;padding:0 40px 30px}.footer-main{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:35px 0;display:flex}.footer-main p{color:var(--muted);font-size:12px;line-height:1.8}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:15px;padding-top:20px;font-size:10px;display:flex}.footer-bottom nav{gap:22px;display:flex}.standard-tool{background:var(--surface);border:1px solid #d2d5c9;border-radius:10px;max-width:860px;margin:0 0 55px;padding:30px;box-shadow:0 5px 20px #343f2508}.standard-tool input,.standard-tool select{min-height:46px;font-family:var(--font-plex),monospace;color:var(--ink);background:#fff;border:1px solid #cfd2c5;border-radius:5px}.standard-tool input:focus,.standard-tool select:focus{outline:2px solid var(--accent);outline-offset:2px}.standard-tool .fields-grid{gap:20px;margin-top:24px}.standard-tool .unit-toggle{border-color:var(--line);border-radius:5px}.standard-tool .unit-toggle button{min-height:42px;font-size:12px}.standard-tool .unit-toggle button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.standard-tool .results-grid{background:var(--diagram);border:1px solid var(--line);border-radius:7px;gap:12px 25px;margin-top:28px;padding:22px}.standard-tool .result-row{padding:10px 0}.standard-tool .result-row>span:last-child{font-family:var(--font-plex),monospace;font-size:16px;font-weight:400}.standard-tool .calculator-note{color:var(--muted);margin-top:16px;font-size:11px;line-height:1.8}.reading-page .article-layout{max-width:760px;display:block}.reading-page .page-intro p{max-width:760px}.not-found-page{min-height:50vh;padding-top:70px}@media (min-width:1500px){.site-content,.site-footer,.site-header-inner{max-width:1360px}.roof-workbench{grid-template-columns:420px minmax(0,1fr)}.workbench-inputs{padding:30px 36px}.diagram-stage{padding:10px 30px}.roof-diagram{max-height:345px}}@media (max-width:1100px){.header-note{display:none}.site-content,.site-footer,.site-header-inner{padding-left:30px;padding-right:30px}.roof-workbench{grid-template-columns:355px minmax(0,1fr)}.workbench-inputs{padding:25px}.diagram-heading{padding:27px 22px 0}.diagram-heading .eyebrow{letter-spacing:.5px;font-size:8px}.diagram-stage{padding:0 10px}.result-summary{gap:15px;margin:0 22px}.secondary-results{padding-left:14px}.secondary-results>div{flex-wrap:wrap;gap:1px 8px}.secondary-results strong{font-size:13px}.result-actions{gap:8px 15px;padding:0 22px}.result-footnote{margin-left:22px;margin-right:22px}.article-layout{grid-template-columns:240px minmax(0,1fr);gap:40px}.next-tools{gap:18px}.next-tools>a{padding-left:18px}}@media (max-width:820px){.primary-nav{gap:20px}.site-header-inner{height:74px}.page-intro{margin-bottom:30px}.intro-guide{display:none}.roof-workbench{grid-template-columns:320px minmax(0,1fr)}.workbench-inputs{padding:22px}.result-summary{grid-template-columns:1fr;gap:15px;padding:18px 0}.primary-result>strong{margin:1px 0;font-size:42px}.secondary-results{border:0;gap:8px;padding:0}.secondary-results>div{flex-wrap:nowrap}.secondary-results span>small{display:inline}.result-actions{gap:5px}.button-primary{padding-left:15px;padding-right:15px}.button-text{padding-left:8px;font-size:10px}.diagram-stage{min-height:165px}.diagram-heading .live-indicator{display:none}.next-tools{grid-template-columns:1fr 1fr}.next-tools>div{grid-column:1/-1}.next-tools>a{border-left:0;padding-left:0}.article-layout{grid-template-columns:180px minmax(0,1fr);gap:30px}.article-aside h2{font-size:22px}.section-heading{flex-direction:column;align-items:flex-start;gap:15px}.section-heading h2{font-size:25px}.steps-grid{gap:24px}.page-directory ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){html{scroll-padding-top:20px}body{font-size:15px}.site-header-inner{height:70px;padding:0 20px}.brand{gap:9px;font-size:21px}.brand svg{width:31px;height:31px}.mobile-menu{background:0 0;border:0;align-items:center;gap:15px;min-height:44px;padding:10px 0 10px 10px;font-size:12px;display:flex}.mobile-menu>span{font-size:21px}.primary-nav{background:var(--surface);border-bottom:1px solid var(--line);width:100%;padding:12px 20px 20px;display:none;position:absolute;top:100%;left:0;box-shadow:0 12px 22px #292d2710}.primary-nav.is-open{display:block}.nav-trigger{justify-content:space-between;width:100%;min-height:46px}.nav-dropdown{box-shadow:none;border:0;border-left:1px solid var(--line);border-radius:0;margin-bottom:10px;padding:0 0 0 10px;position:static}.nav-dropdown a{min-height:44px}.nav-guide{padding:14px 0;display:block}.site-content{padding:22px 18px 0}.breadcrumb{font-size:10px}.breadcrumb,.page-intro{margin-bottom:25px}.page-intro h1{letter-spacing:-1.6px;margin:10px 0 12px;font-size:35px}.page-intro>div>.eyebrow{letter-spacing:.9px;font-size:8px}.page-intro p{white-space:normal;font-size:12px;line-height:1.8}.roof-workbench{border-radius:9px;flex-direction:column;display:flex}.workbench-inputs{border:0;padding:21px}.input-topline{margin:15px 0 18px}.input-topline h2{font-size:19px}.input-topline p{font-size:11px}.input-mode button{min-height:42px}.units-row{margin:16px 0 13px}.units-row button{min-height:40px}.measurement label{font-size:12px}.measurement input{min-height:48px;font-size:19px}.field-error,.field-hint{font-size:11px}.measurement-tip{margin-bottom:15px}.length-field{padding-top:16px}.preset-row{margin-top:18px}.preset-row button{min-height:42px}.reset-button{min-height:44px;margin-top:7px;padding:12px 0 0;font-size:11px}.workbench-output{border-top:1px solid var(--line);display:flex}.diagram-heading{border-top:1px solid var(--line);order:3;padding:20px 21px 0}.diagram-heading .eyebrow{font-size:9px}.diagram-heading .live-indicator{font-size:9px;display:flex}.diagram-stage{order:4;min-height:180px;padding:0}.result-summary{border:0;order:0;grid-template-columns:1fr 1fr;gap:15px;margin:0 21px;padding:24px 0 20px}.primary-result>strong{letter-spacing:-3px;margin:7px 0;font-size:42px}.primary-result>span:last-child{font-size:9px;line-height:1.7}.secondary-results{border-left:1px solid var(--line);gap:11px;padding-left:14px}.secondary-results>div{flex-direction:column;gap:2px}.secondary-results span{font-size:10px}.secondary-results span>small{font-size:8px}.secondary-results strong{font-size:13px}.result-actions{order:1;gap:12px;padding:0 21px}.button-primary,.button-text{min-height:44px;font-size:11px}.result-footnote{order:2;margin:14px 21px 20px;font-size:10px}.next-tools{gap:20px;margin:27px 0 45px;padding:22px 0}.next-tools>a{align-items:flex-start;gap:10px}.next-tools>a>svg:first-child{width:26px;height:28px}.next-tools>a>svg:last-child{display:none}.next-tools>a>span{font-size:12px}.next-tools small{font-size:10px;line-height:1.6}.section-heading h2{font-size:25px;line-height:1.4}.steps-grid{margin:25px 0 45px;display:block}.steps-grid article{grid-template-columns:30px 1fr;gap:0 14px;padding:20px 0;display:grid}.step-number{grid-row:1/3;margin:0;padding-top:3px}.steps-grid h3{margin-bottom:8px;font-size:15px}.steps-grid p{max-width:none;font-size:12px;line-height:1.8}.article-layout{padding-top:30px;display:block}.article-aside{margin-bottom:30px}.article-aside h2{font-size:24px}.article-aside h2 br{display:none}.article-aside p{max-width:none}.prose{font-size:14px}.prose h2{margin-top:30px;font-size:21px}.prose td,.prose th{padding:10px;font-size:11px}.faq-section>h2{font-size:21px}.faq-section summary{padding-right:25px;font-size:13px}.faq-section p{font-size:13px}.page-directory{margin-top:45px;padding-top:30px}.page-directory>h2{font-size:23px}.page-directory ul{grid-template-columns:1fr;margin-top:10px}.page-directory li{padding:17px 0}.page-directory li>a{font-size:14px}.page-directory li>p{font-size:12px}.site-footer{margin-top:45px;padding:0 18px 24px}.footer-main{padding:28px 0;display:block}.footer-main p{margin-top:20px}.footer-bottom{flex-direction:column;gap:16px;font-size:11px}.standard-tool{margin-bottom:35px;padding:20px}.standard-tool .results-grid{padding:14px}.standard-tool .result-row>span:last-child{font-size:14px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition:none!important;animation:none!important}}@media print{@page{margin:14mm}body{background:#fff;font-size:11px}.article-layout,.breadcrumb,.input-mode,.intro-guide,.measurement-guide,.next-tools,.page-directory,.preset-row,.reset-button,.result-actions,.site-footer,.site-header,.skip-link,.small-square,.units-row{display:none!important}.site-content{max-width:none;padding:0}.page-intro{margin:0 0 20px}.page-intro h1{font-size:30px}.page-intro p{font-size:11px}.roof-workbench{box-shadow:none;break-inside:avoid;border:1px solid #aaa;border-radius:0;grid-template-columns:34% 66%;display:grid}.workbench-inputs{border-right:1px solid #ddd;padding:16px}.panel-heading .eyebrow{font-size:8px}.input-topline h2{font-size:14px}.input-topline p{display:none}.pitch-fields{display:block}.measurement{margin-top:15px}.measurement input{border:0;border-bottom:1px solid #aaa;border-radius:0;min-height:30px;padding-left:0;font-size:15px}.length-field,.workbench-output{border:0}.diagram-heading{border:0;order:0;padding:16px 20px 0}.diagram-stage{order:1;padding:0 10px}.result-summary{order:2;grid-template-columns:1fr 1fr;margin:0 20px;padding:18px 0}.secondary-results{padding-left:12px}.secondary-results>div{flex-direction:column}.result-footnote{order:3;margin:10px 20px 20px}.primary-result>strong{font-size:38px}.live-indicator,.result-footnote a{display:none}.workbench-output,svg{-webkit-print-color-adjust:exact;print-color-adjust:exact}}@media (min-width:681px){.site-header-inner{height:76px}.site-content{padding-top:22px}.breadcrumb{margin-bottom:24px}.page-intro{margin-bottom:28px}.page-intro h1{margin-top:10px;margin-bottom:12px}.workbench-inputs{padding-top:23px;padding-bottom:16px}.input-topline{margin:15px 0 16px}.units-row{margin:15px 0}.measurement-tip{margin-bottom:14px}.length-field{padding-top:15px}.preset-row{margin-top:17px}.reset-button{margin-top:10px}.diagram-heading{padding-top:25px}.roof-diagram{max-height:285px}.result-summary{padding-top:20px;padding-bottom:17px}}.mobile-result-bar{display:none}@media (max-width:680px){.mobile-result-bar{z-index:15;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid #cfd2c5;justify-content:space-between;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -5px 18px #343f2510}.mobile-result-bar>div{align-items:baseline;gap:12px;display:flex}.mobile-result-bar span{font:8px var(--font-plex),monospace;color:var(--muted);letter-spacing:.5px}.mobile-result-bar strong{font:22px var(--font-plex),monospace;letter-spacing:-1px}.mobile-result-bar small{font:10px var(--font-plex),monospace;color:var(--muted)}.mobile-result-bar a{color:var(--accent);padding:12px 0 12px 8px;font-size:11px;font-weight:600}}@media print{.mobile-result-bar{display:none!important}}.javascript-notice{background:var(--accent-wash);color:var(--accent);padding:15px 20px;font-size:13px}.input-guide{color:var(--accent);white-space:nowrap;padding:5px 0;font-size:9px}.measurement-rise label:before,.measurement-run label:before{content:"";background:var(--accent);border-radius:1px;width:6px;height:6px;margin-right:6px;display:inline-block}.measurement-run label:before{background:#53634e}.measurement-run input:focus{border-color:#53634e;box-shadow:0 0 0 3px #53634e15}.measurement input::placeholder{color:#94988c;font-size:15px}.length-field{margin-top:22px;padding-top:0}.length-field summary{cursor:pointer;justify-content:space-between;align-items:center;gap:8px;min-height:49px;font-size:12px;font-weight:600;list-style:none;display:flex}.length-field summary::-webkit-details-marker{display:none}.length-field summary small{color:var(--muted);margin-left:5px;font-size:9px;font-weight:400}.length-field .disclosure-symbol{color:var(--muted);font-size:21px;font-weight:400}.length-field[open] .disclosure-symbol{transform:rotate(45deg)}.length-field>div{padding:2px 0 10px}.result-state{white-space:nowrap;color:#75634a;background:#f4edde;border:1px solid #ded5c3;border-radius:4px;align-items:center;gap:6px;padding:5px 8px;font-size:10px;display:flex}.result-state i{background:currentColor;border-radius:50%;width:5px;height:5px;display:block}.result-state.is-edited{color:#53634e;background:#edf0e6;border-color:#d2d9cb}.diagram-context{color:var(--muted);justify-content:space-between;gap:10px;margin:15px 30px 4px;font-size:11px;line-height:1.5;display:flex}.diagram-context>span:last-child{font:9px var(--font-plex),monospace;align-self:center}.diagram-stage{min-height:230px;padding:8px 18px 4px}.roof-diagram{max-height:310px}.primary-result>span:last-child{font-size:10px;line-height:1.6}.primary-result>strong.is-long{letter-spacing:-1.5px;font-size:clamp(22px,3vw,38px)}.print-roof-run{display:none}.secondary-results span{font-size:11px}.secondary-results strong{font-size:16px}.add-length{color:var(--accent);white-space:nowrap;background:0 0;border:0;border-bottom:1px solid #d7b7a7;padding:4px 0;font-size:11px}.add-length:hover{border-color:var(--accent)}.result-footnote{font-size:10px}@media (min-width:1500px){.roof-diagram{max-height:340px}}@media (min-width:681px) and (max-width:1100px){.input-guide{font-size:8px}.panel-heading>.eyebrow{letter-spacing:.7px;font-size:9px}.diagram-context{flex-wrap:wrap;margin-left:22px;margin-right:22px;font-size:10px}.diagram-heading{flex-wrap:wrap}.diagram-stage{padding:4px 5px}.result-state{font-size:9px}}@media (max-width:680px){.length-field{margin-top:18px;padding-top:0}.length-field summary{min-height:48px;font-size:12px}.input-guide{padding:10px 0;font-size:10px}.panel-heading>.eyebrow{letter-spacing:.6px;font-size:9px}.diagram-heading{border:0;order:0;padding:18px 21px 0}.diagram-heading>.eyebrow{letter-spacing:.6px;font-size:8px}.result-state{font-size:9px}.result-summary{order:1;padding-top:18px}.result-actions{order:2}.result-footnote{order:3}.diagram-context{border-top:1px solid var(--line);flex-direction:column;order:4;gap:3px;margin:0 21px;padding-top:16px;font-size:11px}.diagram-context>span:last-child{align-self:flex-start;font-size:9px}.diagram-stage{order:5;min-height:180px;padding:8px 6px 14px}.roof-diagram text[font-size="12"]{letter-spacing:.5px;font-size:17px}.roof-diagram text[font-size="21"]{font-size:23px}.primary-result>span:last-child{font-size:10px}.secondary-results strong{font-size:15px}.secondary-results span>small{display:block}.add-length{min-height:32px;font-size:11px}}@media print{.add-length,.disclosure-symbol,.input-guide{display:none!important}.print-roof-run{order:4;margin:0 20px;font-size:10px;display:block}.length-field{margin:10px 0 0}.length-field>div{display:block!important}.length-field summary{min-height:30px;font-size:10px}.diagram-heading{order:0}.diagram-context{border:0;order:1;margin:10px 20px 0;padding:0}.diagram-stage{order:2}.result-summary{border-top:1px solid var(--line);order:3}.result-footnote{order:4}}.input-mode button{min-width:0}.footer-bottom nav{flex-wrap:wrap;gap:12px 22px}.article-credit{color:var(--muted);margin:-12px 0 26px;font-size:12px}.article-credit a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.reference-tools{justify-content:space-between;align-items:center;gap:22px;margin-bottom:26px;display:flex}.reference-tools p{max-width:560px;color:var(--muted);font-size:13px;line-height:1.8}.reference-print{flex-shrink:0;gap:15px;display:inline-flex}.reference-grid{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:50px;display:grid}.chart-explainer{background:var(--diagram);border:1px solid var(--line);border-radius:8px;padding:26px 22px}.chart-explainer h2{letter-spacing:-.6px;margin:16px 0 4px;font-size:21px;font-weight:600}.chart-explainer svg{width:100%;font:14px var(--font-plex),monospace}.chart-explainer p{color:var(--muted);font-size:12px;line-height:1.9}.chart-formula{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.chart-formula>span{font:9px var(--font-plex),monospace;letter-spacing:1px;color:var(--accent)}.chart-formula strong{font:14px var(--font-plex),monospace;margin:12px 0;display:block}.chart-explainer>a{margin-top:22px;font-size:12px;display:inline-block}.pitch-table-wrap{min-width:0}.pitch-table{border-collapse:collapse;width:100%;font:13px var(--font-plex),monospace}.pitch-table caption{text-align:left;color:var(--muted);font:11px var(--font-plex),monospace;margin-bottom:16px}.pitch-table thead{background:var(--ink);color:var(--paper)}.pitch-table td,.pitch-table th{text-align:right;border-bottom:1px solid var(--line);padding:12px 18px;font-weight:400}.pitch-table th:first-child{text-align:left}.pitch-table thead th{font:12px var(--font-manrope),sans-serif}.pitch-table small{opacity:.7;margin-top:3px;font-size:10px;display:block}.pitch-table tbody a{color:var(--accent);align-items:center;gap:15px;padding:2px 0;display:inline-flex}.pitch-table tbody a:hover{text-underline-offset:4px;text-decoration:underline}.pitch-table tbody a span{opacity:.6;font-size:11px}.pitch-table tr.reference-example{background:var(--accent-wash)}.pitch-table tbody tr:hover{background:#efefe7}.chart-note,.reference-source{color:var(--muted);margin:18px 0 0;font-size:11px;line-height:1.8}.reference-source{border-top:1px solid var(--line);margin:30px 0;padding:18px 0 0}.measurement-reference{background:var(--diagram);border:1px solid var(--line);border-radius:8px;margin:0 0 40px;padding:28px}.measurement-reference svg{width:100%;font:17px var(--font-plex),monospace;display:block}.guide-run-label{fill:#53634e}.guide-rise-label{fill:var(--accent)}.guide-point-label{font:14px var(--font-manrope),sans-serif;fill:var(--muted)}.measurement-reference figcaption{color:var(--muted);max-width:720px;margin:18px auto;font-size:13px;line-height:1.8}.measurement-key{border-top:1px solid var(--line);gap:24px;padding-top:18px;display:flex}.measurement-key p{color:var(--muted);flex:1;font-size:12px;line-height:1.8}.measurement-key strong{color:var(--ink);font-weight:600;display:block}.guide-directory{margin-bottom:45px}.guide-directory h2{letter-spacing:-1px;margin:12px 0 20px;font-size:28px}.guide-directory article{border-top:1px solid var(--line);gap:26px;padding:26px 0;display:flex}.guide-index{font:14px var(--font-plex),monospace;color:var(--accent);padding-top:5px}.guide-directory h3{letter-spacing:-.5px;font-size:20px;font-weight:600}.guide-directory h3 span{color:var(--accent)}.guide-directory p{max-width:650px;color:var(--muted);margin-top:9px;font-size:13px;line-height:1.8}.guide-directory>.text-link{margin-top:12px;font-size:13px;display:inline-block}@media (max-width:820px){.reference-grid{grid-template-columns:1fr;gap:25px}.chart-explainer{display:none}}@media (max-width:680px){.input-mode button{min-height:44px;font-size:11px}.reference-tools{flex-direction:column;align-items:flex-start;gap:16px}.pitch-table{font-size:11px}.pitch-table td,.pitch-table th{padding:12px 7px}.pitch-table thead th{font-size:11px}.pitch-table tbody a{gap:5px}.pitch-table small{font-size:9px}.pitch-table caption{font-size:10px;line-height:1.6}.measurement-reference{padding:20px 10px}.measurement-reference .reference-tools{padding:0 8px}.measurement-reference svg{font-size:22px}.measurement-reference .guide-point-label{font-size:18px}.measurement-reference figcaption{padding:0 8px;font-size:12px}.measurement-key{margin:0 8px;display:block}.measurement-key p{margin-top:10px}.guide-directory h2{font-size:24px}.guide-directory h3{font-size:18px}}@media print{.reading-page .article-layout{border:0;max-width:none;padding-top:15px;display:block!important}.reading-page .article-body{max-width:none}.reading-page .prose{font-size:10pt;line-height:1.5}.reading-page .prose h2{break-after:avoid;font-size:15pt}.reference-print{display:none!important}.reference-tools{margin-bottom:12px}.chart-explainer,.chart-page .article-layout{display:none!important}.reference-grid{display:block}.pitch-table{font-size:10pt}.pitch-table td,.pitch-table th{padding:6px 12px}.pitch-table thead{color:#222;background:#eee}.pitch-table tr{break-inside:avoid}.pitch-table tbody a span{display:none}.pitch-table a{color:#222}.chart-note,.reference-source{font-size:8pt;line-height:1.5}.reference-source{margin-top:16px;padding-top:10px}.measurement-reference{break-inside:avoid;margin:10px 0;padding:15px}.measurement-reference svg{max-height:260px}}.shed-tool{margin-bottom:55px;scroll-margin-top:25px}.shed-workbench{border:1px solid var(--line);border-radius:10px;grid-template-columns:360px minmax(0,1fr);display:grid;overflow:hidden}.shed-inputs{background:var(--surface);border-right:1px solid var(--line);padding:28px}.shed-inputs h2{letter-spacing:-.8px;margin:18px 0 24px;font-size:23px;font-weight:600;line-height:1.25}.shed-inputs .input-mode{grid-template-columns:1fr 1fr}.shed-inputs .input-mode button{font-size:12px}.shed-inputs .measurement{margin-top:22px}.shed-reference-note{color:var(--muted);border-bottom:1px solid var(--line);padding:16px 0;font-size:12px;line-height:1.75}.shed-reference-note a{color:var(--accent);text-underline-offset:3px;margin-top:4px;text-decoration:underline;display:block}.shed-output{background:var(--diagram);min-width:0;padding:28px 30px 24px}.shed-result-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.shed-primary{margin-top:28px}.shed-primary>span{color:var(--accent);font-size:12px;display:block}.shed-primary>strong{font:500 clamp(30px,4vw,48px)/1.2 var(--font-plex),monospace;letter-spacing:-1.8px;overflow-wrap:anywhere;margin:8px 0;display:block}.shed-primary>small{color:var(--muted);font-size:11px;line-height:1.7;display:block}.shed-diagram{margin:8px -18px 20px}.shed-diagram svg{width:100%;max-height:320px;font:18px var(--font-plex),monospace;display:block}.shed-diagram figcaption{color:var(--muted);padding:0 18px;font-size:11px;line-height:1.7}.shed-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:14px 24px;padding:20px 0;display:grid}.shed-details dt{color:var(--muted);font-size:11px}.shed-details dt small{font-size:10px;display:block}.shed-details dd{font:500 19px/1.6 var(--font-plex),monospace;overflow-wrap:anywhere}.shed-actions{flex-wrap:wrap;align-items:center;gap:10px 18px;margin:22px 0 14px;display:flex}.shed-actions>span,.shed-scope{color:var(--muted);font-size:11px}.shed-empty,.shed-scope{line-height:1.8}.shed-empty{min-height:220px;color:var(--muted);place-content:center;max-width:38ch;margin:auto;font-size:13px;display:grid}.shed-print-source{display:none}.shed-entry{border-bottom:1px solid var(--line);color:var(--muted);margin-top:-12px;padding:0 0 22px;font-size:13px;line-height:1.8}.shed-entry a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.shed-tool+.article-layout{scroll-margin-top:30px}@media (max-width:1000px){.shed-workbench{grid-template-columns:320px minmax(0,1fr)}.shed-inputs,.shed-output{padding:24px}}@media (max-width:760px){.shed-workbench{grid-template-columns:1fr}.shed-inputs{border-right:0;border-bottom:1px solid var(--line)}.shed-output{padding:24px 20px}.shed-primary>strong{font-size:38px}.shed-diagram svg{font-size:23px}.shed-result-top .eyebrow{font-size:9px}.shed-details dd{font-size:18px}.shed-inputs .field-error,.shed-inputs .field-hint{font-size:11px}.shed-empty{min-height:120px}}@media print{.shed-workbench{break-inside:avoid;border-radius:0;grid-template-columns:34% 66%}.shed-inputs,.shed-output{padding:16px}.shed-actions,.shed-entry,.shed-inputs h2,.shed-reference-note a{display:none}.shed-inputs .measurement{margin-top:16px}.shed-inputs input{min-height:25px;font-size:14px}.shed-reference-note,.shed-scope{font-size:9px}.shed-primary{margin-top:15px}.shed-primary>strong{font-size:28px}.shed-diagram{margin:8px 0 20px}.shed-diagram svg{max-height:220px}.shed-details{gap:8px;padding:12px 0}.shed-details dd{font-size:14px}.shed-print-source{margin-top:15px;font-size:8px;display:block}}.planning-select{margin-top:22px}.planning-select label{margin-bottom:9px;font-size:12px;font-weight:600;display:block}.planning-select select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:48px;color:var(--ink);border-radius:5px;padding:10px 12px;font-size:14px}.wood-grain{margin-top:18px}.planning-pair{grid-template-columns:1fr 1fr;gap:14px;display:grid}.planning-pair>.measurement{min-width:0}.planning-diagram{margin:24px 0}.planning-diagram svg{width:100%;max-height:290px;font:20px var(--font-plex),monospace;fill:var(--muted);display:block}.markout>p,.planning-diagram figcaption,.planning-method{color:var(--muted);font-size:11px;line-height:1.8}.planning-diagram figcaption{margin-top:12px}.planning-method{margin-top:18px}.planning-workbench .shed-scope a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.markout{margin-top:24px}.markout h3{letter-spacing:-.4px;margin-bottom:5px;font-size:17px;font-weight:600}.markout-scroll{border:1px solid var(--line);scrollbar-gutter:stable;border-radius:5px;max-height:260px;margin:12px 0;overflow:auto}.markout table{border-collapse:separate;border-spacing:0;text-align:left;width:100%;font:12px/1.7 var(--font-plex),monospace}.markout td,.markout th{border-bottom:1px solid var(--line);padding:10px 12px}.markout thead th{z-index:1;background:var(--surface);font:600 11px/1.5 var(--font-manrope),sans-serif;position:sticky;top:0}.markout tbody th{color:var(--muted);font-weight:400}.markout tbody td{white-space:nowrap}.markout tr:last-child>*{border-bottom:0}@media (min-width:681px) and (max-width:920px){.site-header-inner{gap:20px}.primary-nav{gap:14px;font-size:12px}.brand{font-size:21px}.brand svg{width:29px}}@media (max-width:760px){.planning-diagram svg{font-size:25px}.planning-workbench .shed-details{gap:14px}.markout td,.markout th{padding:9px 8px}.markout table{font-size:11px}.planning-diagram{margin:24px -6px}.planning-diagram figcaption{padding:0 6px}}@media (max-width:360px){.planning-workbench .shed-details{grid-template-columns:1fr}.planning-pair{gap:10px}.planning-workbench .shed-primary>strong{font-size:32px}}@media print{.planning-workbench{break-inside:auto;display:block;overflow:visible}.planning-workbench .shed-inputs{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:10px 20px;display:grid}.planning-workbench .shed-inputs>.eyebrow,.planning-workbench .shed-reference-note{display:none}.planning-select,.planning-workbench .shed-inputs .measurement{margin-top:0}.planning-select select{min-height:28px;padding:4px;font-size:12px}.planning-workbench .shed-output{background:#fff}.planning-diagram,.planning-workbench .shed-details,.planning-workbench .shed-primary{break-inside:avoid}.planning-diagram svg{max-height:180px}.planning-diagram{margin:12px 0}.markout-scroll{border:0;max-height:none;overflow:visible}.markout thead{display:table-header-group}.markout thead th{position:static}.markout tr{break-inside:avoid}.markout td,.markout th{padding:5px 8px}.planning-workbench .result-state{font-size:9px}}.stair-workbench .shed-primary>strong{letter-spacing:-1.2px;font-size:clamp(27px,3vw,40px)}.stair-workbench .stair-diagram{margin:18px 0}.stair-workbench .stair-diagram svg{max-height:280px;font-size:21px}.stair-space-input{border-top:1px solid var(--line);margin-top:22px;padding-top:1px}.stair-result-jump{display:none}.stair-inset-label{letter-spacing:2px;font-size:16px}#stair-results{scroll-margin-top:20px}.stair-fraction{color:var(--muted);font-size:11px}.stair-fit{background:var(--surface);border-left:3px solid #747c69;margin-top:20px;padding:15px 18px}.stair-fit>span{color:var(--muted);font-size:11px;display:block}.stair-fit>strong{margin:7px 0;font-size:16px;font-weight:500;display:block}.stair-checks,.stair-fit>p{color:var(--muted);font-size:11px;line-height:1.8}.stair-fit.is-tight{border-color:var(--accent)}.stair-fit.is-tight>strong{color:var(--accent)}.stair-checks{margin-top:18px}.stair-checks summary{cursor:pointer;color:var(--ink)}.stair-checks ul{margin:10px 0;padding-left:18px;list-style:outside}@media (max-width:760px){.stair-workbench .stair-diagram svg{font-size:26px}.stair-workbench .shed-primary>strong{font-size:32px}.stair-result-jump{margin-top:20px;display:block}.stair-inset-label{font-size:22px}}@media print{.stair-fit{break-inside:avoid;margin-top:12px}.stair-checks,.stair-result-jump{display:none}.stair-space-input{border:0;margin:0;padding:0}.stair-workbench .stair-diagram svg{max-height:210px}.stair-workbench .shed-primary>strong{font-size:27px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@font-face{font-family:manrope;src:url(/_next/static/media/4c9affa5bc8f420e-s.p.woff2) format("woff2");font-display:swap;font-weight:400 800}@font-face{font-family:manrope Fallback;src:local("Arial");ascent-override:106.45%;descent-override:29.96%;line-gap-override:0.00%;size-adjust:100.14%}.__className_001600{font-family:manrope,manrope Fallback}.__variable_001600{--font-manrope:"manrope","manrope Fallback"}@font-face{font-family:mono;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");font-display:swap;font-weight:400}@font-face{font-family:mono Fallback;src:local("Arial");ascent-override:77.95%;descent-override:20.91%;line-gap-override:0.00%;size-adjust:131.49%}.__className_c9a9f2{font-family:mono,mono Fallback;font-weight:400}.__variable_c9a9f2{--font-plex:"mono","mono Fallback"}