/* Only the calculator, only on phones. Desktop and detailed mode keep their layout. */
#mobileCalc { display:none; }
#mobileCalcDialog:not([open]) { display:none; }
.mcalc-mode-toggle { display:none; }
@media (min-width:768px) { html body main.calc-page[data-ui-mode].calc-page--simple.simple-v3 > .calc-mode-panel #calcModes .calc-mode-btn.calc-mode-carefree { display:none!important; } }
@media (max-width:767px) {
  html body main.calc-page #mobileCalc.is-ready { display:none; }
  #mobileCalc .mcalc-brand { display:flex; align-items:center; justify-content:flex-start; min-height:45px; padding:0; }
  #mobileCalc .mcalc-brand img { width:179.2px; height:44.8px; object-fit:contain; object-position:left center; }
  #mobileCalc .mcalc-topbar { display:grid; grid-template-columns:minmax(0,1fr) 146px; align-items:center; gap:12px; flex-shrink:0; min-width:0; }
  #mobileCalc .mcalc-topbar .mcalc-brand { min-width:0; }
  #mobileCalc .mcalc-topbar .mcalc-brand img { max-width:100%; }
  #mobileCalc .mcalc-topbar #mobileCalcModesHost { min-width:0; padding-top:0; }
  #mobileCalc .mcalc-modes { display:grid; grid-template-columns:1fr 1fr; gap:4px; padding:4px; background:#edf1f5; border-radius:14px; }
  #mobileCalc .mcalc-modes button { min-height:44px; border:0; border-radius:10px; background:transparent; color:#667085; font-family:inherit; font-size:13px; font-weight:600; line-height:1.3; cursor:pointer; }
  #mobileCalc .mcalc-modes button[aria-pressed="true"] { background:#fff; color:#17212e; box-shadow:0 2px 5px #14243b0d; }
  #mobileCalc .mcalc-flow { display:none; }
  html body main.calc-page.calc-mobile-carefree { width:100%; max-width:560px!important; min-height:100svh; padding:12px 20px 108px!important; margin:0 auto!important; overflow:visible!important; }
  html body main.calc-mobile-carefree > :not(#mobileCalc) { display:none!important; }
  body.calc-mobile-carefree { background:#fff!important; }
  body.calc-mobile-carefree .sid-calc-bottom,
  body.calc-mobile-carefree #calcDetailStrip,
  body.calc-mobile-carefree #calcMetricsBar,
  body.calc-mobile-carefree #calcSticky,
  body.calc-mobile-carefree #bottomBar,
  body.calc-mobile-carefree .calc-mobile-sticky { display:none!important; }
  html body.calc-mobile-carefree #bottomBar.calc-bottom-bar { display:none!important; }
  html body main.calc-mobile-carefree #mobileCalc { margin:0!important; }
  #mobileCalc .mcalc-flow { margin-top:8px; }
  .calc-mobile-carefree #mobileCalc .mcalc-flow { display:block; }
  #mobileCalc .mcalc-progress-head { display:flex; align-items:center; justify-content:space-between; color:#718096; font-size:12px; }
  #mobileCalc .mcalc-breadcrumbs { display:flex; align-items:center; gap:6px; width:100%; min-width:0; min-height:30px; margin-top:4px; padding:2px 0; overflow-x:auto; overflow-y:hidden; overscroll-behavior-x:contain; scrollbar-width:none; }
  #mobileCalc .mcalc-breadcrumbs::-webkit-scrollbar { display:none; }
  #mobileCalc .mcalc-crumb { flex:0 0 auto; max-width:160px; margin:0; padding:5px 2px; border:0; border-radius:0; background:transparent; color:#748091; font-family:inherit; font-size:12px; line-height:1.4; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; cursor:pointer; }
  #mobileCalc .mcalc-crumb[aria-current="step"] { color:#1769d4; font-weight:600; text-decoration:underline; text-underline-offset:5px; }
  #mobileCalc .mcalc-crumb-separator { flex:0 0 auto; color:#b3bcc9; font-size:14px; }
  #mobileCalc progress { appearance:none; width:100%; height:2px; display:block; margin:5px 0 10px; border:none; border-radius:3px; overflow:hidden; background:#edf1f5; }
  #mobileCalc progress::-webkit-progress-bar { background:#edf1f5; }
  #mobileCalc progress::-webkit-progress-value { background:#2473e8; }
  #mobileCalc progress::-moz-progress-bar { background:#2473e8; }
  #mobileCalc h2 { margin:0; color:#142236; font-size:21px; line-height:1.2; letter-spacing:-.025em; font-weight:700; outline:none; }
  #mobileCalc .mcalc-hint { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; margin:5px 0 10px; color:#748091; font-size:12px; line-height:1.4; }
  #mobileCalc .mcalc-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
  #mobileCalc[data-cols="1"] .mcalc-choices { grid-template-columns:minmax(0,1fr); }
  #mobileCalc .mcalc-cols-toggle { display:flex; justify-content:flex-end; gap:4px; margin:-2px 0 8px; }
  #mobileCalc .mcalc-cols-toggle button { display:flex; align-items:center; justify-content:center; width:30px; height:30px; margin:0; padding:0; border:1px solid #dae3f0; border-radius:8px; background:#fff; color:#8a96a7; cursor:pointer; }
  #mobileCalc .mcalc-cols-toggle button svg { width:16px; height:16px; }
  #mobileCalc .mcalc-cols-toggle button[aria-pressed="true"] { border-color:#7eaff3; background:#eef5ff; color:#1769d4; }
  #mobileCalc .mcalc-choice { position:relative; display:grid; grid-template-columns:minmax(0,1fr) 22px; align-items:center; gap:10px 5px; margin:0; padding:10px 16px; border:1px solid #e2e7ee; border-radius:9px; background:#fff; color:#233449; text-align:left; font-family:inherit; font-size:13px; font-weight:600; line-height:1.4; cursor:pointer; }
  #mobileCalc[data-cols="1"] .mcalc-choice { gap:8px 12px; }
  #mobileCalc .mcalc-choice.is-selected { border-color:#2473e8; background:#f4f8ff; }
  #mobileCalc .mcalc-choice-check { display:flex; align-items:center; justify-content:center; width:21px; height:21px; border:1px solid #d9e1ed; border-radius:50%; color:transparent; font-size:12px; }
  #mobileCalc .is-selected .mcalc-choice-check { border-color:#2473e8; background:#2473e8; color:#fff; }
  #mobileCalc .mcalc-choice:disabled { opacity:.5; cursor:not-allowed; }
  #mobileCalc .mcalc-choice-reason { grid-column:1/-1; color:#7a8797; font-weight:400; font-size:12px; }
  #mobileCalc .mcalc-choice-image { grid-column:1/-1; width:100%; height:85px; border-radius:10px; object-fit:cover; }
  #mobileCalc[data-cols="1"] .mcalc-choice-image { height:160px; max-height:160px; }
  #mobileCalc .mcalc-option { position:relative; min-width:0; }
  #mobileCalc .mcalc-option .mcalc-choice { width:100%; height:100%; }
  #mobileCalc .mcalc-photo-missing, #mobileCalcInfo .mcalc-photo-missing { display:flex; grid-column:1/-1; align-items:center; justify-content:center; min-height:85px; padding:20px; border-radius:10px; background:#edf1f5; color:#748091; font-size:12px; font-weight:400; }
  #mobileCalc .mcalc-info-button { position:absolute; right:17px; top:17px; display:flex; align-items:center; justify-content:center; width:32px; height:32px; margin:0; padding:0; border:1px solid #dae3f0; border-radius:50%; background:#fffffff2; color:#2473e8; font:700 17px/1 system-ui,sans-serif; cursor:pointer; }
  #mobileCalc[data-step="house"] .mcalc-info-button { right:15px; top:15px; }
  #mobileCalc .mcalc-number { display:flex; align-items:baseline; justify-content:center; gap:8px; margin:30px 0 28px; color:#748091; }
  #mobileCalc .mcalc-number input { width:180px; min-width:0; padding:0 0 8px; border:0; border-bottom:1px solid #e2e7ee; border-radius:0; background:transparent; color:#142236; font-family:inherit; font-size:56px; font-weight:700; line-height:1.2; text-align:center; -moz-appearance:textfield; }
  #mobileCalc .mcalc-number input::-webkit-inner-spin-button { appearance:none; }
  #mobileCalc .mcalc-range { --fill:0%; appearance:none; display:block; width:100%; height:6px; margin:24px 0; border:0; border-radius:10px; background:linear-gradient(to right,#2473e8 var(--fill),#e9eef5 var(--fill)); cursor:pointer; }
  #mobileCalc .mcalc-range::-webkit-slider-thumb { appearance:none; width:26px; height:26px; border:4px solid #fff; border-radius:50%; background:#2473e8; box-shadow:0 0 0 1px #2473e8,0 3px 8px #2473e833; }
  #mobileCalc .mcalc-range::-moz-range-thumb { width:20px; height:20px; border:3px solid #fff; border-radius:50%; background:#2473e8; box-shadow:0 0 0 1px #2473e8; }
  #mobileCalc .mcalc-presets { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:26px 0 14px; }
  #mobileCalc .mcalc-presets button { height:42px; border:0; border-radius:10px; background:#f2f5f9; color:#44546b; font-family:inherit; font-size:14px; font-weight:600; line-height:1; cursor:pointer; }
  #mobileCalc .mcalc-range-scale { display:flex; justify-content:space-between; color:#8a96a7; font-size:12px; }
  #mobileCalc .mcalc-number-skip { display:block; box-sizing:border-box; width:100%; min-width:0; min-height:44px; margin:20px 0 8px; padding:12px; border:1px solid #dce8fa; border-radius:12px; background:#eef5ff; color:#2473e8; font-family:inherit; font-size:13px; font-weight:600; line-height:1.4; white-space:normal; cursor:pointer; }
  #mobileCalc .mcalc-notice { color:#b45309; font-size:13px; line-height:1.4; }
  #mobileCalc .mcalc-nav { position:fixed; z-index:80; bottom:0; left:0; right:0; display:grid; grid-template-columns:minmax(0,1fr) 44px; gap:12px; width:100%; max-width:560px; margin:0 auto; padding:14px 20px max(14px,env(safe-area-inset-bottom)); border-top:1px solid #edf1f5; background:#fffffff5; backdrop-filter:blur(10px); }
  #mobileCalc .mcalc-nav button { min-height:40px; border:0; border-radius:13px; background:#f0f3f7; color:#4c5a6b; font-family:inherit; font-size:13px; font-weight:600; line-height:1.3; cursor:pointer; }
  #mobileCalc .mcalc-nav button:disabled { opacity:.35; cursor:default; }
  #mobileCalc .mcalc-nav.has-skip { grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr); }
  #mobileCalc .mcalc-reset { display:flex; align-items:center; justify-content:center; width:44px; padding:10px; }
  #mobileCalc .mcalc-reset svg { width:20px; height:20px; }
  #mobileCalc #mobileCalcSkip { background:#e6effb; color:#2473e8; }
  #mobileCalc button:focus-visible, #mobileCalc input:focus-visible { outline:2px solid #2473e8; outline-offset:3px; }
  #mobileCalc [hidden] { display:none!important; }
  #mobileCalc .mcalc-result { padding:22px 0; border-top:1px solid #edf1f5; border-bottom:1px solid #edf1f5; }
  #mobileCalc .mcalc-result-label { font-size:12px; color:#748091; }
  #mobileCalc .mcalc-result-sum { margin:12px 0 22px; color:#142236; font-size:clamp(20px,6vw,28px); line-height:1.4; letter-spacing:-.03em; overflow-wrap:anywhere; }
  #mobileCalc .mcalc-metrics { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:0; }
  #mobileCalc .mcalc-metrics dt { font-size:12px; color:#748091; }
  #mobileCalc .mcalc-metrics dd { margin:6px 0 0; font-size:15px; color:#233449; font-weight:600; }
  #mobileCalc .mcalc-summary { margin:22px 0; }
  #mobileCalc .mcalc-summary > div { display:flex; align-items:baseline; justify-content:space-between; gap:16px; padding:8px 0; font-size:13px; }
  #mobileCalc .mcalc-summary dt { color:#748091; }
  #mobileCalc .mcalc-summary dd { margin:0; max-width:60%; color:#233449; text-align:right; overflow-wrap:anywhere; }
  #mobileCalc .mcalc-disclaimer { color:#8a96a7; font-size:12px; line-height:1.6; }
  #mobileCalc .mcalc-additions, #mobileCalc .mcalc-details { display:block; width:100%; margin:18px 0 0; padding:15px; border:0; border-radius:12px; background:#eef5ff; color:#2473e8; font-family:inherit; font-size:14px; font-weight:600; line-height:1.4; cursor:pointer; }
  #mobileCalc .mcalc-details { background:transparent; color:#667085; }
  #mobileCalc .mcalc-detail-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; min-width:0; gap:4px; margin:8px 0 16px; padding:4px; border-radius:11px; background:#edf1f5; }
  #mobileCalc .mcalc-detail-tabs button { display:flex; align-items:center; justify-content:center; width:100%; min-width:0; min-height:36px; margin:0; padding:8px; border:0; border-radius:8px; background:transparent; color:#748091; font-family:inherit; font-size:13px; font-weight:600; line-height:1.3; text-align:center; white-space:normal; overflow-wrap:anywhere; cursor:pointer; }
  #mobileCalc .mcalc-detail-tabs button[aria-pressed="true"] { background:#fff; color:#1769d4; }
  #mobileCalc .mcalc-estimate { width:100%; margin-top:20px; border-collapse:collapse; table-layout:fixed; font-size:13px; }
  #mobileCalc .mcalc-estimate caption { margin-bottom:8px; color:#142236; text-align:left; font-weight:600; }
  #mobileCalc .mcalc-estimate th, #mobileCalc .mcalc-estimate td { padding:10px 0; border-bottom:1px solid #e2e7ee; text-align:left; vertical-align:top; font-weight:400; overflow-wrap:anywhere; }
  #mobileCalc .mcalc-estimate td:last-child { width:42%; padding-left:12px; text-align:right; font-variant-numeric:tabular-nums; }
  #mobileCalc .mcalc-estimate .is-heading th { padding-top:18px; color:#1769d4; font-weight:600; }
  #mobileCalc .mcalc-estimate tfoot th, #mobileCalc .mcalc-estimate tfoot td { font-weight:600; }
  #mobileCalc .mcalc-stage-details { width:100%; padding:0; border:0; background:transparent; color:#1769d4; font-family:inherit; font-size:inherit; line-height:1.5; text-align:left; cursor:pointer; }
  #mobileCalc .mcalc-stage-details::after { content:' ›'; }
  #mobileCalc .mcalc-operation #opexModal { position:static; inset:auto; display:block; padding:0; background:transparent; }
  #mobileCalc .mcalc-operation #opexModal .om-box { width:100%; max-width:none; max-height:none; padding:0; background:transparent; border-radius:0; box-shadow:none; overflow:visible; }
  #mobileCalc .mcalc-operation #opexModal .om-x { display:none; }
  #mobileCalc .mcalc-operation #opexModal .om-top { gap:12px; }
  #mobileCalc .mcalc-operation #opexModal .om-heat { display:flex; width:100%; }
  #mobileCalc .mcalc-operation #opexModal .om-heat select { flex:1; min-width:0; min-height:40px; font-size:16px; }
  #mobileCalc .mcalc-operation #opexModal table { table-layout:fixed; font-size:12px; }
  #mobileCalc .mcalc-operation #opexModal td { overflow-wrap:anywhere; padding:8px 4px; }
  #mobileCalc .mcalc-operation #opexModal td:nth-child(2), #mobileCalc .mcalc-operation #opexModal td:last-child { width:29%; white-space:normal; }
  #mobileCalc .mcalc-operation #opexModal tr.om-tot td { font-size:12px; }
  #mobileCalc .mcalc-operation #opexModal .om-adv-grid,
  #mobileCalc .mcalc-operation #opexModal .om-cmp-grid { grid-template-columns:minmax(0,1fr); }
  #mobileCalc .mcalc-operation #opexModal .om-field select,
  #mobileCalc .mcalc-operation #opexModal .om-field input,
  #mobileCalc .mcalc-operation #opexModal .om-cmp-col select,
  #mobileCalc .mcalc-operation #opexModal .om-cmp-col input { font-size:16px; min-height:40px; }
  #mobileCalc .mcalc-proceed { position:static; display:block; box-sizing:border-box; width:100%; min-width:0; max-width:100%; min-height:48px; margin:18px 0 0; padding:14px; border:0; border-radius:12px; background:#2473e8; color:#fff; font-family:inherit; font-size:14px; font-weight:600; line-height:1.4; white-space:normal; overflow-wrap:anywhere; cursor:pointer; }
  #mobileCalc .mcalc-build-option { display:grid; grid-template-columns:36px minmax(0,1fr); gap:8px 12px; margin-bottom:16px; padding:20px 16px; border:1px solid #dce5f1; border-radius:16px; background:#fff; color:#142236; text-decoration:none; }
  #mobileCalc .mcalc-build-option strong { align-self:center; font-size:16px; line-height:1.4; }
  #mobileCalc .mcalc-build-option > span:last-child { grid-column:2; font-size:13px; line-height:1.5; color:#748091; }
  #mobileCalc .mcalc-build-icon { display:flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:10px; background:#edf4ff; color:#2473e8; font-size:24px; }
  @media(prefers-reduced-motion:no-preference) { #mobileCalc .mcalc-content { animation:mcalc-appear .18s ease-out; } }
  @keyframes mcalc-appear { from{opacity:.5;transform:translateY(6px)} to{opacity:1;transform:translateY(0)} }

  /* Native modal top layer: no site header, footer, sticky rails or background scroll. */
  html:has(body.calc-mobile-carefree), html body.calc-mobile-carefree { overflow:hidden!important; overscroll-behavior:none; }
  html body.calc-mobile-carefree > :not(#mobileCalcDialog):not(script):not(style):not(link) { display:none!important; }
  #mobileCalcDialog.mcalc-fullscreen[open] {
    position:fixed; inset:0; top:var(--mcalc-top,0px); z-index:2147483647;
    display:flex; width:100%; height:var(--mcalc-height,100dvh);
    max-width:none; max-height:none; margin:0; padding:0; border:0; border-radius:0;
    background:#f5f7fb; color:#142236; overflow:hidden; overscroll-behavior:none;
    font-family:var(--mcalc-font,system-ui,sans-serif); font-size:14px; line-height:1.5;
  }
  #mobileCalcDialog::backdrop { background:#f5f7fb; }
  #mobileCalcDialog, #mobileCalcDialog * { box-sizing:border-box; }
  #mobileCalcDialog.mcalc-fullscreen[open] #mobileCalc.is-ready {
    display:flex; flex-direction:column; width:100%; max-width:560px; height:100%; min-height:0;
    margin:0 auto!important; padding:max(12px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) 0 max(20px,env(safe-area-inset-left));
  }
  #mobileCalcDialog #mobileCalc .mcalc-brand, #mobileCalcDialog #mobileCalcModesHost { flex-shrink:0; }
  #mobileCalcDialog #mobileCalc .mcalc-flow { display:flex; flex-direction:column; flex:1; min-height:0; overflow:hidden; }
  #mobileCalcDialog #mobileCalc .mcalc-flow > :not(.mcalc-content) { flex-shrink:0; }
  #mobileCalcDialog #mobileCalc .mcalc-content {
    flex:1; width:100%; min-width:0; min-height:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain;
    scrollbar-width:thin; scroll-padding-block:12px; padding-bottom:8px; -webkit-overflow-scrolling:touch;
  }
  #mobileCalcDialog #mobileCalc .mcalc-notice { margin:8px 0; }
  #mobileCalcDialog #mobileCalc .mcalc-notice:empty { margin:0; }
  #mobileCalcDialog #mobileCalc .mcalc-nav {
    position:static; flex-shrink:0; max-width:none; margin:0; padding:14px 0 max(14px,env(safe-area-inset-bottom));
    background:#f5f7fb; backdrop-filter:none;
  }
  #mobileCalcInfo:not([open]) { display:none; }
  #mobileCalcInfo[open] { position:fixed; inset:auto 12px max(12px,env(safe-area-inset-bottom)) 12px; display:flex; flex-direction:column; width:calc(100% - 24px); max-width:536px; max-height:calc(var(--mcalc-height,100dvh) - 32px); margin:0 auto; padding:16px; border:0; border-radius:18px; background:#fff; color:#142236; font-family:var(--mcalc-font,system-ui,sans-serif); font-size:13px; line-height:1.5; overflow:hidden; }
  #mobileCalcInfo::backdrop { background:#14223680; }
  #mobileCalcInfo .mcalc-info-header { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-shrink:0; margin-bottom:12px; }
  #mobileCalcInfo h2 { margin:0; font-size:18px; line-height:1.3; outline:none; }
  #mobileCalcInfo .mcalc-info-close { flex-shrink:0; width:34px; height:34px; margin:0; border:0; border-radius:50%; background:#f1f4f8; color:#5b6a7e; font-size:22px; cursor:pointer; }
  #mobileCalcInfo .mcalc-info-content { min-height:0; overflow-y:auto; overscroll-behavior:contain; }
  #mobileCalcInfo .mcalc-info-gallery { display:flex; gap:10px; overflow-x:auto; scroll-snap-type:x mandatory; }
  #mobileCalcInfo .mcalc-info-photo { flex:0 0 100%; min-width:0; width:100%; height:200px; object-fit:cover; border-radius:14px; scroll-snap-align:start; }
  #mobileCalcInfo .mcalc-info-description { white-space:pre-line; }
  #mobileCalcInfo h3 { margin:16px 0 6px; font-size:13px; }
  #mobileCalcInfo ul { margin:0; padding-left:20px; }
  #mobileCalcInfo .mcalc-info-reason { color:#b45309; }
  #mobileCalcInfo .mcalc-info-choose { flex-shrink:0; min-height:42px; margin-top:16px; padding:10px; border:0; border-radius:11px; background:#2473e8; color:#fff; font-family:inherit; font-size:13px; font-weight:600; cursor:pointer; }
  #mobileCalcInfo .mcalc-info-choose:disabled { background:#edf1f5; color:#8a96a7; cursor:not-allowed; }
  #mobileCalcInfo [hidden] { display:none!important; }
  #mobileCalcInfo #stgOverlay { position:static; inset:auto; display:block; padding:0; background:transparent; }
  #mobileCalcInfo #stgModal { width:100%; max-width:none; max-height:none; border-radius:0; background:transparent; box-shadow:none; animation:none; }
  #mobileCalcInfo #stgModal .stg-modal-head { display:none; }
  #mobileCalcInfo #stgModal .stg-tabs { grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:6px; padding:0 0 12px; }
  #mobileCalcInfo #stgModal .stg-tab { flex:1; min-width:0; padding:8px 4px; font-size:12px; }
  #mobileCalcInfo #stgBody { max-height:none; padding:0; overflow:visible; }
  #mobileCalcInfo #stgModal .stg-item { display:grid; grid-template-columns:20px minmax(0,1fr); gap:6px 10px; }
  #mobileCalcInfo #stgModal .stg-item-price { grid-column:2; white-space:normal; overflow-wrap:anywhere; }
  #mobileCalcInfo button:focus-visible { outline:2px solid #2473e8; outline-offset:3px; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified,
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified { position:relative!important; display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:6px!important; width:100%!important; min-width:0!important; max-width:none!important; margin:0!important; padding:0!important; overflow:visible!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .calc-mode-btn,
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn { position:relative!important; display:flex!important; flex-direction:row!important; align-items:center!important; justify-content:center!important; gap:8px!important; width:100%!important; min-width:0!important; max-width:none!important; min-height:58px!important; height:auto!important; margin:0!important; padding:10px 12px!important; border:1px solid #e0e7f0!important; border-radius:12px!important; background:#fff!important; color:#61718a!important; box-shadow:none!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .calc-mode-carefree,
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-carefree { order:-1; grid-column:1/-1; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .calc-mode-btn.is-active,
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn.is-active { border-color:#7eaff3!important; background:#eef5ff!important; color:#1769d4!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .cm-sub,
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .cm-sub { display:none!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .cm-ico,
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .cm-ico { display:flex!important; width:24px!important; height:24px!important; margin:0!important; padding:0!important; flex:0 0 24px!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .cm-ico svg,
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .cm-ico svg { width:100%!important; height:100%!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .cm-txt,
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .cm-txt { display:block!important; margin:0!important; font-size:13px!important; line-height:1.3!important; font-weight:600!important; }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified { grid-template-columns:minmax(0,1fr) 36px!important; gap:6px!important; }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn { min-height:32px!important; padding:4px 10px!important; border-radius:9px!important; }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .cm-ico { width:20px!important; height:20px!important; flex-basis:20px!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .calc-mode-btn,
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn { order:1!important; grid-column:1/-1!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .calc-mode-carefree,
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-carefree { order:-1!important; grid-column:1!important; grid-row:1!important; }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified:not([data-options-open="true"]) .calc-mode-btn:not(.calc-mode-carefree) { display:none!important; }
  #calcModes.mcalc-unified .mcalc-mode-toggle { display:flex; align-items:center; justify-content:center; align-self:center; order:0; grid-column:2; grid-row:1; width:36px; height:36px; margin:0; padding:8px; border:1px solid #dce5f1; border-radius:9px; background:#fff; color:#61718a; cursor:pointer; }
  #calcModes.mcalc-unified .mcalc-mode-toggle svg { display:block; width:18px; height:18px; }
  #calcModes.mcalc-unified .mcalc-mode-toggle[aria-expanded="true"] { border-color:#7eaff3; background:#eef5ff; color:#1769d4; }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-carefree { min-height:36px!important; padding:6px!important; }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-carefree .cm-ico { display:none!important; }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-carefree .cm-txt { font-size:12px!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .calc-mode-btn[data-mode="lite"],
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn[data-mode="lite"] { grid-column:1!important; grid-row:2!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .calc-mode-btn[data-mode="budget"],
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn[data-mode="budget"] { grid-column:2!important; grid-row:2!important; }
  #calcModes.mcalc-unified .mcalc-mode-toggle { justify-self:end; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .calc-mode-carefree { grid-column:1/-1!important; }
  html body main.calc-page.calc-page--simple.simple-v3[data-ui-mode] > .calc-mode-panel #calcModes.mcalc-unified .mcalc-mode-toggle { display:none!important; }
  #mobileCalc .mcalc-topbar:has(#calcModes[data-options-open="true"]) { padding-bottom:46px; }
  #mobileCalc .mcalc-topbar #mobileCalcModesHost { position:relative; z-index:3; }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn:not(.calc-mode-carefree) { position:absolute!important; grid-area:auto!important; top:var(--mcalc-menu-top,58px); width:calc((var(--mcalc-menu-width,146px) - 6px)/2)!important; min-height:36px!important; padding:6px!important; gap:6px!important; }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn[data-mode="lite"] { right:calc((var(--mcalc-menu-width,146px) + 6px)/2); }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn[data-mode="budget"] { right:0; }
  #mobileCalcDialog #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn:not(.calc-mode-carefree) .cm-txt { font-size:12px!important; }
  html body main.calc-page.calc-page--simple.simple-v3 > .calc-simple-stepper { gap:16px!important; margin-block:24px!important; padding:8px 0!important; scroll-snap-type:none!important; scroll-padding-inline:12px; }
  html body main.calc-page.calc-page--simple.simple-v3 > .calc-simple-stepper .css-step { flex:0 0 164px!important; min-width:164px!important; margin:0!important; padding:12px!important; gap:10px!important; }
  html body main.calc-page.calc-page--simple.simple-v3 > .calc-simple-stepper .css-step b { white-space:nowrap!important; font-size:12px!important; }
  html body main.calc-page.calc-page--simple.simple-v3 > .calc-simple-stepper .css-step::before { display:none!important; }
  html body main.calc-page.calc-page--simple.simple-v3 .calc-layout { gap:24px!important; }
  html body main.calc-page.calc-page--simple.simple-v3 #inputSection .calc-section + .calc-section { margin-top:24px!important; }
  #mobileCalcDialog[data-compact="true"] #mobileCalc .mcalc-brand { min-height:54px; padding:0 10px 0 0; }
  #mobileCalcDialog[data-compact="true"] #mobileCalc .mcalc-brand img { height:50px; }
  #mobileCalcDialog[data-compact="true"] #mobileCalc .mcalc-hint { display:none; }
  #mobileCalcDialog[data-compact="true"] #mobileCalc .mcalc-flow { margin-top:6px; }
  #mobileCalcDialog[data-compact="true"] #mobileCalc progress { margin:3px 0 6px; }
  #mobileCalcDialog[data-compact="true"] #mobileCalc h2 { font-size:19px; margin-bottom:8px; }
  #mobileCalcDialog[data-tight="true"] #mobileCalc .mcalc-brand { padding-bottom:0; }
  #mobileCalcDialog[data-tight="true"] #mobileCalcModesHost #calcModes.mcalc-unified .calc-mode-btn { min-height:30px!important; }
  #mobileCalcDialog[data-tight="true"] #mobileCalc .mcalc-flow { margin-top:5px; }
  #mobileCalcDialog[data-tight="true"] #mobileCalc .mcalc-progress-head { font-size:10px; line-height:1.2; }
  #mobileCalcDialog[data-tight="true"] #mobileCalc progress { margin:3px 0 6px; }
  #mobileCalcDialog[data-tight="true"] #mobileCalc .mcalc-hint { font-size:11px; margin-bottom:6px; }
  @media (max-height:600px) {
    #mobileCalcDialog #mobileCalc .mcalc-brand { min-height:36px; padding:0; }
    #mobileCalcDialog #mobileCalc .mcalc-flow { margin-top:14px; }
    #mobileCalcDialog #mobileCalc progress { margin-bottom:16px; }
    #mobileCalcDialog #mobileCalc h2 { font-size:23px; }
    #mobileCalcDialog #mobileCalc .mcalc-hint { margin:8px 0 12px; font-size:13px; }
    #mobileCalcDialog #mobileCalc .mcalc-nav { padding-top:10px; }
  }
}
