
.krs-showcase,
.krs-dashboard,
.krs-review-modal,
.krs-showcase *,
.krs-dashboard *,
.krs-review-modal *{box-sizing:border-box}

.krs-showcase,
.krs-dashboard{
  --krs-navy:#123258;
  --krs-text:#29445f;
  --krs-muted:#8294a6;
  --krs-line:#e7edf3;
  --krs-star:#f3b72f;
  width:100%;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Arial,sans-serif;
  color:var(--krs-text);
}

.krs-showcase{
  padding:24px;
  border:1px solid rgba(18,50,88,.08);
  border-radius:28px;
  background:radial-gradient(circle at 100% 0%,rgba(70,119,177,.10),transparent 30%),linear-gradient(180deg,#fff,#f8fbfd);
  box-shadow:0 18px 48px rgba(18,50,88,.07);
}

.krs-showcase-head,.krs-dashboard-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}

.krs-head-copy>span,.krs-dashboard-head>div>span,.krs-write-copy>span,.krs-review-dialog-head>span{
  display:block;
  color:#748aa0;
  font-size:9px;
  font-weight:900;
  letter-spacing:1.35px;
}

.krs-head-copy h2,.krs-dashboard-head h2{
  margin:5px 0 0!important;
  color:var(--krs-navy)!important;
  font-size:27px!important;
  line-height:1.15!important;
  font-weight:950!important;
  letter-spacing:-.55px!important;
}

.krs-head-copy p,.krs-dashboard-head p{
  margin:7px 0 0!important;
  color:var(--krs-muted)!important;
  font-size:11px!important;
  line-height:1.6!important;
}

.krs-summary{
  min-width:180px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:center;
  padding:11px 13px;
  border:1px solid var(--krs-line);
  border-radius:16px;
  background:rgba(255,255,255,.86);
  box-shadow:0 7px 18px rgba(18,50,88,.045);
}

.krs-summary>strong{color:var(--krs-navy);font-size:27px;line-height:1;font-weight:950}
.krs-summary>div{display:flex;flex-direction:column;gap:4px}
.krs-summary>div>span{color:#8799aa;font-size:9px;font-weight:750}

.krs-stars{display:inline-flex;align-items:center;gap:2px}
.krs-stars svg{width:14px;height:14px;fill:#dde5ec}
.krs-stars svg.is-full{fill:var(--krs-star)}

.krs-write-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  margin-bottom:20px;
  padding:17px 18px;
  border:1px solid #dce7ef;
  border-radius:20px;
  background:radial-gradient(circle at 92% 15%,rgba(73,119,176,.11),transparent 28%),linear-gradient(135deg,#f8fbfe,#eef5fa);
}

.krs-write-copy h3{
  margin:5px 0 0!important;
  color:var(--krs-navy)!important;
  font-size:18px!important;
  line-height:1.2!important;
  font-weight:950!important;
}

.krs-write-copy p{
  margin:6px 0 0!important;
  color:#6f8295!important;
  font-size:10px!important;
  line-height:1.6!important;
}

.krs-open-review-form{
  min-height:43px;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 17px!important;
  border:0!important;
  border-radius:13px!important;
  background:linear-gradient(135deg,#2f84c8,#6556a7)!important;
  color:#fff!important;
  text-decoration:none!important;
  font-family:inherit!important;
  font-size:10px!important;
  font-weight:900!important;
  box-shadow:0 9px 20px rgba(38,81,137,.18)!important;
  cursor:pointer!important;
}

.krs-review-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:15px;
}

.krs-card{
  min-width:0;
  min-height:235px;
  display:flex;
  flex-direction:column;
  padding:18px;
  border:1px solid var(--krs-line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 8px 24px rgba(18,50,88,.055);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.krs-card:hover{transform:translateY(-2px);border-color:#d9e4ed;box-shadow:0 13px 30px rgba(18,50,88,.085)}

.krs-card-top{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:10px;
  align-items:center;
}

.krs-avatar{
  width:44px;height:44px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;border-radius:50%;
  background:linear-gradient(135deg,#e8f1f8,#dbe7f1);
  color:var(--krs-navy);
  border:1px solid #dce6ee;
  font-size:14px;font-weight:950;
}

.krs-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.krs-author{min-width:0;display:flex;flex-direction:column}
.krs-author strong{overflow:hidden;color:#2f4961;font-size:11px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}
.krs-author span{margin-top:3px;color:#97a5b3;font-size:8px;font-weight:650}
.krs-rating-row{display:flex;align-items:center;gap:7px;margin-top:17px}
.krs-rating-row strong{color:#6d8194;font-size:9px;font-weight:900}
.krs-card h3{margin:14px 0 0!important;color:var(--krs-navy)!important;font-size:14px!important;line-height:1.35!important;font-weight:900!important}
.krs-review-text{margin:9px 0 0!important;color:#586f85!important;font-size:10.5px!important;line-height:1.72!important;white-space:pre-line}

.krs-review-modal{
  position:fixed;inset:0;z-index:999999;
  display:flex;align-items:center;justify-content:center;
  padding:18px;opacity:0;visibility:hidden;pointer-events:none;
  transition:.2s ease;
}

.krs-review-modal.is-open{opacity:1;visibility:visible;pointer-events:auto}
.krs-review-backdrop{position:absolute;inset:0;background:rgba(8,20,35,.50);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}

.krs-review-dialog{
  position:relative;z-index:1;
  width:min(100%,530px);
  padding:27px;
  border:1px solid rgba(255,255,255,.8);
  border-radius:26px;
  background:linear-gradient(145deg,#fff,#f6f9fc);
  box-shadow:0 28px 80px rgba(8,25,45,.27);
}

.krs-review-close{
  position:absolute!important;top:13px!important;right:13px!important;
  width:34px!important;height:34px!important;padding:0!important;
  border:1px solid #e2e8ee!important;border-radius:11px!important;
  background:#f5f8fa!important;color:#62768b!important;
  font:700 22px/1 Arial!important;cursor:pointer!important;
}

.krs-review-dialog-head h3{margin:5px 0 0!important;color:var(--krs-navy)!important;font-size:23px!important;line-height:1.2!important;font-weight:950!important}
.krs-review-dialog-head p{margin:7px 0 0!important;color:#8091a3!important;font-size:10px!important}
.krs-review-form{display:grid;gap:14px;margin-top:20px}
.krs-form-group{position:relative}
.krs-form-group>label{display:block;margin-bottom:6px;color:#496176;font-size:10px;font-weight:850}

.krs-form-group input[type="text"],.krs-form-group textarea{
  width:100%!important;border:1px solid #dce5ec!important;border-radius:13px!important;
  background:#fff!important;color:#29445f!important;font-family:inherit!important;
  font-size:11px!important;outline:none!important;
}

.krs-form-group input[type="text"]{min-height:44px!important;padding:0 12px!important}
.krs-form-group textarea{min-height:130px!important;padding:11px 12px!important;resize:vertical!important}
.krs-form-group input:focus,.krs-form-group textarea:focus{border-color:#8db6d7!important;box-shadow:0 0 0 3px rgba(48,125,185,.08)!important}

.krs-rating-input{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end;gap:3px}
.krs-rating-input input{position:absolute;opacity:0;pointer-events:none}
.krs-rating-input label{color:#dce4eb;font-size:27px;line-height:1;cursor:pointer}
.krs-rating-input label:hover,.krs-rating-input label:hover~label,.krs-rating-input input:checked~label{color:var(--krs-star)}

.krs-char-count{margin-top:4px;color:#9aa8b5;font-size:8px;text-align:right}

.krs-submit-review{
  min-height:45px!important;border:0!important;border-radius:13px!important;
  background:var(--krs-navy)!important;color:#fff!important;
  font-family:inherit!important;font-size:10px!important;font-weight:900!important;cursor:pointer!important;
}

.krs-submit-review:disabled{opacity:.55;cursor:not-allowed!important}
.krs-review-form-message{padding:10px 11px;border-radius:11px;background:#eef4f8;color:#526a7f;font-size:9px;line-height:1.5}
.krs-review-form-message.is-success{background:#e9f8ef;color:#257a50}
.krs-review-form-message.is-error{background:#fdecef;color:#ac4350}
.krs-empty,.krs-login-required{padding:22px;border:1px dashed #d9e3eb;border-radius:16px;background:#f8fafc;color:#8495a6;text-align:center;font-size:10px;font-weight:700}

.krs-dashboard{padding:20px;border:1px solid rgba(18,50,88,.08);border-radius:24px;background:#fff}
.krs-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.krs-stat{min-height:83px;display:flex;flex-direction:column;justify-content:center;padding:13px;border:1px solid #e8edf2;border-radius:15px;background:#f8fafc}
.krs-stat span{color:#8a9aab;font-size:8px;font-weight:700}
.krs-stat strong{margin-top:5px;color:var(--krs-navy);font-size:22px;line-height:1;font-weight:950}
.krs-user-review-list{display:grid;gap:10px;margin-top:15px}
.krs-user-review{padding:14px;border:1px solid #e7edf2;border-radius:16px;background:#fff}
.krs-user-review-top{display:flex;align-items:center;justify-content:flex-start;gap:10px}
.krs-user-review-top>div{display:flex;align-items:center;gap:7px}
.krs-user-review-top>div>strong{color:#5f7488;font-size:9px;font-weight:900}
.krs-user-review h3{margin:11px 0 0!important;color:var(--krs-navy)!important;font-size:13px!important;font-weight:900!important}
.krs-user-review>p{margin:8px 0 0!important;color:#5d7287!important;font-size:10px!important;line-height:1.65!important}
.krs-user-review footer{margin-top:10px;color:#99a6b3;font-size:8px;font-weight:650}
body.krs-modal-open{overflow:hidden!important}

@media(max-width:950px){
  .krs-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:620px){
  .krs-showcase,.krs-dashboard{padding:14px;border-radius:21px}
  .krs-showcase-head,.krs-dashboard-head{align-items:flex-start;flex-direction:column}
  .krs-summary{min-width:0;width:100%}
  .krs-write-panel{grid-template-columns:1fr;align-items:start}
  .krs-open-review-form{width:100%}
  .krs-review-grid{grid-template-columns:1fr}
  .krs-head-copy h2,.krs-dashboard-head h2{font-size:22px!important}
  .krs-review-dialog{padding:22px 16px 17px;border-radius:22px}
}


/* v1.1.2 — compact auto-sliding 5-star reviews */
.krs-review-slider{
  position:relative;
  overflow:visible;
}

.krs-review-grid{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-template-columns:none!important;
  grid-auto-columns:calc((100% - 30px)/3)!important;
  gap:15px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scroll-behavior:smooth!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  padding:2px!important;
}

.krs-review-grid::-webkit-scrollbar{
  display:none!important;
}

.krs-card{
  scroll-snap-align:start!important;
  min-width:0!important;
  height:100%!important;
}

.krs-slider-arrow{
  position:absolute!important;
  z-index:3!important;
  top:50%!important;
  width:38px!important;
  height:38px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  border:1px solid #dfe8ef!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#123258!important;
  box-shadow:0 8px 20px rgba(18,50,88,.10)!important;
  cursor:pointer!important;
  transform:translateY(-50%)!important;
}

.krs-slider-arrow svg{
  width:18px!important;
  height:18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
}

.krs-slider-prev{left:-13px!important}
.krs-slider-next{right:-13px!important}

.krs-slider-arrow:hover{
  background:#123258!important;
  color:#fff!important;
}

@media(max-width:950px){
  .krs-review-grid{
    grid-auto-columns:calc((100% - 15px)/2)!important;
  }
}

@media(max-width:620px){
  .krs-review-grid{
    grid-auto-columns:88%!important;
  }

  .krs-slider-arrow{
    display:none!important;
  }
}


/* v1.1.3 — centered, tighter review composition */
.krs-showcase{
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Keep the visible content grouped toward the center instead of edge-to-edge. */
.krs-showcase .krs-showcase-head,
.krs-showcase .krs-write-panel,
.krs-showcase .krs-review-slider,
.krs-showcase > .krs-empty{
  width:min(100%,1040px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.krs-showcase .krs-showcase-head{
  margin-bottom:18px!important;
}

.krs-showcase .krs-write-panel{
  margin-bottom:20px!important;
}

/* Slightly tighter spacing between the three visible cards. */
.krs-showcase .krs-review-grid{
  grid-auto-columns:calc((100% - 24px)/3)!important;
  gap:12px!important;
}

/* Keep arrows close to the grouped card area. */
.krs-showcase .krs-slider-prev{
  left:-10px!important;
}

.krs-showcase .krs-slider-next{
  right:-10px!important;
}

@media(max-width:950px){
  .krs-showcase{
    max-width:960px!important;
  }

  .krs-showcase .krs-showcase-head,
  .krs-showcase .krs-write-panel,
  .krs-showcase .krs-review-slider,
  .krs-showcase > .krs-empty{
    width:min(100%,860px)!important;
  }

  .krs-showcase .krs-review-grid{
    grid-auto-columns:calc((100% - 12px)/2)!important;
    gap:12px!important;
  }
}

@media(max-width:620px){
  .krs-showcase{
    width:calc(100% - 18px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .krs-showcase .krs-showcase-head,
  .krs-showcase .krs-write-panel,
  .krs-showcase .krs-review-slider,
  .krs-showcase > .krs-empty{
    width:100%!important;
  }

  .krs-showcase .krs-review-grid{
    grid-auto-columns:88%!important;
    gap:10px!important;
  }
}


/* v1.1.4 — keep slider arrows completely outside review cards */
.krs-showcase .krs-review-slider{
  position:relative!important;
}

.krs-showcase .krs-slider-prev{
  left:-52px!important;
}

.krs-showcase .krs-slider-next{
  right:-52px!important;
}

.krs-showcase .krs-slider-arrow{
  top:50%!important;
  z-index:5!important;
}

@media(max-width:1120px){
  .krs-showcase .krs-slider-prev{
    left:-42px!important;
  }

  .krs-showcase .krs-slider-next{
    right:-42px!important;
  }
}

@media(max-width:1020px){
  .krs-showcase .krs-slider-prev{
    left:-34px!important;
  }

  .krs-showcase .krs-slider-next{
    right:-34px!important;
  }
}

@media(max-width:620px){
  .krs-showcase .krs-slider-arrow{
    display:none!important;
  }
}
