.calc-entry{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:32px;margin-bottom:55px;border-block:1px solid var(--line)}.calc-entry h2{font-size:clamp(1.6rem,2.6vw,2.25rem);margin:9px 0}.calc-entry p:not(.eyebrow){color:var(--muted)}.calc-entry .btn{flex-shrink:0}
.calc-heading{padding-block:38px 32px}.calc-heading .eyebrow{margin-top:32px}.calc-heading h1{font-size:clamp(2.6rem,4.5vw,4.3rem);margin:16px 0 22px}.calc-heading>p:last-child{max-width:650px;color:var(--muted);font-size:1.1rem}
.calc-shell{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:36px;align-items:start;margin-bottom:80px;scroll-margin-top:110px}.calc-main{min-width:0;border:1px solid var(--line);background:#fff;border-radius:6px;overflow:hidden}.calc-progress{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:24px 30px;margin:0;border-bottom:1px solid var(--line);font-size:.75rem;color:var(--muted)}.calc-progress li{display:flex;gap:8px;align-items:center;line-height:1.3}.calc-progress span{flex-shrink:0;width:25px;height:25px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.calc-progress [aria-current]{color:var(--red);font-weight:700}.calc-progress [aria-current] span{background:var(--red);border-color:var(--red);color:#fff}.calc-progress .is-done span{background:#e9edef;color:var(--ink)}
#calc-form{padding:32px}.calc-stage h2{font-size:clamp(1.6rem,2.5vw,2.15rem);line-height:1.15;margin-bottom:12px}.calc-stage h2+p{color:var(--muted);margin-bottom:26px}.calc-card{padding:24px;border:1px solid var(--line);border-radius:4px;margin-bottom:18px;background:#fafbfb;min-width:0}.calc-card h3{font-size:1.25rem;line-height:1.35}.calc-card p{margin-top:12px}.calc-card small{color:var(--muted)}.calc-shell .calc-hint{font-size:.8125rem;color:var(--muted);line-height:1.6;margin-block:14px 0}.calc-count{border:0;padding:0;margin:0 0 24px;display:flex;gap:10px}.calc-count legend{font-size:.875rem;margin-bottom:10px}.calc-count button{border:1px solid var(--line);background:white;border-radius:4px;flex:1;padding:16px 4px;min-width:0}.calc-count b{display:block;font-size:1.6rem}.calc-count span{font-size:.75rem}.calc-count [aria-pressed=true]{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red);color:var(--red);background:#fcf1f2}
.calc-shell label{font-size:.875rem;font-weight:600}.calc-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.calc-fields label{min-width:0}.calc-fields label>span{font-size:.75rem;color:var(--muted);font-weight:400}.calc-wide{grid-column:1/-1}.calc-shell input:not([type=checkbox]),.calc-shell select{display:block;width:100%;min-width:0;min-height:48px;padding:10px 12px;margin-top:7px;border:1px solid #bbc2c7;border-radius:4px;background:#fff;color:var(--ink);font-size:16px;line-height:1.5}.calc-shell input[aria-invalid=true]{border-color:var(--red)}.calc-check{display:flex;align-items:flex-start;gap:12px;line-height:1.6;margin-top:22px}.calc-check input{accent-color:var(--red);width:20px;height:20px;flex:0 0 20px;margin:2px 0}.calc-field-error{display:block;color:var(--red);font-size:.75rem;line-height:1.5;font-weight:400;margin-top:4px}.calc-field-error:empty{display:none}.calc-room{border:1px solid var(--line);border-radius:4px;margin-bottom:14px}.calc-room summary{list-style:none;display:flex;align-items:center;gap:16px;padding:18px 22px;cursor:pointer;min-height:72px}.calc-room summary::-webkit-details-marker{display:none}.calc-room summary>span:first-child{min-width:0;flex:1}.calc-room summary small{font-size:.625rem;letter-spacing:.12em;color:var(--muted);display:block}.calc-room summary b{display:block;overflow-wrap:anywhere;font-size:1rem}.calc-room-badge{white-space:nowrap;font-size:.875rem;color:var(--red)}.calc-room summary>span:last-child{font-size:1.4rem;font-weight:400;color:var(--red)}.calc-room[open] summary>span:last-child{transform:rotate(45deg)}.calc-room-body{border-top:1px solid var(--line);padding:22px}.calc-room-result{font-size:.875rem;margin-top:20px}.calc-room-result:empty{display:none}.calc-notice{padding:12px 14px;background:#fff5e8;color:#614719;border-left:3px solid #b28646;font-size:.8125rem;margin-top:12px}.calc-climate{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}.calc-climate summary,.calc-method summary{cursor:pointer;font-weight:600;min-height:40px;padding-block:6px}.calc-climate .calc-fields{margin-top:14px}
.calc-aside{position:sticky;top:116px}.calc-live{background:var(--ink);color:white;padding:30px;border-radius:5px}.calc-live .eyebrow{color:#c8d0d6}.calc-live-number{font-size:2.8rem;font-weight:600;letter-spacing:-.04em;margin-block:15px 0;line-height:1.3}.calc-live hr{border:0;border-top:1px solid #ffffff33;margin-block:24px}.calc-live small{display:block;font-size:.8125rem;color:#c8d0d6;margin-top:8px}.calc-live #calc-live-note{font-size:.8125rem}.calc-local-note{font-size:.75rem;color:var(--muted);padding:18px 8px}.calc-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:24px;margin-top:26px;border-top:1px solid var(--line)}.calc-controls>span{font-size:.75rem;color:var(--muted)}.calc-controls button:disabled{opacity:.35;transform:none}.calc-error{color:var(--red);font-size:.875rem;margin-top:16px}.calc-error:empty{display:none}
.calc-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px}.calc-result-grid .calc-card{margin:0}.calc-result-grid small{font-size:.625rem;letter-spacing:.07em;line-height:1.6;display:block}.calc-total{background:var(--ink);color:#fff;padding:24px;border-radius:4px}.calc-total strong{font-size:2.5rem;display:block;letter-spacing:-.04em;line-height:1.4}.calc-total strong span{font-size:1.1rem}.calc-result-grid h3{font-size:2rem;margin-top:12px}.calc-result-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.calc-result-head h3{overflow-wrap:anywhere}.calc-result-head>b{font-size:.9375rem;white-space:nowrap;color:var(--red)}.calc-result-rooms .calc-card>p{font-size:.875rem}.calc-cost{padding:28px;border:1px solid #dcc1c6;background:#fff6f7;border-radius:4px;margin-top:22px}.calc-cost h3{font-size:1.8rem;margin-block:12px}.calc-cost>p:not(.eyebrow){color:var(--muted);margin-bottom:20px;font-size:.9375rem}.calc-result-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:24px}.calc-shell button.text-link{border:0;background:none;padding:12px 5px;min-height:44px}.calc-method{font-size:.875rem;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.calc-method p{margin-top:12px;color:var(--muted)}.calc-method a{text-decoration:underline;text-underline-offset:3px}.calc-edit{margin-top:16px}.calc-shell #calc-copy-status{font-size:.8125rem;margin-top:10px;color:var(--muted)}
@media(max-width:1000px){.calc-shell{grid-template-columns:minmax(0,1fr) 250px;gap:20px}.calc-progress{padding:20px;gap:6px}.calc-progress li{display:block}.calc-progress span{margin-bottom:6px}#calc-form{padding:24px}.calc-live{padding:24px}.calc-result-head{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:760px){.calc-entry{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:32px}.calc-shell{grid-template-columns:minmax(0,1fr);gap:18px;margin-bottom:40px}.calc-aside{position:static}.calc-live{display:none}.calc-local-note{padding:0}.calc-heading{padding-block:22px 24px}.calc-heading .eyebrow{margin-top:24px}.calc-heading h1{font-size:2.7rem}.calc-heading>p:last-child{font-size:1rem}.calc-shell{scroll-margin-top:90px}.calc-progress{padding:16px;font-size:.625rem;gap:8px}.calc-progress span{width:24px;height:24px;font-size:.75rem}#calc-form{padding:20px 16px}.calc-card{padding:18px}.calc-fields{gap:16px 12px}.calc-count{gap:6px}.calc-count span{font-size:.625rem}.calc-count button{padding:12px 2px}.calc-room summary{padding:16px;gap:10px}.calc-room-body{padding:18px 14px}.calc-controls .btn{padding:12px 16px}.calc-result-grid{gap:12px}.calc-result-grid .calc-card,.calc-total{padding:16px}.calc-total strong{font-size:2rem}.calc-result-grid h3{font-size:1.6rem}.calc-cost{padding:20px}.calc-cost .btn{width:100%}.calc-result-actions .btn{flex:1;font-size:.8125rem;padding:12px}.calc-cost h3{font-size:1.6rem}}
@media(max-width:380px){.calc-fields{grid-template-columns:minmax(0,1fr)}.calc-wide{grid-column:auto}.calc-result-grid{grid-template-columns:1fr}}
@media print{body:has(#ac-calculator){background:#fff;font-size:10pt}body:has(#ac-calculator)>header,body:has(#ac-calculator)>footer,body:has(#ac-calculator)>dialog,body:has(#ac-calculator) .mobile-cta,body:has(#ac-calculator) .mobile-sticky,body:has(#ac-calculator) .skip,.calc-progress,.calc-aside,.calc-result-actions,.calc-cost button,.calc-edit,#calc-copy-status,.calc-controls{display:none!important}.calc-heading,.calc-shell{width:100%;margin:0;padding:0}.calc-shell{display:block}.calc-main{border:0}#calc-form{padding:20px 0}.calc-heading .breadcrumb{display:none}.calc-heading h1{font-size:24pt}.calc-heading .eyebrow{margin-top:0}.calc-result-grid{grid-template-columns:1fr 1fr}.calc-card,.calc-total,.calc-cost{break-inside:avoid;color:#000;background:#fff;border:1px solid #aaa}.calc-total strong{color:#000}.calc-method{display:none}}

@media print{body:has(#ac-calculator) .mobile-actions{display:none!important}}
