.gw-wiki-home {
    padding: 42px 0 72px;
    background: var(--gw-bg);
}

.gw-wiki-home__hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 420px);
    gap: 32px;
    align-items: end;
    padding: 8px 0 30px;
    border-bottom: 1px solid var(--gw-border);
}

.gw-wiki-home__hero h1 {
    margin: 8px 0 0;
    color: var(--gw-heading);
    font-size: clamp(34px, 4.6vw, 54px);
    font-weight: 780;
    line-height: 1.12;
    letter-spacing: 0;
}

.gw-wiki-home__hero > div:first-child > p:last-child {
    max-width: 650px;
    margin: 14px 0 0;
    color: var(--gw-text-secondary);
    font-size: 16px;
    line-height: 1.8;
}

.gw-wiki-home__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.gw-wiki-home__stats span {
    display: grid;
    gap: 5px;
    min-width: 0;
    padding: 17px 14px;
    border: 1px solid var(--gw-border);
    border-radius: 8px;
    background: var(--gw-white);
    box-shadow: 0 8px 22px rgba(31, 35, 53, .04);
}

.gw-wiki-home__stats strong {
    overflow: hidden;
    color: var(--gw-heading);
    font-size: 24px;
    line-height: 1.1;
    text-overflow: ellipsis;
}

.gw-wiki-home__stats small {
    color: var(--gw-text-muted);
    font-size: 12px;
    line-height: 1.2;
}

.gw-wiki-home__quick-links {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 10px;
    margin: 22px 0 0;
}

.gw-wiki-home__quick-links a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 58px;
    padding: 0 15px;
    border: 1px solid color-mix(in srgb, var(--wiki-color) 24%, #e8eaf1);
    border-radius: 8px;
    background: var(--gw-white);
    color: var(--wiki-color);
    font-weight: 800;
    text-decoration: none;
    transition: background var(--gw-transition-fast), border-color var(--gw-transition-fast), color var(--gw-transition-fast), transform var(--gw-transition-fast);
}

.gw-wiki-home__quick-links a:hover {
    border-color: var(--wiki-color);
    background: var(--wiki-color);
    color: #fff;
    transform: translateY(-1px);
}

.gw-wiki-home__quick-links span {
    min-width: 0;
    overflow: hidden;
    font-size: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gw-wiki-home__quick-links b {
    flex: 0 0 auto;
}

.gw-wiki-home__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    gap: 28px;
    align-items: start;
    margin-top: 36px;
}

.gw-wiki-home__main,
.gw-wiki-home__side {
    min-width: 0;
}

.gw-wiki-home__panel {
    min-width: 0;
    padding: 24px;
    border: 1px solid var(--gw-border);
    border-radius: 8px;
    background: var(--gw-white);
    box-shadow: 0 10px 28px rgba(31, 35, 53, .04);
}

.gw-page-section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
}

.gw-page-section-head h2 {
    margin: 6px 0 0;
    color: var(--gw-heading);
    font-size: 25px;
    font-weight: 760;
    line-height: 1.25;
    letter-spacing: 0;
}

.gw-page-section-head > a {
    color: var(--gw-primary);
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
}

.gw-wiki-home__branches {
    display: grid;
    gap: 14px;
}

.gw-wiki-home__branch {
    display: grid;
    gap: 14px;
    min-width: 0;
    padding: 20px;
    border: 1px solid color-mix(in srgb, var(--wiki-color) 22%, #e8eaf1);
    border-left: 4px solid var(--wiki-color);
    border-radius: 8px;
    background: #fff;
}

.gw-wiki-home__branch-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 13px;
    align-items: start;
}

.gw-wiki-home__branch-mark {
    width: 12px;
    height: 12px;
    margin-top: 8px;
    border-radius: 50%;
    background: var(--wiki-color);
    box-shadow: 0 0 0 5px color-mix(in srgb, var(--wiki-color) 12%, transparent);
}

.gw-wiki-home__branch h3 {
    margin: 0;
    color: var(--gw-heading);
    font-size: 21px;
    line-height: 1.3;
}

.gw-wiki-home__branch-head p {
    margin: 7px 0 0;
    color: var(--gw-text-secondary);
    font-size: 14px;
    line-height: 1.7;
}

.gw-wiki-home__branch-head > a {
    color: var(--wiki-color);
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
}

.gw-wiki-home__branch-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.gw-wiki-home__branch-meta span {
    display: inline-flex;
    max-width: 100%;
    min-height: 26px;
    align-items: center;
    padding: 0 9px;
    overflow: hidden;
    border-radius: 999px;
    background: color-mix(in srgb, var(--wiki-color) 8%, #f4f5f8);
    color: var(--gw-text-secondary);
    font-size: 12px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gw-wiki-home__branch ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.gw-wiki-home__branch li a {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    padding: 0 10px;
    border: 1px solid var(--gw-border-light);
    border-radius: 6px;
    background: #fbfbfe;
    color: var(--gw-text-secondary);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}

.gw-wiki-home__branch li a:hover {
    border-color: color-mix(in srgb, var(--wiki-color) 34%, #e8eaf1);
    color: var(--wiki-color);
}

.gw-wiki-home__latest-grid {
    display: grid;
    gap: 0;
    border-top: 1px solid var(--gw-border);
}

.gw-wiki-home__latest-grid a {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    min-height: 58px;
    border-bottom: 1px solid var(--gw-border-light);
    color: var(--gw-heading);
    text-decoration: none;
}

.gw-wiki-home__latest-grid a:hover {
    color: var(--gw-primary);
}

.gw-wiki-home__latest-grid strong {
    min-width: 0;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.4;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gw-wiki-home__latest-grid time {
    color: var(--gw-text-muted);
    font-size: 12px;
    white-space: nowrap;
}

.gw-content-empty {
    padding: 28px;
    border: 1px dashed var(--gw-border);
    border-radius: 8px;
    color: var(--gw-text-muted);
    font-size: 14px;
    text-align: center;
}

@media (max-width: 1080px) {
    .gw-wiki-home__quick-links {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .gw-wiki-home__layout {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .gw-wiki-home {
        padding: 30px 0 56px;
    }

    .gw-wiki-home__hero {
        grid-template-columns: 1fr;
        gap: 22px;
        padding-bottom: 26px;
    }

    .gw-wiki-home__hero > div:first-child > p:last-child {
        font-size: 14px;
    }

    .gw-wiki-home__stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .gw-wiki-home__stats span {
        padding: 14px 10px;
    }

    .gw-wiki-home__stats strong {
        font-size: 20px;
    }

    .gw-wiki-home__quick-links {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gw-wiki-home__panel {
        padding: 18px;
    }

    .gw-wiki-home__branch {
        padding: 17px;
    }

    .gw-wiki-home__branch-head {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .gw-wiki-home__branch-head > a {
        grid-column: 2;
        justify-self: start;
    }
}

@media (max-width: 480px) {
    .gw-wiki-home__stats {
        grid-template-columns: 1fr;
    }

    .gw-wiki-home__quick-links {
        grid-template-columns: 1fr;
    }

    .gw-page-section-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px;
    }

    .gw-wiki-home__latest-grid a {
        grid-template-columns: 1fr;
        gap: 3px;
        align-items: start;
        padding: 11px 0;
    }
}

/* Dense knowledge portal layout. */
.gw-wiki-home { padding:32px 0 64px; }
.gw-wiki-home__hero { gap:24px; padding:4px 0 22px; }
.gw-wiki-home__hero h1 { font-size:clamp(30px,4vw,46px); }
.gw-wiki-home__hero > div:first-child > p:last-child { margin-top:10px; font-size:15px; line-height:1.65; }
.gw-wiki-home__stats { gap:8px; }
.gw-wiki-home__stats span { gap:3px; padding:12px; box-shadow:none; }
.gw-wiki-home__stats strong { font-size:21px; }
.gw-wiki-home__quick-links { gap:8px; margin-top:16px; }
.gw-wiki-home__quick-links a { min-height:46px; padding:0 12px; }
.gw-wiki-home__layout { gap:20px; margin-top:24px; }
.gw-wiki-home__panel { padding:18px; box-shadow:none; }
.gw-page-section-head { margin-bottom:14px; }
.gw-page-section-head h2 { margin-top:4px; font-size:21px; }
.gw-wiki-home__branches { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.gw-wiki-home__branch { gap:10px; padding:14px; border-left-width:3px; }
.gw-wiki-home__branch-head { gap:10px; }
.gw-wiki-home__branch-mark { width:9px; height:9px; margin-top:6px; box-shadow:0 0 0 4px color-mix(in srgb,var(--wiki-color) 12%,transparent); }
.gw-wiki-home__branch h3 { font-size:17px; }
.gw-wiki-home__branch-head p { display:-webkit-box; margin-top:4px; overflow:hidden; font-size:12px; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.gw-wiki-home__branch-head > a { font-size:12px; }
.gw-wiki-home__branch-meta { gap:5px; }
.gw-wiki-home__branch-meta span { min-height:22px; padding:0 7px; font-size:11px; }
.gw-wiki-home__branch ul { gap:5px; }
.gw-wiki-home__branch li a { min-height:27px; padding:0 8px; font-size:12px; }
.gw-wiki-home__side { display:grid; gap:16px; }
.gw-wiki-home__latest-grid a { min-height:44px; gap:8px; }
.gw-wiki-home__latest-grid a > span { display:grid; min-width:0; gap:2px; }
.gw-wiki-home__latest-grid strong { font-size:13px; }
.gw-wiki-home__latest-grid small,.gw-wiki-home__popular-list small { overflow:hidden; color:var(--gw-text-muted); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
.gw-wiki-home__latest-grid time { font-size:11px; }
.gw-wiki-home__popular-list { display:grid; gap:0; margin:0; padding:0; list-style:none; border-top:1px solid var(--gw-border); }
.gw-wiki-home__popular-list li { display:grid; grid-template-columns:28px minmax(0,1fr); gap:8px; align-items:center; min-height:48px; border-bottom:1px solid var(--gw-border-light); }
.gw-wiki-home__popular-list > li > span { color:var(--gw-primary); font-size:12px; font-weight:800; }
.gw-wiki-home__popular-list a { display:grid; min-width:0; gap:2px; color:var(--gw-heading); text-decoration:none; }
.gw-wiki-home__popular-list a:hover strong { color:var(--gw-primary); }
.gw-wiki-home__popular-list strong { overflow:hidden; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }

@media (max-width:1080px) {
    .gw-wiki-home__layout { grid-template-columns:1fr; }
    .gw-wiki-home__side { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:760px) {
    .gw-wiki-home { padding:24px 0 calc(76px + env(safe-area-inset-bottom)); }
    .gw-wiki-home__hero { gap:16px; padding-bottom:18px; }
    .gw-wiki-home__stats span { padding:10px 8px; }
    .gw-wiki-home__stats strong { font-size:18px; }
    .gw-wiki-home__stats small { font-size:11px; }
    .gw-wiki-home__quick-links { margin-top:12px; }
    .gw-wiki-home__quick-links a { min-height:42px; font-size:13px; }
    .gw-wiki-home__layout { gap:14px; margin-top:18px; }
    .gw-wiki-home__panel { padding:14px; }
    .gw-wiki-home__branches { grid-template-columns:1fr; gap:8px; }
    .gw-wiki-home__branch { padding:12px; }
    .gw-wiki-home__branch-head { grid-template-columns:auto minmax(0,1fr); }
    .gw-wiki-home__branch-head > a { grid-column:2; justify-self:start; }
    .gw-wiki-home__side { grid-template-columns:1fr; gap:14px; }
}

@media (max-width:480px) {
    .gw-wiki-home__stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .gw-wiki-home__quick-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .gw-wiki-home__hero h1 { font-size:29px; }
    .gw-wiki-home__hero > div:first-child > p:last-child { font-size:13px; }
    .gw-page-section-head { align-items:center; flex-direction:row; gap:10px; }
    .gw-page-section-head h2 { font-size:19px; }
    .gw-wiki-home__latest-grid a { grid-template-columns:minmax(0,1fr) auto; padding:8px 0; }
}
