.loliehx-game-profile {
            --page-bg: #f7f8fb;
            --surface: #ffffff;
            --surface-soft: #f5f7fa;
            --surface-blue: #eef5ff;
            --surface-green: #edf9f2;
            --ink: #181d26;
            --body: #3c4350;
            --muted: #737b89;
            --hairline: #e4e7ec;
            --hairline-strong: #cfd5dd;
            --primary: #3b82f6;
            --primary-deep: #2563eb;
            --primary-soft: #dbeafe;
            --header-height: 64px;
            --main-width: 1280px;
            --radius-small: 8px;
            --radius-card: 14px;
            --shadow-card: 0 1px 2px rgba(16, 24, 40, 0.04), 0 8px 24px rgba(16, 24, 40, 0.04);
            font-family: Inter, "Noto Sans SC", "Microsoft YaHei UI", "Microsoft YaHei", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        }

        .loliehx-game-profile,

        .loliehx-game-profile * {
            box-sizing: border-box;
        }

        .loliehx-game-profile {
            scroll-behavior: smooth;
        }

        .loliehx-game-profile {
            margin: 0;
            min-width: 0;
            width: 100%;
            display: grid;
            align-content: start;
            gap: 28px;
            color: var(--body);
            background: var(--page-bg);
            line-height: 1.6;
        }

        .loliehx-game-profile :where(button, a) {
            font: inherit;
        }

        .loliehx-game-profile :where(a) {
            color: inherit;
            text-decoration: none;
        }

        .loliehx-game-profile :where(button) {
            color: inherit;
        }

        .loliehx-game-profile img {
            display: block;
            max-width: 100%;
        }

        .loliehx-game-profile [hidden] {
            display: none !important;
        }

        .loliehx-site-header {
            position: sticky;
            top: 0;
            z-index: 50;
            height: var(--header-height);
            border-bottom: 1px solid rgba(228, 231, 236, 0.88);
            background: rgba(255, 255, 255, 0.92);
            backdrop-filter: blur(18px);
        }

        .loliehx-site-header-inner {
            width: 100%;
            height: 100%;
            margin: 0 auto;
            padding: 0 28px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 24px;
        }

        .loliehx-brand {
            display: inline-flex;
            align-items: center;
            color: var(--ink);
            font-size: 16px;
            font-weight: 700;
            letter-spacing: -0.02em;
        }

        .loliehx-header-actions {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .loliehx-header-action {
            min-height: 38px;
            padding: 8px 14px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            border: 1px solid transparent;
            border-radius: var(--radius-small);
            color: var(--ink);
            background: transparent;
            font-size: 14px;
            font-weight: 500;
        }

        .loliehx-header-action.primary {
            border-color: var(--primary);
            color: #fff;
            background: var(--primary);
        }

        .loliehx-page-layout {
            min-height: calc(100vh - var(--header-height));
            display: grid;
            grid-template-columns: 232px minmax(0, 1fr);
        }

        .loliehx-sidebar {
            position: sticky;
            top: var(--header-height);
            align-self: start;
            height: calc(100vh - var(--header-height));
            padding: 20px 14px;
            border-right: 1px solid var(--hairline);
            background: rgba(242, 246, 252, 0.76);
            overflow-y: auto;
        }

        .loliehx-sidebar-label {
            margin: 4px 10px 10px;
            color: var(--muted);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.12em;
            text-transform: uppercase;
        }

        .loliehx-sidebar-nav {
            display: grid;
            gap: 4px;
        }

        .loliehx-sidebar-link,
        .loliehx-sidebar-group-title {
            min-height: 42px;
            padding: 9px 12px;
            display: flex;
            align-items: center;
            gap: 10px;
            border-radius: 10px;
            color: #4b5563;
            font-size: 14px;
            font-weight: 500;
        }

        .loliehx-sidebar-link.active {
            color: #fff;
            background: var(--primary);
        }

        .loliehx-sidebar-icon {
            width: 22px;
            text-align: center;
            font-size: 15px;
        }

        .loliehx-sidebar-subnav {
            margin: 2px 0 8px 24px;
            padding-left: 12px;
            display: grid;
            gap: 2px;
            border-left: 1px solid var(--hairline-strong);
        }

        .loliehx-sidebar-sublink {
            padding: 7px 10px;
            border-radius: 8px;
            color: var(--muted);
            font-size: 13px;
        }

        .loliehx-sidebar-sublink.current {
            color: var(--primary-deep);
            background: var(--surface-blue);
            font-weight: 600;
        }

        .loliehx-page-main {
            width: min(100%, var(--main-width));
            margin: 0 auto;
            padding: 32px;
            display: grid;
            align-content: start;
            gap: 28px;
        }

        .loliehx-card {
            border: 1px solid var(--hairline);
            border-radius: var(--radius-card);
            background: var(--surface);
            box-shadow: var(--shadow-card);
        }

        .loliehx-article-card {
            overflow: hidden;
        }

        .loliehx-article-heading {
            padding: 24px 28px 22px;
            border-bottom: 1px dashed var(--hairline-strong);
        }

        .loliehx-breadcrumbs {
            margin: 0 0 12px;
            padding: 0;
            display: flex;
            flex-wrap: wrap;
            gap: 7px;
            list-style: none;
            color: var(--muted);
            font-size: 13px;
        }

        .loliehx-breadcrumbs li:not(:last-child)::after {
            margin-left: 7px;
            content: "/";
            color: #b0b7c2;
        }

        .loliehx-article-title {
            margin: 0;
            color: var(--ink);
            font-size: clamp(24px, 3vw, 34px);
            font-weight: 650;
            line-height: 1.28;
            letter-spacing: -0.035em;
        }

        .loliehx-article-meta {
            margin-top: 18px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            color: var(--muted);
            font-size: 13px;
        }

        .loliehx-article-meta-main,
        .loliehx-author,
        .loliehx-stat-list,
        .loliehx-stat-item {
            display: flex;
            align-items: center;
        }

        .loliehx-article-meta-main {
            flex-wrap: wrap;
            gap: 14px 18px;
        }

        .loliehx-author {
            gap: 8px;
            color: #4b5563;
            font-weight: 600;
        }

        .loliehx-author-avatar {
            width: 28px;
            height: 28px;
            border: 1px solid var(--hairline);
            border-radius: 50%;
            object-fit: cover;
        }

        .loliehx-stat-list {
            gap: 12px;
        }

        .loliehx-stat-item {
            gap: 5px;
            white-space: nowrap;
        }

        .loliehx-stat-symbol {
            width: 18px;
            color: #87909d;
            text-align: center;
            font-size: 15px;
        }

        .loliehx-article-actions {
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }

        .loliehx-like-preview,
        .loliehx-edit-preview,
        .loliehx-download-jump {
            min-height: 36px;
            padding: 7px 13px;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            border: 1px solid #f1c8d9;
            border-radius: 9px;
            color: #b42364;
            background: #fff5f9;
            font-weight: 600;
            white-space: nowrap;
        }

        .loliehx-edit-preview {
            border: 1px solid #d4d9e0;
            border-radius: 9px;
            color: #4b5563;
            background: #f5f6f8;
            text-decoration: none;
        }

        .loliehx-edit-preview:hover {
            border-color: #aeb6c1;
            color: #303846;
            background: #eceff3;
        }

        .loliehx-download-jump {
            border-color: #9ed7b3;
            color: #176c38;
            background: #eaf8ef;
            text-decoration: none;
        }

        .loliehx-download-jump:hover {
            border-color: #72bd8e;
            color: #0f542b;
            background: #dcf3e5;
        }

        .loliehx-game-overview {
            padding: 28px;
            display: grid;
            grid-template-columns: minmax(240px, 320px) minmax(0, 1fr);
            gap: 30px;
        }

        .loliehx-cover-panel {
            margin: 0;
            align-self: start;
        }

        .loliehx-cover-frame {
            overflow: hidden;
            aspect-ratio: 3 / 4;
            border: 1px solid var(--hairline);
            border-radius: 12px;
            background: var(--surface-soft);
        }

        .loliehx-cover-image {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .loliehx-cover-placeholder,
        .loliehx-character-placeholder {
            width: 100%;
            height: 100%;
            display: grid;
            place-items: center;
            color: var(--muted);
            font-size: 12px;
        }

        .loliehx-profile-content {
            min-width: 0;
        }

        .loliehx-profile-title {
            margin: 0;
            color: var(--ink);
            font-size: clamp(24px, 3vw, 36px);
            font-weight: 500;
            line-height: 1.3;
            letter-spacing: -0.025em;
        }

        .loliehx-profile-subtitle {
            margin: 7px 0 0;
            color: var(--muted);
            font-size: 14px;
        }

        .loliehx-game-facts {
            margin: 18px 0 0;
            padding: 0;
            display: flex;
            flex-wrap: wrap;
            gap: 4px 24px;
        }

        .loliehx-game-fact {
            margin: 0;
            color: var(--body);
            font-size: 13px;
            line-height: 1.7;
        }

        .loliehx-game-fact dt,
        .loliehx-game-fact dd {
            display: inline;
        }

        .loliehx-game-fact dt {
            color: var(--muted);
            font-weight: 500;
        }

        .loliehx-game-fact dt::after {
            content: "：";
        }

        .loliehx-game-fact dd {
            margin: 0;
            color: var(--ink);
            font-weight: 600;
        }

        .loliehx-staff-section {
            margin-top: 18px;
        }

        .loliehx-staff-section h3 {
            margin: 0 0 8px;
            color: var(--ink);
            font-size: 14px;
        }

        .loliehx-staff-details {
            display: grid;
            gap: 5px;
        }

        .loliehx-staff-disclosure {
            position: relative;
            min-width: 0;
        }

        .loliehx-staff-disclosure[data-collapsed="true"] {
            max-height: var(--loliehx-staff-collapsed-height);
            overflow: hidden;
        }

        .loliehx-staff-entry {
            margin: 0;
            color: var(--body);
            font-size: 13px;
            line-height: 1.65;
        }

        .loliehx-staff-entry-label {
            color: var(--muted);
            font-weight: 600;
        }

        .loliehx-staff-entry-label::after {
            content: "：";
        }

        .loliehx-staff-entry-value {
            color: var(--ink);
            font-weight: 500;
        }

        .loliehx-staff-expand {
            position: absolute;
            right: 0;
            bottom: 0;
            z-index: 1;
            min-height: var(--loliehx-staff-line-height, 22px);
            margin: 0;
            padding: 0 0 0 30px;
            border: 0;
            color: var(--primary-deep);
            background: linear-gradient(90deg, rgba(255, 255, 255, 0), var(--surface) 26px, var(--surface));
            font-size: 13px;
            font-weight: 650;
            line-height: 1.65;
            cursor: pointer;
        }

        .loliehx-staff-expand:hover {
            color: #1d4ed8;
            text-decoration: underline;
            text-underline-offset: 3px;
        }

        .loliehx-staff-expand:focus-visible {
            outline: 2px solid var(--primary);
            outline-offset: 2px;
            border-radius: 4px;
        }

        .loliehx-content-card {
            overflow: hidden;
        }

        .loliehx-content-heading {
            padding: 0;
            border-bottom: 1px solid var(--hairline);
        }

        .loliehx-content-tabs {
            width: 100%;
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            align-items: center;
            gap: 0;
            background: #fbfcfe;
        }

        .loliehx-tab-button {
            position: relative;
            width: 100%;
            min-height: 56px;
            padding: 12px 18px;
            border: 0;
            color: var(--muted);
            background: transparent;
            font-size: 14px;
            font-weight: 650;
            cursor: pointer;
        }

        .loliehx-tab-button + .loliehx-tab-button {
            border-left: 1px solid var(--hairline);
        }

        .loliehx-tab-button::after {
            position: absolute;
            right: 0;
            bottom: -1px;
            left: 0;
            height: 3px;
            background: transparent;
            content: "";
        }

        .loliehx-tab-button[aria-selected="true"] {
            color: var(--primary-deep);
            background: var(--surface-blue);
        }

        .loliehx-tab-button[aria-selected="true"]::after {
            background: var(--primary);
        }

        .loliehx-tab-button:focus-visible {
            outline: 2px solid var(--primary);
            outline-offset: -3px;
            border-radius: 8px;
        }

        .loliehx-content-panel {
            padding: 28px;
        }

        .loliehx-synopsis-layout {
            display: block;
        }

        .loliehx-synopsis-copy {
            max-width: 84ch;
            margin: 0 auto;
            color: #303744;
            font-size: 16px;
            line-height: 1.85;
        }

        .loliehx-synopsis-copy h3 {
            margin: 0 0 14px;
            color: var(--ink);
            font-size: 18px;
        }

        .loliehx-synopsis-copy p {
            margin: 0 0 16px;
        }

        .loliehx-synopsis-copy p:last-child {
            margin-bottom: 0;
        }

        .loliehx-character-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 16px;
        }

        .loliehx-character-card {
            min-width: 0;
            overflow: hidden;
            display: grid;
            grid-template-columns: 144px minmax(0, 1fr);
            border: 1px solid var(--hairline);
            border-radius: 12px;
            background: var(--surface);
        }

        .loliehx-character-image-wrap {
            position: relative;
            min-height: 238px;
            background: #eef1f5;
        }

        .loliehx-character-placeholder {
            position: absolute;
            inset: 0;
        }

        .loliehx-character-image {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: top center;
        }

        .loliehx-character-body {
            min-width: 0;
            padding: 15px 16px 14px;
            display: flex;
            flex-direction: column;
        }

        .loliehx-character-name {
            margin: 0;
            color: var(--ink);
            font-size: 18px;
            font-weight: 700;
            line-height: 1.35;
        }

        .loliehx-character-original {
            margin: 2px 0 0;
            color: var(--muted);
            font-size: 12px;
        }

        .loliehx-character-aliases {
            margin: 2px 0 0;
            color: var(--muted);
            font-size: 11px;
            line-height: 1.45;
        }

        .loliehx-character-fields {
            margin: 11px 0 0;
            display: grid;
            grid-template-columns: 38px minmax(0, 1fr);
            gap: 5px 8px;
            font-size: 11px;
            line-height: 1.45;
        }

        .loliehx-character-fields dt {
            color: var(--muted);
            font-weight: 650;
        }

        .loliehx-character-fields dd {
            margin: 0;
            min-width: 0;
            color: #3d4654;
            overflow-wrap: anywhere;
        }

        .loliehx-character-description {
            margin: 12px 0 0;
            color: #4a5260;
            font-size: 12px;
            line-height: 1.65;
        }

        .loliehx-resource-card,
        .loliehx-tag-card,
        .loliehx-comments-card {
            padding: 24px;
        }

        .loliehx-section-title-row {
            margin-bottom: 16px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
        }

        .loliehx-section-title-row h2 {
            margin: 0;
            color: var(--ink);
            font-size: 19px;
        }

        .loliehx-section-title-row p {
            margin: 0;
            color: var(--muted);
            font-size: 12px;
        }

        .loliehx-resource-switcher {
            overflow: hidden;
            border: 1px solid var(--hairline);
            border-radius: 10px;
        }

        .loliehx-resource-tabs {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
            border-bottom: 1px solid var(--hairline);
            background: #fbfcfe;
        }

        .loliehx-resource-tab-button {
            position: relative;
            min-height: 44px;
            padding: 9px 14px;
            border: 0;
            color: var(--muted);
            background: transparent;
            font-size: 13px;
            font-weight: 600;
            cursor: pointer;
        }

        .loliehx-resource-tab-button + .loliehx-resource-tab-button {
            border-left: 1px solid var(--hairline);
        }

        .loliehx-resource-tab-button[aria-selected="true"] {
            color: var(--primary-deep);
            background: var(--surface-blue);
        }

        .loliehx-resource-tab-button[aria-selected="true"]::after {
            position: absolute;
            right: 0;
            bottom: -1px;
            left: 0;
            height: 2px;
            background: var(--primary);
            content: "";
        }

        .loliehx-resource-tab-button:focus-visible {
            outline: 2px solid var(--primary);
            outline-offset: -3px;
        }

        .loliehx-resource-panel {
            padding: 14px;
        }

        .loliehx-resource-list {
            display: grid;
            gap: 10px;
        }

        .loliehx-resource-item {
            padding: 16px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            border: 1px solid var(--hairline);
            border-radius: 11px;
            background: var(--surface);
        }

        .loliehx-resource-name {
            margin: 0;
            color: var(--ink);
            font-size: 14px;
            font-weight: 650;
        }

        .loliehx-resource-code {
            margin: 4px 0 0;
            color: var(--muted);
            font-size: 11px;
        }

        .loliehx-resource-button {
            flex: none;
            min-height: 38px;
            padding: 8px 13px;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            border: 1px solid #b8d1fb;
            border-radius: 8px;
            color: var(--primary-deep);
            background: #eaf2ff;
            font-size: 12px;
            font-weight: 700;
        }

        .loliehx-tag-list {
            margin: 0;
            padding: 0;
            display: flex;
            flex-wrap: wrap;
            gap: 9px;
            list-style: none;
        }

        .loliehx-tag-item {
            padding: 6px 11px;
            border: 1px solid #c4b5fd;
            border-radius: 8px;
            color: #6d28d9;
            background: #faf8ff;
            font-size: 12px;
            font-weight: 600;
        }

        .loliehx-empty-comments {
            padding: 26px;
            border: 1px dashed var(--hairline-strong);
            border-radius: 11px;
            color: var(--muted);
            background: #fbfcfd;
            text-align: center;
            font-size: 13px;
        }

        .loliehx-page-note {
            padding: 0 4px 12px;
            color: var(--muted);
            font-size: 11px;
            text-align: center;
        }

        @media (max-width: 1120px) {
            .loliehx-page-layout {
                grid-template-columns: 200px minmax(0, 1fr);
            }

            .loliehx-game-overview {
                grid-template-columns: minmax(210px, 280px) minmax(0, 1fr);
            }

            .loliehx-character-grid {
                grid-template-columns: 1fr;
            }
        }

        @media (max-width: 820px) {
            .loliehx-site-header-inner {
                padding: 0 18px;
            }

            .loliehx-header-action:not(.loliehx-primary) {
                display: none;
            }

            .loliehx-page-layout {
                display: block;
            }

            .loliehx-sidebar {
                display: none;
            }

            .loliehx-page-main {
                padding: 20px;
                gap: 20px;
            }

            .loliehx-game-overview {
                grid-template-columns: 1fr;
            }

            .loliehx-cover-panel {
                width: min(100%, 360px);
                margin: 0 auto;
            }

            .loliehx-staff-disclosure[data-collapsed="true"] {
                max-height: none;
                overflow: visible;
            }

            .loliehx-staff-expand {
                display: none;
            }

            .loliehx-content-panel {
                padding: 22px 20px;
            }

        }

        @media (max-width: 580px) {
            .loliehx-site-header-inner {
                padding: 0 14px;
            }

            .loliehx-header-action.primary {
                min-height: 34px;
                padding: 6px 10px;
            }

            .loliehx-page-main {
                padding: 14px;
            }

            .loliehx-article-heading,
            .loliehx-game-overview,
            .loliehx-resource-card,
            .loliehx-tag-card,
            .loliehx-comments-card {
                padding: 18px;
            }

            .loliehx-article-meta {
                align-items: flex-start;
                flex-direction: column;
            }

            .loliehx-game-facts {
                display: grid;
                gap: 2px;
            }

            .loliehx-character-card {
                grid-template-columns: 116px minmax(0, 1fr);
            }

            .loliehx-character-image-wrap {
                min-height: 250px;
            }

            .loliehx-character-fields {
                grid-template-columns: 38px minmax(0, 1fr);
            }

            .loliehx-resource-item {
                align-items: flex-start;
                flex-direction: column;
            }
        }

        @media (max-width: 400px) {
            .loliehx-brand {
                gap: 8px;
                font-size: 14px;
            }

            .loliehx-character-card {
                display: block;
            }

            .loliehx-character-image-wrap {
                height: 320px;
                min-height: 0;
            }
        }
