:root{
  --its-sub-accent:#7a048c;
  --its-sub-accent-2:#b020c4;
  --its-sub-ink:#251b28;
  --its-sub-muted:#746a77;
  --its-sub-line:#eadfec;
  --its-sub-surface:#fff;
  --its-sub-soft:#f8f3f9;
  --its-sub-success:#087a4b;
  --its-sub-danger:#b42318;
  --its-sub-warning:#9a5b00;
}

body.its-sub-open{overflow:hidden}
.its-sub-overlay[hidden],.its-sub-toast[hidden]{display:none!important}
.its-sub-overlay{
  position:fixed;
  inset:0;
  z-index:11000;
  display:grid;
  place-items:center;
  padding:24px;
  background:rgba(27,16,30,.57);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  color:var(--its-sub-ink);
  font-family:inherit;
  text-align:right;
}

.its-sub-panel{
  position:relative;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  width:min(1120px,100%);
  height:min(850px,calc(100dvh - 48px));
  overflow:hidden;
  border:1px solid rgba(122,4,140,.15);
  border-radius:28px;
  background:var(--its-sub-surface);
  box-shadow:0 32px 100px rgba(37,16,41,.32);
}

.its-sub-panel__header{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:82px;
  padding:17px 24px;
  border-bottom:1px solid var(--its-sub-line);
  background:linear-gradient(120deg,#fff 0%,#fcf8fd 68%,#f7ebf9 100%);
  touch-action:none;
  user-select:none;
  -webkit-user-select:none;
}

.its-sub-panel__heading{display:grid;gap:3px}
.its-sub-panel__heading h2{margin:0;font-size:clamp(20px,2vw,26px);line-height:1.35;color:var(--its-sub-ink)}
.its-sub-eyebrow{color:var(--its-sub-accent);font-size:11px;font-weight:900;letter-spacing:.02em}
.its-sub-panel__body{overflow:auto;padding:24px;overscroll-behavior:contain}
.its-sub-stack{display:grid;gap:18px;max-width:950px;margin:0 auto}
.its-sub-stack--admin{max-width:none}

.its-sub-button{
  appearance:none;
  min-height:40px;
  border:1px solid transparent;
  border-radius:12px;
  padding:9px 15px;
  font:inherit;
  font-size:12px;
  font-weight:900;
  line-height:1.5;
  cursor:pointer;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease;
}
.its-sub-button:hover:not(:disabled){transform:translateY(-1px)}
.its-sub-button:focus-visible,.its-sub-field input:focus-visible,.its-sub-field textarea:focus-visible,.its-sub-field select:focus-visible,.its-sub-plan:has(input:focus-visible){outline:3px solid rgba(122,4,140,.18);outline-offset:2px}
.its-sub-button:disabled{opacity:.48;cursor:not-allowed;transform:none}
.its-sub-button--primary{color:#fff;background:linear-gradient(135deg,var(--its-sub-accent),var(--its-sub-accent-2));box-shadow:0 9px 22px rgba(122,4,140,.2)}
.its-sub-button--secondary{color:var(--its-sub-accent);background:#f7edf8;border-color:#e7d6ea}
.its-sub-button--success{color:#fff;background:var(--its-sub-success);box-shadow:0 8px 20px rgba(8,122,75,.16)}
.its-sub-button--danger{color:#fff;background:var(--its-sub-danger);box-shadow:0 8px 20px rgba(180,35,24,.14)}
.its-sub-button--ghost{color:#5d5160;background:#fff;border-color:#dfd4e1}
.its-sub-close{min-width:72px}

.its-sub-section{
  display:grid;
  gap:16px;
  padding:20px;
  border:1px solid var(--its-sub-line);
  border-radius:20px;
  background:var(--its-sub-surface);
  box-shadow:0 10px 28px rgba(59,35,63,.055);
}
.its-sub-section__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.its-sub-section__header h3,.its-sub-admin-toolbar h3{margin:0 0 5px;font-size:17px;color:var(--its-sub-ink)}
.its-sub-section__header p,.its-sub-admin-toolbar p{margin:0;color:var(--its-sub-muted);font-size:12px;line-height:1.8}
.its-sub-section__action{justify-self:start}
.its-sub-count{display:grid;place-items:center;min-width:34px;height:34px;border-radius:12px;background:#f5e9f7;color:var(--its-sub-accent);font-weight:900}

.its-sub-definitions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:0;
}
.its-sub-definition{
  min-width:0;
  display:grid;
  gap:5px;
  padding:12px 14px;
  border-radius:14px;
  background:var(--its-sub-soft);
}
.its-sub-definition dt{color:var(--its-sub-muted);font-size:10px;font-weight:800}
.its-sub-definition dd{min-width:0;margin:0;color:var(--its-sub-ink);font-size:12px;font-weight:800;line-height:1.7;overflow-wrap:anywhere;white-space:pre-wrap}
.its-sub-definitions--compact{grid-template-columns:repeat(3,minmax(0,1fr))}
.its-sub-definitions--compact .its-sub-definition{padding:10px 12px}

.its-sub-badge{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  border-radius:999px;
  padding:4px 10px;
  background:#f1edf2;
  color:#615664;
  font-size:10px;
  font-weight:900;
  white-space:nowrap;
}
.its-sub-badge--active,.its-sub-badge--approved{background:#e6f6ef;color:var(--its-sub-success)}
.its-sub-badge--trialing{background:#e9f1ff;color:#2457a6}
.its-sub-badge--pending{background:#fff2d8;color:var(--its-sub-warning)}
.its-sub-badge--suspended,.its-sub-badge--rejected{background:#feeceb;color:var(--its-sub-danger)}
.its-sub-badge--expired,.its-sub-badge--cancelled,.its-sub-badge--archived{background:#f0edf1;color:#625765}

.its-sub-request-form{display:grid;gap:15px}
.its-sub-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.its-sub-plan{
  position:relative;
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:'mark copy' 'mark price';
  align-items:center;
  column-gap:10px;
  row-gap:4px;
  padding:15px;
  border:1px solid var(--its-sub-line);
  border-radius:16px;
  background:#fff;
  cursor:pointer;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.its-sub-plan:hover{transform:translateY(-1px);border-color:#d5bed9;box-shadow:0 10px 24px rgba(74,40,79,.07)}
.its-sub-plan input{position:absolute;opacity:0;pointer-events:none}
.its-sub-plan:has(input:checked){border-color:var(--its-sub-accent);background:#fcf7fd;box-shadow:0 0 0 2px rgba(122,4,140,.08)}
.its-sub-plan:has(input:disabled){opacity:.58;cursor:not-allowed;transform:none}
.its-sub-plan__mark{grid-area:mark;width:18px;height:18px;border:2px solid #c9baca;border-radius:50%;box-shadow:inset 0 0 0 4px #fff;background:#fff}
.its-sub-plan:has(input:checked) .its-sub-plan__mark{border-color:var(--its-sub-accent);background:var(--its-sub-accent)}
.its-sub-plan__copy{grid-area:copy;min-width:0;display:grid;gap:2px}
.its-sub-plan__copy strong{font-size:12px;overflow-wrap:anywhere}
.its-sub-plan__copy small{color:var(--its-sub-muted);font-size:10px}
.its-sub-plan__price{grid-area:price;color:var(--its-sub-accent);font-size:13px;font-weight:900}

.its-sub-field{min-width:0;display:grid;gap:7px;color:#4b3f4e;font-size:11px;font-weight:900}
.its-sub-field input,.its-sub-field textarea,.its-sub-field select{
  width:100%;
  box-sizing:border-box;
  border:1px solid #dcd0de;
  border-radius:13px;
  padding:11px 12px;
  background:#fff;
  color:var(--its-sub-ink);
  font:inherit;
  font-size:12px;
  font-weight:600;
  outline:0;
}
.its-sub-field textarea{min-height:88px;resize:vertical;line-height:1.8}
.its-sub-field input:disabled,.its-sub-field textarea:disabled,.its-sub-field select:disabled{background:#f4f1f5;color:#8f8591}
.its-sub-field input:focus,.its-sub-field textarea:focus,.its-sub-field select:focus{border-color:var(--its-sub-accent);box-shadow:0 0 0 3px rgba(122,4,140,.08)}
.its-sub-footnote{margin:0;text-align:center;color:#918794;font-size:10px;line-height:1.7}

.its-sub-loading,.its-sub-empty{
  min-height:250px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:12px;
  text-align:center;
  color:var(--its-sub-muted);
}
.its-sub-loading p,.its-sub-empty p{max-width:460px;margin:0;font-size:12px;line-height:1.9}
.its-sub-empty h3{margin:0;color:var(--its-sub-ink);font-size:17px}
.its-sub-empty--compact{min-height:100px;border:1px dashed #ddd0df;border-radius:15px;background:#fcfafc}
.its-sub-empty__icon{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#fae8e7;color:var(--its-sub-danger);font-size:23px;font-weight:900}
.its-sub-spinner{width:34px;height:34px;border:4px solid #eadced;border-top-color:var(--its-sub-accent);border-radius:50%;animation:its-sub-spin .75s linear infinite}
@keyframes its-sub-spin{to{transform:rotate(360deg)}}

.its-sub-toast{
  position:absolute;
  z-index:20;
  left:50%;
  bottom:18px;
  max-width:min(540px,calc(100% - 36px));
  transform:translateX(-50%);
  border:1px solid #e0d4e2;
  border-radius:14px;
  padding:11px 16px;
  background:#fff;
  color:var(--its-sub-ink);
  box-shadow:0 16px 42px rgba(35,17,38,.2);
  font-size:12px;
  font-weight:800;
  line-height:1.7;
  text-align:center;
}
.its-sub-toast--success{border-color:#b9e2cf;background:#eefaf5;color:var(--its-sub-success)}
.its-sub-toast--error{border-color:#f2c7c4;background:#fff4f3;color:var(--its-sub-danger)}

.its-sub-admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 2px}
.its-sub-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px}
.its-sub-stat{position:relative;overflow:hidden;display:grid;gap:7px;padding:16px;border:1px solid var(--its-sub-line);border-radius:17px;background:#fff;box-shadow:0 8px 22px rgba(54,31,58,.05)}
.its-sub-stat::after{content:'';position:absolute;inset-inline-end:-18px;bottom:-28px;width:68px;height:68px;border-radius:50%;background:currentColor;opacity:.07}
.its-sub-stat strong{font-size:22px;line-height:1;color:var(--its-sub-ink)}
.its-sub-stat span{color:var(--its-sub-muted);font-size:10px;font-weight:900}
.its-sub-stat--active{color:var(--its-sub-success)}
.its-sub-stat--trialing{color:#2457a6}
.its-sub-stat--suspended{color:var(--its-sub-danger)}
.its-sub-stat--pending{color:var(--its-sub-warning)}
.its-sub-stat--accounts{color:var(--its-sub-accent)}
.its-sub-price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.its-sub-price-card{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:16px;
  border:1px solid #e8ddea;
  border-radius:17px;
  background:linear-gradient(145deg,#fff,#fdf9fd);
}
.its-sub-price-card__heading{grid-column:1/-1;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.its-sub-price-card__heading h4{margin:0 0 4px;color:var(--its-sub-ink);font-size:13px;overflow-wrap:anywhere}
.its-sub-price-card__heading p{margin:0;color:var(--its-sub-muted);font-size:10px}
.its-sub-price-card__value{min-width:0;color:var(--its-sub-accent);font-size:20px;line-height:1.2;overflow-wrap:anywhere}
.its-sub-price-card>.its-sub-button{min-width:112px}
.its-sub-admin-list{display:grid;gap:10px}
.its-sub-admin-card{display:grid;gap:13px;padding:16px;border:1px solid #e8ddea;border-radius:16px;background:#fefefe}
.its-sub-admin-card__heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.its-sub-admin-card__heading h4{margin:0 0 4px;font-size:13px;color:var(--its-sub-ink);overflow-wrap:anywhere}
.its-sub-admin-card__heading p{margin:0;color:var(--its-sub-muted);font-size:10px;line-height:1.7;overflow-wrap:anywhere}
.its-sub-actions{display:flex;align-items:center;gap:8px}
.its-sub-actions--wrap{flex-wrap:wrap}
.its-sub-actions .its-sub-button{min-height:36px;padding:7px 12px;font-size:10px}
.its-sub-filters{display:grid;grid-template-columns:minmax(240px,1fr) minmax(150px,.35fr);gap:10px;align-items:end}

.its-sub-dialog-layer{
  position:absolute;
  inset:0;
  z-index:12;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(31,19,34,.56);
  -webkit-backdrop-filter:blur(5px);
  backdrop-filter:blur(5px);
}
.its-sub-dialog{
  width:min(470px,100%);
  max-height:calc(100dvh - 72px);
  overflow:auto;
  border:1px solid rgba(122,4,140,.16);
  border-radius:22px;
  padding:22px;
  background:#fff;
  box-shadow:0 25px 70px rgba(34,17,37,.3);
}
.its-sub-dialog h3{margin:0 0 7px;font-size:18px;color:var(--its-sub-ink)}
.its-sub-dialog>p{margin:0 0 18px;color:var(--its-sub-muted);font-size:12px;line-height:1.9}
.its-sub-dialog__form{display:grid;gap:13px}
.its-sub-dialog__actions{display:flex;justify-content:flex-start;gap:8px;margin-top:5px}

@media(max-width:900px){
  .its-sub-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
  .its-sub-price-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .its-sub-plan-grid{grid-template-columns:1fr}
  .its-sub-definitions--compact{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:640px){
  .its-sub-overlay{padding:0;place-items:stretch}
  .its-sub-panel{width:100%;height:100dvh;border:0;border-radius:0;overscroll-behavior:contain;will-change:transform}
  .its-sub-panel.is-dragging,.its-sub-dialog.is-dragging{transition:none!important}
  .its-sub-panel__header{min-height:70px;padding:calc(13px + env(safe-area-inset-top)) calc(15px + env(safe-area-inset-right)) 13px calc(15px + env(safe-area-inset-left))}
  .its-sub-panel__body{padding:14px calc(14px + env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left))}
  .its-sub-panel__heading h2{font-size:19px}
  .its-sub-close{min-width:auto;padding-inline:12px}
  .its-sub-stack{gap:12px}
  .its-sub-section{gap:13px;padding:15px;border-radius:17px}
  .its-sub-section__header{gap:9px}
  .its-sub-section__header h3,.its-sub-admin-toolbar h3{font-size:15px}
  .its-sub-definitions,.its-sub-definitions--compact{grid-template-columns:1fr}
  .its-sub-definition{padding:10px 12px}
  .its-sub-admin-toolbar{align-items:flex-start}
  .its-sub-admin-toolbar>div{min-width:0}
  .its-sub-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .its-sub-price-grid{grid-template-columns:1fr}
  .its-sub-price-card{padding:14px}
  .its-sub-price-card__value{font-size:18px}
  .its-sub-stat{padding:13px}
  .its-sub-stat strong{font-size:19px}
  .its-sub-filters{grid-template-columns:1fr}
  .its-sub-admin-card{padding:13px}
  .its-sub-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .its-sub-actions .its-sub-button{width:100%}
  .its-sub-dialog-layer{position:fixed;padding:12px calc(12px + env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left));align-items:end}
  .its-sub-dialog{width:100%;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));box-sizing:border-box;border-radius:22px 22px 15px 15px;padding:19px 16px;overscroll-behavior:contain;will-change:transform}
  .its-sub-dialog>h3{touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
  .its-sub-dialog__actions{display:grid;grid-template-columns:1fr 1fr}
  .its-sub-toast{position:fixed;bottom:calc(14px + env(safe-area-inset-bottom))}
}

@media(prefers-reduced-motion:reduce){
  .its-sub-button,.its-sub-plan{transition:none}
  .its-sub-spinner{animation-duration:1.5s}
}
