.fence-calculator{font-family:var(--font-sans);color:var(--foreground);letter-spacing:0}.fence-style-reference{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:760px;margin-bottom:32px;display:grid}.fence-style-reference figure{min-width:0;margin:0}.fence-style-reference img{aspect-ratio:4/3;object-fit:contain;background:var(--secondary);width:100%}.fence-style-reference figcaption{margin-top:10px;font-size:14px;font-weight:600;line-height:1.5}.fence-sections{gap:0;margin:24px 0 32px;display:grid}.fence-section{border-top:1px solid var(--border);min-width:0;padding:24px 0}.fence-section-title{margin:0}.fence-section-title button{width:100%;font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.fence-section-title .fence-section-name{font-size:20px;font-weight:600}.fence-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.fence-fields .calc-field{margin:0}.fence-fields input[type=text]{padding-right:12px;font-size:14px}.fence-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0;display:grid}.fence-summary .calc-metric{min-height:140px}.fence-output{border-top:1px solid var(--border);padding-top:28px}.fence-output h2{margin-bottom:20px;font-size:24px;font-weight:600}.fence-group-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:28px;display:grid}.fence-group{border:1px solid var(--border);border-top:3px solid var(--lime-deep);border-radius:8px;min-width:0;padding:18px 20px}.fence-group h3{margin:0 0 6px;font-size:15px;font-weight:600}.fence-group-total{font-variant-numeric:tabular-nums;margin:0 0 2px;font-size:32px;font-weight:600;line-height:1.1}.fence-group-total span{color:var(--muted-foreground);font-size:16px;font-weight:600}.fence-group-sub{color:var(--muted-foreground);margin:0 0 14px;font-size:13px}.fence-group ul{margin:0;padding:0;font-size:13px;line-height:1.6;list-style:none}.fence-group li{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:7px 0;display:flex}.fence-group li span{min-width:0}.fence-group li strong{font-variant-numeric:tabular-nums;flex:none}.fence-materials{border-collapse:collapse;width:100%;font-size:14px}.fence-materials th,.fence-materials td{border-bottom:1px solid var(--border);text-align:left;padding:13px 12px}.fence-materials th{background:var(--secondary);font-weight:600}.fence-materials th:last-child,.fence-materials td:last-child{text-align:right;font-variant-numeric:tabular-nums}.fence-layouts{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:28px;display:grid}.fence-elevation{border:1px solid var(--border);border-radius:8px;min-width:0;margin:0;overflow:hidden}.fence-elevation figcaption{padding:16px;font-size:14px;line-height:1.6}.fence-elevation svg{aspect-ratio:600/260;width:100%;height:auto;display:block}.fence-panel{fill:var(--lime-soft);stroke:var(--lime-deep);stroke-width:1px}.fence-post{stroke:var(--foreground);stroke-width:5px}.fence-rail{stroke:var(--muted-foreground);stroke-width:3px}.fence-board-line{stroke:var(--lime-deep);stroke-width:1px}.fence-ground{fill:none;stroke:var(--muted-foreground);stroke-width:1px;stroke-dasharray:5 4}.fence-elevation text{fill:var(--foreground);font-size:13px;font-family:var(--font-sans)}.fence-warnings{background:var(--lime-soft);border-left:3px solid var(--lime-deep);margin:24px 0;padding:18px 24px;font-size:14px;line-height:1.7}.fence-warnings ul{padding-left:18px;list-style:outside}.fence-warnings li+li{margin-top:8px}.fence-source{color:var(--muted-foreground);font-size:13px;line-height:1.7}@media (width<=760px){.fence-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.fence-layouts{grid-template-columns:1fr}.fence-summary{gap:8px}.fence-summary .calc-metric{padding:16px 12px}.fence-summary .calc-metric-number{font-size:32px}.fence-summary .calc-metric h2{font-size:13px}}@media (width<=400px){.fence-fields{grid-template-columns:1fr}}@media print{.fence-sections,.fence-navigation,.fence-calculator .calc-tools{display:none!important}.fence-elevation,.fence-materials tr{break-inside:avoid}.fence-summary .calc-metric{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.fence-kits{margin-bottom:12px}.fence-kits span{font-size:14px;line-height:1.4}@media (width<=760px){.fence-group-summary{grid-template-columns:1fr}}.fence-section-state{color:var(--muted-foreground);font-size:13px}.fence-chevron{width:16px;height:16px;color:var(--muted-foreground);flex:none;transition:transform .18s}.fence-chevron[data-open=yes]{transform:rotate(180deg)}.fence-section-title button:hover .fence-chevron,.fence-section-title button:hover .fence-section-name{color:var(--lime-deep)}
