.occ-copybox{
  --occ-border-cl: rgba(0,0,0,.12);
  --occ-bar-bg: rgba(0,0,0,.04);
  --occ-bar-border: rgba(0,0,0,.08);
  --occ-body-bg: #fff;
  --occ-text-cl: #1a1a2e;
  --occ-btn-border: rgba(0,0,0,.18);
  --occ-btn-bg: #fff;
  --occ-btn-color: #1a1a2e;
  --occ-btn-active-bg: rgba(0,0,0,.06);
  --occ-copied-bg: #e8f5e9;
  --occ-copied-color: #2e7d32;
  --occ-pre-cl: #1a1a2e;
  --occ-radius: 12px;

  border:1px solid var(--occ-border-cl);
  border-radius:var(--occ-radius);
  overflow:hidden;
  margin:16px 0;
  background:var(--occ-body-bg);
}

/* ---- Dark mode (Soledad + generic) ---- */
.occ-copybox[data-occ-theme="dark"],
body.pcdark-mode .occ-copybox,
body.pcdm-enable.pcdark-mode .occ-copybox,
body.dark-mode .occ-copybox,
body.dark .occ-copybox,
html[data-theme="dark"] .occ-copybox,
body[data-theme="dark"] .occ-copybox,
body.blangkon-makeover .occ-copybox{
  --occ-border-cl: rgba(255,255,255,.12);
  --occ-bar-bg: rgba(255,255,255,.06);
  --occ-bar-border: rgba(255,255,255,.08);
  --occ-body-bg: rgba(14,20,28,.96);
  --occ-text-cl: #eef2ff;
  --occ-btn-border: rgba(255,255,255,.15);
  --occ-btn-bg: rgba(30,38,50,.9);
  --occ-btn-color: #eef2ff;
  --occ-btn-active-bg: rgba(255,255,255,.08);
  --occ-copied-bg: rgba(46,125,50,.2);
  --occ-copied-color: #81c784;
  --occ-pre-cl: #eef2ff;
}

.occ-copybox, .occ-copybox *{ box-sizing:border-box; }

.occ-copybox__bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 14px;
  background:var(--occ-bar-bg);
  border-bottom:1px solid var(--occ-bar-border);
}
.occ-copybox__bar--no-title{ justify-content:flex-end; }

.occ-copybox__title{
  font-size:13px;
  font-weight:600;
  line-height:1.3;
  margin:0;
  color:var(--occ-text-cl);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.occ-copybox__btn{
  appearance:none;
  border:1px solid var(--occ-btn-border);
  background:var(--occ-btn-bg);
  color:var(--occ-btn-color);
  padding:5px 12px;
  border-radius:8px;
  font-size:12px;
  font-weight:500;
  cursor:pointer;
  white-space:nowrap;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
  display:inline-flex;
  align-items:center;
  gap:5px;
  line-height:1.4;
}
.occ-copybox__btn:active{ transform:translateY(1px); }
.occ-copybox__btn:hover{ background:var(--occ-btn-active-bg); }

.occ-copybox__btn--copied{
  background:var(--occ-copied-bg) !important;
  color:var(--occ-copied-color) !important;
  border-color:transparent !important;
}

.occ-copybox__body{ padding:14px; }

.occ-copybox__pre{
  margin:0;
  padding:0;
  overflow:auto;
  font-size:13px;
  line-height:1.5;
  white-space:pre;
  color:var(--occ-pre-cl);
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;
  tab-size: 4;
}

.occ-copybox__pre--text{
  white-space:pre-wrap;
  word-break:break-word;
  font-family:inherit;
}

/* Content protector bypass */
.occ-copybox, .occ-copybox *{
  -webkit-user-select:text !important;
  -moz-user-select:text !important;
  -ms-user-select:text !important;
  user-select:text !important;
}

.occ-copybox__src{
  position:absolute !important;
  left:-9999px !important;
  top:auto !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
}

/* Align support */
.occ-copybox.aligncenter{ max-width:100%; margin-left:auto; margin-right:auto; }
.occ-copybox.alignwide{ max-width:calc(100% + 4em); }
.occ-copybox.alignfull{ max-width:100vw; border-radius:0; }

/* Icon in button */
.occ-copybox__btn svg{
  width:14px;
  height:14px;
  flex-shrink:0;
}
