.rpg-permission-table {
  min-width: calc(230px + var(--permission-count, 12) * 82px);
}

.rpg-permission-row {
  grid-template-columns: minmax(210px, 1.5fr) repeat(var(--permission-count, 12), minmax(72px, .65fr));
}

/* RPG control center: compact, readable and consistent with the game interface. */
.rpg-admin-panel {
  --rpg-admin-line: rgba(106, 165, 209, 0.2);
  --rpg-admin-blue: #55b9ef;
  --rpg-admin-violet: #8560df;
}

.rpg-admin-panel .admin-section-heading {
  position: relative;
  margin-top: 2rem;
  padding: 1.25rem 0 1.5rem;
  border-bottom: 1px solid var(--rpg-admin-line);
}

.rpg-admin-panel .admin-section-heading::after {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: min(12rem, 40%);
  height: 1px;
  background: linear-gradient(90deg, var(--rpg-admin-blue), var(--rpg-admin-violet), transparent);
  content: "";
}

.rpg-admin-access {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  min-height: 2.25rem;
  margin: 1rem 0;
  padding: 0 0.8rem;
  border: 1px solid rgba(85, 185, 239, 0.24);
  border-radius: 999px;
  background: rgba(23, 94, 136, 0.08);
}

.rpg-admin-access::before {
  width: 0.42rem;
  height: 0.42rem;
  border-radius: 50%;
  background: #59bdf1;
  box-shadow: 0 0 12px rgba(89, 189, 241, 0.65);
  content: "";
}

.rpg-permission-section {
  overflow: hidden;
  border-color: var(--rpg-admin-line);
  border-radius: 14px;
  background:
    radial-gradient(circle at 100% 0, rgba(121, 77, 198, 0.1), transparent 35%),
    rgba(5, 10, 17, 0.76);
}

.rpg-permission-section > header {
  padding-bottom: 1.2rem;
  border-bottom: 1px solid rgba(106, 165, 209, 0.12);
}

.rpg-permission-grid {
  padding-bottom: 0.35rem;
  scrollbar-color: rgba(86, 164, 216, 0.52) rgba(4, 9, 15, 0.5);
}

.rpg-permission-row {
  padding-inline: 0.65rem;
  transition: background 140ms ease;
}

.rpg-permission-row:not(.rpg-permission-head):hover {
  background: linear-gradient(90deg, rgba(43, 142, 202, 0.07), rgba(116, 72, 194, 0.055));
}

.rpg-editor-tabs {
  position: sticky;
  top: 0;
  z-index: 4;
  padding: 0.4rem;
  border: 1px solid var(--rpg-admin-line);
  border-radius: 11px;
  background: rgba(4, 9, 15, 0.94);
  backdrop-filter: blur(10px);
}

.rpg-editor-tabs button {
  min-height: 2.55rem;
  border-color: transparent;
  border-radius: 7px;
  transition: border-color 140ms ease, background 140ms ease, color 140ms ease;
}

.rpg-editor-tabs button:hover {
  background: rgba(42, 135, 193, 0.09);
  color: #dbeaf5;
}

.rpg-editor-tabs button.is-active {
  border-color: rgba(85, 185, 239, 0.38);
  background: linear-gradient(110deg, rgba(42, 139, 199, 0.16), rgba(116, 72, 197, 0.17));
  box-shadow: none;
}

.rpg-editor-toolbar {
  padding: 0.85rem;
  border: 1px solid var(--rpg-admin-line);
  border-radius: 10px;
  background: rgba(5, 10, 17, 0.6);
}

.rpg-editor-layout {
  min-height: 34rem;
  overflow: hidden;
  border-color: var(--rpg-admin-line);
  border-radius: 13px;
  background:
    linear-gradient(135deg, rgba(5, 11, 18, 0.9), rgba(10, 8, 17, 0.85));
}

.rpg-entry-list {
  background: rgba(2, 7, 12, 0.45);
  scrollbar-color: rgba(86, 164, 216, 0.5) rgba(4, 9, 15, 0.5);
}

.rpg-entry-list button {
  position: relative;
  min-height: 3.8rem;
  transition: background 140ms ease, color 140ms ease;
}

.rpg-entry-list button:hover {
  background: rgba(42, 139, 199, 0.07);
}

.rpg-entry-list button.is-active {
  background: linear-gradient(90deg, rgba(46, 161, 242, 0.14), rgba(116, 72, 210, 0.06));
}

.rpg-entry-list button.is-quest-blocked {
  border-left: 3px solid #ef4e67;
  background: linear-gradient(90deg, rgba(159, 31, 54, 0.16), rgba(159, 31, 54, 0.025) 58%);
}

.rpg-entry-list button.is-quest-blocked small { color: #ff8fa2; }

.rpg-entry-list button.is-quest-completable {
  border-left: 3px solid #43d49c;
  background: linear-gradient(90deg, rgba(31, 139, 98, 0.15), rgba(31, 139, 98, 0.025) 58%);
}

.rpg-entry-list button.is-quest-completable small { color: #78e8bc; }

.rpg-entry-editor {
  min-width: 0;
}

.rpg-entry-editor > header {
  padding-bottom: 0.6rem;
  border-bottom: 1px solid rgba(106, 165, 209, 0.12);
}

.rpg-field-grid {
  margin-top: 1.1rem;
}

.rpg-editor-toolbar input,
.rpg-field-grid input,
.rpg-field-grid select,
.rpg-field-grid textarea {
  border-radius: 7px;
  outline: none;
  transition: border-color 140ms ease, box-shadow 140ms ease;
}

.rpg-editor-toolbar input:focus,
.rpg-field-grid input:focus,
.rpg-field-grid select:focus,
.rpg-field-grid textarea:focus {
  border-color: var(--rpg-admin-blue);
  box-shadow: 0 0 0 3px rgba(85, 185, 239, 0.09);
}

.rpg-image-upload {
  min-height: 4rem;
  border-style: dashed;
  border-radius: 9px;
  background: rgba(4, 9, 15, 0.5);
}

.rpg-field-hint {
  display: block;
  margin-top: 0.15rem;
  color: #73bce8;
  font-size: 0.68rem;
  line-height: 1.45;
}

.rpg-save-state {
  align-self: center;
  min-height: 1.2rem;
  margin-left: auto;
  color: #8193a4;
  font-size: .72rem;
}

.rpg-save-state[data-state="success"] { color: #72d7a2; }
.rpg-save-state[data-state="error"] { color: #ff7185; }
.rpg-save-state[data-state="pending"] { color: #73bce8; }

.rpg-decoration-preview {
  --dec-primary: #55b9ef;
  --dec-secondary: #8d63e8;
  --dec-glow: #6cc8ff;
  --dec-glow-strength: .55;
  overflow: hidden;
  width: min(100%, 290px);
  min-height: 0;
  aspect-ratio: 8 / 13;
  box-sizing: border-box;
  margin-inline: auto;
  padding: 3.1rem 2.15rem 2.75rem;
  display: grid;
  grid-template-rows: auto auto auto;
  align-content: center;
  border: 1px solid color-mix(in srgb, var(--dec-primary) 58%, transparent);
  border-radius: 14px;
  background:
    radial-gradient(circle at 15% 50%, color-mix(in srgb, var(--dec-glow) 18%, transparent), transparent 36%),
    linear-gradient(115deg, rgba(3, 10, 17, .96), color-mix(in srgb, var(--dec-secondary) 10%, #070912));
}
.rpg-emblem-field{grid-column:1/-1}
.rpg-emblem-disclosure{margin-top:.65rem;border:1px solid #26384a;background:#070c14}
.rpg-emblem-disclosure>summary{padding:1rem 1.1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#dce8f3;cursor:pointer;list-style:none}
.rpg-emblem-disclosure>summary::-webkit-details-marker{display:none}
.rpg-emblem-disclosure>summary::after{content:"+";width:1.8rem;height:1.8rem;display:grid;place-items:center;color:#79d5ff;border:1px solid #35516a;border-radius:50%}
.rpg-emblem-disclosure[open]>summary::after{content:"–"}
.rpg-emblem-disclosure>summary small{margin-left:auto;color:#71869a}
.rpg-emblem-disclosure>.rpg-emblem-gallery{padding:0 1rem 1rem}
.rpg-emblem-gallery{display:grid;gap:1.25rem;margin-top:.65rem}
.rpg-emblem-gallery>section{padding:1rem;border:1px solid #26384a;background:#070c14}
.rpg-emblem-gallery>section>header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem;color:#c8d6e5}
.rpg-emblem-gallery>section>header small{color:#70869b}
.rpg-emblem-gallery>section>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:.55rem}
.rpg-emblem-option{min-width:0;padding:.55rem;display:grid;grid-template-rows:76px auto auto;gap:.35rem;text-align:left;color:#dbe7f2;border:1px solid #26394c;background:#090f19;transition:.18s ease}
.rpg-emblem-option:hover{border-color:#55b9ef;transform:translateY(-2px)}
.rpg-emblem-option[data-selected="true"]{border-color:#9b6cf0;background:linear-gradient(145deg,#0b1b29,#171025);box-shadow:0 0 0 1px #55b9ef inset,0 0 20px #7d5ce322}
.rpg-emblem-option img{width:100%;height:76px;object-fit:contain}
.rpg-emblem-option span{overflow:hidden;text-overflow:ellipsis;color:#edf5fc;font-size:.72rem;white-space:nowrap}
.rpg-emblem-option em{overflow:hidden;text-overflow:ellipsis;color:#6f8599;font-size:.61rem;font-style:normal;white-space:nowrap}
.rpg-emblem-option[data-selected="true"] em{color:#bda9ee}

.decoration-preview-stage {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
  min-height: 6rem;
}

.decoration-preview-emblem {
  --dec-clip: inset(0 round 10px);
  display: grid;
  width: 4.3rem;
  height: 4.3rem;
  flex: 0 0 auto;
  place-items: center;
  border: 3px solid transparent;
  background:
    linear-gradient(145deg, color-mix(in srgb, var(--dec-primary) 20%, #06101a), color-mix(in srgb, var(--dec-secondary) 22%, #080711)) padding-box,
    linear-gradient(135deg, var(--dec-primary), #f4f8ff 48%, var(--dec-secondary)) border-box;
  clip-path: var(--dec-clip);
  box-shadow: 0 0 calc(30px * var(--dec-glow-strength)) color-mix(in srgb, var(--dec-glow) 70%, transparent);
  color: #f4f8ff;
  font-size: 1.65rem;
}

[data-shape="circle"] .decoration-preview-emblem { --dec-clip: circle(50%); }
[data-shape="diamond"] .decoration-preview-emblem { --dec-clip: polygon(50% 0,100% 50%,50% 100%,0 50%); }
[data-shape="hexagon"] .decoration-preview-emblem { --dec-clip: polygon(25% 6%,75% 6%,100% 50%,75% 94%,25% 94%,0 50%); }
[data-shape="shield"] .decoration-preview-emblem { --dec-clip: polygon(8% 5%,92% 5%,88% 68%,50% 100%,12% 68%); }
[data-shape="crest"] .decoration-preview-emblem { --dec-clip: polygon(50% 0,92% 18%,84% 76%,50% 100%,16% 76%,8% 18%); }
[data-shape="star"] .decoration-preview-emblem { --dec-clip: polygon(50% 0,61% 34%,98% 35%,68% 56%,79% 94%,50% 72%,21% 94%,32% 56%,2% 35%,39% 34%); }
[data-shape="crystal"] .decoration-preview-emblem { --dec-clip: polygon(50% 0,88% 24%,72% 82%,50% 100%,28% 82%,12% 24%); }
[data-shape="rune"] .decoration-preview-emblem { --dec-clip: polygon(24% 0,76% 0,100% 26%,82% 50%,100% 74%,76% 100%,24% 100%,0 74%,18% 50%,0 26%); }
[data-shape="wings"] .decoration-preview-emblem { --dec-clip: polygon(50% 18%,70% 4%,100% 0,88% 34%,100% 58%,70% 52%,50% 100%,30% 52%,0 58%,12% 34%,0 0,30% 4%); }
[data-shape="flame"] .decoration-preview-emblem { --dec-clip: polygon(52% 0,72% 28%,88% 18%,94% 62%,74% 92%,50% 100%,24% 91%,8% 62%,18% 30%,34% 47%); }
[data-shape="moon"] .decoration-preview-emblem { --dec-clip: polygon(12% 4%,70% 0,48% 20%,42% 48%,53% 76%,78% 94%,20% 100%,0 72%,0 28%); }
[data-shape="sun"] .decoration-preview-emblem { --dec-clip: polygon(50% 0,59% 20%,78% 8%,77% 31%,100% 28%,82% 50%,100% 72%,77% 69%,78% 92%,59% 80%,50% 100%,41% 80%,22% 92%,23% 69%,0 72%,18% 50%,0 28%,23% 31%,22% 8%,41% 20%); }
[data-shape="octagon"] .decoration-preview-emblem { --dec-clip: polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%); }
[data-shape="double_diamond"] .decoration-preview-emblem { --dec-clip: polygon(50% 0,72% 26%,100% 50%,72% 74%,50% 100%,28% 74%,0 50%,28% 26%); }
[data-shape="portal"] .decoration-preview-emblem { --dec-clip: circle(50%); border-radius: 50%; outline: 3px double var(--dec-secondary); outline-offset: 3px; }
[data-shape="broken_circle"] .decoration-preview-emblem { --dec-clip: polygon(48% 0,100% 0,100% 42%,82% 35%,70% 22%,48% 16%,27% 23%,15% 42%,15% 62%,27% 79%,48% 86%,68% 79%,83% 63%,100% 58%,100% 100%,48% 100%,18% 89%,0 62%,0 38%,18% 11%); }
[data-shape="crown"] .decoration-preview-emblem { --dec-clip: polygon(4% 18%,26% 42%,39% 6%,52% 42%,75% 4%,72% 43%,98% 18%,86% 92%,14% 92%); }
[data-border="royal"] .decoration-preview-emblem { border-width: 3px; outline: 1px solid var(--dec-secondary); outline-offset: 4px; }
[data-border="arcane"] .decoration-preview-emblem { border-style: double; border-width: 4px; }
[data-border="shadow"] .decoration-preview-emblem { border-color: var(--dec-secondary); box-shadow: 0 0 24px rgba(0,0,0,.9), 0 0 calc(34px * var(--dec-glow-strength)) var(--dec-glow); }
[data-border="minimal"] .decoration-preview-emblem { border-radius: 7px; box-shadow: none; }
[data-border="engraved"] .decoration-preview-emblem { filter: drop-shadow(0 1px 0 #fff) drop-shadow(0 -2px 0 #182330); }
[data-border="celestial"] .decoration-preview-emblem { background: linear-gradient(145deg,#071525,#16102b) padding-box, conic-gradient(from 20deg,var(--dec-primary),#fff,var(--dec-secondary),#fff,var(--dec-primary)) border-box; }
[data-border="infernal"] .decoration-preview-emblem { background: linear-gradient(145deg,#190807,#090306) padding-box, linear-gradient(135deg,#ffcb65,#ff3d21,#711337) border-box; }
[data-border="frost"] .decoration-preview-emblem { background: linear-gradient(145deg,#061622,#0a1020) padding-box, linear-gradient(135deg,#fff,#77d9ff,#827cff) border-box; }
[data-border="neon"] .decoration-preview-emblem { box-shadow: 0 0 8px var(--dec-primary),0 0 calc(38px * var(--dec-glow-strength)) var(--dec-glow); }

.decoration-preview-stage small {
  color: var(--dec-primary);
  letter-spacing: .18em;
}

.decoration-preview-stage strong {
  display: block;
  margin-top: .25rem;
  color: #edf5ff;
  font-family: Georgia, serif;
  font-size: clamp(1.6rem, 4vw, 2.8rem);
}

[data-name-effect="gradient"] .decoration-preview-stage strong {
  background: linear-gradient(90deg, #fff, var(--dec-primary), var(--dec-secondary));
  background-clip: text;
  color: transparent;
}

[data-name-effect="glow"] .decoration-preview-stage strong {
  text-shadow: 0 0 calc(22px * var(--dec-glow-strength)) var(--dec-glow);
}
[data-name-effect="metallic"] .decoration-preview-stage strong { background: linear-gradient(#fff 10%,#78889b 45%,#fff 55%,#354152 90%); background-clip:text; color:transparent; }
[data-name-effect="fire"] .decoration-preview-stage strong { background: linear-gradient(#fff4a3,#ff8b27 45%,#e3193f); background-clip:text; color:transparent; text-shadow:0 0 18px #ff572288; }
[data-name-effect="frost"] .decoration-preview-stage strong { background: linear-gradient(#fff,#8ce5ff 55%,#7d84ff); background-clip:text; color:transparent; text-shadow:0 0 16px #69d8ff77; }
[data-name-effect="rainbow"] .decoration-preview-stage strong { background: linear-gradient(90deg,#67d9ff,#9874ff,#ff6ec7,#ffd166,#67d9ff); background-size:200% 100%; background-clip:text; color:transparent; animation:decoration-rainbow 4s linear infinite; }
[data-name-effect="void"] .decoration-preview-stage strong { color:#e9ddff; text-shadow:0 0 4px #fff,0 0 15px #8a45ff,0 0 32px #230052; }

.decoration-preview-stage p { margin: .15rem 0 0; color: #91a2b3; }
.rpg-decoration-preview > p { margin: .85rem 0 0; color: #718495; font-size: .72rem; }
.rpg-decoration-preview.ts-profile-theme > p {
  position: relative;
  z-index: 4;
  margin-top: 1.15rem;
  padding-top: .8rem;
  border-top: 1px solid color-mix(in srgb,var(--ts-dec-primary) 18%,transparent);
}
.rpg-decoration-preview .rpg-decoration-component .ts-decoration {
  flex-direction: column;
  justify-content: center;
  text-align: center;
}
.rpg-decoration-preview .rpg-decoration-component .ts-decoration-name {
  max-width: 100%;
  font-size: clamp(1.45rem, 3.6vw, 1.85rem);
  line-height: 1;
  white-space: nowrap;
}
.rpg-decoration-preview .ts-decoration-emblem { width:3.6rem; height:3.6rem; }
[data-animation="pulse"] .decoration-preview-emblem { animation: decoration-pulse 2.2s ease-in-out infinite; }
[data-animation="shimmer"] .decoration-preview-stage::after {
  position: absolute; inset: -100% auto -100% -30%; width: 22%; transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.25), transparent);
  animation: decoration-shimmer 3s ease-in-out infinite; content: "";
}
[data-animation="orbit"] .decoration-preview-stage i {
  position: absolute; left: 2.02rem; top: .65rem; width: .35rem; height: .35rem;
  border-radius: 50%; background: var(--dec-glow); box-shadow: 0 0 10px var(--dec-glow);
  transform-origin: .1rem 2.35rem; animation: decoration-orbit 3s linear infinite;
}
[data-animation="float"] .decoration-preview-emblem { animation:decoration-float 2.8s ease-in-out infinite; }
[data-animation="breathe"] .decoration-preview-stage { animation:decoration-breathe 3.4s ease-in-out infinite; }
[data-animation="flicker"] .decoration-preview-emblem { animation:decoration-flicker 1.8s steps(1) infinite; }
[data-animation="lightning"] .decoration-preview-emblem { animation:decoration-lightning 3.5s ease-out infinite; }
[data-animation="chromatic"] .decoration-preview-emblem { animation:decoration-chromatic 4s linear infinite; }
[data-animation="rotate"] .decoration-preview-emblem { animation:decoration-rotate 9s linear infinite; }

@keyframes decoration-pulse { 50% { filter: brightness(1.35); transform: scale(1.06); } }
@keyframes decoration-shimmer { 0%,20% { left:-30%; } 70%,100% { left:120%; } }
@keyframes decoration-orbit { to { transform: rotate(360deg); } }
@keyframes decoration-float { 50% { transform:translateY(-8px); } }
@keyframes decoration-breathe { 50% { filter:brightness(1.18) saturate(1.25); } }
@keyframes decoration-flicker { 0%,18%,22%,63%,67%,100%{opacity:1} 20%,65%{opacity:.55} }
@keyframes decoration-lightning { 0%,78%,100%{filter:none} 80%{filter:brightness(2.3) drop-shadow(0 0 10px #fff)} 83%{filter:none} 86%{filter:brightness(1.8)} }
@keyframes decoration-chromatic { to { filter:hue-rotate(360deg); } }
@keyframes decoration-rotate { to { transform:rotate(360deg); } }
@keyframes decoration-rainbow { to { background-position:200% 0; } }

.rpg-shop-note {
  border-left: 2px solid var(--rpg-admin-blue);
  background:
    linear-gradient(100deg, rgba(39, 137, 196, 0.1), rgba(111, 67, 183, 0.05));
}

.rpg-empty {
  display: grid;
  min-height: 12rem;
  place-items: center;
  padding: 2rem;
  border: 1px dashed rgba(106, 165, 209, 0.22);
  border-radius: 10px;
  background:
    radial-gradient(circle at 50% 0, rgba(58, 154, 214, 0.08), transparent 55%),
    rgba(3, 8, 14, 0.48);
  text-align: center;
}

.rpg-admin-panel :where(button, input, select, textarea):focus-visible {
  outline: 2px solid rgba(85, 185, 239, 0.82);
  outline-offset: 2px;
}

.rpg-admin-panel button:disabled {
  cursor: wait;
  filter: saturate(0.4);
  opacity: 0.48;
}

/* Compact control-center navigation */
.rpg-admin-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 2rem;
}

.rpg-admin-heading .rpg-admin-access {
  flex: 0 0 auto;
  margin-bottom: .3rem;
}

.rpg-permission-section {
  margin: 1.2rem 0 1.6rem;
  padding: 0;
}

.rpg-permission-section > summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: .9rem;
  min-height: 4.5rem;
  padding: .75rem 1rem;
  cursor: pointer;
  list-style: none;
}

.rpg-permission-section > summary::-webkit-details-marker { display: none; }
.rpg-permission-section > summary::after {
  width: .5rem;
  height: .5rem;
  margin: 0 .3rem;
  border-right: 1px solid #78c8ff;
  border-bottom: 1px solid #78c8ff;
  transform: rotate(45deg);
  transition: transform 160ms ease;
  content: "";
}
.rpg-permission-section[open] > summary::after { transform: rotate(225deg); }

.rpg-permission-summary-icon {
  display: grid;
  width: 2.45rem;
  height: 2.45rem;
  place-items: center;
  border: 1px solid rgba(85,185,239,.28);
  border-radius: 9px;
  background: linear-gradient(135deg,rgba(52,156,220,.12),rgba(125,82,213,.12));
  color: #8dd5fa;
}

.rpg-permission-section summary > span:nth-child(2) {
  display: grid;
  gap: .18rem;
}
.rpg-permission-section summary small {
  color: #71859a;
  font-size: .58rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.rpg-permission-section summary strong { color: #dce8f3; font-size: .86rem; }
.rpg-permission-summary-copy { color: #718095; font-size: .68rem; }
.rpg-permission-content {
  padding: 0 1rem 1rem;
  border-top: 1px solid rgba(106,165,209,.12);
}
.rpg-permission-content > header p {
  margin: 1rem 0;
  color: #7f91a4;
  font-size: .74rem;
}

.rpg-control-center {
  padding: 1rem;
  border: 1px solid var(--rpg-admin-line);
  border-radius: 15px;
  background:
    radial-gradient(circle at 100% 0,rgba(122,76,205,.08),transparent 32%),
    rgba(3,8,14,.64);
}

.rpg-area-nav {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: .55rem;
}
.rpg-area-nav button {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  gap: .65rem;
  min-height: 4.5rem;
  padding: .75rem;
  overflow: hidden;
  border: 1px solid rgba(106,165,209,.16);
  border-radius: 10px;
  background: rgba(5,10,17,.72);
  color: #9babbc;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 150ms ease,background 150ms ease,transform 150ms ease;
}
.rpg-area-nav button:hover {
  border-color: rgba(85,185,239,.38);
  background: rgba(17,33,47,.72);
  transform: translateY(-1px);
}
.rpg-area-nav button.is-active {
  border-color: rgba(85,185,239,.48);
  background: linear-gradient(120deg,rgba(40,139,201,.15),rgba(116,72,197,.15)),rgba(5,10,17,.88);
  color: #edf6fc;
  box-shadow: inset 0 -2px rgba(124,86,220,.7);
}
.rpg-area-nav button i {
  display: grid;
  width: 2rem;
  height: 2rem;
  place-items: center;
  border: 1px solid rgba(85,185,239,.24);
  border-radius: 50%;
  color: #72c7f4;
  font-style: normal;
}
.rpg-area-nav button span { display: grid; min-width: 0; gap: .18rem; }
.rpg-area-nav button strong {
  overflow: hidden;
  font-size: .73rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rpg-area-nav button small {
  color: #6f8194;
  font-size: .53rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.rpg-area-nav button b {
  position: absolute;
  top: .42rem;
  right: .48rem;
  color: #64798d;
  font-size: .55rem;
}

.rpg-workspace-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 2rem;
  margin: 1.25rem 0 0;
  padding: .8rem 0 1rem;
  border-bottom: 1px solid rgba(106,165,209,.12);
}
.rpg-workspace-heading h3 {
  margin: .15rem 0 0;
  color: #edf4fb;
  font-size: clamp(1.45rem,3vw,2.1rem);
}
.rpg-workspace-heading > p {
  max-width: 27rem;
  margin: 0;
  color: #7f91a4;
  font-size: .76rem;
  line-height: 1.5;
  text-align: right;
}

.rpg-control-center .rpg-editor-tabs {
  position: static;
  margin: .8rem 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  backdrop-filter: none;
}
.rpg-control-center .rpg-editor-tabs button {
  min-height: 2.35rem;
  padding: 0 .8rem;
  border-color: rgba(106,165,209,.16);
  border-radius: 999px;
  background: rgba(5,10,17,.72);
  font-size: .72rem;
}

.rpg-inline-check {
  display: flex;
  align-items: center;
  gap: .45rem;
  min-height: 2.5rem;
  padding: 0 .7rem;
  border: 1px solid rgba(122,183,230,.18);
  color: #c9d6e3;
  font-size: .72rem;
}

.rpg-inline-check input[type="checkbox"] {
  width: 1rem;
  min-height: 1rem;
  padding: 0;
  accent-color: #7359dc;
}

@media (max-width: 1080px) {
  .rpg-area-nav { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .rpg-admin-heading,
  .rpg-workspace-heading {
    align-items: flex-start;
    flex-direction: column;
    gap: .8rem;
  }

  .rpg-workspace-heading > p { text-align: left; }

  .rpg-permission-section {
    padding: 1rem;
  }

  .rpg-permission-section > header {
    align-items: flex-start;
    flex-direction: column;
  }

  .rpg-editor-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
  }

  .rpg-editor-tabs button {
    flex: 0 0 auto;
  }
}

@media (max-width: 620px) {
  .rpg-control-center { padding: .65rem; }
  .rpg-area-nav { grid-template-columns: 1fr; }
  .rpg-area-nav button { min-height: 3.8rem; }
  .rpg-permission-summary-copy { display: none; }
  .rpg-permission-section > summary {
    grid-template-columns: auto minmax(0,1fr) auto;
    padding-inline: .75rem;
  }

  .rpg-admin-panel .admin-section-heading h2 {
    font-size: clamp(2.4rem, 13vw, 4rem);
    overflow-wrap: anywhere;
  }

  .rpg-editor-toolbar {
    align-items: stretch;
  }

  .rpg-editor-toolbar label,
  .rpg-editor-toolbar button {
    width: 100%;
  }

  .rpg-entry-editor {
    padding: 1rem;
  }

  .rpg-field-grid {
    gap: 0.9rem;
  }

  .rpg-entry-editor form > footer {
    align-items: stretch;
    flex-direction: column;
  }

  .rpg-entry-editor form > footer button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .rpg-admin-panel *,
  .rpg-admin-panel *::before,
  .rpg-admin-panel *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

.rpg-decoration-profile-sample {
  display:grid;
  grid-template-columns:1fr;
  gap:.55rem;
  margin-top:.75rem;
}

.rpg-decoration-profile-sample > span {
  min-width:0;
  padding:.8rem .9rem;
  border:1px solid #263748;
  border-radius:8px;
  color:#aab9c9;
  font-size:.68rem;
}

@media(max-width:680px) {
  .rpg-decoration-profile-sample { grid-template-columns:1fr; }
  .rpg-decoration-preview { width:min(100%,290px); min-height:0; aspect-ratio:8/13; padding:3.1rem 2.05rem 2.7rem; }
  .rpg-decoration-preview .rpg-decoration-component .ts-decoration-name { font-size:clamp(1.35rem,8vw,1.8rem); }
}

.rpg-location-overview {
  grid-column:1/-1;
  padding:1.15rem;
  border:1px solid rgba(78,165,224,.28);
  border-radius:12px;
  background:
    radial-gradient(circle at 100% 0,rgba(116,73,188,.1),transparent 38%),
    linear-gradient(135deg,rgba(6,15,24,.92),rgba(9,8,16,.88));
}

/* Premium-Profilrahmen bilden selbst die sichtbare Außenkante. Diese Regel
   steht bewusst am Dateiende, damit die allgemeine Vorschaukarte sie nicht
   anschließend wieder mit einer blauen Standardkante überschreibt. */
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"] {
  border-color: transparent !important;
  border-radius: 0;
  outline: 0 !important;
}

.rpg-location-overview > header small {
  color:#76c9f5;
  font-size:.55rem;
  font-weight:750;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.rpg-location-overview > header h4 {
  margin:.35rem 0 .25rem;
  color:#eef5fb;
  font-size:1.2rem;
}

.rpg-location-overview > header p {
  margin:0;
  color:#8292a6;
  font-size:.7rem;
  line-height:1.55;
}

.rpg-location-overview-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.65rem;
  margin-top:1rem;
}

.rpg-location-overview-grid > article {
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(105,151,190,.18);
  border-radius:9px;
  background:rgba(3,8,14,.58);
}

.rpg-location-overview-grid > article > header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.7rem .8rem;
  border-bottom:1px solid rgba(105,151,190,.14);
  background:linear-gradient(90deg,rgba(39,132,190,.08),rgba(108,61,172,.07));
}

.rpg-location-overview-grid h5 {
  margin:0;
  color:#becbd8;
  font-size:.64rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.rpg-location-overview-grid header b {
  display:grid;
  min-width:1.55rem;
  height:1.55rem;
  padding:0 .3rem;
  place-items:center;
  border:1px solid rgba(91,177,234,.28);
  border-radius:999px;
  color:#7cccf5;
  font-size:.58rem;
}

.rpg-location-overview-grid article > div > div {
  display:grid;
  gap:.15rem;
  padding:.65rem .8rem;
  border-bottom:1px solid rgba(105,151,190,.09);
}

.rpg-location-overview-grid article > div > div:last-child {
  border-bottom:0;
}

.rpg-location-overview-grid strong {
  overflow:hidden;
  color:#dbe5ef;
  font-size:.7rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.rpg-location-overview-grid small,
.rpg-location-overview-empty {
  margin:0;
  color:#718398;
  font-size:.58rem;
}

.rpg-location-overview-empty {
  padding:.9rem .8rem;
}

@media(max-width:760px) {
  .rpg-location-overview-grid { grid-template-columns:1fr; }
}

.rpg-player-danger {
  grid-column:1 / -1;
  display:grid;
  gap:.9rem;
  margin-top:.65rem;
  padding:1rem;
  border:1px solid rgba(229,72,93,.38);
  border-radius:10px;
  background:
    linear-gradient(120deg,rgba(126,19,39,.12),rgba(20,8,18,.58) 55%),
    rgba(4,8,14,.72);
  box-shadow:inset 3px 0 rgba(229,72,93,.55);
}

.rpg-player-danger header span {
  color:#ff7588;
  font-size:.62rem;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.rpg-player-danger h4 {
  margin:.25rem 0 .35rem;
  color:#f1e8eb;
  font-size:1rem;
}

.rpg-player-danger header p,
.rpg-player-danger-state {
  margin:0;
  color:#9b8991;
  font-size:.7rem;
  line-height:1.6;
}

.rpg-player-danger label {
  display:grid;
  gap:.4rem;
  max-width:34rem;
  color:#c3aeb5;
  font-size:.66rem;
}

.rpg-player-danger input {
  width:100%;
  min-height:2.65rem;
  padding:.65rem .75rem;
  border:1px solid rgba(229,72,93,.3);
  border-radius:6px;
  outline:0;
  color:#f3e9ec;
  background:rgba(3,7,12,.82);
}

.rpg-player-danger input:focus {
  border-color:#ef667b;
  box-shadow:0 0 0 3px rgba(229,72,93,.1);
}

.rpg-player-danger-actions {
  display:flex;
  flex-wrap:wrap;
  gap:.6rem;
}

.rpg-player-danger-actions button {
  min-height:2.55rem;
  padding:.65rem .9rem;
  border:1px solid;
  border-radius:6px;
  color:#f3f6fa;
  font:inherit;
  font-size:.7rem;
  font-weight:700;
  cursor:pointer;
}

.rpg-player-danger-actions button:disabled {
  cursor:wait;
  opacity:.55;
}

.rpg-danger-reset {
  border-color:rgba(118,101,224,.55) !important;
  background:linear-gradient(120deg,rgba(35,105,156,.34),rgba(88,45,142,.42));
}

.rpg-danger-delete {
  border-color:rgba(229,72,93,.6) !important;
  background:linear-gradient(120deg,rgba(132,23,43,.62),rgba(77,12,30,.72));
}

.rpg-player-danger-state[data-state="success"] { color:#72d6ab; }
.rpg-player-danger-state[data-state="error"] { color:#ff7588; }
.rpg-player-danger-state[data-state="pending"] { color:#8bcdf1; }

.rpg-standalone-overview,
.rpg-quest-graph {
  grid-column:1 / -1;
  display:grid;
  gap:1rem;
  padding:1.1rem;
  border:1px solid rgba(74,168,225,.28);
  border-radius:12px;
  background:
    radial-gradient(circle at 0 0,rgba(42,146,211,.11),transparent 35%),
    radial-gradient(circle at 100% 0,rgba(128,74,210,.1),transparent 38%),
    rgba(3,8,15,.62);
}

.rpg-standalone-overview > header,
.rpg-quest-graph > header {
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:flex-start;
  padding-bottom:.9rem;
  border-bottom:1px solid rgba(120,147,175,.18);
}

.rpg-standalone-overview > header small,
.rpg-quest-graph > header small {
  color:#71c7f3;
  font-size:.62rem;
  letter-spacing:.16em;
}

.rpg-standalone-overview > header h3,
.rpg-quest-graph > header h3 {
  margin:.3rem 0;
  color:#f1f4f8;
  font:600 clamp(1.4rem,3vw,2.25rem)/1.05 Georgia,serif;
}

.rpg-standalone-overview > header p,
.rpg-quest-graph > header p,
.rpg-quest-graph-note {
  margin:0;
  max-width:52rem;
  color:#96a3b4;
  font-size:.72rem;
  line-height:1.65;
}

.rpg-standalone-overview > header > span {
  padding:.45rem .65rem;
  border:1px solid rgba(125,93,219,.34);
  border-radius:999px;
  color:#b9a8ef;
  font-size:.62rem;
  white-space:nowrap;
}

.rpg-standalone-overview-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.7rem;
}

.rpg-standalone-overview-grid article {
  min-width:0;
  padding:.8rem;
  border:1px solid rgba(91,123,153,.22);
  border-radius:8px;
  background:rgba(3,7,13,.66);
}

.rpg-standalone-overview-grid article > header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:.55rem;
}

.rpg-standalone-overview-grid h4 {
  margin:0;
  color:#dce6ef;
  font-size:.76rem;
}

.rpg-standalone-overview-grid header b {
  color:#72c8f1;
  font-size:.68rem;
}

.rpg-standalone-overview-grid article > div {
  display:grid;
  gap:.35rem;
}

.rpg-standalone-overview-grid article > div > div {
  display:grid;
  gap:.1rem;
  padding:.4rem .45rem;
  border-left:2px solid rgba(74,168,225,.38);
  background:rgba(9,16,27,.54);
}

.rpg-standalone-overview-grid strong { color:#d7e0e9; font-size:.68rem; }
.rpg-standalone-overview-grid small,
.rpg-standalone-overview-grid p { margin:0; color:#748396; font-size:.6rem; }

.rpg-admin-dashboard {
  grid-column:1 / -1;
  display:grid;
  gap:1rem;
}
.rpg-admin-dashboard > header {
  padding:1.1rem 1.2rem;
  border:1px solid rgba(74,168,225,.28);
  border-radius:12px;
  background:linear-gradient(120deg,rgba(12,36,55,.76),rgba(21,13,43,.72));
}
.rpg-admin-dashboard > header small,
.rpg-dashboard-columns article > header small { color:#70cbf4; font-size:.6rem; letter-spacing:.16em; }
.rpg-admin-dashboard > header h3 { margin:.35rem 0; color:#f2f5f8; font:600 clamp(1.5rem,3vw,2.35rem)/1 Georgia,serif; }
.rpg-admin-dashboard > header p { margin:0; color:#94a4b6; font-size:.72rem; }
.rpg-dashboard-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.65rem; }
.rpg-dashboard-metrics button {
  display:grid; gap:.25rem; min-height:7rem; padding:.85rem; text-align:left;
  border:1px solid rgba(87,125,158,.26); border-radius:9px;
  background:linear-gradient(145deg,rgba(6,15,25,.92),rgba(13,10,25,.9));
  color:#dce7ef; cursor:pointer;
}
.rpg-dashboard-metrics button:hover { border-color:#5ec6f0; transform:translateY(-1px); }
.rpg-dashboard-metrics button:disabled { opacity:.48; cursor:not-allowed; transform:none; }
.rpg-dashboard-metrics small { color:#7d90a5; font-size:.58rem; text-transform:uppercase; letter-spacing:.12em; }
.rpg-dashboard-metrics strong { color:#f4f6f8; font:600 2rem/1 Georgia,serif; }
.rpg-dashboard-metrics span { color:#7bc9ef; font-size:.62rem; }
.rpg-dashboard-columns { display:grid; grid-template-columns:1.4fr 1fr; gap:.75rem; }
.rpg-dashboard-columns article { padding:1rem; border:1px solid rgba(87,125,158,.25); border-radius:10px; background:rgba(3,8,15,.72); }
.rpg-dashboard-columns article > header { display:flex; justify-content:space-between; align-items:flex-start; padding-bottom:.7rem; border-bottom:1px solid rgba(103,137,168,.18); }
.rpg-dashboard-columns h4 { margin:.25rem 0 0; color:#e8edf2; font-size:1rem; }
.rpg-dashboard-columns article > header b { color:#75cdf5; font-size:1.2rem; }
.rpg-dashboard-columns article > div { display:grid; gap:.4rem; padding-top:.65rem; }
.rpg-dashboard-columns article > div > button:not(.rpg-dashboard-open),
.rpg-dashboard-columns article > div > div {
  display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:.55rem;
  width:100%; padding:.55rem .6rem; border:1px solid rgba(91,124,154,.18);
  background:rgba(9,17,28,.58); color:#d7e2eb; text-align:left;
}
.rpg-dashboard-columns article > div > button span { color:#ff778b; }
.rpg-dashboard-columns article > div strong { font-size:.68rem; }
.rpg-dashboard-columns article > div small { color:#788a9d; font-size:.58rem; }
.rpg-dashboard-columns article p { margin:0; color:#75879a; font-size:.66rem; }
.rpg-dashboard-open { margin-top:.35rem; padding:.65rem; border:1px solid rgba(92,193,237,.38); background:rgba(20,67,91,.24); color:#83d4f7; cursor:pointer; }

@media (max-width:900px) {
  .rpg-dashboard-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rpg-dashboard-columns { grid-template-columns:1fr; }
}
@media (max-width:540px) { .rpg-dashboard-metrics { grid-template-columns:1fr; } }

.rpg-dependency-overview { display:grid; gap:1rem; }
.rpg-dependency-overview > header {
  display:flex; justify-content:space-between; align-items:flex-start; gap:1rem;
  padding:1.05rem; border:1px solid rgba(83,134,173,.32); border-radius:12px;
  background:linear-gradient(135deg,rgba(7,22,34,.9),rgba(18,12,32,.84));
}
.rpg-dependency-overview > header small { color:#68cbed; font-size:.58rem; letter-spacing:.16em; }
.rpg-dependency-overview > header h3 { margin:.35rem 0; color:#f3f5f8; font:600 clamp(1.45rem,3vw,2.25rem)/1 Georgia,serif; }
.rpg-dependency-overview > header p { max-width:54rem; margin:0; color:#91a2b4; font-size:.72rem; line-height:1.55; }
.rpg-dependency-overview > header > span { padding:.35rem .55rem; border:1px solid rgba(102,202,239,.32); border-radius:99px; color:#8bdbf5; font-size:.58rem; text-transform:uppercase; letter-spacing:.1em; }
.rpg-dependency-overview > header > span.is-error { border-color:rgba(239,78,103,.48); background:rgba(159,31,54,.14); color:#ff9aaa; }
.rpg-dependency-overview > header > span.is-success { border-color:rgba(67,212,156,.5); background:rgba(31,139,98,.15); color:#78e8bc; box-shadow:0 0 18px rgba(67,212,156,.08); }
.rpg-quest-diagnostics { margin-top:1.1rem; padding-top:1.1rem; border-top:1px solid rgba(83,134,173,.22); }
.rpg-quest-diagnostics.is-blocked > header { border-color:rgba(239,78,103,.4); background:linear-gradient(135deg,rgba(38,9,18,.88),rgba(18,10,27,.86)); }
.rpg-quest-diagnostics.is-completable > header { border-color:rgba(67,212,156,.36); background:linear-gradient(135deg,rgba(6,31,25,.88),rgba(10,18,29,.86)); }
.rpg-dependency-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid rgba(83,134,173,.25); border-radius:10px; overflow:hidden; }
.rpg-dependency-facts > div { display:grid; gap:.3rem; padding:.8rem; background:rgba(4,10,18,.7); border-right:1px solid rgba(83,134,173,.2); }
.rpg-dependency-facts > div:last-child { border-right:0; }
.rpg-dependency-facts small { color:#75899d; font-size:.56rem; text-transform:uppercase; letter-spacing:.1em; }
.rpg-dependency-facts strong { color:#eef3f6; font:600 1.15rem/1.1 Georgia,serif; }
.rpg-dependency-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.rpg-dependency-grid article { min-width:0; border:1px solid rgba(83,134,173,.24); border-radius:10px; background:rgba(3,8,15,.72); overflow:hidden; }
.rpg-dependency-grid article > header { display:flex; align-items:center; justify-content:space-between; padding:.75rem .85rem; border-bottom:1px solid rgba(83,134,173,.2); }
.rpg-dependency-grid h4 { margin:0; color:#dfe9ef; font-size:.72rem; }
.rpg-dependency-grid article > header b { display:grid; place-items:center; min-width:1.5rem; height:1.5rem; border-radius:50%; background:#102233; color:#83d7f4; font-size:.62rem; }
.rpg-dependency-grid article > div { display:grid; max-height:19rem; overflow:auto; }
.rpg-dependency-grid article > div > p { margin:0; padding:.9rem; color:#718397; font-size:.68rem; }
.rpg-dependency-grid article > div > button,
.rpg-dependency-grid article > div > div { display:flex; justify-content:space-between; align-items:center; gap:.75rem; width:100%; padding:.7rem .85rem; border:0; border-bottom:1px solid rgba(83,134,173,.14); background:transparent; color:inherit; text-align:left; }
.rpg-dependency-grid article > div > button { cursor:pointer; }
.rpg-dependency-grid article > div > button:hover { background:rgba(50,145,190,.09); }
.rpg-dependency-grid article > div > :last-child { border-bottom:0; }
.rpg-dependency-grid span { display:grid; gap:.2rem; min-width:0; }
.rpg-dependency-grid strong { overflow-wrap:anywhere; color:#dce7ee; font-size:.68rem; }
.rpg-dependency-grid small { overflow-wrap:anywhere; color:#778ba0; font-size:.59rem; }
.rpg-dependency-grid em { flex:none; color:#68cbed; font-style:normal; font-size:.56rem; text-transform:uppercase; letter-spacing:.08em; }
@media (max-width:800px) {
  .rpg-dependency-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rpg-dependency-grid { grid-template-columns:1fr; }
}

.rpg-quest-chain {
  display:flex;
  align-items:stretch;
  gap:1.6rem;
  overflow-x:auto;
  padding:.5rem .15rem 1rem;
}

.rpg-quest-node {
  position:relative;
  flex:0 0 min(17rem,75vw);
  display:grid;
  gap:.3rem;
  padding:.85rem;
  text-align:left;
  border:1px solid rgba(89,126,158,.28);
  border-radius:8px;
  color:#dce7f0;
  background:rgba(4,10,18,.84);
  cursor:pointer;
}

.rpg-quest-node:not(:last-child)::after {
  content:"→";
  position:absolute;
  left:calc(100% + .45rem);
  top:50%;
  width:.7rem;
  color:#7b9fc0;
}

.rpg-quest-node small { color:#70c9f3; font-size:.58rem; letter-spacing:.12em; text-transform:uppercase; }
.rpg-quest-node strong { font:600 1rem/1.2 Georgia,serif; }
.rpg-quest-node span { color:#7f8da0; font-size:.62rem; }
.rpg-quest-node.is-current {
  border-color:rgba(124,90,222,.7);
  box-shadow:0 0 0 1px rgba(71,178,231,.24),0 0 22px rgba(91,60,180,.12);
  background:linear-gradient(135deg,rgba(23,75,108,.24),rgba(47,22,82,.38));
}

@media(max-width:900px) {
  .rpg-standalone-overview-grid { grid-template-columns:1fr 1fr; }
}

@media(max-width:620px) {
  .rpg-standalone-overview-grid { grid-template-columns:1fr; }
  .rpg-standalone-overview > header { display:grid; }
}

.rpg-structured-section[data-structured-kind="companion-attacks"] .rpg-repeat-row {
  grid-template-columns:1fr;
  padding:14px;
  gap:12px;
}
.rpg-control-group {
  padding:12px;
  border:1px solid rgba(122,183,230,.13);
  background:rgba(8,13,22,.72);
}
.rpg-control-group > header {
  display:grid;
  gap:3px;
  margin-bottom:10px;
}
.rpg-control-group > header strong {
  color:#e9f4ff;
  font-size:.78rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.rpg-control-group > header small {
  color:#718298;
  font-size:.63rem;
}
.rpg-control-group > div {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:9px;
}
.rpg-labeled-control {
  display:grid;
  align-content:start;
  gap:6px;
  min-width:0;
  color:#a9bad0;
  font-size:.62rem;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.rpg-labeled-control > input,
.rpg-labeled-control > select {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:40px;
  padding:8px 10px;
  border:1px solid rgba(122,183,230,.25);
  background:#080d14;
  color:#e9eff6;
  font:inherit;
}
.rpg-labeled-control > small {
  min-height:1.7em;
  color:#687b92;
  font-size:.55rem;
  line-height:1.4;
  letter-spacing:0;
  text-transform:none;
}
.rpg-currency-field {
  grid-column:span 2;
}
.rpg-currency-input {
  display:grid;
  grid-template-columns:repeat(3,minmax(78px,1fr));
  gap:8px;
  min-width:0;
}
.rpg-currency-input > label {
  display:grid;
  gap:5px;
  min-width:0;
  color:#8497ae;
  font-size:.58rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.rpg-currency-input input[type="number"] {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:40px;
  padding:8px 10px;
  border:1px solid rgba(122,183,230,.25);
  background:#080d14;
  color:#e9eff6;
}
@media (max-width:560px) {
  .rpg-currency-field { grid-column:1 / -1; }
  .rpg-currency-input { grid-template-columns:1fr; }
}
.rpg-structured-section[data-structured-kind="companion-attacks"] .rpg-repeat-row > .admin-action {
  justify-self:end;
  min-width:130px;
}

.rpg-entry-list .rpg-guild-list-card {
  position:relative;
  min-height:108px;
  padding:0;
  overflow:hidden;
}
.rpg-editor-layout:has(.rpg-guild-list-card) {
  grid-template-columns:minmax(330px,38%) minmax(0,1fr);
}
.rpg-guild-list-banner {
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(4,9,16,.68),rgba(7,8,18,.88)),
    linear-gradient(135deg,rgba(32,156,225,.18),rgba(119,68,213,.2));
  background-position:center;
  background-size:cover;
  opacity:.7;
}
.rpg-guild-list-content {
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  gap:12px;
  padding:18px 15px;
}
.rpg-guild-list-emblem {
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  flex:0 0 48px;
  overflow:hidden;
  transform:rotate(45deg);
  border:1px solid rgba(102,192,249,.6);
  background:#090e18;
  color:#c8b7ff;
  font:700 1.15rem Georgia,serif;
}
.rpg-guild-list-emblem img {
  width:142%;
  height:142%;
  max-width:none;
  transform:rotate(-45deg);
  object-fit:cover;
}
.rpg-guild-admin-overview {
  grid-column:1/-1;
  margin-bottom:18px;
}
.rpg-guild-admin-banner {
  position:relative;
  display:flex;
  align-items:center;
  gap:22px;
  min-height:150px;
  padding:24px 30px;
  overflow:hidden;
  border:1px solid rgba(87,181,242,.42);
  background:
    linear-gradient(90deg,rgba(5,11,19,.82),rgba(8,7,18,.58)),
    linear-gradient(135deg,rgba(34,162,231,.2),rgba(113,65,207,.24));
  background-position:center;
  background-size:cover;
}
.rpg-guild-admin-banner::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(5,9,16,.55),transparent 70%);
}
.rpg-guild-admin-banner > * { position:relative;z-index:1; }
.rpg-guild-admin-banner h4 { margin:.2rem 0;font:400 clamp(2rem,5vw,3.7rem) Georgia,serif; }
.rpg-guild-admin-banner p,.rpg-guild-admin-banner small { margin:0;color:#9dafc2; }
.rpg-guild-admin-emblem {
  display:grid;
  place-items:center;
  width:82px;
  height:82px;
  flex:0 0 82px;
  overflow:hidden;
  transform:rotate(45deg);
  border:1px solid #58bdf4;
  background:#080d16;
  color:#c5aeff;
  font:700 2rem Georgia,serif;
  box-shadow:0 0 28px rgba(76,145,238,.2);
}
.rpg-guild-admin-emblem img {
  width:142%;
  height:142%;
  max-width:none;
  transform:rotate(-45deg);
  object-fit:cover;
}
@media(max-width:700px){
  .rpg-editor-layout:has(.rpg-guild-list-card){grid-template-columns:1fr;}
  .rpg-guild-admin-banner{align-items:flex-start;flex-direction:column;padding:22px;}
}

/* Muss die letzte Vorschau-Regel dieser Datei bleiben. */
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"] {
  border: 1px solid transparent !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none;
}

/* Premiumrahmen: Der Container ist nur noch die Effektfläche. Die eigentliche
   Profilkarte wird als eigene Innenfläche in die jeweilige Rahmenöffnung gesetzt. */
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"] {
  --premium-panel-x: 6%;
  --premium-panel-top: 5%;
  --premium-panel-bottom: 5%;
  --premium-content-x: 14%;
  --premium-content-top: 3.7rem;
  --premium-content-bottom: 3.15rem;
  overflow: visible;
  padding: var(--premium-content-top) var(--premium-content-x) var(--premium-content-bottom) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"]::before {
  content: "";
  display: block !important;
  position: absolute;
  z-index: 0;
  inset: var(--premium-panel-top) var(--premium-panel-x) var(--premium-panel-bottom);
  padding: 0;
  border: 1px solid color-mix(in srgb,var(--ts-dec-primary) 12%,transparent);
  border-radius: 10px;
  background:
    radial-gradient(circle at 50% 12%,color-mix(in srgb,var(--ts-dec-glow) 8%,transparent),transparent 40%),
    linear-gradient(180deg,rgba(5,10,18,.86),rgba(7,8,17,.93));
  box-shadow: inset 0 0 32px rgba(0,0,0,.24);
  opacity: 1;
  filter: none;
  animation: none;
  pointer-events: none;
  -webkit-mask: none;
  mask: none;
}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"] > *,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"] > *,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"] > *,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"] > *,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"] > *,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"] > *,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"] > * {
  position: relative;
  z-index: 2;
}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="dream_particle"]{--premium-panel-x:7%;--premium-panel-top:6%;--premium-panel-bottom:6%;--premium-content-x:14%}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="ethereal_light_filaments"]{--premium-panel-x:5%;--premium-panel-top:4%;--premium-panel-bottom:4%;--premium-content-x:13%}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="fluorescent_glitter"]{--premium-panel-x:9%;--premium-panel-top:8%;--premium-panel-bottom:7%;--premium-content-x:16%;--premium-content-top:4rem}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="golden_radiance"]{--premium-panel-x:6%;--premium-panel-top:6%;--premium-panel-bottom:5%;--premium-content-x:14%}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="prismatic_radiance"]{--premium-panel-x:11%;--premium-panel-top:12%;--premium-panel-bottom:10%;--premium-content-x:17%;--premium-content-top:4.35rem;--premium-content-bottom:3.4rem}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="purple_gold_dynasty"]{--premium-panel-x:5%;--premium-panel-top:4%;--premium-panel-bottom:4%;--premium-content-x:14%}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="purple_specks"]{--premium-panel-x:10%;--premium-panel-top:9%;--premium-panel-bottom:8%;--premium-content-x:16%;--premium-content-top:4rem}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"]{--premium-panel-x:7%;--premium-panel-top:6%;--premium-panel-bottom:5%;--premium-content-x:15%}

/* Gemeinsames Zielmaß und sichere Inhaltsbreite für alle acht Animationen. */
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"] {
  --premium-frame-width: 100%;
  --premium-frame-height: 100%;
  --premium-frame-left: 50%;
  --premium-frame-top: 50%;
  --premium-panel-x: 9%;
  --premium-panel-top: 6%;
  --premium-panel-bottom: 6%;
  --premium-content-x: 18%;
  --premium-content-top: 3.55rem;
  --premium-content-bottom: 3rem;
  width: min(100%,290px) !important;
  min-width: 0;
  aspect-ratio: 8/13;
}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"]::after,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"]::after,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"]::after,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"]::after,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"]::after,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"]::after,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"]::after {
  inset: auto !important;
  left: var(--premium-frame-left) !important;
  top: var(--premium-frame-top) !important;
  width: var(--premium-frame-width) !important;
  height: var(--premium-frame-height) !important;
  transform: translate(-50%,-50%) !important;
}
.rpg-decoration-preview[data-profile-frame="dream_particle"]{--premium-frame-width:106%;--premium-frame-height:106%}
.rpg-decoration-preview[data-profile-frame="ethereal_light_filaments"]{--premium-frame-width:100%;--premium-frame-height:100%}
.rpg-decoration-preview[data-profile-frame="fluorescent_glitter"]{--premium-frame-width:112%;--premium-frame-height:106%;--premium-frame-left:49%}
.rpg-decoration-preview[data-profile-frame="golden_radiance"]{--premium-frame-width:106%;--premium-frame-height:104%}
.rpg-decoration-preview[data-profile-frame="prismatic_radiance"]{--premium-frame-width:128%;--premium-frame-height:116%}
.rpg-decoration-preview[data-profile-frame="purple_gold_dynasty"]{--premium-frame-width:100%;--premium-frame-height:100%}
.rpg-decoration-preview[data-profile-frame="purple_specks"]{--premium-frame-width:120%;--premium-frame-height:116%}
.rpg-decoration-preview[data-profile-frame="resplendent_magnificent"]{--premium-frame-width:105%;--premium-frame-height:100%}
.rpg-decoration-preview.ts-profile-theme > *{min-width:0;max-width:100%}
.rpg-decoration-preview.ts-profile-theme .rpg-decoration-component,
.rpg-decoration-preview.ts-profile-theme .rpg-decoration-profile-sample,
.rpg-decoration-preview.ts-profile-theme > p{width:100%;min-width:0;max-width:100%}
.rpg-decoration-preview.ts-profile-theme .ts-decoration,
.rpg-decoration-preview.ts-profile-theme .ts-decoration-copy{width:100%;min-width:0;max-width:100%}
.rpg-decoration-preview.ts-profile-theme .ts-decoration-name{
  max-width:100%;
  font-size:clamp(1.25rem,7vw,1.58rem) !important;
  line-height:1.02;
  white-space:normal !important;
  overflow-wrap:anywhere;
  text-align:center;
}
.rpg-decoration-preview.ts-profile-theme .rpg-decoration-profile-sample > span{
  width:100%;
  min-width:0;
  padding:.7rem .72rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.rpg-decoration-preview.ts-profile-theme > p{font-size:.66rem;line-height:1.4;overflow-wrap:anywhere}

/* Stabile Endfassung: keine zyklischen Prozentbreiten und keine zweite Karte. */
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"],
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"] {
  width: 290px !important;
  min-width: 290px !important;
  max-width: 290px !important;
  height: 471px !important;
  min-height: 471px !important;
  aspect-ratio: auto !important;
  padding: 58px 46px 48px !important;
  align-content: center;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"]::before,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"]::before{display:none!important}
.rpg-decoration-preview.ts-profile-theme > *,
.rpg-decoration-preview.ts-profile-theme .rpg-decoration-component,
.rpg-decoration-preview.ts-profile-theme .rpg-decoration-profile-sample,
.rpg-decoration-preview.ts-profile-theme .ts-decoration,
.rpg-decoration-preview.ts-profile-theme .ts-decoration-copy{
  width:198px !important;
  min-width:198px !important;
  max-width:198px !important;
}
.rpg-decoration-preview.ts-profile-theme .ts-decoration-name{
  width:198px !important;
  min-width:0 !important;
  max-width:198px !important;
  font-size:1.5rem !important;
  line-height:1.05 !important;
  white-space:normal !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
.rpg-decoration-preview.ts-profile-theme .rpg-decoration-profile-sample > span,
.rpg-decoration-preview.ts-profile-theme > p{width:198px!important;min-width:0!important;max-width:198px!important}
@media(max-width:360px){
  .rpg-decoration-preview.ts-profile-theme[data-profile-frame]{transform:scale(.9);transform-origin:top center;margin-bottom:-47px}
}

/* Premiumprofile: Das Emblem sitzt wie ein Siegel auf der oberen Rahmenkante. */
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"] .ts-decoration,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"] .ts-decoration,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"] .ts-decoration,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"] .ts-decoration,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"] .ts-decoration,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"] .ts-decoration,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"] .ts-decoration{
  position:relative;
  z-index:5;
  gap:.1rem;
}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="dream_"] .ts-decoration-emblem,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="ethereal_"] .ts-decoration-emblem,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="fluorescent_"] .ts-decoration-emblem,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="golden_"] .ts-decoration-emblem,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="prismatic_"] .ts-decoration-emblem,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame^="purple_"] .ts-decoration-emblem,
.rpg-decoration-preview.ts-profile-theme[data-profile-frame="resplendent_magnificent"] .ts-decoration-emblem{
  position:absolute;
  z-index:6;
  left:50%;
  top:-4.55rem;
  width:4.25rem;
  height:4.25rem;
  transform:translateX(-50%);
  pointer-events:none;
}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame] .ts-decoration[data-animation="float"] .ts-decoration-emblem{
  animation:rpg-premium-emblem-float 3s ease-in-out infinite;
}
@keyframes rpg-premium-emblem-float{
  0%,100%{transform:translate(-50%,0)}
  50%{transform:translate(-50%,-7px)}
}
.rpg-decoration-preview.ts-profile-theme[data-profile-frame] > .rpg-decoration-component{
  z-index:5 !important;
}
