.dc-workspace,.dc-input-card,.dc-results-card,.dc-area,.dc-opening,.dc-field{min-width:0}.dc-workspace{align-items:start;gap:var(--space-6);grid-template-columns:minmax(0,1fr);width:100%;min-width:0;display:grid}@media (width>=960px){.dc-workspace{gap:var(--space-6);grid-template-columns:minmax(0,1.2fr) minmax(0,.95fr)}}.dc-input-card,.dc-results-card{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}@media (width>=540px){.dc-input-card,.dc-results-card{padding:var(--space-6)}}.dc-card-title{color:var(--color-text);font-size:var(--heading-sm);margin:0;line-height:1.25}.dc-card-intro{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.55}.dc-input-shell{gap:var(--space-4);border:0;min-width:0;margin:0;padding:0;display:grid}.dc-units{align-items:center;gap:var(--space-3) var(--space-4);min-width:0;margin:var(--space-5) 0 0;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.dc-units legend{padding-inline:var(--space-2);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.dc-units label{align-items:center;gap:var(--space-2);min-height:40px;color:var(--color-text);font-size:var(--text-sm);cursor:pointer;display:inline-flex}.dc-units input,.dc-check-field input{width:20px;height:20px;accent-color:var(--color-brand)}.dc-input-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}@media (width>=540px){.dc-input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.dc-field{min-width:0}.dc-label{align-items:baseline;gap:var(--space-2);margin:0 0 var(--space-2);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold);flex-wrap:wrap;display:flex}.dc-required{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-normal)}.dc-input-unit{align-items:stretch;min-width:0;display:flex}.dc-control{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:var(--text-base);display:block}.dc-input-unit .dc-control{border-top-right-radius:0;border-bottom-right-radius:0}.dc-unit{max-width:48%;padding-inline:var(--space-3);border:1px solid var(--color-border);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--color-surface-subtle);color:var(--color-text-muted);font-size:var(--text-sm);overflow-wrap:anywhere;border-left:0;flex:none;align-items:center;display:flex}.dc-control:focus-visible,.dc-action:focus-visible,.dc-details summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.dc-control[aria-invalid=true]{border-color:var(--color-danger)}.dc-help,.dc-error{margin:var(--space-2) 0 0;font-size:var(--text-sm);overflow-wrap:anywhere;line-height:1.5}.dc-help{color:var(--color-text-muted)}.dc-error{color:var(--color-danger);font-weight:var(--weight-medium)}.dc-error--block{margin:0}.dc-area-list,.dc-opening-list{gap:var(--space-4);min-width:0;display:grid}.dc-area,.dc-opening,.dc-estimator{gap:var(--space-4);min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);margin:0;display:grid}.dc-area{background:var(--color-bg)}.dc-opening,.dc-estimator{background:var(--color-surface)}.dc-area>legend,.dc-opening>legend,.dc-estimator>legend{max-width:100%;padding-inline:var(--space-2);color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold);overflow-wrap:anywhere}.dc-area-toolbar,.dc-area-actions,.dc-subheading,.dc-results-header{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.dc-area-toolbar{color:var(--color-text-muted);font-size:var(--text-sm)}.dc-openings{gap:var(--space-3);min-width:0;padding-top:var(--space-4);border-top:1px solid var(--color-border);display:grid}.dc-subheading h3{color:var(--color-text);font-size:var(--text-base);margin:0}.dc-subheading .dc-help{max-width:64ch}.dc-check-field{min-width:0}.dc-check-field>label{align-items:center;gap:var(--space-2);min-height:44px;color:var(--color-text);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;display:inline-flex}.dc-action{box-sizing:border-box;justify-content:center;align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-brand-strong);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);text-align:center;cursor:pointer;text-decoration:none;display:inline-flex}.dc-action:hover:not(:disabled){background:var(--color-brand-subtle)}.dc-action:disabled{opacity:.58;cursor:not-allowed}.dc-action--quiet{min-height:40px;padding:var(--space-2) var(--space-3)}.dc-section{gap:var(--space-4);min-width:0;margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-border);display:grid}.dc-section h3,.dc-breakdown h3{color:var(--color-text);font-size:var(--text-lg);margin:0;line-height:1.35}.dc-details{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:0}.dc-details summary{min-height:48px;padding:var(--space-3) var(--space-4);color:var(--color-text);font-weight:var(--weight-semibold);cursor:pointer;align-items:center;display:flex}.dc-details-body{gap:var(--space-4);min-width:0;padding:0 var(--space-4) var(--space-4);display:grid}.dc-results-header{align-items:flex-start}.dc-results-header h2{color:var(--color-text);font-size:var(--heading-sm);margin:0;line-height:1.3}.dc-eyebrow{margin-bottom:var(--space-2);color:var(--color-brand-strong);font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.05em;display:block}.dc-local-badge{min-height:32px;padding-inline:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);font-size:var(--text-xs);align-items:center;display:inline-flex}.dc-sheet-result{margin-top:var(--space-5);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-brand-subtle);text-align:center}.dc-sheet-result>span{color:var(--color-text-muted);font-size:var(--text-sm)}.dc-sheet-result strong{margin-top:var(--space-2);color:var(--color-brand-strong);font-size:var(--heading-lg);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.15;display:block}.dc-sheet-result strong small{font-size:var(--text-lg)}.dc-sheet-result p{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--text-sm)}.dc-result-list{gap:0;margin:0;display:grid}.dc-result-row{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);min-width:0;padding-block:var(--space-3);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.dc-result-row dt{color:var(--color-text-muted);font-size:var(--text-sm)}.dc-result-row dd{min-width:0;color:var(--color-text);font-weight:var(--weight-semibold);text-align:right;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:0}.dc-result-row dd small{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--weight-normal);display:block}.dc-result-row--total dt,.dc-result-row--total dd{color:var(--color-text);font-size:var(--text-base);font-weight:var(--weight-bold)}.dc-disclaimer,.dc-privacy-note{margin:var(--space-4) 0 0;color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.55}.dc-breakdown{gap:var(--space-3);min-width:0;margin-top:var(--space-6);display:grid}.dc-breakdown-desktop{width:100%;min-width:0;display:none}.dc-breakdown-desktop table{table-layout:fixed;border-collapse:collapse;width:100%;font-size:var(--text-xs)}.dc-breakdown-desktop caption{padding:var(--space-2);color:var(--color-text-muted);text-align:left}.dc-breakdown-desktop th,.dc-breakdown-desktop td{padding:var(--space-2);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;overflow-wrap:anywhere}.dc-breakdown-desktop th{color:var(--color-text);font-weight:var(--weight-semibold)}.dc-breakdown-desktop td{color:var(--color-text-muted);font-variant-numeric:tabular-nums}.dc-breakdown-desktop tfoot th,.dc-breakdown-desktop tfoot td{color:var(--color-text);font-weight:var(--weight-bold)}.dc-breakdown-mobile{gap:var(--space-3);min-width:0;display:grid}.dc-area-result{min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg)}.dc-area-result h4{color:var(--color-text);font-size:var(--text-base);overflow-wrap:anywhere;margin:0}.dc-area-result>p{margin:var(--space-1) 0;color:var(--color-text-muted);font-size:var(--text-sm);overflow-wrap:anywhere}.dc-total-breakdown{margin-top:var(--space-3)}.dc-cost-warning{margin:var(--space-3) 0 0;padding:var(--space-3);border-left:3px solid var(--color-warning);background:var(--color-surface-subtle);color:var(--color-text);font-size:var(--text-sm);line-height:1.5}.dc-export-actions{gap:var(--space-2);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.dc-export-actions .dc-action{flex:130px}.dc-status{min-height:1.5em;margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--text-sm)}.dc-empty-result{margin-top:var(--space-5);padding:var(--space-5);border:1px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-bg)}.dc-empty-result h3{color:var(--color-text);font-size:var(--text-base);margin:0}.dc-empty-result p{margin:var(--space-3) 0 0;color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.55}.dc-input-card,.dc-results-card,.dc-area,.dc-opening,.dc-result-list,.dc-breakdown-desktop{overflow-wrap:anywhere}@media (width>=720px){.dc-breakdown-desktop{display:block}.dc-breakdown-mobile{display:none}}@media (prefers-reduced-motion:reduce){.dc-workspace *,.dc-workspace :before,.dc-workspace :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
