.krcust-container{max-width:1200px;margin:20px auto;padding:20px;background:#fff;border-radius:6px}
.krcust-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;border-bottom: #ccc 1px solid;}
.krcust-tabs{display:flex;gap:12px;}
.krcust-tabs a{padding:8px 14px;border-radius:6px;text-decoration:none;color:#2b3a42}
.krcust-tabs a.current{background:#2271b1;color:#fff}
.krcust-empty{padding:40px;text-align:center;color:#6b7280}
table.krcust-table{width:100%;border-collapse:collapse}
table.krcust-table th, table.krcust-table td{padding:14px 12px;border-bottom:1px solid #eee}
.krcust-thumb{width:48px;height:48px;display:inline-block;vertical-align:middle}
.krcust-actions a{margin-right:8px}
.krcust-empty{padding-bottom:0;padding-top:5px;}
.krcust-dashboard{text-align:center;}
.krcust-container{background:#fff}
.krcurt_add_pro_btn, .krcurt_back_to_pro_btn{
	background: #2271b1 !important;
	padding: 8px 14px !important;
    border-radius: 6px !important;
    line-height: normal !important;
}

.krcurt_add_pro_btn::before {
  content: "+";          /* the icon/text */
  margin-right: 6px;     /* space between + and text */
  font-weight: bold;     /* make it bold */
  color: #fff;           /* color of the + */
  font-size: 16px;       /* adjust size */
}

.krcurt_back_to_pro_btn::before{
  content: "⟵";          /* the icon/text */
  margin-right: 6px;     /* space between + and text */
  font-weight: bold;     /* make it bold */
  color: #fff;           /* color of the + */
  font-size: 16px;       /* adjust size */
}

.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
}

.switch input { 
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: .4s;
  transition: .4s;
}

.slider:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
}

input:checked + .slider {
  background-color: #2196F3;
}

input:focus + .slider {
  box-shadow: 0 0 1px #2196F3;
}

input:checked + .slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}
/* CSS - put in your stylesheet */
/* basic layout */
.item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  position: relative;
}

/* trigger */
.menu-trigger {
  background: transparent;
  border: 1px solid transparent;
  padding: 6px;
  border-radius: 8px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: none;
}
.menu-trigger:focus {
  outline: none;
  box-shadow: 0 0 0 3px rgba(100, 150, 255, 0.15);
  border-color: rgba(0,0,0,0.06);
}

/* panel */
.menu-panel {
  position: absolute;
  right: 12px;           /* align with trigger on the right */
  top: calc(100% + 8px);
  min-width: 220px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(16,24,40,0.08);
  border: 1px solid rgba(16,24,40,0.04);
  padding: 6px;
  z-index: 1000;
  transform-origin: top right;
  transition: transform 160ms ease, opacity 160ms ease;
}

/* hidden state handled by [hidden], but style for visible */
.menu-panel[hidden] {
  opacity: 0;
  transform: scale(0.95);
  pointer-events: none;
}
.menu-panel:not([hidden]) {
  opacity: 1;
  transform: scale(1);
  pointer-events: auto;
}

/* menu items */
.menu-item {
  display: block;
  width: 100%;
  text-align: left;
  padding: 12px;
  border-radius: 6px;
  background: transparent;
  border: none;
  cursor: pointer;
}
.menu-item:hover {
  background: rgba(16,24,40,0.04);
}
.menu-item .menu-desc {
  font-size: 12px;
  color: #6b7280;
  margin-top: 6px;
}

/* accent for destructive action */
.menu-item.remove { color: #b91c1c; }
.menu-item.remove:hover { background: rgba(185,28,28,0.06); }

/* small helper for screen-readers */
.sr-only { 
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

.model-loading{
	text-align: center;
	padding: 130px;
}
.model-loading p{
	font-size: 18px;
}

:root{
  --overlay: rgba(15,23,42,0.55);
  --modal-bg:#fff;
  --muted:#6b7280;
  --accent:#2b6cb0; /* link blue */
  --card-border: #e6e9ef;
  --radius:8px;
  --shadow: 0 12px 30px rgba(11,14,23,0.12);
  --max-width:900px;
  font-family: "Helvetica Neue", Arial, system-ui, -apple-system;
  color:#111827;
}




/* Modal Content */
.modal-content {
  background-color: #fefefe;
  margin: auto;
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
}

/* The Close Button */
.close {
  color: #aaaaaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
}

/* overlay */
  .backdrop{
    position:fixed; inset:0; background:var(--overlay);
    display:flex; align-items:center; justify-content:center;
    z-index:1200;
  }

  /* modal box */
  .modal {
    background:var(--modal-bg);
    border-radius:10px;
    box-shadow:var(--shadow);
    overflow:hidden;
    /*display:flex;*/
    flex-direction:column;
    border:1px solid rgba(16,24,40,0.06);
  }

  /* header */
  .modal-header {
    padding:18px 22px;
    border-bottom:1px solid rgba(16,24,40,0.06);
    display:flex; align-items:center; justify-content:space-between;
  }
  .modal-header h2{ margin:0; font-size:18px; font-weight:600; color:#111827; }
  .modal-close {
    border:0; background:transparent; font-size:18px; cursor:pointer; color:var(--muted);
    padding:6px 8px; border-radius:6px;
  }
  .modal-close:hover{ background:rgba(0,0,0,0.04); }

  /* body layout: left small thumb, right details + content */
  .modal-body {
    padding:20px 22px;
    overflow:auto;
    display:flex;
    gap:24px;
  }

  .left-col{
    width:120px; flex:0 0 120px;
    display:flex; align-items:flex-start; justify-content:center;
  }
  .left-thumb{
    width:96px; height:96px; border-radius:6px; background:#fff; border:1px solid var(--card-border);
    display:flex; align-items:center; justify-content:center; overflow:hidden;
  }
  .left-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }

  .right-col{ flex:1; min-width:0; }

  .meta-row{
    display:flex; gap:18px; align-items:flex-start; flex-wrap:wrap;
  }
  .meta {
    font-size:14px;
    color:var(--muted);
    line-height:1.6;
  }
  .meta b{ color:#111827; font-weight:600; margin-right:6px; }

  .section-title{
    margin-top:18px;
    font-weight:600;
    color:#111827;
    display:flex; gap:8px; align-items:center;
  }
  .section-title a{ font-weight:600; color:var(--accent); text-decoration:none; font-size:14px; }

  /* layers grid */
  .layers-grid{
    margin-top:12px;
    display:grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap:14px;
  }
  .layer-card{
    border:1px solid var(--card-border);
    border-radius:8px;
    padding:12px;
    background:#fff;
    display:flex;
    flex-direction:column;
    align-items:stretch;
  }
  .layer-title{ color:var(--accent); font-weight:600; font-size:14px; margin-bottom:6px; text-decoration:none; }
  .layer-price{ color:var(--muted); font-size:13px; margin-bottom:8px; }
  .layer-img{
    height:120px; border-radius:6px; overflow:hidden; display:flex; align-items:center; justify-content:center;
    border-top:1px dashed rgba(0,0,0,0.03); padding-top:6px;
  }
  .layer-img img{ max-width:100%; max-height:100%; object-fit:contain; display:block; }

  /* screenshots list */
  .screenshots{
    margin-top:14px;
    color:var(--muted);
    font-size:13px;
  }
  .screenshots-list{ margin-top:8px; display:flex; gap:12px; flex-wrap:wrap; }
  .sshot{ width:160px; height:100px; border-radius:6px; border:1px solid var(--card-border); overflow:hidden; display:flex; align-items:center; justify-content:center; background:#fff; }
  .sshot img{ width:100%; height:100%; object-fit:cover; display:block; }

  /* footer */
  .modal-footer{
    display:flex; align-items:center; justify-content:flex-end; padding:14px 20px; border-top:1px solid rgba(16,24,40,0.06);
    gap:12px;
  }
  .btn{
    padding:8px 12px; border-radius:8px; border:1px solid rgba(16,24,40,0.08); background:transparent; cursor:pointer; font-size:14px;
  }
  .btn.primary{
    background:#fff; color:#1f2937;
  }
  .btn.ghost{
    background:#fff; color:#1f2937;
    border:1px solid rgba(16,24,40,0.08);
  }

  /* small device tweaks */
  @media (max-width:680px){
    .modal-body{ flex-direction:column; }
    .left-col{ width:100%; justify-content:flex-start; }
    .layers-grid{ grid-template-columns: repeat(1, minmax(0,1fr)); }
    .sshot{ width:120px; height:80px; }
  }

  /* overlay + centering */
  .modal {
    display: none;                /* hidden by default */
    width: 100%;
    position: fixed;
    inset: 0;                     /* top:0; right:0; bottom:0; left:0; */
    z-index: 99999;
    background-color: rgba(15,23,42,0.55); /* overlay color (use your --overlay if you like) */
    /*display: flex;*/
    align-items: center;          /* vertical center */
    justify-content: center;      /* horizontal center */
    padding: 20px;                /* small page padding on tiny screens */
    -webkit-overflow-scrolling: touch;
  }

  /* modal box (centered) */
  .modal-content {
    width: 100%;
    max-width: var(--max-width);   /* e.g. 900px */
    background: var(--modal-bg);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    border: 1px solid rgba(16,24,40,0.06);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    max-height: 86vh;             /* ensures it never grows beyond viewport */
    min-height: 86vh;
  }

  /* make only the scrollable area scroll (body stays fixed) */
  .item-content,
  .modal-body {                   /* whichever element holds the main scrollable content */
    padding: 20px;
    overflow: auto;
    /* ensure the inner area can shrink/grow inside modal-content */
    flex: 1 1 auto;
    min-height: 0;               /* important for flexbox scrolling on some browsers */
  }

  /* header stays fixed in modal */
  .modal-header {
    padding: 18px 22px;
    border-bottom: 1px solid rgba(16,24,40,0.06);
    flex: 0 0 auto;
    display:flex; align-items:center; justify-content:space-between;
  }

  /* footer stays fixed in modal */
  .modal-footer {
    flex: 0 0 auto;
    display:flex; align-items:center; justify-content:flex-end;
    padding: 14px 20px;
    border-top: 1px solid rgba(16,24,40,0.06);
  }

  /* for very small screens, give a little more breathing room */
  @media (max-width: 480px) {
    .modal { padding: 12px; }
    .modal-content { max-height: 92vh; }
  }

#cssEditor{
  height: 260px; 
  width: 100%; 
  border: 1px solid #ddd;
}