/* Scoped to the public Spawn Finder and its native detail dialog. */
.spawn-finder{--spawn-line:var(--line);--spawn-muted:var(--muted);--spawn-green:#b8d9bb;color:var(--ink,#e2e8ef);font-size:14px;color-scheme:dark}
.spawn-finder *{box-sizing:border-box}
.spawn-finder [hidden]{display:none!important}
.spawn-finder a{color:var(--accent,#a4c3dd)}
.spawn-heading p{margin:7px 0 0;color:var(--spawn-muted);font-size:14px;line-height:1.5}
.spawn-back{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:14px 0 24px;font-size:12px;color:var(--spawn-muted)}
.spawn-back a{text-decoration:none}
.spawn-back a:hover{text-decoration:underline}
.spawn-layout{display:grid;grid-template-columns:244px minmax(0,1fr);align-items:start;gap:24px}
.spawn-filter-panel{min-width:0;position:sticky;top:20px;padding:16px;border:1px solid var(--spawn-line);border-radius:9px;background:var(--panel,#191f29)}
.spawn-filters,.spawn-filter-fields,.spawn-more-filters>div{display:grid;gap:16px}
.spawn-filters label,.spawn-sort{display:grid;gap:7px;font-size:12px;line-height:1.4;font-weight:500;color:#b8c4d2;min-width:0}
.spawn-finder input:not([type=checkbox]),.spawn-finder select{width:100%;font-size:13px}
.spawn-finder input::placeholder{color:#8e9cad;opacity:1}
.spawn-finder input:focus,.spawn-finder select:focus{border-color:var(--accent,#a4c3dd)}
.spawn-finder input[aria-invalid=true]{border-color:#e79e98}
.spawn-search-field{position:relative;display:block}
.spawn-search-field svg{position:absolute;width:18px;height:18px;left:10px;top:12px;fill:none;stroke:#9caec1;stroke-width:1.7;pointer-events:none}
.spawn-search-field input{padding-left:35px!important}
.spawn-filter-details>summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;font-size:13px;font-weight:600;color:#d6e0eb}
.spawn-filter-details>summary::-webkit-details-marker{display:none}
.spawn-filter-details>summary svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;transition:transform .15s}
.spawn-filter-details[open]>summary svg{transform:rotate(180deg)}
.spawn-filter-details[open]>.spawn-filter-fields{margin-top:16px}
.spawn-exp-filter{min-width:0;margin:0;padding:16px 0 0;border:0;border-top:1px solid var(--spawn-line)}
.spawn-exp-filter legend{float:left;padding:0;margin-bottom:10px;font-size:12px;font-weight:600;color:#d2dce7}
.spawn-exp-filter legend+.spawn-range{clear:both}
.spawn-range{display:grid;grid-template-columns:minmax(0,1fr) 10px minmax(0,1fr);align-items:end;gap:7px}
.spawn-range>span{display:grid;place-items:center;min-height:42px;color:var(--spawn-muted)}
.spawn-range label{font-size:11px}
.spawn-range input{padding:10px 8px!important;font-variant-numeric:tabular-nums}
.spawn-presets{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.spawn-presets a{border:1px solid #39495c;border-radius:4px;padding:5px 7px;text-decoration:none;font-size:11px;color:#bbc9d8}
.spawn-presets a:hover{background:#2a3c4d;border-color:#829bb1}
.spawn-filters .spawn-checkbox{display:flex;align-items:center;gap:8px;margin:13px 0 0;min-height:30px;font-size:12px}
.spawn-checkbox input{width:16px;height:16px;margin:0;accent-color:#a4c3dd}
.spawn-filter-note{margin:8px 0 0;color:var(--spawn-muted);font-size:11px;line-height:1.6}
.spawn-more-filters{padding-top:13px;border-top:1px solid var(--spawn-line)}
.spawn-more-filters>summary{cursor:pointer;font-size:12px;min-height:24px;line-height:24px;color:#bac9d9}
.spawn-more-filters[open]>div{padding-top:12px}
.spawn-filter-feedback:empty{display:none}
.spawn-filter-feedback p{margin:0;color:#f0b2a9;font-size:12px;line-height:1.5}
.spawn-filter-feedback:not(:has(p:not([hidden]))){display:none}
.spawn-filter-actions{display:flex;align-items:center;gap:14px}
.spawn-finder .spawn-primary{flex:1}
.spawn-filter-actions>a{font-size:12px;min-height:42px;display:flex;align-items:center;text-decoration:none}
.spawn-results-panel{min-width:0}
.spawn-status{margin:0 0 10px;font-size:12px;color:var(--spawn-muted)}
.spawn-status:empty{display:none}
.spawn-status[data-error]{color:#f0b2a9}
[data-spawn-results][aria-busy=true]{opacity:.65;pointer-events:none}
.spawn-results-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 17px;min-height:58px}
.spawn-results-heading h2{margin:0 0 6px;font-size:16px;line-height:1.4;font-weight:600}
.spawn-count{margin:0;font-size:12px;color:#c7d4df;font-variant-numeric:tabular-nums}
.spawn-count span{color:var(--spawn-muted)}
.spawn-sort{display:flex;align-items:center;gap:8px;flex:none;font-size:11px}
.spawn-sort select{width:160px;min-height:38px;padding:8px;font-size:12px}
.spawn-active-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.spawn-active-filters a{display:flex;align-items:center;gap:10px;max-width:100%;padding:6px 10px;border:1px solid #455c73;border-radius:5px;background:#1d2d3c;font-size:12px;text-decoration:none;overflow-wrap:anywhere}
.spawn-active-filters a>span{color:#c5d9e8;font-size:17px;line-height:1}
.spawn-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,255px),1fr));gap:12px}
.spawn-list>a{display:flex;flex-direction:column;min-width:0;padding:14px;border:1px solid var(--spawn-line);border-radius:8px;background:var(--panel,#191f29);color:inherit;text-decoration:none;transition:border-color .15s,background .15s}
.spawn-list>a:hover{border-color:#7895ae;background:#1e2a36}
.spawn-card-heading{display:flex;align-items:center;gap:12px;min-width:0}
.spawn-card-heading>div{flex:1;min-width:0}
.spawn-card-heading h3{margin:0;font-size:14px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.spawn-card-zone{display:block;margin-top:4px;color:var(--spawn-muted);font-size:11px;overflow-wrap:anywhere}
.spawn-card-arrow{align-self:flex-start;font-size:17px;color:#8194aa}
.spawn-sprite{display:flex;align-items:center;justify-content:center;width:68px;height:68px;flex:none;border-radius:6px;background:#121b24;overflow:hidden}
.spawn-sprite img{display:block;width:auto;height:auto;max-width:62px;max-height:62px;object-fit:contain;image-rendering:pixelated}
.spawn-sprite-missing{flex-direction:column;gap:2px;color:var(--spawn-muted)}
.spawn-sprite-missing>span{font-size:25px}
.spawn-sprite-missing small{font-size:9px}
.spawn-card-location{display:flex;align-items:flex-start;gap:6px;margin:13px 0;min-height:18px;font-size:12px;line-height:1.5;color:#b7c8da;overflow-wrap:anywhere}
.spawn-card-location svg{flex:none;width:14px;height:16px;fill:none;stroke:#8dabc0;stroke-width:1.5}
.spawn-card-stats{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:8px;margin:auto 0 0;padding:13px 0;border-top:1px solid var(--spawn-line)}
.spawn-card-stats>div{min-width:0}
.spawn-card-stats dt{font-size:10px;line-height:1.4;color:var(--spawn-muted)}
.spawn-card-stats dd{margin:5px 0 0;font-size:13px;font-weight:550;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.spawn-exp-value{color:var(--spawn-green)}
.spawn-card-stats .spawn-unknown{font-size:12px;font-weight:400;color:#98a6b6}
.spawn-card-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:7px;padding-top:10px;border-top:1px solid var(--spawn-line);font-size:10px;color:var(--spawn-muted)}
.spawn-element{white-space:nowrap}
.spawn-element[data-element=Fire]{color:#ecad8e}
.spawn-element[data-element=Water]{color:#97c0f2}
.spawn-element[data-element=Wind]{color:#a0d9c9}
.spawn-element[data-element=Earth]{color:#d4c49a}
.spawn-element[data-element=Light]{color:#e4dca9}
.spawn-element[data-element=Dark]{color:#c8b5e9}
.spawn-element-divider{color:#758498}
.spawn-pagination{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:22px 0 0}
.spawn-pagination a{display:grid;place-items:center;min-width:36px;min-height:36px;padding:7px;border:1px solid var(--spawn-line);border-radius:5px;font-size:12px;text-decoration:none}
.spawn-pagination a[aria-current=page]{background:#2d4156;border-color:#6b879f;color:#e0ecf5}
.spawn-pagination a:hover{border-color:#829bb1}
.spawn-page-gap{color:var(--spawn-muted);padding:0 3px}
.spawn-page-label{margin-left:auto;color:var(--spawn-muted);font-size:11px}
.spawn-empty{padding:50px 20px;text-align:center;border:1px dashed #3e4e60;border-radius:8px;background:#151d26}
.spawn-empty>svg{width:34px;height:34px;fill:none;stroke:#8197ac;stroke-width:1.3}
.spawn-empty h2,.spawn-empty h3{margin:15px 0 8px;font-size:17px}
.spawn-empty p{margin:0 0 18px;color:var(--spawn-muted);font-size:13px;line-height:1.6}
.spawn-return{margin:0 0 18px;font-size:13px}
.spawn-detail{padding:24px;border:1px solid var(--spawn-line);border-radius:9px;background:var(--panel,#191f29)}
.spawn-detail-heading{display:flex;align-items:center;gap:24px}
.spawn-detail-heading>.spawn-sprite{width:128px;height:128px}
.spawn-detail-heading>.spawn-sprite img{max-width:120px;max-height:120px}
.spawn-detail-heading>div{min-width:0}
.spawn-eyebrow{font-size:11px;color:var(--spawn-muted)}
.spawn-detail h2{margin:6px 0 9px;font-size:24px;line-height:1.3;overflow-wrap:anywhere}
.spawn-place{margin:0 0 12px;color:#b7c8da;line-height:1.5;font-size:13px}
.spawn-place a{text-decoration:none}
.spawn-location-link{font-size:12px}
.spawn-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 16px;margin:24px 0;padding:22px 0;border-top:1px solid var(--spawn-line);border-bottom:1px solid var(--spawn-line)}
.spawn-facts dt{font-size:12px;color:var(--spawn-muted)}
.spawn-facts dd{margin:7px 0 0;font-size:18px;line-height:1.4;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.spawn-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px}
.spawn-section-heading h3{margin:0;font-size:15px}
.spawn-section-heading>span{color:var(--spawn-muted);font-size:12px}
.spawn-muted{color:var(--spawn-muted);font-size:13px;line-height:1.5}
.spawn-loot-note{margin:0 0 14px;font-size:12px}
.spawn-table-wrap{overflow-x:auto}
.spawn-detail table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}
.spawn-detail th,.spawn-detail td{padding:12px 10px;border-bottom:1px solid var(--spawn-line)}
.spawn-detail th{color:var(--spawn-muted);font-weight:500;font-size:11px}
.spawn-detail th:first-child,.spawn-detail td:first-child{padding-left:0}
.spawn-detail td:not(:first-child){font-variant-numeric:tabular-nums}
.spawn-other-locations{margin-top:26px}
.spawn-other-locations ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;list-style:none;margin:0 0 12px;padding:0}
.spawn-other-locations li{min-width:0}
.spawn-other-locations li a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding:9px 0;border-bottom:1px solid var(--spawn-line);text-decoration:none;font-size:12px;overflow-wrap:anywhere}
.spawn-other-locations>a{font-size:12px}
.spawn-detail-source{margin:24px 0 0;font-size:11px}
.spawn-notice{padding:12px;border:1px solid #766449;border-radius:5px;color:#ddc69d;font-size:12px;line-height:1.6}
.spawn-dialog{width:min(780px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:1px solid #53677e;border-radius:10px;background:#191f29;color:var(--ink,#e2e8ef);overflow:auto;overscroll-behavior:contain}
.spawn-dialog::backdrop{background:#050b13c9}
.spawn-dialog-toolbar{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:14px;padding:10px 16px;border-bottom:1px solid var(--spawn-line);background:#1c2734}
.spawn-dialog-toolbar>span{margin-right:auto;color:#c2cfde;font-size:12px}
.spawn-dialog-toolbar>a{font-size:11px;text-decoration:none}
.spawn-dialog-toolbar button{min-width:38px;min-height:38px;padding:2px;font-size:23px;line-height:1;cursor:pointer}
.spawn-dialog .spawn-detail{border:0;border-radius:0}
.spawn-dialog [data-spawn-dialog-body]>p{margin:24px;font-size:14px}
.spawn-dialog:focus{outline:none}
html:has(.spawn-dialog[open]){overflow:hidden}
@media(min-width:1600px){.spawn-list{grid-template-columns:repeat(auto-fill,minmax(275px,1fr))}}
@media(max-width:1100px){.spawn-layout{grid-template-columns:220px minmax(0,1fr);gap:16px}.spawn-filter-panel{padding:13px}.spawn-results-heading{align-items:flex-start}.spawn-sort{flex-direction:column;align-items:flex-start;gap:4px}}
@media(max-width:760px){.spawn-heading p{font-size:13px}.spawn-back{margin-bottom:18px}
  .spawn-layout{grid-template-columns:minmax(0,1fr);gap:20px}.spawn-filter-panel{position:static;padding:14px}
  .spawn-filters{gap:12px}.spawn-filter-details>summary{min-height:34px}.spawn-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .spawn-exp-filter,.spawn-more-filters{grid-column:1/-1}.spawn-more-filters>div{grid-template-columns:repeat(2,minmax(0,1fr))}
  .spawn-more-filters>div>label:first-child{grid-column:1/-1}.spawn-filter-note{font-size:12px}.spawn-presets a{min-height:32px;display:flex;align-items:center;font-size:12px}
  .spawn-filter-actions .spawn-primary{flex:0 1 160px}.spawn-filter-actions{gap:18px}.spawn-results-heading{align-items:center}
  .spawn-sort{gap:4px}.spawn-sort select{width:145px;min-height:42px}.spawn-count{font-size:11px}.spawn-count span{display:block;margin-top:3px}
  .spawn-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,255px),1fr));gap:10px}.spawn-pagination a{min-width:38px;min-height:42px}.spawn-page-label{flex-basis:100%;margin:5px 0 0;text-align:center}
  .spawn-detail{padding:18px}.spawn-detail-heading{gap:15px}.spawn-detail-heading>.spawn-sprite{width:92px;height:100px}.spawn-detail-heading>.spawn-sprite img{max-width:86px;max-height:94px}.spawn-detail h2{font-size:21px}
  .spawn-facts{gap:20px 12px}.spawn-facts dd{font-size:16px}.spawn-facts dt{font-size:11px}.spawn-detail th,.spawn-detail td{padding:10px 8px}.spawn-detail table{font-size:12px}.spawn-detail table th:nth-child(3),.spawn-detail table td:nth-child(3){min-width:105px}
  .spawn-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 24px)}.spawn-dialog-toolbar{gap:10px;padding:8px 12px}
}
@media(max-width:380px){.spawn-filter-fields{grid-template-columns:minmax(0,1fr)}.spawn-exp-filter,.spawn-more-filters{grid-column:auto}.spawn-results-heading h2{font-size:15px}.spawn-sort select{width:130px}.spawn-detail-heading>.spawn-sprite{width:70px;height:86px}.spawn-detail-heading>.spawn-sprite img{max-width:66px;max-height:80px}.spawn-detail-heading{gap:12px}.spawn-detail h2{font-size:18px}.spawn-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.spawn-other-locations ul{grid-template-columns:1fr}.spawn-dialog-toolbar>span{font-size:11px}}
@media(prefers-reduced-motion:reduce){.spawn-finder *{transition:none!important;scroll-behavior:auto!important}}
@media(max-width:760px){
  .spawn-heading p{margin-top:3px}
  .spawn-back{margin:8px 0 12px}
  .spawn-back a{min-height:40px;display:inline-flex;align-items:center}
  .spawn-layout{gap:12px}
  .spawn-filter-panel{padding:10px}
  .spawn-filters{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}
  .spawn-search-label,.spawn-filter-feedback,.spawn-filter-details[open]{grid-column:1/-1}
  .spawn-filters:has(.spawn-filter-details[open]) .spawn-filter-actions{grid-column:1/-1}
  .spawn-filter-details>summary{min-height:44px}
  .spawn-filter-actions{gap:12px}
  .spawn-results-heading{margin-bottom:10px}
}
