/**
 * Koelkastwijzer contextuele keuzehulp.
 * Altijd zichtbaar rond icoon + lazy-loaded adviespaneel. De panel-layout is
 * bewust geïnspireerd op volwassen consumentenplatforms, maar blijft eigen.
 */
.kw-choice-widget{position:relative;z-index:99980;font-family:var(--wg-font-family)}
.kw-choice-fab{position:fixed;right:24px;bottom:24px;z-index:99982;display:flex;align-items:center;gap:9px;color:#102a43;text-decoration:none;-webkit-tap-highlight-color:transparent}
.kw-choice-fab:visited,.kw-choice-fab:hover,.kw-choice-fab:focus{color:#102a43;text-decoration:none}
.kw-choice-fab__icon{display:grid;width:60px;height:60px;place-items:center;border:1px solid #c7d5e1;border-radius:50%;background:#fff;box-shadow:0 9px 27px rgba(8,43,76,.15);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.kw-choice-fab__icon img{display:block;width:48px;height:48px;object-fit:contain}
.kw-choice-fab__hint{position:absolute;right:68px;top:50%;max-width:280px;padding:9px 12px;border:1px solid #d4dfe8;border-radius:8px;background:#fff;box-shadow:0 7px 21px rgba(8,43,76,.10);color:#203b52;font-size:13.5px;font-weight:600;line-height:1.25;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(5px,-50%,0);transition:opacity .14s ease,transform .14s ease,visibility 0s linear .14s}
.kw-choice-fab:hover .kw-choice-fab__icon,.kw-choice-fab:focus-visible .kw-choice-fab__icon{border-color:#8ca9bf;box-shadow:0 11px 30px rgba(8,43,76,.19);transform:translateY(-1px)}
.kw-choice-fab:hover .kw-choice-fab__hint,.kw-choice-fab:focus-visible .kw-choice-fab__hint{opacity:1;visibility:visible;transform:translate3d(0,-50%,0);transition-delay:0s}
.kw-choice-fab:focus-visible{outline:0}
.kw-choice-fab:focus-visible .kw-choice-fab__icon{outline:3px solid rgba(9,101,216,.28);outline-offset:3px}

.kw-choice-widget__backdrop{position:fixed;inset:0;z-index:99990;background:rgba(18,32,45,.34);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility 0s linear .18s}
.kw-choice-widget__panel{position:fixed;top:0;bottom:0;left:0;z-index:99991;display:flex;width:min(1180px,86vw);max-width:calc(100vw - 56px);flex-direction:column;background:#fff;box-shadow:20px 0 54px rgba(8,31,52,.18);opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(-24px,0,0);transition:transform .2s cubic-bezier(.22,.72,.2,1),opacity .16s ease,visibility 0s linear .2s}
.kw-choice-widget.is-open .kw-choice-widget__backdrop{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.kw-choice-widget.is-open .kw-choice-widget__panel{opacity:1;visibility:visible;pointer-events:auto;transform:none;transition-delay:0s}
html.kw-choice-widget-open,body.kw-choice-widget-open{overflow:hidden!important;overscroll-behavior:none}

.kw-choice-widget__panel-head{display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:24px;padding:25px 34px 21px;border-bottom:1px solid #dce5eb;background:#fff}
.kw-choice-widget__panel-copy{display:grid;gap:7px;min-width:0;max-width:720px}
.kw-choice-widget__panel-copy strong{color:#0b2850;font-size:30px;font-weight:680;line-height:1.12;letter-spacing:-.025em}
.kw-choice-widget__panel-copy span{color:#536b7e;font-size:15.5px;font-weight:450;line-height:1.5}
.kw-choice-widget__panel-close{display:grid;flex:0 0 42px;width:42px;height:42px;margin:-5px -6px 0 0;padding:0;place-items:center;border:0;border-radius:6px;background:transparent;box-shadow:none;color:#7a8791;font:inherit;font-size:35px;font-weight:400;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}
.kw-choice-widget__panel-close:hover{background:#f1f4f6;color:#173b57}
.kw-choice-widget__panel-close:focus-visible{outline:3px solid rgba(9,101,216,.28);outline-offset:2px}
.kw-choice-widget__frame-wrap{position:relative;display:flex;min-height:0;flex:1 1 auto;background:#fff}
.kw-choice-widget__frame{display:block;width:100%;height:100%;min-height:0;border:0;background:#fff;opacity:0;transition:opacity .14s ease}
.kw-choice-widget.is-frame-ready .kw-choice-widget__frame{opacity:1}
.kw-choice-widget__loader{position:absolute;inset:0;z-index:2;display:grid;place-content:center;justify-items:center;gap:12px;background:#fff;color:#536b7e;font-size:13px;text-align:center;transition:opacity .14s ease,visibility 0s linear .14s}
.kw-choice-widget.is-frame-ready .kw-choice-widget__loader{opacity:0;visibility:hidden;pointer-events:none}
.kw-choice-widget__loader>span{width:30px;height:30px;border:3px solid #dce7ef;border-top-color:#0965d8;border-radius:50%;animation:kw-choice-widget-spin .75s linear infinite}
.kw-choice-widget__loader strong{color:#102a43;font-size:13px;font-weight:650}
@keyframes kw-choice-widget-spin{to{transform:rotate(360deg)}}

@media(max-width:900px){
	.kw-choice-fab{right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px))}
	.kw-choice-fab__icon{width:54px;height:54px;box-shadow:0 8px 24px rgba(8,43,76,.16)}
	.kw-choice-fab__icon img{width:43px;height:43px}
	.kw-choice-fab__hint{display:none}
	.kw-choice-widget__panel{width:100vw;max-width:none;box-shadow:none}
	.kw-choice-widget__backdrop{display:none}
	.kw-choice-widget__panel-head{padding:calc(17px + env(safe-area-inset-top,0px)) 17px 15px}
	.kw-choice-widget__panel-copy{gap:4px}
	.kw-choice-widget__panel-copy strong{font-size:24px}
	.kw-choice-widget__panel-copy span{font-size:13.5px;line-height:1.4}
	.kw-choice-widget__panel-close{width:38px;height:38px;flex-basis:38px;margin:-4px -3px 0 0;font-size:31px}
}
@media(max-width:390px){
	.kw-choice-fab{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}
	.kw-choice-fab__icon{width:52px;height:52px}
	.kw-choice-fab__icon img{width:41px;height:41px}
}
@media(prefers-reduced-motion:reduce){
	.kw-choice-fab__icon,.kw-choice-fab__hint,.kw-choice-widget__backdrop,.kw-choice-widget__panel,.kw-choice-widget__frame,.kw-choice-widget__loader{transition:none}
	.kw-choice-widget__loader>span{animation-duration:1.4s}
}
