body:has(.heroes-page){background:#151515;color:#e9e9e9;font-family:Lexend,Arial,sans-serif}.heroes-page{max-width:1180px;margin:auto;padding:1.5rem 1.5rem 3rem;line-height:1.65}.heroes-page *{box-sizing:border-box}.heroes-page [hidden]{display:none!important}.heroes-page a{color:#efd47a;text-underline-offset:.2em}.heroes-page a:hover{color:#fff0b5}.heroes-page :is(a,button,input,select,summary,[tabindex]):focus-visible{outline:3px solid #f2d47a;outline-offset:4px}.heroes-page h1{font-size:clamp(1.8rem,4vw,3rem);line-height:1.18;letter-spacing:-.035em;margin:.5rem 0 1.1rem;color:#f5f3ec}.heroes-page h2{font-size:1.65rem;line-height:1.3;margin:.4rem 0 1rem;color:#e5c66d}.heroes-page h3{font-size:1.15rem;margin:1.8rem 0 .8rem;color:#eee}.heroes-page h4{font-size:1rem;margin:.3rem 0 .7rem;color:#eee}.heroes-page p{margin:.6rem 0 1rem}.heroes-page small{font-weight:400;font-size:.75em;color:#c2c2bd}.heroes-page button,.heroes-page input,.heroes-page select{font:inherit}.heroes-page button,.heroes-page select{cursor:pointer}.heroes-page input:not([type=checkbox]):not([type=radio]):not([type=range]),.heroes-page select{color:#eee;background:#181818;border:1px solid #555;border-radius:7px;padding:.7rem;width:100%;min-height:44px}.heroes-page input[type=checkbox]{width:18px;height:18px;accent-color:#d4af37;flex-shrink:0}.hero-breadcrumbs{display:flex;gap:.6rem;flex-wrap:wrap;font-size:.8rem;color:#888;margin-bottom:2rem}.hero-breadcrumbs a{color:#bdbdb8}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:600;color:#c6ad68;margin-bottom:.4rem}.lede{font-size:1.07rem;max-width:850px;color:#ccc}.muted{color:#b1b1ac;font-size:.83rem}.directory-heading{margin-bottom:1.75rem;max-width:980px}.top-preview{display:flex;gap:1.2rem;align-items:center;border:1px solid #5a4b26;border-left:4px solid #d4af37;background:#25221a;padding:1rem 1.4rem;border-radius:10px;margin:1.6rem 0 2.4rem}.top-preview img{max-height:90px;object-fit:contain}.top-preview p{margin:.2rem 0}.top-preview-link{font-size:1.2rem;font-weight:600;text-decoration:none}.hero-section{margin-top:2.5rem;padding-top:1.75rem;border-top:1px solid #3b3b37}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.section-heading>a{font-size:.83rem}.section-heading h2{margin:.2rem 0 .6rem}.search-row{display:flex;gap:1rem;align-items:flex-end}.hero-search{flex:1;max-width:580px}.search-row label,.stat-controls label{display:grid;gap:.4rem;font-size:.85rem}.reset-button{border:1px solid #6c5a2e;background:#342e20;color:#f0d88a;border-radius:7px;padding:.7rem 1.1rem;min-height:44px}.filter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;margin-top:1rem;align-items:start}.filter-grid details{border:1px solid #484840;background:#20201e;border-radius:7px;overflow:hidden}.filter-grid summary{padding:.65rem .8rem;cursor:pointer;font-size:.85rem;min-height:44px}.filter-grid fieldset{border:0;border-top:1px solid #444;margin:0;padding:.4rem;max-height:260px;overflow:auto}.filter-grid label{display:flex;align-items:center;gap:.4rem;font-size:.76rem;min-height:38px;padding:.25rem;line-height:1.3}.filter-grid label:hover{background:#30302b}.filter-icon{width:28px;height:28px;object-fit:contain;flex-shrink:0}.filter-grid label span{min-width:0;overflow-wrap:anywhere}.table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:.7rem;flex-wrap:wrap;margin-top:1.2rem;font-size:.85rem}.table-toolbar p{margin:.3rem 0}.table-scroll{overflow:auto;border:1px solid #45453d;border-radius:10px;margin-top:.7rem}.heroes-page table{border-collapse:collapse;width:100%;font-size:.85rem;text-align:left}.heroes-page th,.heroes-page td{padding:.8rem 1rem;border-bottom:1px solid #363633}.heroes-page thead{background:#282820;color:#e2cc86}.heroes-page tbody tr:last-child>*{border-bottom:0}.heroes-page caption{text-align:left;padding:.6rem 1rem;color:#ccc}.hero-directory{min-width:560px}.hero-directory th:first-child{width:36%;min-width:190px}.hero-directory thead button{font-weight:600;border:0;background:transparent;color:inherit;padding:.3rem 0;white-space:nowrap;min-height:32px}.hero-directory thead button:disabled{cursor:default}.hero-directory tbody tr:hover{background:#25251f}.hero-directory tbody th{background:#1b1b19;position:sticky;left:0;z-index:1}.hero-table-name{display:flex;align-items:center;gap:.85rem;text-decoration:none}.hero-directory td{font-variant-numeric:tabular-nums}.hero-directory .score-cell{min-width:110px}.hero-directory .score-cell strong{color:#f1dc97}.hero-portrait{width:48px;height:auto;aspect-ratio:175/230;object-fit:contain;display:block;background:#242424;border:1px solid #504a38;border-radius:6px;flex-shrink:0}.hero-portrait.large{width:175px;max-width:100%;border-radius:12px}.portrait-fallback{display:grid;place-items:center;font-size:2rem;color:#888}.scroll-hint{display:none}.hero-jump-links{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.5rem 0}.hero-jump-links a{border:1px solid #4c4839;padding:.55rem .9rem;border-radius:6px;font-size:.85rem;text-decoration:none;background:#22221e}.hero-identity{display:grid;grid-template-columns:175px minmax(0,1fr);gap:2rem;align-items:start;margin:1.8rem 0}.hero-title{font-size:1.15rem;color:#d6bb73}.hero-identity p{max-width:780px}.identity-rating{display:inline-flex;align-items:center;gap:1rem;border:1px solid #61512b;border-radius:8px;padding:.65rem 1rem;text-decoration:none;font-size:.85rem}.identity-rating strong{font-size:1.2rem;color:#f2daa1}.rating-summary{display:grid;grid-template-columns:230px minmax(0,1fr);gap:1.5rem;padding:1.5rem;border:1px solid #61512b;background:#25231c;border-radius:12px;margin:1rem 0 1.75rem}.overall-number{font-size:2.4rem;line-height:1.4;color:#f2d780;display:block;font-variant-numeric:tabular-nums}.overall-number small{font-size:1rem}.rating-summary p:last-child{margin-bottom:0}.rating-summary>div>span:last-child{font-size:.85rem;color:#d5c99f}.mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.mode-panel{background:#20201e;border:1px solid #45453e;border-radius:10px;padding:1.1rem;min-width:0}.mode-panel .mode-title strong{display:block;font-size:1.65rem;color:#f0d485;font-variant-numeric:tabular-nums;margin-top:.2rem}.mode-panel p{font-size:.85rem}.tag{display:inline-block;font-size:.68rem;line-height:1.5;border:1px solid #5a5542;padding:.18rem .45rem;border-radius:5px;color:#d3c89f;background:#2d2b23}.rating-labels{display:flex;gap:.4rem;flex-wrap:wrap}.evidence-dates{font-size:.73rem;color:#aaa}.evidence-dates div{margin:.4rem 0}.evidence-dates dd{margin:0;color:#ddd}.mode-panel details{border-top:1px solid #41413a;padding-top:.65rem;margin-top:.75rem;font-size:.8rem}.mode-panel summary{cursor:pointer;color:#dec780;min-height:28px}.hero-prose{overflow-wrap:anywhere}.hero-prose p{font-size:.8rem}.stat-controls{display:flex;flex-wrap:wrap;gap:1rem;margin:1.3rem 0}.stat-controls label{flex:1;min-width:160px}.reference-values{display:flex;gap:1.3rem;flex-wrap:wrap;margin:1rem 0}.reference-values>div{min-width:135px;padding:.9rem 1.2rem;background:#22282b;border:1px solid #425056;border-radius:8px}.reference-values dt{font-size:.78rem;color:#becbd0}.reference-values dd{margin:.15rem 0 0;font-size:1.8rem;color:#f2f2f0;font-variant-numeric:tabular-nums}.trait-grid,.ability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.trait-grid>div{padding:1rem;background:#1e2325;border-radius:8px}.trait-grid p{font-size:.85rem}.reference-section{border-top-color:#526168}.reference-section h2{color:#c8dbe1}.guide-links{padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.guide-links>li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem 1rem;border:1px solid #45453e;border-radius:7px;font-size:.85rem}.publication-note{padding:1rem 1.2rem;border:1px solid #5c512f;border-radius:8px;background:#26231a;font-size:.9rem}.mode-panel .mode-title{font-size:1rem;margin:.3rem 0 .7rem;color:#eee;line-height:1.65}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:900px){.mode-grid{grid-template-columns:1fr}.filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.scroll-hint{display:block}.hero-directory tbody th{max-width:210px;min-width:180px}.rating-summary{grid-template-columns:190px minmax(0,1fr)}}@media(max-width:600px){.heroes-page{padding:1rem 1rem 3rem}.hero-breadcrumbs{margin-bottom:1.4rem}.hero-identity{grid-template-columns:95px minmax(0,1fr);gap:1rem}.hero-identity .hero-portrait.large{width:95px}.hero-identity h1{font-size:1.65rem}.hero-identity p{font-size:.8rem}.hero-identity .eyebrow{font-size:.6rem}.identity-rating{display:flex;flex-wrap:wrap;gap:.2rem;padding:.5rem}.identity-rating strong{font-size:1rem}.rating-summary{grid-template-columns:1fr;gap:.6rem;padding:1rem}.rating-summary p{font-size:.85rem}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trait-grid,.ability-grid,.guide-links{grid-template-columns:1fr}.search-row{gap:.6rem}.reset-button{font-size:.8rem;padding:.7rem}.hero-directory th,.hero-directory td{padding:.6rem .7rem}.hero-directory tbody th{min-width:164px;max-width:164px}.hero-table-name{gap:.55rem;font-size:.8rem}.hero-portrait{width:38px}.hero-directory{min-width:540px}.reference-values{gap:.5rem}.reference-values>div{min-width:0;flex:1;padding:.65rem}.reference-values dd{font-size:1.45rem}.top-preview{padding:1rem}.top-preview-link{font-size:1.05rem}.stat-controls{gap:.65rem}}.compact-rating.rating-summary{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 1.5rem;padding:.8rem 1.4rem;margin:1rem 0 1.5rem}.compact-rating>span{font-size:.9rem;color:#d5c99f}.hero-rating-grid.has-bonus{grid-template-columns:repeat(4,minmax(0,1fr))}.hero-rating-grid .mode-panel p{margin-bottom:0}.bonus-panel ul{padding-left:1.1rem;font-size:.8rem;margin:.5rem 0 0}.bonus-panel li+li{margin-top:.5rem}.game-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;vertical-align:middle}.game-icon img{display:block;object-fit:contain;width:32px;height:32px}.game-icon.stat-icon img{width:45px;height:45px}.stat-controls{position:relative;gap:1rem;margin:1.2rem 0}.stat-picker-control{flex:1;min-width:190px}.picker-label{display:block;font-size:.8rem;color:#bfc9cd;margin-bottom:.45rem}.stat-picker{position:relative;background:linear-gradient(#2d3439,#22282c);border:1px solid #59636a;border-radius:8px}.stat-picker[open]{z-index:5;border-color:#e2c56d}.stat-picker summary{min-height:68px;display:flex;align-items:center;gap:.7rem;padding:.7rem .85rem;cursor:pointer;list-style:none;font-size:.85rem}.stat-picker summary::-webkit-details-marker{display:none}.picker-chevron{margin-left:auto;color:#e2c56d}.picker-icon{min-width:38px}.picker-icon img{width:38px;height:38px}.stars-icon{min-width:62px;max-width:96px}.stars-icon img{width:20px;height:26px;min-width:0;flex-shrink:1}.stars-icon img:only-child{width:auto;max-width:88px;height:34px}.rarity-icon img{width:32px;height:38px}.stat-picker fieldset{position:absolute;top:100%;left:-1px;right:-1px;background:#242b30;border:1px solid #697177;border-radius:0 0 8px 8px;margin:0;padding:.4rem;max-height:310px;overflow-y:auto;box-shadow:0 12px 25px #0009}.stat-picker fieldset label{display:flex;align-items:center;gap:.55rem;padding:.55rem .4rem;min-height:49px;font-size:.78rem;cursor:pointer;border-radius:4px}.stat-picker fieldset label:has(input:checked){background:#454332}.stat-picker fieldset label:hover{background:#394147}.stat-picker input[type=radio]{width:16px;height:16px;flex-shrink:0;accent-color:#dbc275;margin:0}.stat-picker fieldset label>span:last-child{min-width:0}.reference-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.2rem 0}.reference-values>div{display:flex;align-items:center;gap:1rem;min-width:0;padding:1.2rem;background:linear-gradient(135deg,#2b343b,#20272c);box-shadow:inset 0 1px #ffffff0c}.reference-values dd{font-size:clamp(1.5rem,3vw,2rem);font-variant-numeric:tabular-nums}.combat-grid{display:grid;grid-template-columns:minmax(145px,.65fr) repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0 2rem}.combat-card{border:1px solid #515b60;border-radius:8px;padding:1.1rem;background:linear-gradient(145deg,#2b3033,#1e2225);box-shadow:inset 0 1px #ffffff0b}.combat-card h3{display:flex;align-items:center;gap:.65rem;margin:0 0 1rem;font-size:1rem;color:#d4dfe5}.movement-card{display:flex;flex-direction:column;align-items:center;justify-content:center}.movement-value{font-size:2rem;font-variant-numeric:tabular-nums}.movement-card h3{font-size:.95rem}.weapon-damage{display:flex;align-items:center;gap:.7rem}.weapon-damage .game-icon img{width:42px;height:42px}.attack-facts{display:flex;justify-content:space-between;gap:.7rem;border-top:1px solid #4a5154;padding-top:.8rem;margin:1rem 0 0}.attack-facts dt{display:flex;gap:.3rem;align-items:center;font-size:.72rem;color:#b8c2c7;min-height:24px}.attack-facts dd{font-size:1.1rem;margin:.2rem 0 0;text-align:center;font-variant-numeric:tabular-nums}.attack-facts .game-icon img{width:22px;height:22px}.trait-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:.8rem 0 1.8rem}.trait-card .trait-card-icon img{width:48px;height:48px}.trait-card .ability-heading{margin-bottom:.65rem}.ability-grid{align-items:start}.ability-card{padding:1.2rem;border:1px solid #555c62;background:linear-gradient(145deg,#282e34,#1e2227);border-radius:10px;min-width:0}.ability-heading{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.ability-icon img{width:72px;height:72px;border:1px solid #77715d;border-radius:9px;background:#15191c}.ability-heading h4{font-size:1.1rem;margin:0}.ability-heading .eyebrow{margin:0 0 .3rem}.ability-card>p{font-size:.85rem;white-space:pre-line;line-height:1.75}.ability-card>p:last-child{margin-bottom:0}.ability-level-control{padding:.7rem .9rem;margin:.7rem 0 1rem;background:#14191dbb;border-radius:7px}.ability-level-control label{display:flex;justify-content:space-between;font-size:.8rem}.ability-level-control output{color:#efda8d;font-size:.95rem;font-weight:600}.ability-range{display:flex;align-items:center;gap:.7rem;font-size:.7rem;color:#b6bfc4}.ability-range input[type=range]{flex:1;min-width:0;width:100%;height:32px;accent-color:#d6b45f;cursor:pointer;margin:0}.guide-thumbnail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.guide-thumbnail-grid>li{display:flex;align-items:flex-start;flex-direction:column;justify-content:flex-start;gap:.7rem;padding:.75rem;background:#212323}.guide-thumbnail-grid .guide-cover{display:flex;flex-direction:column;gap:.8rem;width:100%;text-decoration:none;font-weight:500}.guide-thumbnail-grid img{display:block;width:100%;height:155px;object-fit:cover;object-position:top;border-radius:4px;background:#15191c}.guide-thumbnail-grid .guide-cover:hover img{filter:brightness(1.12)}@media(max-width:1000px){.hero-rating-grid.has-bonus,.guide-thumbnail-grid,.combat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.movement-card{grid-column:1/-1;flex-direction:row;justify-content:flex-start;gap:1rem;padding:.8rem 1.1rem}.movement-card h3{margin:0}.movement-value{font-size:1.5rem}}@media(max-width:600px){.hero-rating-grid,.hero-rating-grid.has-bonus{grid-template-columns:1fr}.stat-controls{display:grid;grid-template-columns:1fr}.stat-picker-control{min-width:0}.stat-picker summary{min-height:60px}.reference-values{gap:.5rem}.reference-values>div{flex-direction:column;align-items:center;text-align:center;gap:.5rem;padding:.8rem .4rem}.reference-values dd{font-size:1.3rem}.game-icon.stat-icon img{width:34px;height:34px}.combat-grid{gap:.6rem}.combat-card{padding:.85rem .7rem}.combat-card h3{font-size:.9rem}.weapon-damage{gap:.4rem;font-size:.85rem}.attack-facts{gap:.3rem}.attack-facts dt{font-size:.67rem}.attack-facts .game-icon img{width:16px;height:16px}.attack-facts dd{font-size:.95rem}.movement-card{padding:.7rem 1rem}.ability-heading{gap:.7rem}.ability-icon img{width:60px;height:60px}.ability-card{padding:1rem}.guide-thumbnail-grid{grid-template-columns:1fr}.guide-thumbnail-grid img{height:180px}}.rating-gauge{min-width:0;margin:.9rem 2px 1rem}.rating-gauge-track{height:6px;border-radius:10px;background:linear-gradient(90deg,#666a6c,#a69a70 55%,#dcb855);position:relative}.rating-gauge-track:before,.rating-gauge-track:after{content:"";position:absolute;top:-3px;width:1px;height:12px;background:#b9b6aa}.rating-gauge-track:before{left:0}.rating-gauge-track:after{right:0}.rating-gauge-marker{position:absolute;top:50%;transform:translate(-50%,-50%);height:20px;width:5px;background:#f4cb57;border:1px solid #ffdf82;box-shadow:0 0 0 1px #151515;border-radius:1px;z-index:1}.rating-gauge-scale{display:flex;justify-content:space-between;font-size:.65rem;line-height:1;margin-top:.65rem;color:#b9b9b2}.compact-rating .rating-gauge{flex:1;max-width:600px;margin:.4rem 2px .1rem auto}.guide-role{display:flex;align-items:center;gap:.6rem;font-size:.75rem;color:#e1dfd7}.guide-thumbnail-grid .guide-role img{width:36px;height:36px;object-fit:contain;object-position:center;border-radius:50%;background:transparent;flex-shrink:0}@media(max-width:600px){.trait-card-grid{grid-template-columns:1fr}.compact-rating{flex-wrap:wrap}.compact-rating .rating-gauge{flex-basis:100%;max-width:none;margin:.7rem 2px .2rem}.trait-card .trait-card-icon img{width:42px;height:42px}}.guide-appearances{list-style:none;margin:0;padding:0;width:100%;display:grid;gap:.35rem}.guide-appearances li{margin:0;padding:0}.guide-appearances .guide-role{min-height:44px;padding:.2rem 0;text-decoration:none;line-height:1.45}.guide-appearances .guide-role:hover,.guide-appearances .guide-role:focus-visible{color:#f4cb57}.guide-appearances .guide-role:hover span{text-decoration:underline}.mode-title .hero-mode-label{--mode-token-size:32px}.hero-directory .hero-mode-label{--mode-token-size:24px}.hero-jump-links a{display:inline-flex;align-items:center}.mode-panel p .hero-mode-label{--mode-token-size:1.4em}.hero-rating-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hero-rating-grid.has-bonus{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:1100px){.hero-rating-grid,.hero-rating-grid.has-bonus{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.hero-rating-grid,.hero-rating-grid.has-bonus{grid-template-columns:1fr}}.rating-summary .overall-summary-copy{flex-basis:100%;margin:0;font-size:.95rem;line-height:1.6;color:#f1e8cf}.mode-heading-label{--mode-token-size:32px;display:flex;align-items:center;gap:.4em}.mode-heading-label .mode-hero-portrait{display:block;width:var(--mode-token-size);height:var(--mode-token-size);object-fit:contain;border-radius:50%;flex-shrink:0}.trait-card-grid{align-items:start}.reference-disclosure{padding:0}.reference-disclosure .ability-heading{margin:0;padding:1.2rem;min-height:44px;cursor:pointer;list-style:none;border-radius:9px}.reference-disclosure .ability-heading::-webkit-details-marker{display:none}.reference-disclosure .ability-heading::marker{content:""}.reference-disclosure .ability-heading:hover{background:#ffffff08}.reference-disclosure .ability-heading:focus-visible{outline:2px solid #efce72;outline-offset:3px}.reference-disclosure .ability-heading>div,.reference-disclosure .ability-heading>h4{min-width:0;overflow-wrap:anywhere}.disclosure-chevron{display:block;width:24px;height:24px;flex-shrink:0;margin-left:auto;position:relative}.disclosure-chevron:after{content:"";position:absolute;top:5px;left:7px;width:9px;height:9px;border-right:2px solid #efce72;border-bottom:2px solid #efce72;transform:rotate(45deg)}.reference-disclosure[open]>.ability-heading{border-bottom:1px solid #555c62;border-radius:9px 9px 0 0}.reference-disclosure[open]>.ability-heading .disclosure-chevron:after{top:9px;transform:rotate(225deg)}.reference-disclosure>p,.reference-disclosure>.ability-level-control{margin:1rem 1.2rem}.reference-disclosure>p:last-child{margin-bottom:1.2rem}@media(max-width:600px){.reference-disclosure .ability-heading{padding:1rem}.reference-disclosure>p,.reference-disclosure>.ability-level-control{margin:1rem}}.hero-mode-label[data-astro-cid-pcgfikut]{display:inline-flex;align-items:center;gap:.4em;vertical-align:middle}.hero-mode-label[data-astro-cid-pcgfikut] img[data-astro-cid-pcgfikut].mode-token{display:block;width:var(--mode-token-size,1.6em);height:var(--mode-token-size,1.6em);max-width:none;flex-shrink:0;object-fit:contain;object-position:center;border-radius:0;background:transparent}
