.cc-tool{--cc-primary:#FF6B35;--cc-primary-dark:#E5522A;--cc-secondary:#2C3E50;--cc-success:#27AE60;--cc-warning:#F39C12;--cc-danger:#E74C3C;--cc-text:#2F3440;--cc-text-soft:#5B6472;--cc-text-light:#7B8794;--cc-border:#D9E0E7;--cc-border-strong:#C8D2DC;--cc-bg:#FFF8F4;--cc-surface:#FFFFFF;--cc-surface-alt:#F7F9FC;--cc-surface-soft:#FFF4EE;--cc-shadow:0 10px 30px rgba(44, 62, 80, 0.10);--cc-shadow-soft:0 4px 20px rgba(255, 107, 53, 0.12);--cc-shadow-card:0 8px 24px rgba(44, 62, 80, 0.06);--cc-radius:14px;--cc-radius-lg:18px;--cc-radius-sm:8px;--cc-transition:all 0.3s ease;--cc-max-width:1200px;--cc-spacing-xs:0.5rem;--cc-spacing-sm:0.75rem;--cc-spacing-md:1rem;--cc-spacing-lg:1.5rem;--cc-spacing-xl:2rem;--cc-spacing-2xl:2.5rem;box-sizing:border-box;width:100%;font-size:16px;line-height:1.6;color:var(--cc-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:transparent}.cc-tool *,.cc-tool *::before,.cc-tool *::after{box-sizing:border-box}.cc-tool a{color:var(--cc-primary-dark);text-decoration:underline;text-underline-offset:2px;word-break:break-word;transition:var(--cc-transition)}.cc-tool a:hover,.cc-tool a:focus{color:var(--cc-secondary)}.cc-tool img,.cc-tool svg,.cc-tool canvas{max-width:100%;height:auto}.cc-tool button,.cc-tool input,.cc-tool select,.cc-tool textarea{font:inherit}.cc-tool button{-webkit-tap-highlight-color:transparent}.cc-tool button:focus-visible,.cc-tool input:focus-visible,.cc-tool select:focus-visible,.cc-tool textarea:focus-visible,.cc-tool a:focus-visible{outline:3px solid rgba(255,107,53,.24);outline-offset:2px}.cc-tool .cc-hero,.cc-tool .cc-calculator-form,.cc-tool .cc-results-container,.cc-tool .cc-section,.cc-tool .cc-related-tools{max-width:var(--cc-max-width);margin-left:auto;margin-right:auto}.cc-tool .cc-hero{position:relative;overflow:hidden;margin-top:1.25rem;margin-bottom:1.5rem;padding:1.5rem;background:linear-gradient(135deg,#fff7f2 0%,#ffffff 48%,#f7f9fc 100%);border:1px solid rgba(255,107,53,.14);border-radius:var(--cc-radius-lg);box-shadow:var(--cc-shadow)}.cc-tool .cc-hero::before{content:"";position:absolute;right:-50px;bottom:-50px;width:190px;height:190px;background:radial-gradient(circle,rgba(255,107,53,.16) 0%,rgba(255,107,53,0) 72%);pointer-events:none}.cc-tool .cc-hero::after{content:"";position:absolute;top:-60px;right:15%;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,rgba(44,62,80,.08) 0%,rgba(44,62,80,0) 70%);pointer-events:none}.cc-tool .cc-hero-content{position:relative;z-index:1}.cc-tool .cc-hero h1{margin:0 0 .85rem;color:var(--cc-secondary);font-size:2rem;line-height:1.15;letter-spacing:-.02em}.cc-tool .cc-hero-intro{margin:0;max-width:72ch;color:var(--cc-text-soft);font-size:1rem}.cc-tool .cc-trust-badges{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.cc-tool .cc-badge{display:inline-flex;align-items:center;min-height:40px;padding:.55rem .9rem;border-radius:999px;background:rgba(255,107,53,.1);border:1px solid rgba(255,107,53,.15);color:#9f3a16;font-size:.9375rem;font-weight:700;line-height:1.3}.cc-tool .cc-calculator-form{margin-top:0;margin-bottom:1.5rem;padding:1.25rem;background:var(--cc-surface);border-top:4px solid var(--cc-primary);border-left:1px solid rgba(255,107,53,.1);border-right:1px solid rgba(255,107,53,.1);border-bottom:1px solid rgba(255,107,53,.1);border-radius:16px;box-shadow:var(--cc-shadow-soft)}.cc-tool .cc-calculator-form h2{margin:0 0 1.25rem;color:var(--cc-primary-dark);font-size:1.5rem;line-height:1.2}.cc-tool .cc-shape-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-bottom:1.25rem}.cc-tool .cc-shape-btn{min-height:72px;padding:1rem .75rem;border:2px solid #E2E7ED;border-radius:12px;background:#FFF;color:var(--cc-secondary);cursor:pointer;transition:var(--cc-transition);text-align:center;font-weight:700}.cc-tool .cc-shape-btn:hover,.cc-tool .cc-shape-btn:focus{border-color:var(--cc-primary);transform:translateY(-2px);box-shadow:0 8px 20px rgba(255,107,53,.14)}.cc-tool .cc-shape-btn.active{border-color:var(--cc-primary);background:rgba(255,107,53,.09);color:var(--cc-primary-dark)}.cc-tool .cc-shape-btn[aria-pressed="true"]{border-color:var(--cc-primary);background:rgba(255,107,53,.09)}.cc-tool .cc-shape-icon{display:block;margin-bottom:.35rem;font-size:1.8rem;line-height:1}.cc-tool .cc-shape-diagram{margin-bottom:1.25rem}.cc-tool .cc-shape-diagram-box{padding:1rem;background:linear-gradient(180deg,#ffffff 0%,#f8fbfd 100%);border:1px solid var(--cc-border);border-radius:14px}.cc-tool .cc-diagram-title{margin-bottom:.75rem;color:var(--cc-secondary);font-size:.95rem;font-weight:700}.cc-tool .cc-diagram-visual{position:relative;min-height:150px;overflow:hidden;border-radius:12px;background:repeating-linear-gradient(45deg,rgba(44,62,80,.03),rgba(44,62,80,.03) 10px,rgba(255,107,53,.04) 10px,rgba(255,107,53,.04) 20px)}.cc-tool .cc-diagram-slab::before,.cc-tool .cc-diagram-curb::before,.cc-tool .cc-diagram-repair::before{content:"";position:absolute;left:18%;top:26%;width:54%;height:46%;border:2px solid rgba(44,62,80,.22);border-radius:8px;background:linear-gradient(135deg,rgba(255,107,53,.18),rgba(229,82,42,.32));box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}.cc-tool .cc-diagram-posthole::before{content:"";position:absolute;left:50%;top:16%;width:70px;height:108px;transform:translateX(-50%);border:2px solid rgba(44,62,80,.22);border-radius:999px 999px 18px 18px;background:linear-gradient(180deg,rgba(255,107,53,.18),rgba(229,82,42,.32))}.cc-tool .cc-dimension{position:absolute;padding:.25rem .5rem;border:1px solid rgba(44,62,80,.08);border-radius:999px;background:rgba(255,255,255,.88);color:var(--cc-secondary);font-size:.8125rem;font-weight:700;line-height:1.2}.cc-tool .cc-dimension-top{top:10px;left:50%;transform:translateX(-50%)}.cc-tool .cc-dimension-side{top:50%;left:10px;transform:translateY(-50%)}.cc-tool .cc-dimension-depth{right:10px;bottom:10px}.cc-tool .cc-form-row-two{display:grid;grid-template-columns:1fr;gap:1rem}.cc-tool .cc-form-group{margin-bottom:1.1rem}.cc-tool .cc-form-group label{display:block;margin-bottom:.45rem;color:var(--cc-secondary);font-size:.975rem;font-weight:700}.cc-tool .cc-form-group input,.cc-tool .cc-form-group select,.cc-tool .cc-form-group textarea{width:100%;min-height:48px;padding:.78rem 1rem;border:2px solid #DBE3EA;border-radius:10px;background:#FFF;color:var(--cc-text);font-size:16px;line-height:1.35;transition:var(--cc-transition)}.cc-tool .cc-form-group input::placeholder,.cc-tool .cc-form-group textarea::placeholder{color:#909CAB;opacity:1}.cc-tool .cc-form-group input:hover,.cc-tool .cc-form-group select:hover,.cc-tool .cc-form-group textarea:hover{border-color:#C9D4DE}.cc-tool .cc-form-group input:focus,.cc-tool .cc-form-group select:focus,.cc-tool .cc-form-group textarea:focus{outline:none;border-color:var(--cc-primary);box-shadow:0 0 0 3px rgba(255,107,53,.12)}.cc-tool select{appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14'%3E%3Cpath fill='%232C3E50' d='M7 10.4 2.1 5.5h9.8z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 1rem center!important;background-size:14px 14px!important;padding-right:2.75rem!important}.cc-tool .cc-help-text{display:block;margin-top:.4rem;color:var(--cc-text-soft);font-size:.875rem;line-height:1.45}.cc-tool .cc-input-wrapper{position:relative}.cc-tool .cc-input-icon{position:absolute;top:50%;left:16px;transform:translateY(-50%);z-index:1;color:var(--cc-secondary);font-weight:700;pointer-events:none}.cc-tool .cc-input-with-icon{padding-left:44px!important}.cc-tool .cc-advanced-toggle{margin:.5rem 0 1.25rem}.cc-tool .cc-toggle-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:48px;padding:.75rem 1rem;border:1px solid rgba(44,62,80,.16);border-radius:10px;background:#FFF;color:var(--cc-secondary);font-weight:700;cursor:pointer;transition:var(--cc-transition)}.cc-tool .cc-toggle-btn:hover,.cc-tool .cc-toggle-btn:focus{border-color:var(--cc-primary);color:var(--cc-primary-dark);box-shadow:0 8px 18px rgba(255,107,53,.1)}.cc-tool .cc-toggle-icon{font-size:1rem;line-height:1}.cc-tool .cc-advanced-panel{margin-top:1rem;padding:1rem;border:1px solid rgba(44,62,80,.08);border-radius:12px;background:var(--cc-surface-alt)}.cc-tool .cc-btn-primary,.cc-tool .cc-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;margin-top:.5rem;margin-right:.75rem;padding:.95rem 1.4rem;border-radius:10px;font-size:1rem;font-weight:700;text-align:center;cursor:pointer;transition:var(--cc-transition);border:0}.cc-tool .cc-btn-primary{background:linear-gradient(135deg,var(--cc-primary) 0%,var(--cc-primary-dark) 100%);color:#FFF;box-shadow:0 10px 20px rgba(255,107,53,.24);text-transform:uppercase;letter-spacing:.4px}.cc-tool .cc-btn-primary:hover,.cc-tool .cc-btn-primary:focus{transform:translateY(-2px);box-shadow:0 14px 26px rgba(255,107,53,.32)}.cc-tool .cc-btn-secondary{background:#FFF;color:var(--cc-secondary);border:1px solid rgba(44,62,80,.14)}.cc-tool .cc-btn-secondary:hover,.cc-tool .cc-btn-secondary:focus{border-color:var(--cc-primary);color:var(--cc-primary-dark)}.cc-tool .cc-btn-primary:disabled,.cc-tool .cc-btn-secondary:disabled{border-color:#CFD6DD;background:#CFD6DD;color:#5B6472;cursor:not-allowed;transform:none;box-shadow:none}.cc-tool .cc-loading{display:inline-flex;align-items:center;gap:.55rem}.cc-tool .cc-spinner{width:18px;height:18px;border:3px solid rgba(255,255,255,.34);border-top-color:#FFF;border-radius:50%;animation:cc-spin 0.8s linear infinite}@keyframes cc-spin{to{transform:rotate(360deg)}}@keyframes cc-count-up{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cc-tool .cc-form-group.error input,.cc-tool .cc-form-group.error select,.cc-tool .cc-form-group.error textarea{border-color:var(--cc-danger);background:rgba(231,76,60,.03)}.cc-tool .cc-form-group.success input,.cc-tool .cc-form-group.success select,.cc-tool .cc-form-group.success textarea{border-color:var(--cc-success)}.cc-tool .cc-error-message{min-height:1.25rem;margin-top:.35rem;color:#B53428;font-size:.875rem;font-weight:600;line-height:1.4}.cc-tool .cc-results-container{min-height:40px;margin-bottom:1.5rem}.cc-tool .cc-results{overflow:hidden;padding:1.5rem;border-radius:16px;background:linear-gradient(135deg,var(--cc-primary) 0%,var(--cc-primary-dark) 100%);color:#FFF;box-shadow:0 16px 34px rgba(255,107,53,.24)}.cc-tool .cc-results-title{margin:0 0 1rem;color:#FFF;font-size:1.6rem;line-height:1.2}.cc-tool .cc-result-hero{padding:.5rem 0 .25rem;text-align:center}.cc-tool .cc-result-label{font-size:.95rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;opacity:.92}.cc-tool .cc-result-highlight{margin:.75rem 0;font-size:2.5rem;line-height:1.05;font-weight:800;word-break:break-word;animation:cc-count-up 0.7s ease}.cc-tool .cc-result-sub{font-size:1rem;opacity:.94}.cc-tool .cc-result-breakdown{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.4rem}.cc-tool .cc-result-card{padding:1rem;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.16);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.cc-tool .cc-card-label{font-size:.875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;opacity:.92}.cc-tool .cc-card-value{margin:.55rem 0 .25rem;font-size:1.65rem;font-weight:800;line-height:1.1}.cc-tool .cc-card-sub{font-size:.9375rem;opacity:.95}.cc-tool .cc-result-details{margin-top:1.5rem}.cc-tool .cc-detail-block{margin-bottom:1rem;padding:1rem;border:1px solid rgba(44,62,80,.08);border-radius:14px;background:var(--cc-surface);box-shadow:var(--cc-shadow-card)}.cc-tool .cc-detail-block h3{margin:0 0 .85rem;color:var(--cc-secondary);font-size:1.2rem;line-height:1.25}.cc-tool .cc-detail-table,.cc-tool .cc-data-table{width:100%;border-collapse:collapse;background:#FFF}.cc-tool .cc-detail-table th,.cc-tool .cc-detail-table td,.cc-tool .cc-data-table th,.cc-tool .cc-data-table td{padding:.8rem .85rem;border-bottom:1px solid #E8EDF2;font-size:.95rem;text-align:left;vertical-align:top}.cc-tool .cc-detail-table th,.cc-tool .cc-data-table th{width:54%;color:var(--cc-secondary);font-weight:700}.cc-tool .cc-detail-table td,.cc-tool .cc-data-table td{color:var(--cc-text)}.cc-tool .cc-table-total th,.cc-tool .cc-table-total td{color:var(--cc-primary-dark);font-weight:800}.cc-tool .cc-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #E7EDF3;border-radius:12px;background:#FFF}.cc-tool .cc-data-table thead th{background:#F7F9FC;white-space:nowrap}.cc-tool .cc-table-note{margin-top:.85rem;color:var(--cc-text-soft);font-size:.92rem}.cc-tool .cc-insights-list,.cc-tool .cc-source-list{margin:0;padding-left:1.2rem}.cc-tool .cc-insights-list li,.cc-tool .cc-source-list li{margin-bottom:.6rem}.cc-tool .cc-chart-wrap{position:relative;min-height:280px;padding:.5rem;border:1px solid #E7EDF3;border-radius:12px;background:#FFF}.cc-tool .cc-result-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.cc-tool .cc-result-actions .cc-btn-primary,.cc-tool .cc-result-actions .cc-btn-secondary{margin-right:0}.cc-tool .cc-result-error{max-width:var(--cc-max-width);margin:0 auto 1.5rem;padding:1rem;border:1px solid rgba(231,76,60,.24);border-left:4px solid var(--cc-danger);border-radius:12px;background:#FFF2F1;color:#A1261B;font-weight:700}.cc-tool .cc-section{margin-bottom:1.5rem;padding:1.25rem;border:1px solid rgba(44,62,80,.08);border-radius:16px;background:var(--cc-surface);box-shadow:0 8px 24px rgba(44,62,80,.05)}.cc-tool .cc-section h2{margin:0 0 .95rem;color:var(--cc-secondary);font-size:1.45rem;line-height:1.2}.cc-tool .cc-section h3{margin:1rem 0 .6rem;color:var(--cc-secondary);font-size:1.1rem;line-height:1.25}.cc-tool .cc-section p{margin-top:0;margin-bottom:1rem}.cc-tool .cc-section p:last-child{margin-bottom:0}.cc-tool .cc-example-card{margin-bottom:1rem;padding:1rem;border:1px solid rgba(255,107,53,.14);border-radius:12px;background:linear-gradient(180deg,#FFFFFF 0%,#FFFAF7 100%)}.cc-tool .cc-example-card h3{margin-top:0}.cc-tool .cc-warning-box,.cc-tool .cc-tip-box{margin:0 0 1rem;padding:1rem;border-radius:10px}.cc-tool .cc-warning-box{border-left:4px solid var(--cc-warning);background:rgba(243,156,18,.1)}.cc-tool .cc-tip-box{border-left:4px solid var(--cc-success);background:rgba(39,174,96,.1)}.cc-tool .cc-warning-box strong,.cc-tool .cc-tip-box strong{display:inline-block;margin-bottom:.35rem;color:var(--cc-secondary)}.cc-tool .cc-faq-item{overflow:hidden;margin-bottom:.85rem;border:1px solid #E3E9EF;border-radius:12px;background:#FFF}.cc-tool .cc-faq-question{position:relative;min-height:56px;padding:1rem 3.25rem 1rem 1rem;background:#FFF;color:var(--cc-secondary);font-weight:700;cursor:pointer;transition:var(--cc-transition)}.cc-tool .cc-faq-question:hover,.cc-tool .cc-faq-question:focus{background:#FFF7F2}.cc-tool .cc-faq-icon{position:absolute;top:50%;right:1rem;width:28px;height:28px;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,107,53,.12);color:var(--cc-primary-dark);font-size:1.15rem;line-height:1;transition:var(--cc-transition)}.cc-tool .cc-faq-answer{display:none;padding:0 1rem 1rem;background:#FFF;color:var(--cc-text)}.cc-tool .cc-faq-answer p{margin:0}.cc-tool .cc-faq-item.open .cc-faq-answer{display:block}.cc-tool .cc-faq-item.open .cc-faq-icon{transform:translateY(-50%) rotate(45deg)}.cc-tool .cc-disclaimer{border-left:4px solid var(--cc-danger);background:#FFF8F7}.cc-tool .cc-privacy{background:#F8FBFF}.cc-tool .cc-related-tools{margin-bottom:1rem}.cc-tool .cc-related-tools h2{margin:0 0 1rem;color:var(--cc-secondary);font-size:1.45rem}.cc-tool .cc-related-grid{display:grid;grid-template-columns:1fr;gap:1rem}.cc-tool .cc-related-card{display:block;min-height:100%;padding:1rem;border:1px solid rgba(44,62,80,.08);border-radius:14px;background:#FFF;color:inherit;text-decoration:none;box-shadow:0 8px 20px rgba(44,62,80,.05);transition:var(--cc-transition)}.cc-tool .cc-related-card:hover,.cc-tool .cc-related-card:focus{transform:translateY(-3px);border-color:rgba(255,107,53,.24);box-shadow:0 14px 26px rgba(255,107,53,.12)}.cc-tool .cc-related-card h3{margin:0 0 .55rem;color:var(--cc-secondary);font-size:1.05rem}.cc-tool .cc-related-card p{margin:0;color:var(--cc-text-soft);font-size:.95rem}.cc-tool .cc-source-list strong{color:var(--cc-secondary)}.cc-tool .cc-construction-icon{color:var(--cc-primary);font-size:1.5rem}.cc-tool .cc-hidden{display:none!important}.cc-tool .cc-visually-muted{color:var(--cc-text-light)}.cc-tool .cc-inline-note{display:inline-block;margin-top:.3rem;color:var(--cc-text-soft);font-size:.875rem}.cc-tool .cc-divider{height:1px;margin:1rem 0;background:linear-gradient(90deg,rgba(255,107,53,0),rgba(255,107,53,.22),rgba(255,107,53,0));border:0}@media (min-width:768px){.cc-tool .cc-hero{padding:2rem}.cc-tool .cc-hero h1{font-size:2.5rem}.cc-tool .cc-calculator-form,.cc-tool .cc-section{padding:1.5rem}.cc-tool .cc-form-row-two{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-tool .cc-shape-selector{grid-template-columns:repeat(4,minmax(0,1fr))}.cc-tool .cc-result-highlight{font-size:3.25rem}.cc-tool .cc-result-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-tool .cc-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.cc-tool .cc-result-breakdown{grid-template-columns:repeat(4,minmax(0,1fr))}.cc-tool .cc-related-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cc-tool .cc-section,.cc-tool .cc-calculator-form{padding:2rem}.cc-tool .cc-detail-block{padding:1.25rem}.cc-tool .cc-results{padding:2rem}}@media (max-width:767px){.cc-tool .cc-btn-primary,.cc-tool .cc-btn-secondary{width:100%;margin-right:0}.cc-tool .cc-result-actions{flex-direction:column}.cc-tool .cc-detail-table th,.cc-tool .cc-detail-table td,.cc-tool .cc-data-table th,.cc-tool .cc-data-table td{padding:.75rem;font-size:.92rem}}@media (any-pointer:coarse){.cc-tool .cc-shape-btn,.cc-tool .cc-btn-primary,.cc-tool .cc-btn-secondary,.cc-tool .cc-toggle-btn,.cc-tool .cc-faq-question{min-height:48px}.cc-tool .cc-result-actions{gap:.75rem}}@media (prefers-reduced-motion:reduce){.cc-tool *,.cc-tool *::before,.cc-tool *::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;scroll-behavior:auto!important}}@media print{.cc-tool{color:#000;background:#FFF}.cc-tool .cc-hero,.cc-tool .cc-calculator-form,.cc-tool .cc-section,.cc-tool .cc-results,.cc-tool .cc-detail-block,.cc-tool .cc-related-card{border:1px solid #CCC;background:#FFFFFF!important;color:#000000!important;box-shadow:none}.cc-tool .cc-btn-primary,.cc-tool .cc-btn-secondary,.cc-tool .cc-loading,.cc-tool .cc-related-tools,.cc-tool .cc-chart-wrap canvas{display:none!important}.cc-tool .cc-faq-answer{display:block!important}.cc-tool .cc-faq-icon{display:none!important}.cc-tool a{color:#000;text-decoration:none}.cc-tool .cc-results-container,.cc-tool .cc-section,.cc-tool .cc-calculator-form,.cc-tool .cc-hero{margin-bottom:1rem;break-inside:avoid;page-break-inside:avoid}}