/* Compact, equal-width comparison columns with the product names kept in view. */
#compare-dialog{box-sizing:border-box;width:min(1200px,96vw);max-width:96vw;max-height:92vh;max-height:92dvh;padding:0;border:1px solid #b4d1e6;border-radius:16px;background:#fff;box-shadow:0 24px 80px #00152c55;overflow:hidden;color:#163455}
#compare-dialog[open]{display:flex;flex-direction:column}
#compare-dialog::backdrop{background:#061b4280}
#compare-dialog .comparison-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px 10px;flex:none}
#compare-dialog #compare-title{margin:0;line-height:1.1}
#compare-dialog #close-compare{float:none;flex:none;margin:0;width:44px;height:44px;font-size:25px;border-color:#dbe5ee;background:#f7f9fc}
#compare-content{display:flex;flex-direction:column;min-height:0;overflow:hidden}
#compare-dialog .comparison-toolbar{display:flex;flex-wrap:wrap;gap:6px 24px;justify-content:space-between;align-items:center;padding:0 24px 14px;font-size:12px;line-height:1.5;color:#53677f}
#compare-dialog .comparison-legend{display:inline-flex;align-items:center;gap:7px}
#compare-dialog .comparison-legend i{width:10px;height:10px;background:#eaf3ff;border:1px solid #9fc5ee;border-radius:3px}
#compare-dialog .compare-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border-top:1px solid #dbe5ee;border-bottom:1px solid #dbe5ee}
#compare-dialog table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;min-width:calc(158px + var(--compare-count) * 245px);font-size:13px;line-height:1.55}
#compare-dialog .comparison-label-col{width:158px}
#compare-dialog th,#compare-dialog td{box-sizing:border-box;min-width:0;width:auto;padding:10px 18px;vertical-align:top;border:0;border-right:1px solid #e6edf3;border-bottom:1px solid #e6edf3;text-align:left;line-height:1.55;overflow-wrap:anywhere;background:#fff}
#compare-dialog th:last-child,#compare-dialog td:last-child{border-right:0}
#compare-dialog th:first-child{min-width:0;width:auto;position:sticky;left:0;z-index:1;font-weight:600;color:#405873;background:#f9fbfd}
#compare-dialog thead th{position:sticky;top:0;z-index:3;padding:14px 18px 8px;background:#fff;box-shadow:0 1px 0 #d6e2ed}
#compare-dialog thead th:first-child{z-index:4;background:#f9fbfd}
#compare-dialog .comparison-table-label{font-size:13px;margin:0;color:#163455}
#compare-dialog .comparison-scroll-hint{font-size:11px;font-weight:400;line-height:1.5;color:#6a7b8e;margin:5px 0 0}
#compare-dialog .comparison-product{display:flex;gap:14px;align-items:center;min-height:86px}
#compare-dialog .comparison-product>div{min-width:0}
#compare-dialog .comparison-product img{flex:none;display:block;width:64px;height:78px;object-fit:contain;margin:0}
#compare-dialog .comparison-brand{display:block;margin:0 0 2px;color:#65778b;font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:600}
#compare-dialog .comparison-product strong{display:block;font-size:14px;line-height:1.4;color:#102c50}
#compare-dialog .comparison-name{display:block;font-size:12px;font-weight:400;line-height:1.45;margin:4px 0 0;color:#53677f}
#compare-dialog .comparison-remove{display:block;margin:2px 0 0 78px;min-height:32px;padding:5px 0;border:0;border-radius:4px;font:500 12px/1.5 var(--body,sans-serif);color:#526982;background:transparent;cursor:pointer}
#compare-dialog .comparison-remove:hover{color:#075bad;background:#eef5fc}
#compare-dialog .comparison-difference>*{background:#edf5ff}
#compare-dialog .comparison-difference>th:first-child{background:#e5f0fd;box-shadow:inset 3px 0 #73a8df}
#compare-dialog .comparison-section th:first-child{position:static;padding:8px 18px;background:#edf1f6;color:#385674;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border-top:1px solid #dbe5ee}
#compare-dialog .comparison-price td{font-weight:650;color:#124e84;font-size:15px}
#compare-dialog .comparison-facts{margin:0;padding-left:16px}
#compare-dialog .comparison-facts li{padding-left:2px;margin:0 0 7px}
#compare-dialog .comparison-facts li:last-child{margin-bottom:0}
#compare-dialog .comparison-guidance td{font-size:11px;line-height:1.45;color:#526982;background:#f8fafc}
#compare-dialog .comparison-evidence{display:flex;flex-direction:column;gap:6px;font-size:12px}
#compare-dialog .comparison-evidence a{color:#155f9f}
#compare-dialog .comparison-evidence small{color:#65778b;font-size:11px}
#compare-dialog .comparison-facts li::marker{color:#739abc}
#compare-dialog .comparison-facts:has(li:only-child){list-style:none;padding-left:0}
#compare-dialog .comparison-facts li:only-child{padding-left:0}
#compare-dialog p{font-size:13px;line-height:1.6;margin:8px 0}
#compare-dialog .programme-compare{margin:0;padding-left:16px}
#compare-dialog .programme-compare li{margin:0 0 10px}
#compare-dialog .programme-compare span{font-size:12px;color:#53677f;margin-top:2px}
#compare-dialog .programme-note,#compare-dialog .comparison-muted{color:#65778b;font-size:12px}
#compare-dialog .guarantee-block{margin:0;padding:0;border:0;border-radius:0;background:transparent;gap:6px 12px}
#compare-dialog .guarantee-summary strong{font-size:13px;color:#254f78}
#compare-dialog .guarantee-summary span,#compare-dialog .guarantee-terms a{font-size:12px}
#compare-dialog .comparison-source{display:inline-flex;gap:4px;margin:0;color:#155f9f;font-size:12px}
#compare-dialog .comparison-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
#compare-dialog .comparison-actions .button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;margin:0;padding:8px 14px;border:1px solid #b9cfe3;border-radius:7px;background:#f5f9fd;color:#174f80;font-size:12px;line-height:1.4}
#compare-dialog .comparison-actions a{color:#155f9f;font-size:12px;padding:8px 0}
#compare-dialog .comparison-footnote{flex:none;margin:0;padding:10px 24px;color:#64748b;font-size:11px;line-height:1.5;background:#fafcfe}
#compare-dialog .comparison-empty{padding:20px 24px}
#compare-dialog :is(button,a,[tabindex]):focus-visible{outline:2px solid #147bd1;outline-offset:-2px}
@media(max-width:700px){
 #compare-dialog{width:97vw;max-width:97vw;max-height:94vh;max-height:94dvh;border-radius:12px}
 #compare-dialog .comparison-heading{padding:12px 14px 8px;gap:8px}
 #compare-dialog #compare-title{font-size:29px}
 #compare-dialog .comparison-toolbar{padding:0 14px 10px;font-size:11px;gap:3px 12px}
 #compare-dialog table{min-width:calc(118px + var(--compare-count) * 218px);font-size:12px}
 #compare-dialog .comparison-label-col{width:118px}
 #compare-dialog th,#compare-dialog td{padding:9px 12px}
 #compare-dialog thead th{padding:10px 12px 5px}
 #compare-dialog .comparison-product{gap:8px;min-height:90px}
 #compare-dialog .comparison-product img{width:44px;height:58px}
 #compare-dialog .comparison-product strong{font-size:13px}
 #compare-dialog .comparison-name{font-size:11px}
 #compare-dialog .comparison-remove{margin-left:52px;min-height:36px}
 #compare-dialog .comparison-section th:first-child{padding:8px 12px}
 #compare-dialog .comparison-footnote{padding:8px 14px;font-size:10px}
}

/* Calm, compact comparison with persistent choices and an optional differences view. */
#compare-dialog {border:1px solid #dce5ef;border-radius:12px;color:#0b2345}
#compare-dialog .comparison-section th:first-child {text-transform:none;letter-spacing:0;font-size:13px;background:#f4f7fb;color:#0b2345}
#compare-dialog .comparison-filter {display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;font-size:13px;color:#0b2345}
#compare-dialog .comparison-filter input {width:18px;height:18px;accent-color:#087ade;margin:0}
#compare-dialog .differences-only tbody tr:not(.comparison-section):not(.comparison-difference):not(.comparison-always) {display:none}
#compare-dialog .comparison-toolbar {padding-bottom:8px}
#compare-bar {border:1px solid #dce5ef;border-radius:12px;left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));bottom:calc(8px + env(safe-area-inset-bottom));padding:10px 12px;gap:12px;box-shadow:0 4px 24px #0b23451f}
#compare-selection {flex-wrap:nowrap;overflow:auto;min-width:0}
#compare-selection button {flex:none;border:0;background:#f4f7fb;font-size:12px;padding:6px 10px;min-height:44px}
#open-compare {flex:none;border-radius:8px;background:#087ade;color:white;border-color:#087ade}
body[data-product-model].has-comparison .product-order-bar {display:none}
body[data-product-model].has-comparison #ge-chat-launch {bottom:calc(90px + env(safe-area-inset-bottom))}
body[data-product-model] .product-compare-choice {margin:0;min-height:44px;justify-content:center;font-size:13px;color:#52657d;font-weight:500}
/* Give the specification table most of the available height. */
#compare-dialog .comparison-heading{padding:8px 18px;gap:12px}
#compare-dialog #compare-title{font:700 24px/1.2 var(--body,Arial,sans-serif);letter-spacing:-.3px}
#compare-dialog .comparison-delivery{display:flex;align-items:center;gap:8px 12px;margin:0 18px 4px;padding:8px 12px;border-radius:8px}
#compare-dialog .comparison-delivery label{display:flex;align-items:center;gap:10px;font-size:13px;width:auto}
#compare-dialog .comparison-delivery input{box-sizing:border-box;width:140px;min-height:44px;padding:7px 10px;font-size:14px}
#compare-dialog .comparison-delivery button{width:auto;min-height:44px;margin:0;padding:8px 12px;font-size:13px;white-space:nowrap}
#compare-dialog .comparison-delivery p{flex:1 1 190px;margin:0;font-size:12px;line-height:1.4}
#compare-dialog .comparison-toolbar{padding:0 18px 4px;gap:4px 16px}
#compare-dialog thead th{padding:8px 12px 4px}
#compare-dialog .comparison-product{gap:10px;min-height:56px}
#compare-dialog .comparison-product img{width:42px;height:52px}
#compare-dialog .comparison-name{margin-top:2px;line-height:1.3}
#compare-dialog .comparison-remove{margin:0 0 0 52px;min-height:36px;padding:4px 0}
#compare-dialog th,#compare-dialog td{padding:7px 12px;line-height:1.4}
#compare-dialog .comparison-facts li{margin-bottom:4px}
#compare-dialog .comparison-footnote{padding:0 18px;border:0;border-radius:0;max-height:24dvh;overflow:auto}
#compare-dialog .comparison-footnote summary{display:flex;align-items:center;min-height:44px;padding:4px 0;cursor:pointer;font-size:12px;font-weight:600;color:#315778}
#compare-dialog .comparison-footnote summary::after{content:'+';margin-left:10px}
#compare-dialog .comparison-footnote[open] summary::after{content:'−'}
#compare-dialog .comparison-footnote p{font-size:11px;line-height:1.45;margin:0 0 10px}
@media(max-width:700px){
 #compare-dialog #compare-title {font-size:23px}
 #compare-dialog table {min-width:calc(76px + var(--compare-count) * 166px)}
 #compare-dialog table[data-compare-count="2"] {min-width:0;width:100%}
 #compare-dialog .comparison-label-col {width:76px}
 #compare-dialog th,#compare-dialog td {padding:9px 8px;font-size:12px}
 #compare-dialog .comparison-product {display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:0}
 #compare-dialog .comparison-product img {width:42px;height:52px}
 #compare-dialog .comparison-product strong {font-size:12px;overflow-wrap:anywhere}
 #compare-dialog .comparison-name {font-size:11px}
 #compare-dialog .comparison-remove {margin:4px 0 0;min-height:44px}
 #compare-dialog .comparison-price td {font-size:14px}
 #compare-dialog .comparison-facts {padding-left:12px}
 #compare-dialog .comparison-toolbar .comparison-legend {display:none}
 #compare-bar {gap:8px}
 #open-compare {min-width:120px;font-size:12px;padding:10px}
}
