:root{--ink:#112e38;--blue:#063e50;--accent:#ffc84d;--muted:#506774;--line:#d8e2e6;--paper:#f3f7f9}*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,sans-serif;color:var(--ink);background:var(--paper)}a{color:var(--blue);text-underline-offset:4px}header{background:white;border-bottom:1px solid var(--line)}nav{max-width:1180px;margin:auto;display:flex;align-items:center;gap:28px;padding:20px 24px}nav a{text-decoration:none;font-weight:650}.brand{font-size:23px;letter-spacing:-1px;margin-right:auto}.brand b{display:inline-grid;place-items:center;background:var(--accent);width:34px;height:34px;margin-right:9px;border-radius:4px;color:var(--ink)}main{max-width:1180px;margin:auto;padding:32px 24px 64px}h1{font-size:clamp(30px,4vw,48px);line-height:1.12;letter-spacing:-1.5px;margin:18px 0}h2{font-size:24px;line-height:1.25}h3{font-size:18px}p{max-width:76ch}.eyebrow{font-size:13px;letter-spacing:1.5px;text-transform:uppercase;font-weight:750;color:var(--muted)}.intro{font-size:18px;color:var(--muted);max-width:700px}.workspace{display:grid;grid-template-columns:1.12fr 1fr;gap:24px;margin:28px 0 40px}.panel{background:white;padding:28px;border:1px solid var(--line);border-radius:10px}.panel h2{margin-top:0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:14px;font-weight:650}input,select{display:block;width:100%;padding:11px 12px;margin-top:6px;border:1px solid #a6bac3;border-radius:5px;background:white;font:inherit;color:var(--ink)}input:focus,select:focus,button:focus,a:focus-visible{outline:3px solid #1287b1;outline-offset:3px}button,.button{border:0;border-radius:5px;background:var(--blue);color:white;padding:12px 20px;font:650 16px system-ui;cursor:pointer;display:inline-block;text-decoration:none}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.secondary{background:#e6eef1;color:var(--ink)}.result{background:var(--blue);color:white;border:0;position:relative;overflow:hidden}.result .eyebrow{color:#b4d1dc}.big{font-size:clamp(38px,5vw,60px);font-weight:750;letter-spacing:-2px;line-height:1.2;margin:20px 0 0}.result dl{margin-top:30px}.result dl div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid #49717f}.result dd{margin:0;font-weight:650;text-align:right}.result .note{color:#c8dde5;font-size:14px}.result button{background:var(--accent);color:var(--ink)}.note{font-size:14px;color:var(--muted)}.error{color:#ad2525;min-height:24px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{padding:22px;background:white;border:1px solid var(--line);border-radius:8px;text-decoration:none;display:block}.card:hover{border-color:#2183a1;box-shadow:0 6px 18px #123b4710}.card h3{margin:10px 0}.card p{font-size:14px;color:var(--muted);margin-bottom:0}.tag{font-size:12px;font-weight:750;letter-spacing:1px;text-transform:uppercase;color:#5b737b}.article{display:grid;grid-template-columns:2fr 1fr;gap:32px;margin-top:32px}.article section{margin-bottom:32px}.formula{padding:20px;border-left:4px solid var(--accent);background:#e4eef2;font-family:ui-monospace,monospace;overflow-wrap:anywhere}.breadcrumb{font-size:14px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:28px 24px;color:var(--muted);font-size:14px}footer>div{max-width:1132px;margin:auto;display:flex;flex-wrap:wrap;gap:22px}summary{cursor:pointer;font-weight:650;padding:12px 0}details{border-bottom:1px solid var(--line)}.sectionhead{display:flex;justify-content:space-between;align-items:end;margin:44px 0 20px}.sectionhead h2{margin:0}.callout{border-top:4px solid var(--accent)}@media(max-width:760px){nav{gap:15px;padding:16px}.brand{font-size:19px}nav a:last-child{display:none}main{padding:24px 16px}.workspace,.article{grid-template-columns:1fr}.grid{grid-template-columns:1fr 1fr}.panel{padding:22px}.big{font-size:44px}}@media(max-width:430px){.grid,.fields{grid-template-columns:1fr}.fields{gap:12px}h1{font-size:32px}}@media print{header,footer,.actions,aside{display:none}body{background:white}.result{background:white;color:#112e38;border:1px solid}.result .note,.result .eyebrow{color:#506774}.workspace{grid-template-columns:1fr 1fr}.panel{break-inside:avoid}main{padding:0}}
small{display:block;font-weight:400;color:var(--muted);margin-top:6px} .skip{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:9}.skip:focus{top:8px}.reading{max-width:900px;margin:auto}.reading h2{margin-top:36px}table{border-collapse:collapse;width:100%;margin:24px 0;font-size:14px}td,th{border:1px solid var(--line);padding:12px;text-align:left;vertical-align:top}.purchase-planner{margin:32px 0}.area-row{border:1px solid var(--line);border-radius:8px;padding:18px;margin:20px 0}.area-row legend{font-weight:700}.area-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.planner-settings{margin-top:24px}#planner-result{background:#edf5f5;padding:22px;border-radius:8px}#planner-result dl div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:8px 0}#planner-result dd{margin:0;text-align:right;font-weight:650}#export-status{overflow-wrap:anywhere}.article p{line-height:1.8}.article h2{margin-top:28px}@media(max-width:760px){.area-fields{grid-template-columns:1fr 1fr}nav{flex-wrap:wrap}nav a:last-child{display:block}table{display:block;overflow:auto}}@media(max-width:430px){.area-fields{grid-template-columns:1fr}nav{gap:12px}.brand{flex-basis:100%}}@media print{.purchase-planner button,.skip{display:none}.purchase-planner{break-before:page}.article,.grid{display:none}#planner-result{background:white}input{border:0;padding:0}h1{font-size:26px}}
.measurement-diagram{margin:28px 0;padding:16px;background:#f3f7f9;border:1px solid var(--line);border-radius:8px}.measurement-diagram svg{display:block;width:100%;height:auto}.measurement-diagram figcaption{font-size:14px;color:var(--muted);margin-top:12px}
.measurement-sketch{margin:12px 0 24px;max-width:620px}.measurement-sketch svg{display:block;width:100%;max-width:360px;height:auto}.measurement-sketch figcaption{margin-top:12px;font-size:14px;color:var(--muted)}
.project-path-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.project-path h3{font-size:22px;line-height:1.3}.project-path ol{padding-left:22px}.project-path li{margin:12px 0}.project-path .note{font-size:14px;color:var(--muted)}@media(max-width:760px){.project-path-grid{grid-template-columns:1fr}}
.worksheet-choice{border-left:4px solid var(--accent);padding:8px 20px;background:#eaf2f5;margin:24px 0}.worksheet-choice h2{font-size:19px}.worksheet-choice ul{padding-left:20px}.worksheet-choice li{margin:12px 0}.worksheet-choice a{font-weight:700}.worksheet-choice span{display:block;font-size:14px}.worksheet-choice p{font-size:14px;color:var(--muted)}
@media print{.worksheet-choice,body[data-print] #fabric-cut-plan,body[data-print] #patio-order,body[data-print] #sod-order,body[data-print] #board-finish,body[data-print] #layer-order,body[data-print] #deck-surfaces,body[data-print] .jump-links{display:none}}
@media print{body:not([data-print="plan"]) .purchase-planner{display:none}body[data-print="plan"] .workspace,body[data-print="plan"] noscript{display:none}body[data-print="plan"] .purchase-planner{break-before:auto}body[data-print="plan"] .purchase-options{display:block}.result{overflow:visible}.result dl div,#planner-result dl div{break-inside:avoid}} .purchase-options{margin-top:24px}.jump-links{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.jump-links a{padding:6px 12px;background:#e4eef2;border-radius:5px}.directory-group{margin-top:32px}.quote-sheet td{min-width:110px;min-height:32px}


#fabric-offers fieldset{min-width:0;border:1px solid var(--line);border-radius:8px;padding:16px;margin:18px 0}#fabric-offers input[type="checkbox"]{display:inline-block;width:20px;height:20px;vertical-align:middle;margin:0 8px 0 0;padding:0}#fabric-offers input:disabled{background:#edf1f3;color:#64737b}#fabric-offers .fields{margin-top:14px}#fabric-buying-guide{margin-top:36px;padding-top:24px;border-top:2px solid var(--line)}

.volume-decision{margin:30px 0}.volume-decision .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.volume-decision .panel{min-width:0}.volume-decision dd{margin:0 0 8px;font-weight:650}.volume-decision button:disabled{opacity:.6;cursor:wait}@media(max-width:760px){.volume-decision .grid{grid-template-columns:1fr}}
