#optrpg-bosses {
  --ob-gold:var(--opui-gold,#e2c585); --ob-light:var(--opui-gold-light,#fff0c9);
  --ob-ink:var(--opui-ink,#dbe7e8); --ob-muted:var(--opui-muted,#a5bec5);
  --ob-edge:var(--opui-edge,#75b8c342); --ob-title:var(--opui-title,Georgia,"Times New Roman",serif);
  color:var(--ob-ink); width:100%; max-width:1280px; margin:24px auto 56px;
  font-family:var(--opui-ui,Roboto,Arial,sans-serif); text-align:left; line-height:1.5;
}
#optrpg-bosses *, #optrpg-bosses *::before, #optrpg-bosses *::after { box-sizing:border-box; }
#optrpg-bosses [hidden] { display:none !important; }
#optrpg-bosses button { font:inherit; cursor:pointer; text-transform:none; letter-spacing:normal; }
#optrpg-bosses button:disabled { cursor:wait; opacity:.6; }
#optrpg-bosses :is(button,a,textarea):focus-visible { outline:2px solid var(--ob-light); outline-offset:4px; }
#optrpg-bosses .ob-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px 0 21px; border-bottom:1px solid #d8b46c70; position:relative; }
#optrpg-bosses .ob-heading::after { content:""; width:7px; height:7px; background:var(--ob-gold); position:absolute; bottom:-4px; left:3px; transform:rotate(45deg); }
#optrpg-bosses .ob-eyebrow { font-size:11px; letter-spacing:.24em; color:var(--ob-muted); margin:0 0 6px; }
#optrpg-bosses h1 { font-family:var(--ob-title); font-weight:normal; font-size:clamp(27px,3.4vw,44px); line-height:1.15; color:var(--ob-gold); margin:0; text-shadow:0 2px 3px #0008; }
#optrpg-bosses .ob-count { color:var(--ob-gold); font:26px var(--ob-title); border:1px solid #d8b46c55; border-radius:50%; min-width:50px; height:50px; display:grid; place-items:center; background:#12334299; }
#optrpg-bosses .ob-hint { color:var(--ob-muted); margin:15px 0 24px; font-size:13px; }
#optrpg-bosses .ob-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:start; }
#optrpg-bosses .ob-card { min-width:0; position:relative; border:1px solid var(--ob-edge); border-radius:5px; overflow:hidden; background:var(--opui-panel,linear-gradient(145deg,#224653ed,#102532f5 65%)); box-shadow:0 10px 24px #0003; transition:border-color .18s,box-shadow .18s; }
#optrpg-bosses .ob-card:hover, #optrpg-bosses .ob-card.is-selected { border-color:#ddc184a6; box-shadow:0 0 0 1px #d9bf8017,0 12px 30px #0005,0 0 25px #6faeb51c; }
#optrpg-bosses .ob-open { display:block; width:100%; padding:0; margin:0; border:0; background:none; color:var(--ob-gold); text-align:left; border-radius:0; box-shadow:none; }
#optrpg-bosses .ob-open:hover {
  color: #f4d59a !important;
  background:
    linear-gradient(
      180deg,
      rgba(117, 197, 210, 0.07),
      rgba(226, 197, 133, 0.055)
    ) !important;
  box-shadow:
    inset 0 -2px 0 rgba(216, 180, 108, 0.32);
  text-shadow:
    0 0 10px rgba(226, 197, 133, 0.20);
}
#optrpg-bosses .ob-open:hover .ob-card-caption {
  background:
    linear-gradient(
      180deg,
      rgba(117, 197, 210, 0.08),
      rgba(226, 197, 133, 0.055)
    ),
    linear-gradient(
      110deg,
      #143444,
      #37637050
    );
  color: #f4d59a;
}
#optrpg-bosses .ob-open:focus-visible { outline-offset:-4px; }
#optrpg-bosses .ob-portrait { position:relative; display:flex; align-items:center; justify-content:center; aspect-ratio:4/5; overflow:hidden; background:radial-gradient(ellipse at 50% 30%,#4f737459,transparent 72%),linear-gradient(160deg,#153744,#0b1f2b); }
#optrpg-bosses .ob-portrait::after { content:""; position:absolute; inset:0; box-shadow:inset 0 0 30px 6px #03101944; pointer-events:none; border-bottom:1px solid #d8b46c55; }
#optrpg-bosses .ob-portrait img { display:block; width:100%; height:100%; position:absolute; inset:0; object-fit:contain; object-position:center; border:0; padding:0; margin:0; transition:filter .25s; }
#optrpg-bosses .ob-card.is-defeated .ob-portrait img { filter:grayscale(1) brightness(.62); }
#optrpg-bosses .ob-stamp { position:absolute; z-index:1; left:-15%; top:44%; width:130%; padding:9px 0; border-block:2px solid #d8c0a094; color:#ead3b7; background:#17252bd9; text-align:center; font:clamp(17px,2vw,23px) var(--ob-title); letter-spacing:.11em; transform:rotate(-18deg); box-shadow:0 0 0 4px #1026306b; text-shadow:0 2px 3px #000; }
#optrpg-bosses .ob-card-caption { min-height:102px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:17px; background:linear-gradient(110deg,#143444,#37637050); }
#optrpg-bosses .ob-name { font-family:var(--ob-title); font-size:19px; line-height:1.35; overflow-wrap:anywhere; text-shadow:0 2px 3px #0008; }
#optrpg-bosses .ob-bounty { text-align:right; flex-shrink:0; font-size:12px; white-space:nowrap; font-variant-numeric:tabular-nums; }
#optrpg-bosses .ob-bounty > span { display:block; font-size:10px; color:var(--ob-muted); margin-bottom:3px; }
#optrpg-bosses .ob-admin-toggle { display:block; padding:9px 16px; color:var(--ob-muted); background:#0d263288; border:0; border-top:1px solid var(--ob-edge); width:100%; border-radius:0; font-size:12px; box-shadow:none; }
#optrpg-bosses .ob-admin-toggle:hover { color:var(--ob-light); background:#32596677; }
#optrpg-bosses .ob-dossier { grid-column:1/-1; display:grid; grid-template-columns:minmax(260px,.85fr) minmax(0,1.4fr); gap:20px; scroll-margin-top:calc(var(--optrpg-frame-top,56px) + 20px); padding-block:4px 12px; }
#optrpg-bosses .ob-panel { display:flex; flex-direction:column; min-width:0; align-self:start; border:1px solid #a4b88c6b; border-radius:5px; background:linear-gradient(155deg,#345863f7,#142f3cfb 60%,#0d2432fb); box-shadow:0 12px 26px #0004; overflow:hidden; }
#optrpg-bosses .ob-panel-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:17px 20px; background:linear-gradient(110deg,#34616c70,#152f3e66); border-bottom:1px solid #d8b46c45; }
#optrpg-bosses h2 { font:normal 22px/1.3 var(--ob-title); color:var(--ob-gold); margin:0; text-shadow:0 2px 3px #0009; }
#optrpg-bosses .ob-close { padding:0; margin:0; width:30px; height:30px; flex-shrink:0; border:0; background:none; color:var(--ob-gold); font:28px/1 Arial,sans-serif; box-shadow:none; }
#optrpg-bosses .ob-close:hover { color:var(--ob-light); background:#82acb318; }
#optrpg-bosses .ob-panel-scroll { padding:22px; max-height: min(68vh,740px); overflow:auto; scrollbar-width:thin; scrollbar-color:#c6b17a #122e3b; }
#optrpg-bosses .ob-text { white-space:pre-wrap; overflow-wrap:anywhere; text-shadow:0 1px 2px #0008; font-size:15px; line-height:1.8; }
#optrpg-bosses .ob-description { font-family:var(--ob-title); font-size:17px; }
#optrpg-bosses .ob-reward { display:block; width:100%; margin:0 0 22px; text-align:center; background:#0b202866; border:1px solid #d8b46c33; padding:12px; border-radius:3px; }
#optrpg-bosses .ob-reward img { width:100%; height:240px; max-height:34vh; display:block; object-fit:contain; border:0; margin:0; }
#optrpg-bosses .ob-edit-controls { padding:12px 20px; border-top:1px solid var(--ob-edge); }
#optrpg-bosses .ob-button { padding:9px 15px; border:1px solid #d8b46c66; border-radius:3px; color:var(--ob-gold); background:linear-gradient(#407686,#244c5f); box-shadow:none; font-size:13px; }
#optrpg-bosses .ob-button:hover { color:var(--ob-light); border-color:var(--ob-gold); }
#optrpg-bosses .ob-editor { padding:20px; }
#optrpg-bosses .ob-editor label { display:block; color:var(--ob-gold); margin:0 0 10px; font-size:13px; }
#optrpg-bosses .ob-editor textarea { display:block; width:100%; min-height:280px; max-height:65vh; resize:vertical; padding:13px; border:1px solid #85b9c04f; border-radius:3px; color:var(--ob-ink); background:var(--opui-field,#0d2632); font:15px/1.65 var(--opui-ui,Roboto,Arial,sans-serif); box-shadow:none; }
#optrpg-bosses .ob-editor-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:12px; }
#optrpg-bosses .ob-editor-error { color:#f5c1b1; white-space:pre-wrap; margin-top:12px; font-size:13px; }
#optrpg-bosses .ob-warning, #optrpg-bosses .ob-status:not(:empty) { padding:12px 16px; border:1px solid #d8b46c55; background:#163643; color:var(--ob-gold); margin-bottom:20px; border-radius:3px; }
#optrpg-bosses .ob-status:empty { display:none; }
@media(max-width:1100px) {
  #optrpg-bosses .ob-grid { gap:18px; }
  #optrpg-bosses .ob-card-caption { flex-direction:column; align-items:flex-start; gap:7px; min-height:132px; }
  #optrpg-bosses .ob-bounty { text-align:left; }
  #optrpg-bosses .ob-bounty > span { display:inline; margin-right:7px; }
}
@media(max-width:900px) {
  #optrpg-bosses .ob-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #optrpg-bosses .ob-dossier { grid-template-columns:1fr; gap:16px; }
  #optrpg-bosses .ob-card-caption { min-height:115px; }
}
@media(max-width:540px) {
  #optrpg-bosses { margin-top:12px; }
  #optrpg-bosses .ob-grid { grid-template-columns:minmax(0,1fr); gap:20px; }
  #optrpg-bosses .ob-card-caption { min-height:90px; flex-direction:row; align-items:center; padding:15px; }
  #optrpg-bosses .ob-name { font-size:18px; }
  #optrpg-bosses .ob-bounty { text-align:right; font-size:11px; }
  #optrpg-bosses .ob-bounty > span { display:block; margin:0 0 4px; }
  #optrpg-bosses .ob-panel-heading { padding:14px 16px; }
  #optrpg-bosses .ob-panel-scroll, #optrpg-bosses .ob-editor { padding:16px; }
  #optrpg-bosses .ob-description { font-size:16px; }
  #optrpg-bosses .ob-count { font-size:21px; min-width:42px; height:42px; }
}
@media(prefers-reduced-motion:reduce) { #optrpg-bosses * { transition:none !important; scroll-behavior:auto !important; } }

@media (prefers-reduced-motion:no-preference) {
  #optrpg-bosses .ob-card.ob-mist-wait { opacity:0; }
  #optrpg-bosses .ob-card.ob-mist-enter {
    animation:ob-mist-reveal 820ms cubic-bezier(.22,.68,.25,1) var(--ob-mist-delay,0ms) both;
  }
  #optrpg-bosses .ob-card.ob-mist-enter .ob-portrait::before {
    content:""; position:absolute; inset:0; z-index:2; pointer-events:none;
    background:radial-gradient(ellipse at 25% 75%,#aacdd03d,transparent 62%),radial-gradient(ellipse at 80% 100%,#d1dedb33,transparent 58%);
    animation:ob-mist-drift 900ms ease-out var(--ob-mist-delay,0ms) both;
  }
}
@keyframes ob-mist-reveal {
  from { opacity:0; filter:blur(4px); transform:translateY(16px) scale(.992); }
  to { opacity:1; filter:blur(0); transform:translateY(0) scale(1); }
}
@keyframes ob-mist-drift {
  from { opacity:.8; transform:translateY(12%); }
  to { opacity:0; transform:translateY(-10%); }
}
@media (prefers-reduced-motion:reduce) {
  #optrpg-bosses .ob-card.ob-mist-wait, #optrpg-bosses .ob-card.ob-mist-enter {
    opacity:1; filter:none; transform:none; animation:none;
  }
  #optrpg-bosses .ob-card.ob-mist-enter .ob-portrait::before { content:none; animation:none; }
}

#optrpg-bosses{--catalog-nav:linear-gradient(115deg,rgba(6,29,59,.92),rgba(20,46,58,.80) 58%,rgba(11,32,45,.86));--catalog-card:linear-gradient(145deg,rgba(20,46,58,.80),rgba(11,32,45,.86) 38%,rgba(6,29,59,.92))}
#optrpg-bosses .ob-card{background:var(--catalog-card)}
#optrpg-bosses .ob-card-caption{background:transparent}
#optrpg-bosses .ob-portrait{background:radial-gradient(ellipse at 50% 30%,#4f737420,transparent 72%)}
#optrpg-bosses .ob-search{display:flex;align-items:center;gap:14px;padding:10px 16px;margin:0 0 24px;border:1px solid var(--ob-edge);border-radius:5px;background:var(--catalog-nav);color:var(--ob-gold)}
#optrpg-bosses .ob-search label{display:flex;align-items:center;gap:12px;flex:1;min-width:0}
#optrpg-bosses .ob-search input{box-sizing:border-box;width:100%;min-width:0;border:0!important;background:transparent!important;padding:8px!important;color:var(--ob-ink)!important;font:15px/1.6 var(--ob-title);box-shadow:none!important}
#optrpg-bosses .ob-search input::placeholder{color:var(--ob-muted);opacity:.85}
#optrpg-bosses .ob-search output{font-size:12px;white-space:nowrap}
@media(max-width:600px){#optrpg-bosses .ob-search{flex-wrap:wrap;gap:5px}#optrpg-bosses .ob-search label{flex-basis:100%}#optrpg-bosses .ob-search output{margin-left:25px}}
