.page-lineage-classic .lineage-catalog,
.page-lineage-classic .lineage-bestiary {
    --lc-panel: #17181d;
    --lc-line: #30323a;
    --lc-text: #d9dbe0;
    --lc-muted: #828791;
    --lc-gold: #c89547;
    min-height: 70vh;
    color: var(--lc-text);
    background: #101115;
    font-family: Pretendard, "Noto Sans KR", "Apple SD Gothic Neo", Arial, sans-serif;
}
.page-lineage-classic .lineage-catalog,
.page-lineage-classic .lineage-catalog *,
.page-lineage-classic .lineage-bestiary,
.page-lineage-classic .lineage-bestiary * { box-sizing: border-box; }
.page-lineage-classic .lineage-catalog button,
.page-lineage-classic .lineage-catalog input,
.page-lineage-classic .lineage-catalog select,
.page-lineage-classic .lineage-bestiary button,
.page-lineage-classic .lineage-bestiary input,
.page-lineage-classic .lineage-bestiary select { font: inherit; }
.page-lineage-classic .lineage-catalog-hero {
    padding: 46px 0 36px;
    border-bottom: 1px solid #272930;
    background: linear-gradient(110deg, #0d0e12, #14151a);
}
.page-lineage-classic .lineage-catalog-hero > div > p:first-child {
    margin: 0 0 9px;
    color: #d55355;
    font: 800 10px/1 Arial, sans-serif;
    letter-spacing: .16em;
}
.page-lineage-classic .lineage-catalog-hero h1 { margin: 0; color: #f2f3f5; font-size: 36px; letter-spacing: -.05em; }
.page-lineage-classic .lineage-catalog-hero > div > span { display: block; margin-top: 10px; color: #90959f; font-size: 13px; }
.page-lineage-classic .lineage-catalog-search { display: grid; grid-template-columns: minmax(0, 1fr) 180px; max-width: 780px; margin-top: 24px; }
.page-lineage-classic .lineage-catalog-search label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.page-lineage-classic .lineage-catalog-search input,
.page-lineage-classic .lineage-catalog-search select { height: 50px; border: 1px solid #41444c; color: #e2e3e7; background: #15161b; outline: 0; }
.page-lineage-classic .lineage-catalog-search input { min-width: 0; padding: 0 16px; border-right: 0; }
.page-lineage-classic .lineage-catalog-search select { padding: 0 12px; }
.page-lineage-classic .lineage-catalog-search:focus-within input,
.page-lineage-classic .lineage-catalog-search:focus-within select { border-color: #8e3032; }
.page-lineage-classic .lineage-catalog-count { margin: 10px 0 0 !important; color: #747983 !important; font-size: 11px; }
.page-lineage-classic .lineage-catalog-count strong { color: #cacdd2; }
.page-lineage-classic .lineage-catalog-body { padding: 28px 0 60px; }
.page-lineage-classic .lineage-catalog-layout { display: grid; grid-template-columns: 370px minmax(0, 1fr); align-items: start; gap: 18px; }
.page-lineage-classic .lineage-catalog-list { max-height: 720px; overflow-y: auto; border: 1px solid var(--lc-line); background: #121318; }
.page-lineage-classic .lineage-catalog-row {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    width: 100%;
    min-height: 68px;
    padding: 8px 12px;
    border: 0;
    border-bottom: 1px solid #282a31;
    color: inherit;
    background: transparent;
    text-align: left;
    cursor: pointer;
}
.page-lineage-classic .lineage-catalog-row:hover,
.page-lineage-classic .lineage-catalog-row.is-selected { background: #211719; }
.page-lineage-classic .lineage-catalog-row.is-selected { box-shadow: inset 3px 0 #a5292c; }
.page-lineage-classic .lineage-catalog-icon { display: grid; place-items: center; width: 48px; height: 48px; color: #725b37; border: 1px solid #363941; background: #0d0e11; }
.page-lineage-classic .lineage-catalog-icon img { display: block; max-width: 42px; max-height: 42px; image-rendering: auto; }
.page-lineage-classic .lineage-catalog-icon.is-large { width: 78px; height: 78px; }
.page-lineage-classic .lineage-catalog-icon.is-large img { max-width: 68px; max-height: 68px; }
.page-lineage-classic .lineage-catalog-row-copy { min-width: 0; }
.page-lineage-classic .lineage-catalog-row-copy strong,
.page-lineage-classic .lineage-catalog-row-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.page-lineage-classic .lineage-catalog-row-copy strong { color: #e1e2e5; font-size: 13px; }
.page-lineage-classic .lineage-catalog-row-copy small { margin-top: 5px; color: #777c86; font-size: 10px; }
.page-lineage-classic .lineage-catalog-arrow { color: #666b75; font-size: 20px; }
.page-lineage-classic .lineage-catalog-detail { position: sticky; top: 18px; min-height: 460px; padding: 24px; border: 1px solid var(--lc-line); border-top-color: #6d3032; background: var(--lc-panel); }
.page-lineage-classic .lineage-catalog-placeholder { display: grid; place-items: center; min-height: 410px; text-align: center; }
.page-lineage-classic .lineage-catalog-placeholder p { margin: 8px 0 0; color: var(--lc-muted) !important; font-size: 12px; }
.page-lineage-classic .lineage-catalog-detail-head { display: flex; align-items: center; gap: 18px; padding-bottom: 20px; border-bottom: 1px solid #2d3037; }
.page-lineage-classic .lineage-catalog-detail-head small { color: #c34d50; font-size: 10px; font-weight: 800; }
.page-lineage-classic .lineage-catalog-detail-head h2 { margin: 5px 0 0; color: #f0f1f3; font-size: 24px; letter-spacing: -.04em; }
.page-lineage-classic .lineage-catalog-detail-head p { margin: 8px 0 0; color: #8b909a !important; font-size: 11px; }
.page-lineage-classic .lineage-catalog-options { padding: 20px 0; border-bottom: 1px solid #2d3037; }
.page-lineage-classic .lineage-catalog-options h3 { margin: 0 0 12px; color: #dfe1e5; font-size: 13px; }
.page-lineage-classic .lineage-catalog-options ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.page-lineage-classic .lineage-catalog-options li { display: flex; justify-content: space-between; gap: 20px; padding: 9px 11px; background: #121318; font-size: 11px; }
.page-lineage-classic .lineage-catalog-options li strong { color: #d7b571; }
.page-lineage-classic .lineage-catalog-options li span { color: #838892; text-align: right; }
.page-lineage-classic .lineage-catalog-muted { margin: 0; color: var(--lc-muted) !important; font-size: 11px; }
.page-lineage-classic .lineage-catalog-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin: 20px 0 0; background: #2b2e35; }
.page-lineage-classic .lineage-catalog-facts > div { padding: 12px; background: #121318; }
.page-lineage-classic .lineage-catalog-facts dt { color: #717680; font-size: 9px; }
.page-lineage-classic .lineage-catalog-facts dd { margin: 5px 0 0; color: #d8dade; font-size: 12px; }
.page-lineage-classic .lineage-catalog-enchant { margin: 14px 0 0; padding: 12px; color: #9ca0a8 !important; border-left: 2px solid #7a3032; background: #14151a; font-size: 11px; }
.page-lineage-classic .lineage-catalog-market-link { display: flex; align-items: center; justify-content: center; min-height: 46px; margin-top: 20px; color: #fff; background: #8e1e20; font-size: 12px; font-weight: 800; text-decoration: none; }
.page-lineage-classic .lineage-catalog-market-link:hover { background: #a62629; }
.page-lineage-classic .lineage-catalog-empty { padding: 40px 18px; color: #7d828c !important; text-align: center; font-size: 12px; }

.page-lineage-classic .lineage-bestiary-body { padding: 18px 0 64px; }
.page-lineage-classic .lineage-bestiary-layout {
    display: grid;
    grid-template-columns: 205px 320px minmax(0, 1fr);
    align-items: start;
    gap: 12px;
}
.page-lineage-classic .lineage-region-panel,
.page-lineage-classic .lineage-monster-panel,
.page-lineage-classic .lineage-monster-detail {
    border: 1px solid var(--lc-line);
    background: #121318;
}
.page-lineage-classic .lineage-region-panel,
.page-lineage-classic .lineage-monster-detail { position: sticky; top: 18px; }
.page-lineage-classic .lineage-bestiary-panel-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 42px;
    padding: 0 14px;
    border-bottom: 1px solid #30323a;
}
.page-lineage-classic .lineage-bestiary-panel-title strong { color: #e0e2e5; font-size: 12px; }
.page-lineage-classic .lineage-bestiary-panel-title small { color: #7b8089; font-size: 9px; }
.page-lineage-classic .lineage-region-list { max-height: 430px; overflow-y: auto; }
.page-lineage-classic .lineage-region-list button {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    width: 100%;
    min-height: 34px;
    padding: 0 12px;
    border: 0;
    border-bottom: 1px solid #26282e;
    color: #aeb2ba;
    background: transparent;
    text-align: left;
    cursor: pointer;
}
.page-lineage-classic .lineage-region-list button:hover,
.page-lineage-classic .lineage-region-list button.is-selected { color: #fff; background: #211719; }
.page-lineage-classic .lineage-region-list button.is-selected { box-shadow: inset 3px 0 #a5292c; }
.page-lineage-classic .lineage-region-list button span { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.page-lineage-classic .lineage-region-list button b { color: #c89547; font: 800 9px/1 Arial, sans-serif; }
.page-lineage-classic .lineage-monster-list { max-height: 430px; overflow-y: auto; }
.page-lineage-classic .lineage-monster-row {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) auto;
    align-items: center;
    gap: 11px;
    width: 100%;
    min-height: 64px;
    padding: 7px 10px;
    border: 0;
    border-bottom: 1px solid #282a31;
    color: inherit;
    background: transparent;
    text-align: left;
    cursor: pointer;
}
.page-lineage-classic .lineage-monster-row:hover,
.page-lineage-classic .lineage-monster-row.is-selected { background: #211719; }
.page-lineage-classic .lineage-monster-row.is-selected { box-shadow: inset 3px 0 #a5292c; }
.page-lineage-classic .lineage-monster-row.is-overall .lineage-bestiary-icon { color: #e3b264; font: 800 10px/1 Arial, sans-serif; }
.page-lineage-classic .lineage-monster-row > span:nth-child(2) { min-width: 0; }
.page-lineage-classic .lineage-monster-row strong,
.page-lineage-classic .lineage-monster-row small,
.page-lineage-classic .lineage-monster-row em { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.page-lineage-classic .lineage-monster-row strong { color: #e0e2e5; font-size: 13px; }
.page-lineage-classic .lineage-monster-row small { margin-top: 5px; color: #7d828b; font-size: 9px; }
.page-lineage-classic .lineage-monster-row em { margin-top: 5px; color: #c89547; font-size: 9px; font-style: normal; }
.page-lineage-classic .lineage-bestiary-icon {
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    color: #745b37;
    border: 1px solid #363941;
    background: #0d0e11;
}
.page-lineage-classic .lineage-bestiary-icon img { display: block; max-width: 38px; max-height: 38px; }
.page-lineage-classic .lineage-bestiary-icon.is-large { width: 72px; height: 72px; }
.page-lineage-classic .lineage-bestiary-icon.is-large img { max-width: 66px; max-height: 66px; }
.page-lineage-classic .lineage-monster-detail {
    max-height: 474px;
    padding: 16px;
    overflow-y: auto;
    border-top-color: #6d3032;
    background: var(--lc-panel);
}
.page-lineage-classic .lineage-monster-detail-head { display: flex; align-items: center; gap: 16px; padding-bottom: 18px; border-bottom: 1px solid #30323a; }
.page-lineage-classic .lineage-monster-detail-head > div { min-width: 0; }
.page-lineage-classic .lineage-monster-detail-head small { color: #d55355; font: 800 10px/1 Arial, sans-serif; letter-spacing: .08em; }
.page-lineage-classic .lineage-monster-detail-head h2 { margin: 7px 0 0; color: #f1f2f4; font-size: 25px; letter-spacing: -.04em; }
.page-lineage-classic .lineage-monster-detail-head p { margin: 7px 0 0; color: #818690 !important; font-size: 10px; }
.page-lineage-classic .lineage-monster-regions { padding: 17px 0; border-bottom: 1px solid #30323a; }
.page-lineage-classic .lineage-monster-regions h3,
.page-lineage-classic .lineage-drop-heading h3 { margin: 0; color: #e0e2e5; font-size: 12px; }
.page-lineage-classic .lineage-monster-regions > div { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.page-lineage-classic .lineage-monster-regions span { padding: 6px 9px; color: #c7cad0; border: 1px solid #3a3d45; background: #121318; font-size: 9px; }
.page-lineage-classic .lineage-drop-table { padding-top: 17px; }
.page-lineage-classic .lineage-drop-heading { display: flex; align-items: center; justify-content: space-between; }
.page-lineage-classic .lineage-drop-heading span { color: #c89547; font-size: 9px; }
.page-lineage-classic .lineage-drop-group { margin-top: 15px; }
.page-lineage-classic .lineage-drop-group h4 { display: flex; align-items: center; justify-content: space-between; margin: 0 0 7px; padding-bottom: 7px; color: #aeb2ba; border-bottom: 1px solid #2d3037; font-size: 10px; }
.page-lineage-classic .lineage-drop-group h4 b { color: #737883; font-size: 9px; }
.page-lineage-classic .lineage-drop-group > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; }
.page-lineage-classic .lineage-drop-item {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    min-height: 48px;
    padding: 5px 7px;
    color: inherit;
    border: 1px solid #30323a;
    background: #121318;
    text-decoration: none;
}
.page-lineage-classic .lineage-drop-item:hover { border-color: #743235; background: #211719; }
.page-lineage-classic .lineage-drop-item .lineage-bestiary-icon { width: 36px; height: 36px; }
.page-lineage-classic .lineage-drop-item .lineage-bestiary-icon img { max-width: 32px; max-height: 32px; }
.page-lineage-classic .lineage-region-summary-head { padding-bottom: 14px; border-bottom: 1px solid #30323a; }
.page-lineage-classic .lineage-region-summary-head small { color: #d55355; font: 800 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.page-lineage-classic .lineage-region-summary-head h2 { margin: 6px 0 0; color: #f1f2f4; font-size: 22px; letter-spacing: -.04em; }
.page-lineage-classic .lineage-region-summary-head p { margin: 6px 0 0; color: #818690 !important; font-size: 10px; }
.page-lineage-classic .lineage-region-monsters { padding: 14px 0; border-bottom: 1px solid #30323a; }
.page-lineage-classic .lineage-region-monsters h3 { margin: 0 0 8px; color: #e0e2e5; font-size: 12px; }
.page-lineage-classic .lineage-region-monsters > div { display: grid; grid-template-columns: repeat(auto-fill, minmax(72px, 1fr)); gap: 5px; }
.page-lineage-classic .lineage-region-monsters button { min-width: 0; padding: 6px 4px; color: #aeb2ba; border: 1px solid #30323a; background: #121318; cursor: pointer; }
.page-lineage-classic .lineage-region-monsters button:hover { color: #fff; border-color: #743235; background: #211719; }
.page-lineage-classic .lineage-region-monsters .lineage-bestiary-icon { width: 34px; height: 34px; margin: 0 auto 4px; }
.page-lineage-classic .lineage-region-monsters .lineage-bestiary-icon img { max-width: 30px; max-height: 30px; }
.page-lineage-classic .lineage-region-monsters button > span:last-child { display: block; overflow: hidden; font-size: 8px; text-align: center; text-overflow: ellipsis; white-space: nowrap; }
.page-lineage-classic .lineage-region-drop-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 5px; margin-top: 10px; }

.page-lineage-classic .lineage-hunting-map { margin-top: 12px; border: 1px solid var(--lc-line); background: #121318; }
.page-lineage-classic .lineage-hunting-map[hidden] { display: none; }
.page-lineage-classic .lineage-hunting-map > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 62px; padding: 10px 14px; border-bottom: 1px solid #30323a; }
.page-lineage-classic .lineage-hunting-map > header small { color: #d55355; font: 800 9px/1 Arial, sans-serif; letter-spacing: .08em; }
.page-lineage-classic .lineage-hunting-map > header h2 { margin: 5px 0 0; color: #eef0f3; font-size: 17px; }
.page-lineage-classic .lineage-hunting-map-controls { display: flex; gap: 5px; }
.page-lineage-classic .lineage-hunting-map-controls button { min-width: 38px; height: 34px; padding: 0 11px; color: #cfd2d8; border: 1px solid #3b3e46; background: #181a20; cursor: pointer; }
.page-lineage-classic .lineage-hunting-map-controls button:hover { color: #fff; border-color: #793437; background: #24191b; }
.page-lineage-classic .lineage-hunting-map-stage { position: relative; height: 520px; overflow: hidden; background: #08090b; cursor: grab; touch-action: none; user-select: none; }
.page-lineage-classic .lineage-hunting-map-stage.is-dragging { cursor: grabbing; }
.page-lineage-classic .lineage-hunting-map-stage > img,
.page-lineage-classic .lineage-hunting-map-tiles { position: absolute; top: 50%; left: 50%; display: block; max-width: none; transform-origin: center; will-change: transform; }
.page-lineage-classic .lineage-hunting-map-stage > img[hidden],
.page-lineage-classic .lineage-hunting-map-tiles[hidden] { display: none; }
.page-lineage-classic .lineage-hunting-map-tiles { overflow: hidden; pointer-events: none; }
.page-lineage-classic .lineage-hunting-map-tiles img { position: absolute; display: block; max-width: none; }
.page-lineage-classic .lineage-hunting-map > p { margin: 0; padding: 9px 14px; color: #747984 !important; border-top: 1px solid #24262c; font-size: 9px; text-align: center; }
.page-lineage-classic .lineage-drop-item > span { min-width: 0; }
.page-lineage-classic .lineage-drop-item strong,
.page-lineage-classic .lineage-drop-item small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.page-lineage-classic .lineage-drop-item strong { color: #d7d9de; font-size: 10px; }
.page-lineage-classic .lineage-drop-item small { margin-top: 4px; color: #70757f; font-size: 8px; }

@media (max-width: 820px) {
    .page-lineage-classic .lineage-catalog-layout { grid-template-columns: 1fr; }
    .page-lineage-classic .lineage-catalog-list { max-height: 440px; }
    .page-lineage-classic .lineage-catalog-detail { position: static; }
    .page-lineage-classic .lineage-bestiary-layout { grid-template-columns: 220px minmax(0, 1fr); }
    .page-lineage-classic .lineage-monster-detail { position: static; grid-column: 1 / -1; max-height: 474px; }
    .page-lineage-classic .lineage-hunting-map-stage { height: 400px; }
}
@media (max-width: 520px) {
    .page-lineage-classic .lineage-catalog-hero { padding: 30px 0 26px; }
    .page-lineage-classic .lineage-catalog-hero h1 { font-size: 30px; }
    .page-lineage-classic .lineage-catalog-hero > div > span { font-size: 11px; line-height: 1.55; }
    .page-lineage-classic .lineage-catalog-search { margin-top: 18px; }
    .page-lineage-classic .lineage-bestiary-body { padding-top: 12px; }
    .page-lineage-classic .lineage-catalog-search { grid-template-columns: 1fr; gap: 7px; }
    .page-lineage-classic .lineage-catalog-search input { border-right: 1px solid #41444c; }
    .page-lineage-classic .lineage-catalog-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .page-lineage-classic .lineage-catalog-detail { padding: 18px; }
    .page-lineage-classic .lineage-bestiary-layout { grid-template-columns: minmax(0, 1fr); gap: 10px; }
    .page-lineage-classic .lineage-region-panel { position: static; }
    .page-lineage-classic .lineage-region-list { display: flex; max-height: none; overflow-x: auto; }
    .page-lineage-classic .lineage-region-list button { flex: 0 0 auto; width: auto; max-width: 190px; border-right: 1px solid #26282e; }
    .page-lineage-classic .lineage-monster-list { max-height: 300px; }
    .page-lineage-classic .lineage-drop-group > div { grid-template-columns: 1fr; }
    .page-lineage-classic .lineage-region-drop-grid { grid-template-columns: 1fr; }
    .page-lineage-classic .lineage-monster-detail { max-height: 420px; padding: 14px; }
    .page-lineage-classic .lineage-monster-detail-head h2 { font-size: 22px; }
    .page-lineage-classic .lineage-hunting-map > header { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
    .page-lineage-classic .lineage-hunting-map-controls { width: 100%; }
    .page-lineage-classic .lineage-hunting-map-controls button { flex: 1; }
    .page-lineage-classic .lineage-hunting-map-stage { height: clamp(290px, 88vw, 360px); }
}
