/*
Theme Name: Lichii
Theme URI: http://example.com/daily-red/
Author: You
Author URI: http://example.com/
Description: A basic, lightweight WordPress theme with a red accent.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: daily-red
*/


.hero {
position: relative;
    overflow: hidden;
    background: #ffeadf url(
        "https://www.mumuplayer.com/res/cms/res/kv_bg.DtFpqCT3.jpg"
    ) center top / cover no-repeat;

    font-family: -apple-system, BlinkMacSystemFont,
        "Segoe UI", Roboto, Arial, sans-serif;
    color: #41001e;
}

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

.hero .hero-container {
max-width: 1280px;
    padding: 60px 40px;
    margin: 0 auto;

    display: flex;
    align-items: center;
    position: relative;
}

.hero .hero-content {
position: relative;
    z-index: 2;
    width: 48%;
    max-width: 580px;
}

.hero .hero-content h1 {
font-size: 52px;
    line-height: 1.3;
    letter-spacing: -1.5px;
    font-weight: 700;
    text-align: left;
    margin: 0 0 28px;
    padding: 0;
}

.hero .hero-description {
font-size: 20px;
    line-height: 1.5;
    color: rgba(65,0,30,.75);
    text-align: left;
    margin: 0 0 32px;
}

.hero .hero-actions {
display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.hero .hero-download {
height: 62px;
    padding: 0 28px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;

    background: linear-gradient(#d90050, #f01c68);
    border: 1px solid #b80043;
    border-radius: 4px;

    box-shadow: 0 2px 8px rgba(11,46,85,.25);

    color: #fff;
    font-size: 20px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;

    transition: background .2s, box-shadow .2s;
}

.hero .hero-download:hover {
background: linear-gradient(#ed387b, #f3568f);
    color: #fff;
}

.hero .download-icon {
display: block;
    width: 28px;
    height: 28px;
    fill: currentColor;
    flex-shrink: 0;
}

.hero .hero-explore {
height: 62px;
    padding: 0 26px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    background: rgba(255,255,255,.65);
    border: 1px solid #f0bdc9;
    border-radius: 4px;

    color: #d90050;
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}

.hero .hero-explore:hover {
background: #fff;
}

.hero .hero-visual {
width: 52%;
}

.hero .hero-image {
display: block;
    height: auto;
    width: 100%;
    object-fit: contain;
    max-width: 300px;
    margin: auto;
}

.hero .platforms {
position: relative;
    z-index: 3;

    display: flex;
    align-items: stretch;
    justify-content: center;
    gap: 26px;

    padding: 0 20px 40px;
}

.hero .platform-card {
position: relative;

    width: 138px;
    height: 154px;
    padding: 20px 8px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 26px;

    background: #fff;
    border: 1px solid rgba(217,0,80,.14);
    border-radius: 9px;
    box-shadow: 0 2px 8px rgba(98,25,53,.08);

    cursor: pointer;
    font-family: inherit;

    transition:
        transform .25s,
        box-shadow .25s,
        border-color .25s;
}

.hero .platform-card:hover {
transform: translateY(-5px);
    box-shadow: 0 5px 18px rgba(98,25,53,.18);
}

.hero .platform-card.active {
border-color: #d90050;
}

.hero .platform-icon {
width: 43px;
    height: 43px;
    display: block;
    fill: #805267;
    flex-shrink: 0;
}

.hero .platform-name {
color: #805267;
    font-size: 17px;
    line-height: 22px;
    white-space: nowrap;
    text-align: center;
}

.hero .platform-card.active .platform-name {
color: #d90050;
}

.hero .platform-badge {
position: absolute;
    left: 0;
    top: 0;

    padding: 3px 10px;
    background: #fff0e8;
    color: #d90050;

    border-radius: 8px 0 8px 0;
    font-size: 14px;
}

@media (max-width: 1280px) {
.hero .hero-content h1 {
font-size: 44px;
}
}

@media (max-width: 1024px) {
.hero .hero-container {
height: auto;
        padding: 65px 25px 0;
        flex-direction: column;
        text-align: center;
}

.hero .hero-content {
width: 100%;
        max-width: 650px;
}

.hero .hero-content h1,
.hero .hero-description {
text-align: center;
}

.hero .hero-actions {
justify-content: center;
}

.hero .hero-visual {
position: relative;
        left: auto;
        top: auto;
        width: 100%;
        height: auto;
        margin-top: 35px;
        transform: none;
}

.hero .hero-image {
width: 100%;
        height: auto;
}

.hero .platforms {
margin-top: 30px;
}
}

@media (max-width: 768px) {
.hero .hero-container {
padding: 50px 16px 0;
}

.hero .hero-content h1 {
font-size: 28px;
        line-height: 1.3;
        letter-spacing: -.5px;
        margin-bottom: 18px;
}

.hero .hero-description {
font-size: 14px;
        line-height: 22px;
        margin-bottom: 25px;
}

.hero .hero-actions {
flex-direction: column;
        gap: 12px;
}

.hero .hero-download {
height: 48px;
        padding: 0 20px;
        font-size: 16px;
}

.hero .download-icon {
width: 23px;
        height: 23px;
}

.hero .hero-explore {
height: 44px;
        font-size: 14px;
}

.hero .hero-visual {
margin-top: 26px;
}

.hero .platforms {
gap: 8px;
        padding: 10px 10px 35px;
        margin-top: 10px;
}

.hero .platform-card {
flex: 1;
        min-width: 0;
        width: auto;
        max-width: 92px;
        height: 100px;
        padding: 13px 3px 10px;
        gap: 15px;
        border-radius: 6px;
}

.hero .platform-icon {
width: 32px;
        height: 32px;
}

.hero .platform-name {
font-size: 11px;
        line-height: 14px;
        white-space: normal;
}

.hero .platform-badge {
font-size: 10px;
        padding: 1px 5px;
}
}

@media (max-width: 380px) {
.hero .hero-content h1 {
font-size: 25px;
}

.hero .platforms {
gap: 5px;
        padding-left: 6px;
        padding-right: 6px;
}

.hero .platform-icon {
width: 27px;
        height: 27px;
}

.hero .platform-name {
font-size: 10px;
}
}


/* ========== HOMEPAGE — BENEFITS ========== */
.benefits-section {
background: #fff1e9;
    padding: 55px 20px 75px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

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

.benefits-section .benefits-container {
width: 100%;
    max-width: 1200px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.benefits-section .benefit-card {
display: flex;
    align-items: flex-start;
    gap: 18px;

    padding: 28px 25px;

    background: #fff9f6;
    border: 1px solid rgba(217, 0, 80, .14);
    border-radius: 12px;

    box-shadow: 0 3px 12px rgba(98,25,53,.07);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.benefits-section .benefit-card:hover {
transform: translateY(-4px);
    border-color: rgba(217,0,80,.3);
    box-shadow: 0 8px 24px rgba(98,25,53,.13);
}

.benefits-section .benefit-icon {
flex-shrink: 0;

    width: 52px;
    height: 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #fff0e8;
    border-radius: 12px;

    color: #d90050;
}

.benefits-section .benefit-icon svg {
width: 27px;
    height: 27px;
    display: block;
}

.benefits-section .benefit-content {
flex: 1;
    min-width: 0;
}

.benefits-section .benefit-content h3 {
margin: 1px 0 10px;
    padding: 0;

    color: #41001e;
    font-size: 19px;
    font-weight: 650;
    line-height: 1.35;
    letter-spacing: -.3px;
}

.benefits-section .benefit-content p {
margin: 0;
    padding: 0;

    color: rgba(65,0,30,.72);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.75;
}

.benefits-section .benefit-content a {
color: #d90050;
    text-decoration: none;
    font-weight: 500;
}

.benefits-section .benefit-content a:hover {
text-decoration: underline;
}

@media (max-width: 1024px) {
.benefits-section .benefits-container {
gap: 14px;
}

.benefits-section .benefit-card {
flex-direction: column;
        gap: 16px;
        padding: 24px 20px;
}

.benefits-section .benefit-content h3 {
font-size: 18px;
}
}

@media (max-width: 700px) {
.benefits-section {
padding: 35px 16px 55px;
}

.benefits-section .benefits-container {
grid-template-columns: 1fr;
        gap: 12px;
}

.benefits-section .benefit-card {
flex-direction: row;
        align-items: flex-start;
        gap: 15px;
        padding: 20px;
        border-radius: 10px;
}

.benefits-section .benefit-icon {
width: 44px;
        height: 44px;
        border-radius: 10px;
}

.benefits-section .benefit-icon svg {
width: 24px;
        height: 24px;
}

.benefits-section .benefit-content h3 {
font-size: 17px;
        margin-bottom: 6px;
}

.benefits-section .benefit-content p {
font-size: 13px;
        line-height: 1.65;
}
}


/* ========== HOMEPAGE — DOWNLOADS ========== */
.downloads-section .download-panel[hidden] {
display: none !important;
}

.downloads-section .download-panel.active {
display: grid;
}

@media (max-width: 1024px) {
.downloads-section .download-panel.active {
grid-template-columns: 1fr;
}
}

.downloads-section {
--dl-blue: #d90050;
    --dl-blue-dark: #b80043;
    --dl-background: #ffeadf;
    --dl-text: #41001e;
    --dl-muted: #805267;
    --dl-border: #f0c9d0;

    background: var(--dl-background);
    font-family: -apple-system, BlinkMacSystemFont,
        "Segoe UI", Roboto, Arial, sans-serif;
    padding: 90px 0 85px;
    color: var(--dl-text);
}

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

.downloads-section .downloads-container {
width: calc(100% - 80px);
    max-width: 1200px;
    margin: 0 auto;
}

.downloads-section .downloads-header {
margin-bottom: 50px;
}

.downloads-section .downloads-header h2 {
margin: 0 0 18px;
    padding: 0;
    color: var(--dl-text);
    font-size: 30px;
    font-weight: 750;
    line-height: 1.15;
}

.downloads-section .downloads-header p {
margin: 0;
    max-width: 760px;

    color: #632c41;
    font-size: 18px;
    line-height: 1.7;
}

.downloads-section .downloads-header p a {
color: var(--dl-blue);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.downloads-section .download-tabs {
display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 56px;
}

.downloads-section .download-tab {
min-width: 150px;
    height: 54px;
    padding: 0 24px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;

    background: #fff;
    border: 1px solid #f0c9d0;
    border-radius: 9px;

    color: #41001e;
    font-family: inherit;
    font-size: 17px;
    font-weight: 600;

    cursor: pointer;

    transition:
        background .2s,
        color .2s,
        border-color .2s,
        box-shadow .2s;
}

.downloads-section .download-tab svg {
width: 22px;
    height: 22px;
    flex-shrink: 0;
}

.downloads-section .download-tab:hover {
border-color: #ea80a1;
    background: #fff5ef;
}

.downloads-section .download-tab.active {
background: var(--dl-blue);
    border-color: var(--dl-blue);
    color: #fff;
    box-shadow: 0 3px 9px rgba(217,0,80,.18);
}

.downloads-section .download-tab.active:hover {
background: var(--dl-blue-dark);
}

.downloads-section .download-tab:focus-visible {
outline: 3px solid #ea80a1;
    outline-offset: 3px;
}

.downloads-section .downloads-layout {
display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.45fr);
    gap: 65px;
    align-items: start;
    min-height: 325px;
}

.downloads-section .installation-panel h3 {
margin: 0 0 12px;
    padding: 0;

    color: var(--dl-text);
    font-size: 25px;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: -.5px;
}

.downloads-section .install-subtitle {
color: var(--dl-muted);
    font-size: 15px;
    line-height: 1.65;
    margin: 0 0 24px;
}

.downloads-section .install-steps {
list-style: none;
    padding: 0;
    margin: 0;

    display: flex;
    flex-direction: column;
    gap: 23px;
}

.downloads-section .install-steps li {
display: flex;
    align-items: flex-start;
    gap: 16px;

    font-size: 16px;
    line-height: 1.65;
    color: #510e2a;
}

.downloads-section .step-number {
flex-shrink: 0;

    width: 36px;
    height: 36px;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--dl-blue);
    color: #fff;

    font-size: 15px;
    font-weight: 700;
}

.downloads-section .step-body {
flex: 1;
    min-width: 0;
    padding-top: 4px;
}

.downloads-section .step-body code {
display: block;
    max-width: 100%;
    margin-top: 12px;
    padding: 12px 15px;

    background: #41001e;
    color: #fff;
    border-radius: 8px;

    font-family: Consolas, Monaco, monospace;
    font-size: 13px;
    line-height: 1.6;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}

.downloads-section .download-options {
min-width: 0;
}

.downloads-section .download-columns {
display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
}

.downloads-section .download-columns.single {
grid-template-columns: minmax(0, 1fr);
    max-width: 470px;
}

.downloads-section .download-column {
min-width: 0;
}

.downloads-section .download-column h4 {
margin: 0 0 20px;

    font-size: 15px;
    font-weight: 700;
    color: #510e2a;
    line-height: 1.4;
}

.downloads-section .download-entry {
margin-bottom: 20px;
}

.downloads-section .download-file {
width: 100%;
    min-height: 58px;
    padding: 14px 18px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;

    background: #fff;
    border: 1px solid var(--dl-border);
    border-radius: 9px;

    color: #41001e;
    text-decoration: none;
    font-size: 15px;
    font-weight: 650;

    transition:
        border-color .2s,
        box-shadow .2s,
        background .2s;
}

.downloads-section .download-file:hover {
border-color: #ea80a1;
    box-shadow: 0 3px 12px rgba(217,0,80,.10);
}

.downloads-section .download-file.recommended {
background: var(--dl-blue);
    border-color: var(--dl-blue);
    color: #fff;
}

.downloads-section .download-file.recommended:hover {
background: var(--dl-blue-dark);
    border-color: var(--dl-blue-dark);
}

.downloads-section .download-file-left {
display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.downloads-section .download-file-left svg {
width: 21px;
    height: 21px;
    flex-shrink: 0;
}

.downloads-section .download-file-name {
overflow-wrap: anywhere;
}

.downloads-section .download-file-size {
white-space: nowrap;
    flex-shrink: 0;
    font-weight: 700;
}

.downloads-section .download-description {
margin: 8px 0 0;
    padding: 0 4px 0 15px;

    color: #805267;
    font-size: 13px;
    line-height: 1.6;
}

.downloads-section .download-hash {
padding: 0 4px 0 15px;
    margin-top: 10px;

    color: #805267;
    font-size: 12px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.downloads-section .download-disclaimer {
margin: 45px 0 0;
    padding-top: 22px;

    border-top: 1px solid #f2d2d3;

    color: #805267;
    font-size: 13px;
    line-height: 1.7;
}

@media (max-width: 1024px) {
.downloads-section {
padding: 70px 0;
}

.downloads-section .downloads-container {
width: calc(100% - 50px);
}

.downloads-section .downloads-layout {
grid-template-columns: 1fr;
        gap: 42px;
        min-height: 0;
}

.downloads-section .download-columns.single {
max-width: 100%;
}

.downloads-section .download-columns {
gap: 20px;
}

.downloads-section .download-tabs {
margin-bottom: 40px;
}
}

@media (max-width: 650px) {
.downloads-section {
padding: 55px 0;
}

.downloads-section .downloads-container {
width: calc(100% - 32px);
}

.downloads-section .downloads-header {
margin-bottom: 30px;
}

.downloads-section .downloads-header h2 {
font-size: 34px;
        letter-spacing: -1px;
        margin-bottom: 14px;
}

.downloads-section .downloads-header p {
font-size: 14px;
        line-height: 1.7;
}

.downloads-section .download-tabs {
gap: 7px;
        flex-wrap: nowrap;
        margin-bottom: 34px;
}

.downloads-section .download-tab {
flex: 1;
        min-width: 0;
        height: 47px;

        padding: 0 8px;
        gap: 7px;

        font-size: 13px;
        border-radius: 7px;
}

.downloads-section .download-tab svg {
width: 18px;
        height: 18px;
}

.downloads-section .downloads-layout {
gap: 35px;
}

.downloads-section .installation-panel h3 {
font-size: 21px;
}

.downloads-section .install-subtitle {
font-size: 13px;
        margin-bottom: 20px;
}

.downloads-section .install-steps {
gap: 18px;
}

.downloads-section .install-steps li {
font-size: 14px;
        gap: 12px;
}

.downloads-section .step-number {
width: 31px;
        height: 31px;
        font-size: 13px;
}

.downloads-section .download-columns {
grid-template-columns: 1fr;
        gap: 26px;
}

.downloads-section .download-column h4 {
font-size: 14px;
        margin-bottom: 14px;
}

.downloads-section .download-file {
min-height: 54px;
        padding: 12px 15px;
        font-size: 13px;
}

.downloads-section .download-file-size {
font-size: 13px;
}

.downloads-section .download-description {
font-size: 12px;
}

.downloads-section .download-disclaimer {
font-size: 12px;
        margin-top: 35px;
}
}

@media (prefers-reduced-motion: reduce) {
.downloads-section * {
transition: none !important;
}
}


/* ========== HOMEPAGE — RECENT BUILDS ========== */
.builds-section {
background: #fff1e9;
    padding: 80px 0 90px;
    color: #41001e;

    font-family: -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Ubuntu,
        Arial,
        sans-serif;
}

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

.builds-section .builds-container {
width: calc(100% - 80px);
    max-width: 1200px;
    margin: 0 auto;
}

.builds-section .builds-heading {
margin-bottom: 50px;
}

.builds-section .builds-heading h2 {
margin: 0 0 16px;
    padding: 0;

    font-size: 48px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -1px;
    color: #41001e;
}

.builds-section .builds-heading p {
max-width: 760px;
    margin: 0;

    font-size: 18px;
    line-height: 1.7;
    color: rgba(65,0,30,.75);
}

.builds-section .update-list {
position: relative;
    width: 100%;
    margin: 55px auto 0;
}

.builds-section .update-list::before {
content: "";
    position: absolute;

    top: 10px;
    bottom: 30px;
    left: 7px;

    width: 0;
    border-left: 2px dashed rgba(47, 47, 48, .25);
}

.builds-section .update-item {
position: relative;
    z-index: 2;

    width: 100%;
    margin-bottom: 40px;
}

.builds-section .update-item:last-child {
margin-bottom: 0;
}

.builds-section .update-date {
position: relative;
    z-index: 3;

    padding-left: 30px;
    margin-bottom: 20px;

    color: #d90050;
    font-size: 18px;
    line-height: 26px;
    font-weight: 500;
}

.builds-section .update-date::before {
content: "";
    position: absolute;

    top: 5px;
    left: 0;

    width: 16px;
    height: 16px;

    background: #d90050;
    border: 3px solid #ffeadf;
    border-radius: 50%;

    box-shadow: 0 0 0 2px #d90050;
}

.builds-section .update-content {
padding-left: 40px;
}

.builds-section .update-card {
position: relative;
    width: 100%;

    padding: 35px 40px;

    background: rgba(255, 255, 255, .6);

    border: 1px solid rgba(51, 92, 255, .1);
    border-radius: 8px;

    transition:
        background .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;
}

.builds-section .update-card:hover {
background: rgba(255, 255, 255, .9);
    border-color: rgba(217,0,80,.2);

    box-shadow:
        0 5px 20px rgba(108, 138, 182, .1);
}

.builds-section .update-card h3 {
margin: 0;
    padding: 0;

    color: #41001e;

    font-size: 24px;
    line-height: 1.4;
    font-weight: 600;
}

.builds-section .update-description {
margin-top: 28px;
}

.builds-section .update-category {
margin: 0 0 14px;

    color: #2f2f30bf;
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
}

.builds-section .update-description ul {
padding: 0;
    margin: 0;
    list-style: none;
}

.builds-section .update-description li {
position: relative;
    padding-left: 18px;
    margin-bottom: 12px;

    color: rgba(65,0,30,.75);

    font-size: 16px;
    line-height: 1.7;
}

.builds-section .update-description li:last-child {
margin-bottom: 0;
}

.builds-section .update-description li::before {
content: "";
    position: absolute;

    left: 0;
    top: 11px;

    width: 6px;
    height: 6px;

    background: rgba(65,0,30,.75);
    border-radius: 50%;
}

.builds-section .update-link {
display: inline-block;
    margin-top: 20px;

    color: #d90050;
    font-size: 15px;
    line-height: 1.5;
    font-weight: 600;

    text-decoration: none;
}

.builds-section .update-link:hover {
color: #f01c68;
    text-decoration: underline;
}

.builds-section .builds-footer {
margin-top: 40px;
    padding-left: 40px;
}

.builds-section .builds-more {
display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 48px;
    padding: 11px 24px;

    background: #d90050;
    border: 1px solid #d90050;
    border-radius: 5px;

    color: #fff;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;

    transition: background .2s;
}

.builds-section .builds-more:hover {
background: #f01c68;
    color: #fff;
}

@media (max-width: 1024px) {
.builds-section {
padding: 65px 0 75px;
}

.builds-section .builds-container {
width: calc(100% - 50px);
}

.builds-section .builds-heading h2 {
font-size: 40px;
}

.builds-section .update-card {
padding: 30px 32px;
}

.builds-section .update-card h3 {
font-size: 21px;
}
}

@media (max-width: 768px) {
.builds-section {
padding: 50px 0 60px;
}

.builds-section .builds-container {
width: calc(100% - 32px);
}

.builds-section .builds-heading {
margin-bottom: 30px;
}

.builds-section .builds-heading h2 {
font-size: 32px;
        line-height: 1.25;
        letter-spacing: -.5px;
        margin-bottom: 12px;
}

.builds-section .builds-heading p {
font-size: 14px;
        line-height: 1.7;
}

.builds-section .update-list {
margin-top: 30px;
}

.builds-section .update-list::before {
display: none;
}

.builds-section .update-item {
margin-bottom: 25px;
}

.builds-section .update-date {
padding-left: 28px;
        margin-bottom: 12px;

        font-size: 15px;
        line-height: 24px;
}

.builds-section .update-date::before {
top: 6px;
        width: 13px;
        height: 13px;
        border-width: 2px;
}

.builds-section .update-content {
padding-left: 0;
}

.builds-section .update-card {
padding: 20px 18px;
        border-radius: 7px;
}

.builds-section .update-card h3 {
font-size: 18px;
        line-height: 1.5;
}

.builds-section .update-description {
margin-top: 20px;
}

.builds-section .update-category {
font-size: 14px;
        margin-bottom: 12px;
}

.builds-section .update-description li {
padding-left: 15px;
        margin-bottom: 10px;

        font-size: 14px;
        line-height: 1.65;
}

.builds-section .update-description li::before {
top: 9px;
        width: 5px;
        height: 5px;
}

.builds-section .update-link {
font-size: 14px;
        margin-top: 16px;
}

.builds-section .builds-footer {
padding-left: 0;
        margin-top: 30px;
}

.builds-section .builds-more {
min-height: 44px;
        padding: 10px 20px;
        font-size: 14px;
}
}

.builds-section a:focus-visible {
outline: 2px solid #d90050;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
.builds-section .update-card,
.builds-section .builds-more {
transition: none;
}
}


/* ========== HOMEPAGE — SYSTEM REQUIREMENTS ========== */
.system-req-section {
background: #ffeadf;
    padding: 65px 0;

    font-family: -apple-system, BlinkMacSystemFont,
        "Segoe UI", Roboto, Arial, sans-serif;

    color: #41001e;
}

.system-req-section *,
.system-req-section *::before,
.system-req-section *::after {
box-sizing: border-box;
}

.system-req-section .system-req-container {
width: calc(100% - 80px);
    max-width: 1200px;
    margin: 0 auto;
}

.system-req-section .system-req-card {
width: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 28px;

    padding: 32px;

    background: #fff;
    border: 1px solid rgba(51, 92, 255, .1);
    border-radius: 8px;
}

.system-req-section .system-req-title {
margin: 0;
    padding: 0;

    font-size: 24px;
    font-weight: 600;
    line-height: 1.4;
    color: #d90050;
}

.system-req-section .system-req-grid {
width: 100%;

    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 40px;
}

.system-req-section .system-req-column {
min-width: 0;

    display: flex;
    flex-direction: column;

    padding: 20px;

    border: 1px solid #f0f0f0;
    border-radius: 8px;
}

.system-req-section .system-req-header {
display: flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 20px;
}

.system-req-section .system-req-icon {
width: 28px;
    height: 28px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #d90050;
    flex-shrink: 0;
}

.system-req-section .system-req-icon svg {
display: block;
    width: 28px;
    height: 28px;
}

.system-req-section .system-req-header h3 {
margin: 0;
    padding: 0;

    font-size: 18px;
    line-height: 1.4;
    font-weight: 600;
    color: #41001e;
}

.system-req-section .system-req-row {
display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;

    padding: 8px 0;

    border-bottom: 1px solid #f5f5f5;
}

.system-req-section .system-req-row:nth-last-of-type(1) {
border-bottom: none;
    margin-bottom: 16px;
}

.system-req-section .system-req-label {
color: #666;

    font-size: 14px;
    line-height: 1.55;
    font-weight: 500;
}

.system-req-section .system-req-value {
color: #41001e;

    font-size: 14px;
    line-height: 1.55;
    font-weight: 500;

    text-align: right;
    overflow-wrap: anywhere;
}

.system-req-section .system-req-note {
margin: 0 0 20px;
    padding: 0;

    color: #888;
    font-size: 12px;
    line-height: 1.5;
}

.system-req-section .system-req-note a {
color: #d90050;
    text-decoration: none;
}

.system-req-section .system-req-note a:hover {
text-decoration: underline;
}

.system-req-section .system-req-download {
display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    width: 100%;
    min-height: 48px;

    margin-top: auto;
    padding: 12px 16px;

    background: #d90050;
    border: none;
    border-radius: 4px;

    color: #fff;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 600;

    text-decoration: none;
    text-align: center;

    transition: background .2s ease;
}

.system-req-section .system-req-download:hover {
background: #b80043;
    color: #fff;
}

.system-req-section .system-req-download svg {
width: 20px;
    height: 20px;
    flex-shrink: 0;
}

@media (max-width: 1024px) {
.system-req-section .system-req-container {
width: calc(100% - 50px);
}

.system-req-section .system-req-grid {
gap: 20px;
}

.system-req-section .system-req-card {
padding: 25px;
}
}

@media (max-width: 768px) {
.system-req-section {
padding: 40px 0;
}

.system-req-section .system-req-container {
width: calc(100% - 32px);
}

.system-req-section .system-req-card {
padding: 20px;
        gap: 20px;
        border-radius: 8px;
}

.system-req-section .system-req-title {
font-size: 20px;
}

.system-req-section .system-req-grid {
grid-template-columns: 1fr;
        gap: 16px;
}

.system-req-section .system-req-column {
padding: 16px;

        background: #fff5ef;
        border-radius: 8px;
}

.system-req-section .system-req-header {
gap: 8px;
        margin-bottom: 12px;
}

.system-req-section .system-req-header h3 {
font-size: 16px;
}

.system-req-section .system-req-row {
gap: 12px;
        padding: 6px 0;
}

.system-req-section .system-req-label,
.system-req-section .system-req-value {
font-size: 12px;
}

.system-req-section .system-req-value {
max-width: 60%;
}

.system-req-section .system-req-note {
font-size: 11px;
        line-height: 1.5;
        margin-bottom: 18px;
}

.system-req-section .system-req-download {
min-height: 44px;
        font-size: 14px;
}
}

.system-req-section .system-req-download:focus-visible {
outline: 3px solid #ea80a1;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
.system-req-section .system-req-download {
transition: none;
}
}


/* ========== HOMEPAGE — INTERACTIVE FEATURES ========== */
.emulator-features {
--ef-blue: #d90050;
    --ef-text: #41001e;
    --ef-muted: #805267;
    --ef-border: rgba(51, 92, 255, .1);

    background: #ffeadf;
    padding: 75px 0 90px;

    font-family: -apple-system, BlinkMacSystemFont,
        "Segoe UI", Roboto, Arial, sans-serif;

    color: var(--ef-text);
}

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

.emulator-features .ef-container {
width: calc(100% - 80px);
    max-width: 1200px;
    margin: 0 auto;
}

.emulator-features .ef-heading {
margin-bottom: 38px;
}

.emulator-features .ef-heading h2 {
margin: 0 0 14px;
    padding: 0;

    font-size: clamp(32px, 4vw, 48px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -1.2px;
    color: #41001e;
}

.emulator-features .ef-heading p {
margin: 0;
    max-width: 720px;
    color: #805267;
    font-size: 18px;
    line-height: 1.65;
}

.emulator-features .ef-layout {
display: grid;
    grid-template-columns: 44% 56%;

    background: #fff;
    border: 1px solid var(--ef-border);
    border-radius: 8px;

    padding: 32px 38px 32px 20px;
    min-width: 0;
}

.emulator-features .ef-sidebar {
display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0;
    padding-right: 28px;
}

.emulator-features .ef-tab {
width: 100%;
    min-height: 88px;

    display: flex;
    align-items: center;
    text-align: left;
    gap: 18px;

    padding: 14px 18px;

    background: transparent;
    border: none;
    border-radius: 8px;

    font-family: inherit;
    cursor: pointer;
    transition: background .2s;
}

.emulator-features .ef-tab:hover,
.emulator-features .ef-tab.active {
background: rgba(217,0,80,.10);
}

.emulator-features .ef-tab:focus-visible {
outline: 2px solid #d90050;
    outline-offset: -2px;
}

.emulator-features .ef-tab-icon {
width: 52px;
    height: 52px;
    flex-shrink: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #805267;
    background: #fff2ec;
    border-radius: 12px;

    transition: background .2s, color .2s;
}

.emulator-features .ef-tab-icon svg {
width: 27px;
    height: 27px;
}

.emulator-features .ef-tab.active .ef-tab-icon,
.emulator-features .ef-tab:hover .ef-tab-icon {
background: #ffe0e7;
    color: #d90050;
}

.emulator-features .ef-tab-text {
flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.emulator-features .ef-tab-text strong {
font-size: 19px;
    font-weight: 600;
    line-height: 1.35;
    color: #510e2a;
}

.emulator-features .ef-tab.active .ef-tab-text strong {
color: #d90050;
}

.emulator-features .ef-tab-text small {
font-size: 13px;
    font-weight: 400;
    color: #956578;
    line-height: 1.4;
}

.emulator-features .ef-tab-arrow {
color: #956578;
    font-size: 30px;
    line-height: 1;
    font-weight: 300;
    transition: transform .2s, color .2s;
}

.emulator-features .ef-tab:hover .ef-tab-arrow,
.emulator-features .ef-tab.active .ef-tab-arrow {
color: #d90050;
    transform: translateX(3px);
}

.emulator-features .ef-preview {
min-width: 0;
    align-self: center;
}

.emulator-features .ef-panel {
animation: lichiiEfFade .25s ease;
}

.emulator-features .ef-panel[hidden] {
display: none !important;
}

@keyframes lichiiEfFade {

    from {
        opacity: 0;
        transform: translateY(6px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }

}

.emulator-features .ef-visual {
height: 315px;
    width: 100%;
    overflow: hidden;
    position: relative;

    border: 1px solid #f0c9d0;
    border-radius: 9px;

    display: flex;
    flex-direction: column;
}

.emulator-features .ef-demo-header {
min-height: 48px;
    padding: 0 20px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;

    position: relative;
    z-index: 2;

    background: rgba(255,255,255,.8);
    border-bottom: 1px solid rgba(98,25,53,.12);
}

.emulator-features .ef-demo-label {
color: #805267;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
}

.emulator-features .ef-demo-indicator {
display: inline-flex;
    align-items: center;
    gap: 7px;

    color: #805267;
    font-size: 11px;
    font-weight: 500;
}

.emulator-features .ef-demo-indicator > span {
width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #a4c900;
}

.emulator-features .ef-demo-footer {
min-height: 39px;
    padding: 0 18px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;

    position: relative;
    z-index: 2;

    background: rgba(255,255,255,.92);
    border-top: 1px solid rgba(98,25,53,.12);

    color: #805267;
    font-size: 11px;
}

.emulator-features .ef-graphics {
background: #ffeadf;
}

.emulator-features .ef-graphics-scene {
position: relative;
    flex: 1;
    min-height: 0;
    overflow: hidden;

    background: linear-gradient(
        180deg,
        #ffe2bd 0%,
        #fff7ed 62%,
        #edb8a6 100%
    );
}

.emulator-features .ef-scene-glow {
position: absolute;
    inset: 0 0 auto auto;
    width: 75%;
    height: 100%;
    background: radial-gradient(
        ellipse at 65% 25%,
        rgba(255,255,255,.95),
        transparent 55%
    );
}

.emulator-features .ef-scene-sun {
position: absolute;
    right: 23%;
    top: 27px;

    width: 75px;
    height: 75px;
    border-radius: 50%;

    background: #f0ff34;
    box-shadow: 0 0 50px #f0ff34;
}

.emulator-features .ef-scene-mountain {
position: absolute;
    left: -10%;
    bottom: 0;
    width: 120%;
    height: 83%;

    clip-path: polygon(
        0 100%, 0 74%, 18% 36%, 33% 69%,
        51% 12%, 72% 68%, 89% 29%,
        100% 59%, 100% 100%
    );
}

.emulator-features .ef-mountain-back {
background: #e7a67e;
    transform: translateY(22px);
}

.emulator-features .ef-mountain-front {
background: linear-gradient(
        180deg, #c47766, #8b3356
    );

    transform: translateY(90px) scaleX(1.1);
}

.emulator-features .ef-compare-line {
position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 50%;

    border-left: 2px solid rgba(255,255,255,.95);
}

.emulator-features .ef-compare-line::after {
content: "↔";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    display: grid;
    place-items: center;

    width: 30px;
    height: 30px;
    border-radius: 50%;

    background: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,.14);
    color: #d90050;
    font-size: 17px;
}

.emulator-features .ef-scene-tag {
position: absolute;
    z-index: 3;
    bottom: 15px;

    padding: 6px 10px;
    border-radius: 5px;

    background: rgba(255,255,255,.9);
    color: #510e2a;

    font-size: 11px;
    font-weight: 600;
}

.emulator-features .ef-tag-left {
left: 15px;
}

.emulator-features .ef-tag-right {
right: 15px;
}

.emulator-features .ef-shaders {
background: #fff0e8;
}

.emulator-features .ef-shader-window {
width: 85%;
    max-width: 435px;
    margin: auto;

    background: #fff;
    border: 1px solid #f0c9d0;
    border-radius: 9px;
    box-shadow: 0 14px 35px rgba(98,25,53,.12);
    overflow: hidden;
}

.emulator-features .ef-shader-topbar {
height: 34px;
    padding: 0 13px;

    display: flex;
    align-items: center;
    gap: 13px;

    background: #fff7f2;
    border-bottom: 1px solid #f5dbe0;

    color: #748094;
    font-size: 11px;
}

.emulator-features .ef-window-dots {
display: flex;
    gap: 5px;
}

.emulator-features .ef-window-dots i {
width: 7px;
    height: 7px;
    background: #c6d2e0;
    border-radius: 50%;
}

.emulator-features .ef-shader-content {
padding: 8px 15px;
}

.emulator-features .ef-shader-item {
display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 0;
}

.emulator-features .ef-shader-item + .ef-shader-item {
border-top: 1px solid #f7e1e2;
}

.emulator-features .ef-shader-icon {
display: grid;
    place-items: center;
    flex-shrink: 0;

    width: 33px;
    height: 33px;
    border-radius: 7px;

    background: #fff0e8;
    color: #d90050;
    font-size: 11px;
    font-weight: 700;
}

.emulator-features .ef-shader-text {
display: flex;
    flex: 1;
    flex-direction: column;
    gap: 3px;
}

.emulator-features .ef-shader-text strong {
font-size: 12px;
    font-weight: 600;
    color: #510e2a;
}

.emulator-features .ef-shader-text span {
font-size: 10px;
    color: #956578;
}

.emulator-features .ef-shader-status {
background: #f3facd;
    color: #597600;
    border-radius: 4px;
    padding: 5px 7px;
    font-size: 10px;
    font-weight: 600;
}

.emulator-features .ef-addons {
background: #fff0e8;
}

.emulator-features .ef-addon-window {
width: 85%;
    max-width: 400px;

    margin: auto;
    padding: 18px;

    background: #fff;
    border: 1px solid #f0c9d0;
    border-radius: 9px;

    box-shadow: 0 14px 35px rgba(98,25,53,.12);
}

.emulator-features .ef-addon-heading {
display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 13px;

    border-bottom: 1px solid #f7e1e2;
}

.emulator-features .ef-addon-game-icon {
width: 42px;
    height: 42px;
    display: grid;
    place-items: center;

    background: #ffe0e7;
    color: #d90050;
    border-radius: 8px;
}

.emulator-features .ef-addon-game-icon svg {
width: 23px;
    height: 23px;
}

.emulator-features .ef-addon-heading > div:last-child,
.emulator-features .ef-addon-row > div {
display: flex;
    flex-direction: column;
    gap: 4px;
}

.emulator-features .ef-addon-heading strong,
.emulator-features .ef-addon-row strong {
font-size: 12px;
    font-weight: 650;
    color: #510e2a;
}

.emulator-features .ef-addon-heading span,
.emulator-features .ef-addon-row span:not(.ef-switch-demo) {
color: #956578;
    font-size: 10px;
}

.emulator-features .ef-addon-row {
display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 12px 0;
    border-bottom: 1px solid #f7e1e2;
}

.emulator-features .ef-switch-demo {
display: block;
    width: 34px;
    height: 19px;
    flex-shrink: 0;
    position: relative;

    background: #d90050;
    border-radius: 20px;
}

.emulator-features .ef-switch-demo::after {
content: "";
    position: absolute;
    width: 13px;
    height: 13px;
    top: 3px;
    right: 3px;

    background: white;
    border-radius: 50%;
}

.emulator-features .ef-addon-note {
color: #956578;
    font-size: 10px;
    line-height: 1.5;
    padding-top: 12px;
}

.emulator-features .ef-updates {
background: #fff0e8;
}

.emulator-features .ef-update-window {
width: 80%;
    max-width: 340px;
    margin: auto;
    padding: 18px 20px;

    background: #fff;
    border-radius: 10px;
    border: 1px solid #f0c9d0;

    box-shadow: 0 14px 35px rgba(98,25,53,.12);
    text-align: center;
}

.emulator-features .ef-update-symbol {
display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin: 0 auto 9px;

    background: #fff0e8;
    border-radius: 50%;
    color: #d90050;
}

.emulator-features .ef-update-symbol svg {
width: 22px;
    height: 22px;
}

.emulator-features .ef-update-window h4 {
margin: 0 0 7px;
    color: #510e2a;
    font-size: 15px;
    font-weight: 700;
}

.emulator-features .ef-update-window > p {
margin: 0 0 13px;
    color: #956578;
    font-size: 11px;
    line-height: 1.5;
}

.emulator-features .ef-update-row {
display: flex;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 0;

    border-top: 1px solid #f7e1e2;
    font-size: 10px;
}

.emulator-features .ef-update-row > span {
color: #956578;
}

.emulator-features .ef-update-row strong {
color: #510e2a;
    font-weight: 600;
}

.emulator-features .ef-update-demo-btn {
margin-top: 10px;
    padding: 9px;

    border-radius: 5px;
    background: #d90050;
    color: #fff;

    font-size: 11px;
    font-weight: 600;
}

.emulator-features .ef-panel-description {
padding: 22px 2px 0;
}

.emulator-features .ef-panel-description h3 {
margin: 0 0 9px;

    color: #41001e;
    font-size: 21px;
    line-height: 1.35;
    font-weight: 650;
}

.emulator-features .ef-panel-description p {
margin: 0;
    padding: 0;

    color: #805267;
    font-size: 15px;
    line-height: 1.7;
}

@media (max-width: 1024px) {
.emulator-features .ef-container {
width: calc(100% - 50px);
}

.emulator-features .ef-layout {
display: block;
        padding: 25px;
}

.emulator-features .ef-sidebar {
display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 0;
        margin-bottom: 25px;
}

.emulator-features .ef-tab {
min-height: 75px;
        padding: 12px;
        gap: 12px;
}

.emulator-features .ef-tab-icon {
width: 43px;
        height: 43px;
}

.emulator-features .ef-tab-text strong {
font-size: 15px;
}

.emulator-features .ef-tab-text small {
font-size: 12px;
}

.emulator-features .ef-preview {
width: 100%;
}

.emulator-features .ef-visual {
height: 350px;
}
}

@media (max-width: 650px) {
.emulator-features {
padding: 50px 0 60px;
}

.emulator-features .ef-container {
width: calc(100% - 32px);
}

.emulator-features .ef-heading {
margin-bottom: 24px;
}

.emulator-features .ef-heading h2 {
font-size: 32px;
        letter-spacing: -.7px;
}

.emulator-features .ef-heading p {
font-size: 14px;
}

.emulator-features .ef-layout {
padding: 15px;
        border-radius: 8px;
}

.emulator-features .ef-sidebar {
display: flex;
        flex-direction: column;
        gap: 3px;
        margin-bottom: 20px;
}

.emulator-features .ef-tab {
min-height: 58px;
        padding: 8px 10px;
        gap: 12px;
}

.emulator-features .ef-tab-icon {
width: 37px;
        height: 37px;
        border-radius: 8px;
}

.emulator-features .ef-tab-icon svg {
width: 21px;
        height: 21px;
}

.emulator-features .ef-tab-text strong {
font-size: 14px;
}

.emulator-features .ef-tab-text small {
font-size: 11px;
}

.emulator-features .ef-tab-arrow {
font-size: 23px;
}

.emulator-features .ef-visual {
height: 265px;
}

.emulator-features .ef-demo-header {
padding: 0 12px;
        min-height: 38px;
}

.emulator-features .ef-demo-label {
font-size: 9px;
}

.emulator-features .ef-demo-indicator {
font-size: 9px;
}

.emulator-features .ef-demo-footer {
min-height: 32px;
        padding: 0 10px;
        font-size: 9px;
}

.emulator-features .ef-shader-window,
.emulator-features .ef-addon-window {
width: 93%;
}

.emulator-features .ef-update-window {
width: 90%;
}

.emulator-features .ef-panel-description {
padding-top: 17px;
}

.emulator-features .ef-panel-description h3 {
font-size: 18px;
}

.emulator-features .ef-panel-description p {
font-size: 13px;
        line-height: 1.65;
}
}

@media (prefers-reduced-motion: reduce) {
.emulator-features .ef-panel {
animation: none;
}

.emulator-features .ef-tab,
.emulator-features .ef-tab-icon,
.emulator-features .ef-tab-arrow {
transition: none;
}
}


/* ========== HOMEPAGE — FAQ ========== */
.lichii-faq {
background: #ffeadf;
    padding: 90px 0 100px;
    font-family: -apple-system, BlinkMacSystemFont,
        "Segoe UI", Roboto, Arial, sans-serif;
    color: #41001e;
}

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

.lichii-faq .faq-container {
width: calc(100% - 80px);
    max-width: 1200px;
    margin: 0 auto;
}

.lichii-faq .faq-heading {
text-align: center;
    margin-bottom: 45px;
}

.lichii-faq .faq-heading h2 {
margin: 0 0 10px;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.3;
    color: #41001e;
}

.lichii-faq .faq-heading p {
margin: 0;
    color: rgba(65,0,30,.75);
    font-size: 20px;
    line-height: 1.5;
}

.lichii-faq .faq-tabs {
width: 100%;
    max-width: 400px;
    height: 56px;
    padding: 3px;

    display: flex;
    align-items: center;
    gap: 3px;

    margin: 0 auto 60px;

    background: rgba(159,189,234,.1);
    border: 1px solid rgba(217,0,80,.14);
    border-radius: 8px;
}

.lichii-faq .faq-tab {
flex: 1;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    padding: 0 15px;

    background: transparent;
    border: 0;
    border-radius: 6px;

    color: #d90050;
    font-family: inherit;
    font-size: 16px;
    font-weight: 600;

    cursor: pointer;
    transition: background .2s, color .2s;
}

.lichii-faq .faq-tab svg {
width: 26px;
    height: 26px;
}

.lichii-faq .faq-tab.active {
background: #d90050;
    color: #fff;
}

.lichii-faq .faq-tab:not(.active):hover {
background: rgba(217,0,80,.1);
}

.lichii-faq .faq-group {
max-width: 800px;
    margin: 0 auto;
}

.lichii-faq .faq-group[hidden] {
display: none !important;
}

.lichii-faq .faq-item {
margin: 0 0 8px;

    background: #fff;
    border: 1px solid rgba(217,0,80,.14);
    border-radius: 8px;

    box-shadow: 0 2px 6px rgba(221,220,237,.5);

    overflow: hidden;
}

.lichii-faq .faq-item summary {
display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    padding: 20px 28px;

    color: #41001e;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.5;

    cursor: pointer;
    list-style: none;
}

.lichii-faq .faq-item summary::-webkit-details-marker {
display: none;
}

.lichii-faq .faq-item summary::marker {
content: "";
}

.lichii-faq .faq-item summary:hover {
color: #f01c68;
}

.lichii-faq .faq-arrow {
display: block;
    flex-shrink: 0;

    width: 11px;
    height: 11px;

    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;

    transform: rotate(45deg);
    transition: transform .25s ease;
}

.lichii-faq .faq-item[open] .faq-arrow {
transform: rotate(225deg);
}

.lichii-faq .faq-answer {
padding: 0 28px 22px;
}

.lichii-faq .faq-answer p {
margin: 0;
    color: rgba(65,0,30,.7);
    font-size: 16px;
    line-height: 1.7;
}

.lichii-faq .faq-answer a {
color: #d90050;
    text-decoration: none;
}

.lichii-faq .faq-answer a:hover {
color: #f01c68;
    text-decoration: underline;
}

.lichii-faq .faq-footer {
display: flex;
    justify-content: center;
    margin-top: 52px;
}

.lichii-faq .faq-more {
height: 48px;
    padding: 0 24px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    background: #d90050;
    border-radius: 4px;

    color: #fff;
    font-size: 16px;
    text-decoration: none;

    transition: background .2s;
}

.lichii-faq .faq-more:hover {
background: #f01c68;
    color: #fff;
}

@media (max-width: 768px) {
.lichii-faq {
padding: 60px 0 70px;
}

.lichii-faq .faq-container {
width: calc(100% - 32px);
}

.lichii-faq .faq-heading {
margin-bottom: 30px;
}

.lichii-faq .faq-heading h2 {
font-size: 26px;
}

.lichii-faq .faq-heading p {
font-size: 16px;
}

.lichii-faq .faq-tabs {
height: 48px;
        margin-bottom: 32px;
}

.lichii-faq .faq-tab {
font-size: 14px;
}

.lichii-faq .faq-tab svg {
width: 20px;
        height: 20px;
}

.lichii-faq .faq-item summary {
padding: 16px;
        font-size: 16px;
        line-height: 1.5;
}

.lichii-faq .faq-answer {
padding: 0 16px 18px;
}

.lichii-faq .faq-answer p {
font-size: 14px;
}

.lichii-faq .faq-footer {
margin-top: 32px;
}

.lichii-faq .faq-more {
height: 42px;
        padding: 0 18px;
        font-size: 14px;
}
}

.lichii-faq :focus-visible {
outline: 2px solid #d90050;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
.lichii-faq * {
transition: none !important;
}
}


/* ========== HOMEPAGE — LICHII PALETTE OVERRIDES ========== */
:is(.hero, .benefits-section, .downloads-section, .builds-section, .system-req-section, .emulator-features, .lichii-faq) {
--lichii-peach: #ffeadf;
  --lichii-pink: #d90050;
  --lichii-pink-hover: #b80043;
  --lichii-ink: #41001e;
  --lichii-yellow: #e9fa00;
  --lichii-soft: #fff5ef;
  --lichii-border: rgba(217,0,80,.15);
}

.hero {
background: var(--lichii-peach) !important;
  color: var(--lichii-ink);
}

.hero-download {
background: var(--lichii-pink);
  border-color: var(--lichii-pink);
  box-shadow: 0 3px 10px rgba(130,0,48,.18);
}

.hero-download:hover {
background:var(--lichii-pink-hover);border-color:var(--lichii-pink-hover)
}

.hero-explore {
background:rgba(255,255,255,.68);border-color:var(--lichii-border);color:var(--lichii-pink)
}

.hero .platform-card.active {
background:#fff5ef;border-color:var(--lichii-pink)
}

.hero .platform-card.active .platform-icon {
fill:var(--lichii-pink)
}

.hero .platform-badge {
background:var(--lichii-yellow);color:var(--lichii-ink)
}

.benefits-section {
background: #efd6c9;
}

.benefits-section .benefit-icon {
background:#ffe2e8;color:var(--lichii-pink)
}

.downloads-section {
--dl-blue:var(--lichii-pink);--dl-blue-dark:var(--lichii-pink-hover);--dl-background:var(--lichii-peach);--dl-text:var(--lichii-ink);--dl-muted:#805267;--dl-border:#efd1d4
}

.downloads-section .download-tab.active {
background:var(--lichii-pink);border-color:var(--lichii-pink)
}

.downloads-section .download-file.recommended {
background:var(--lichii-pink);border-color:var(--lichii-pink)
}

.downloads-section .download-file.recommended:hover {
background:var(--lichii-pink-hover);border-color:var(--lichii-pink-hover)
}

.downloads-section .step-number {
background:var(--lichii-pink)
}

.builds-section {
background:var(--lichii-peach)
}

.builds-section .update-date,
.builds-section .update-link,
.builds-section .builds-heading a {
color:var(--lichii-pink)
}

.builds-section .update-date::before {
background:var(--lichii-pink);box-shadow:0 0 0 2px var(--lichii-pink);border-color:var(--lichii-peach)
}

.builds-section .builds-more {
background:var(--lichii-yellow);border-color:var(--lichii-yellow);color:var(--lichii-ink)
}

.builds-section .builds-more:hover {
background:#d4e600;color:var(--lichii-ink)
}

.system-req-section {
background:var(--lichii-peach)
}

.system-req-section .system-req-title,
.system-req-section .system-req-icon {
color:var(--lichii-pink)
}

.system-req-section .system-req-download {
background:var(--lichii-pink)
}

.system-req-section .system-req-download:hover {
background:var(--lichii-pink-hover)
}

.emulator-features {
--ef-blue:var(--lichii-pink);--ef-text:var(--lichii-ink);--ef-muted:#805267;--ef-border:rgba(217,0,80,.15);background:var(--lichii-peach)
}

.emulator-features .ef-tab.active .ef-tab-text strong,
.emulator-features .ef-tab.active .ef-tab-arrow {
color:var(--lichii-pink)
}

.emulator-features .ef-tab.active,
.emulator-features .ef-tab:hover {
background:#ffe5e7
}

.emulator-features .ef-tab.active .ef-tab-icon,
.emulator-features .ef-tab:hover .ef-tab-icon {
background:#ffd4de;color:var(--lichii-pink)
}

.emulator-features .ef-visual {
border-color:#efcbd4
}

.emulator-features .ef-graphics-scene {
background:linear-gradient(180deg,#ffe6bd 0%,#ffecda 62%,#e7b4a2 100%)
}

.emulator-features .ef-update-demo-btn,
.emulator-features .ef-switch-demo {
background:var(--lichii-pink)
}

.lichii-faq {
background:var(--lichii-peach)
}

.lichii-faq .faq-tab.active {
background:var(--lichii-pink);color:white
}

.lichii-faq .faq-tab:not(.active) {
color:var(--lichii-pink)
}

.lichii-faq .faq-tab:not(.active):hover {
background:#ffe1e8
}

.lichii-faq .faq-more {
background:var(--lichii-pink)
}

.lichii-faq .faq-more:hover {
background:var(--lichii-pink-hover)
}

.lichii-faq .faq-item {
border-color:var(--lichii-border)
}

.lichii-faq .faq-answer a {
color:var(--lichii-pink)
}

.hero-content h1,
.builds-section .builds-heading h2 {
color:var(--lichii-pink)
}

.builds-section .builds-more:focus-visible,
.lichii-faq .faq-more:focus-visible {
outline:3px solid var(--lichii-yellow);outline-offset:3px
}


/* ========== BUILDS PAGE — ISOLATED TO .lichii-builds-page ========== */
.lichii-builds-page {
--lb-bg:#fff0e8; --lb-paper:#fffaf6; --lb-text:#41001e;
  --lb-muted:#795963; --lb-pink:#d90050; --lb-pink-dark:#ab003f;
  --lb-border:#f1cbd5; --lb-soft:#ffe4eb;
  background:var(--lb-bg); color:var(--lb-text);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  padding:72px 0 100px; line-height:1.6;
}

.lichii-builds-page *, .lichii-builds-page *::before, .lichii-builds-page *::after {
box-sizing:border-box
}

.lichii-builds-page .lb-container {
width:calc(100% - 48px); max-width:1160px; margin:0 auto
}

.lichii-builds-page .lb-intro {
max-width:850px; padding-bottom:44px
}

.lichii-builds-page .lb-eyebrow {
margin:0 0 10px;color:var(--lb-pink);font-size:12px;font-weight:800;letter-spacing:.14em
}

.lichii-builds-page .lb-intro h1 {
font-size:clamp(34px,5.4vw,58px);line-height:1.13;letter-spacing:-.035em;margin:0 0 18px;font-weight:800;color:var(--lb-text)
}

.lichii-builds-page .lb-lead {
font-size:17px;line-height:1.8;margin:0;color:var(--lb-muted)
}

.lichii-builds-page a {
text-decoration:none
}

.lichii-builds-page .lb-actions {
display:flex;flex-wrap:wrap;gap:12px;margin-top:26px
}

.lichii-builds-page .lb-primary-link,.lichii-builds-page .lb-secondary-link {
display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:47px;padding:11px 20px;border-radius:7px;font-size:14px;font-weight:700;transition:background .2s,color .2s,transform .2s
}

.lichii-builds-page .lb-primary-link {
background:var(--lb-pink);color:white
}

.lichii-builds-page .lb-primary-link:hover {
background:var(--lb-pink-dark);color:white
}

.lichii-builds-page .lb-secondary-link {
color:var(--lb-pink);border:1px solid var(--lb-border);background:var(--lb-paper)
}

.lichii-builds-page .lb-secondary-link:hover {
border-color:var(--lb-pink);color:var(--lb-pink)
}

.lichii-builds-page .lb-context {
display:flex;align-items:flex-start;gap:13px;max-width:900px;padding:16px 19px;border:1px solid var(--lb-border);background:rgba(255,255,255,.55);border-radius:9px;margin-bottom:62px
}

.lichii-builds-page .lb-context p {
font-size:13px;color:var(--lb-muted);margin:0;line-height:1.7
}

.lichii-builds-page .lb-context-icon {
border:1px solid var(--lb-pink);color:var(--lb-pink);border-radius:50%;font-size:12px;font-weight:700;width:21px;height:21px;flex:none;display:grid;place-items:center
}

.lichii-builds-page .lb-section-heading {
display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:33px
}

.lichii-builds-page .lb-section-heading h2 {
margin:0;font-size:clamp(25px,3vw,34px);line-height:1.25;letter-spacing:-.02em;color:var(--lb-text)
}

.lichii-builds-page .lb-count {
font-size:13px;color:var(--lb-muted);white-space:nowrap
}

.lichii-builds-page .lb-timeline {
position:relative
}

.lichii-builds-page .lb-timeline::before {
content:"";position:absolute;left:199px;top:10px;bottom:0;border-left:2px dashed #e4a7bc
}

.lichii-builds-page .lb-release {
display:grid;grid-template-columns:166px minmax(0,1fr);gap:34px;position:relative;margin-bottom:28px
}

.lichii-builds-page .lb-date-col {
position:relative;padding-top:22px;text-align:left
}

.lichii-builds-page .lb-date-col time {
color:var(--lb-pink);font-size:15px;font-weight:700
}

.lichii-builds-page .lb-dot {
position:absolute;z-index:1;top:28px;right:-42px;width:16px;height:16px;background:var(--lb-pink);border:4px solid var(--lb-bg);border-radius:50%;box-shadow:0 0 0 1px var(--lb-pink)
}

.lichii-builds-page .lb-release-card {
background:var(--lb-paper);padding:30px 34px;border:1px solid var(--lb-border);border-radius:10px;box-shadow:0 5px 20px rgba(82,17,45,.035);min-width:0
}

.lichii-builds-page .lb-card-top {
display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:13px
}

.lichii-builds-page .lb-build-label {
color:var(--lb-pink);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em
}

.lichii-builds-page .lb-release-type {
color:var(--lb-muted);background:var(--lb-soft);border-radius:5px;padding:3px 8px;font-size:11px;font-weight:650
}

.lichii-builds-page .lb-release-card h3 {
margin:0 0 12px;color:var(--lb-text);font-size:clamp(22px,2.6vw,28px);line-height:1.3;letter-spacing:-.02em;font-weight:750
}

.lichii-builds-page .lb-summary {
margin:0 0 23px;color:var(--lb-muted);font-size:15px;line-height:1.8
}

.lichii-builds-page .lb-change-group {
margin:0 0 19px
}

.lichii-builds-page .lb-change-group h4,.lichii-builds-page .lb-known-issues h4 {
font-size:15px;font-weight:750;margin:0 0 10px;color:var(--lb-text)
}

.lichii-builds-page .lb-change-group ul,.lichii-builds-page .lb-known-issues ul {
padding-left:21px;margin:0;list-style:disc
}

.lichii-builds-page .lb-change-group li,.lichii-builds-page .lb-known-issues li {
padding-left:3px;margin-bottom:9px;font-size:14px;line-height:1.75;color:var(--lb-muted)
}

.lichii-builds-page li::marker {
color:var(--lb-pink)
}

.lichii-builds-page .lb-known-issues {
margin:6px 0 23px;padding:16px 18px;border:1px solid var(--lb-border);border-radius:7px;background:#fff0f2
}

.lichii-builds-page .lb-known-issues li:last-child,.lichii-builds-page .lb-change-group li:last-child {
margin-bottom:0
}

.lichii-builds-page .lb-notes-link {
display:inline-flex;align-items:center;gap:8px;color:var(--lb-pink);font-size:14px;font-weight:700;border-bottom:1px solid transparent;margin-top:2px
}

.lichii-builds-page .lb-notes-link:hover {
border-color:var(--lb-pink);color:var(--lb-pink-dark)
}

.lichii-builds-page .lb-bottom {
margin:60px 0 0;padding:35px;border-radius:10px;background:var(--lb-paper);border:1px solid var(--lb-border)
}

.lichii-builds-page .lb-bottom h2 {
font-size:25px;line-height:1.3;margin:0 0 8px;color:var(--lb-text)
}

.lichii-builds-page .lb-bottom p {
margin:0 0 18px;max-width:720px;color:var(--lb-muted);font-size:15px
}

.lichii-builds-page a:focus-visible {
outline:3px solid var(--lb-pink);outline-offset:3px
}

@media (max-width:800px) {
.lichii-builds-page {
padding:48px 0 65px
}

.lichii-builds-page .lb-timeline::before {
left:8px
}

.lichii-builds-page .lb-release {
display:block;padding-left:30px;margin-bottom:22px
}

.lichii-builds-page .lb-date-col {
padding:0 0 9px
}

.lichii-builds-page .lb-dot {
left:-29px;right:auto;top:6px
}

.lichii-builds-page .lb-release-card {
padding:24px
}

.lichii-builds-page .lb-context {
margin-bottom:45px
}
}

@media (max-width:520px) {
.lichii-builds-page .lb-container {
width:calc(100% - 32px)
}

.lichii-builds-page .lb-intro {
padding-bottom:28px
}

.lichii-builds-page .lb-lead {
font-size:14px
}

.lichii-builds-page .lb-context {
padding:13px
}

.lichii-builds-page .lb-section-heading {
align-items:flex-start;flex-direction:column;gap:7px
}

.lichii-builds-page .lb-release {
padding-left:26px
}

.lichii-builds-page .lb-dot {
left:-25px
}

.lichii-builds-page .lb-release-card {
padding:18px
}

.lichii-builds-page .lb-date-col time {
font-size:13px
}

.lichii-builds-page .lb-summary {
font-size:14px
}

.lichii-builds-page .lb-bottom {
padding:22px
}

.lichii-builds-page .lb-actions a {
width:100%
}
}

@media (prefers-reduced-motion:reduce) {
.lichii-builds-page * {
transition:none !important
}
}


/* ========== GAME COMPATIBILITY PAGE — ISOLATED TO .lcg-page ========== */
.lcg-page {
--lcg-pink:#d90050;--lcg-wine:#41001e;--lcg-cream:#fff5ef;--lcg-milk:#fffaf6;--lcg-line:#f2d8d8;--lcg-body:#56243d;color:var(--lcg-wine);background:var(--lcg-cream);font-family:inherit;min-height:100vh
}

.lcg-page * {
box-sizing:border-box
}

.lcg-page .lcg-wrap {
max-width:1240px;margin-inline:auto;padding-inline:28px
}

.lcg-page a {
text-decoration:none
}

.lcg-page button,.lcg-page input {
font:inherit
}

.lcg-page .lcg-hero {
padding:80px 0 48px;background:linear-gradient(135deg,#fff0e8 0%,#fff6ef 70%,#ffe4e8 100%)
}

.lcg-page .lcg-eyebrow {
display:block;color:var(--lcg-pink);font-weight:800;letter-spacing:.11em;font-size:12px
}

.lcg-page h1 {
font-weight:900;font-size:clamp(44px,6.3vw,92px);line-height:1.02;letter-spacing:-.055em;color:var(--lcg-wine);margin:16px 0 20px;max-width:1050px
}

.lcg-page h1 span {
color:var(--lcg-pink)
}

.lcg-page .lcg-intro {
max-width:780px;font-size:18px;line-height:1.78;color:var(--lcg-body);margin:0
}

.lcg-page .lcg-summary {
display:flex;flex-wrap:wrap;gap:12px;margin-top:32px
}

.lcg-page .lcg-summary a {
display:flex;gap:11px;align-items:center;background:#ffffffa6;border:1px solid #f4d6d9;border-radius:14px;padding:11px 16px;color:var(--lcg-wine);transition:transform .2s,border-color .2s
}

.lcg-page .lcg-summary a:hover {
transform:translateY(-2px);border-color:var(--lcg-pink)
}

.lcg-page .lcg-summary strong {
font-size:24px;color:var(--lcg-pink)
}

.lcg-page .lcg-summary span {
font-size:13px;font-weight:700
}

.lcg-page .lcg-toolbar-wrap {
padding-block:30px
}

.lcg-page .lcg-toolbar {
background:white;border:1px solid var(--lcg-line);box-shadow:0 12px 42px #41001e0a;padding:22px;border-radius:18px
}

.lcg-page .lcg-search-label {
display:block;font-size:13px;font-weight:800;margin-bottom:8px
}

.lcg-page .lcg-search-box {
display:flex;align-items:center;gap:10px;border:1px solid #e6bdc9;border-radius:12px;padding:0 15px;background:#fffdfa
}

.lcg-page .lcg-search-box:focus-within {
outline:2px solid #d9005055
}

.lcg-page .lcg-search-box svg {
height:19px;width:19px;stroke:#8c5369;stroke-width:2;fill:none
}

.lcg-page .lcg-search-box input {
height:47px;width:100%;border:0;outline:0;background:transparent;color:var(--lcg-wine)
}

.lcg-page .lcg-filter-row {
display:flex;flex-wrap:wrap;gap:9px;margin-top:16px
}

.lcg-page .lcg-filter {
cursor:pointer;color:#6d304a;background:#fff4f1;border:1px solid #f0d7d5;padding:9px 14px;border-radius:999px;font-size:13px;font-weight:750
}

.lcg-page .lcg-filter:hover {
border-color:var(--lcg-pink)
}

.lcg-page .lcg-filter.is-active {
color:white;background:var(--lcg-pink);border-color:var(--lcg-pink)
}

.lcg-page .lcg-results {
font-size:12px;color:#765264;margin:14px 0 0
}

.lcg-page .lcg-status-section {
padding:52px 0 70px;scroll-margin-top:75px
}

.lcg-page .lcg-status-fully {
background:#eaf4c5
}

.lcg-page .lcg-status-playable {
background:#fff0dd
}

.lcg-page .lcg-status-issues {
background:#fbe5eb
}

.lcg-page .lcg-status-partial {
background:#f3edf9
}

.lcg-page .lcg-section-header {
display:flex;align-items:center;gap:20px;margin-bottom:28px
}

.lcg-page .lcg-status-mark {
flex:0 0 61px;width:61px;height:61px;border-radius:20px;background:white;color:#3b860b;box-shadow:0 6px 22px #3000130c;display:grid;place-items:center;font-size:32px;font-weight:900
}

.lcg-page .lcg-status-playable .lcg-status-mark {
color:#af6409
}

.lcg-page .lcg-status-issues .lcg-status-mark {
color:#c52864
}

.lcg-page .lcg-status-partial .lcg-status-mark {
color:#7746a3
}

.lcg-page .lcg-section-header h2 {
color:var(--lcg-wine);font-size:clamp(28px,3.8vw,44px);letter-spacing:-.045em;line-height:1.1;margin:0 0 7px;font-weight:900
}

.lcg-page .lcg-section-header p {
font-size:15px;color:var(--lcg-body);margin:0;line-height:1.6
}

.lcg-page .lcg-grid {
display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px
}

.lcg-page .lcg-game {
background:#fffefbdc;border:1px solid #ffffffba;border-radius:20px;padding:20px;display:flex;gap:19px;min-width:0;box-shadow:0 5px 20px #4510220c;transition:transform .2s,box-shadow .2s
}

.lcg-page .lcg-game:hover {
transform:translateY(-3px);box-shadow:0 15px 35px #45102218
}

.lcg-page .lcg-poster {
width:125px;flex:0 0 125px;align-self:flex-start;aspect-ratio:3/4;border-radius:13px;background:#ead7d6;box-shadow:0 5px 15px #2a0a1621;overflow:hidden
}

.lcg-page .lcg-poster img {
height:100%;width:100%;object-fit:cover;display:block
}

.lcg-page .lcg-no-poster {
display:grid;place-items:center;text-align:center;background:linear-gradient(145deg,#8d3a60,#4a1735);color:white;font-size:17px;letter-spacing:.1em;font-weight:900
}

.lcg-page .lcg-game-body {
min-width:0;flex:1;display:flex;flex-direction:column;align-items:flex-start
}

.lcg-page .lcg-pill {
font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:850;border-radius:999px;padding:5px 9px;color:#28710d;background:#e6f5d5;margin-bottom:9px
}

.lcg-page .lcg-status-playable .lcg-pill {
background:#fff0d5;color:#965408
}

.lcg-page .lcg-status-issues .lcg-pill {
background:#fce3ea;color:#ac245b
}

.lcg-page .lcg-status-partial .lcg-pill {
background:#eee4f9;color:#714198
}

.lcg-page .lcg-game h3 {
font-weight:850;font-size:22px;line-height:1.22;letter-spacing:-.025em;color:var(--lcg-pink);margin:0 0 8px
}

.lcg-page .lcg-game-lead {
font-weight:750;color:#4b2031;margin:0 0 8px;font-size:14px;line-height:1.5
}

.lcg-page .lcg-game-description {
color:#643d4b;font-size:13px;line-height:1.65;margin:0 0 9px
}

.lcg-page .lcg-caution {
background:#fff5ee;border-left:3px solid #dc9b4c;border-radius:0 5px 5px 0;padding:9px 10px;color:#77492b;line-height:1.55;font-size:12px;margin:1px 0 12px;width:100%
}

.lcg-page .lcg-source {
font-weight:800;font-size:12px;color:var(--lcg-pink);margin-top:auto;padding-top:4px
}

.lcg-page .lcg-source:hover {
text-decoration:underline
}

.lcg-page .lcg-source span {
font-size:15px
}

.lcg-page .lcg-empty {
border:1px solid var(--lcg-line);background:white;border-radius:12px;padding:24px;text-align:center;margin:35px 0
}

.lcg-page .lcg-report {
background:#41001e;color:white;padding:65px 0
}

.lcg-page .lcg-report-grid {
display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:45px;align-items:center
}

.lcg-page .lcg-report h2 {
color:white;font-size:clamp(30px,3.5vw,46px);line-height:1.12;margin:12px 0 18px
}

.lcg-page .lcg-report p {
color:#f6dce5;font-size:15px;line-height:1.8;max-width:800px
}

.lcg-page .lcg-warning {
font-size:13px!important;color:#ffd7b5!important
}

.lcg-page .lcg-report-actions {
display:grid;gap:12px
}

.lcg-page .lcg-primary-link,.lcg-page .lcg-secondary-link {
display:block;padding:14px 17px;border-radius:11px;text-align:center;font-weight:800;font-size:14px
}

.lcg-page .lcg-primary-link {
background:#e9fa00;color:#41001e
}

.lcg-page .lcg-secondary-link {
border:1px solid #e1a8be;color:white
}

.lcg-page .lcg-legal {
padding-block:26px 34px;font-size:12px;line-height:1.7;color:#8a6675;max-width:950px
}

.lcg-page .lcg-game[hidden],.lcg-page .lcg-status-section[hidden],.lcg-page .lcg-empty[hidden] {
display:none!important
}

@media (max-width:960px) {
.lcg-page .lcg-grid {
grid-template-columns:1fr
}

.lcg-page .lcg-game {
max-width:720px
}
}

@media (max-width:650px) {
.lcg-page .lcg-wrap {
padding-inline:17px
}

.lcg-page .lcg-hero {
padding:55px 0 35px
}

.lcg-page .lcg-intro {
font-size:15px;line-height:1.7
}

.lcg-page .lcg-summary {
gap:8px
}

.lcg-page .lcg-summary a {
padding:9px 11px
}

.lcg-page .lcg-status-section {
padding:37px 0 50px
}

.lcg-page .lcg-section-header {
gap:12px
}

.lcg-page .lcg-status-mark {
width:49px;height:49px;flex-basis:49px;font-size:24px;border-radius:14px
}

.lcg-page .lcg-section-header p {
font-size:13px
}

.lcg-page .lcg-game {
padding:13px;gap:12px;border-radius:14px
}

.lcg-page .lcg-poster {
width:93px;flex-basis:93px
}

.lcg-page .lcg-game h3 {
font-size:18px
}

.lcg-page .lcg-game-description {
font-size:12px
}

.lcg-page .lcg-caution {
font-size:11px
}

.lcg-page .lcg-toolbar {
padding:16px
}

.lcg-page .lcg-report-grid {
grid-template-columns:1fr;gap:20px
}

.lcg-page .lcg-report {
padding:46px 0
}
}


.lichii-content-page {
    --lcp-pink: #d90050;
    --lcp-pink-dark: #ad003f;
    --lcp-wine: #41001e;
    --lcp-cream: #fff5ef;
    --lcp-paper: #fffaf6;
    --lcp-line: #f1cbd5;
    --lcp-muted: #795963;
    background: var(--lcp-cream);
    color: var(--lcp-wine);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
    min-height: 60vh;
}
.lichii-content-page,
.lichii-content-page *,
.lichii-content-page *::before,
.lichii-content-page *::after { box-sizing: border-box; }
.lichii-content-page .lcp-container {
    width: calc(100% - 48px);
    max-width: 1080px;
    margin-inline: auto;
}
.lichii-content-page .lcp-hero {
    padding: 66px 0 60px;
    background: linear-gradient(135deg, #ffeade 0%, #fff5ef 70%, #ffe6eb 100%);
    border-bottom: 1px solid var(--lcp-line);
}
.lichii-content-page .lcp-breadcrumbs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 22px;
    color: var(--lcp-muted);
    font-size: 13px;
    line-height: 1.5;
}
.lichii-content-page .lcp-breadcrumbs a { color: var(--lcp-pink); text-decoration: none; font-weight: 650; }
.lichii-content-page .lcp-breadcrumbs a:hover { text-decoration: underline; }
.lichii-content-page .lcp-separator { color: #b89aa6; }
.lichii-content-page .lcp-title {
    margin: 0;
    max-width: 950px;
    color: var(--lcp-wine);
    font-size: clamp(36px, 5vw, 62px);
    line-height: 1.13;
    font-weight: 800;
    letter-spacing: -.045em;
    overflow-wrap: anywhere;
}
.lichii-content-page .lcp-lead {
    max-width: 760px;
    margin: 18px 0 0;
    color: var(--lcp-muted);
    font-size: 17px;
    line-height: 1.8;
}
.lichii-content-page .lcp-body { padding: 46px 0 90px; }
.lichii-content-page .lcp-article {
    background: #fffdfa;
    border: 1px solid var(--lcp-line);
    border-radius: 14px;
    padding: clamp(24px, 4.5vw, 56px);
    box-shadow: 0 8px 28px rgba(65, 0, 30, .045);
    min-width: 0;
}
.lichii-content-page .lcp-content {
    color: #583344;
    font-size: 16px;
    line-height: 1.85;
    overflow-wrap: anywhere;
}
.lichii-content-page .lcp-content > :first-child { margin-top: 0; }
.lichii-content-page .lcp-content > :last-child { margin-bottom: 0; }
.lichii-content-page .lcp-content p { margin: 0 0 20px; }
.lichii-content-page .lcp-content h2,
.lichii-content-page .lcp-content h3,
.lichii-content-page .lcp-content h4,
.lichii-content-page .lcp-content h5,
.lichii-content-page .lcp-content h6 { color: var(--lcp-wine); line-height: 1.3; letter-spacing: -.025em; }
.lichii-content-page .lcp-content h2 { font-size: clamp(24px, 3vw, 30px); margin: 36px 0 14px; font-weight: 750; }
.lichii-content-page .lcp-content h3 { font-size: 21px; margin: 29px 0 12px; font-weight: 750; }
.lichii-content-page .lcp-content h4 { font-size: 18px; margin: 24px 0 10px; font-weight: 700; }
.lichii-content-page .lcp-content a { color: var(--lcp-pink); text-decoration: underline; text-underline-offset: 3px; }
.lichii-content-page .lcp-content a:hover { color: var(--lcp-pink-dark); }
.lichii-content-page .lcp-content ul,
.lichii-content-page .lcp-content ol { margin: 0 0 22px; padding-left: 26px; }
.lichii-content-page .lcp-content li { padding-left: 3px; margin-bottom: 8px; }
.lichii-content-page .lcp-content li::marker { color: var(--lcp-pink); }
.lichii-content-page .lcp-content strong { color: var(--lcp-wine); }
.lichii-content-page .lcp-content blockquote {
    margin: 24px 0; padding: 14px 22px;
    background: #fff0f2; border-left: 4px solid var(--lcp-pink);
    border-radius: 0 8px 8px 0; color: var(--lcp-wine);
}
.lichii-content-page .lcp-content blockquote p:last-child { margin-bottom: 0; }
.lichii-content-page .lcp-content hr { border: 0; border-top: 1px solid var(--lcp-line); margin: 34px 0; }
.lichii-content-page .lcp-content img { max-width: 100%; height: auto; border-radius: 8px; }
.lichii-content-page .lcp-content figure { max-width: 100%; margin: 24px 0; }
.lichii-content-page .lcp-content figcaption { color: var(--lcp-muted); font-size: 13px; }
.lichii-content-page .lcp-content code { padding: 2px 5px; background: #fff0f2; border-radius: 4px; overflow-wrap: anywhere; }
.lichii-content-page .lcp-content pre { max-width: 100%; overflow-x: auto; padding: 18px; border-radius: 8px; background: var(--lcp-wine); color: white; }
.lichii-content-page .lcp-content pre code { color: inherit; background: none; padding: 0; }
.lichii-content-page .lcp-content .wp-block-table,
.lichii-content-page .lcp-content .lcp-table-wrap { overflow-x: auto; }
.lichii-content-page .lcp-content table { width: 100%; border-collapse: collapse; font-size: 14px; margin: 22px 0; }
.lichii-content-page .lcp-content th,
.lichii-content-page .lcp-content td { border: 1px solid var(--lcp-line); padding: 12px 14px; text-align: left; }
.lichii-content-page .lcp-content th { background: #fff0e8; color: var(--lcp-wine); }
.lichii-content-page .lcp-content .wp-block-button__link { display: inline-block; padding: 12px 22px; border-radius: 7px; color: white; background: var(--lcp-pink); text-decoration: none; font-weight: 700; }
.lichii-content-page .lcp-content .wp-block-button__link:hover { background: var(--lcp-pink-dark); color: white; }
.lichii-content-page .lcp-page-links { margin-top: 30px; }
.lichii-content-page a:focus-visible { outline: 3px solid var(--lcp-pink); outline-offset: 4px; }
@media (max-width: 767px) {
    .lichii-content-page .lcp-container { width: calc(100% - 32px); }
    .lichii-content-page .lcp-hero { padding: 42px 0 38px; }
    .lichii-content-page .lcp-body { padding: 26px 0 58px; }
    .lichii-content-page .lcp-article { padding: 23px 19px; border-radius: 10px; }
    .lichii-content-page .lcp-content { font-size: 14px; line-height: 1.8; }
    .lichii-content-page .lcp-lead { font-size: 15px; }
    .lichii-content-page .lcp-content h2 { margin-top: 28px; }
    .lichii-content-page .lcp-content table { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
    .lichii-content-page *, .lichii-content-page *::before, .lichii-content-page *::after { scroll-behavior: auto !important; transition: none !important; }
}




/* ========== HOMEPAGE — DOWNLOADS ========== */
.downloads-section .download-panel[hidden] {
display: none !important;
}

.downloads-section .download-panel.active {
display: grid;
}

@media (max-width: 1024px) {
.downloads-section .download-panel.active {
grid-template-columns: 1fr;
}
}

.downloads-section {
--dl-blue: #d90050;
    --dl-blue-dark: #b80043;
    --dl-background: #ffeadf;
    --dl-text: #41001e;
    --dl-muted: #805267;
    --dl-border: #f0c9d0;

    background: var(--dl-background);
    font-family: -apple-system, BlinkMacSystemFont,
        "Segoe UI", Roboto, Arial, sans-serif;
    padding: 90px 0 85px;
    color: var(--dl-text);
}

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

.downloads-section .downloads-container {
width: calc(100% - 80px);
    max-width: 1200px;
    margin: 0 auto;
}

.downloads-section .downloads-header {
margin-bottom: 50px;
}

.downloads-section .downloads-header h2 {
margin: 0 0 18px;
    padding: 0;
    color: var(--dl-text);
    font-size: 30px;
    font-weight: 750;
    line-height: 1.15;
}

.downloads-section .downloads-header p {
margin: 0;
    max-width: 760px;

    color: #632c41;
    font-size: 18px;
    line-height: 1.7;
}

.downloads-section .downloads-header p a {
color: var(--dl-blue);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.downloads-section .download-tabs {
display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 56px;
}

.downloads-section .download-tab {
min-width: 150px;
    height: 54px;
    padding: 0 24px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;

    background: #fff;
    border: 1px solid #f0c9d0;
    border-radius: 9px;

    color: #41001e;
    font-family: inherit;
    font-size: 17px;
    font-weight: 600;

    cursor: pointer;

    transition:
        background .2s,
        color .2s,
        border-color .2s,
        box-shadow .2s;
}

.downloads-section .download-tab svg {
width: 22px;
    height: 22px;
    flex-shrink: 0;
}

.downloads-section .download-tab:hover {
border-color: #ea80a1;
    background: #fff5ef;
}

.downloads-section .download-tab.active {
background: var(--dl-blue);
    border-color: var(--dl-blue);
    color: #fff;
    box-shadow: 0 3px 9px rgba(217,0,80,.18);
}

.downloads-section .download-tab.active:hover {
background: var(--dl-blue-dark);
}

.downloads-section .download-tab:focus-visible {
outline: 3px solid #ea80a1;
    outline-offset: 3px;
}

.downloads-section .downloads-layout {
display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.45fr);
    gap: 65px;
    align-items: start;
    min-height: 325px;
}

.downloads-section .installation-panel h3 {
margin: 0 0 12px;
    padding: 0;

    color: var(--dl-text);
    font-size: 25px;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: -.5px;
}

.downloads-section .install-subtitle {
color: var(--dl-muted);
    font-size: 15px;
    line-height: 1.65;
    margin: 0 0 24px;
}

.downloads-section .install-steps {
list-style: none;
    padding: 0;
    margin: 0;

    display: flex;
    flex-direction: column;
    gap: 23px;
}

.downloads-section .install-steps li {
display: flex;
    align-items: flex-start;
    gap: 16px;

    font-size: 16px;
    line-height: 1.65;
    color: #510e2a;
}

.downloads-section .step-number {
flex-shrink: 0;

    width: 36px;
    height: 36px;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: var(--dl-blue);
    color: #fff;

    font-size: 15px;
    font-weight: 700;
}

.downloads-section .step-body {
flex: 1;
    min-width: 0;
    padding-top: 4px;
}

.downloads-section .step-body code {
display: block;
    max-width: 100%;
    margin-top: 12px;
    padding: 12px 15px;

    background: #41001e;
    color: #fff;
    border-radius: 8px;

    font-family: Consolas, Monaco, monospace;
    font-size: 13px;
    line-height: 1.6;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}

.downloads-section .download-options {
min-width: 0;
}

.downloads-section .download-columns {
display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
}

.downloads-section .download-columns.single {
grid-template-columns: minmax(0, 1fr);
    max-width: 470px;
}

.downloads-section .download-column {
min-width: 0;
}

.downloads-section .download-column h4 {
margin: 0 0 20px;

    font-size: 15px;
    font-weight: 700;
    color: #510e2a;
    line-height: 1.4;
}

.downloads-section .download-entry {
margin-bottom: 20px;
}

.downloads-section .download-file {
width: 100%;
    min-height: 58px;
    padding: 14px 18px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;

    background: #fff;
    border: 1px solid var(--dl-border);
    border-radius: 9px;

    color: #41001e;
    text-decoration: none;
    font-size: 15px;
    font-weight: 650;

    transition:
        border-color .2s,
        box-shadow .2s,
        background .2s;
}

.downloads-section .download-file:hover {
border-color: #ea80a1;
    box-shadow: 0 3px 12px rgba(217,0,80,.10);
}

.downloads-section .download-file.recommended {
background: var(--dl-blue);
    border-color: var(--dl-blue);
    color: #fff;
}

.downloads-section .download-file.recommended:hover {
background: var(--dl-blue-dark);
    border-color: var(--dl-blue-dark);
}

.downloads-section .download-file-left {
display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.downloads-section .download-file-left svg {
width: 21px;
    height: 21px;
    flex-shrink: 0;
}

.downloads-section .download-file-name {
overflow-wrap: anywhere;
}

.downloads-section .download-file-size {
white-space: nowrap;
    flex-shrink: 0;
    font-weight: 700;
}

.downloads-section .download-description {
margin: 8px 0 0;
    padding: 0 4px 0 15px;

    color: #805267;
    font-size: 13px;
    line-height: 1.6;
}

.downloads-section .download-hash {
padding: 0 4px 0 15px;
    margin-top: 10px;

    color: #805267;
    font-size: 12px;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.downloads-section .download-disclaimer {
margin: 45px 0 0;
    padding-top: 22px;

    border-top: 1px solid #f2d2d3;

    color: #805267;
    font-size: 13px;
    line-height: 1.7;
}

@media (max-width: 1024px) {
.downloads-section {
padding: 70px 0;
}

.downloads-section .downloads-container {
width: calc(100% - 50px);
}

.downloads-section .downloads-layout {
grid-template-columns: 1fr;
        gap: 42px;
        min-height: 0;
}

.downloads-section .download-columns.single {
max-width: 100%;
}

.downloads-section .download-columns {
gap: 20px;
}

.downloads-section .download-tabs {
margin-bottom: 40px;
}
}

@media (max-width: 650px) {
.downloads-section {
padding: 55px 0;
}

.downloads-section .downloads-container {
width: calc(100% - 32px);
}

.downloads-section .downloads-header {
margin-bottom: 30px;
}

.downloads-section .downloads-header h2 {
font-size: 34px;
        letter-spacing: -1px;
        margin-bottom: 14px;
}

.downloads-section .downloads-header p {
font-size: 14px;
        line-height: 1.7;
}

.downloads-section .download-tabs {
gap: 7px;
        flex-wrap: nowrap;
        margin-bottom: 34px;
}

.downloads-section .download-tab {
flex: 1;
        min-width: 0;
        height: 47px;

        padding: 0 8px;
        gap: 7px;

        font-size: 13px;
        border-radius: 7px;
}

.downloads-section .download-tab svg {
width: 18px;
        height: 18px;
}

.downloads-section .downloads-layout {
gap: 35px;
}

.downloads-section .installation-panel h3 {
font-size: 21px;
}

.downloads-section .install-subtitle {
font-size: 13px;
        margin-bottom: 20px;
}

.downloads-section .install-steps {
gap: 18px;
}

.downloads-section .install-steps li {
font-size: 14px;
        gap: 12px;
}

.downloads-section .step-number {
width: 31px;
        height: 31px;
        font-size: 13px;
}

.downloads-section .download-columns {
grid-template-columns: 1fr;
        gap: 26px;
}

.downloads-section .download-column h4 {
font-size: 14px;
        margin-bottom: 14px;
}

.downloads-section .download-file {
min-height: 54px;
        padding: 12px 15px;
        font-size: 13px;
}

.downloads-section .download-file-size {
font-size: 13px;
}

.downloads-section .download-description {
font-size: 12px;
}

.downloads-section .download-disclaimer {
font-size: 12px;
        margin-top: 35px;
}
}

@media (prefers-reduced-motion: reduce) {
.downloads-section * {
transition: none !important;
}
}


/* ========== HOMEPAGE — FAQ ========== */
.lichii-faq {
background: #ffeadf;
    padding: 90px 0 100px;
    font-family: -apple-system, BlinkMacSystemFont,
        "Segoe UI", Roboto, Arial, sans-serif;
    color: #41001e;
}

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

.lichii-faq .faq-container {
width: calc(100% - 80px);
    max-width: 1200px;
    margin: 0 auto;
}

.lichii-faq .faq-heading {
text-align: center;
    margin-bottom: 45px;
}

.lichii-faq .faq-heading h2 {
margin: 0 0 10px;
    font-size: 40px;
    font-weight: 700;
    line-height: 1.3;
    color: #41001e;
}

.lichii-faq .faq-heading p {
margin: 0;
    color: rgba(65,0,30,.75);
    font-size: 20px;
    line-height: 1.5;
}

.lichii-faq .faq-tabs {
width: 100%;
    max-width: 400px;
    height: 56px;
    padding: 3px;

    display: flex;
    align-items: center;
    gap: 3px;

    margin: 0 auto 60px;

    background: rgba(159,189,234,.1);
    border: 1px solid rgba(217,0,80,.14);
    border-radius: 8px;
}

.lichii-faq .faq-tab {
flex: 1;
    height: 100%;

    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    padding: 0 15px;

    background: transparent;
    border: 0;
    border-radius: 6px;

    color: #d90050;
    font-family: inherit;
    font-size: 16px;
    font-weight: 600;

    cursor: pointer;
    transition: background .2s, color .2s;
}

.lichii-faq .faq-tab svg {
width: 26px;
    height: 26px;
}

.lichii-faq .faq-tab.active {
background: #d90050;
    color: #fff;
}

.lichii-faq .faq-tab:not(.active):hover {
background: rgba(217,0,80,.1);
}

.lichii-faq .faq-group {
max-width: 800px;
    margin: 0 auto;
}

.lichii-faq .faq-group[hidden] {
display: none !important;
}

.lichii-faq .faq-item {
margin: 0 0 8px;

    background: #fff;
    border: 1px solid rgba(217,0,80,.14);
    border-radius: 8px;

    box-shadow: 0 2px 6px rgba(221,220,237,.5);

    overflow: hidden;
}

.lichii-faq .faq-item summary {
display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;

    padding: 20px 28px;

    color: #41001e;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.5;

    cursor: pointer;
    list-style: none;
}

.lichii-faq .faq-item summary::-webkit-details-marker {
display: none;
}

.lichii-faq .faq-item summary::marker {
content: "";
}

.lichii-faq .faq-item summary:hover {
color: #f01c68;
}

.lichii-faq .faq-arrow {
display: block;
    flex-shrink: 0;

    width: 11px;
    height: 11px;

    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;

    transform: rotate(45deg);
    transition: transform .25s ease;
}

.lichii-faq .faq-item[open] .faq-arrow {
transform: rotate(225deg);
}

.lichii-faq .faq-answer {
padding: 0 28px 22px;
}

.lichii-faq .faq-answer p {
margin: 0;
    color: rgba(65,0,30,.7);
    font-size: 16px;
    line-height: 1.7;
}

.lichii-faq .faq-answer a {
color: #d90050;
    text-decoration: none;
}

.lichii-faq .faq-answer a:hover {
color: #f01c68;
    text-decoration: underline;
}

.lichii-faq .faq-footer {
display: flex;
    justify-content: center;
    margin-top: 52px;
}

.lichii-faq .faq-more {
height: 48px;
    padding: 0 24px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    background: #d90050;
    border-radius: 4px;

    color: #fff;
    font-size: 16px;
    text-decoration: none;

    transition: background .2s;
}

.lichii-faq .faq-more:hover {
background: #f01c68;
    color: #fff;
}

@media (max-width: 768px) {
.lichii-faq {
padding: 60px 0 70px;
}

.lichii-faq .faq-container {
width: calc(100% - 32px);
}

.lichii-faq .faq-heading {
margin-bottom: 30px;
}

.lichii-faq .faq-heading h2 {
font-size: 26px;
}

.lichii-faq .faq-heading p {
font-size: 16px;
}

.lichii-faq .faq-tabs {
height: 48px;
        margin-bottom: 32px;
}

.lichii-faq .faq-tab {
font-size: 14px;
}

.lichii-faq .faq-tab svg {
width: 20px;
        height: 20px;
}

.lichii-faq .faq-item summary {
padding: 16px;
        font-size: 16px;
        line-height: 1.5;
}

.lichii-faq .faq-answer {
padding: 0 16px 18px;
}

.lichii-faq .faq-answer p {
font-size: 14px;
}

.lichii-faq .faq-footer {
margin-top: 32px;
}

.lichii-faq .faq-more {
height: 42px;
        padding: 0 18px;
        font-size: 14px;
}
}

.lichii-faq :focus-visible {
outline: 2px solid #d90050;
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
.lichii-faq * {
transition: none !important;
}
}



.downloads-section .downloads-header h1{margin:0 0 18px;padding:0;color:#41001e;font-size:clamp(32px,4.8vw,52px);font-weight:800;line-height:1.15;letter-spacing:-.035em}
.downloads-section .download-file-size{display:none}
.downloads-section .download-file{min-height:58px}
.downloads-section,.lichii-faq{--lichii-pink:#d90050;--lichii-peach:#ffeadf;--lichii-border:#f0c9d0}
.downloads-section .download-panel[hidden],.lichii-faq .faq-group[hidden]{display:none!important}
.lichii-faq .faq-tabs{max-width:550px}
.lichii-faq{background:#fff5ef;border-top:1px solid #f0c9d0}
.downloads-section .downloads-header .download-breadcrumbs{font-size:13px;color:#8d5369;margin-bottom:18px}
.downloads-section .downloads-header .download-breadcrumbs a{color:#d90050;text-decoration:none}
@media(max-width:650px){.downloads-section .downloads-header h1{font-size:32px}.lichii-faq .faq-tabs{max-width:100%}.lichii-faq .faq-tab{padding-inline:8px;font-size:13px}}












/* =========================================
   GLOBAL VARIABLES
========================================= */

:root {
    --header-height: 64px;
    --header-width: 1280px;
    --ink: #09090a;
    --muted: rgba(47, 47, 48, .75);
    --blue: #3485ff;
    --line: rgba(47, 47, 48, .1);
    --hover: rgba(52, 133, 255, .10);
}

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


body {
    margin: 0;
    font-family: "Inter", sans-serif;
    padding-top: 60px;
}



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

.site-header ul,
.site-header dl,
.site-header dt,
.site-header dd {
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-header button:focus-visible,
.site-header a:focus-visible {
    outline: 2px solid var(--blue);
    outline-offset: 3px;
}

/* =========================================
   HEADER
========================================= */

.site-header {
    position: fixed;
    inset: 0 0 auto;
    z-index: 1000;
    background: #e8d0c4;
    border-bottom: 1px solid var(--line);
}

.header-inner {
    max-width: var(--header-width);
    height: var(--header-height);
    padding: 0 40px;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
}

/* =========================================
   LOGO
========================================= */

.brand {
    display: flex;
    align-items: center;
    flex: none;
    width: 90px;
    height: 40px;
    background: url(https://lichiiemulator.site/wp-content/uploads/2026/11/lichi.webp) left center / contain no-repeat;
}

.brand span {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
}

/* =========================================
   DESKTOP NAVIGATION
========================================= */

.primary-nav {
    display: flex;
    align-items: center;
    flex: 1;
    min-width: 0;
    margin-left: 8px;
}

.nav-list {
    display: flex;
    align-items: center;
    gap: 40px;
    height: 100%;
}

.nav-item {
    display: flex;
    align-items: center;
    position: relative;
    height: var(--header-height);
}

.nav-link,
.nav-trigger {
    border: 0;
    background: none;
    color: var(--ink);
    font-size: 14px;
    font-weight: 400;
    white-space: nowrap;
    padding: 9px 0;
    display: flex;
    gap: 5px;
    align-items: center;
    cursor: pointer;
    transition: opacity .2s;
}

.nav-link:hover,
.nav-trigger:hover {
    opacity: .55;
}

.chevron {
    height: 15px;
    width: 15px;
    transition: transform .2s;
    flex: none;
}

.has-mega.is-open .chevron,
.language-picker.is-open .chevron,
.mobile-language.is-open .chevron {
    transform: rotate(180deg);
}

/* =========================================
   HEADER ACTIONS
========================================= */

.header-actions {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-left: auto;
}

/* =========================================
   LANGUAGE SELECTOR
========================================= */

.language-picker {
    position: relative;
}

.language-trigger {
    height: 34px;
    padding: 4px 12px 4px 15px;
    display: flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .25);
    border-radius: 4px;
    color: #000;
    font-size: 14px;
    min-width: 106px;
    justify-content: space-between;
}

.language-trigger:hover {
    background: #f9fbff;
}

/* FIXED: Dropdown has no mouse-hover gap */

.language-panel {
    position: absolute;

    /* Important: previously calc(100% + 16px) */
    top: 100%;
    right: 0;

    background: #fff;
    min-width: 220px;
    border-radius: 4px;
    padding: 8px 0;

    box-shadow:
        0 4px 14px rgba(0, 0, 0, .12);

    display: none;

    max-height: min(70vh, 500px);
    overflow-y: auto;

    z-index: 1100;
}

/* Show dropdown when JavaScript opens it */

.language-picker.is-open .language-panel {
    display: block;
}

/* Also keep visible when hovering with a mouse */

@media (hover: hover) and (min-width: 769px) {
    .language-picker:hover .language-panel {
        display: block;
    }
}

/* Language options */

.language-panel a {
    display: flex;
    justify-content: space-between;
    align-items: center;

    padding: 10px 16px;

    color: var(--ink);
    font-size: 14px;
    line-height: 19px;
    white-space: nowrap;
}

.language-panel a:hover {
    background: var(--hover);
}

.language-panel a[aria-current="true"] {
    color: var(--blue);
}

.language-panel a[aria-current="true"]::after {
    content: "✓";
    font-weight: 700;
}

/* =========================================
   DOWNLOAD BUTTON
========================================= */

.download-shortcut {
    border: 0;
    border-radius: 4px;
    background: var(--blue);
    color: white;

    height: 32px;
    padding: 0 16px;

    font-size: 14px;
    white-space: nowrap;

    display: none;
}

.download-shortcut:hover {
    background: #01a4ff;
}

.download-shortcut.is-visible {
    display: block;
}

/* =========================================
   MOBILE TOGGLE
========================================= */

.menu-toggle {
    width: 32px;
    height: 32px;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;

    border: 0;
    background: none;
    padding: 4px;
    z-index: 4;
}

.menu-toggle span {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 2px;
    background: #09090a;

    transition:
        transform .22s,
        opacity .22s;
}

.menu-toggle[aria-expanded="true"]
span:first-child {
    transform: translateY(7px) rotate(45deg);
}

.menu-toggle[aria-expanded="true"]
span:nth-child(2) {
    opacity: 0;
}

.menu-toggle[aria-expanded="true"]
span:last-child {
    transform: translateY(-7px) rotate(-45deg);
}

/* =========================================
   BLOG MEGA MENU
========================================= */

.mega-menu {
    position: fixed;
    top: var(--header-height);
    left: 0;
    width: 100%;

    background: #fff;
    border-top: 1px solid var(--line);

    box-shadow:
        0 12px 20px rgba(0, 0, 0, .06);

    opacity: 0;
    visibility: hidden;
    transform: translateY(-12px);
    pointer-events: none;

    transition:
        opacity .2s,
        transform .2s,
        visibility .2s;

    z-index: 2;
}

.has-mega.is-open .mega-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

.mega-inner {
    max-width: var(--header-width);
    margin: auto;
    padding: 40px 40px 30px;
}

.mega-grid {
    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 26px 65px;
}

.mega-item {
    display: block;
    padding: 12px 16px;
    min-height: 95px;
    border-radius: 8px;
    transition: background .2s;
}

.mega-item:hover {
    background: var(--hover);
}

.mega-item dt {
    display: flex;
    align-items: center;
    gap: 12px;

    font-size: 20px;
    line-height: 28px;
    font-weight: 600;
    color: var(--ink);

    margin-bottom: 9px;
}

.mega-item dt img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.mega-item dd {
    padding-left: 40px;
    font-size: 14px;
    line-height: 22px;
    color: var(--muted);
}

.mega-footer {
    padding: 0 16px;
    margin-top: 2px;
}

.mega-footer a {
    display: inline-flex;
    align-items: center;
    gap: 5px;

    color: var(--blue);
    font-size: 18px;
    line-height: 26px;
}

.mega-footer a:hover {
    color: #01a4ff;
}

/* =========================================
   MOBILE LANGUAGE
========================================= */

.mobile-language {
    display: none;
}

/* =========================================
   DEMO CONTENT
========================================= */

.demo-content {
    max-width: 1160px;
    margin: 100px auto 0;
    padding: 0 24px;
    text-align: center;
}

.demo-content h1 {
    font-size: clamp(30px, 5vw, 58px);
    font-weight: 700;
    color: #151515;
    letter-spacing: -.04em;
    margin: 0 0 16px;
}

.demo-content p {
    font-size: 16px;
    line-height: 1.7;
    margin: 0 auto;
    max-width: 610px;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .header-inner {
        padding-inline: 32px;
    }

    .nav-list {
        gap: 28px;
    }

    .mega-grid {
        gap: 18px 36px;
    }

    .mega-inner {
        padding-inline: 32px;
    }
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 768px) {

    :root {
        --header-height: 48px;
    }

    body {
        padding-top: var(--header-height);
    }

    .header-inner {
        height: 48px;
        padding: 0 16px;
        gap: 12px;
    }

    .brand {
        width: 134px;
        height: 28px;
    }

    .header-actions {
        gap: 16px;
    }

    .language-picker {
        display: none;
    }

    .download-shortcut {
        display: none !important;
    }

    .menu-toggle {
        display: flex;
    }

    /* Mobile backdrop */

    .mobile-backdrop {
        position: fixed;
        inset: 48px 0 0;
        z-index: 999;

        background: rgba(0, 0, 0, .5);
        backdrop-filter: blur(10px);

        opacity: 0;
        visibility: hidden;
        pointer-events: none;

        transition:
            opacity .3s,
            visibility .3s;
    }

    .mobile-backdrop.is-open {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
    }

    /* Mobile navigation */

    .primary-nav {
        position: fixed;
        z-index: 1000;

        top: 64px;
        left: 16px;
        right: 16px;

        margin: 0;
        max-height: calc(100dvh - 80px);
        overflow-y: auto;
        overscroll-behavior: contain;

        display: none;
        background: #fff;
        border-radius: 4px;

        box-shadow:
            0 4px 10px rgba(0, 0, 0, .1);

        padding: 18px 0 25px;

        opacity: 0;
        transform:
            scale(.95) translateY(-16px);

        transform-origin: top right;

        transition:
            opacity .25s,
            transform .25s;
    }

    .primary-nav.is-open {
        display: block;
        opacity: 1;
        transform: none;
    }

    .nav-list {
        width: 100%;
        height: auto;

        display: flex;
        flex-direction: column;
        gap: 0;
        align-items: stretch;
    }

    .nav-item {
        display: block;
        height: auto;
    }

    .nav-link,
    .nav-trigger {
        min-height: 52px;
        width: 100%;
        padding: 0 16px;

        font-size: 16px;
        font-weight: 600;

        justify-content: space-between;
        text-align: left;
    }

    .nav-link:hover,
    .nav-trigger:hover {
        opacity: 1;
        background: var(--hover);
    }

    .nav-trigger .chevron {
        width: 23px;
        height: 23px;
    }

    /* Mobile Blog menu */

    .mega-menu {
        position: static;
        display: none;
        visibility: visible;
        opacity: 1;
        transform: none;
        pointer-events: auto;

        box-shadow: none;
        border: 0;
        transition: none;
        background: #fff;
    }

    .has-mega.is-open .mega-menu {
        display: block;
    }

    .mega-inner {
        padding: 0;
    }

    .mega-grid {
        display: block;
    }

    .mega-item {
        min-height: unset;
        border-radius: 0;
        padding: 0 20px 0 24px;
    }

    .mega-item dt {
        height: 60px;
        font-size: 18px;
        font-weight: 400;
        line-height: 1.2;
        color: var(--muted);
        margin: 0;
    }

    .mega-item dt img {
        display: none;
    }

    .mega-item dd,
    .mega-footer {
        display: none;
    }

    /* Mobile language */

    .mobile-language {
        display: block;
    }

    .mobile-language-panel {
        display: none;
    }

    .mobile-language.is-open
    .mobile-language-panel {
        display: block;
    }

    .mobile-language-panel a {
        display: flex;
        align-items: center;
        justify-content: space-between;

        min-height: 50px;
        padding: 0 24px;

        font-size: 14px;
        color: var(--ink);
    }

    .mobile-language-panel a:hover {
        background: var(--hover);
    }

    .mobile-language-panel
    a[aria-current="true"] {
        color: var(--blue);
    }

    .mobile-language-panel
    a[aria-current="true"]::after {
        content: "✓";
    }

    .nav-item.mobile-language {
        order: 1;
    }

    body.menu-open {
        overflow: hidden;
    }

    .demo-content {
        margin-top: 72px;
    }
}

/* =========================================
   DESKTOP ONLY
========================================= */

@media (min-width: 769px) {

    .mobile-backdrop {
        display: none !important;
    }

    .primary-nav {
        display: flex !important;
    }
}

/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        transition: none !important;
    }
}

