:root{--kt-navy:#0d2867;--kt-orange:#d17c1f;--kt-cream:#f8f4ee;--kt-border:#eadfD2;--kt-text:#2b2927;--kt-muted:#817b75;--kt-soft:#f4f0eb}
.ktpe-profile,.ktpe-tabs,.ktpe-reviews,.ktpe-similar{width:min(1380px,calc(100% - 48px));margin:64px auto;font-family:inherit;color:var(--kt-text)}
.ktpe-section-title span,.ktpe-reviews-head>div>span{display:block;color:var(--kt-orange);font-size:13px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}.ktpe-section-title h2{margin:7px 0 24px;color:var(--kt-navy);font-size:34px;line-height:1.1}
.ktpe-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ktpe-profile-item{display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:16px 18px;border:1px solid var(--kt-border);border-radius:18px;background:#fff}.ktpe-profile-item>span{color:var(--kt-muted);font-size:14px}.ktpe-profile-item strong{color:var(--kt-navy);font-size:16px;text-align:right}.ktpe-profile-item>div{display:flex;align-items:center;gap:12px}.ktpe-meter{display:flex;gap:5px}.ktpe-meter i{width:28px;height:6px;border-radius:10px;background:#e5ded7}.ktpe-meter i.on{background:#76503a}.ktpe-profile-item b{color:#5d514a}.ktpe-expert{position:relative;display:grid;grid-template-columns:40px 1fr;gap:8px;margin-top:16px;padding:22px 26px;border-radius:20px;background:#ddd5cc;overflow:hidden}.ktpe-expert .ktpe-quote{color:var(--kt-orange);opacity:.35;font:700 64px/.85 Georgia,serif}.ktpe-expert strong{display:block;margin:0 0 6px;font-size:17px}.ktpe-expert p{margin:0;line-height:1.55;font-size:16px}
.ktpe-tabs{border:1px solid var(--kt-border);border-radius:22px;background:#fff;overflow:hidden}.ktpe-tab-nav{display:flex;gap:28px;padding:0 30px;border-bottom:1px solid var(--kt-border)}.ktpe-tab-nav button{appearance:none;border:0;background:transparent;padding:20px 0 17px;color:#8a8580;font:700 15px/1 inherit;cursor:pointer;border-bottom:3px solid transparent}.ktpe-tab-nav button.is-active{color:var(--kt-navy);border-bottom-color:var(--kt-orange)}.ktpe-tab-panel{display:none;padding:30px}.ktpe-tab-panel.is-active{display:block}.ktpe-copy{max-width:1080px}.ktpe-copy h2{margin:0 0 16px;color:var(--kt-navy);font-size:28px}.ktpe-lead,.ktpe-copy-row p{margin:0;color:#57524d;font-size:16px;line-height:1.75}.ktpe-copy-row{margin-top:22px}.ktpe-copy-row h3{margin:0 0 6px;color:var(--kt-navy);font-size:17px}
.ktpe-brew-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.ktpe-brew-card{appearance:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:132px;border:1px solid var(--kt-border);border-radius:18px;background:#fff;color:var(--kt-text);cursor:pointer;font:700 15px inherit;transition:.18s ease}.ktpe-brew-card:hover{transform:translateY(-1px);border-color:#dfc3a6}.ktpe-brew-card.is-active{border:2px solid var(--kt-navy);background:#f7faff;box-shadow:0 8px 20px rgba(13,40,103,.06)}.ktpe-brew-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#f6f2ec;color:var(--kt-navy);font-size:22px}.ktpe-brew-card.is-active .ktpe-brew-icon{background:#edf3ff}.ktpe-brew-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px;padding:18px;border-radius:18px;background:var(--kt-cream)}.ktpe-guide-item{display:flex;justify-content:space-between;gap:16px;padding:11px 12px;border-radius:12px;background:#fff}.ktpe-guide-item span{color:var(--kt-muted)}.ktpe-guide-item strong{color:var(--kt-navy);text-align:right}.ktpe-guide-empty{margin:0;color:var(--kt-muted)}
.ktpe-reviews{overflow:hidden}.ktpe-reviews-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}.ktpe-score-row{display:flex;align-items:center;gap:9px;margin-top:8px}.ktpe-score-row>strong{font-size:36px;line-height:1;color:var(--kt-navy)}.ktpe-score-row>span{font-size:20px;color:var(--kt-navy)}.ktpe-score-row small{color:var(--kt-muted);margin-left:7px}.ktpe-stars{display:flex;gap:1px;color:#d7dce1}.ktpe-stars .on{color:#f0a729}.ktpe-review-cta-copy{text-align:right}.ktpe-review-cta-copy p{margin:0 0 7px;color:var(--kt-muted);font-size:13px}.ktpe-review-open,.ktpe-review-login,.ktpe-submit{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;background:var(--kt-orange);color:#fff!important;padding:12px 17px;text-decoration:none;font-weight:800;cursor:pointer}.ktpe-review-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 42px)/4);gap:14px;overflow-x:auto;padding:2px 2px 10px;scroll-snap-type:x mandatory;scrollbar-width:thin}.ktpe-review-card{scroll-snap-align:start;display:grid;grid-template-rows:auto 1fr;min-width:0;min-height:230px;border:1px solid #dfe5ea;border-radius:13px;background:#fff;overflow:hidden}.ktpe-review-card header{display:grid;grid-template-columns:46px minmax(0,1fr) 26px;gap:10px;align-items:start;padding:14px;border-bottom:1px solid #e8ecef}.ktpe-review-card header img,.ktpe-review-placeholder{width:46px;height:46px;border-radius:7px;object-fit:cover;background:#f5f5f5}.ktpe-review-meta{min-width:0}.ktpe-review-meta strong{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ktpe-review-meta .ktpe-stars{margin:3px 0}.ktpe-review-meta small{display:block;color:#77838e;font-size:12px;line-height:1.35;white-space:normal;overflow-wrap:anywhere}.ktpe-cup{font-size:20px}.ktpe-review-card>p{margin:0;padding:14px;color:#545454;font-size:14px;line-height:1.55}.ktpe-modal{position:fixed;inset:0;z-index:999999;display:none;place-items:center;padding:20px;background:rgba(10,18,38,.55)}.ktpe-modal.is-open{display:grid}.ktpe-modal-card{position:relative;width:min(560px,100%);max-height:90vh;overflow:auto;padding:28px;border-radius:22px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.25)}.ktpe-modal-close{position:absolute;right:16px;top:15px;width:38px;height:38px;border:1px solid var(--kt-border);border-radius:50%;background:#fff;font-size:23px;cursor:pointer}.ktpe-modal-card h3{margin:0;color:var(--kt-navy);font-size:25px}.ktpe-modal-card>p{color:var(--kt-muted)}.ktpe-modal label{display:block;margin:14px 0;font-weight:700}.ktpe-modal select,.ktpe-modal textarea{width:100%;margin-top:7px;padding:12px;border:1px solid var(--kt-border);border-radius:11px;font:inherit}.ktpe-modal textarea{min-height:120px;resize:vertical}.ktpe-consent{display:flex!important;gap:9px;align-items:flex-start;font-size:13px;font-weight:400!important}.ktpe-consent input{margin-top:3px}.ktpe-form-msg{margin-top:10px;color:var(--kt-muted)}body.ktpe-modal-open{overflow:hidden}
.ktpe-similar{margin-top:76px}.ktpe-similar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}.ktpe-similar-grid>.ktpc-card{width:100%;max-width:none;margin:0}.ktpe-fallback-card{display:block;padding:10px;border:1px solid var(--kt-border);border-radius:17px;background:#fff;text-decoration:none}.ktpe-fallback-card img{width:100%;aspect-ratio:1;object-fit:contain}.ktpe-fallback-card strong,.ktpe-fallback-card span{display:block;margin-top:10px;color:var(--kt-navy)}.ktpe-sticky-end{height:1px}
@media(max-width:1024px){.ktpe-profile,.ktpe-tabs,.ktpe-reviews,.ktpe-similar{width:min(760px,calc(100% - 40px));margin:44px auto}.ktpe-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ktpe-brew-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ktpe-brew-result{grid-template-columns:repeat(2,minmax(0,1fr))}.ktpe-review-track{grid-auto-columns:46%}.ktpe-similar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.ktpe-profile,.ktpe-tabs,.ktpe-reviews,.ktpe-similar{width:calc(100% - 28px);margin:34px auto}.ktpe-section-title h2{font-size:28px}.ktpe-profile-grid{grid-template-columns:1fr 1fr;gap:9px}.ktpe-profile-item{min-height:68px;padding:13px;display:block}.ktpe-profile-item>span{display:block;margin-bottom:7px}.ktpe-profile-item strong{text-align:left;font-size:14px}.ktpe-profile-item>div{gap:7px}.ktpe-meter i{width:14px}.ktpe-expert{grid-template-columns:30px 1fr;padding:20px 18px}.ktpe-expert .ktpe-quote{font-size:48px}.ktpe-tab-nav{padding:0 18px;gap:20px;overflow-x:auto}.ktpe-tab-panel{padding:20px 18px}.ktpe-copy h2{font-size:24px}.ktpe-brew-grid{grid-template-columns:1fr 1fr}.ktpe-brew-card{min-height:108px}.ktpe-brew-result{grid-template-columns:1fr}.ktpe-reviews-head{align-items:flex-start}.ktpe-score-row{flex-wrap:wrap}.ktpe-score-row>strong{font-size:30px}.ktpe-review-cta-copy p{display:none}.ktpe-review-track{grid-auto-columns:86%}.ktpe-review-card{min-height:220px}.ktpe-similar-grid{grid-template-columns:1fr 1fr;gap:10px}}

/* v0.2.1 – tighter section rhythm + compact profile/brew refinements */
.ktpe-profile{margin-top:36px;margin-bottom:28px}
.ktpe-tabs{margin-top:28px;margin-bottom:34px}
.ktpe-reviews{margin-top:34px;margin-bottom:42px}
.ktpe-similar{margin-top:42px;margin-bottom:48px}
.ktpe-profile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ktpe-profile-item{min-height:68px;padding:14px 16px}
.ktpe-profile-item strong{max-width:72%;line-height:1.3}
.ktpe-expert{margin-top:12px;padding:18px 22px}
.ktpe-tab-panel{padding:24px 28px}
.ktpe-copy-row{margin-top:16px}
.ktpe-brew-grid{grid-template-columns:repeat(auto-fit,minmax(160px,210px));justify-content:start;gap:10px}
.ktpe-brew-card{min-height:112px;gap:9px}
.ktpe-brew-result{margin-top:14px;padding:14px;grid-template-columns:repeat(3,minmax(0,1fr))}
.ktpe-guide-item{padding:10px 12px}
.ktpe-reviews-head{margin-bottom:14px}
.ktpe-review-card{min-height:205px}
.ktpe-review-card>p{padding:12px 14px}
@media(max-width:1024px){
  .ktpe-profile,.ktpe-tabs,.ktpe-reviews,.ktpe-similar{margin-top:28px;margin-bottom:30px}
  .ktpe-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ktpe-brew-result{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  .ktpe-profile,.ktpe-tabs,.ktpe-reviews,.ktpe-similar{margin-top:22px;margin-bottom:24px}
  .ktpe-section-title h2{margin-bottom:16px}
  .ktpe-tab-panel{padding:18px 16px}
  .ktpe-brew-grid{grid-template-columns:1fr 1fr}
  .ktpe-brew-card{min-height:102px}
  .ktpe-brew-result{grid-template-columns:1fr;padding:12px}
  .ktpe-expert{margin-top:10px}
}

/* v0.2.2 – carousel controls + denser mobile recommendations */
.ktpe-slider-shell{position:relative}
.ktpe-slider-arrow{position:absolute;top:50%;z-index:4;display:grid;place-items:center;width:40px;height:40px;margin-top:-20px;border:1px solid #e4d7ca;border-radius:50%;background:rgba(255,255,255,.96);color:var(--kt-orange);font-size:28px;line-height:1;box-shadow:0 8px 24px rgba(30,26,22,.08);cursor:pointer;transition:.18s ease}
.ktpe-slider-arrow:hover{transform:scale(1.04);border-color:#cfaa86}.ktpe-slider-arrow:disabled{opacity:.22;cursor:default;transform:none}
.ktpe-slider-arrow.is-prev{left:-18px}.ktpe-slider-arrow.is-next{right:-18px}
.ktpe-review-track{scrollbar-width:none;-ms-overflow-style:none}.ktpe-review-track::-webkit-scrollbar,.ktpe-similar-grid::-webkit-scrollbar{display:none}
.ktpe-similar{overflow:visible}.ktpe-similar-grid{display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc((100% - 48px)/4);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:2px 2px 12px;scrollbar-width:none}
.ktpe-similar-grid>*{scroll-snap-align:start;min-width:0}
@media(max-width:1024px){
 .ktpe-similar-grid{grid-template-columns:none;grid-auto-columns:calc((100% - 32px)/3);gap:16px}
 .ktpe-slider-arrow.is-prev{left:-14px}.ktpe-slider-arrow.is-next{right:-14px}
}
@media(max-width:767px){
 .ktpe-review-track{grid-auto-columns:82%}
 .ktpe-similar-grid{grid-template-columns:none;grid-auto-columns:calc((100% - 10px)/2);gap:10px}
 .ktpe-slider-arrow{width:34px;height:34px;margin-top:-17px;font-size:24px}
 .ktpe-slider-arrow.is-prev{left:-8px}.ktpe-slider-arrow.is-next{right:-8px}
}


/* v0.2.3 — compact profile, true desktop left rail, stable controls and tab states */
@media (min-width:1240px){
  .ktpe-profile,.ktpe-tabs,.ktpe-reviews{
    width:min(1010px,calc(100% - 470px));
    margin-left:max(26px,calc((100vw - 1480px)/2 + 26px));
    margin-right:auto;
  }
  .ktpe-similar{
    width:min(1380px,calc(100% - 48px));
    margin-left:auto;
    margin-right:auto;
  }
}
.ktpe-profile-grid{gap:8px}
.ktpe-profile-item{
  min-height:58px;
  padding:11px 14px;
  border-radius:15px;
}
.ktpe-profile-item>span{font-size:13px}
.ktpe-profile-item>div{gap:9px;min-width:0}
.ktpe-profile-item strong{
  max-width:68%;
  font-size:14px;
  line-height:1.22;
  overflow-wrap:anywhere;
}
.ktpe-meter{gap:4px}
.ktpe-meter i{width:22px;height:5px}
.ktpe-profile-item b{font-size:14px}
.ktpe-expert{margin-top:10px;padding:15px 18px;border-radius:16px;grid-template-columns:34px 1fr}
.ktpe-expert .ktpe-quote{font-size:52px}
.ktpe-expert strong{font-size:15px}
.ktpe-expert p{font-size:14px;line-height:1.45}

.ktpe-tab-nav button,
.ktpe-tab-nav button:hover,
.ktpe-tab-nav button:focus,
.ktpe-tab-nav button:active{
  min-height:auto!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  color:#8a8580!important;
  transform:none!important;
  outline:none!important;
}
.ktpe-tab-nav button:hover{color:var(--kt-navy)!important}
.ktpe-tab-nav button.is-active,
.ktpe-tab-nav button.is-active:hover,
.ktpe-tab-nav button.is-active:focus{
  background:transparent!important;
  color:var(--kt-navy)!important;
  border-bottom-color:var(--kt-orange)!important;
}

.ktpe-brew-grid{
  grid-template-columns:repeat(auto-fit,minmax(120px,150px));
  gap:9px;
}
.ktpe-brew-card{
  min-height:90px;
  padding:10px;
  border-radius:15px;
  gap:7px;
}
.ktpe-brew-icon{width:38px;height:38px;border-radius:11px;font-size:19px}
.ktpe-brew-card strong{font-size:14px}
.ktpe-brew-result{padding:12px;gap:8px}
.ktpe-guide-item{padding:9px 10px;font-size:14px}

.ktpe-slider-arrow{
  box-sizing:border-box!important;
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  aspect-ratio:1/1!important;
  padding:0!important;
  margin-top:-19px!important;
  border:1px solid #e4d7ca!important;
  border-radius:50%!important;
  background:#fff!important;
  color:var(--kt-orange)!important;
  font-size:0!important;
  line-height:1!important;
  box-shadow:0 8px 24px rgba(30,26,22,.08)!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.ktpe-slider-arrow::before{
  display:block;
  font:700 25px/1 Arial,sans-serif;
  color:var(--kt-orange);
  transform:translateY(-1px);
}
.ktpe-slider-arrow.is-prev::before{content:"‹"}
.ktpe-slider-arrow.is-next::before{content:"›"}
.ktpe-slider-arrow:hover{transform:scale(1.03)!important;background:#fffaf5!important}
.ktpe-slider-arrow:disabled{opacity:.22!important;transform:none!important}

.ktpe-modal-close{
  box-sizing:border-box!important;
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  padding:0!important;
  border:1px solid var(--kt-border)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:var(--kt-navy)!important;
  font-size:0!important;
  line-height:1!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.ktpe-modal-close::before{content:"×";font:700 24px/1 Arial,sans-serif}
.ktpe-modal-close:hover{background:#fff8f1!important;color:var(--kt-orange)!important;border-color:#d9b894!important}

@media(max-width:767px){
  .ktpe-brew-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .ktpe-brew-card{min-height:86px}
  .ktpe-slider-arrow{
    width:34px!important;min-width:34px!important;max-width:34px!important;
    height:34px!important;min-height:34px!important;max-height:34px!important;
    margin-top:-17px!important;
  }
  .ktpe-slider-arrow::before{font-size:22px}
  .ktpe-similar-grid{grid-auto-columns:calc((100% - 10px)/2)!important}
}
