body.ep-module-wiki .ep-inner-layout {
    grid-template-columns: minmax(0, 1fr);
    max-width: 1480px;
}

body.ep-module-wiki .ep-inner-sidebar {
    display: none;
}

body.ep-module-wiki .ep-content-card {
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
}

.acw,
.acw *,
.acw *::before,
.acw *::after {
    box-sizing: border-box;
}

.acw {
    --acw-bg: #08050e;
    --acw-panel: rgba(19, 12, 32, .9);
    --acw-panel2: #191028;
    --acw-line: rgba(220, 192, 255, .12);
    --acw-line2: rgba(219, 178, 255, .26);
    --acw-text: #f8f5fc;
    --acw-soft: #c7bdd4;
    --acw-muted: #8e829d;
    --acw-purple: #a761ff;
    --acw-purple2: #ca91ff;
    --acw-gold: #f2c770;
    --acw-green: #65ddb2;
    color: var(--acw-text);
    display: grid;
    font-family: 'Inter', Arial, sans-serif;
    gap: 0;
    margin: 0 auto;
    max-width: 1440px;
    min-height: 500px;
    position: relative;
}

.acw a {
    color: inherit;
    text-decoration: none;
}

.acw button,
.acw input {
    font: inherit;
}

.acw-hero {
    border: 1px solid var(--acw-line);
    height: 366px;
    overflow: hidden;
    position: relative;
}

.acw-hero::after {
    background: linear-gradient(90deg, transparent, rgba(194, 124, 255, .65), rgba(242, 199, 112, .55), transparent);
    bottom: 0;
    content: '';
    height: 1px;
    left: 0;
    position: absolute;
    right: 0;
}

.acw-hero__art {
    background: url('../img/ep-hero-v8.jpg') 62% 43% / cover no-repeat;
    inset: 0;
    opacity: .9;
    position: absolute;
}

.acw-hero__shade {
    background:
        linear-gradient(90deg, #08050e 2%, rgba(8, 5, 14, .98) 26%, rgba(8, 5, 14, .7) 52%, rgba(8, 5, 14, .1) 80%),
        linear-gradient(0deg, #08050e 0%, transparent 50%);
    inset: 0;
    position: absolute;
}

.acw-hero__content {
    max-width: 760px;
    padding: 50px 42px 36px;
    position: relative;
    z-index: 2;
}

.acw-eyebrow {
    color: var(--acw-gold);
    display: block;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .2em;
    text-transform: uppercase;
}

.acw-hero h1 {
    color: #fff;
    font: 700 clamp(31px, 4vw, 49px)/1.08 'Cinzel', serif;
    letter-spacing: -.035em;
    margin: 13px 0 11px;
}

.acw-hero h1 em {
    background: linear-gradient(110deg, var(--acw-purple2), #f0c9ff 48%, var(--acw-gold));
    -webkit-background-clip: text;
    background-clip: text;
    font-style: normal;
    -webkit-text-fill-color: transparent;
}

.acw-hero p {
    color: var(--acw-soft);
    font-size: 13px;
    line-height: 1.65;
    margin: 0 0 19px;
    max-width: 650px;
}

.acw-search {
    align-items: center;
    background: rgba(14, 8, 24, .9);
    border: 1px solid rgba(210, 169, 255, .32);
    box-shadow: 0 18px 50px rgba(0, 0, 0, .35), inset 0 1px rgba(255, 255, 255, .05);
    display: flex;
    height: 52px;
    max-width: 670px;
    padding: 0 15px;
}

.acw-search:focus-within {
    border-color: rgba(242, 199, 112, .62);
    box-shadow: 0 18px 50px rgba(0, 0, 0, .4), 0 0 0 3px rgba(167, 97, 255, .1);
}

.acw-search > i {
    color: var(--acw-purple2);
    font-size: 15px;
}

.acw-search input {
    background: transparent;
    border: 0;
    color: #fff;
    flex: 1;
    font-size: 12px;
    height: 100%;
    min-width: 0;
    outline: 0;
    padding: 0 13px;
}

.acw-search input::placeholder {
    color: #81758f;
}

.acw-search kbd {
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .08);
    color: var(--acw-muted);
    font: 700 9px/1 'Inter', sans-serif;
    padding: 7px;
}

.acw-snapshot {
    color: var(--acw-muted);
    display: flex;
    flex-wrap: wrap;
    font-size: 9px;
    gap: 17px;
    margin-top: 13px;
}

.acw-snapshot span {
    align-items: center;
    display: inline-flex;
    gap: 5px;
}

.acw-snapshot span::before {
    background: var(--acw-purple);
    content: '';
    height: 3px;
    width: 3px;
}

.acw-snapshot strong {
    color: var(--acw-gold);
}

.acw-layout {
    background:
        radial-gradient(circle at 40% 0, rgba(135, 67, 205, .08), transparent 30rem),
        #08050e;
    border: 1px solid var(--acw-line);
    border-top: 0;
    display: grid;
    gap: 30px;
    grid-template-columns: 250px minmax(0, 1fr);
    padding: 34px 28px 65px;
}

.acw-sidebar {
    align-self: start;
    position: sticky;
    top: 20px;
}

.acw-sidebar__title {
    align-items: center;
    border-bottom: 1px solid var(--acw-line);
    display: flex;
    justify-content: space-between;
    margin-bottom: 9px;
    padding: 0 5px 11px;
}

.acw-sidebar__title span {
    color: var(--acw-gold);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .17em;
    text-transform: uppercase;
}

.acw-sidebar__title small {
    color: var(--acw-muted);
    font-size: 9px;
}

.acw-sidebar nav {
    display: grid;
    gap: 3px;
}

.acw-sidebar nav > a {
    align-items: center;
    border: 1px solid transparent;
    color: var(--acw-soft);
    display: grid;
    gap: 9px;
    grid-template-columns: 52px minmax(0, 1fr) auto;
    min-height: 51px;
    padding: 7px;
    position: relative;
    transition: background .18s ease, border-color .18s ease;
}

.acw-sidebar nav > a::before {
    background: var(--acw-purple2);
    content: '';
    height: 0;
    left: -1px;
    position: absolute;
    transition: height .18s ease;
    width: 2px;
}

.acw-sidebar nav > a:hover,
.acw-sidebar nav > a.is-active {
    background: linear-gradient(90deg, rgba(158, 83, 235, .12), rgba(255, 255, 255, .018));
    border-color: rgba(206, 162, 255, .12);
    color: #fff;
}

.acw-sidebar nav > a.is-active::before {
    height: 100%;
}

.acw-sidebar nav > a > span:nth-child(2) {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.acw-sidebar nav strong {
    color: inherit;
    font-size: 11px;
}

.acw-sidebar nav small {
    color: var(--acw-muted);
    font-size: 8px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.acw-sidebar nav em {
    color: #746882;
    font-size: 9px;
    font-style: normal;
    font-weight: 700;
}

.acw-nav-icon {
    align-items: center;
    background: rgba(167, 97, 255, .09);
    border: 1px solid rgba(167, 97, 255, .18);
    color: var(--acw-purple2);
    display: inline-flex;
    height: 33px;
    justify-content: center;
    width: 33px;
}

.acw-nav-icon--instance { background: rgba(177,87,255,.1); border-color: rgba(177,87,255,.24); color:#c281ff; }
.acw-nav-icon--npc { background: rgba(72,170,255,.09); border-color: rgba(72,170,255,.22); color:#7bc4ff; }
.acw-nav-icon--enchant { background: rgba(226,123,255,.09); border-color: rgba(226,123,255,.22); color:#e9a0ff; }
.acw-nav-icon--build { background: rgba(242,199,112,.08); border-color: rgba(242,199,112,.22); color:var(--acw-gold); }
.acw-nav-icon--guide { background: rgba(96,221,176,.08); border-color: rgba(96,221,176,.2); color:#72e6bb; }
.acw-nav-icon--system { background: rgba(102,122,255,.09); border-color: rgba(102,122,255,.22); color:#9aa9ff; }
.acw-nav-icon--episode { background: rgba(255,130,97,.08); border-color: rgba(255,130,97,.2); color:#ff9c81; }
.acw-nav-icon--equipment { background: rgba(255,189,84,.08); border-color: rgba(255,189,84,.22); color:#ffcc79; }

.acw-baseline {
    align-items: flex-start;
    background: linear-gradient(145deg, rgba(137, 65, 210, .1), rgba(255, 255, 255, .018));
    border: 1px solid var(--acw-line);
    color: var(--acw-gold);
    display: flex;
    gap: 10px;
    margin-top: 18px;
    padding: 13px;
}

.acw-baseline > i {
    font-size: 17px;
    margin-top: 2px;
}

.acw-baseline div {
    display: grid;
    gap: 3px;
}

.acw-baseline small {
    color: var(--acw-muted);
    font-size: 8px;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.acw-baseline strong {
    color: var(--acw-gold);
    font: 700 12px/1.3 'Cinzel', serif;
}

.acw-baseline p {
    color: var(--acw-muted);
    font-size: 8px;
    line-height: 1.45;
    margin: 2px 0 0;
}

.acw-content {
    min-width: 0;
}

.acw-section {
    margin-bottom: 40px;
}

.acw-heading {
    align-items: flex-end;
    border-bottom: 1px solid var(--acw-line);
    display: flex;
    gap: 22px;
    justify-content: space-between;
    margin-bottom: 17px;
    padding-bottom: 14px;
    position: relative;
}

.acw-heading::after {
    background: linear-gradient(90deg, var(--acw-purple), var(--acw-gold));
    bottom: -1px;
    content: '';
    height: 1px;
    left: 0;
    position: absolute;
    width: 105px;
}

.acw-heading h2 {
    color: #fff;
    font: 700 clamp(20px, 2.6vw, 28px)/1.15 'Cinzel', serif;
    letter-spacing: -.02em;
    margin: 7px 0 4px;
}

.acw-heading p {
    color: var(--acw-muted);
    font-size: 10px;
    line-height: 1.55;
    margin: 0;
}

.acw-curated,
.acw-result-count {
    align-items: center;
    border: 1px solid var(--acw-line);
    color: var(--acw-muted);
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 9px;
    font-weight: 700;
    gap: 6px;
    padding: 8px 9px;
}

.acw-curated {
    color: var(--acw-gold);
}

.acw-featured-grid {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.acw-featured-grid > a {
    align-items: center;
    background: linear-gradient(145deg, rgba(30, 18, 48, .92), rgba(16, 10, 27, .94));
    border: 1px solid var(--acw-line);
    display: grid;
    gap: 11px;
    grid-template-columns: 33px minmax(0, 1fr) 16px;
    min-height: 150px;
    overflow: hidden;
    padding: 18px 15px;
    position: relative;
    transition: border-color .2s ease, transform .2s ease;
}

.acw-featured-grid > a:hover {
    border-color: var(--acw-line2);
    color: #fff;
    transform: translateY(-2px);
}

.acw-featured-grid > a::before {
    background: linear-gradient(90deg, transparent, rgba(187, 113, 255, .5), transparent);
    content: '';
    height: 1px;
    left: -15%;
    position: absolute;
    top: 0;
    width: 70%;
}

.acw-featured__number {
    color: rgba(242, 199, 112, .22);
    font: 700 28px/1 'Cinzel', serif;
    position: absolute;
    right: 10px;
    top: 8px;
}

.acw-featured-grid > a > span:nth-child(3) {
    display: grid;
    gap: 5px;
    min-width: 0;
}

.acw-featured-grid small,
.acw-directory-grid small {
    color: var(--acw-gold);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.acw-featured-grid strong,
.acw-directory-grid strong {
    color: #fff;
    font: 700 13px/1.3 'Cinzel', serif;
}

.acw-featured-grid em,
.acw-directory-grid em {
    color: var(--acw-muted);
    display: -webkit-box;
    font-size: 9px;
    font-style: normal;
    line-height: 1.45;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.acw-featured-grid > a > i:last-child {
    align-self: end;
    color: var(--acw-purple2);
    font-size: 12px;
    justify-self: end;
}

.acw-directory-grid {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.acw-directory-grid > a {
    align-items: center;
    background: rgba(18, 11, 30, .72);
    border: 1px solid var(--acw-line);
    display: grid;
    gap: 12px;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    min-height: 108px;
    padding: 15px;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.acw-directory-grid > a:hover {
    background: rgba(26, 15, 43, .88);
    border-color: var(--acw-line2);
    color: #fff;
    transform: translateY(-2px);
}

.acw-directory-grid .acw-nav-icon {
    height: 42px;
    width: 42px;
}

.acw-directory-grid > a > span:nth-child(2) {
    display: grid;
    gap: 5px;
    min-width: 0;
}

.acw-directory-grid b {
    align-items: center;
    border: 1px solid var(--acw-line);
    color: var(--acw-muted);
    display: flex;
    font-size: 9px;
    height: 26px;
    justify-content: center;
    width: 26px;
}

.acw-guide-grid {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.acw-guide-card {
    background: rgba(18, 11, 30, .74);
    border: 1px solid var(--acw-line);
    color: var(--acw-text);
    min-height: 236px;
    overflow: hidden;
    position: relative;
    scroll-margin-top: 20px;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.acw-guide-card[hidden] {
    display: none;
}

.acw-guide-card:not([open]):hover {
    background: rgba(25, 15, 41, .9);
    border-color: var(--acw-line2);
    transform: translateY(-2px);
}

.acw-guide-card::after {
    background: linear-gradient(90deg, var(--acw-purple), var(--acw-gold));
    bottom: 0;
    content: '';
    height: 2px;
    left: 0;
    position: absolute;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .24s ease;
    width: 100%;
}

.acw-guide-card:not([open]):hover::after {
    transform: scaleX(1);
}

.acw-guide-card[open] {
    background: linear-gradient(145deg, rgba(27, 16, 44, .96), rgba(12, 7, 21, .98));
    border-color: var(--acw-line2);
    grid-column: 1 / -1;
    min-height: 0;
}

.acw-guide-card > summary {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    min-height: 234px;
    padding: 15px;
}

.acw-guide-card > summary::-webkit-details-marker {
    display: none;
}

.acw-guide-card[open] > summary {
    background:
        linear-gradient(105deg, rgba(34, 19, 55, .96), rgba(14, 8, 24, .9)),
        url('../img/ep-bg-wiki-v8.jpg') right center / cover no-repeat;
    border-bottom: 1px solid var(--acw-line);
    min-height: 190px;
    padding: 26px;
}

.acw-guide-card__top {
    align-items: center;
    display: flex;
    gap: 7px;
    margin-bottom: 13px;
    width: 100%;
}

.acw-guide-card__top .acw-nav-icon {
    height: 29px;
    width: 29px;
}

.acw-guide-card__top > span:nth-child(2) {
    color: var(--acw-muted);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.acw-guide-card__top em {
    align-items: center;
    color: var(--acw-muted);
    display: inline-flex;
    font-size: 7px;
    font-style: normal;
    font-weight: 700;
    gap: 4px;
    margin-left: auto;
    text-transform: uppercase;
}

.acw-guide-card__top em i {
    background: var(--acw-green);
    border-radius: 50%;
    height: 5px;
    width: 5px;
}

.acw-guide-card > summary > strong {
    color: #fff;
    font: 700 14px/1.35 'Cinzel', serif;
}

.acw-guide-card[open] > summary > strong {
    font-size: clamp(22px, 3vw, 34px);
    margin-top: 6px;
}

.acw-guide-card__summary {
    color: var(--acw-muted);
    display: -webkit-box;
    font-size: 9px;
    line-height: 1.58;
    margin-top: 7px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.acw-guide-card[open] .acw-guide-card__summary {
    color: var(--acw-soft);
    font-size: 11px;
    max-width: 760px;
    -webkit-line-clamp: none;
}

.acw-guide-card__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 12px;
}

.acw-guide-card__tags > i {
    background: rgba(255, 255, 255, .026);
    border: 1px solid rgba(255, 255, 255, .055);
    color: #a99db7;
    font-size: 7px;
    font-style: normal;
    padding: 4px 6px;
}

.acw-guide-card__footer {
    align-items: center;
    border-top: 1px solid rgba(255, 255, 255, .05);
    color: #756a82;
    display: flex;
    font-size: 7px;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 11px;
}

.acw-guide-card__footer > span:last-child {
    color: var(--acw-purple2);
    font-weight: 700;
}

.acw-guide-card[open] .acw-guide-card__footer > span:last-child i::before {
    content: '\f068';
}

.acw-guide-card__detail {
    padding: 25px 28px 34px;
}

.acw-facts {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 22px;
}

.acw-facts > div {
    background: rgba(255, 255, 255, .025);
    border: 1px solid var(--acw-line);
    padding: 12px 14px;
}

.acw-facts span {
    color: var(--acw-muted);
    display: block;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .11em;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.acw-facts strong {
    color: var(--acw-gold);
    font: 700 12px/1.3 'Cinzel', serif;
}

.acw-verified {
    align-items: flex-start;
    background: linear-gradient(90deg, rgba(96, 221, 176, .065), transparent);
    border-left: 2px solid var(--acw-green);
    color: var(--acw-green);
    display: flex;
    gap: 9px;
    margin-bottom: 22px;
    padding: 11px 13px;
}

.acw-verified > span {
    display: grid;
    gap: 3px;
}

.acw-verified strong {
    color: #c6f5e3;
    font-size: 10px;
}

.acw-verified small {
    color: #88af9f;
    font-size: 8px;
}

.acw-guide-card__detail > section {
    border-bottom: 1px solid var(--acw-line);
    display: grid;
    gap: 13px;
    grid-template-columns: 34px minmax(0, 1fr);
    padding: 0 0 22px;
}

.acw-guide-card__detail > section + section {
    padding-top: 22px;
}

.acw-guide-card__detail > section > span {
    color: rgba(242, 199, 112, .58);
    font: 700 10px/1.4 'Cinzel', serif;
    padding-top: 3px;
}

.acw-guide-card__detail h3 {
    color: #fff;
    font: 700 17px/1.3 'Cinzel', serif;
    margin: 0 0 8px;
}

.acw-guide-card__detail p {
    color: #b5aabd;
    font-size: 10px;
    line-height: 1.75;
    margin: 0;
}

.acw-guide-card__detail ul {
    display: grid;
    gap: 6px;
    list-style: none;
    margin: 11px 0 0;
    padding: 0;
}

.acw-guide-card__detail li {
    color: var(--acw-soft);
    font-size: 9px;
    line-height: 1.55;
    padding-left: 16px;
    position: relative;
}

.acw-guide-card__detail li::before {
    background: var(--acw-gold);
    content: '';
    height: 5px;
    left: 1px;
    position: absolute;
    top: 5px;
    transform: rotate(45deg);
    width: 5px;
}

.acw-empty {
    align-items: center;
    border: 1px dashed var(--acw-line2);
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 280px;
    padding: 35px;
    text-align: center;
}

.acw-empty[hidden] {
    display: none;
}

.acw-empty > i {
    color: var(--acw-purple2);
    font-size: 25px;
}

.acw-empty h3 {
    color: #fff;
    font: 700 16px/1.3 'Cinzel', serif;
    margin: 15px 0 6px;
}

.acw-empty p {
    color: var(--acw-muted);
    font-size: 9px;
    margin: 0;
}

@media (max-width: 1160px) {
    .acw-featured-grid,
    .acw-guide-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .acw-layout {
        gap: 22px;
        grid-template-columns: 220px minmax(0, 1fr);
    }
}

@media (max-width: 860px) {
    .acw-hero__art {
        background-position: 72% center;
        opacity: .55;
    }

    .acw-hero__shade {
        background: linear-gradient(90deg, rgba(8, 5, 14, .98), rgba(8, 5, 14, .76));
    }

    .acw-layout {
        display: block;
        padding-top: 22px;
    }

    .acw-sidebar {
        margin-bottom: 27px;
        position: static;
    }

    .acw-sidebar nav {
        display: flex;
        gap: 6px;
        overflow-x: auto;
        padding-bottom: 8px;
        scrollbar-width: none;
    }

    .acw-sidebar nav::-webkit-scrollbar {
        display: none;
    }

    .acw-sidebar nav > a {
        flex: 0 0 175px;
    }

    .acw-baseline {
        display: none;
    }
}

@media (max-width: 650px) {
    body.ep-module-wiki .ep-main--inner {
        padding-left: .35rem;
        padding-right: .35rem;
    }

    .acw-hero {
        height: auto;
        min-height: 405px;
    }

    .acw-hero__content {
        padding: 40px 16px 34px;
    }

    .acw-hero h1 {
        font-size: 30px;
    }

    .acw-hero p {
        font-size: 11px;
    }

    .acw-search kbd {
        display: none;
    }

    .acw-snapshot span:last-child {
        display: none;
    }

    .acw-layout {
        padding: 20px 13px 45px;
    }

    .acw-sidebar__title {
        display: none;
    }

    .acw-sidebar nav > a {
        flex-basis: 154px;
    }

    .acw-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .acw-featured-grid,
    .acw-directory-grid,
    .acw-guide-grid,
    .acw-facts {
        grid-template-columns: 1fr;
    }

    .acw-guide-card[open] > summary,
    .acw-guide-card__detail {
        padding: 19px 16px 26px;
    }

    .acw-guide-card__detail > section {
        gap: 7px;
        grid-template-columns: 28px minmax(0, 1fr);
    }
}

@media (prefers-reduced-motion: reduce) {
    .acw *,
    .acw *::before,
    .acw *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}

/* Celestial Archive — premium visual system v2 */
.acw {
    --acw-bg: #050208;
    --acw-panel: rgba(18, 9, 29, .92);
    --acw-panel2: #1c0f2c;
    --acw-line: rgba(236, 215, 255, .12);
    --acw-line2: rgba(241, 205, 255, .28);
    --acw-text: #fffafd;
    --acw-soft: #d7ccdf;
    --acw-muted: #aa9bb6;
    --acw-purple: #ad63ff;
    --acw-purple2: #d2a0ff;
    --acw-gold: #f5d184;
    --acw-green: #65dfb3;
    max-width: 1480px;
}

.acw-emblem {
    --emblem-main: #c490ff;
    --emblem-metal: #f5d184;
    --emblem-back: #1a0c29;
    --emblem-core: #0c0613;
    display: inline-flex;
    filter: drop-shadow(0 7px 12px rgba(0, 0, 0, .4));
    flex: 0 0 auto;
    position: relative;
    transition: filter .24s ease, transform .24s ease;
}

.acw-emblem svg { display: none; }
.acw-emblem img { display: block; height: 100%; object-fit: contain; pointer-events: none; width: 100%; }
.acw-emblem--small { height: 52px; width: 52px; }
.acw-emblem--medium { height: 78px; width: 78px; }
.acw-emblem--large { height: 112px; width: 112px; }
.acw-emblem--hero { height: 128px; width: 128px; }
.acw-emblem--all { --emblem-main: #c9b6dc; --emblem-back: #191121; }
.acw-emblem--instance { --emblem-main: #bd72ff; --emblem-back: #200b35; }
.acw-emblem--npc { --emblem-main: #64c6ff; --emblem-back: #081c2c; }
.acw-emblem--enchant { --emblem-main: #eb8dff; --emblem-back: #250a30; }
.acw-emblem--build { --emblem-main: #f6c966; --emblem-back: #251807; }
.acw-emblem--guide { --emblem-main: #64dfb7; --emblem-back: #08251c; }
.acw-emblem--system { --emblem-main: #939fff; --emblem-back: #101635; }
.acw-emblem--episode { --emblem-main: #ff9478; --emblem-back: #2c100b; }
.acw-emblem--equipment { --emblem-main: #ffbe59; --emblem-back: #281705; }
.acw-emblem__plate { fill: var(--emblem-back); stroke: var(--emblem-metal); stroke-width: 1.3; }
.acw-emblem__rim { fill: none; opacity: .9; stroke: var(--emblem-main); stroke-width: 1.5; }
.acw-emblem__core { fill: var(--emblem-core); opacity: .88; stroke: var(--emblem-main); stroke-width: .9; }
.acw-emblem__facet { fill: var(--emblem-main); opacity: .2; }
.acw-emblem__pin { fill: #fff4d4; }
.acw-emblem__primary { fill: var(--emblem-main); }
.acw-emblem__secondary { fill: var(--emblem-metal); }
.acw-emblem__void { fill: #09040e; }
.acw-emblem__line { fill: none; stroke: var(--emblem-metal); stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.7; }

.acw-hero {
    border-color: rgba(245, 209, 132, .14);
    height: 470px;
}

.acw-hero__art { background-position: 64% 42%; opacity: .97; }
.acw-hero__shade {
    background:
        linear-gradient(90deg, #06030a 0%, rgba(6, 3, 10, .98) 27%, rgba(8, 4, 13, .71) 52%, rgba(8, 4, 13, .08) 82%),
        linear-gradient(0deg, #07030b 0%, transparent 58%);
}
.acw-hero__content { max-width: 800px; padding: 64px 48px 46px; }
.acw-eyebrow { font-size: 11px; letter-spacing: .23em; }
.acw-hero h1 { font-size: clamp(42px, 5vw, 64px); line-height: 1.02; margin: 17px 0 17px; max-width: 700px; }
.acw-hero p { color: #d3c7db; font-size: 15px; line-height: 1.75; margin-bottom: 25px; max-width: 690px; }
.acw-search {
    backdrop-filter: blur(18px);
    border-color: rgba(223, 183, 255, .34);
    border-radius: 16px;
    height: 62px;
    max-width: 720px;
    padding: 0 19px;
}
.acw-search > i { font-size: 18px; }
.acw-search input { font-size: 14px; padding: 0 15px; }
.acw-search kbd { border-radius: 7px; font-size: 10px; padding: 8px 9px; }
.acw-snapshot { color: #aa9db4; font-size: 11px; gap: 23px; margin-top: 16px; }
.acw-snapshot span::before { box-shadow: 0 0 8px var(--acw-purple); height: 5px; transform: rotate(45deg); width: 5px; }
.acw-signature { align-items: center; color: rgba(245, 209, 132, .75); display: flex; gap: 10px; margin-top: 17px; }
.acw-signature span { font: 700 10px/1 'Cinzel', serif; letter-spacing: .32em; }
.acw-signature i { background: linear-gradient(90deg, var(--acw-gold), transparent); height: 1px; width: 52px; }
.acw-signature small { color: rgba(208, 196, 216, .62); font-size: 10px; letter-spacing: .08em; }

.acw-layout {
    background:
        radial-gradient(circle at 40% 0, rgba(135, 67, 205, .12), transparent 33rem),
        linear-gradient(180deg, #07030b, #050208);
    gap: 44px;
    grid-template-columns: 282px minmax(0, 1fr);
    padding: 50px 34px 88px;
}
.acw-sidebar { top: 26px; }
.acw-sidebar__title { margin-bottom: 13px; padding: 0 7px 14px; }
.acw-sidebar__title span, .acw-sidebar__title small { font-size: 10px; }
.acw-sidebar nav { gap: 6px; }
.acw-sidebar nav > a {
    border-radius: 14px;
    gap: 12px;
    grid-template-columns: 45px minmax(0, 1fr) auto;
    min-height: 67px;
    padding: 9px 11px 9px 8px;
}
.acw-sidebar nav > a::before { border-radius: 3px; left: 0; width: 3px; }
.acw-sidebar nav > a:hover,
.acw-sidebar nav > a.is-active {
    background: linear-gradient(100deg, rgba(172, 91, 255, .18), rgba(245, 209, 132, .035));
    border-color: rgba(217, 166, 255, .2);
    box-shadow: inset 0 1px rgba(255, 255, 255, .035);
}
.acw-sidebar nav > a:hover .acw-emblem,
.acw-sidebar nav > a.is-active .acw-emblem { filter: drop-shadow(0 7px 13px rgba(0, 0, 0, .45)); transform: translateY(-1px) scale(1.03); }
.acw-sidebar nav strong { font-size: 13px; }
.acw-sidebar nav small { font-size: 10px; }
.acw-sidebar nav em { color: #a999b6; font-size: 10px; }
.acw-baseline { border-radius: 16px; gap: 13px; margin-top: 24px; padding: 17px; }
.acw-baseline > i { font-size: 19px; }
.acw-baseline small { font-size: 9px; }
.acw-baseline strong { font-size: 14px; }
.acw-baseline p { font-size: 10px; line-height: 1.55; }

.acw-section { margin-bottom: 60px; }
.acw-heading { margin-bottom: 24px; padding-bottom: 18px; }
.acw-heading::after { height: 2px; width: 145px; }
.acw-heading h2 { font-size: clamp(27px, 3vw, 38px); margin: 10px 0 7px; }
.acw-heading p { color: #ab9db6; font-size: 13px; line-height: 1.65; }
.acw-curated, .acw-result-count { border-radius: 999px; font-size: 11px; padding: 10px 13px; }

.acw-featured-grid { gap: 14px; }
.acw-featured-grid > a {
    border-radius: 18px;
    gap: 15px;
    grid-template-columns: 78px minmax(0, 1fr) 22px;
    min-height: 195px;
    padding: 26px 21px;
}
.acw-featured-grid > a:hover { transform: translateY(-4px); }
.acw-featured__number { font-size: 36px; right: 15px; top: 12px; }
.acw-featured-grid > a > span:nth-child(3) { gap: 8px; }
.acw-featured-grid small, .acw-directory-grid small { font-size: 10px; letter-spacing: .15em; }
.acw-featured-grid strong { font-size: 16px; line-height: 1.35; }
.acw-featured-grid em { color: #aa9db5; font-size: 11px; line-height: 1.6; }

.acw-directory-grid { gap: 14px; }
.acw-directory-grid > a {
    background:
        radial-gradient(circle at 0 0, rgba(173, 99, 255, .1), transparent 45%),
        linear-gradient(135deg, rgba(29, 15, 45, .96), rgba(12, 6, 20, .96));
    border-radius: 20px;
    box-shadow: inset 0 1px rgba(255, 255, 255, .035);
    gap: 18px;
    grid-template-columns: 112px minmax(0, 1fr) auto;
    min-height: 176px;
    overflow: hidden;
    padding: 23px 24px;
    position: relative;
}
.acw-directory-grid > a::before { background: linear-gradient(90deg, transparent, rgba(245, 209, 132, .8), var(--acw-purple), transparent); content: ''; height: 1px; left: -8%; opacity: .55; position: absolute; top: 0; width: 72%; }
.acw-directory-grid > a:hover { border-color: rgba(238, 198, 255, .34); box-shadow: 0 22px 60px rgba(0, 0, 0, .32); transform: translateY(-4px); }
.acw-directory-grid > a:hover .acw-emblem { transform: scale(1.06) rotate(-1deg); }
.acw-directory-grid > a > span:nth-child(2) { gap: 7px; }
.acw-directory-grid strong { font-size: 20px; }
.acw-directory-grid em { color: #aa9db5; font-size: 11px; line-height: 1.55; }
.acw-directory-grid b { border-radius: 999px; color: var(--acw-gold); font-size: 11px; height: 32px; width: 32px; }

.acw-guide-grid { gap: 15px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.acw-guide-card {
    background:
        radial-gradient(circle at 100% 0, rgba(165, 86, 232, .08), transparent 38%),
        linear-gradient(145deg, rgba(24, 12, 38, .92), rgba(12, 6, 20, .94));
    border-radius: 19px;
    min-height: 304px;
}
.acw-guide-card:not([open]):hover { box-shadow: 0 20px 54px rgba(0, 0, 0, .3); transform: translateY(-4px); }
.acw-guide-card::after { height: 3px; }
.acw-guide-card > summary { min-height: 302px; padding: 22px; }
.acw-guide-card[open] > summary { border-radius: 19px 19px 0 0; min-height: 250px; padding: 34px; }
.acw-guide-card__top { gap: 10px; margin-bottom: 19px; }
.acw-guide-card__top > span:nth-child(2) { font-size: 10px; letter-spacing: .13em; }
.acw-guide-card__top em { font-size: 9px; gap: 6px; }
.acw-guide-card__top em i { height: 6px; width: 6px; }
.acw-guide-card > summary > strong { font-size: 19px; line-height: 1.38; }
.acw-guide-card[open] > summary > strong { font-size: clamp(31px, 4vw, 46px); }
.acw-guide-card__summary { color: #b4a7bd; font-size: 13px; line-height: 1.7; margin-top: 11px; }
.acw-guide-card[open] .acw-guide-card__summary { font-size: 15px; line-height: 1.75; max-width: 860px; }
.acw-guide-card__tags { gap: 7px; margin-top: 16px; }
.acw-guide-card__tags > i { border-radius: 7px; font-size: 9px; padding: 6px 8px; }
.acw-guide-card__footer { color: #93869e; font-size: 10px; padding-top: 15px; }
.acw-guide-card__detail { padding: 34px 38px 44px; }
.acw-facts { gap: 12px; margin-bottom: 30px; }
.acw-facts > div { border-radius: 12px; padding: 17px 19px; }
.acw-facts span { font-size: 9px; margin-bottom: 7px; }
.acw-facts strong { font-size: 15px; }
.acw-verified { border-radius: 0 12px 12px 0; gap: 13px; margin-bottom: 31px; padding: 17px 19px; }
.acw-verified strong { font-size: 13px; }
.acw-verified small { font-size: 11px; line-height: 1.55; }
.acw-guide-card__detail > section { gap: 18px; grid-template-columns: 44px minmax(0, 1fr); padding-bottom: 34px; }
.acw-guide-card__detail > section + section { padding-top: 34px; }
.acw-guide-card__detail > section > span { font-size: 13px; }
.acw-guide-card__detail h3 { font-size: 24px; margin-bottom: 13px; }
.acw-guide-card__detail p { color: #c4b8ca; font-size: 15px; line-height: 1.88; }
.acw-guide-card__detail ul { gap: 9px; margin-top: 16px; }
.acw-guide-card__detail li { font-size: 13px; line-height: 1.7; padding-left: 21px; }
.acw-guide-card__detail li::before { height: 6px; top: 8px; width: 6px; }
.acw-empty { border-radius: 20px; min-height: 370px; }
.acw-empty > i { font-size: 34px; }
.acw-empty h3 { font-size: 22px; }
.acw-empty p { font-size: 13px; }

@media (max-width: 1160px) {
    .acw-layout { gap: 28px; grid-template-columns: 242px minmax(0, 1fr); }
    .acw-directory-grid { grid-template-columns: 1fr; }
    .acw-featured-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 860px) {
    .acw-hero { height: 465px; }
    .acw-layout { padding-top: 29px; }
    .acw-sidebar nav > a { flex-basis: 215px; }
}

@media (max-width: 650px) {
    .acw-hero { min-height: 475px; }
    .acw-hero__content { padding: 49px 17px 39px; }
    .acw-hero h1 { font-size: 38px; }
    .acw-hero p { font-size: 13px; line-height: 1.65; }
    .acw-search { border-radius: 13px; height: 57px; padding: 0 14px; }
    .acw-search input { font-size: 12px; padding: 0 10px; }
    .acw-signature small { display: none; }
    .acw-layout { padding: 26px 15px 58px; }
    .acw-sidebar nav > a { flex-basis: 188px; }
    .acw-heading h2 { font-size: 29px; }
    .acw-heading p { font-size: 12px; }
    .acw-directory-grid > a { gap: 14px; grid-template-columns: 69px minmax(0, 1fr); min-height: 148px; padding: 19px; }
    .acw-emblem--large { height: 96px; width: 96px; }
    .acw-directory-grid strong { font-size: 18px; }
    .acw-directory-grid b { display: none; }
    .acw-featured-grid, .acw-guide-grid { grid-template-columns: 1fr; }
    .acw-featured-grid > a { min-height: 174px; }
    .acw-guide-card { min-height: 286px; }
    .acw-guide-card > summary { min-height: 284px; }
    .acw-guide-card[open] > summary { padding: 26px 20px; }
    .acw-guide-card__detail { padding: 27px 19px 34px; }
    .acw-guide-card__detail > section { gap: 8px; grid-template-columns: 31px minmax(0, 1fr); }
    .acw-guide-card__detail h3 { font-size: 21px; }
    .acw-guide-card__detail p { font-size: 14px; line-height: 1.8; }
}

.acw-home { display: grid; gap: 18px; }
.acw-home-lead > a {
    align-items: center;
    background:
        radial-gradient(circle at 0 0, rgba(242, 199, 112, .16), transparent 42%),
        linear-gradient(135deg, rgba(36, 18, 54, .96), rgba(12, 6, 20, .96));
    border: 1px solid rgba(242, 199, 112, .28);
    border-radius: 22px;
    display: grid;
    gap: 18px;
    grid-template-columns: 112px minmax(0, 1fr) auto;
    min-height: 168px;
    padding: 22px 24px;
    transition: transform .2s ease, border-color .2s ease;
}
.acw-home-lead > a:hover { border-color: rgba(242, 199, 112, .5); transform: translateY(-3px); }
.acw-home-lead small { color: var(--acw-gold); display: block; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
.acw-home-lead strong { display: block; font: 700 28px/1.15 Cinzel, serif; margin: 6px 0 8px; }
.acw-home-lead em { color: #b7adc4; display: block; font-size: 13px; font-style: normal; line-height: 1.55; }
.acw-home-lead b {
    align-items: center;
    border: 1px solid rgba(242, 199, 112, .4);
    border-radius: 999px;
    color: var(--acw-gold);
    display: inline-flex;
    font-size: 11px;
    letter-spacing: .12em;
    padding: 8px 14px;
    text-transform: uppercase;
}
.acw-home-grid { display: grid; gap: 14px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.acw-home-grid > a {
    background: linear-gradient(160deg, rgba(28, 16, 44, .94), rgba(12, 6, 20, .96));
    border: 1px solid rgba(220, 192, 255, .14);
    border-radius: 18px;
    display: grid;
    gap: 12px;
    min-height: 210px;
    padding: 18px 18px 20px;
    transition: transform .2s ease, border-color .2s ease;
}
.acw-home-grid > a:hover { border-color: rgba(202, 145, 255, .4); transform: translateY(-3px); }
.acw-home-grid small { color: var(--acw-gold); display: block; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.acw-home-grid strong { display: block; font: 700 18px/1.2 Cinzel, serif; margin: 6px 0 8px; }
.acw-home-grid em { color: #aa9db5; display: block; font-size: 12px; font-style: normal; line-height: 1.5; }
.acw-home-note {
    background: rgba(19, 12, 32, .88);
    border: 1px solid rgba(220, 192, 255, .12);
    border-radius: 18px;
    padding: 22px 24px;
}
.acw-home-note h3 { font: 700 20px/1.2 Cinzel, serif; margin: 6px 0 8px; }
.acw-home-note p { color: #b7adc4; font-size: 13px; line-height: 1.65; margin: 0; }
@media (max-width: 980px) {
    .acw-home-lead > a, .acw-home-grid { grid-template-columns: 1fr; }
    .acw-home-lead b { display: none; }
}

