body.hugo-dashboard-v2 {
    --hd-rose: #82465f;
    --hd-rose-soft: #f3e3ea;
    --hd-blue: #657fa7;
    --hd-blue-soft: #e9eff7;
    --hd-green: #3f765d;
    --hd-green-soft: #e7f2ec;
    --hd-yellow: #8a672a;
    --hd-yellow-soft: #fff2d8;
    --hd-ink: #30282d;
    --hd-muted: #796e74;
    --hd-line: #ddd2d7;
    --hd-surface: #fffdfd;
    padding-bottom: 0;
}

body.hugo-dashboard-v2 .hero-shell {
    max-width: 1280px;
    gap: 18px;
    padding: 24px clamp(14px, 3vw, 34px) 64px;
}

body.hugo-dashboard-v2 .hero-header {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(390px, 1fr) auto;
    gap: 18px;
    align-items: center;
    min-height: 64px;
    padding: 10px 14px;
    border: 1px solid rgba(255, 255, 255, 0.62);
    border-radius: 8px;
    background: rgba(255, 253, 253, 0.72);
    box-shadow: 0 10px 28px rgba(78, 52, 65, 0.08);
    backdrop-filter: blur(18px) saturate(125%);
}

body.hugo-dashboard-v2 .hero-brand-title {
    width: auto;
    min-width: max-content;
    margin: 0;
    flex-wrap: nowrap;
    gap: 8px;
    cursor: pointer;
    outline: none;
}

body.hugo-dashboard-v2 .hero-brand-title:focus-visible {
    border-radius: 7px;
    box-shadow: 0 0 0 3px rgba(101, 127, 167, 0.22);
}

body.hugo-dashboard-v2 .hero-brand-mark {
    width: 44px;
    height: 44px;
    flex: 0 0 auto;
    border-radius: 8px;
    background: #f2dce5;
    border-color: rgba(130, 70, 95, 0.2);
    box-shadow: none;
    backdrop-filter: none;
}

body.hugo-dashboard-v2 .hero-brand-mascot {
    padding: 1px;
}

body.hugo-dashboard-v2 .hero-brand-text {
    font-size: 1.9rem;
    line-height: 1;
    text-shadow: none;
}

body.hugo-dashboard-v2 .hero-brand-subtitle {
    display: block;
    min-width: 0;
    flex: 0 1 auto;
    max-width: 130px;
    font-size: 0.67rem;
    line-height: 1.35;
}

body.hugo-dashboard-v2 .hero-nav {
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 4px;
    gap: 3px;
    overflow: visible;
    border: 1px solid rgba(130, 70, 95, 0.12);
    border-radius: 7px;
    background: rgba(239, 231, 235, 0.76);
    box-shadow: none;
    backdrop-filter: none;
}

body.hugo-dashboard-v2 .hero-nav__liquid-indicator {
    display: none !important;
}

body.hugo-dashboard-v2 .hero-nav__btn {
    width: auto;
    max-width: none;
    min-height: 38px;
    padding: 7px 11px;
    border: 0;
    border-radius: 5px;
    color: #6e6269;
    font-size: 0.8rem;
    font-weight: 700;
    white-space: nowrap;
    transform: none;
}

body.hugo-dashboard-v2 .hero-nav__btn:hover,
body.hugo-dashboard-v2 .hero-nav__btn:focus-visible {
    background: rgba(255, 255, 255, 0.74);
    color: var(--hd-rose);
    box-shadow: none;
    transform: none;
}

body.hugo-dashboard-v2 .hero-nav__btn.active {
    background: var(--hd-rose);
    color: #fff;
    box-shadow: 0 3px 8px rgba(94, 51, 70, 0.18);
    text-shadow: none;
}

.hugo-community-mobile-nav {
    display: none !important;
}

.hugo-account-zone {
    position: relative;
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: flex-end;
    min-width: max-content;
}

.hugo-community-chip,
.hugo-profile-trigger,
.hugo-profile-menu button {
    font: inherit;
}

.hugo-community-chip {
    display: inline-flex;
    min-height: 36px;
    gap: 6px;
    align-items: center;
    padding: 7px 10px;
    border: 0;
    border-radius: 6px;
    background: var(--hd-blue-soft);
    color: #4e6689;
    cursor: pointer;
    font-size: 0.74rem;
    font-weight: 700;
}

.hugo-community-chip b {
    display: grid;
    min-width: 18px;
    height: 18px;
    place-items: center;
    border-radius: 999px;
    background: var(--hd-blue);
    color: #fff;
    font-size: 0.62rem;
}

.hugo-goal-chip strong,
.hugo-goal-chip span {
    display: block;
    text-align: right;
}

.hugo-goal-chip strong {
    color: var(--hd-ink);
    font-size: 0.76rem;
}

.hugo-goal-chip span {
    margin-top: 2px;
    color: var(--hd-muted);
    font-size: 0.65rem;
}

.hugo-profile-trigger {
    width: 39px;
    height: 39px;
    overflow: hidden;
    padding: 1px;
    border: 2px solid rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    background: #e3c5d1;
    box-shadow: 0 0 0 1px rgba(130, 70, 95, 0.35);
    cursor: pointer;
}

.hugo-profile-trigger img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.hugo-profile-menu {
    position: absolute;
    top: calc(100% + 12px);
    right: 0;
    z-index: 10050;
    width: 258px;
    padding: 12px;
    border: 1px solid var(--hd-line);
    border-radius: 8px;
    background: #fffdfd;
    box-shadow: 0 18px 40px rgba(54, 37, 45, 0.2);
}

.hugo-profile-menu[hidden] {
    display: none;
}

.hugo-profile-menu__head {
    display: flex;
    gap: 10px;
    align-items: center;
    padding-bottom: 11px;
    border-bottom: 1px solid #e8dfe3;
}

.hugo-profile-menu__head img {
    width: 48px;
    height: 54px;
    object-fit: contain;
}

.hugo-profile-menu__head strong,
.hugo-profile-menu__head span {
    display: block;
}

.hugo-profile-menu__head strong {
    color: var(--hd-ink);
    font-size: 0.94rem;
}

.hugo-profile-menu__head span {
    margin-top: 3px;
    color: var(--hd-muted);
    font-size: 0.7rem;
}

.hugo-profile-menu__stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    padding: 10px 0;
}

.hugo-profile-menu__stats span {
    padding: 8px;
    border-left: 2px solid var(--hd-blue);
    background: #f5f7fa;
    color: var(--hd-muted);
    font-size: 0.64rem;
}

.hugo-profile-menu__stats b {
    display: block;
    margin-bottom: 2px;
    color: var(--hd-ink);
    font-size: 0.78rem;
}

.hugo-profile-menu > button {
    width: 100%;
    padding: 9px 8px;
    border: 0;
    border-top: 1px solid #eee7ea;
    background: transparent;
    color: #51464d;
    cursor: pointer;
    font-size: 0.76rem;
    font-weight: 700;
    text-align: left;
}

.hugo-profile-menu > button:hover,
.hugo-profile-menu > button:focus-visible {
    background: #f8f1f4;
    color: var(--hd-rose);
    outline: none;
}

#home-view.view {
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

#home-view.view.active {
    display: block;
}

.hugo-home-root,
.hugo-home-root * {
    box-sizing: border-box;
    letter-spacing: 0;
}

.hugo-home-root {
    color: var(--hd-ink);
    font-family: ui-rounded, "SF Pro Rounded", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
}

.hugo-home-root button,
.hugo-home-root input {
    font: inherit;
}

.hugo-home-loading {
    display: grid;
    min-height: 420px;
    place-items: center;
    color: var(--hd-muted);
}

.hd-today {
    display: flex;
    gap: 24px;
    align-items: flex-end;
    justify-content: space-between;
    padding: 6px 4px 2px;
}

.hd-date,
.hd-kicker {
    display: block;
    color: var(--hd-rose);
    font-size: 0.69rem;
    font-weight: 800;
}

.hd-today h2 {
    margin: 5px 0 0;
    color: var(--hd-ink);
    font-size: 1.58rem;
    line-height: 1.2;
}

.hd-today-progress {
    display: grid;
    grid-template-columns: auto minmax(120px, 190px) auto;
    gap: 12px;
    align-items: center;
}

.hd-today-count span,
.hd-today-count strong {
    display: block;
    text-align: right;
}

.hd-today-count span {
    color: var(--hd-muted);
    font-size: 0.66rem;
}

.hd-today-count strong {
    margin-top: 2px;
    font-size: 0.84rem;
}

.hd-progress {
    display: block;
    height: 7px;
    overflow: hidden;
    border-radius: 99px;
    background: #ded5da;
}

.hd-progress > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--hd-blue);
    transition: width 180ms ease;
}

.hd-primary-button,
.hd-secondary-button,
.hd-link-button,
.hd-tab-button,
.hd-icon-action {
    border: 0;
    cursor: pointer;
}

.hd-primary-button {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    padding: 8px 13px;
    border-radius: 6px;
    background: var(--hd-ink);
    color: #fff;
    font-size: 0.74rem;
    font-weight: 800;
    white-space: nowrap;
}

.hd-primary-button:hover,
.hd-primary-button:focus-visible {
    background: var(--hd-rose);
    outline: 3px solid rgba(130, 70, 95, 0.15);
}

.hd-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(350px, 0.82fr);
    gap: 14px;
    margin-top: 17px;
}

.hd-module,
.hd-community {
    min-width: 0;
    border: 1px solid var(--hd-line);
    border-radius: 8px;
    background: var(--hd-surface);
    box-shadow: 0 10px 24px rgba(70, 48, 59, 0.06);
}

.hd-module {
    padding: 17px;
}

.hd-module-head,
.hd-community-head {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    justify-content: space-between;
}

.hd-module h3,
.hd-community h3 {
    margin: 5px 0 0;
    color: var(--hd-ink);
    font-size: 1.04rem;
}

.hd-link-button {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    padding: 5px 2px;
    background: transparent;
    color: var(--hd-muted);
    font-size: 0.68rem;
    font-weight: 700;
    white-space: nowrap;
}

.hd-link-button:hover,
.hd-link-button:focus-visible {
    color: var(--hd-rose);
    outline: none;
}

.hd-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 14px 0 10px;
}

.hd-tab-button {
    min-height: 30px;
    padding: 5px 10px;
    border: 1px solid #dcd2d7;
    border-radius: 999px;
    background: transparent;
    color: #746970;
    font-size: 0.68rem;
    font-weight: 700;
}

.hd-tab-button.is-active {
    border-color: #aa7189;
    background: #f6eaf0;
    color: var(--hd-rose);
}

.hd-exam-list {
    border-top: 1px solid #e8e0e4;
}

.hd-exam-row {
    display: grid;
    width: 100%;
    grid-template-columns: 36px minmax(0, 1fr) auto 24px;
    gap: 10px;
    align-items: center;
    padding: 12px 3px;
    border: 0;
    border-bottom: 1px solid #ece5e8;
    background: transparent;
    color: var(--hd-ink);
    cursor: pointer;
    text-align: left;
}

.hd-exam-row:hover,
.hd-exam-row:focus-visible {
    background: #faf6f8;
    outline: none;
}

.hd-exam-tag {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 6px;
    background: var(--hd-rose-soft);
    color: var(--hd-rose);
    font-size: 0.7rem;
    font-weight: 800;
}

.hd-exam-tag.is-blue {
    background: var(--hd-blue-soft);
    color: #536c92;
}

.hd-exam-tag.is-green {
    background: var(--hd-green-soft);
    color: var(--hd-green);
}

.hd-exam-copy {
    min-width: 0;
}

.hd-exam-copy strong,
.hd-exam-copy span {
    display: block;
}

.hd-exam-copy strong {
    overflow: hidden;
    color: var(--hd-ink);
    font-size: 0.76rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hd-exam-copy span {
    margin-top: 4px;
    color: var(--hd-muted);
    font-size: 0.66rem;
}

.hd-frequency {
    color: #98654b;
    font-size: 0.66rem;
    white-space: nowrap;
}

.hd-row-arrow {
    color: var(--hd-muted);
    font-size: 1rem;
    text-align: center;
}

.hd-module-foot {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    margin-top: 13px;
}

.hd-module-foot > span {
    color: var(--hd-muted);
    font-size: 0.66rem;
}

.hd-secondary-button {
    min-height: 34px;
    padding: 7px 11px;
    border-radius: 6px;
    background: var(--hd-rose);
    color: #fff;
    font-size: 0.68rem;
    font-weight: 800;
    white-space: nowrap;
}

.hd-plan-time,
.hd-review-count {
    padding: 5px 8px;
    border-radius: 999px;
    background: var(--hd-yellow-soft);
    color: var(--hd-yellow);
    font-size: 0.64rem;
    font-weight: 800;
    white-space: nowrap;
}

.hd-task-list {
    display: grid;
    margin: 13px 0;
    border-top: 1px solid #e8e0e4;
}

.hd-task {
    display: grid;
    grid-template-columns: 19px minmax(0, 1fr) auto;
    gap: 9px;
    align-items: center;
    min-height: 57px;
    padding: 9px 3px;
    border-bottom: 1px solid #e9e1e5;
}

.hd-task input {
    width: 16px;
    height: 16px;
    margin: 0;
    accent-color: var(--hd-green);
}

.hd-task strong,
.hd-task span {
    display: block;
}

.hd-task strong {
    color: var(--hd-ink);
    font-size: 0.72rem;
}

.hd-task span {
    margin-top: 3px;
    color: var(--hd-muted);
    font-size: 0.64rem;
}

.hd-task b {
    color: var(--hd-rose);
    font-size: 0.64rem;
    white-space: nowrap;
}

.hd-task.is-done strong {
    color: #71666c;
    text-decoration: line-through;
}

.hd-task.is-done b {
    color: var(--hd-green);
}

.hd-plan-button {
    width: 100%;
    background: var(--hd-rose);
}

.hd-compact-module {
    min-height: 132px;
}

.hd-cambridge-row {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) auto;
    gap: 11px;
    align-items: center;
    margin-top: 14px;
}

.hd-book-cover {
    display: grid;
    width: 54px;
    height: 68px;
    place-items: center;
    border-radius: 4px;
    background: #45668a;
    color: #fff;
    font-size: 1.2rem;
    font-weight: 800;
}

.hd-book-cover small {
    margin-top: -18px;
    font-size: 0.48rem;
}

.hd-cambridge-copy {
    min-width: 0;
}

.hd-cambridge-copy strong,
.hd-cambridge-copy span {
    display: block;
}

.hd-cambridge-copy strong {
    overflow: hidden;
    font-size: 0.73rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hd-cambridge-copy span {
    margin: 5px 0 9px;
    color: var(--hd-muted);
    font-size: 0.64rem;
}

.hd-vocab-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 14px;
}

.hd-vocab-actions button {
    display: flex;
    min-width: 0;
    min-height: 64px;
    gap: 8px;
    align-items: center;
    padding: 9px;
    border: 1px solid #dfd5da;
    border-radius: 6px;
    background: #faf7f8;
    color: var(--hd-ink);
    cursor: pointer;
    text-align: left;
}

.hd-vocab-actions button:hover,
.hd-vocab-actions button:focus-visible {
    border-color: var(--hd-blue);
    background: #f2f6fb;
    outline: none;
}

.hd-vocab-icon {
    color: var(--hd-blue);
    font-size: 1rem;
}

.hd-vocab-actions strong,
.hd-vocab-actions span {
    display: block;
}

.hd-vocab-actions strong {
    overflow: hidden;
    font-size: 0.69rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hd-vocab-actions span {
    margin-top: 3px;
    color: var(--hd-muted);
    font-size: 0.61rem;
}

.hd-community {
    margin-top: 14px;
    padding: 18px;
}

.hd-leader-tabs {
    display: inline-flex;
    gap: 3px;
    padding: 3px;
    border: 1px solid #ded4d9;
    border-radius: 7px;
    background: #eee7ea;
}

.hd-leader-tabs button {
    min-height: 32px;
    padding: 6px 11px;
    border: 0;
    border-radius: 5px;
    background: transparent;
    color: #74686f;
    cursor: pointer;
    font-size: 0.68rem;
    font-weight: 800;
}

.hd-leader-tabs button.is-active {
    background: #fff;
    color: var(--hd-rose);
    box-shadow: 0 2px 6px rgba(74, 50, 61, 0.1);
}

.hd-community-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.34fr) minmax(280px, 0.66fr);
    gap: 22px;
    margin-top: 15px;
}

.hd-leader-meta {
    display: flex;
    gap: 10px;
    justify-content: space-between;
    padding-bottom: 8px;
    border-bottom: 1px solid #e9e1e5;
    color: var(--hd-muted);
    font-size: 0.64rem;
}

.hd-ranking-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.hd-ranking-row {
    display: grid;
    grid-template-columns: 26px 30px minmax(0, 1fr) auto auto;
    gap: 9px;
    align-items: center;
    min-height: 44px;
    padding: 7px 2px;
    border-bottom: 1px solid #ece5e8;
    font-size: 0.7rem;
}

.hd-rank-number {
    color: var(--hd-muted);
    text-align: center;
}

.hd-rank-number.is-medal {
    color: #9a6c27;
    font-weight: 800;
}

.hd-rank-avatar,
.hd-teacher-avatar {
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e3c5d1;
    color: #63374b;
    font-weight: 800;
}

.hd-rank-avatar {
    width: 28px;
    height: 28px;
    font-size: 0.64rem;
}

.hd-rank-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hd-rank-detail {
    color: var(--hd-muted);
    font-size: 0.64rem;
    white-space: nowrap;
}

.hd-rank-value {
    min-width: 62px;
    text-align: right;
    white-space: nowrap;
}

.hd-my-rank {
    display: grid;
    grid-template-columns: 50px 30px minmax(0, 1fr) auto;
    gap: 9px;
    align-items: center;
    margin-top: 8px;
    padding: 10px;
    border-left: 3px solid var(--hd-blue);
    background: var(--hd-blue-soft);
    color: #4c6384;
    font-size: 0.68rem;
}

.hd-my-rank b {
    text-align: right;
    white-space: nowrap;
}

.hd-challenge {
    padding-left: 20px;
    border-left: 1px solid #e2d9dd;
}

.hd-challenge-top {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) auto;
    gap: 9px;
    align-items: center;
}

.hd-challenge-icon {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 7px;
    background: var(--hd-yellow-soft);
    color: var(--hd-yellow);
    font-size: 1rem;
}

.hd-challenge-top strong,
.hd-challenge-top span {
    display: block;
}

.hd-challenge-top strong {
    font-size: 0.73rem;
}

.hd-challenge-top span {
    margin-top: 3px;
    color: var(--hd-muted);
    font-size: 0.62rem;
}

.hd-challenge-top b {
    color: var(--hd-muted);
    font-size: 0.62rem;
    white-space: nowrap;
}

.hd-challenge h4 {
    margin: 16px 0 0;
    font-size: 0.92rem;
}

.hd-challenge-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 12px 0;
}

.hd-challenge-stats span {
    padding: 9px;
    border-left: 2px solid #b27a91;
    background: #faf5f7;
}

.hd-challenge-stats small,
.hd-challenge-stats strong {
    display: block;
}

.hd-challenge-stats small {
    color: var(--hd-muted);
    font-size: 0.61rem;
}

.hd-challenge-stats strong {
    margin-top: 3px;
    font-size: 0.7rem;
}

.hd-class-note {
    display: flex;
    gap: 9px;
    align-items: flex-start;
    margin-top: 13px;
    padding-top: 12px;
    border-top: 1px solid #e5dce0;
}

.hd-teacher-avatar {
    width: 30px;
    height: 30px;
    flex: 0 0 auto;
    font-size: 0.65rem;
}

.hd-class-note p {
    margin: 0;
    color: var(--hd-muted);
    font-size: 0.65rem;
    line-height: 1.55;
}

.hd-class-note strong {
    color: var(--hd-ink);
}

@media (max-width: 1060px) {
    body.hugo-dashboard-v2 .hero-header {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    body.hugo-dashboard-v2 .hero-nav {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    .hugo-account-zone {
        grid-column: 2;
        grid-row: 1;
    }

    .hd-grid,
    .hd-community-grid {
        grid-template-columns: 1fr;
    }

    .hd-challenge {
        padding-top: 16px;
        padding-left: 0;
        border-top: 1px solid #e2d9dd;
        border-left: 0;
    }
}

@media (max-width: 680px) {
    body.hugo-dashboard-v2 {
        padding-bottom: 68px;
    }

    body.hugo-dashboard-v2 .hero-shell {
        gap: 14px;
        padding: 12px 10px 32px;
    }

    body.hugo-dashboard-v2 .hero-header {
        grid-template-columns: minmax(0, 1fr) auto;
        min-height: 56px;
        padding: 8px 10px;
        backdrop-filter: none;
    }

    body.hugo-dashboard-v2 .hero-brand-mark {
        width: 39px;
        height: 39px;
    }

    body.hugo-dashboard-v2 .hero-brand-text {
        font-size: 1.48rem;
    }

    body.hugo-dashboard-v2 .hero-brand-subtitle,
    .hugo-goal-chip,
    .hugo-community-chip span {
        display: none;
    }

    .hugo-account-zone {
        gap: 7px;
    }

    .hugo-community-chip {
        min-width: 36px;
        padding: 7px;
        justify-content: center;
    }

    .hugo-profile-menu {
        right: -1px;
        width: min(270px, calc(100vw - 26px));
    }

    body.hugo-dashboard-v2 .hero-nav {
        position: fixed;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 10040;
        display: grid;
        width: 100%;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        gap: 0;
        padding: 5px 4px max(5px, env(safe-area-inset-bottom));
        border: 0;
        border-top: 1px solid #d8cbd1;
        border-radius: 0;
        background: rgba(255, 253, 253, 0.96);
        box-shadow: 0 -8px 20px rgba(60, 40, 50, 0.08);
        backdrop-filter: blur(18px);
    }

    body.hugo-dashboard-v2 .hero-nav__btn,
    .hugo-community-mobile-nav {
        display: flex !important;
        width: 100%;
        min-width: 0;
        min-height: 46px;
        padding: 7px 2px;
        border-radius: 5px;
        font-size: 0.66rem;
        white-space: normal;
    }

    .hd-today {
        align-items: flex-start;
        padding-inline: 2px;
    }

    .hd-today h2 {
        font-size: 1.34rem;
    }

    .hd-today-progress {
        grid-template-columns: auto;
        gap: 6px;
        justify-items: end;
    }

    .hd-today-progress > .hd-progress {
        display: none;
    }

    .hd-grid {
        grid-template-columns: 1fr;
        margin-top: 13px;
    }

    .hd-module,
    .hd-community {
        padding: 14px;
    }

    .hd-exam-row {
        grid-template-columns: 36px minmax(0, 1fr) 22px;
    }

    .hd-frequency {
        display: none;
    }

    .hd-module-foot {
        align-items: flex-start;
        flex-direction: column;
    }

    .hd-vocab-actions {
        grid-template-columns: 1fr;
    }

    .hd-vocab-actions button {
        min-height: 52px;
    }

    .hd-community-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .hd-ranking-row {
        grid-template-columns: 24px 28px minmax(0, 1fr) auto;
    }

    .hd-rank-detail {
        display: none;
    }

    .hd-my-rank {
        grid-template-columns: 46px 28px minmax(0, 1fr) auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hugo-home-root * {
        transition: none !important;
        scroll-behavior: auto !important;
    }
}
