:root{--bg: #f4f7f9;--surface: #ffffff;--surface-alt: #eceff1;--header-bg: #dee7f1;--ink: #141519;--ink-soft: #57595c;--ink-faint: #7e7e7e;--line: #c1c3c6;--line-soft: #d3d3d3;--line-strong: rgba(20, 21, 25, .24);--accent: #aada43;--accent-hover: #98c82f;--accent-ink: #141519;--accent-outline: #83ac29;--accent-outline-hover: #6f9422;--info: #009dd9;--dark-panel: #141519;--dark-panel-ink: #ffffff;--success: #2f8a3a;--success-soft: #e2f1de;--warning: #a35a12;--warning-soft: #fbecd8;--error: #a5243b;--error-soft: #f6dfe3;--radius-pill: 30px;--radius-md: 8px;--radius-sm: 4px;--shadow-sm: 0 2px 10px rgba(20, 21, 25, .06);--shadow-md: 0 18px 40px rgba(20, 21, 25, .08);--content: 1480px;--transition: .2s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:none;text-size-adjust:none;scroll-behavior:smooth;color-scheme:light;overflow-x:hidden}body{min-width:320px;min-height:100dvh;overflow-x:hidden;font-family:Montserrat,Golos Text,Arial,sans-serif;font-size:16px;line-height:1.625;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea,summary{transition:color var(--transition),background-color var(--transition),border-color var(--transition),box-shadow var(--transition),transform var(--transition)}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:inherit;line-height:1.15;color:var(--ink);text-wrap:balance}p{text-wrap:pretty}:focus-visible{outline:2px solid var(--accent-outline);outline-offset:3px}.skip-link{position:fixed;top:12px;left:12px;z-index:100;transform:translateY(-160%);padding:12px 18px;color:var(--dark-panel-ink);background:var(--dark-panel);border-radius:var(--radius-md)}.skip-link:focus{transform:translateY(0)}.topbar{position:sticky;top:0;z-index:20;background:var(--header-bg);border-bottom:1px solid rgba(20,21,25,.06)}.topbar-inner{width:min(100% - 40px,var(--content));min-height:96px;margin-inline:auto;display:flex;align-items:center;gap:20px}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand-logo{display:block;width:clamp(210px,22vw,310px);height:auto}.brand-text{display:grid;gap:2px;font-weight:600;line-height:1.2}.brand-text span:first-child{font-size:20px;letter-spacing:.02em;color:var(--ink)}.brand-text span:last-child{color:var(--ink-soft);font-weight:400;font-size:13px;letter-spacing:.02em}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:20px}.calculator-mode{margin-left:clamp(12px,4vw,64px);display:inline-flex;align-items:center;gap:3px;padding:4px;border:1px solid rgba(20,21,25,.12);border-radius:var(--radius-pill);background:#ffffff8f}.calculator-mode-label{padding:0 9px 0 12px;color:var(--ink-soft);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.calculator-mode-option{min-width:48px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--ink-soft);font-size:14px;font-weight:700;white-space:nowrap}.calculator-mode-option.is-active{background:var(--ink);color:#fff;box-shadow:0 4px 12px #14151924}.calculator-mode-option:disabled{cursor:not-allowed;opacity:.62}.calculator-mode-option small{font-size:9px;font-weight:500;white-space:nowrap}.profile-import{min-width:0;margin-top:26px;padding:22px;border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(145deg,#f9fbfc,#eef3f5)}.profile-import-heading,.profile-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.profile-import-heading h3{margin-top:4px;font-size:20px}.profile-import-heading p:not(.section-label){max-width:760px;margin-top:7px;color:var(--ink-soft);font-size:14px}.profile-import-badge{flex-shrink:0;padding:6px 10px;border:1px solid rgba(163,90,18,.24);border-radius:var(--radius-pill);color:var(--warning);background:var(--warning-soft);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.profile-dropzone{min-height:104px;margin-top:18px;display:flex;align-items:center;justify-content:center;gap:16px;padding:20px;border:1.5px dashed var(--line-strong);border-radius:var(--radius-md);background:#ffffffc7;cursor:pointer}.profile-dropzone:hover,.profile-dropzone.is-dragging{border-color:var(--accent-outline);background:#fff;box-shadow:0 0 0 4px #aada4321}.profile-dropzone-icon{width:52px;height:52px;display:grid;place-content:center;border-radius:50%;color:#fff;background:var(--dark-panel);font-size:10px;font-weight:800;line-height:1.15;text-align:center}.profile-dropzone strong,.profile-dropzone small{display:block}.profile-dropzone small{margin-top:3px;color:var(--ink-soft);font-size:12px}.profile-import-status{min-height:42px;margin-top:12px;padding:10px 12px;border-left:3px solid var(--line);color:var(--ink-soft);background:#ffffff94;font-size:13px}.profile-import-status.is-loading{border-color:var(--info);color:var(--ink)}.profile-import-status.is-success{border-color:var(--success);color:var(--success);background:var(--success-soft)}.profile-import-status.is-error{border-color:var(--error);color:var(--error);background:var(--error-soft)}.profile-preview{min-width:0;max-width:100%;margin-top:18px;border-top:1px solid var(--line);padding-top:18px}.profile-preview-head strong,.profile-preview-head span{display:block}.profile-preview-head span{margin-top:3px;color:var(--ink-soft);font-size:12px}.profile-project-report{margin-top:14px;padding:14px;border:1px solid var(--line-strong);border-radius:var(--radius-md);color:var(--ink);background:var(--surface)}.profile-project-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}.profile-project-stats span{min-width:0;padding:9px 10px;border-left:3px solid var(--accent-outline);color:var(--ink);background:var(--surface-alt);font-size:18px;font-weight:800;line-height:1.1}.profile-project-stats small{display:block;margin-bottom:4px;color:var(--ink-soft);font-size:9px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.profile-project-report p,.profile-project-report li{color:var(--ink-soft);font-size:12px}.profile-project-report ul{display:grid;gap:4px;margin:8px 0 0 18px}.profile-preview-scroll{min-width:0;width:100%;max-width:100%;margin-top:14px;overflow-x:auto;border:1px solid var(--line);background:#fff}.profile-preview-table{width:100%;min-width:920px;border-collapse:collapse;font-size:12px}.profile-preview-table th,.profile-preview-table td{padding:8px;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:middle}.profile-preview-table th{color:var(--ink-soft);background:var(--surface-alt);font-size:10px;line-height:1.25;letter-spacing:.035em;text-transform:uppercase}.profile-preview-table tr:last-child td{border-bottom:0}.profile-preview-table .input-compact{min-width:100px;min-height:36px;padding:6px 8px;font-size:12px}.profile-preview-table td:nth-child(2) .input-compact{min-width:76px;width:92px}.profile-confidence{display:inline-flex;padding:3px 7px;border-radius:var(--radius-pill);font-size:10px;font-weight:800;text-transform:uppercase}.profile-confidence.is-high{color:var(--success);background:var(--success-soft)}.profile-confidence.is-medium{color:var(--warning);background:var(--warning-soft)}.profile-preview-table td:last-child small{display:block;max-width:120px;margin-top:4px;color:var(--ink-soft);line-height:1.25}.profile-preview-note{margin-top:10px;color:var(--ink-soft);font-size:12px}.profile-stamp-preview{margin:14px 0;padding:14px;border:1px solid rgba(111,145,126,.32);border-radius:10px;background:#6f917e14}.profile-stamp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin-top:10px}.profile-stamp-grid span{min-width:0;overflow-wrap:anywhere}.profile-stamp-grid small{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.profile-stamp-preview p{margin:10px 0 0;color:var(--muted);font-size:12px}.text-link{min-height:44px;display:inline-flex;align-items:center;color:var(--ink);font-size:15px;font-weight:500}.text-link:hover{color:var(--accent-outline)}.icon-button{width:44px;height:44px;display:grid;place-items:center;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--ink)}.icon-button:hover{border-color:#14151929;background:#fff9}.app-shell{width:min(100% - 40px,var(--content));margin-inline:auto;padding-block:56px 72px}.intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:48px;align-items:end;margin-bottom:48px}.eyebrow{display:inline-flex;align-items:center;gap:12px;margin-bottom:16px;color:var(--ink-soft);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.eyebrow:after{content:"";width:56px;height:1px;background:var(--line)}h1{max-width:22ch;font-size:clamp(32px,3.2vw,48px);font-weight:600;line-height:1.1;letter-spacing:-.01em;text-transform:none}.intro-copy{max-width:62ch;color:var(--ink-soft);font-size:15px;line-height:1.7}.intro-detailed{grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);align-items:start}.intro-heading{position:sticky;top:118px}.intro-guide{display:grid;gap:12px}.intro-guide-item{padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface) 92%,transparent)}.intro-guide-item strong{display:block;margin-bottom:6px;color:var(--ink);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.intro-guide-item p{color:var(--ink-soft);font-size:14px;line-height:1.62}.intro-guide-note{border-color:color-mix(in srgb,var(--accent-outline) 32%,var(--line));background:color-mix(in srgb,var(--accent-soft) 58%,var(--surface))}.status-line{margin-top:20px;display:flex;flex-wrap:wrap;gap:8px}.status-chip{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:6px 16px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font-size:12px;font-weight:500;letter-spacing:.02em}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--accent-outline)}.workspace{min-width:0;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:24px;align-items:start}.panel{min-width:0;max-width:100%;border:1px solid rgba(20,21,25,.08);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-sm)}.panel-header{padding:28px 32px;display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(20,21,25,.08)}.panel-header h2{margin-bottom:8px;font-size:20px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.panel-header p{max-width:62ch;color:var(--ink-soft);font-size:14px}.panel-body{min-width:0;padding:28px 32px}.project-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:32px}.field{display:grid;gap:6px}.field-wide{grid-column:1 / -1}.foundation-mode-field{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px 24px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-alt)}.foundation-mode-field .helper{margin-top:5px}.foundation-toggle{display:inline-grid;grid-template-columns:1fr 1fr;gap:3px;padding:4px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface)}.foundation-option{min-width:88px;min-height:38px;padding:0 16px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--ink-soft);font-size:13px;font-weight:700}.foundation-option.is-active{background:var(--ink);color:#fff;box-shadow:0 4px 12px #14151924}.foundation-diameters{grid-column:1 / -1;color:var(--ink);font-size:12px;font-weight:600}.field label,.field-label{color:var(--ink-soft);font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.input,.select,.textarea{width:100%;min-height:48px;padding:0 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-size:15px;font-weight:500}.textarea{min-height:96px;padding-block:12px;resize:vertical}.input:hover,.select:hover,.textarea:hover{border-color:var(--ink-faint)}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent-outline);box-shadow:0 0 0 3px #83ac292e;outline:none}.input[type=number]{font-variant-numeric:tabular-nums}.section-label{margin-bottom:16px;display:flex;align-items:center;gap:12px;color:var(--ink-soft);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.section-label:after{content:"";flex:1;height:1px;background:var(--line)}.well-list{display:grid;gap:20px}.well-card{border-top:1px solid rgba(20,21,25,.12);padding-top:20px}.well-card-main{display:grid;grid-template-columns:1.1fr repeat(3,minmax(100px,.75fr)) 48px;gap:12px;align-items:end}.r-assumption-banner{margin-bottom:24px;padding:16px 20px;border:1px solid rgba(20,21,25,.14);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-soft);font-size:13px;line-height:1.6}.r-assumption-banner strong{color:var(--ink)}.r-well-card-main{display:grid;grid-template-columns:1.15fr repeat(4,minmax(105px,.75fr)) 48px;gap:12px;align-items:end}.r-row-summary{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px 20px;padding:12px 16px;background:var(--surface-alt);border-radius:var(--radius-sm);color:var(--ink-soft);font-size:12px}.r-row-summary strong{color:var(--ink);font-variant-numeric:tabular-nums}.height-breakdown{display:grid;grid-template-columns:minmax(72px,.6fr) repeat(4,minmax(90px,1fr));gap:8px;padding-block:8px;border-bottom:1px solid rgba(20,21,25,.08);color:var(--ink-soft);font-size:12px}.height-breakdown strong{color:var(--ink)}.r-schedule-table{min-width:2200px}.r-schedule-table .r-vertical-header{min-width:54px;height:150px;padding:8px 4px;writing-mode:vertical-rl;transform:rotate(180deg);line-height:1.1}.r-schedule-table .r-schedule-title,.r-schedule-table .r-schedule-group,.r-schedule-table .r-schedule-standard{font-style:italic;letter-spacing:0;text-transform:none}.r-schedule-table .r-schedule-title{height:auto;padding:4px 8px;font-size:12px}.r-schedule-table .r-schedule-standard{white-space:normal;line-height:1.15}.r-schedule-table .r-schedule-total th,.r-schedule-table .r-schedule-total td{background:#fff;border-top-width:2px;font-weight:700}.well-title{display:flex;align-items:center;gap:12px}.row-index{min-width:26px;color:var(--ink-faint);font-size:12px;font-weight:600;letter-spacing:.04em}.remove-button{width:48px;height:48px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);font-size:22px;font-weight:500;line-height:1}.remove-button:hover{border-color:var(--error);color:var(--error);background:var(--error-soft)}.row-details{margin-top:16px;border-bottom:1px solid rgba(20,21,25,.08);padding-bottom:20px}.row-details summary,.assumptions summary{min-height:44px;display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--ink);font-size:14px;font-weight:600;list-style:none}.row-details summary::-webkit-details-marker,.assumptions summary::-webkit-details-marker{display:none}.row-details summary:after,.assumptions summary:after{content:"+";margin-left:auto;color:var(--accent-outline);font-size:22px}.row-details[open] summary:after,.assumptions[open] summary:after{content:"−"}.details-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px;padding-top:16px}.assembly-preview{display:grid;gap:8px;padding:16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-alt)}.assembly-preview strong{color:var(--accent-outline);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.assembly-preview span{line-height:1.55;color:var(--ink)}.assembly-preview small{color:var(--ink-soft)}.readonly-field{align-content:center;min-height:48px;padding:8px 16px;border:1px dashed var(--line);border-radius:var(--radius-sm);background:var(--surface)}.readonly-field strong{font-size:14px;font-variant-numeric:tabular-nums}.check-field{min-height:44px;display:flex;align-items:center;gap:12px;color:var(--ink);font-size:14px;font-weight:500}.check-field input{width:20px;height:20px;accent-color:var(--accent-outline)}.button-row{margin-top:20px;display:flex;flex-wrap:wrap;gap:12px}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 32px;border:1px solid var(--accent-outline);border-radius:var(--radius-pill);background:var(--surface);color:var(--accent-outline);font-size:14px;font-weight:600;letter-spacing:.02em}.button:hover{border-color:var(--accent-outline-hover);color:var(--accent-outline-hover);background:#aada4314}.button-primary{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);padding:0 40px}.button-primary:hover{border-color:var(--accent-hover);background:var(--accent-hover);color:var(--accent-ink)}.button:disabled,.button:disabled:hover{cursor:not-allowed;border-color:#b8bcc2;background:#e2e4e7;color:#777c84;opacity:1}.button-quiet{border-color:transparent;background:transparent;color:var(--ink-soft);padding:0 20px}.button-quiet:hover{color:var(--ink);background:#1415190d}.assumptions{margin-top:28px;border-top:1px solid rgba(20,21,25,.08)}.assumptions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-top:16px}.specification-details{margin-top:0;margin-bottom:32px;padding:16px 20px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-alt)}.specification-details summary{min-height:32px}.specification-grid{display:grid;grid-template-columns:2fr .65fr .85fr;gap:16px;padding-top:20px}.specification-grid .textarea{min-height:84px}.helper{margin-top:8px;color:var(--ink-soft);font-size:12px;line-height:1.55}.result-panel{position:sticky;top:96px;overflow:hidden;border-radius:16px}.result-top{padding:32px;color:var(--dark-panel-ink);background:var(--dark-panel)}.result-top .eyebrow{color:#ffffffb3}.result-top .eyebrow:after{background:#ffffff47}.result-main{display:flex;align-items:baseline;gap:12px}.result-main strong{font-size:clamp(36px,3.4vw,46px);font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.result-main span{font-size:14px;color:#ffffffbf}.result-caption{margin-top:8px;color:#ffffffb8;font-size:13px}.metrics{padding:0 32px;background:var(--surface)}.metric{min-height:62px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;border-bottom:1px solid rgba(20,21,25,.08)}.metric:last-child{border-bottom:none}.metric-label{color:var(--ink-soft);font-size:14px}.metric-value{font-size:14px;font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right}.breakdown{padding:20px 32px;border-top:1px solid rgba(20,21,25,.08);background:var(--surface)}.breakdown summary{min-height:44px;display:flex;align-items:center;cursor:pointer;color:var(--ink);font-size:14px;font-weight:600;list-style:none}.breakdown summary::-webkit-details-marker{display:none}.breakdown-list{display:grid;gap:8px;padding-top:12px}.breakdown-row{display:flex;justify-content:space-between;gap:16px;color:var(--ink-soft);font-size:13px}.breakdown-row span:last-child{color:var(--ink);font-weight:500;font-variant-numeric:tabular-nums}.breakdown-row.price-total{margin-top:6px;padding-top:10px;border-top:1px solid var(--line);color:var(--ink);font-weight:600}.warnings{padding:20px 32px;background:var(--surface);border-top:1px solid rgba(20,21,25,.08)}.warning-item{margin-top:12px;padding:12px 16px;border-radius:var(--radius-sm);background:var(--warning-soft);color:var(--warning);font-size:13px;line-height:1.5}.validation-note{margin-top:14px;color:var(--ink-soft);font-size:11px;line-height:1.5}.empty-warning{display:flex;align-items:center;gap:8px;color:var(--success);font-size:13px;font-weight:600}.empty-warning:before{content:"●";color:var(--success);font-size:10px}.exports{padding:28px 32px 32px;background:var(--surface-alt);border-top:1px solid rgba(20,21,25,.08)}.exports .section-label{margin-bottom:12px}.exports .button-row{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.exports .button{width:100%;padding:0 20px}.disclaimer{margin-top:16px;color:var(--ink-soft);font-size:12px;line-height:1.55}.schedule-panel{min-width:0;margin-top:40px;padding:28px 32px 32px;border:1px solid rgba(20,21,25,.12);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-sm)}.schedule-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);gap:32px;align-items:end;margin-bottom:20px}.schedule-heading .eyebrow{margin-bottom:8px}.schedule-heading h2{font-size:22px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.schedule-heading>p{color:var(--ink-soft);font-size:13px}.schedule-scroll{width:100%;overflow-x:auto;border:1px solid #111;background:#fff;scrollbar-color:#7d7d7d #e8e8e8;scrollbar-width:thin}.schedule-scroll:focus-visible{outline:3px solid rgba(131,172,41,.35);outline-offset:3px}.well-schedule-table{width:max-content;min-width:2960px;border-collapse:collapse;table-layout:fixed;color:#111;background:#fff;font-family:Arial,sans-serif;font-size:12px;line-height:1.15}.basic-schedule-table{min-width:1380px}.basic-schedule-table .basic-schedule-composition{min-width:280px;text-align:left;white-space:normal}.well-schedule-table th,.well-schedule-table td{min-width:56px;height:30px;padding:4px 5px;border:1px solid #111;text-align:center;vertical-align:middle;white-space:normal;font-variant-numeric:tabular-nums}.well-schedule-table thead th{font-weight:700;background:#efefef}.well-schedule-table thead tr:first-child th{height:34px}.well-schedule-table thead tr:nth-child(2) th{height:32px}.well-schedule-table thead tr:nth-child(3) th,.well-schedule-table thead tr:nth-child(4) th{height:28px}.well-schedule-table th[rowspan="4"]{min-width:92px;max-width:112px}.well-schedule-table th:first-child,.well-schedule-table tbody th{position:sticky;left:0;z-index:2;min-width:82px;background:#fff;box-shadow:1px 0 #111}.well-schedule-table thead th:first-child{z-index:4;background:#efefef}.well-schedule-table tbody th{font-weight:700}.well-schedule-table tbody th small{display:block;margin-top:3px;font-size:10px;font-weight:400}.well-schedule-table .d-1000{background:#d8ef99}.well-schedule-table .d-1500{background:#b9dff1}.well-schedule-table .d-2000{background:#efb9c7}.well-schedule-table .d-2600{background:#f4d6a0}.well-schedule-table .d-3200{background:#d8c8ea}.lead-callout{margin-top:40px;padding:36px 40px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;border-radius:16px;background:var(--header-bg)}.lead-callout h2{margin-bottom:8px;font-size:22px;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.lead-callout p{max-width:66ch;color:var(--ink-soft);font-size:15px}.modal{width:min(100% - 32px,640px);max-height:calc(100dvh - 32px);margin:auto;padding:0;border:none;border-radius:16px;color:var(--ink);background:var(--surface);box-shadow:0 30px 80px #14151947}.modal::backdrop{background:#1415198f;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-header{padding:28px 32px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid rgba(20,21,25,.08)}.modal-header h2{font-size:20px;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.modal-body{max-height:calc(100dvh - 128px);overflow-y:auto;padding:28px 32px}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.consent{margin-top:16px;display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;align-items:start;color:var(--ink-soft);font-size:12px;line-height:1.55}.consent input{width:20px;height:20px;accent-color:var(--accent-outline)}.consent a{color:var(--accent-outline);text-underline-offset:2px}.form-status{margin-top:16px;padding:12px 16px;border-radius:var(--radius-sm);font-size:14px}.form-status[data-state=success]{color:var(--success);background:var(--success-soft)}.form-status[data-state=error]{color:var(--error);background:var(--error-soft)}.footer{width:min(100% - 40px,var(--content));margin-inline:auto;padding-block:40px 56px;display:flex;flex-wrap:wrap;gap:12px 40px;border-top:1px solid rgba(20,21,25,.12);color:var(--ink-soft);font-size:13px}.footer a{color:var(--ink);font-weight:500}.footer a:hover{color:var(--accent-outline)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1080px){.workspace{grid-template-columns:1fr}.result-panel{position:static}}@media(max-width:760px){.topbar-inner,.app-shell,.footer{width:min(100% - 24px,var(--content))}.app-shell{padding-block:32px 48px}.topbar-inner{min-height:72px;gap:10px}.brand-logo{width:clamp(138px,42vw,180px)}.brand-text span:last-child,.calculator-mode-label,.calculator-mode-option small,.topbar-actions{display:none}.calculator-mode{margin-left:auto}.calculator-mode-option{min-width:40px;min-height:34px;padding-inline:12px}.intro{grid-template-columns:1fr;gap:20px;margin-bottom:32px}.intro-heading{position:static}.intro-guide-item{padding:16px}.workspace{gap:20px}.panel-header,.panel-body,.metrics,.breakdown,.warnings,.exports{padding-inline:20px}.result-top{padding:24px 20px}.project-fields,.specification-grid,.modal-grid,.foundation-mode-field{grid-template-columns:1fr}.foundation-toggle{width:100%}.field-wide{grid-column:auto}.well-card-main,.r-well-card-main{grid-template-columns:1fr 1fr}.well-title{grid-column:1 / -1}.height-breakdown{grid-template-columns:1fr 1fr}.remove-button{align-self:end}.details-grid,.assumptions-grid{grid-template-columns:1fr 1fr}.lead-callout{grid-template-columns:1fr;padding:24px;gap:20px}.schedule-panel{padding:24px 20px}.schedule-heading{grid-template-columns:1fr;gap:12px}.profile-import{padding:18px}.profile-import-heading,.profile-preview-head{flex-direction:column}.profile-import-badge{align-self:flex-start}.profile-preview-head .button{width:100%}.profile-project-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-dropzone{justify-content:flex-start}.schedule-scroll,.profile-preview-scroll{max-width:100%}}@media(max-width:480px){.brand-text span:last-child{display:none}.well-card-main,.r-well-card-main,.details-grid,.assumptions-grid,.height-breakdown{grid-template-columns:1fr}.remove-button{width:100%}.exports .button{flex:1 1 100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
