.jpp-breakdown{
  --jpp-accent:#8a1538;
  --jpp-accent-soft:#f8eef1;
  --jpp-surface:#fff;
  --jpp-bg:#f6f2f3;
  --jpp-text:#1f1720;
  --jpp-muted:#6b5b63;
  --jpp-border:#e4d6dc;
  width:100%;
  margin:16px 0;
  padding:18px;
  border:1px solid var(--jpp-border);
  border-radius:12px;
  background:var(--jpp-bg);
  color:var(--jpp-text);
  font-size:14px;
  line-height:1.45;
  box-sizing:border-box;
}
.jpp-breakdown *,.jpp-breakdown *:before,.jpp-breakdown *:after{box-sizing:border-box}
.jpp-breakdown .amount,.jpp-breakdown strong{font-weight:700}
.jpp-breakdown strong,.jpp-breakdown .amount{overflow-wrap:anywhere}
.jpp-template-heading{font-size:18px;line-height:1.2;color:var(--jpp-accent);font-weight:700;margin:0}
.jpp-context,.jpp-rate-date{font-size:12px;color:var(--jpp-muted)}
.jpp-context-strong{font-size:15px;color:var(--jpp-text);font-weight:700;margin-top:2px}
.jpp-context-inline{display:block;margin-top:2px;font-weight:500;color:var(--jpp-muted)}
.jpp-rate-date{margin-top:10px}
.jpp-head-final{display:flex;flex-direction:column;align-items:flex-end;gap:3px;min-width:0}
.jpp-head-final span{font-size:11px;color:var(--jpp-muted);text-transform:uppercase}
.jpp-head-final strong{font-size:26px;line-height:1.08;color:var(--jpp-accent);text-align:right}
.jpp-chip{display:inline-flex;align-items:center;justify-content:center;background:var(--jpp-accent-soft);color:var(--jpp-accent);padding:7px 10px;border-radius:999px;font-weight:700;white-space:nowrap;font-size:12px}
.jpp-detail-list{display:flex;flex-direction:column;gap:0}
.jpp-detail-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid var(--jpp-border)}
.jpp-detail-item:last-child{border-bottom:0}
.jpp-detail-item span{color:var(--jpp-muted);min-width:0}
.jpp-detail-item strong{text-align:right;min-width:96px;color:var(--jpp-text)}
.jpp-panel{background:var(--jpp-surface);border:1px solid var(--jpp-border);border-radius:10px;padding:14px;min-width:0}
.jpp-panel-title{font-size:15px;font-weight:700;color:var(--jpp-text);margin-bottom:8px}
.jpp-panel-accent{background:var(--jpp-accent);color:#fff;border-color:var(--jpp-accent)}
.jpp-panel-accent .jpp-panel-title,.jpp-panel-accent span,.jpp-panel-accent strong{color:#fff}
.jpp-total-stack{display:flex;flex-direction:column;gap:9px}
.jpp-total-stack>div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid rgba(255,255,255,.24)}
.jpp-total-stack>div:last-child{border-bottom:0;padding-bottom:0}
.jpp-total-stack strong{text-align:right}
.jpp-total-strong strong{font-size:21px}

.jpp-template-premium{padding:20px;background:linear-gradient(180deg,var(--jpp-surface),var(--jpp-bg))}
.jpp-showcase-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:start;gap:12px;margin-bottom:14px}
.jpp-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}
.jpp-stat{background:var(--jpp-surface);border:1px solid var(--jpp-border);border-radius:10px;padding:12px;min-width:0}
.jpp-stat small{display:block;font-size:11px;color:var(--jpp-muted);margin-bottom:5px}
.jpp-stat strong{display:block;font-size:18px;color:var(--jpp-accent)}
.jpp-toggle-card{background:var(--jpp-surface);border:1px solid var(--jpp-border);border-radius:10px;overflow:hidden}
.jpp-toggle-card summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;cursor:pointer;font-weight:700;color:var(--jpp-accent)}
.jpp-toggle-card summary::-webkit-details-marker{display:none}
.jpp-toggle-icon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--jpp-border);border-radius:999px;font-size:16px;line-height:1;transition:transform .18s ease}
.jpp-toggle-card[open] .jpp-toggle-icon{transform:rotate(45deg)}
.jpp-split-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(230px,.85fr);gap:12px;padding:0 14px 14px}

.jpp-template-compact{padding:12px;border-radius:10px;background:var(--jpp-surface)}
.jpp-compact-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--jpp-border)}
.jpp-template-compact .jpp-template-heading{font-size:15px}
.jpp-template-compact .jpp-head-final strong{font-size:22px}
.jpp-compact-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;padding:8px 0}
.jpp-compact-lines>div{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--jpp-border)}
.jpp-compact-lines span{color:var(--jpp-muted)}
.jpp-compact-lines strong{text-align:right}
.jpp-compact-more{border-top:1px solid var(--jpp-border);padding-top:4px}
.jpp-compact-more summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0 2px;cursor:pointer;color:var(--jpp-accent);font-weight:700}
.jpp-compact-more summary::-webkit-details-marker{display:none}
.jpp-compact-more i{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--jpp-accent-soft);font-style:normal}
.jpp-compact-more[open] i{transform:rotate(45deg)}
.jpp-compact-more .jpp-detail-list{padding-top:8px}

.jpp-template-classic{background:var(--jpp-surface);padding:14px}
.jpp-table-wrap{background:var(--jpp-surface);border:1px solid var(--jpp-border);border-radius:10px;overflow:hidden}
.jpp-table-wrap>.jpp-template-heading,.jpp-table-wrap>.jpp-context{padding:14px 14px 0}
.jpp-table-wrap>.jpp-context{padding-top:3px;padding-bottom:10px}
.jpp-table{width:100%;border-collapse:collapse}
.jpp-table th,.jpp-table td{padding:12px 14px;border-bottom:1px solid var(--jpp-border);text-align:left;vertical-align:top}
.jpp-table th{color:var(--jpp-accent);font-size:12px;background:var(--jpp-accent-soft)}
.jpp-table td{color:var(--jpp-text)}
.jpp-table td:last-child{text-align:right;font-weight:700}
.jpp-table tr:last-child td{border-bottom:0}
.jpp-grand-row td{font-weight:700;background:var(--jpp-accent-soft);color:var(--jpp-accent)}

.jpp-template-minimal{padding:0;background:transparent;border:0}
.jpp-accordion{background:var(--jpp-surface);border:1px solid var(--jpp-border);border-radius:10px;overflow:hidden}
.jpp-accordion summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;cursor:pointer;color:var(--jpp-text)}
.jpp-accordion summary::-webkit-details-marker{display:none}
.jpp-accordion summary b{display:block;color:var(--jpp-accent);font-size:15px}
.jpp-accordion summary strong{font-size:18px;color:var(--jpp-accent);text-align:right}
.jpp-accordion-body{padding:0 14px 10px}

.jpp-template-simple_minimal{padding:0;background:transparent;border:0}
.jpp-simple-card{padding:20px;border:1px solid var(--jpp-border);border-radius:14px;background:linear-gradient(180deg,var(--jpp-surface),var(--jpp-bg));color:var(--jpp-text)}
.jpp-simple-kicker{display:inline-flex;width:max-content;max-width:100%;margin-bottom:12px;padding:5px 9px;border-radius:999px;background:var(--jpp-accent-soft);color:var(--jpp-accent);font-weight:800;font-size:11px}
.jpp-simple-row,.jpp-simple-total{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--jpp-border)}
.jpp-simple-row span{color:var(--jpp-muted)}
.jpp-simple-row strong,.jpp-simple-total strong{text-align:right}
.jpp-simple-total{margin-top:8px;padding:14px;border:0;border-radius:10px;background:var(--jpp-accent);color:#fff}

.jpp-rates-box{padding:12px 14px;border:1px solid var(--jpp-border);border-radius:10px;background:#fff;display:inline-block}
.jpp-rates-box div{margin-top:4px}

@media (max-width:900px){
  .jpp-showcase-head{grid-template-columns:minmax(0,1fr) auto}
  .jpp-showcase-head .jpp-chip{grid-column:1/-1;justify-self:start}
  .jpp-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jpp-split-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .jpp-breakdown{margin:12px 0;padding:14px;border-radius:10px;font-size:13px}
  .jpp-head-final{align-items:flex-start}
  .jpp-head-final span,.jpp-head-final strong{text-align:left}
  .jpp-head-final strong{font-size:22px}
  .jpp-detail-item{gap:10px}
  .jpp-detail-item strong{min-width:88px}

  .jpp-template-premium{padding:14px}
  .jpp-showcase-head{grid-template-columns:1fr;gap:8px}
  .jpp-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .jpp-stat{padding:10px}
  .jpp-stat strong{font-size:15px}
  .jpp-split-grid{padding:0 10px 10px}

  .jpp-template-compact{padding:10px}
  .jpp-compact-head{grid-template-columns:1fr;gap:6px}
  .jpp-compact-lines{grid-template-columns:1fr;padding:6px 0}
  .jpp-compact-lines>div{padding:6px 0}
  .jpp-compact-more summary{padding-top:7px}

  .jpp-table thead{display:none}
  .jpp-table,.jpp-table tbody,.jpp-table tr,.jpp-table td{display:block;width:100%}
  .jpp-table tr{padding:8px 12px;border-bottom:1px solid var(--jpp-border)}
  .jpp-table tr:last-child{border-bottom:0}
  .jpp-table td{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:0;text-align:right}
  .jpp-table td:before{content:attr(data-label);color:var(--jpp-muted);font-weight:600;text-align:left}
  .jpp-grand-row{background:var(--jpp-accent-soft)}
  .jpp-grand-row td{background:transparent}

  .jpp-accordion summary{padding:12px}
  .jpp-accordion summary strong{font-size:16px}
  .jpp-accordion-body{padding:0 12px 8px}
  .jpp-simple-card{padding:16px}
  .jpp-simple-row,.jpp-simple-total{gap:12px}
}
