/* KD Google Bewertungen – KESSLERDIGITAL CI
   Farben: Petrol #173135 / #0E2124 / #1F4247, Logo-Grün #12CC9B, Kachel #F1F5F4, Linie #DCE6E4 */
:is(#kd,body) .kdgr{
	--kdgr-teal:var(--teal,#173135);--kdgr-teal-2:var(--teal-2,#1F4247);--kdgr-teal-3:var(--teal-3,#0E2124);
	--kdgr-mint:var(--mint,#12CC9B);--kdgr-tile:var(--tile,#F1F5F4);--kdgr-line:var(--line,#DCE6E4);
	--kdgr-text:var(--text,#444444);--kdgr-soft:var(--soft,#66716F);
	--kdgr-star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 1.5l2.6 5.4 5.9.8-4.3 4.1 1 5.9L10 14.9l-5.2 2.8 1-5.9L1.5 7.7l5.9-.8z'/%3E%3C/svg%3E");
	display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:14px;align-items:stretch;
	margin-top:clamp(40px,5vw,64px);font-family:inherit;color:var(--kdgr-text);text-align:left
}
:is(#kd,body) .kdgr *{box-sizing:border-box}

/* Sterne */
:is(#kd,body) .kdgr-stars{display:inline-flex;gap:3px;line-height:0}
:is(#kd,body) .kdgr-star{display:block;width:18px;height:18px;
	background:linear-gradient(90deg,var(--kdgr-mint) var(--f,100%),rgba(23,49,53,.16) var(--f,100%));
	-webkit-mask:var(--kdgr-star) center/contain no-repeat;mask:var(--kdgr-star) center/contain no-repeat}

/* Zusammenfassung (Petrol-Kachel) */
:is(#kd,body) .kdgr-sum{position:relative;overflow:hidden;isolation:isolate;border-radius:24px;padding:clamp(28px,3vw,40px);
	display:flex;flex-direction:column;gap:14px;color:#fff;
	background:radial-gradient(420px 320px at 100% 100%,rgba(18,204,155,.3),transparent 60%),linear-gradient(160deg,var(--kdgr-teal-2),var(--kdgr-teal) 55%,var(--kdgr-teal-3))}
:is(#kd,body) .kdgr-src{font-size:15px;font-weight:500;color:var(--kdgr-mint);letter-spacing:0}
:is(#kd,body) .kdgr-score{display:flex;align-items:baseline;gap:8px;margin-top:auto;padding-top:24px}
:is(#kd,body) .kdgr-num{font-size:clamp(64px,6vw,88px);font-weight:500;line-height:.95;letter-spacing:-.045em;color:#fff}
:is(#kd,body) .kdgr-of{font-size:22px;font-weight:500;color:#9DB8B3}
:is(#kd,body) .kdgr-sum .kdgr-star{width:22px;height:22px;background:linear-gradient(90deg,var(--kdgr-mint) var(--f,100%),rgba(255,255,255,.22) var(--f,100%))}
:is(#kd,body) .kdgr-count{margin:0;font-size:16px;line-height:1.5;color:#C4D9D5}
:is(#kd,body) .kdgr-actions{display:flex;flex-direction:column;gap:10px;margin-top:14px}

/* Buttons (Pill, Pfeil im dunklen Kreis) */
:is(#kd,body) .kdgr-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:6px 6px 6px 22px;border-radius:999px;
	font-size:16px;font-weight:500;line-height:1.2;white-space:nowrap;text-decoration:none!important;transition:box-shadow .3s,transform .3s}
:is(#kd,body) .kdgr-btn--primary{background:var(--kdgr-mint);color:var(--kdgr-teal)!important}
:is(#kd,body) .kdgr-btn--primary i{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--kdgr-teal);color:#fff;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
:is(#kd,body) .kdgr-btn--primary svg{width:16px;height:16px}
:is(#kd,body) .kdgr-btn--primary:hover{box-shadow:0 12px 30px rgba(18,204,155,.35);transform:translateY(-1px)}
:is(#kd,body) .kdgr-btn--primary:hover i{transform:rotate(45deg)}
:is(#kd,body) .kdgr-btn--ghost{justify-content:center;padding:6px 22px;color:#fff!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
:is(#kd,body) .kdgr-btn--ghost:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.6)}

/* Bewertungen */
:is(#kd,body) .kdgr-main{min-width:0;display:flex;flex-direction:column;gap:14px}
:is(#kd,body) .kdgr-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 14px) / 2);gap:14px;flex:1;
	overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;outline:none;padding:0;margin:0}
:is(#kd,body) .kdgr-track::-webkit-scrollbar{display:none}
:is(#kd,body) .kdgr-card{scroll-snap-align:start;display:flex;flex-direction:column;gap:18px;min-height:100%;margin:0;
	padding:clamp(24px,2.6vw,34px);border-radius:22px;background:var(--kdgr-tile)}
:is(#kd,body) .kdgr-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:0}
:is(#kd,body) .kdgr-when{font-size:14px;font-weight:500;color:var(--kdgr-soft)}
:is(#kd,body) .kdgr-text p{margin:0;font-size:17px;line-height:1.62;color:var(--kdgr-text)}
:is(#kd,body) .kdgr-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:7;overflow:hidden}
:is(#kd,body) .kdgr-card.is-open .kdgr-text{display:block;-webkit-line-clamp:unset}
:is(#kd,body) .kdgr-more{align-self:flex-start;margin:-6px 0 0;padding:0;border:0;background:none;cursor:pointer;
	font:inherit;font-size:15px;font-weight:500;color:var(--kdgr-teal);text-decoration:underline;text-decoration-color:var(--kdgr-mint);text-underline-offset:4px;text-decoration-thickness:2px}
:is(#kd,body) .kdgr-more:hover,:is(#kd,body) .kdgr-more:focus{background:none;color:var(--kdgr-teal)}
:is(#kd,body) .kdgr-more[hidden]{display:none}
:is(#kd,body) .kdgr-author{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:18px;border-top:1px solid var(--kdgr-line)}
:is(#kd,body) .kdgr-ava{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--kdgr-teal);color:var(--kdgr-mint);font-size:15px;font-weight:600}
:is(#kd,body) .kdgr-who{display:flex;flex-direction:column;line-height:1.3;min-width:0}
:is(#kd,body) .kdgr-who a,:is(#kd,body) .kdgr-who strong{font-size:16px;font-weight:600;color:var(--kdgr-teal)!important;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:is(#kd,body) .kdgr-who a:hover{text-decoration:underline;text-decoration-color:var(--kdgr-mint)}
:is(#kd,body) .kdgr-who small{font-size:13px;color:var(--kdgr-soft)}

/* Navigation */
:is(#kd,body) .kdgr-nav{display:flex;justify-content:flex-end;gap:8px}
:is(#kd,body) .kdgr-nav button{width:48px;height:48px;padding:0;border-radius:50%;display:grid;place-items:center;cursor:pointer;
	background:#fff;color:var(--kdgr-teal);border:1px solid var(--kdgr-line);transition:background .25s,color .25s,opacity .25s}
:is(#kd,body) .kdgr-nav button svg{width:20px;height:20px}
:is(#kd,body) .kdgr-nav button:hover:not(:disabled){background:var(--kdgr-teal);color:#fff;border-color:var(--kdgr-teal)}
:is(#kd,body) .kdgr-nav button:disabled{opacity:.35;cursor:default}
:is(#kd,body) .kdgr.no-nav .kdgr-nav{display:none}

/* Admin-Hinweis */
:is(#kd,body) .kdgr-empty{margin-top:32px;padding:20px 24px;border-radius:16px;border:1px dashed #12CC9B;background:#F1F5F4;color:#173135;font-size:15px}
:is(#kd,body) .kdgr-empty a{color:#173135;text-decoration:underline}

@media (max-width:1100px){
	:is(#kd,body) .kdgr{grid-template-columns:1fr}
	:is(#kd,body) .kdgr-score{padding-top:4px}
	:is(#kd,body) .kdgr-actions{flex-direction:row;flex-wrap:wrap}
	:is(#kd,body) .kdgr-actions .kdgr-btn{flex:1 1 240px}
}
@media (max-width:700px){
	:is(#kd,body) .kdgr-track{grid-auto-columns:88%}
	:is(#kd,body) .kdgr-actions{flex-direction:column}
	:is(#kd,body) .kdgr-actions .kdgr-btn{flex:none}
	:is(#kd,body) .kdgr-text p{font-size:16px}
}
@media (prefers-reduced-motion:reduce){
	:is(#kd,body) .kdgr-track{scroll-behavior:auto}
}
