/* Extend the sealcoat planner's existing visual system. */
.crack-shell{color:#252525}.crack-shell main{padding-bottom:32px}.crack-shell h1{color:#171717}.crack-shell .eyebrow{color:#515151}.crack-shell .summary-top .eyebrow{color:#f7c200}.crack-shell .text-button{color:#286341}.crack-shell .section-heading .text-button{color:#f7c200}.crack-shell select,.crack-dialog select{display:block;width:100%;min-height:46px;padding:10px 32px 10px 12px;border:1px solid #cdd3cf;border-radius:7px;background:#fff;color:#252525;font:inherit;margin-top:7px;appearance:auto}.crack-shell input,.crack-shell select,.crack-dialog input,.crack-dialog select,.crack-dialog textarea{font-size:16px;min-width:0}.crack-shell input:invalid,.crack-dialog input:invalid:not(:placeholder-shown){border-color:#b84032}.crack-shell label,.crack-dialog label{font-size:14px}.crack-shell .panel{border-color:#ddd}.crack-shell .section-heading{margin-bottom:22px}.crack-shell .crack-unit{display:flex;gap:10px;align-items:center}.crack-unit select{width:auto;min-width:190px;margin:0}.crack-help{margin:0 24px 18px!important;color:#515151;font-size:14px}.crack-marking{margin:0 24px 16px;padding:18px;border:1px solid #ddd;border-radius:8px;background:#fafafa}.crack-row-top{display:flex;align-items:center;gap:14px;margin-bottom:15px}.crack-row-number{color:#777;font-weight:700;font-size:14px}.crack-row-name{flex:1}.crack-remove{align-self:flex-end}.crack-row-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.crack-row-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:14px;font-size:14px;color:#515151}.width-presets{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.width-presets button{background:#fff;border:1px solid #d4d4d4;border-radius:4px;padding:7px 10px;font-size:14px;min-height:36px}.width-presets button:hover{border-color:#111;background:#f7f0d8}.crack-toolbar{padding:4px 24px 22px;display:flex;align-items:center;gap:18px;justify-content:space-between}.crack-toolbar span{font-size:14px}.crack-shell .panel-foot{font-size:14px;background:#f5f5f5;color:#555}.crack-settings{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:0 24px 12px}.crack-assumptions{margin:18px 24px;border:1px solid #dedede;border-radius:7px}.crack-assumptions summary{padding:14px;cursor:pointer;font-size:14px;font-weight:600}.crack-assumptions-body{padding:0 14px 14px;display:grid;grid-template-columns:200px 1fr;gap:20px}.crack-assumptions-body p{font-size:14px;color:#515151}.crack-product{margin:0 24px 20px;padding:20px;border:1px solid #dedede;border-radius:8px}.crack-product h3,.crack-order h3{display:flex;align-items:center;gap:10px;color:#171717;font-size:17px}.crack-swatch{width:18px;height:18px;border:1px solid #999;border-radius:50%;flex-shrink:0;display:inline-block}.crack-product-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.crack-product .helper{font-size:14px;color:#606660;margin-top:12px}.crack-results-body{padding:0 24px}.crack-order{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;padding:26px 0;border-bottom:1px solid #ddd}.crack-order p{font-size:14px;color:#515151;margin-top:8px}.crack-basis{display:inline-block;font-size:13px;background:#f5f3e8;color:#67521e;padding:5px 8px;border-radius:4px;margin-top:10px}.crack-order .estimate-lines{font-size:14px}.crack-order .estimate-lines dd{text-align:right;margin:0}.crack-order .estimate-lines small{display:block;font-size:14px;font-weight:400}.crack-packages{border-radius:8px;background:#f6f8f6;border:1px solid #d9e4dc;padding:20px;align-self:start}.crack-packages>strong{font:600 21px Poppins,Arial,sans-serif;line-height:1.5}.crack-order-footer{padding:24px 0;display:flex;justify-content:space-between;align-items:center;gap:24px}.crack-order-footer p{font-size:14px;color:#515151;margin-top:6px}.crack-empty{padding:30px 0}.crack-empty p{margin-top:8px;color:#515151}.crack-shell .device-note{font-size:14px!important;color:#515151}.crack-currency{font-size:14px}.crack-footer{display:flex;flex-wrap:wrap;gap:22px;margin:26px 0}.crack-faq{border-top:1px solid #d5d5d5;padding:18px 0}.crack-faq summary{font-weight:600;cursor:pointer}.crack-faq p{font-size:14px;color:#515151;margin-top:12px;max-width:950px}.crack-shell .error,.crack-dialog .error{color:#a42d25}.crack-shell .error{margin:14px 0}#crack-status:empty{display:none}#crack-status{margin-top:20px;padding:14px 18px;border-left:4px solid #33ca7f;background:white;font-size:15px;overflow-wrap:anywhere}#crack-status.error{border-color:#a42d25;color:#a42d25}.crack-dialog{position:fixed;top:var(--roadly-modal-center,50%);transform:translateY(-50%);left:0;right:0;margin:0 auto;width:660px;max-width:calc(100% - 28px);max-height:var(--roadly-modal-height,85vh);overflow:auto;border:1px solid #d6d6d6;border-radius:12px;padding:26px;background:white;color:#252525;box-shadow:0 18px 60px #0003}.crack-dialog::backdrop{background:#0007}.crack-dialog h2{font-size:23px;padding-right:72px;margin-bottom:8px}.crack-dialog p{margin:12px 0;color:#515151;font-size:15px}.crack-close{float:right;position:sticky;top:0;z-index:2;padding:7px 10px;min-height:36px}.crack-dialog form{display:grid;gap:16px}.crack-dialog .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.crack-dialog #crack-freight:not([hidden]){display:grid;gap:14px}.crack-dialog-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.crack-dialog .quote-project{background:#f4f4f4;padding:15px;margin:18px 0;border-radius:7px}.crack-dialog .crack-quote-note{font-size:14px;padding:14px;background:#f5f8f5;margin:0}.crack-saved-row{border-top:1px solid #ddd;padding:18px 0}.crack-saved-row p{font-size:13px}.crack-print{display:none}
@media(min-width:1100px){.crack-row-fields{grid-template-columns:minmax(180px,1fr) minmax(245px,1.5fr) repeat(3,minmax(100px,.7fr))}}
@media(max-width:700px){.crack-shell .section-heading{gap:18px}.crack-unit{width:100%;justify-content:space-between}.crack-row-fields,.crack-settings,.crack-product-controls,.crack-assumptions-body,.crack-order{grid-template-columns:1fr}.crack-marking,.crack-product,.crack-assumptions{margin-inline:16px;padding:16px}.crack-assumptions{padding:0}.crack-help{margin-inline:16px!important}.crack-settings{margin-inline:16px}.crack-toolbar{padding-inline:16px;align-items:flex-start;flex-direction:column}.crack-row-top{gap:10px;flex-wrap:wrap}.crack-row-number{display:none}.crack-row-name{flex-basis:100%}.crack-remove{padding:7px 10px;min-height:36px}.crack-row-foot{align-items:flex-start;flex-direction:column}.crack-results-body{padding-inline:16px}.crack-order{gap:18px}.crack-order-footer{flex-direction:column;align-items:stretch}.crack-shell .workflow a{font-size:13px}.crack-currency{display:none}.crack-dialog{padding:20px}.crack-dialog .form-grid{grid-template-columns:1fr}.crack-dialog h2{font-size:20px}.crack-shell h1{font-size:28px}.crack-shell .btn,.crack-dialog .btn{font-size:14px}.crack-packages>strong{font-size:20px}}
@media print{.crack-shell,.crack-dialog{display:none!important}.crack-print{display:block;padding:15mm;color:#111}.crack-print h1{font-size:24px}.crack-print h2{font-size:20px;margin-top:16px}.crack-print h3{font-size:17px;margin-top:18px}.crack-print p{margin:10px 0;line-height:1.6}.crack-print h3,.crack-print p{break-inside:avoid}@page{size:A4;margin:10mm}}

.crack-pail-size{display:flex;flex-direction:column;gap:10px;padding:4px 0}.crack-pail-size strong{font-size:16px}.crack-save-bottom{display:flex;align-items:center;gap:24px;padding:24px;background:#fff;border:1px solid #d8dde1;border-radius:12px;margin-top:24px}.crack-save-bottom h2{margin:0 0 8px}.crack-save-bottom p{margin:0;line-height:1.6;max-width:850px}.crack-save-bottom .btn{flex-shrink:0}@media(max-width:650px){.crack-save-bottom{flex-direction:column;align-items:stretch}}

.crack-methods{display:flex;flex-wrap:wrap;gap:12px;margin:0 24px 20px}.crack-warning{padding:15px 18px;background:#fff5ce;border-left:4px solid #e2b000;margin:16px 24px;font-size:14px;line-height:1.6;color:#51421b}.crack-results-body .crack-warning{margin:20px 0}.crack-packages>small{display:block;font-size:11px;letter-spacing:1px;color:#40604a;margin-bottom:7px}.crack-packages>strong{display:block}.crack-product>a{display:inline-block;margin-top:12px}#crack-map{margin:0 24px 20px}.crack-map-tools{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.crack-map-search{display:flex;gap:10px}.crack-map-search input{flex:1;min-width:0}.crack-map-canvas{height:400px;position:relative;z-index:0;border:1px solid #ccc;border-radius:8px}.crack-shape{display:flex;gap:10px;align-items:center;margin:8px 0}.crack-shape input{flex:1;min-width:0}.crack-map-results{display:flex;flex-direction:column;gap:6px}.crack-map-results button{text-align:left;padding:10px;border:1px solid #ddd;background:#fff}.crack-map-help{font-size:13px;color:#555;margin:12px 0}.crack-map-tools .active{background:#f7c200;color:#111}.crack-map-off{padding:26px;border:1px dashed #aaa;background:#f5f5f5;border-radius:8px}.crack-map-off h3{margin-bottom:8px}.crack-map-off p{font-size:14px;line-height:1.6}
@media(min-width:1100px){.crack-row-fields{grid-template-columns:minmax(250px,1.5fr) repeat(3,minmax(120px,1fr))}}
@media(max-width:700px){.crack-methods,.crack-warning,#crack-map{margin-left:16px;margin-right:16px}.crack-map-search{flex-direction:column}.crack-shape{flex-wrap:wrap}.crack-shape input{flex-basis:65%}.crack-map-canvas{height:340px}.crack-unit select{min-width:0}.crack-shell .workflow{flex-wrap:wrap}.crack-shell .workflow a{white-space:normal}}

/* Explicit title colours keep every black section header readable. */
.crack-shell .section-heading h2,.crack-shell .summary-top h2,.crack-shell .crack-section-title{color:#fff!important}.crack-shell .section-heading h2,.crack-shell .summary-top h2{display:flex;align-items:center;gap:11px;min-width:0}.crack-shell .crack-section-title{font-size:20px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}.crack-product-selection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 24px 22px}.crack-product-selection label{overflow-wrap:anywhere}.crack-row-foot{align-items:flex-start;flex-direction:column;gap:6px}.crack-row-fields{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:700px){.crack-product-selection{grid-template-columns:1fr;margin-inline:16px}.crack-row-fields{grid-template-columns:1fr}.crack-shell .crack-section-title{font-size:18px}.crack-shell .section-heading h2{width:100%}}
