/* 3.8 interactive takeoff builder */
.takeoff-section{padding-top:34px}.takeoff-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:26px;align-items:start}.takeoff-main,.takeoff-side{display:grid;gap:18px}.takeoff-side{position:sticky;top:92px}.takeoff-card{border:1px solid var(--line);border-radius:18px;background:#fff;padding:24px}.takeoff-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:18px}.takeoff-card-head h2{margin:.1rem 0 0;font-size:1.45rem}.takeoff-card-head>p{max-width:440px;margin:0}.takeoff-template-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.takeoff-template{display:grid;gap:5px;text-align:left;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--soft);font:inherit;cursor:pointer}.takeoff-template:hover,.takeoff-template:focus-visible{border-color:#a8c9b5;background:#eef8f2}.takeoff-template span{font-size:.85rem;color:var(--muted)}.takeoff-project-bar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(190px,.65fr) auto;gap:12px;align-items:end}.takeoff-project-bar label,.takeoff-zone-field{display:grid;gap:5px;font-weight:750}.takeoff-project-bar input,.takeoff-project-bar select,.takeoff-zone-field input,.takeoff-zone-field select{width:100%;min-height:44px;border:1px solid #cfdad3;border-radius:10px;padding:9px 11px;background:#fff;font:inherit}.takeoff-save-note{margin:10px 0 18px;color:var(--muted);font-size:.85rem}.takeoff-zone-list{display:grid;gap:12px}.takeoff-zone{border:1px solid var(--line);border-radius:14px;overflow:hidden}.takeoff-zone-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--soft)}.takeoff-zone-head>div:first-child{display:flex;align-items:center;gap:9px}.takeoff-zone-number{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:800}.takeoff-zone-actions{display:flex;gap:6px}.takeoff-mini-btn{min-height:34px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:#fff;font:inherit;font-size:.8rem;font-weight:750;cursor:pointer}.takeoff-mini-danger{color:#8f3428}.takeoff-zone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px}.takeoff-zone-field span{font-size:.82rem}.takeoff-zone-result{display:flex;justify-content:space-between;gap:18px;padding:11px 14px;border-top:1px solid var(--line);background:#fbfdfb}.takeoff-zone-result span{color:var(--muted)}.takeoff-zone-result strong{color:var(--accent-dark)}.takeoff-empty{padding:20px;border:1px dashed #bfd0c6;border-radius:12px;background:var(--soft)}.takeoff-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.takeoff-summary-item{display:grid;gap:4px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}.takeoff-summary-item span{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:750}.takeoff-summary-item strong{font-size:1.05rem}.takeoff-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.takeoff-actions .btn{min-height:42px;padding:0 13px;font-size:.88rem}.takeoff-status{min-height:1.4em;margin:10px 0 0;color:var(--accent-dark);font-size:.87rem}.takeoff-side a{color:var(--accent);font-weight:750}@media(max-width:900px){.takeoff-layout{grid-template-columns:1fr}.takeoff-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.takeoff-side .aside-card:last-child{grid-column:1/-1}}@media(max-width:680px){.takeoff-template-grid,.takeoff-summary-grid,.takeoff-side{grid-template-columns:1fr}.takeoff-side .aside-card:last-child{grid-column:auto}.takeoff-card-head{display:block}.takeoff-card-head>p{margin-top:8px}.takeoff-project-bar,.takeoff-zone-grid{grid-template-columns:1fr}.takeoff-zone-head{align-items:flex-start;flex-direction:column}.takeoff-zone-actions{width:100%}.takeoff-zone-actions button{flex:1}.takeoff-zone-result{align-items:flex-start;flex-direction:column;gap:2px}}@media print{.site-header,footer,.breadcrumbs,.takeoff-side,.takeoff-intro-card,.takeoff-project-bar .btn,.takeoff-zone-actions,.takeoff-actions,.takeoff-save-note{display:none!important}.takeoff-layout{display:block}.takeoff-card,.takeoff-zone{box-shadow:none;break-inside:avoid}.takeoff-section{padding:0}.takeoff-card{border:0;padding:0;margin-bottom:18px}.takeoff-zone{margin-bottom:10px}}
