
/* PASS 3A: measurement-foundation pages only */
.measurement-hero-visual{background:linear-gradient(145deg,#e7f2df,#f6f0e3);border:1px solid #d4dfd5;border-radius:26px;padding:18px;box-shadow:var(--shadow-sm)}
.measurement-hero-visual svg{display:block;width:100%;height:auto}.measurement-hero-visual text{font-family:Inter,ui-sans-serif,system-ui,sans-serif;fill:#17392e}.measurement-hero-visual .plot{fill:#dcefd8;stroke:#2f7051;stroke-width:4}.measurement-hero-visual .feature{fill:#f3d7c7;stroke:#b86748;stroke-width:3}.measurement-hero-visual .measure{stroke:#17392e;stroke-width:2;stroke-dasharray:6 6}.measurement-hero-visual .label{font-size:18px;font-weight:800}
.measurement-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:start;margin-bottom:26px}.measure-note{background:#f1f7ed;border:1px solid #c9dbc9;border-radius:18px;padding:18px 20px}.measure-note strong{display:block;color:var(--forest);margin-bottom:5px}.measure-note p{margin:0;color:#43574d}
.area-tool{padding:0;background:transparent;border:0;box-shadow:none}.area-tool-head{background:#fff;border:1px solid #ccd8cf;border-radius:26px 26px 0 0;padding:28px 28px 20px}.area-tool-head h2{margin-bottom:8px}.area-tool-controls{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin-top:18px}.compact-field{min-width:170px}.compact-field label{display:block;font-weight:820;margin-bottom:7px}.compact-field select,.zone-card select,.zone-card input{width:100%;padding:12px 13px;border:1.5px solid #aebfb4;border-radius:11px;background:#fff;color:var(--ink);font:inherit}.compact-field select:focus,.zone-card select:focus,.zone-card input:focus{outline:3px solid rgba(47,112,81,.15);border-color:var(--leaf)}
.zone-list{display:grid;gap:16px;background:#f3f7f2;border-left:1px solid #ccd8cf;border-right:1px solid #ccd8cf;padding:22px}.zone-card{background:#fff;border:1px solid #cdd9d0;border-radius:20px;padding:20px;box-shadow:0 6px 18px rgba(23,57,46,.06)}.zone-card.is-subtract{border-color:#d9baa9;background:#fffaf7}.zone-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:16px}.zone-title{display:flex;gap:10px;align-items:center}.zone-number{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--forest);color:#fff;font-weight:900}.zone-name{font-weight:900;color:var(--forest)}.zone-action-badge{font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#3e6753;background:#e7f3e6;border-radius:999px;padding:5px 9px}.is-subtract .zone-action-badge{background:#f8e7df;color:#8b4f37}.remove-zone{appearance:none;border:0;background:transparent;color:#8b4f37;font:inherit;font-weight:850;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.zone-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:14px}.zone-grid .wide{grid-column:span 2}.field-hint{font-size:.79rem;color:#617069;margin-top:5px}.shape-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;grid-column:1/-1}.shape-fields .field label{font-size:.9rem}.lshape-help{grid-column:1/-1;background:#f5f0e5;border-radius:12px;padding:10px 12px;color:#52635b;font-size:.86rem}
.area-tool-footer{background:#fff;border:1px solid #ccd8cf;border-top:0;border-radius:0 0 26px 26px;padding:22px 28px 28px}.area-tool-footer .calc-actions{margin-top:0}.tool-error{display:none;margin:16px 0 0;padding:12px 14px;border-radius:12px;background:#fff0eb;border:1px solid #e0b39f;color:#783e2b;font-weight:720}.tool-error.is-visible{display:block}.area-result{display:none;margin-top:22px;background:linear-gradient(135deg,#17392e,#285840);color:#fff;border-radius:20px;padding:24px}.area-result.is-visible{display:block}.area-result h3{color:#fff;margin-bottom:8px}.area-total{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.6rem,6vw,4rem);font-weight:800;line-height:1;color:#fff;margin:8px 0}.area-subtotal{color:#d8e9df;font-size:1rem}.zone-breakdown{margin-top:20px;border-top:1px solid rgba(255,255,255,.2);padding-top:14px}.zone-breakdown-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.12)}.zone-breakdown-row:last-child{border-bottom:0}.zone-breakdown-row span{color:#dcebe2}.zone-breakdown-row strong{color:#fff}.result-next{margin-top:22px;background:#fff;color:var(--ink);border-radius:16px;padding:18px}.result-next h4{margin:0 0 8px;color:var(--forest);font-size:1.1rem}.result-next p{margin:0;color:#51655b}
.shape-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0}.shape-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}.shape-card svg{display:block;width:100%;height:120px;margin-bottom:8px}.shape-card strong{display:block;color:var(--forest)}.shape-card span{display:block;color:var(--muted);font-size:.86rem}.shape-card .s{fill:#dcefd8;stroke:#2f7051;stroke-width:3}.shape-card .cut{fill:#fff4ef;stroke:#b86748;stroke-width:2.5;stroke-dasharray:5 4}.shape-card .dim{stroke:#17392e;stroke-width:1.8}.shape-card text{font-family:Inter,ui-sans-serif,system-ui,sans-serif;fill:#17392e;font-size:12px;font-weight:800}
.next-action-engine{margin:32px 0;background:#edf6e9;border:1px solid #c9dbc9;border-radius:24px;padding:24px}.next-action-engine h2{font-size:2rem;margin-bottom:8px}.next-action-engine>p{margin-top:0;color:#45594f}.next-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.next-action-card{display:block;background:#fff;border:1px solid #cddbcf;border-radius:15px;padding:15px;text-decoration:none;color:inherit}.next-action-card:hover,.next-action-card:focus-visible{border-color:#6f9f7f;background:#fbfdf9;outline:none;box-shadow:0 8px 20px rgba(23,57,46,.08)}.next-action-card strong{display:block;color:var(--forest);margin-bottom:3px}.next-action-card span{color:#617069;font-size:.88rem}
.measure-table{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:24px 0}.measure-method{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.measure-method h3{font-size:1.25rem}.measure-method p{margin-bottom:0}.worked-example{background:#fff;border:1px solid #d2ddd4;border-radius:22px;padding:22px;margin:26px 0;box-shadow:var(--shadow-sm)}.worked-example-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:22px;align-items:center}.worked-example svg{width:100%;height:auto}.worked-example .plot{fill:#dcefd8;stroke:#2f7051;stroke-width:4}.worked-example .exclude{fill:#f7e2d7;stroke:#b86748;stroke-width:3}.worked-example text{font-family:Inter,ui-sans-serif,system-ui,sans-serif;fill:#17392e;font-size:14px;font-weight:800}.step-list{counter-reset:measure-step;display:grid;gap:14px;margin:24px 0}.step-list>div{counter-increment:measure-step;display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px}.step-list>div:before{content:counter(measure-step);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--forest);color:#fff;font-weight:900}.step-list h3{font-size:1.2rem;margin:2px 0 5px;grid-column:2;min-width:0}.step-list p{margin:0;grid-column:2;min-width:0}.guide-jump{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 28px}.guide-jump a{background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 11px;text-decoration:none;font-weight:780;font-size:.87rem}
@media(max-width:900px){.measurement-intro,.worked-example-grid{grid-template-columns:1fr}.zone-grid{grid-template-columns:1fr 1fr}.zone-grid .wide{grid-column:span 2}.shape-gallery,.next-action-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.area-tool-head,.area-tool-footer{padding:20px}.zone-list{padding:14px}.zone-card{padding:16px}.zone-head{align-items:flex-start}.zone-grid,.shape-fields,.shape-gallery,.next-action-grid,.measure-table{grid-template-columns:1fr}.zone-grid .wide{grid-column:auto}.shape-fields{grid-column:1}.compact-field{width:100%}.area-tool-controls{align-items:stretch}.area-tool-controls .btn{width:100%}.area-result{padding:20px}.zone-breakdown-row{font-size:.9rem}.shape-card svg{height:105px}}
