/**
 * LG New UI 主页样式表
 * 作用域: .lgnewui-home
 */

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

body {
    overflow-x: hidden;
}

* {
    -webkit-overflow-scrolling: touch;
    -webkit-tap-highlight-color: transparent;
}

.lgnewui-home {
    --lg-font-sans: 'Inter', system-ui, -apple-system, sans-serif;
    --lg-font-serif: 'Noto Serif SC', serif;
    --lg-font-main: 'Noto Serif SC', serif;
    --lg-font-body: 'Inter', sans-serif;
    --lg-color-bg: #ffffff;
    --lg-color-text: #1a1a1a;
    --lg-color-text-muted: #64748b;
    --lg-color-text-subtle: #94a3b8;
    --lg-color-border: rgba(0, 0, 0, 0.05);
    --lg-color-rose: #e11d48;
    --lg-color-white: #ffffff;
    --lg-color-black: #000000;
    --lg-grad-font-orange: #f97316;
    --lg-grad-font-blue: #3b82f6;
    --lg-grad-blue: linear-gradient(135deg, #60a5fa 0%, #3b82f6 100%);
    --lg-grad-orange: linear-gradient(135deg, #fb923c 0%, #f97316 100%);
    --lg-grad-pink: linear-gradient(135deg, #f472b6 0%, #db2777 100%);
    --lg-grad-purple: linear-gradient(135deg, #c084fc 0%, #a855f7 100%);
    --lg-grad-cyan: linear-gradient(135deg, #22d3ee 0%, #06b6d4 100%);
    --lg-grad-moon: linear-gradient(135deg, #312e81 0%, #1e1b4b 100%);
    --lg-grad-battery: linear-gradient(135deg, #34d399 0%, #059669 100%);
    --lg-grad-quote: linear-gradient(135deg, #fbbf24 0%, #d97706 100%);
    --lg-grad-red: linear-gradient(135deg, #ef4444 0%, #be123c 100%);
    --lg-grad-pro-red: linear-gradient(to bottom right, #ef4444, #e11d48);
    --lg-grad-pro-pink: linear-gradient(to bottom right, #ec4899, #f43f5e);
    --lg-grad-pro-slate: linear-gradient(to bottom right, #94a3b8, #71717a);
    --lg-grad-pro-black: linear-gradient(to bottom right, #111827, #000000);
    --lg-grad-pro-sky: linear-gradient(to bottom right, #0ea5e9, #2563eb);
    --lg-grad-pro-orange: linear-gradient(to bottom right, #f97316, #ef4444);
    --lg-grad-pro-amber: linear-gradient(to bottom right, #fbbf24, #eab308);
    --lg-radius-lg: 1.5rem;
    --lg-radius-md: 1rem;
    --lg-radius-sm: 0.5rem;
    --lg-shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, 0.02);
    --lg-shadow-md: 0 10px 40px -10px rgba(0, 0, 0, 0.03);
    --lg-shadow-hover: 0 20px 50px -12px rgba(0, 0, 0, 0.05);
    font-family: var(--lg-font-main);
    color: var(--lg-color-text);
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    box-sizing: border-box;
}

.lgnewui-home *,
.lgnewui-home *::before,
.lgnewui-home *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.lgnewui-home button {
    background: none;
    border: none;
    cursor: pointer;
    font-family: inherit;
}

.lgnewui-home a {
    text-decoration: none;
    color: inherit;
}

.lgnewui-home .u-screen-reader-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.lgnewui-home .u-font-serif {
    font-family: var(--lg-font-serif);
}

.lgnewui-home .u-font-bold {
    font-weight: 700;
}

.lgnewui-home .u-font-black {
    font-weight: 900;
}

.lgnewui-home .u-text-center {
    text-align: center;
}

.lgnewui-home .u-hidden-mobile {
    display: none;
}

@media (min-width: 640px) {
    .lgnewui-home .u-hidden-mobile {
        display: block;
    }
}

.lgnewui-home .lgnewui-title-highlight {
    position: relative;
    z-index: 1;
    display: inline-block;
}

.lgnewui-home .lgnewui-title-highlight::before {
    content: '';
    position: absolute;
    left: -0.2em;
    right: -0.2em;
    bottom: 0.1em;
    height: 0.5em;
    background: linear-gradient(120deg, rgba(253, 224, 71, 0.4) 0%, rgba(250, 204, 21, 0.3) 100%);
    z-index: -1;
    transform: skewX(-15deg) rotate(-2deg);
    border-radius: 4px;
    pointer-events: none;
}

.lgnewui-home.lgnewui-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem 1.5rem;
}

.lgnewui-home .lgnewui-section {
    margin-bottom: 5rem;
}

.lgnewui-home .lgnewui-section:last-child,
.lgnewui-home .lgnewui-section#messages {
    margin-bottom: 0 !important;
}

.lgnewui-home .lgnewui-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    grid-auto-flow: dense;
}

@media (max-width: 767px) {
    .lgnewui-home .lgnewui-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }

    .lgnewui-home .lgnewui-col-2 {
        grid-column: span 2;
    }

    .lgnewui-home .lgnewui-col-md-1 {
        grid-column: span 1 !important;
    }

    /* 只让天气卡片包装容器在移动端占满整行 */
    .lgnewui-home .lgnewui-weather-wrapper {
        grid-column: span 2 !important;
    }

    .lgnewui-home .lgnewui-widget--photo,
    .lgnewui-home .lgnewui-widget--lovelist,
    .lgnewui-home .lgnewui-widget--stats-vibrant-6 {
        grid-column: span 2;
    }

    .lgnewui-home .lgnewui-widget--stats-vibrant-6 .lgnewui-header-row-sm {
        margin-bottom: 2rem;
    }
}

@media (min-width: 768px) {
    .lgnewui-home .lgnewui-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .lgnewui-home .lgnewui-col-2 {
        grid-column: span 2;
    }

    .lgnewui-home .lgnewui-row-2 {
        grid-row: span 2;
    }
}

@media (min-width: 1024px) {
    .lgnewui-home .lgnewui-grid {
        grid-template-columns: repeat(4, 1fr);
    }

    .lgnewui-home .lgnewui-col-2 {
        grid-column: span 2;
    }

    .lgnewui-home .lgnewui-col-3 {
        grid-column: span 3;
    }

    .lgnewui-home .lgnewui-row-2 {
        grid-row: span 2;
    }

    .lgnewui-home .lgnewui-col-md-1 {
        grid-column: span 1 !important;
    }
}

.lgnewui-home .lgnewui-widget {
    border-radius: var(--lg-radius-lg);
    position: relative;
    /* overflow: hidden;  不再强制隐藏溢出，防止悬浮窗被切。背景图标通过其他方式控制不溢出 */
    box-shadow: var(--lg-shadow-md);
    transition: opacity 0.6s ease-out,
        transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1),
        box-shadow 0.3s cubic-bezier(0.25, 0.8, 0.25, 1),
        z-index 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 1.5rem;
    color: white;
    background-color: #f3f4f6;
    height: 100%;
}

.lgnewui-font-num,
.lgnewui-home .lgnewui-widget .lgnewui-capsule,
.lgnewui-home .lgnewui-widget__footer,
.lgnewui-home .lgnewui-chip {
    font-family: var(--lg-font-sans) !important;
    font-variant-numeric: tabular-nums;
}

.lgnewui-home .lgnewui-widget:hover {
    transform: translateY(-5px) scale(1.01);
    box-shadow: var(--lg-shadow-hover);
    z-index: 10;
}

.lgnewui-home .lgnewui-widget__bg-icon {
    position: absolute;
    opacity: 0.1;
    transition: transform 0.5s;
    z-index: 0;
}

.lgnewui-home .lgnewui-widget:hover .lgnewui-widget__bg-icon {
    transform: rotate(0deg);
}

.lgnewui-home .lgnewui-widget__content {
    position: relative;
    z-index: 10;
    width: 100%;
}

.lgnewui-home .lgnewui-widget__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0.5rem;
}

.lgnewui-home .lgnewui-widget__footer {
    position: relative;
    z-index: 10;
    margin-top: auto;
    width: 100%;
}

.lgnewui-home .lgnewui-widget--photo {
    position: relative;
    overflow: hidden;
    padding: 0;
    border: none;
}

.lgnewui-home .lgnewui-moment-bg-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;

    /* Default State: Hidden, Scaled Up */
    opacity: 0;
    z-index: 1;
    transform: scale(1.15);

    /* Transition for Fading In */
    transition: opacity 1.5s cubic-bezier(0.4, 0, 0.2, 1), transform 8s cubic-bezier(0.25, 0.8, 0.25, 1);
    will-change: transform, opacity;
}

/* New Image Fading In (On Top) */
.lgnewui-home .lgnewui-moment-bg-img--active {
    opacity: 1;
    z-index: 2;
    transform: scale(1.0);
}

/* Old Image Staying Visible (Underneath) */
.lgnewui-home .lgnewui-moment-bg-img.last-active {
    opacity: 1;
    z-index: 1;
    transform: scale(1.0);
    /* Keep it settled */
    transition: none;
    /* Don't animate output yet */
}

.lgnewui-home .lgnewui-widget--photo::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.2) 40%, transparent 80%);
    z-index: 5;
    /* Fix: Above images (z-index 0-2) but below content (z-index 10) */
    pointer-events: none;
}

.lgnewui-home .lgnewui-photo-action-minimal {
    position: absolute;
    bottom: 1.5rem;
    right: 1.5rem;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.6);
    cursor: pointer;
    z-index: 20;
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.lgnewui-home .lgnewui-photo-action-minimal:hover {
    transform: rotate(90deg);
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.lgnewui-home .lgnewui-photo-action-minimal:active {
    transform: scale(0.9);
}

.lgnewui-home .lgnewui-photo-content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 2rem 1.5rem;
    z-index: 10;
    color: white;
}

.lgnewui-home .lgnewui-widget--weather-blue {
    background: var(--lg-grad-blue);
}

.lgnewui-home .lgnewui-widget--weather-orange {
    background: var(--lg-grad-orange);
}

.lgnewui-home .lgnewui-widget--stats-pink {
    background: var(--lg-grad-pink);
}

.lgnewui-home .lgnewui-widget--stats-purple {
    background: var(--lg-grad-purple);
}

.lgnewui-home .lgnewui-widget--stats-cyan {
    background: var(--lg-grad-cyan);
}

.lgnewui-home .lgnewui-widget--moon {
    background: var(--lg-grad-moon);
}

.lgnewui-home .lgnewui-widget--battery {
    background: var(--lg-grad-battery);
}

.lgnewui-home .lgnewui-widget--quote {
    background: var(--lg-grad-quote);
}

.lgnewui-home .lgnewui-capsule {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(12px);
    padding: 0.375rem 0.75rem;
    border-radius: 9999px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    color: white;
}

.lgnewui-home .lgnewui-capsule__img {
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    object-fit: cover;
    transition: opacity 0.8s ease-in-out, filter 0.7s linear;
}

.lgnewui-home .lgnewui-capsule__text {
    font-size: 0.75rem;
    font-weight: 700;
    opacity: 0.9;
}

.lgnewui-home .lgnewui-capsule i {
    font-size: 0.75rem;
}

.lgnewui-home .lgnewui-capsule--glass {
    background: rgba(255, 255, 255, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.3);
}

.lgnewui-home .lgnewui-capsule--avatar {
    padding: 0.25rem 0.75rem 0.25rem 0.25rem;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-badge--white {
    background: rgba(255, 255, 255, 0.95);
    color: var(--lg-color-rose);
    font-size: 0.6875rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    line-height: 1;
}

.lgnewui-home .lgnewui-widget--anniversary {
    background: var(--lg-grad-pro-pink);
    text-align: left;
}

.lgnewui-home .lgnewui-widget--anniversary .lgnewui-widget__bg-icon {
    right: -2rem;
    bottom: -3rem;
    font-size: 12rem;
    opacity: 0.15;
    z-index: 0;
    transform: rotate(15deg);
}

.lgnewui-home .lgnewui-anniversary-hero {
    font-size: 2.5rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.05em;
    margin: 0;
    text-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-anniversary-label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    opacity: 0.9;
    font-weight: 700;
}

.lgnewui-home .lgnewui-widget--lovelist {
    background: var(--lg-grad-pro-slate);
}

.lgnewui-home .lgnewui-widget--lovelist .lgnewui-widget__bg-icon {
    right: -2rem;
    bottom: -2rem;
    font-size: 8rem;
    transform: rotate(12deg);
    opacity: 0.05;
}

.lgnewui-home .lgnewui-progress {
    width: 100%;
    background: rgba(0, 0, 0, 0.2);
    height: 1rem;
    border-radius: 9999px;
    overflow: hidden;
}

.lgnewui-home .lgnewui-progress__bar {
    background: white;
    height: 100%;
    border-radius: 9999px;
    position: relative;
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
}

.lgnewui-home .lgnewui-widget--calendar {
    background: var(--lg-grad-pro-black);
}

.lgnewui-home .lgnewui-widget--calendar .lgnewui-widget__bg-icon {
    right: -1rem;
    top: -1rem;
    font-size: 5rem;
    opacity: 0.2;
    transform: rotate(12deg);
}

.lgnewui-home .lgnewui-widget--stats-blue {
    background: var(--lg-grad-pro-sky);
}

.lgnewui-home .lgnewui-widget--stats-orange {
    background: var(--lg-grad-pro-orange);
}

.lgnewui-home .lgnewui-widget--stats-yellow {
    background: var(--lg-grad-pro-amber);
}

.lgnewui-home .lgnewui-widget--stats-black {
    background: var(--lg-grad-pro-black);
}

/* --- Section Headers: 浪漫大气式 --- */
.lgnewui-home .lgnewui-section-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: 2.5rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    position: relative;
}

.lgnewui-home .lgnewui-section-header::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 4rem;
    height: 2px;
    background: linear-gradient(90deg, currentColor, transparent);
    opacity: 0.8;
}

.lgnewui-home .lgnewui-section-header--rose::after {
    background: linear-gradient(90deg, #f43f5e, transparent);
}

.lgnewui-home .lgnewui-section-header--blue::after {
    background: linear-gradient(90deg, #3b82f6, transparent);
}

.lgnewui-home .lgnewui-section-header--indigo::after {
    background: linear-gradient(90deg, #6366f1, transparent);
}

.lgnewui-home .lgnewui-section-header--teal::after {
    background: linear-gradient(90deg, #14b8a6, transparent);
}

.lgnewui-home .lgnewui-section-header--orange::after {
    background: linear-gradient(90deg, #f97316, transparent);
}

.lgnewui-home .lgnewui-section-header__left {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.lgnewui-home .lgnewui-section-title {
    font-size: 1.75rem;
    font-weight: 600;
    line-height: 1.2;
    font-family: var(--lg-font-serif);
    color: var(--lg-color-text);
    letter-spacing: 0.05em;
}

.lgnewui-home .lgnewui-section-subtitle {
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--lg-color-text-muted);
    font-family: var(--lg-font-sans);
}

.lgnewui-home .lgnewui-section-header__right {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
}

.lgnewui-home .lgnewui-link-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.3rem;
    height: 2.3rem;
    border-radius: 50%;
    color: #ffffff;
    background: #f87171;
    border: none;
    transition: all 0.25s ease;
    position: relative;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-link-more::before {
    content: "";
    display: block;
    background: inherit;
    filter: blur(0.5rem);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 2px;
    left: 2px;
    z-index: -1;
    opacity: 0.5;
    transform-origin: 0 0;
    border-radius: inherit;
    transform: scale(1, 1);
}

.lgnewui-home .lgnewui-link-more:hover {
    transform: scale(1.1);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.15);
}

.lgnewui-home .lgnewui-link-more:active {
    transform: scale(0.95);
}

.lgnewui-home .lgnewui-link-more i {
    font-size: 1.5rem;
    transition: transform 0.2s ease;
}

.lgnewui-home .lgnewui-link-more:hover i {
    transform: none;
}

.lgnewui-home .lgnewui-section-header__right .lgnewui-loading-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #22c55e;
    animation: lg-pulse 2s infinite;
}

.lgnewui-home .lgnewui-section-header__right .lgnewui-loading-text {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--lg-color-text-muted);
}

@media (max-width: 640px) {
    .lgnewui-home .lgnewui-section-header {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: flex-end;
        gap: 0.75rem;
        padding-bottom: 1rem;
    }

    .lgnewui-home .lgnewui-section-header__left {
        flex: 1;
        min-width: 0;
    }

    .lgnewui-home .lgnewui-section-title {
        font-size: 1.25rem;
    }

    .lgnewui-home .lgnewui-section-subtitle {
        font-size: 0.625rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .lgnewui-home .lgnewui-section-header__right {
        flex-shrink: 0;
    }
}

/* --- Events Grid --- */
.lgnewui-home .lgnewui-events-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
}

@media (min-width: 768px) {
    .lgnewui-home .lgnewui-events-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* 事件卡片链接样式 */
.lgnewui-home a.lgnewui-event-card--link {
    text-decoration: none;
    color: inherit;
    display: flex;
}

.lgnewui-home .lgnewui-event-card {
    border-radius: 1rem;
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    position: relative;
    overflow: hidden;
    transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1),
        box-shadow 0.3s cubic-bezier(0.25, 0.8, 0.25, 1),
        border-color 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    background: white;
    /* border: 1px solid var(--lg-color-border); */
    isolation: isolate;
    backface-visibility: hidden;
    box-shadow: 0 24px 48px -12px rgba(135, 146, 161, 0.08);
}

.lgnewui-home .lgnewui-event-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.01);
    cursor: pointer;
    border-color: transparent;
}

.lgnewui-home .lgnewui-event-card--has-img {
    background-color: #111827;
    border: none;
    padding: calc(1.25rem + 1px);
}

.lgnewui-home .lgnewui-event-bg-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.6s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.8s ease-in-out, filter 0.7s linear;
    z-index: 0;
    backface-visibility: hidden;
}

.lgnewui-home .lgnewui-event-card:hover .lgnewui-event-bg-img {
    transform: scale(1.1);
    will-change: transform;
}

.lgnewui-home .lgnewui-event-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.3);
    transition: background-color 0.3s ease;
    z-index: 1;
}

.lgnewui-home .lgnewui-event-content {
    position: relative;
    z-index: 10;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* --- Further Refactors (Inline Style Cleanup) --- */

.lgnewui-home .lgnewui-widget__header-icon-group {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-widget__header-title {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-calendar-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    opacity: 0.9;
}

.lgnewui-home .lgnewui-calendar-today {
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #d1d5db;
}

.lgnewui-home .lgnewui-calendar-date {
    font-size: 2.25rem;
    font-weight: 900;
    letter-spacing: -0.05em;
}

.lgnewui-home .lgnewui-calendar-month {
    font-size: 0.625rem;
    font-weight: 700;
    opacity: 0.6;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-top: 0.25rem;
    color: #9ca3af;
}

.lgnewui-home .lgnewui-stats-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    opacity: 0.8;
}

.lgnewui-home .lgnewui-stats-label {
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.lgnewui-home .lgnewui-stats-count {
    margin-top: 1rem;
}

.lgnewui-home .lgnewui-stats-sublabel {
    font-size: 0.625rem;
    font-weight: 700;
    opacity: 0.8;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-top: 0.25rem;
}

.lgnewui-home .lgnewui-vinyl {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    background: black;
    padding: 2px;
    animation: lg-spin 4s linear infinite;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-vinyl__img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}

.lgnewui-home .lgnewui-eq-bar-1 {
    width: 4px;
    height: 12px;
    background: currentColor;
    border-radius: 99px;
    animation: lg-pulse 1s infinite;
}

.lgnewui-home .lgnewui-eq-bar-2 {
    width: 4px;
    height: 20px;
    background: currentColor;
    border-radius: 99px;
    animation: lg-pulse 1s infinite 0.1s;
}

.lgnewui-home .lgnewui-eq-bar-3 {
    width: 4px;
    height: 8px;
    background: currentColor;
    border-radius: 99px;
    animation: lg-pulse 1s infinite 0.2s;
}

.lgnewui-home .lgnewui-section-header-actions {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-loading-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #22c55e;
    animation: lg-pulse 2s infinite;
}

.lgnewui-home .lgnewui-loading-text {
    font-size: 0.75rem;
    font-weight: 700;
    color: #9ca3af;
}

.lgnewui-home .lgnewui-review-card {
    background: white;
    border-radius: 1.5rem;
    padding: 1.5rem;
    box-shadow: var(--lg-shadow-sm);
    border: 1px solid var(--lg-color-border);
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: transform 0.3s, box-shadow 0.3s, border-color 0.3s;
}

.lgnewui-home .lgnewui-review-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.01);
    border-color: transparent;
}

.lgnewui-home .lgnewui-review-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0.75rem;
}

.lgnewui-home .lgnewui-review-user {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.lgnewui-home .lgnewui-review-avatar {
    width: 2.8rem;
    height: 2.8rem;
    border-radius: 50%;
    transition: opacity 0.8s ease-in-out, filter 0.7s linear;
}

.lgnewui-home .lgnewui-review-name {
    font-size: 0.9375rem;
    font-weight: 600;
}

.lgnewui-home .lgnewui-review-date {
    font-size: 0.75rem;
    color: #9ca3af;
    margin-top: 0.125rem;
}

.lgnewui-home .lgnewui-review-stars {
    display: flex;
    gap: 2px;
    margin-top: 2px;
}

.lgnewui-home .lgnewui-review-content {
    font-size: 0.875rem;
    line-height: 1.6;
    color: #878787;
    margin-bottom: 1rem;
    flex: 1;
}

.lgnewui-home .lgnewui-review-content--oneline {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
}

.lgnewui-home .lgnewui-review-content--oneline img {
    display: inline;
    height: 1.2em;
    width: auto;
    vertical-align: middle;
    margin: 0 1px;
}

.lgnewui-home .lgnewui-review-content .lg-msg-at {
    color: #007AFF;
    font-weight: 500;
}

.lgnewui-home .lgnewui-review-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 0.75rem;
    border-top: 1px solid #f3f4f6;
    font-size: 0.75rem;
    color: #9ca3af;
}

.lgnewui-home .lgnewui-journal-header {
    position: relative;
    z-index: 10;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.lgnewui-home .lgnewui-journal-user {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.lgnewui-home .lgnewui-journal-avatar {
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    border: 1px solid #f3f4f6;
    padding: 2px;
    transition: opacity 0.8s ease-in-out, filter 0.7s linear;
}

.lgnewui-home .lgnewui-journal-meta {
    font-size: 0.825rem;
    color: #9ca3af;
    font-family: 'Inter', sans-serif;
}

.lgnewui-home .lgnewui-journal-content {
    position: relative;
    z-index: 10;
}

.lgnewui-home .lgnewui-journal-title-text {
    font-size: 1.125rem;
    margin-bottom: 0.5rem;
}

.lgnewui-home .lgnewui-journal-body-clamp {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-family: 'Inter', sans-serif;
    font-weight: 300;
}

.lgnewui-home .lgnewui-journal-footer {
    position: relative;
    z-index: 10;
    margin-top: auto;
    padding-top: 0.75rem;
    border-top: 1px solid #f3f4f6;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.lgnewui-home .lgnewui-flex-gap-sm {
    display: flex;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-event-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transition: transform 0.8s;
}

.lgnewui-home .lgnewui-event-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent);
}

.lgnewui-home .lgnewui-event-content {
    position: relative;
    z-index: 10;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.lgnewui-home .lgnewui-event-footer-glass {
    margin-top: auto;
    padding-top: 0.75rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-event-footer-light {
    margin-top: auto;
    padding-top: 0.75rem;
    border-top: 1px solid #f3f4f6;
    display: flex;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-event-seal {
    font-size: 3rem;
    color: #f9fafb;
    position: absolute;
    top: 1rem;
    right: 1rem;
    transform: rotate(-12deg);
}

.lgnewui-home .lgnewui-flex-between-start {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.lgnewui-home .lgnewui-flex-center-gap {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-text-right-opacity {
    text-align: right;
    opacity: 0.8;
    padding-bottom: 0.25rem;
}

.lgnewui-home .lgnewui-text-days {
    font-size: 0.75rem;
    font-weight: 700;
}

.lgnewui-home .lgnewui-text-countdown {
    font-size: 0.625rem;
    opacity: 0.6;
    text-transform: uppercase;
}

.lgnewui-home .lgnewui-empty-state {
    grid-column: 1 / -1;
    text-align: center;
    padding: 3rem;
    color: #d1d5db;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.1em;
}

.lgnewui-text-rose {
    color: #e11d48;
}

.lgnewui-home .lgnewui-widget__content--center {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.lgnewui-home .lgnewui-gauge-container {
    position: relative;
    width: 10rem;
    height: 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lgnewui-home .lgnewui-gauge-svg {
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
}

.lgnewui-home .lgnewui-gauge-track {
    color: rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-gauge-progress {
    color: white;
    filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.5));
}

.lgnewui-home .lgnewui-gauge-inner {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.lgnewui-home .lgnewui-widget__footer--grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
    text-align: center;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-top: 1rem;
}

.lgnewui-home .lgnewui-widget__header--mb {
    margin-bottom: 1.5rem;
}

.lgnewui-home .lgnewui-widget__content--bottom {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.lgnewui-home .lgnewui-weather-details {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    border-top: 1px solid rgba(255, 255, 255, 0.15);
    padding-top: 0.625rem;
}

.lgnewui-home .lgnewui-weather-meta {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 0.75rem;
    font-weight: 600;
    opacity: 0.9;
}

.lgnewui-home .lgnewui-lovelist-icon-bg {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(4px);
}

.lgnewui-home .lgnewui-lovelist-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.75rem;
}

@media (min-width: 640px) {
    .lgnewui-home .lgnewui-lovelist-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 1rem;
    }
}

.lgnewui-home .lgnewui-lovelist-item {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 0.5rem;
    padding: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lgnewui-widget--stats-teal {
    background: linear-gradient(135deg, #14b8a6 0%, #0d9488 100%);
    color: white;
}

.lgnewui-widget--stats-indigo {
    background: linear-gradient(135deg, #6366f1 0%, #4338ca 100%);
    color: white;
}

.lgnewui-widget--stats-lime {
    background: linear-gradient(135deg, #84cc16 0%, #65a30d 100%);
    color: white;
}

.lgnewui-home .lgnewui-widget__bg-icon--tilted {
    right: -1rem;
    top: -1rem;
    font-size: 4rem;
    transform: rotate(12deg);
}



.lgnewui-home .lgnewui-btn-glass {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: white;
    color: white;
    font-size: 0.75rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s;
}

.lgnewui-home .lgnewui-btn-glass:hover {
    background: rgba(255, 255, 255, 0.25);
    transform: translateY(-1px);
}

.lgnewui-home .lgnewui-badge-new {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #18181b;
    color: #fbbf24;
    font-family: var(--lg-font-sans);
    font-size: 0.55rem;
    font-weight: 700;
    line-height: 1;
    padding: 0.2rem 0.55rem;
    border-radius: 9999px;
    margin-left: 0.5rem;
    vertical-align: middle;
    transform: translateY(-1px);
    box-shadow: none;
    letter-spacing: 0.08em;
    text-shadow: none;
}

.lgnewui-home .lgnewui-badge-elegant {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #1a1a1a;
    color: #ffffff;
    font-family: 'Noto Serif SC', serif;
    font-size: 0.7rem;
    font-weight: 500;
    line-height: 1.2;
    padding: 0.3rem 0.75rem;
    border-radius: 10px;
    margin-left: 0.65rem;
    vertical-align: middle;
    transform: translateY(-1px);
    box-shadow: none;
    letter-spacing: 0.04em;
    border: none;
    transition: all 0.3s ease;
}

.lgnewui-home .lgnewui-badge-elegant:hover {
    transform: translateY(-1px);
    opacity: 0.85;
}

.lgnewui-home .lgnewui-ios-tabs {
    position: relative;
    display: inline-flex;
    background: rgba(118, 118, 128, 0.12);
    border-radius: 12px;
    padding: 3px;
    gap: 4px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.lgnewui-home .lgnewui-ios-tabs-slider {
    position: absolute;
    top: 3px;
    left: 0;
    height: calc(100% - 6px);
    background: #ffffff;
    border-radius: 10px;
    box-shadow: none;
    transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1),
        width 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    z-index: 0;
    pointer-events: none;
}

.lgnewui-home .lgnewui-ios-tab {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    border: none;
    background: transparent;
    color: rgba(60, 60, 67, 0.6);
    font-family: 'Noto Serif SC', serif;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
    border-radius: 10px;
}

.lgnewui-home .lgnewui-ios-tab i {
    font-size: 1rem;
    transition: all 0.3s ease;
}

.lgnewui-home .lgnewui-ios-tab.active {
    color: #000000;
    font-weight: 600;
}

.lgnewui-home .lgnewui-ios-tab.active i {
    color: #000000;
}

.lgnewui-home .lgnewui-ios-tab:hover:not(.active) {
    color: rgba(60, 60, 67, 0.85);
}

@media (max-width: 768px) {
    .lgnewui-home .lgnewui-ios-tabs {
        padding: 2px;
        gap: 2px;
        border-radius: 10px;
    }

    .lgnewui-home .lgnewui-ios-tab {
        padding: 8px 10px;
        font-size: 0.8rem;
        gap: 0;
    }

    .lgnewui-home .lgnewui-ios-tab span {
        display: none;
    }

    .lgnewui-home .lgnewui-ios-tab i {
        font-size: 1.1rem;
    }

    .lgnewui-home .lgnewui-badge-elegant {
        font-size: 0.65rem;
        padding: 0.3rem 0.7rem;
        margin-left: 0.5rem;
    }
}

.lgnewui-home .lgnewui-music-progress-container {
    flex: 1;
    height: 4px;
    background: #e5e7eb;
    border-radius: 99px;
    margin-left: 1rem;
    overflow: hidden;
}

.lgnewui-home .lgnewui-music-progress-bar {
    width: 33%;
    height: 100%;
    background: black;
    border-radius: 99px;
}

.lgnewui-home .lgnewui-msg-actions {
    margin-top: 4rem;
    display: flex;
    justify-content: center;
    gap: 1rem;
}

.lgnewui-home .lgnewui-btn-pill-black {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: black;
    color: white;
    padding: 1rem 2rem;
    border-radius: 9999px;
    font-weight: 700;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
    transition: transform 0.2s;
}

.lgnewui-home .lgnewui-btn-pill-white {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: white;
    color: #6b7280;
    padding: 1rem 2rem;
    border-radius: 9999px;
    font-weight: 700;
    border: 1px solid #e5e7eb;
    transition: color 0.2s;
}

/* --- End Refactors --- */

.lgnewui-home .lgnewui-event-icon {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: white;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.lgnewui-home .lgnewui-event-card--white .lgnewui-event-icon {
    background: #fff1f2;
    color: var(--lg-color-rose);
    border: 1px solid #ffe4e6;
}

.lgnewui-home .lgnewui-event-card--white:hover .lgnewui-event-icon {
    background-color: var(--lg-color-rose);
    color: white;
    border-color: var(--lg-color-rose);
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(225, 29, 72, 0.3);
}

.lgnewui-home .lgnewui-event-card--locked {
    background: white;
    position: relative;
}

.lgnewui-home .lgnewui-event-card--locked::before,
.lgnewui-home .lgnewui-event-card--locked::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    filter: blur(20px);
    z-index: 0;
}

.lgnewui-home .lgnewui-event-card--locked::before {
    width: 120px;
    height: 120px;
    top: -20px;
    left: -15px;
    background: var(--glow-tl, rgba(196, 181, 253, 0.22));
}

.lgnewui-home .lgnewui-event-card--locked::after {
    width: 85px;
    height: 85px;
    bottom: -10px;
    right: -10px;
    background: var(--glow-br, rgba(249, 168, 212, 0.2));
}

.lgnewui-home .lgnewui-event-card--locked > * {
    position: relative;
    z-index: 1;
}

.lgnewui-home .lgnewui-event-card--locked .lgnewui-event-icon {
    background: #ffffff;
    color: #d1d5db;
}

.lgnewui-home .lgnewui-event-card--locked:hover .lgnewui-event-icon {
    background-color: black;
    color: white;
    transform: scale(1.1);
}

.lgnewui-home .lgnewui-event-title {
    font-family: var(--lg-font-serif);
    text-align: left;
}

.lgnewui-home .lgnewui-event-note {
    font-family: var(--lg-font-body);
    text-align: left;
    font-size: 1rem;
    color: #9ca3af;
    font-weight: 300;
    margin-bottom: .3rem;
}

/* --- Restored Visual Polish --- */

/* --- Updates / Journal --- */
.lgnewui-home .lgnewui-journal-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
}

@media (min-width: 768px) {
    .lgnewui-home .lgnewui-journal-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

.lgnewui-home .lgnewui-journal-card {
    background: white;
    border-radius: 1.5rem;
    padding: 1.5rem;
    transition: transform 0.3s, box-shadow 0.3s, border-color 0.3s;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    position: relative;
    overflow: hidden;
    height: 100%;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.025);
}

.lgnewui-home .lgnewui-journal-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.01);
    cursor: pointer;
    border-color: transparent;
}

a.lgnewui-journal-card,
a.lgnewui-journal-card:hover,
a.lgnewui-journal-card:visited {
    color: inherit;
    text-decoration: none;
}

a.lgnewui-mosaic-item,
a.lgnewui-mosaic-item:hover,
a.lgnewui-mosaic-item:visited {
    display: block;
}

a.lgnewui-review-card,
a.lgnewui-review-card:hover,
a.lgnewui-review-card:visited {
    color: inherit;
    text-decoration: none;
}

.lgnewui-home .lgnewui-journal-title {
    font-family: var(--lg-font-serif);
    font-weight: 700;
}

.lgnewui-home .lgnewui-journal-body {
    font-family: var(--lg-font-body);
    font-size: 0.875rem;
    color: #4b5563;
    line-height: 1.6;
}


.lgnewui-home .lgnewui-watermark {
    position: absolute;
    top: 1.575rem;
    right: 0.5rem;
    bottom: auto;
    font-size: 3.5rem;
    font-weight: 900;
    color: #747474;
    opacity: 0.05;
    writing-mode: horizontal-tb;
    text-orientation: mixed;
    letter-spacing: -0.05em;
    transform: rotate(15deg);
    -webkit-text-stroke: 0;
    pointer-events: none;
    z-index: 0;
    font-family: var(--lg-font-sans);
    font-style: normal;
    line-height: 1;
}

.lgnewui-home .lgnewui-journal-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
    z-index: 10;
}

/* --- Mosaic / Album --- */
.lgnewui-home .lgnewui-mosaic-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
    grid-auto-rows: 240px;
}



.lgnewui-home .lgnewui-mosaic-item {
    position: relative;
    border-radius: 1.5rem;
    overflow: hidden;
    background: #f3f4f6;
    cursor: pointer;
    width: 100%;
    height: 100%;
}

.lgnewui-home .lgnewui-mosaic-grid>*:first-child {
    grid-row: span 1;
    grid-column: span 2;
}

.lgnewui-home .lgnewui-mosaic-grid>*:nth-child(2) {
    grid-column: span 2;
}

.lgnewui-home .lgnewui-mosaic-grid>*:nth-child(3) {
    grid-column: span 2;
}

@media (min-width: 1024px) {
    .lgnewui-home .lgnewui-mosaic-grid {
        grid-template-columns: repeat(4, 1fr);
    }

    .lgnewui-home .lgnewui-mosaic-grid>*:first-child {
        grid-row: span 2;
    }
}

.lgnewui-home .lgnewui-mosaic-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.7s, opacity 0.8s ease-in-out, filter 0.7s linear;
}

.lgnewui-home .lgnewui-mosaic-img.loaded {
    opacity: 1 !important;
    filter: none !important;
}

.lgnewui-home .lgnewui-mosaic-item:hover .lgnewui-mosaic-img {
    transform: scale(1.1);
}

.lgnewui-home .lgnewui-chip--dark-glass {
    background: rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: white;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.825rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: background 0.3s;
}

.lgnewui-home .lgnewui-mosaic-item:hover .lgnewui-chip--dark-glass {
    background: rgba(0, 0, 0, 0.5);
}

.lgnewui-home .lgnewui-mosaic-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.7) 0%, transparent 50%);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.25rem;
}

/* --- Messages / Review --- */
.lgnewui-home .lgnewui-review-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.25rem;
}

@media (min-width: 768px) {
    .lgnewui-home .lgnewui-review-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .lgnewui-home .lgnewui-review-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

.lgnewui-home .lgnewui-review-card {
    background: white;
    border-radius: 1.25rem;
    padding: 1.5rem;
    border: 1px solid rgba(0, 0, 0, 0.06);
    transition: transform 0.2s ease-out, box-shadow 0.2s ease-out;
    box-shadow: var(--lg-shadow-sm);
    display: flex;
    flex-direction: column;
    /* min-height: 200px; */
}

.lgnewui-home .lgnewui-review-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--lg-shadow-md);
}

/* --- Messages Scrolling Carousel --- */
.lgnewui-home .lgnewui-home-message-container {
    --lgnewui-msg-card-bg: #ffffff;
    --lgnewui-msg-text-main: #1a1a1a;
    --lgnewui-msg-text-content: #333333;
    --lgnewui-msg-text-muted: #999999;
    --lgnewui-msg-divider: #f0f0f0;
    width: 100%;
    overflow: hidden;
    cursor: grab;
    transform: translateZ(0);
    -webkit-mask: linear-gradient(90deg, transparent, white 3%, white 97%, transparent);
    mask: linear-gradient(90deg, transparent, white 3%, white 97%, transparent);
    touch-action: pan-y;
}

.lgnewui-home .lgnewui-home-message-container:active {
    cursor: grabbing;
}

.lgnewui-home .lgnewui-home-message-track {
    display: flex;
    gap: 24px;
    padding: 30px 0 50px;
    width: max-content;
    will-change: transform;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.lgnewui-home .lgnewui-home-message-card {
    width: min(380px, 85vw);
    background-color: var(--lgnewui-msg-card-bg);
    border-radius: 20px;
    padding: 24px 28px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.025);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    user-select: none;
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    flex-shrink: 0;
    cursor: pointer;
    text-decoration: none;
    color: inherit;
    -webkit-user-drag: none;
    transition: all .3s;
}

.lgnewui-home .lgnewui-home-message-card:hover {
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.06);
}

.lgnewui-home .lgnewui-home-message-card img,
.lgnewui-home .lgnewui-home-message-card i,
.lgnewui-home .lgnewui-home-message-card svg {
    pointer-events: none;
}

.lgnewui-home .lgnewui-home-message-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
}

.lgnewui-home .lgnewui-home-message-avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
    background-color: #f5f5f5;
}

.lgnewui-home .lgnewui-home-message-user-info {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.lgnewui-home .lgnewui-home-message-name-row {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.lgnewui-home .lgnewui-home-message-user-name {
    font-size: 15px;
    font-weight: 600;
    color: var(--lgnewui-msg-text-main);
    letter-spacing: 0.2px;
}

.lgnewui-home .lgnewui-home-message-badge {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.2px;
    padding: 3px 6px;
    border-radius: 5px;
    white-space: nowrap;
}

.lgnewui-home .lgnewui-home-message-badge i {
    font-size: 11px;
}

.lgnewui-home .lgnewui-home-message-badge--developer {
    background-color: #f3f4f6;
    color: #1f2937;
}

.lgnewui-home .lgnewui-home-message-badge--admin {
    background-color: #eff6ff;
    color: #2563eb;
}

.lgnewui-home .lgnewui-home-message-badge--level {
    color: #94a3b8;
    background: transparent;
    padding: 0 4px;
    font-weight: 500;
    margin-left: 2px;
}

.lgnewui-home .lgnewui-home-message-badge--level i {
    font-size: 14px;
}

.lgnewui-home .lgnewui-home-message-post-time {
    font-size: 12px;
    color: var(--lgnewui-msg-text-muted);
    font-weight: 400;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.lgnewui-home .lgnewui-home-message-content {
    font-size: 14px;
    color: #9ca3af;
    line-height: 1.6;
    margin-bottom: 24px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lgnewui-home .lgnewui-home-message-content img {
    display: inline;
    height: 1.2em;
    width: auto;
    vertical-align: middle;
    margin: 0 1px;
}

.lgnewui-home .lgnewui-home-message-content .lg-msg-at {
    color: #007AFF;
    font-weight: 500;
}

.lgnewui-home .lgnewui-home-message-divider {
    height: 1px;
    background-color: var(--lgnewui-msg-divider);
    margin-bottom: 16px;
    margin-top: auto;
}

.lgnewui-home .lgnewui-home-message-footer {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

/* --- Footer --- */
.lgnewui-home .lgnewui-footer {
    text-align: center;
    padding: 5rem 0;
    margin-top: 5rem;
    color: var(--lg-color-text-muted);
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

/* --- Animations --- */
@keyframes lg-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes lg-pulse {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }
}

/* --- Lazy Load Image Fix --- */
.lgnewui-home img.lazy.loaded,
.lgnewui-home .lgnewui-capsule__img.loaded,
.lgnewui-home .lgnewui-journal-avatar.loaded,
.lgnewui-home .lgnewui-review-avatar.loaded {
    opacity: 1 !important;
    filter: none !important;
}

/* --- Helpers for JS Injection --- */
.lgnewui-home .lgnewui-text-white {
    color: white !important;
}

.lgnewui-home .lgnewui-text-rose {
    color: var(--lg-color-rose) !important;
}

.lgnewui-home .lgnewui-text-xl {
    font-size: 1.25rem;
    line-height: 1.75;
}

.lgnewui-home .lgnewui-font-bold {
    font-weight: 700;
}

.lgnewui-home .lgnewui-opacity-80 {
    opacity: 0.8;
}

.lgnewui-home .lgnewui-mb-1 {
    margin-bottom: 0.25rem;
}

.lgnewui-home .lgnewui-mb-4 {
    margin-bottom: 2rem;
}

.lgnewui-home .lgnewui-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    font-family: var(--lg-font-sans);
    font-size: 0.8rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    backdrop-filter: blur(4px);
}

.lgnewui-home .lgnewui-chip--glass {
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.11);
    color: white;
}

.lgnewui-home .lgnewui-chip--light {
    background: #f3f4f6;
    color: var(--lg-color-text-muted);
    /* border: 1px solid #e5e7eb; */
}

.lgnewui-home .lgnewui-chip--no-transform {
    text-transform: none;
}

/* --- Fixed Missing Utilities & Component Styles --- */

.lgnewui-home .lgnewui-flex-between-end {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.lgnewui-home .lgnewui-flex-between-center {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.lgnewui-home .lgnewui-music-details {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.lgnewui-home .lgnewui-music-controls-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

.lgnewui-home .lgnewui-music-now-playing {
    font-size: 0.625rem;
    font-weight: 700;
    opacity: 0.4;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    display: none;
}

.lgnewui-home .lgnewui-music-title {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lgnewui-home .lgnewui-music-artist {
    font-size: 0.875rem;
    font-weight: 700;
    opacity: 0.6;
}

.lgnewui-home .lgnewui-music-player-controls {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    margin-top: 1rem;
}

.lgnewui-home .lgnewui-music-control-btn {
    opacity: 0.4;
    transition: all 0.2s;
    font-size: 1.25rem;
    background: none;
    border: none;
    cursor: pointer;
    color: inherit;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.lgnewui-home .lgnewui-music-control-btn:hover {
    opacity: 1;
    transform: scale(1.1);
}

.lgnewui-widget--stats-gradient-1 {
    background: linear-gradient(135deg, #6EF2E3 0%, #B98ACC 100%);
    color: white;
}

.lgnewui-widget--stats-gradient-1 .lgnewui-font-num,
.lgnewui-widget--stats-gradient-1 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-widget--stats-gradient-2 {
    background: linear-gradient(135deg, #FF9A9E 0%, #FECFEF 100%);
    color: white;
}

.lgnewui-widget--stats-gradient-2 .lgnewui-font-num,
.lgnewui-widget--stats-gradient-2 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-widget--stats-gradient-3 {
    background: linear-gradient(135deg, #00c6fb 0%, #005bea 100%);
    color: white;
}

.lgnewui-widget--stats-gradient-3 .lgnewui-font-num,
.lgnewui-widget--stats-gradient-3 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-widget--stats-gradient-4 {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
}

.lgnewui-widget--stats-gradient-4 .lgnewui-font-num,
.lgnewui-widget--stats-gradient-4 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-widget--stats-gradient-5 {
    background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
    color: white;
}

.lgnewui-widget--stats-gradient-5 .lgnewui-font-num,
.lgnewui-widget--stats-gradient-5 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-widget--stats-vibrant-1 {
    background: linear-gradient(135deg, #78716c 0%, #44403c 100%);
    color: white;
}

.lgnewui-home .lgnewui-widget--stats-vibrant-1 .lgnewui-font-num,
.lgnewui-home .lgnewui-widget--stats-vibrant-1 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-widget--stats-vibrant-2 {
    /* background: linear-gradient(135deg, #f87171 0%, #dc2626 100%); */
    background-image: linear-gradient(135deg, #45bdff 0%, #1782ff 100%);
    color: white;
}

.lgnewui-home .lgnewui-widget--stats-vibrant-2 .lgnewui-font-num,
.lgnewui-home .lgnewui-widget--stats-vibrant-2 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-widget--stats-vibrant-3 {
    background: linear-gradient(135deg, #fb7185 0%, #e11d48 100%);
    color: white;
}

.lgnewui-home .lgnewui-widget--stats-vibrant-3 .lgnewui-font-num,
.lgnewui-home .lgnewui-widget--stats-vibrant-3 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-widget--stats-vibrant-4 {
    background: var(--lg-grad-pro-black);
    color: white;
}

.lgnewui-home .lgnewui-widget--stats-vibrant-4 .lgnewui-font-num,
.lgnewui-home .lgnewui-widget--stats-vibrant-4 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-widget--stats-vibrant-5 {
    background: linear-gradient(135deg, #f43f5e 0%, #e11d48 100%);
    color: white;
}

.lgnewui-home .lgnewui-widget--stats-vibrant-5 .lgnewui-font-num,
.lgnewui-home .lgnewui-widget--stats-vibrant-5 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-widget--stats-vibrant-6 {
    background: linear-gradient(135deg, #64748b 0%, #334155 100%);
    color: white;
}

.lgnewui-home .lgnewui-widget--stats-vibrant-6 .lgnewui-font-num,
.lgnewui-home .lgnewui-widget--stats-vibrant-6 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-widget--stats-vibrant-7 {
    background: linear-gradient(135deg, #fdba74 0%, #ea580c 100%);
    color: white;
}

.lgnewui-home .lgnewui-widget--stats-vibrant-7 .lgnewui-font-num,
.lgnewui-home .lgnewui-widget--stats-vibrant-7 i {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-widget--music.lgnewui-col-3 {
    grid-column: span 3;
}

.lgnewui-home .lgnewui-capsule--black-glass {
    background: rgba(0, 0, 0, 0.8);
    color: white;
    backdrop-filter: blur(4px);
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.lgnewui-home .lgnewui-col-1 {
    grid-column: span 1;
}

.lgnewui-home .lgnewui-widget--activity {
    background: var(--lg-grad-pro-black);
    color: white;
}

.lgnewui-home .lgnewui-widget--activity .lgnewui-widget__bg-icon {
    right: -1rem;
    top: -1rem;
    font-size: 5rem;
    opacity: 0.15;
    transform: rotate(12deg);
    color: white;
}

.lgnewui-home .lgnewui-activity-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
}

.lgnewui-home .lgnewui-activity-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.lgnewui-home .lgnewui-activity-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 0.75rem;
    transition: all 0.2s;
}

.lgnewui-home .lgnewui-activity-item:hover {
    background: rgba(255, 255, 255, 0.15);
    transform: translateX(4px);
}

.lgnewui-home .lgnewui-activity-icon {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    flex-shrink: 0;
}

.lgnewui-home .lgnewui-activity-icon--photo {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.lgnewui-home .lgnewui-activity-icon--message {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.lgnewui-home .lgnewui-activity-icon--diary {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.lgnewui-home .lgnewui-activity-content {
    flex: 1;
    min-width: 0;
}

.lgnewui-home .lgnewui-activity-text {
    font-size: 0.8125rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.9);
}

.lgnewui-home .lgnewui-activity-text strong {
    font-weight: 700;
    color: white;
}

.lgnewui-home .lgnewui-activity-time {
    font-size: 0.6875rem;
    color: rgba(255, 255, 255, 0.6);
    margin-top: 0.125rem;
}

.lgnewui-home .lgnewui-widget--activity {
    min-height: auto;
    max-height: none;
}

.lgnewui-home .lgnewui-activity-list {
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-activity-item {
    padding: 0.375rem 0.5rem;
}

.lgnewui-home .lgnewui-widget--couple {
    background: var(--lg-grad-pro-black);
    color: white;
}

.lgnewui-home .lgnewui-widget--couple .lgnewui-widget__bg-icon {
    right: -1rem;
    bottom: -1rem;
    font-size: 6rem;
    opacity: 0.1;
    transform: rotate(-12deg);
    color: #ec4899;
}

.lgnewui-home .lgnewui-couple-avatars {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.lgnewui-home .lgnewui-couple-avatar {
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.lgnewui-home .lgnewui-couple-heart {
    font-size: 1.25rem;
    color: #ec4899;
    animation: lg-heartbeat 1.5s ease-in-out infinite;
}

@keyframes lg-heartbeat {

    0%,
    100% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.2);
    }
}

.lgnewui-home .lgnewui-couple-names {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
}

/* --- Refactored Inline Styles (v17 Refinement) --- */

/* --- New Moment Header Styles --- */
.lgnewui-home .lgnewui-moment-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 1.5rem;
    z-index: 15;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), transparent);
    pointer-events: none;
}

.lgnewui-home .lgnewui-moment-user {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.lgnewui-home .lgnewui-moment-avatar-ring {
    padding: 2px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lgnewui-home .lgnewui-moment-avatar {
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    object-fit: cover;
    display: block;
}

.lgnewui-home .lgnewui-moment-user-info {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

.lgnewui-home .lgnewui-moment-username {
    font-size: 0.875rem;
    font-weight: 700;
    color: white;
}

.lgnewui-home .lgnewui-moment-time {
    font-size: 0.65rem;
    color: rgba(255, 255, 255, 0.8);
    font-weight: 500;
}

.lgnewui-home .lgnewui-moment-meta-dot {
    opacity: 0.5;
    font-size: 0.8rem;
}

.lgnewui-home .lgnewui-moment-title {
    font-family: 'Noto Serif SC', serif;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.75rem;
    text-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
    letter-spacing: 0.02em;
}

.lgnewui-home .lgnewui-moment-meta-stack {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1rem;
    font-size: 0.85rem;
    font-weight: 500;
    opacity: 0.9;
    font-family: var(--lg-font-sans);
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.lgnewui-home .lgnewui-moment-meta-item {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.lgnewui-home .lgnewui-moment-meta-item i {
    opacity: 0.7;
}

.lgnewui-home .lgnewui-weather-icon {
    font-size: 1.8rem;
    opacity: 0.9;
}

.lgnewui-home .lgnewui-weather-temp {
    font-size: 5rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 0.25rem;
    letter-spacing: -0.02em;
}

.lgnewui-home .lgnewui-flex-center-gap-xs {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.lgnewui-home .lgnewui-lovelist-bg-icon {
    opacity: 0.1;
    font-size: 8rem;
    left: -1rem;
    bottom: -4.5rem;
    transform: rotate(15deg);
}

.lgnewui-home .lgnewui-flex-col-between-relative {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    z-index: 10;
}

.lgnewui-home .lgnewui-flex-between-center {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.lgnewui-home .lgnewui-flex-center-gap {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-icon-box-glass {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 0.75rem;
    backdrop-filter: blur(4px);
}

.lgnewui-home .lgnewui-icon-md-white {
    color: white;
    font-size: 1.2rem;
}

.lgnewui-home .lgnewui-card-title-lg {
    font-size: 1.125rem;
    font-weight: 800;
    color: white;
    letter-spacing: 0.05em;
}

.lgnewui-home .lgnewui-card-subtitle {
    font-size: 0.75rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.7);
    letter-spacing: 0.05em;
}

.lgnewui-home .lgnewui-text-right-auto {
    margin-top: auto;
    text-align: right;
}

.lgnewui-home .lgnewui-lovelist-bottom {
    margin-top: auto;
}

.lgnewui-home .lgnewui-lovelist-stats {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

.lgnewui-home .lgnewui-lovelist-fraction {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
}

.lgnewui-home .lgnewui-lovelist-completed {
    font-size: 2.5rem;
    font-weight: 900;
    color: white;
    line-height: 1;
}

.lgnewui-home .lgnewui-lovelist-divider {
    font-size: 1.5rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.6);
    margin: 0 0.125rem;
}

.lgnewui-home .lgnewui-lovelist-total {
    font-size: 1.5rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.8);
}

.lgnewui-home .lgnewui-num-huge {
    font-size: 3.5rem;
    font-weight: 900;
    color: white;
    line-height: 1;
    letter-spacing: -0.05em;
    margin-bottom: 0.25rem;
}

.lgnewui-home .lgnewui-num-suffix {
    font-size: 1.25rem;
    opacity: 0.6;
    font-weight: 600;
    margin-left: 0.25rem;
}

.lgnewui-home .lgnewui-progress-sm {
    height: 0.375rem;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 1rem;
}

.lgnewui-home .lgnewui-progress-fill-white {
    background: white;
    border-radius: 1rem;
}

.lgnewui-home .lgnewui-stats-header-row {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.lgnewui-home .lgnewui-icon-circle-glass {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    backdrop-filter: blur(4px);
}

.lgnewui-home .lgnewui-icon-sm-white {
    color: white;
    font-size: 0.9rem;
}

.lgnewui-home .lgnewui-stats-title {
    font-size: 0.875rem;
    font-weight: 800;
    color: white;
    letter-spacing: 0.05em;
}

.lgnewui-home .lgnewui-mt-1rem {
    margin-top: 1rem;
}

.lgnewui-home .lgnewui-stats-num {
    font-size: 2.25rem;
    font-weight: 900;
    letter-spacing: -0.05em;
}

.lgnewui-home .lgnewui-stats-label {
    font-size: 0.625rem;
    font-weight: 700;
    opacity: 0.8;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-top: 0.25rem;
}

.lgnewui-home .lgnewui-section-icon-box {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 12px;
    margin-right: 0.75rem;
}

.lgnewui-home .lgnewui-section-icon-box--rose {
    background: #e11d48;
    box-shadow: 0 4px 6px -1px rgba(225, 29, 72, 0.3);
}

.lgnewui-home .lgnewui-section-icon-box--blue {
    background: #3b82f6;
    box-shadow: 0 4px 6px -1px rgba(59, 130, 246, 0.3);
}

.lgnewui-home .lgnewui-section-icon-box--orange {
    background: #f97316;
    box-shadow: 0 4px 6px -1px rgba(249, 115, 22, 0.3);
}

.lgnewui-home .lgnewui-section-icon-box--teal {
    background: #14b8a6;
    box-shadow: 0 4px 6px -1px rgba(20, 184, 166, 0.3);
}

.lgnewui-home .lgnewui-section-title-color-rose {
    color: #e11d48;
}

.lgnewui-home .lgnewui-section-title-color-blue {
    color: #3b82f6;
}

.lgnewui-home .lgnewui-section-title-color-orange {
    color: #f97316;
}

.lgnewui-home .lgnewui-section-title-color-teal {
    color: #14b8a6;
}

/* --- Final Sweep Utilities (v17 Complete) --- */

.lgnewui-home .lgnewui-runtime-bg-icon {
    right: -2rem;
    bottom: -2rem;
    font-size: 9rem;
    opacity: 0.15;
    transform: rotate(15deg);
}

.lgnewui-home .lgnewui-flex-col-runtime {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    z-index: 10;
}

.lgnewui-home .lgnewui-header-row-sm {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.lgnewui-home .lgnewui-mt-auto {
    margin-top: auto;
}

.lgnewui-home .lgnewui-runtime-values {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-runtime-num {
    font-size: 3.5rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.05em;
    text-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-runtime-meta {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    opacity: 0.9;
    margin-left: 0.25rem;
}

.lgnewui-home .lgnewui-runtime-days {
    font-size: 1.125rem;
    font-weight: 800;
    opacity: 0.7;
    letter-spacing: 0.05em;
}

.lgnewui-home .lgnewui-runtime-divider {
    width: 1px;
    height: 1rem;
    background: rgba(255, 255, 255, 0.4);
    transform: translateY(2px);
}

.lgnewui-home .lgnewui-runtime-text {
    font-size: 0.875rem;
    font-weight: 600;
    opacity: 0.9;
}

.lgnewui-home .lgnewui-event-content-mt {
    margin-top: 2rem;
}

.lgnewui-home .lgnewui-event-note-color {
    font-size: 1rem;
    color: #9ca3af;
    font-weight: 300;
    margin-bottom: .3rem;
}

/* .lgnewui-home .lgnewui-event-note-sm {
    font-size: 0.6875rem;
} */

.lgnewui-home .lgnewui-event-note-white {
    color: rgba(255, 255, 255, 0.8);
}

.lgnewui-home .lgnewui-text-white {
    color: white;
}

.lgnewui-home .lgnewui-text-xl {
    font-size: 1.25rem;
}

.lgnewui-home .lgnewui-font-bold {
    font-weight: 700;
}

.lgnewui-home .lgnewui-mb-1 {
    margin-bottom: 0.25rem;
}

.lgnewui-home .lgnewui-opacity-80 {
    opacity: 0.8;
}

.lgnewui-home .lgnewui-font-sm-bold {
    font-size: 1.175rem;
    font-weight: 700;
}

.lgnewui-home .lgnewui-flex-gap-sm {
    display: flex;
    gap: 0.5rem;
}

.lgnewui-home .lgnewui-mosaic-pos-tr {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    z-index: 20;
}

.lgnewui-home .lgnewui-mosaic-divider {
    width: 1px;
    height: 0.75rem;
    background: rgba(255, 255, 255, 0.2);
}

.lgnewui-home .lgnewui-mosaic-overlay-content {
    width: 100%;
    color: white;
}

.lgnewui-home .lgnewui-mosaic-avatar-mb {
    margin-bottom: 0.75rem;
}

.lgnewui-home .lgnewui-mosaic-title {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.lgnewui-home .lgnewui-mosaic-desc {
    font-size: 0.8rem;
    opacity: 0.85;
    margin-bottom: 0.35rem;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lgnewui-home .lgnewui-mosaic-date {
    font-size: 0.75rem;
    opacity: 0.8;
    letter-spacing: 0.1em;
}

.lgnewui-home .lgnewui-review-star-icon {
    font-size: 0.75rem;
    color: #e11d48;
}

.lgnewui-home .lgnewui-flex-between-start {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.lgnewui-home .lgnewui-flex-col-between-1 {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.lgnewui-home .lgnewui-stats-label-subtle {
    opacity: 0.6;
    color: rgba(255, 255, 255, 0.9);
}

.lgnewui-home .lgnewui-traffic-card {
    position: relative;
    overflow: visible;
    /* 必须 visible，否则 tooltip 会被截断 */
    min-height: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.lgnewui-home .lgnewui-traffic-metrics {
    margin-top: 0.8rem;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 0.7rem;
    position: relative;
    z-index: 2;
}

.lgnewui-home .lgnewui-traffic-metric {
    min-width: 0;
    position: relative;
    /* 为 tooltip 提供定位上下文 */
    cursor: pointer;
}


.lgnewui-home .lgnewui-traffic-divider {
    width: 1px;
    height: 52px;
    background: linear-gradient(to bottom,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.34) 28%,
            rgba(255, 255, 255, 0.34) 72%,
            rgba(255, 255, 255, 0) 100%);
}

.lgnewui-home .lgnewui-traffic-value {
    font-size: clamp(1.4rem, 2vw, 1.8rem);
    font-weight: 900;
    line-height: 1;
    letter-spacing: -0.04em;
    color: #fff;
    text-shadow: 0 3px 6px rgba(0, 0, 0, 0.12);
    /* 防止超长数字撑破容器 */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lgnewui-home .lgnewui-traffic-label {
    margin-top: 0.3rem;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1.2;
    color: rgba(255, 255, 255, 0.86);
    letter-spacing: 0.04em;
}

@media (max-width: 720px) {
    .lgnewui-home .lgnewui-traffic-card {
        min-height: 0;
    }

    .lgnewui-home .lgnewui-traffic-value {
        font-size: clamp(1.3rem, 6vw, 1.6rem);
    }

    .lgnewui-home .lgnewui-traffic-label {
        font-size: 0.66rem;
    }

    .lgnewui-home .lgnewui-traffic-divider {
        height: 40px;
    }
}

.lgnewui-home .lgnewui-flex-center {
    display: flex;
    align-items: center;
}

.lgnewui-home .lgnewui-animate-spin-slow {
    animation: lg-spin 8s linear infinite;
}

.lgnewui-home .lgnewui-w-12-pct {
    width: 12%;
}

/* ========================================
   新版时光计时器样式（从 head.php 复制）
   ======================================== */

:root {
    --lgnewui-day-bg-card: rgba(255, 255, 255, 0.85);
    --lgnewui-day-text-main: #2D3748;
    --lgnewui-day-text-sub: #718096;
    --lgnewui-day-text-light: #A0AEC0;
    --lgnewui-day-accent-color: #E53E3E;
    --lgnewui-day-font-en: 'Inter', sans-serif;
    --lgnewui-day-font-cn-serif: 'Noto Serif SC', serif;
    --lgnewui-day-font-ui: 'Inter', sans-serif;
    --lgnewui-day-font-nums: 'Inter', sans-serif;
    --lgnewui-day-shadow-card: 0 20px 40px -10px rgba(0, 0, 0, 0.05), 0 10px 20px -10px rgba(0, 0, 0, 0.02);
}

@keyframes lgnewui-day-silky-reveal {
    0% {
        opacity: 0;
        transform: translateY(8px) scale(0.97);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes lgnewui-day-heartbeat {
    0% {
        transform: scale(1);
    }

    14% {
        transform: scale(1.15);
    }

    28% {
        transform: scale(1);
    }

    42% {
        transform: scale(1.15);
    }

    70% {
        transform: scale(1);
    }
}

.lgnewui-day-wrapper {
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto 3rem;
}

.lgnewui-day-fusion-card {
    background-color: var(--lgnewui-day-bg-card);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: 1.5rem;
    padding: 3rem 2rem;
    box-shadow: var(--lgnewui-day-shadow-card);
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
    overflow: hidden;
    border: 1px solid rgb(227 227 227 / 60%);
    text-align: center;
}

.lgnewui-day-ambient-light {
    position: absolute;
    bottom: -150px;
    right: -100px;
    width: 550px;
    height: 550px;
    background: radial-gradient(circle, rgba(255, 182, 193, 0.4) 0%, rgba(230, 230, 250, 0.25) 40%, rgba(255, 255, 255, 0) 70%);
    border-radius: 50%;
    filter: blur(60px);
    z-index: 0;
    pointer-events: none;
}

.lgnewui-day-mac-dots {
    position: absolute;
    top: 1.5rem;
    left: 1.5rem;
    display: flex;
    gap: 0.5rem;
    z-index: 10;
}

.lgnewui-day-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

.lgnewui-day-dot-red {
    background-color: #FF5F57;
}

.lgnewui-day-dot-yellow {
    background-color: #FFBD2E;
}

.lgnewui-day-dot-green {
    background-color: #28C840;
}

.lgnewui-day-left-section {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 2;
}

.lgnewui-day-title-container {
    margin-bottom: 2rem;
    text-align: left;
}

.lgnewui-day-poetic-title {
    font-family: var(--lgnewui-day-font-cn-serif);
    font-size: 1.6rem;
    font-weight: 700;
    color: #1a202c;
    line-height: 1.6;
    letter-spacing: 0.05em;
    margin: 0;
}

.lgnewui-day-start-date-capsule {
    display: inline-flex;
    align-items: center;
    background-color: rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(0, 0, 0, 0.05);
    padding: 5px 12px 5px 5px;
    border-radius: 50px;
    gap: 10px;
    width: fit-content;
    transition: all 0.3s ease;
    cursor: default;
}

.lgnewui-day-start-date-capsule:hover {
    background-color: #fff;
    border-color: rgba(0, 0, 0, 0.08);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06);
    transform: translateY(-2px);
}

.lgnewui-day-icon-circle {
    width: 28px;
    height: 28px;
    background-color: var(--lgnewui-day-accent-color);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    box-shadow: 0 2px 8px rgba(229, 62, 62, 0.3);
}

.lgnewui-day-icon-circle i {
    animation: lgnewui-day-heartbeat 2s infinite ease-in-out;
}

.lgnewui-day-date-text-group {
    display: flex;
    flex-direction: column;
    text-align: left;
    justify-content: center;
}

.lgnewui-day-date-label-small {
    font-family: var(--lgnewui-day-font-ui);
    font-size: 0.55rem;
    color: var(--lgnewui-day-text-light);
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-bottom: 3px;
}

.lgnewui-day-date-value-clean {
    font-family: var(--lgnewui-day-font-nums);
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--lgnewui-day-text-sub);
    line-height: 1.2;
}

.lgnewui-day-right-section {
    display: flex;
    flex-shrink: 0;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 2;
}

.lgnewui-day-main-days-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 2.5rem;
}

.lgnewui-day-main-days-number {
    font-family: var(--lgnewui-day-font-nums);
    font-variant-numeric: tabular-nums;
    font-size: 6rem;
    font-weight: 700;
    letter-spacing: -0.04em;
    line-height: 1;
    background: linear-gradient(135deg, #1A202C 0%, #4A5568 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: #1A202C;
    display: inline-block;
}

.lgnewui-day-days-divider {
    width: 40px;
    height: 4px;
    background-color: var(--lgnewui-day-accent-color);
    border-radius: 2px;
    margin: 5px 0 10px 0;
    margin-left: auto;
    margin-right: auto;
}

.lgnewui-day-days-label {
    font-family: var(--lgnewui-day-font-ui);
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--lgnewui-day-text-light);
    text-transform: uppercase;
    letter-spacing: 0.4em;
    margin-right: -0.4em;
}

.lgnewui-day-digital-timer {
    display: flex;
    gap: 2rem;
    justify-content: center;
}

.lgnewui-day-timer-block {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.lgnewui-day-timer-val {
    font-family: var(--lgnewui-day-font-nums);
    font-variant-numeric: tabular-nums;
    font-size: 1.8rem;
    font-weight: 500;
    color: var(--lgnewui-day-text-main);
    line-height: 1;
    display: inline-block;
    will-change: transform, opacity, filter;
}

.lgnewui-day-anim-active {
    animation: lgnewui-day-silky-reveal 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}

.lgnewui-day-timer-label {
    margin-top: 0.5rem;
    font-family: var(--lgnewui-day-font-ui);
    font-size: 0.65rem;
    color: var(--lgnewui-day-text-light);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-weight: 600;
}

@media (max-width: 480px) {
    .lgnewui-day-fusion-card {
        padding: 2.5rem 1.5rem;
    }

    .lgnewui-day-main-days-number {
        font-size: 20vw;
    }

    .lgnewui-day-digital-timer {
        gap: 1.2rem;
    }

    .lgnewui-day-timer-val {
        font-size: 1.5rem;
    }
}

@media (min-width: 768px) {
    .lgnewui-day-fusion-card {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        padding: 3rem 3.5rem;
        gap: 3rem;
        text-align: left;
    }

    .lgnewui-day-left-section {
        align-items: flex-start;
        text-align: left;
    }

    .lgnewui-day-poetic-title {
        font-size: 2.8rem;
        margin-bottom: 3rem;
    }

    .lgnewui-day-title-container {
        margin-bottom: 0;
    }

    .lgnewui-day-right-section,
    .lgnewui-day-main-days-wrapper {
        align-items: flex-end;
    }

    .lgnewui-day-main-days-number {
        font-size: 7.5rem;
        line-height: 0.95;
    }

    .lgnewui-day-days-divider {
        margin-left: auto;
        margin-right: 0;
    }

    .lgnewui-day-digital-timer {
        gap: 2.5rem;
        justify-content: flex-end;
    }

    .lgnewui-day-timer-val {
        font-size: 2rem;
    }
}

@media (min-width: 1024px) {
    .lgnewui-day-fusion-card {
        padding: 4rem 5rem;
        gap: 5rem;
    }

    .lgnewui-day-main-days-number {
        font-size: 8rem;
    }

    .lgnewui-day-digital-timer {
        gap: 3.5rem;
    }

    .lgnewui-day-timer-val {
        font-size: 2.2rem;
    }
}

/* ========================================
   Love Day 时间卡片样式
   ======================================== */

.time_card {
    background: #a67cff;
    color: #fff;
    padding: 2rem;
    border-radius: 1rem;
    font-family: 'Noto Serif SC', serif;
    font-weight: 700;
    transition: transform 0.3s, box-shadow 0.3s;
}

.time_card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.time_card:nth-child(8n+1) {
    background: #fc5d79;
}

.time_card:nth-child(8n+2) {
    background: #a67cff;
}

.time_card:nth-child(8n+3) {
    background: #49d4a2;
}

.time_card:nth-child(8n+4) {
    background: #ffa87c;
}

.time_card:nth-child(8n+5) {
    background: #03a9f4;
}

.time_card:nth-child(8n+6) {
    background: #19c0b0;
}

.time_card:nth-child(8n+7) {
    background: #ec5ca8;
}

.time_card:nth-child(8n+8) {
    background: #0fcaee;
}

.time_card .day_cont {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.time_card .day_cont .day_title {
    width: 100%;
    font-size: 1.3rem;
    letter-spacing: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.time_card .day_cont .time_m {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    width: 30%;
}

.time_card .day_cont .time_m .format {
    margin-top: 0.6rem;
    font-size: 1.1rem;
}

.time_card .day_cont .time_m .source {
    font-size: 1.2rem;
}

.day_cont .left_info {
    display: flex;
    align-items: center;
    width: 70%;
    line-height: 2em;
    cursor: pointer;
}

.day_cont .left_info svg {
    margin-right: 0.5rem;
    flex-shrink: 0;
}

.day_cont .left_info .day_title {
    flex: 1;
}

/* ========================================
   Love Day Module Layout Styles
   ======================================== */

.Width_limit_10rem {
    padding: 0 10rem;
}

.central {
    width: 100%;
    margin: 2rem auto;
    padding: 0;
    box-sizing: border-box;
}

.central.maxW95 {
    width: 100%;
}

.ltps {
    background-image: linear-gradient(45deg, #3e3e3e, #767676);
    border-radius: 1rem;
    color: #fff;
    border-radius: 0.5rem;
    padding: 1.5rem 1rem;
    font-size: 1.3rem;
    font-family: 'Noto Serif SC', serif;
    font-weight: 700;
    display: flex;
    align-items: center;
}

.ltps .hen {
    width: 4px;
    height: 20px;
    background: #fff;
    display: inline-block;
    border-radius: 1rem;
    margin-right: 0.6rem;
}

.shadow-blur {
    position: relative;
}

.shadow-blur::before {
    content: "";
    display: block;
    background: inherit;
    filter: blur(0.5rem);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 5px;
    left: 5px;
    z-index: -1;
    opacity: 0.4;
    transform-origin: 0 0;
    border-radius: inherit;
    transform: scale(1, 1);
}

.row {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 2rem;
}

.col-lg-6,
.col-md-6,
.col-sm-12,
.col-sm-x-12 {
    grid-column: span 12;
}

@media screen and (min-width: 992px) {
    .col-lg-6 {
        grid-column: span 6;
    }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .col-md-6 {
        grid-column: span 6;
    }
}

@media screen and (max-width: 1200px) {
    .Width_limit_10rem {
        padding: 0 3rem;
    }

    .central {
        width: 100%;
        padding: 0;
    }
}

@media screen and (max-width: 768px) {
    .Width_limit_10rem {
        padding: 0 1rem;
    }

    .row {
        gap: 1rem;
    }
}

@media screen and (max-width: 576px) {
    .Width_limit_10rem {
        padding: 0;
    }

    .col-sm-12,
    .col-sm-x-12 {
        grid-column: span 12;
    }
}

/* --- Love Day Legacy Card Support --- */
.lgnewui-home .time_card {
    background: #a67cff;
    color: #fff;
    padding: 1.5rem;
    border-radius: var(--lg-radius-lg);
    font-family: var(--lg-font-serif);
    font-weight: 700;
    margin-bottom: 1.5rem;
    box-shadow: var(--lg-shadow-md);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.lgnewui-home .time_card:hover {
    transform: translateY(-5px);
    box-shadow: var(--lg-shadow-hover);
}

.lgnewui-home .time_card:nth-child(8n+1) {
    background: #fc5d79;
}

.lgnewui-home .time_card:nth-child(8n+2) {
    background: #a67cff;
}

.lgnewui-home .time_card:nth-child(8n+3) {
    background: #49d4a2;
}

.lgnewui-home .time_card:nth-child(8n+4) {
    background: #ffa87c;
}

.lgnewui-home .time_card:nth-child(8n+5) {
    background: #03a9f4;
}

.lgnewui-home .time_card:nth-child(8n+6) {
    background: #19c0b0;
}

.lgnewui-home .time_card:nth-child(8n+7) {
    background: #ec5ca8;
}

.lgnewui-home .time_card:nth-child(8n+8) {
    background: #0fcaee;
}

.lgnewui-home .time_card .day_cont {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.lgnewui-home .time_card .day_cont .day_title {
    width: 100%;
    font-size: 1.3rem;
    letter-spacing: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: bold;
}

.lgnewui-home .time_card .day_cont .time_m {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    width: 35%;
}

.lgnewui-home .time_card .day_cont .time_m .source {
    font-size: 1rem;
    opacity: 0.8;
}

.lgnewui-home .time_card .day_cont .time_m .format {
    margin-top: 0.4rem;
    font-size: 1.1rem;
    font-style: normal;
}

.lgnewui-home .day_cont .left_info {
    display: flex;
    align-items: center;
    width: 65%;
    line-height: normal;
}

.lgnewui-home .day_cont .left_info .icon {
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 0.5rem;
    margin-right: 0.8rem;
    flex-shrink: 0;
    fill: currentColor;
}

/* --- New Atmospheric Love Day Widget --- */
.lgnewui-home .lgnewui-widget--loveday {
    background: #ffffff;
    border: 1px solid #ffe4e6;
    color: var(--lg-color-text);
    padding: 1.25rem;
    min-height: auto;
}

.lgnewui-home .lgnewui-icon-box-rose-soft {
    width: 3rem;
    height: 3rem;
    border-radius: 1rem;
    background: #fff1f2;
    color: #e11d48;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.lgnewui-home .lgnewui-icon-box-rose-soft svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: currentColor;
}

.lgnewui-home .lgnewui-loveday-title {
    font-family: var(--lg-font-serif);
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 0.25rem;
    color: var(--lg-color-text);
}

.lgnewui-home .lgnewui-loveday-date {
    font-family: var(--lg-font-sans);
    font-size: 0.85rem;
    color: var(--lg-color-text-muted);
}

.lgnewui-home .lgnewui-loveday-count {
    font-family: var(--lg-font-sans);
    font-size: 2.05rem;
    font-weight: 800;
    color: #e11d48;
    line-height: 1;
    display: inline-flex;
    align-items: flex-end;
}

.lgnewui-home .lgnewui-loveday-label {
    font-size: 0.75rem;
    color: var(--lg-color-text-subtle);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
    margin-top: 0.125rem;
}

.lgnewui-home .lgnewui-text-right {
    text-align: right;
}

.lgnewui-home .lgnewui-flex-between-center {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.lgnewui-home .lgnewui-flex-center-gap {
    display: flex;
    align-items: center;
    gap: 1rem;
}

/* --- Vibrant Love Day Widget (Attempt 2) --- */
.lgnewui-home .lgnewui-widget--loveday-vibrant {
    border: none;
    color: white;
    box-shadow: var(--lg-shadow-md);
    position: relative;
    overflow: visible;
    padding: 1.25rem;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.lgnewui-widget--loveday-blue {
    background: var(--lg-grad-blue);
}

.lgnewui-widget--loveday-purple {
    background: var(--lg-grad-purple);
}

.lgnewui-widget--loveday-pink {
    background: var(--lg-grad-pink);
}

.lgnewui-widget--loveday-orange {
    background: var(--lg-grad-orange);
}

.lgnewui-widget--loveday-cyan {
    background: var(--lg-grad-cyan);
}

.lgnewui-widget--loveday-indigo {
    background: var(--lg-grad-moon);
}

.lgnewui-home .lgnewui-icon-box-glass-white {
    width: 3rem;
    height: 3rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(8px);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.lgnewui-home .lgnewui-icon-box-glass-white svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: currentColor;
}

.lgnewui-home .lgnewui-widget--loveday-vibrant .lgnewui-loveday-title {
    color: white !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.lgnewui-home .lgnewui-widget--loveday-vibrant .lgnewui-loveday-date {
    color: rgba(255, 255, 255, 0.9) !important;
    margin-top: 0.25rem;
}

/* Optimization: Align Label and Count Side-by-Side */
.lgnewui-home .lgnewui-widget--loveday-vibrant .lgnewui-text-right {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    flex-direction: column;
    gap: 0.22rem;
    text-align: right;
    flex-shrink: 0;
    white-space: nowrap;
    margin-left: 0.5rem;
}

.lgnewui-home .lgnewui-widget--loveday-vibrant .lgnewui-loveday-sup-label {
    font-size: 0.75rem;
    opacity: 0.8;
    color: white !important;
    font-weight: 500;
    line-height: 1;
    position: absolute;
    top: 0;
    right: 0;
    display: inline-flex;
    width: auto;
    padding: .35rem 1rem;
    background: #00000075;
    border-radius: 0 1.5rem 0 .8rem;
    font-weight: 700;
    letter-spacing: 3px;
}

.lgnewui-home .lgnewui-widget--loveday-vibrant .lgnewui-loveday-count {
    color: white !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
    line-height: 1;
}

.lgnewui-home .lgnewui-widget--loveday-vibrant .lgnewui-loveday-label {
    color: rgba(255, 255, 255, 0.8) !important;
}

.lgnewui-home .lgnewui-loveday-bg-icon {
    position: absolute;
    right: -1rem;
    bottom: -1rem;
    width: 6rem;
    height: 6rem;
    opacity: 0.1;
    transform: rotate(15deg);
    pointer-events: none;
    fill: white;
}

/* --- Refined Love Day Styles (Two-Tone Logic) --- */
.lgnewui-home .lgnewui-widget--loveday-past {
    background: var(--lg-grad-orange);
}

.lgnewui-home .lgnewui-widget--loveday-future {
    background: var(--lg-grad-blue);
}

.lgnewui-home .lgnewui-loveday-bg-icon {
    opacity: 0.05 !important;
    filter: blur(1px);
    right: -1.5rem !important;
    bottom: -1.5rem !important;
    transform: rotate(10deg) scale(1.2) !important;
}

/* --- Love Day Card Styles --- */
.lgnewui-home .lgnewui-widget--loveday-vibrant {
    padding: 1.75rem 1.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    cursor: pointer;
}

.lgnewui-home .lgnewui-widget--loveday-vibrant>div {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.lgnewui-home .lgnewui-widget--loveday-vibrant {
    position: relative;
}

/* ── 骨架卡片过渡（tab切换时短暂显示） ── */
.lgnewui-home .lgnewui-widget--loveday-vibrant.lgnewui-skeleton-card {
    overflow: hidden;
}

.lgnewui-home .lgnewui-widget--loveday-vibrant.lgnewui-skeleton-card>*:not(.lgnewui-skeleton-bars) {
    opacity: 0 !important;
}

/* 占位骨架条（真实DOM，支持圆角） */
.lgnewui-skeleton-bars {
    position: absolute;
    inset: 0;
    z-index: 4;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 1.5rem;
}

.lgnewui-skeleton-bars .sk-left,
.lgnewui-skeleton-bars .sk-right {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.lgnewui-skeleton-bars .sk-right {
    align-items: flex-end;
}

.lgnewui-skeleton-bars .sk-bar {
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.18);
}

.lgnewui-skeleton-bars .sk-title {
    width: 120px;
    height: 14px;
}

.lgnewui-skeleton-bars .sk-date {
    width: 88px;
    height: 10px;
    background: rgba(255, 255, 255, 0.12);
}

.lgnewui-skeleton-bars .sk-num {
    width: 72px;
    height: 26px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.22);
}

.lgnewui-skeleton-bars .sk-unit {
    width: 36px;
    height: 10px;
    background: rgba(255, 255, 255, 0.10);
}

/* shimmer 扫光 */
.lgnewui-home .lgnewui-widget--loveday-vibrant.lgnewui-skeleton-card::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: linear-gradient(110deg,
            rgba(255, 255, 255, 0) 30%,
            rgba(255, 255, 255, 0.18) 50%,
            rgba(255, 255, 255, 0) 70%);
    background-size: 200% 100%;
    animation: lgnewui-skeleton-shimmer 1.2s ease-in-out;
    z-index: 5;
    pointer-events: none;
}

@keyframes lgnewui-skeleton-shimmer {
    0% {
        background-position: 100% 0;
    }

    100% {
        background-position: -100% 0;
    }
}

/* 骨架态移除后的内容淡入 */
.lgnewui-home .lgnewui-widget--loveday-vibrant:not(.lgnewui-skeleton-card)>* {
    transition: opacity 0.3s ease;
}

.lgnewui-home .lgnewui-widget--loveday-vibrant .lgnewui-flex-center-gap {
    flex: 1;
    min-width: 0;
    margin-right: 0.5rem;
}

.lgnewui-home .lgnewui-widget--loveday-vibrant .lgnewui-flex-center-gap>div:last-child {
    flex: 1;
    min-width: 0;
    overflow: hidden;
}

.lgnewui-home .lgnewui-loveday-title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    min-width: 0;
    font-size: 1.125rem;
    margin-right: 0.5rem;
}

/* --- Love Day Capsule Label --- */
.lgnewui-home .lgnewui-loveday-capsule {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.2);
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 0.65rem;
    font-weight: 600;
    letter-spacing: 0.5px;
    margin-top: 0.25rem;
    backdrop-filter: blur(4px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

/* --- FINAL FORCE: Heart Icon Visibility --- */
.lgnewui-home .lgnewui-loveday-bg-icon {
    opacity: 0.3 !important;
    filter: none !important;
    transform: rotate(-15deg) scale(1.6) !important;
    right: -2rem !important;
    bottom: -2rem !important;
    pointer-events: none;
}

/* --- Final Decorative Icons (Giant & Ethereal) --- */
.lgnewui-home .lgnewui-loveday-bg-icon {
    width: 12rem !important;
    height: 12rem !important;
    transform: rotate(-15deg) !important;
    right: -3rem !important;
    bottom: -4rem !important;
    opacity: 0.08 !important;
    pointer-events: none;
    fill: currentColor;
}

.lgnewui-home .lgnewui-loveday-bg-icon path {
    fill: white;
}

/* --- Indigo Theme for Love Day Section --- */
.lgnewui-home .lgnewui-section-header--indigo {
    border-bottom-color: rgba(99, 102, 241, 0.1);
}

.lgnewui-home .lgnewui-section-header--indigo::after {
    background: linear-gradient(90deg, #6366f1, transparent);
}

.lgnewui-home .lgnewui-section-title-color-indigo {
    background: -webkit-linear-gradient(45deg, #6366f1, #a855f7);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.lgnewui-home .lgnewui-section-icon-box--indigo {
    background: linear-gradient(135deg, #6366f1 0%, #a855f7 100%);
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3);
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 0.75rem;
}

/* --- Purple Theme for Love Day Section (Solid Color) --- */
.lgnewui-home .lgnewui-section-header--purple {
    border-bottom-color: rgba(168, 85, 247, 0.15);
}

.lgnewui-home .lgnewui-section-header--purple::after {
    background: linear-gradient(90deg, #a855f7, transparent);
}

.lgnewui-home .lgnewui-section-title-color-purple {
    color: #a855f7;
}

.lgnewui-home .lgnewui-section-icon-box--purple {
    background: #a855f7;
    box-shadow: 0 4px 16px rgba(168, 85, 247, 0.35);
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 0.75rem;
}

/* --- iOS Style Segmented Control --- */
.lgnewui-home .lgnewui-segmented-control {
    background: rgba(118, 118, 128, 0.12);
    border-radius: 8px;
    padding: 2px;
    display: inline-flex;
    position: relative;
    user-select: none;
}

.lgnewui-home .lgnewui-segment-btn {
    border: none;
    outline: none;
    background: transparent;
    font-family: var(--lg-font-sans);
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--lg-color-text-muted);
    padding: 4px 12px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.4, 0.0, 0.2, 1);
    position: relative;
    z-index: 1;
}

.lgnewui-home .lgnewui-segment-btn:hover {
    color: var(--lg-color-text);
}

.lgnewui-home .lgnewui-segment-btn.active {
    background: #ffffff;
    color: #000000;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 1px rgba(0, 0, 0, 0.05);
    font-weight: 600;
}

@keyframes lg-fade-up-enter {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

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

.lgnewui-anim-reenter {
    animation: lg-fade-up-enter 0.5s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* --- Love Day Unit Style --- */
.lgnewui-loveday-unit {
    font-size: .8rem;
    margin-left: 4px;
    margin-bottom: 2px;
    font-weight: 700;
    background: #ffffff;
    color: #000;
    width: 1.3rem;
    height: 1.3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
}

.lgnewui-home .lgnewui-widget--loveday-past .lgnewui-loveday-unit {
    color: var(--lg-grad-font-orange);
}

.lgnewui-home .lgnewui-widget--loveday-future .lgnewui-loveday-unit {
    color: var(--lg-grad-font-blue);
}

/* --- Refined Date Typography --- */
.lgnewui-home .lgnewui-loveday-date {
    font-family: var(--lgnewui-day-font-nums, 'Interval', sans-serif);
    letter-spacing: 1px;
    opacity: 0.75;
    margin-top: 4px;
}

.lgnewui-home .lgnewui-loveday-date-line {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lgnewui-home .lgnewui-loveday-lunar-inline {
    display: block;
    max-width: 100%;
    margin-top: 0;
    font-size: 0.78rem;
    line-height: 1.1;
    letter-spacing: 0.01em;
    color: rgba(255, 255, 255, 0.82);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lgnewui-home .lgnewui-loveday-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.5rem;
}

.lgnewui-home .lgnewui-loveday-content {
    position: relative;
    z-index: 1;
}

/* --- Switchable Background Styles (Backend Controlled) --- */

body.bg-pure-white {
    background: #ffffff !important;
}

/* 弥散光渐变：白底 + 柔和弥散色块，顶部纯白衔接轮播图波浪 */
body.bg-diffuse-glow {
    background: #ffffff !important;
}

body.bg-diffuse-glow::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
    background:
        radial-gradient(ellipse 600px 400px at 12% 55%, rgba(251, 191, 146, 0.20), transparent 70%),
        radial-gradient(ellipse 500px 350px at 88% 40%, rgba(251, 146, 160, 0.16), transparent 70%),
        radial-gradient(ellipse 450px 300px at 50% 78%, rgba(186, 210, 246, 0.15), transparent 70%);
    mask-image: linear-gradient(to bottom, transparent 0%, white 15%, white 100%);
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, white 15%, white 100%);
}

/* "body { background: #fff; background-image: linear-gradient(rgba(0,0,0,0.03) 1px, transparent 1px)... }" */
body.bg-grid-subtle {
    background-color: #fff !important;
    background-image:
        linear-gradient(rgba(0, 0, 0, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 0, 0, 0.03) 1px, transparent 1px) !important;
    background-size: 23px 23px !important;
}

/* "radial-gradient(#eeeeee 1px, transparent 1px)... background-position: 0 0, 10px 10px;" */
body.bg-pdot-cross {
    background-color: #fff !important;
    background-image:
        radial-gradient(#eeeeee 1px, transparent 1px),
        radial-gradient(#eeeeee 1px, transparent 1px) !important;
    background-size: 22px 22px !important;
    background-position: 0 0, 10px 10px !important;
}

body.bg-pdot-vignette {
    background-color: #ffffff !important;
    background-image: radial-gradient(#f2f2f2 1px, #ffffff00 1px) !important;
    background-size: 10px 10px !important;
}

body.bg-pdot-vignette::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: radial-gradient(circle at center, transparent 0%, #fff 80%);
    pointer-events: none;
    z-index: -1;
}

/* 渐变网格：白底 + 灰色网格线 + vignette 渐隐 */
body.bg-grad-grid {
    background-color: #ffffff !important;
    background-image:
        linear-gradient(to right, rgba(0, 0, 0, 0.05) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(0, 0, 0, 0.05) 1px, transparent 1px) !important;
    background-size: 24px 24px !important;
}

body.bg-grad-grid::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: radial-gradient(circle at center, transparent 0%, #fff 80%);
    pointer-events: none;
    z-index: -1;
}

/* =================================================================
 * 智能媒体卡片组件 (Smart Card Component)
 * 用于"时光碎片"等需要电影级切换动画的媒体展示场景
 * =================================================================
 */

/* 卡片容器 */
.lgnewui-home .lgnewui-smart-card {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 420px;
    background-color: #171717;
    border-radius: 1.5rem;
    overflow: hidden;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05), 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    user-select: none;
    transform: translateZ(0);
    cursor: pointer;
}

/* 移动端降低卡片高度 */
@media (max-width: 767px) {
    .lgnewui-home .lgnewui-smart-card {
        min-height: 320px;
    }
}

/* 媒体容器 */
.lgnewui-home .lgnewui-smart-card__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: #171717;
    overflow: hidden;
    z-index: 0;
}

/* 媒体层（图片/视频） */
.lgnewui-home .lgnewui-smart-card__media-layer {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    will-change: transform, opacity;
    transition: transform 0.5s cubic-bezier(0.25, 0.1, 0.25, 1);
}

/* hover 缩放效果 */
.lgnewui-home .lgnewui-smart-card:hover .lgnewui-smart-card__media-layer {
    transform: scale(1.05);
}

/* 视频播放按钮（磨砂玻璃） */
.lgnewui-home .lgnewui-smart-card__play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 52px;
    height: 52px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.6);
    background: rgba(255, 255, 255, 0.25);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 35;
    padding: 0;
    outline: none;
    -webkit-appearance: none;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
    transition: all 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
    will-change: transform;
}

.lgnewui-home .lgnewui-smart-card__play-btn i {
    font-size: 24px;
    line-height: 1;
    pointer-events: none;
}

.lgnewui-home .lgnewui-smart-card:hover .lgnewui-smart-card__play-btn {
    background: rgba(255, 255, 255, 0.4);
    transform: translate(-50%, -50%) scale(1.15);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
}

.lgnewui-home .lgnewui-smart-card__play-btn:active {
    transform: translate(-50%, -50%) scale(0.85) !important;
    background: rgba(255, 255, 255, 0.55) !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
    transition: all 0.1s ease !important;
}

/* 遮罩层 */
.lgnewui-home .lgnewui-smart-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 0%, transparent 40%, rgba(0, 0, 0, 0.8) 100%);
    pointer-events: none;
    z-index: 30;
}

/* 顶部头部区域 */
.lgnewui-home .lgnewui-smart-card__header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 1.25rem;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    z-index: 40;
    box-sizing: border-box;
}

/* 发布者胶囊 */
.lgnewui-home .lgnewui-smart-card__capsule {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    background-color: rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 9999px;
    padding: 0.25rem 1rem 0.25rem 0.25rem;
    cursor: default;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
    transition: background-color 0.3s ease;
}

.lgnewui-home .lgnewui-smart-card__capsule:hover {
    background-color: rgba(0, 0, 0, 0.3);
}

/* 相册入口链接 - 默认圆形图标，hover展开 */
.lgnewui-home .lgnewui-smart-card__album-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    background-color: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 9999px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    text-decoration: none;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    overflow: hidden;
    pointer-events: auto;
}

.lgnewui-home .lgnewui-smart-card__album-link span {
    max-width: 0;
    opacity: 0;
    white-space: nowrap;
    transition: max-width 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.25s ease, margin 0.35s ease;
    margin-left: 0;
}

.lgnewui-home .lgnewui-smart-card__album-link i {
    font-size: 0.938rem;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.lgnewui-home .lgnewui-smart-card__album-link:hover {
    width: 6rem;
    padding: 0 0.75rem;
    gap: 0.375rem;
    background-color: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.3);
}

.lgnewui-home .lgnewui-smart-card__album-link:hover span {
    max-width: 100px;
    opacity: 1;
    margin-left: 0;
}

.lgnewui-home .lgnewui-smart-card__album-link:hover i {
    transform: translateX(2px);
}

/* 头像 */
.lgnewui-home .lgnewui-smart-card__avatar {
    width: 2rem;
    height: 2rem;
    border-radius: 9999px;
    object-fit: cover;
    box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
}

/* 用户信息 */
.lgnewui-home .lgnewui-smart-card__user-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 1.1;
}

.lgnewui-home .lgnewui-smart-card__name {
    color: #ffffff;
    font-weight: 500;
    font-size: 0.85rem;
    letter-spacing: 0.025em;
}

.lgnewui-home .lgnewui-smart-card__name,
.lgnewui-home .lgnewui-journal-user .lgnewui-font-sm-bold,
.lgnewui-home .lgnewui-capsule__text,
.lg-map .lover-name,
.lg-map .lpc-name,
.lgnewui-new-photo .user-info{
    font-family: 'Dancing Script', 'Noto Serif SC', cursive;
}

.lgnewui-home .lgnewui-smart-card__time {
    color: rgba(255, 255, 255, 0.6);
    font-size: 9px;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    margin-top: 2px;
}

/* 底部内容区域 */
.lgnewui-home .lgnewui-smart-card__content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 1.25rem;
    z-index: 40;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    pointer-events: none;
    box-sizing: border-box;
}

/* 地点胶囊 */
.lgnewui-home .lgnewui-smart-card__location-pill {
    display: none;
    align-items: center;
    gap: 0.375rem;
    opacity: 0;
    transform: scale(0.8);
    transition: none;
    padding: 0.25rem 0.625rem;
    background-color: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 6px;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 0.75rem;
    font-size: 0.85rem;
}

.lgnewui-home .lgnewui-smart-card__location-pill.active {
    display: inline-flex;
}

.lgnewui-home .lgnewui-smart-card__location-pill.lgnewui-smart-card__loc-anim {
    animation: lgnewui-loc-pop-in 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes lgnewui-loc-pop-in {
    0% {
        opacity: 0;
        transform: scale(0.6);
    }
    60% {
        opacity: 1;
        transform: scale(1.06);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

/* 地点标签独特动画：从左滑入+缩放 */
.lgnewui-home .lgnewui-smart-card__location-slide-in {
    animation: locationSlideIn 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes locationSlideIn {
    0% {
        opacity: 0;
        transform: translateX(-20px) scale(0.8);
    }

    100% {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
}

.lgnewui-home .lgnewui-smart-card__location-text {
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

/* 标题 */
.lgnewui-home .lgnewui-smart-card__title {
    font-family: "Noto Serif SC", serif;
    font-size: 1.875rem;
    line-height: 1.1;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 0.625rem 0;
    letter-spacing: -0.025em;
    filter: drop-shadow(0 10px 8px rgb(0 0 0 / 0.04)) drop-shadow(0 4px 3px rgb(0 0 0 / 0.1));
}

/* 元数据容器 */
.lgnewui-home .lgnewui-smart-card__meta {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    width: 100%;
}

/* 日期 */
.lgnewui-home .lgnewui-smart-card__date {
    display: none;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.875rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    font-family: var(--lg-font-sans);
}

.lgnewui-home .lgnewui-smart-card__date.active {
    display: block;
}

/* 描述 */
.lgnewui-home .lgnewui-smart-card__desc {
    color: rgba(255, 255, 255, 0.85);
    font-family: var(--lg-font-sans);
    font-size: 0.938rem;
    line-height: 1.6;
    font-weight: 300;
    opacity: 0.9;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    filter: drop-shadow(0 4px 3px rgb(0 0 0 / 0.07));
    max-width: 80%;
}

/* 切换按钮容器 */
.lgnewui-home .lgnewui-smart-card__switch-btn-container {
    position: absolute;
    bottom: 1.25rem;
    right: 1.25rem;
    z-index: 50;
}

/* 切换按钮 */
.lgnewui-home .lgnewui-smart-card__switch-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.25);
    color: white;
    cursor: pointer;
    transition: all 0.3s ease;
    outline: none;
    padding: 0;
    font-size: 0.875rem;
}

.lgnewui-home .lgnewui-smart-card__switch-btn:hover {
    background-color: rgba(255, 255, 255, 0.2);
    transform: scale(1.1);
}

.lgnewui-home .lgnewui-smart-card__switch-btn:active {
    background-color: rgba(255, 255, 255, 0.3);
    transform: scale(0.95);
}

/* 切换按钮加载态 */
.lgnewui-home .lgnewui-smart-card__switch-btn.loading {
    opacity: 0.5;
    pointer-events: none;
    animation: lgnewui-spin 1s linear infinite;
}

/* ========== 动画关键帧 ========== */

/* 旋转动画 */
@keyframes lgnewui-spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* 电影级入场动画 */
@keyframes lgnewui-cinematic-enter {
    0% {
        transform: scale(1.15);
        opacity: 0;
        filter: blur(10px);
    }

    100% {
        transform: scale(1);
        opacity: 1;
        filter: blur(0);
    }
}

/* 电影级退场动画 */
@keyframes lgnewui-cinematic-exit {
    0% {
        transform: scale(1);
        opacity: 1;
        filter: brightness(1);
    }

    100% {
        transform: scale(1.05);
        opacity: 0;
        filter: brightness(0.8);
    }
}

/* 文字滑入动画 */
@keyframes lgnewui-slide-up-fade {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

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

/* 动画类 */
.lgnewui-home .lgnewui-smart-card__anim-enter {
    animation: lgnewui-cinematic-enter 1.2s cubic-bezier(0.2, 0, 0, 1) forwards;
    z-index: 20;
}

.lgnewui-home .lgnewui-smart-card__anim-exit {
    animation: lgnewui-cinematic-exit 1.2s cubic-bezier(0.2, 0, 0, 1) forwards;
    z-index: 10;
}

.lgnewui-home .lgnewui-smart-card__text-stagger {
    animation: lgnewui-slide-up-fade 0.8s cubic-bezier(0.2, 0, 0.2, 1) forwards;
    opacity: 0;
    transform: translateY(20px);
}

/* ============================================
   过渡区域 (Transition Zone) - 纯留白
   ============================================ */
.lgnewui-home .lgnewui-transition-zone {
    height: 60px;
}

/* ============================================
   笔记本卡片式结尾模块 (Epilogue)
   ============================================ */


.lgnewui-home .lgnewui-epilogue__card {
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0.6) 60px,
            rgba(255, 255, 255, 0.9) 100px,
            #ffffff 140px);
    position: relative;
    border-radius: 0;
    padding: 4rem 1rem 2rem 1rem;
    min-height: 380px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin: 0 auto;
}

/* 底部阴影 */
.lgnewui-home .lgnewui-epilogue__card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 10%;
    right: 10%;
    height: 1px;
    box-shadow: 0 20px 60px 20px rgba(0, 0, 0, 0.06);
}

/* 顶部活页孔 - 隐藏 */
.lgnewui-home .lgnewui-epilogue__holes {
    display: none;
}

.lgnewui-home .lgnewui-epilogue__hole {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background-color: #f2f2f2;
    border: 1px solid rgba(0, 0, 0, 0.02);
}

/* 头部标题 */
.lgnewui-home .lgnewui-epilogue__header {
    margin-bottom: 1.5rem;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.lgnewui-home .lgnewui-epilogue__title {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    font-family: 'Noto Serif SC', serif;
    font-size: 1.285rem;
    color: #c7c7c7;
    letter-spacing: 0.3em;
    font-weight: 300;
}

.lgnewui-home .lgnewui-epilogue__title::before,
.lgnewui-home .lgnewui-epilogue__title::after {
    content: '';
    width: 60px;
    height: 1px;
    background: linear-gradient(to right, transparent, rgba(0, 0, 0, 0.1));
}

.lgnewui-home .lgnewui-epilogue__title::after {
    background: linear-gradient(to left, transparent, rgba(0, 0, 0, 0.1));
}

/* 文案区 */
.lgnewui-home .lgnewui-epilogue__quote-container {
    flex: 1;
    width: 100%;
    min-height: 140px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
}

.lgnewui-home .lgnewui-epilogue__quote-text {
    font-family: 'Inter', var(--lg-font-sans);
    font-weight: 200;
    font-size: 1.65rem;
    line-height: 2;
    color: #222;
    letter-spacing: 0.05em;
    transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 1;
    filter: blur(0);
    transform: scale(1);
    max-width: 90%;
    margin: 0;
}

.lgnewui-home .lgnewui-epilogue__quote-text.switching {
    opacity: 0;
    filter: blur(12px);
    transform: scale(0.98);
}

/* 底部功能区 */
.lgnewui-home .lgnewui-epilogue__actions {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    align-items: center;
    position: relative;
    padding-top: 1.25rem;
}

.lgnewui-home .lgnewui-epilogue__actions::before {
    content: '';
    position: absolute;
    top: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(to right, #fff 0%, rgba(0, 0, 0, 0.06) 15%, rgba(0, 0, 0, 0.06) 85%, #fff 100%);
    pointer-events: none;
}

/* 左侧导航组 */
.lgnewui-home .lgnewui-epilogue__nav {
    display: flex;
    gap: 0.6rem;
    flex-wrap: wrap;
    justify-content: center;
}

.lgnewui-home .lgnewui-epilogue__btn-pill {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background-color: #f7f7f7;
    color: #666;
    border-radius: 10px;
    font-size: 0.8125rem;
    font-family: 'Inter', var(--lg-font-sans);
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
    border: none;
}

.lgnewui-home .lgnewui-epilogue__btn-pill:hover {
    background-color: #f0f0f0;
    color: #000;
    transform: translateY(-1px);
}

.lgnewui-home .lgnewui-epilogue__btn-pill:active {
    transform: scale(0.96);
}

.lgnewui-home .lgnewui-epilogue__btn-pill i {
    font-size: 0.875rem;
    opacity: 0.6;
}

.lgnewui-home .lgnewui-epilogue__btn-pill:hover i {
    opacity: 1;
}

/* 右侧工具组 */
.lgnewui-home .lgnewui-epilogue__tools {
    display: flex;
    gap: 0.6rem;
}

.lgnewui-home .lgnewui-epilogue__btn-icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background-color: #f7f7f7;
    color: #666;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lgnewui-home .lgnewui-epilogue__btn-icon:hover {
    background-color: #f0f0f0;
    color: #000;
    transform: translateY(-1px);
}

.lgnewui-home .lgnewui-epilogue__btn-icon:active {
    transform: scale(0.96);
}

.lgnewui-home .lgnewui-epilogue__btn-icon i {
    font-size: 1rem;
    opacity: 0.8;
}

/* 响应式 */
@media (min-width: 600px) {
    .lgnewui-home .lgnewui-epilogue__card {
        padding: 4.5rem 3rem 2.5rem 3rem;
        min-height: 420px;
    }

    .lgnewui-home .lgnewui-epilogue__quote-text {
        font-size: 2.325rem;
        max-width: 80%;
    }

    .lgnewui-home .lgnewui-epilogue__actions {
        flex-direction: row;
        justify-content: space-between;
        padding-top: 1.5rem;
    }
}

@media (max-width: 600px) {
    .lgnewui-home .lgnewui-epilogue__holes {
        justify-content: center;
        gap: 10px;
    }

    .lgnewui-home .lgnewui-epilogue__hole:nth-child(n+8) {
        display: none;
    }

    .lgnewui-home .lgnewui-epilogue__title::before,
    .lgnewui-home .lgnewui-epilogue__title::after {
        width: 25px;
    }
}


/* ==========================================================================
   LGNEWUI Home Weather Component Styles
   Namespace: lgnewui-home-weather-
   ========================================================================== */

/* --- 天气卡片主体 --- */
.lgnewui-home .lgnewui-home-weather-card {
    position: relative;
    border-radius: 24px;
    padding: 18px;
    color: #ffffff;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    height: 100%;
    min-height: 180px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: transform 0.3s ease;
    font-family: 'Inter', sans-serif;
}

.lgnewui-home .lgnewui-home-weather-card:hover {
    transform: scale(1.02);
}

/* 主题色修饰器 */
.lgnewui-home .lgnewui-home-weather-card.blue {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.lgnewui-home .lgnewui-home-weather-card.orange {
    background: linear-gradient(135deg, #fb923c 0%, #ea580c 100%);
}

/* --- 高级质感：此刻状态卡片 --- */
.lgnewui-home .lgnewui-widget--presence {
    background: #ffffff;
    background-image:
        radial-gradient(at 0% 0%, rgba(255, 237, 213, 0.8) 0px, transparent 60%),
        radial-gradient(at 100% 100%, rgba(252, 231, 243, 0.8) 0px, transparent 60%);
    box-shadow:
        0 20px 40px -10px rgba(0, 0, 0, 0.05),
        0 10px 20px -5px rgba(0, 0, 0, 0.02),
        inset 0 0 0 1px rgba(255, 255, 255, 0.9);
    color: #1f2937;
    position: relative;
    overflow: hidden;
    font-family: 'Inter', sans-serif;
    font-weight: 300;
}

.lgnewui-home .lgnewui-widget--presence::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0) 100%);
    pointer-events: none;
}

.lgnewui-home .lgnewui-widget--presence .lgnewui-widget__bg-icon {
    right: -1rem;
    bottom: -1rem;
    font-size: 6rem;
    opacity: 0.03;
    color: #000000;
}

/* 保持与其他卡片一致的毛玻璃图标底框 */
.lgnewui-home .lgnewui-widget--presence .lgnewui-icon-box-glass {
    background: rgba(255, 255, 255, 0.7);
    box-shadow:
        0 4px 10px rgba(0, 0, 0, 0.03),
        inset 0 1px 0 rgba(255, 255, 255, 1);
    border: 1px solid rgba(0, 0, 0, 0.04);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.lgnewui-home .lgnewui-widget--presence .lgnewui-icon-md-white {
    color: #ec4899;
}

/* 保持原有的字号和字重，仅改变颜色以适应浅色模式 */
.lgnewui-home .lgnewui-widget--presence .lgnewui-card-title-lg {
    color: #111827;
    font-family: var(--lg-font-serif);
    font-weight: 800;
}

.lgnewui-home .lgnewui-widget--presence .lgnewui-card-subtitle {
    color: #6b7280;
}

.lgnewui-home .lgnewui-presence-card {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
    min-height: 100%;
}

.lgnewui-home .lgnewui-presence-card__header {
    gap: 1rem;
}

/* 副标题纯文本样式（对齐其他卡片） */
.lgnewui-home .lgnewui-presence-badge {
    color: #6b7280;
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    white-space: nowrap;
    font-family: var(--lg-font-serif);
}

.lgnewui-home .lgnewui-presence-people {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    position: relative;
}

.lgnewui-home .lgnewui-presence-people:not(.is-solo)::before {
    content: '';
    position: absolute;
    top: 0.5rem;
    bottom: 0.5rem;
    left: 50%;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(0, 0, 0, 0.06), transparent);
    transform: translateX(-50%);
}

.lgnewui-home .lgnewui-presence-people.is-solo {
    grid-template-columns: minmax(0, 1fr);
}

.lgnewui-home .lgnewui-presence-people[data-avatar-swap="1"]>.lgnewui-presence-person:first-child {
    order: 2;
}

.lgnewui-home .lgnewui-presence-people[data-avatar-swap="1"]>.lgnewui-presence-person:nth-child(2) {
    order: 1;
}

.lgnewui-home .lgnewui-presence-person {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-width: 0;
    padding: 1rem;
    border-radius: 1.25rem;
    background: rgba(255, 255, 255, 0.6);
    border: 1px solid rgba(255, 255, 255, 0.8);
    box-shadow:
        0 8px 20px -5px rgba(0, 0, 0, 0.03),
        inset 0 1px 0 rgba(255, 255, 255, 1);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.lgnewui-home .lgnewui-presence-person:hover {
    transform: translateY(-2px);
    box-shadow:
        0 12px 25px -5px rgba(0, 0, 0, 0.05),
        inset 0 1px 0 rgba(255, 255, 255, 1);
}

.lgnewui-home .lgnewui-presence-avatar {
    width: 3.2rem;
    height: 3.2rem;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid #ffffff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
    flex-shrink: 0;
}

.lgnewui-home .lgnewui-presence-person__body {
    min-width: 0;
}

.lgnewui-home .lgnewui-presence-person__name-row {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    min-width: 0;
}

.lgnewui-home .lgnewui-presence-name {
    color: #1f2937;
    font-size: 1.45rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    font-family: 'Dancing Script', 'Noto Serif SC', cursive;
    transform: translateY(2px);
}

/* 访客名称覆盖：不使用花体，恢复常规大小 */
.lgnewui-home .lgnewui-presence-name--visitor {
    font-family: 'Inter', var(--lg-font-sans), sans-serif;
    font-size: 1.05rem;
    font-weight: 600;
    transform: none;
    letter-spacing: normal;
}

.lgnewui-home .lgnewui-presence-gender {
    width: 1.2rem;
    height: 1.2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.03);
    font-size: 0.75rem;
    flex-shrink: 0;
}

.lgnewui-home .lgnewui-presence-gender.is-male {
    color: #3b82f6;
    background: rgba(59, 130, 246, 0.1);
}

.lgnewui-home .lgnewui-presence-gender.is-female {
    color: #ec4899;
    background: rgba(236, 72, 153, 0.1);
}

.lgnewui-home .lgnewui-presence-state {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    color: #6b7280;
    font-size: 0.8rem;
    font-weight: 300;
    white-space: nowrap;
}

.lgnewui-home .lgnewui-presence-state__dot {
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 50%;
    background: #d1d5db;
}

.lgnewui-home .lgnewui-presence-state.is-online .lgnewui-presence-state__dot {
    background: #10b981;
    box-shadow: 0 0 8px rgba(16, 185, 129, 0.4);
}

.lgnewui-home .lgnewui-presence-state.is-recent .lgnewui-presence-state__dot {
    background: #f59e0b;
    box-shadow: 0 0 8px rgba(245, 158, 11, 0.4);
}

.lgnewui-home .lgnewui-presence-state.is-offline .lgnewui-presence-state__dot {
    background: #d1d5db;
}

.lgnewui-home .lgnewui-presence-meta {
    margin-top: 0.35rem;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: #9ca3af;
    font-size: 0.85rem;
    font-weight: 300;
}

.lgnewui-home .lgnewui-presence-card__footer {
    margin-top: auto;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    padding-top: 0.5rem;
}

.lgnewui-home .lgnewui-presence-note {
    color: #6b7280;
    font-size: 0.86rem;
    line-height: 1.6;
    max-width: 28rem;
    font-weight: 300;
}

/* 按钮重写：镂空胶囊按钮，悬浮和点击时填充 */
.lgnewui-home .lgnewui-presence-button {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.5rem 1.1rem;
    border-radius: 999px;
    background: transparent;
    border: 1px solid rgba(236, 72, 153, 0.4);
    color: #ec4899;
    font-size: 0.85rem;
    font-weight: 400;
    font-family: 'Inter', sans-serif;
    white-space: nowrap;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(236, 72, 153, 0.05);
}

.lgnewui-home .lgnewui-presence-button i {
    font-size: 0.95rem;
    transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.lgnewui-home .lgnewui-presence-button:hover {
    background: rgba(236, 72, 153, 0.06);
    border-color: rgba(236, 72, 153, 0.6);
    color: #be185d;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(236, 72, 153, 0.1);
}

.lgnewui-home .lgnewui-presence-button:hover i {
    transform: translateX(2px) translateY(-2px);
}

.lgnewui-home .lgnewui-presence-button:active {
    transform: scale(0.96);
    background: rgba(236, 72, 153, 0.15);
    border-color: rgba(236, 72, 153, 0.8);
}

/* 移动端响应式优化 */
@media (max-width: 768px) {
    .lgnewui-home .lgnewui-presence-people {
        grid-template-columns: 1fr;
        gap: 0.85rem;
    }

    .lgnewui-home .lgnewui-presence-people::before {
        display: none;
    }

    .lgnewui-home .lgnewui-presence-card__footer {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.8rem;
        padding-top: 0.8rem;
    }

    .lgnewui-home .lgnewui-presence-button {
        align-self: flex-end;
    }
}

/* 背景装饰圆 */
.lgnewui-home .lgnewui-home-weather-bg-decoration {
    position: absolute;
    border-radius: 50%;
    filter: blur(40px);
    opacity: 0.1;
    z-index: 0;
    pointer-events: none;
}

/* 蓝色卡片的装饰 */
.lgnewui-home .lgnewui-home-weather-card.blue .lgnewui-home-weather-bg-decoration {
    top: -40px;
    right: -40px;
    width: 120px;
    height: 120px;
    background-color: #ffffff;
    opacity: 0.15;
}

/* 橙色卡片的装饰 */
.lgnewui-home .lgnewui-home-weather-card.orange .lgnewui-home-weather-bg-decoration {
    bottom: 0;
    left: 0;
    width: 100px;
    height: 100px;
    background-color: #fde047;
    opacity: 0.2;
}

/* --- 第一行：用户胶囊与时间 --- */
.lgnewui-home .lgnewui-home-weather-row-top {
    position: relative;
    z-index: 10;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* 玻璃拟态用户胶囊 */
.lgnewui-home .lgnewui-home-weather-user-pill {
    background: rgba(255, 255, 255, 0.25);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.35);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    border-radius: 9999px;
    padding: 4px 10px 4px 4px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.lgnewui-home .lgnewui-home-weather-avatar {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.8);
    display: block;
    object-fit: cover;
}

.lgnewui-home .lgnewui-home-weather-username {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.025em;
    color: #ffffff;
    font-family: 'Inter', sans-serif;
}

/* 时间标签 */
.lgnewui-home .lgnewui-home-weather-time-tag {
    background: rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    padding: 3px 7px;
    border-radius: 6px;
    font-size: 10px;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.9);
    cursor: default;
    transition: background 0.2s;
    font-family: 'Inter', sans-serif;
}

.lgnewui-home .lgnewui-home-weather-time-tag:hover {
    background: rgba(0, 0, 0, 0.15);
}

/* --- 第二行：主数据 (温度与图标) --- */
.lgnewui-home .lgnewui-home-weather-row-main {
    position: relative;
    z-index: 10;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 8px;
    margin-bottom: 2px;
}

.lgnewui-home .lgnewui-home-weather-text-temp {
    font-size: 56px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.05em;
    margin-left: -2px;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    font-family: 'Inter', sans-serif;
}

.lgnewui-home .lgnewui-home-weather-icon-main {
    font-size: 48px;
    opacity: 0.9;
    filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.07));
    padding-right: 2px;
    transition: all 0.5s ease;
}

/* --- 第三行：地址信息 --- */
.lgnewui-home .lgnewui-home-weather-row-location {
    position: relative;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 5px;
    opacity: 0.95;
    margin-bottom: 12px;
    padding-left: 2px;
}

.lgnewui-home .lgnewui-home-weather-icon-pin {
    font-size: 12px;
}

.lgnewui-home .lgnewui-home-weather-text-city {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.025em;
    font-family: 'Inter', sans-serif;
}

.lgnewui-home .lgnewui-home-weather-dot-divider {
    font-size: 11px;
    opacity: 0.6;
    padding: 0 2px;
}

.lgnewui-home .lgnewui-home-weather-text-status {
    font-size: 13px;
    font-weight: 500;
    font-family: 'Inter', sans-serif;
}

/* --- 第四行：底部指标网格 --- */
.lgnewui-home .lgnewui-home-weather-grid-stats {
    position: relative;
    z-index: 10;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

/* 底部指标胶囊 */
.lgnewui-home .lgnewui-home-weather-stat-pill {
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 10px;
    padding: 6px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    transition: background 0.2s;
}

.lgnewui-home .lgnewui-home-weather-stat-pill:hover {
    background: rgba(255, 255, 255, 0.3);
}

.lgnewui-home .lgnewui-home-weather-icon-stat {
    font-size: 11px;
    opacity: 0.9;
}

.lgnewui-home .lgnewui-home-weather-text-stat {
    font-size: 11px;
    font-weight: 700;
    font-family: 'Inter', sans-serif;
}

/* 响应式 */
@media (max-width: 768px) {
    .lgnewui-home .lgnewui-home-weather-card {
        padding: 16px;
        min-height: 160px;
    }

    .lgnewui-home .lgnewui-home-weather-text-temp {
        font-size: 48px;
    }

    .lgnewui-home .lgnewui-home-weather-icon-main {
        font-size: 40px;
    }

    .lgnewui-home .lgnewui-home-weather-grid-stats {
        gap: 6px;
    }

    .lgnewui-home .lgnewui-presence-card {
        gap: 1rem;
    }

    .lgnewui-home .lgnewui-presence-card__header {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
    }

    .lgnewui-home .lgnewui-presence-people {
        grid-template-columns: 1fr;
        gap: 0.9rem;
    }

    .lgnewui-home .lgnewui-presence-people::before {
        display: none;
    }

    .lgnewui-home .lgnewui-presence-person {
        padding: 0.85rem 0.9rem;
        border-radius: 1rem;
    }

    .lgnewui-home .lgnewui-presence-person__name-row {
        flex-direction: row;
        align-items: center;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .lgnewui-home .lgnewui-presence-name {
        font-size: 0.98rem;
    }

    .lgnewui-home .lgnewui-presence-card__footer {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.7rem;
        padding-top: 0;
    }

    .lgnewui-home .lgnewui-presence-note {
        max-width: none;
        font-size: 0.82rem;
        line-height: 1.55;
    }

    .lgnewui-home .lgnewui-presence-button {
        width: 100%;
        justify-content: center;
    }
}

/* ── 浮动操作按钮 (FAB) ── */

#isAdminIcon {
    display: none !important;
}

#lgnewuiFloatingActions {
    position: fixed;
    right: 1.25rem;
    bottom: 8rem;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.75rem;
}

#lgnewuiFloatingActions>a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    padding: 0;
    margin: 0;
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-radius: 50%;
    box-sizing: border-box;
    font-size: 1.5rem;
    line-height: 1;
    color: #03A9F4;
    background: rgba(255, 255, 255, 0.72);
    backdrop-filter: saturate(180%) blur(14px);
    -webkit-backdrop-filter: saturate(180%) blur(14px);
    box-shadow: 0 2px 8px rgba(28, 31, 35, .03), 0 16px 48px 8px rgba(28, 31, 35, .08);
    cursor: pointer;
    text-decoration: none;
    outline: none;
    transition: background .2s ease, color .2s ease, border-color .2s ease,
        transform .25s ease, box-shadow .25s ease;
}

#lgnewuiFloatingActions>a:hover {
    background: #03A9F4;
    color: #fff;
    border-color: #03A9F4;
    transform: scale(1.15);
    box-shadow: 0 4px 16px rgba(3, 169, 244, .35), 0 8px 32px rgba(3, 169, 244, .18);
}

#lgnewuiFloatingActions>a:active {
    transform: scale(0.95);
    transition-duration: .1s;
}

#lgnewuiFloatingActions>#scrollTopBtn {
    opacity: 0;
    visibility: hidden;
    transform: scale(0.6);
    transition: opacity .3s ease, visibility .3s ease, transform .3s cubic-bezier(.34, 1.56, .64, 1),
        background .2s ease, color .2s ease, border-color .2s ease, box-shadow .25s ease;
}

#lgnewuiFloatingActions>#scrollTopBtn.lgnewui-fab-visible {
    opacity: 1;
    visibility: visible;
    transform: scale(1);
}

#lgnewuiFloatingActions>#scrollTopBtn.lgnewui-fab-visible:hover {
    transform: scale(1.15);
}

#lgnewuiFloatingActions>#scrollTopBtn.lgnewui-fab-visible:active {
    transform: scale(0.95);
}

@media (min-width: 992px) {
    #lgnewuiFloatingActions>a {
        width: 3.5rem;
        height: 3.5rem;
        font-size: 1.75rem;
    }
}

@media (min-width: 1400px) {
    #lgnewuiFloatingActions>a {
        width: 3.75rem;
        height: 3.75rem;
        font-size: 1.875rem;
    }
}