.config-form {
  display: grid;
  gap: 12px;
}

.config-editor {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #0a0e13;
}

.config-editor summary {
  cursor: pointer;
  padding: 14px 16px;
  color: var(--gold2);
  font-weight: 700;
}

.config-editor textarea {
  display: block;
  min-height: 220px;
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
  font: 12px/1.5 Consolas, "Courier New", monospace;
  resize: vertical;
  tab-size: 4;
}

.config-form > .button {
  justify-self: start;
  margin-top: 12px;
}

.customer-list { display: grid; gap: 18px; }
.customer-card { border: 1px solid var(--line); border-radius: 12px; padding: 20px; background: #11171d; display: grid; gap: 16px; }
.customer-card header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.customer-card header div { display: grid; gap: 5px; }
.customer-card header div span { color: var(--muted); }
.license-summary { display: grid; grid-template-columns: minmax(130px,.7fr) minmax(140px,.7fr) minmax(240px,2fr); gap: 10px; }
.license-summary > span { display: grid; gap: 5px; padding: 12px; border: 1px solid #27313a; border-radius: 8px; background: #0b1015; }
.license-summary small { color: var(--gold); text-transform: uppercase; letter-spacing: .08em; font-size: 10px; }
.customer-binding { display: grid; grid-template-columns: 1fr 1fr minmax(150px,.55fr); gap: 8px; }
.customer-binding .button-row { grid-column: 1 / -1; }
.grant-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.grant-grid form { display: grid; grid-template-columns: minmax(150px,1fr) minmax(140px,.65fr); gap: 8px; align-items: center; padding: 14px; border: 1px solid #27313a; border-radius: 9px; background: #0b1015; }
.grant-grid form > strong { grid-column: 1 / -1; color: var(--gold2); }
.button-row { display: flex; flex-wrap: wrap; gap: 6px; }
.customer-card button { background: #252f39; color: #dce3e8; border: 1px solid #3d4a56; border-radius: 6px; padding: 9px 11px; cursor: pointer; }

@media(max-width:900px){.license-summary,.customer-binding,.grant-grid{grid-template-columns:1fr}.customer-binding .button-row{grid-column:auto}.grant-grid form{grid-template-columns:1fr}}

.catalog-form-wrap { padding: 16px; }
.catalog-editor { max-width: none; grid-template-columns: 1fr 1fr; }
.catalog-editor label:nth-of-type(4),.catalog-editor label:nth-of-type(5),.catalog-editor label:nth-of-type(6),.catalog-editor label:nth-of-type(7),.catalog-editor .button { grid-column: 1 / -1; }
.catalog-admin-list { display: grid; gap: 9px; margin-top: 22px; }
.catalog-admin-list article { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 12px; padding: 15px; border: 1px solid var(--line); border-radius: 10px; background: #11171d; }
.catalog-admin-list article div { display: grid; gap: 5px; }
.catalog-admin-list article div span { color: var(--muted); font-size: 12px; }
.catalog-admin-grid { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(300px,.8fr); gap: 18px; align-items: start; }
.catalog-admin-grid .form { max-width: none; }
.admin-media-grid,.plugin-gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 15px; }
.admin-media-grid > div { border: 1px solid var(--line); border-radius: 10px; padding: 8px; background: #0b1015; }
.admin-media-grid img,.admin-media-grid video,.plugin-gallery img,.plugin-gallery video { display: block; width: 100%; max-height: 420px; object-fit: contain; border-radius: 8px; background: #05070a; }
.catalog-card { position: relative; overflow: hidden; padding-top: 0; }
.catalog-card > img { display: block; width: calc(100% + 56px); height: 170px; object-fit: cover; margin: 0 -28px 22px; border-bottom: 1px solid #d7a34b66; background: #090c10; }
.plugin-hero > img.icon-fallback { object-fit: contain; padding: 42px; background: radial-gradient(circle,#1e2830,#080b0e 70%); }
.catalog-section { padding: 34px 0; }
.catalog-section h2 { font: 36px Georgia,serif; }
.catalog-section li { color: #cad1d7; line-height: 1.9; }

@media(max-width:900px){.catalog-editor,.catalog-admin-grid{grid-template-columns:1fr}.catalog-editor label,.catalog-editor .button{grid-column:auto}.admin-media-grid,.plugin-gallery{grid-template-columns:1fr}}
