/* ==========================================
   ✚ 水色天堂 / 天使界隈 (Tenshi Kaiwai)
   Mizuiro · 药盒美学 · 地雷系变体
   V2 — 全面重制
   ========================================== */

/* ===== 字体导入 ===== */
@import url('https://fonts.googleapis.com/css2?family=DotGothic16&family=Shippori+Mincho:wght@400;500;600;700&display=swap');

/* ===== 主题变量 ===== */
[data-theme="tenshi"] {
    --t-white: #FFFFFF;
    --t-ice: #F5FAFE;
    --t-frost: #EDF7FE;
    --t-blue-ghost: #E8F4FD;
    --t-blue-pale: #E1F5FE;
    --t-blue-light: #B3E5FC;
    --t-blue: #81D4FA;
    --t-blue-mid: #4FC3F7;
    --t-text: #78909C;
    --t-text-light: #B0BEC5;
    --t-text-pale: #CFD8DC;
    --t-pink: #FCE4EC;
    --t-pink-light: #FFF0F5;

    --t-font-pixel: 'DotGothic16', monospace;
    --t-font-body: 'Shippori Mincho', serif;

    --t-glass: rgba(255, 255, 255, 0.50);
    --t-glass-heavy: rgba(255, 255, 255, 0.62);
    --t-glass-border: rgba(179, 229, 252, 0.4);
    --t-shadow: 0 2px 20px rgba(129, 212, 250, 0.14);
    --t-shadow-soft: 0 1px 10px rgba(129, 212, 250, 0.08);
    --t-glow: 0 0 8px rgba(129, 212, 250, 0.3), 0 0 24px rgba(129, 212, 250, 0.1);
    --t-glow-text: 0 0 6px rgba(129, 212, 250, 0.35), 0 0 18px rgba(129, 212, 250, 0.12);
    --t-lace-inset:
        inset 0 0 0 1.5px rgba(255,255,255,0.7),
        inset 0 0 0 3px rgba(179,229,252,0.18),
        inset 0 0 0 4.5px rgba(255,255,255,0.5),
        inset 0 0 0 6px rgba(179,229,252,0.08);
    --t-pearl: linear-gradient(
        160deg,
        #fafeff 0%, #eef6fd 20%, #ffffff 40%,
        #e8f4fd 60%, #f5faff 80%, #fff 100%
    );
}

/* ===== 全局字体覆盖 ===== */
[data-theme="tenshi"] * {
    font-family: var(--t-font-body) !important;
}
[data-theme="tenshi"] h1,
[data-theme="tenshi"] h2,
[data-theme="tenshi"] h3,
[data-theme="tenshi"] .tenshi-pixel,
[data-theme="tenshi"] .tenshi-date,
[data-theme="tenshi"] .tenshi-clock,
[data-theme="tenshi"] .tenshi-warn-text,
[data-theme="tenshi"] .tenshi-icon-label,
[data-theme="tenshi"] .tenshi-frozen-title,
[data-theme="tenshi"] .tenshi-camera-battery,
[data-theme="tenshi"] .tenshi-camera-timestamp {
    font-family: var(--t-font-pixel) !important;
}

/* ===== FA 图标字体恢复 ===== */
[data-theme="tenshi"] .fa,
[data-theme="tenshi"] .fas,
[data-theme="tenshi"] .far,
[data-theme="tenshi"] .fab,
[data-theme="tenshi"] .fal,
[data-theme="tenshi"] .fad,
[data-theme="tenshi"] .fa-solid,
[data-theme="tenshi"] .fa-regular,
[data-theme="tenshi"] .fa-brands,
[data-theme="tenshi"] i[class*="fa-"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", FontAwesome !important;
    font-size: 16px !important;
    display: inline-block !important;
    color: var(--t-text, #78909C) !important;
}
[data-theme="tenshi"] .fab,
[data-theme="tenshi"] .fa-brands {
    font-family: "Font Awesome 6 Brands", "Font Awesome 5 Brands", FontAwesome !important;
}
[data-theme="tenshi"] .fa,
[data-theme="tenshi"] .fas,
[data-theme="tenshi"] .fa-solid { font-weight: 900 !important; }
[data-theme="tenshi"] .far,
[data-theme="tenshi"] .fa-regular { font-weight: 400 !important; }
[data-theme="tenshi"] .fa::before,
[data-theme="tenshi"] .fas::before,
[data-theme="tenshi"] .far::before,
[data-theme="tenshi"] .fab::before,
[data-theme="tenshi"] i[class*="fa-"]::before {
    font-family: inherit !important;
    font-weight: inherit !important;
}
[data-theme="tenshi"] i[class*="fa-"]::after {
    content: none !important;
    display: none !important;
}

/* ===== 布局切换 ===== */
.tenshi-layout { display: none !important; }
[data-theme="tenshi"] .default-layout { display: none !important; }
[data-theme="tenshi"] .angel-layout { display: none !important; }
[data-theme="tenshi"] .angel-nav-arrows { display: none !important; }
[data-theme="tenshi"] .angel-page-dots { display: none !important; }
[data-theme="tenshi"] .default-page-dots { display: none !important; }

[data-theme="tenshi"] .tenshi-layout {
    display: flex !important;
    flex-direction: column;
    width: 100%;
    height: 100%;
    position: relative;
}

/* ===== 主容器 ===== */
[data-theme="tenshi"] .phone-container {
    background-color: var(--t-white) !important;
}
[data-theme="tenshi"] .home-screen {
    padding: 0 !important;
    gap: 0 !important;
    overflow: hidden !important;
    background: var(--t-ice) !important;
    position: relative;
}
/* 过曝颗粒叠层 */
[data-theme="tenshi"] .home-screen::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse at 30% 20%, rgba(255,255,255,0.35) 0%, transparent 60%),
        radial-gradient(ellipse at 80% 70%, rgba(225,245,254,0.25) 0%, transparent 50%);
    pointer-events: none;
    z-index: 0;
}

/* ===== 状态栏 ===== */
[data-theme="tenshi"] .status-bar {
    color: var(--t-text-light) !important;
    font-weight: 400 !important;
}
[data-theme="tenshi"] .battery-capsule {
    background-color: transparent !important;
    border: 1px dotted var(--t-blue-light) !important;
    color: var(--t-text-light) !important;
}

/* ==========================================
   滑动容器 & 页面
   ========================================== */
[data-theme="tenshi"] .tenshi-slider {
    display: flex;
    width: 200%;
    height: 100%;
    transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    will-change: transform;
    transform: translateX(0%);
}
[data-theme="tenshi"] .tenshi-slider.page-1 {
    transform: translateX(-50%);
}
[data-theme="tenshi"] .tenshi-page {
    width: 50%;
    height: 100%;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    padding: 16px 20px;
    padding-top: calc(50px + env(safe-area-inset-top, 0px) + 8px);
    padding-bottom: calc(105px + env(safe-area-inset-bottom, 0px));
    box-sizing: border-box;
    overflow-y: auto;
    overflow-x: hidden;
    gap: 10px;
    position: relative;
    z-index: 1;
}

/* ===== 页面指示器 ===== */
[data-theme="tenshi"] .tenshi-page-dots {
    position: absolute;
    bottom: calc(90px + env(safe-area-inset-bottom, 0px));
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 8px;
    z-index: 50;
}
[data-theme="tenshi"] .tenshi-dot {
    width: 6px; height: 6px;
    border-radius: 50%;
    background-color: var(--t-blue-light);
    transition: all 0.3s ease;
    cursor: pointer;
    opacity: 0.4;
}
[data-theme="tenshi"] .tenshi-dot.active {
    width: 20px;
    border-radius: 3px;
    background-color: var(--t-blue);
    opacity: 1;
}

/* ===== 翻页箭头 ===== */
[data-theme="tenshi"] .tenshi-nav-arrows { display: none; }
@media (hover: hover) and (pointer: fine) {
    [data-theme="tenshi"] .tenshi-nav-arrows {
        display: block;
        position: absolute;
        top: 0; left: 0; right: 0; bottom: 0;
        pointer-events: none;
        z-index: 60;
    }
    [data-theme="tenshi"] .tenshi-arrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 34px; height: 34px;
        border: 1px dotted var(--t-blue-light);
        background: var(--t-glass);
        backdrop-filter: blur(10px);
        border-radius: 50%;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.2s ease;
        opacity: 0.6;
        pointer-events: auto;
    }
    [data-theme="tenshi"] .tenshi-arrow:hover {
        opacity: 1;
        background: var(--t-white);
        box-shadow: var(--t-glow);
    }
    [data-theme="tenshi"] .tenshi-arrow span {
        font-size: 18px;
        color: var(--t-blue);
        line-height: 1;
    }
    [data-theme="tenshi"] .tenshi-arrow-left { left: 8px; }
    [data-theme="tenshi"] .tenshi-arrow-right { right: 8px; }
    [data-theme="tenshi"] .tenshi-arrow.disabled {
        opacity: 0.15;
        pointer-events: none;
    }
}

/* ==========================================
   L型角标 + ✚ 蕾丝边角装饰
   ========================================== */
[data-theme="tenshi"] .tenshi-corner {
    position: relative;
}
/* 左上角 L + ✚ */
[data-theme="tenshi"] .tenshi-corner::before {
    content: '';
    position: absolute;
    top: -1px; left: -1px;
    width: 16px; height: 16px;
    border-top: 1.5px solid var(--t-blue-light);
    border-left: 1.5px solid var(--t-blue-light);
    pointer-events: none;
    z-index: 5;
    opacity: 0.7;
}
/* 右下角 L + ✚ */
[data-theme="tenshi"] .tenshi-corner::after {
    content: '';
    position: absolute;
    bottom: -1px; right: -1px;
    width: 16px; height: 16px;
    border-bottom: 1.5px solid var(--t-blue-light);
    border-right: 1.5px solid var(--t-blue-light);
    pointer-events: none;
    z-index: 5;
    opacity: 0.7;
}
/* 额外两角用 span 实现 */
[data-theme="tenshi"] .tenshi-corner-tr,
[data-theme="tenshi"] .tenshi-corner-bl {
    position: absolute;
    width: 16px; height: 16px;
    pointer-events: none;
    z-index: 5;
    opacity: 0.7;
}
[data-theme="tenshi"] .tenshi-corner-tr {
    top: -1px; right: -1px;
    border-top: 1.5px solid var(--t-blue-light);
    border-right: 1.5px solid var(--t-blue-light);
}
[data-theme="tenshi"] .tenshi-corner-bl {
    bottom: -1px; left: -1px;
    border-bottom: 1.5px solid var(--t-blue-light);
    border-left: 1.5px solid var(--t-blue-light);
}
/* ✚ 标记 */
[data-theme="tenshi"] .tenshi-cross-mark {
    position: absolute;
    font-size: 8px;
    color: var(--t-blue-light);
    pointer-events: none;
    z-index: 6;
    font-family: var(--t-font-pixel) !important;
    opacity: 0.55;
    text-shadow: var(--t-glow-text);
}
[data-theme="tenshi"] .tenshi-cross-tl { top: -10px; left: -4px; }
[data-theme="tenshi"] .tenshi-cross-br { bottom: -10px; right: -4px; }

/* ==========================================
   浮动动画
   ========================================== */
@keyframes tenshi-float {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-8px) rotate(2deg); }
}
@keyframes tenshi-float-alt {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-6px) rotate(-2deg); }
}
@keyframes tenshi-glow-pulse {
    0%, 100% { opacity: 0.35; text-shadow: 0 0 6px rgba(129,212,250,0.2); }
    50% { opacity: 0.65; text-shadow: 0 0 14px rgba(129,212,250,0.5); }
}
@keyframes tenshi-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
@keyframes tenshi-indicator-blink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}

/* ==========================================
   发光文字工具类
   ========================================== */
[data-theme="tenshi"] .tenshi-glow {
    text-shadow: var(--t-glow-text);
}

/* ==========================================
   顶部日期时间
   ========================================== */
[data-theme="tenshi"] .tenshi-header-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2px 6px;
    opacity: 0.5;
}
[data-theme="tenshi"] .tenshi-date,
[data-theme="tenshi"] .tenshi-clock {
    font-size: 11px;
    color: var(--t-text-light);
    letter-spacing: 2px;
    text-shadow: var(--t-glow-text);
}

/* ==========================================
   PAGE 0 — 相机 CCD + 3D爱心 + Frozen luv
   ========================================== */

/* === 相机大组件 (增强版 CCD) === */
[data-theme="tenshi"] .tenshi-camera-widget {
    background: var(--t-glass-heavy);
    backdrop-filter: blur(24px) saturate(180%);
    -webkit-backdrop-filter: blur(24px) saturate(180%);
    border: 1px dotted var(--t-blue-light);
    border-radius: 22px;
    overflow: hidden;
    box-shadow: var(--t-shadow), var(--t-lace-inset);
    position: relative;
}
[data-theme="tenshi"] .tenshi-camera-body {
    display: flex;
    gap: 10px;
    align-items: stretch;
    padding: 10px;
}
/* 相机左侧面板 (镜头+按键) */
[data-theme="tenshi"] .tenshi-camera-left {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 4px 2px;
    width: 52px;
    flex-shrink: 0;
}
[data-theme="tenshi"] .tenshi-camera-lens {
    width: 38px; height: 38px;
    border-radius: 50%;
    border: 3px solid var(--t-blue-light);
    background: radial-gradient(circle at 35% 35%,
        rgba(255,255,255,0.8) 0%,
        var(--t-blue-ghost) 40%,
        var(--t-blue-pale) 100%);
    position: relative;
    box-shadow: inset 0 0 6px rgba(129,212,250,0.15);
}
[data-theme="tenshi"] .tenshi-camera-lens::after {
    content: '';
    position: absolute;
    top: 5px; left: 5px;
    width: 8px; height: 8px;
    border-radius: 50%;
    background: rgba(255,255,255,0.7);
}
/* 十字导航键 */
[data-theme="tenshi"] .tenshi-camera-dpad {
    width: 30px; height: 30px;
    position: relative;
    opacity: 0.5;
}
[data-theme="tenshi"] .tenshi-camera-dpad::before {
    content: '';
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 100%; height: 8px;
    background: var(--t-blue-light);
    border-radius: 4px;
}
[data-theme="tenshi"] .tenshi-camera-dpad::after {
    content: '';
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 8px; height: 100%;
    background: var(--t-blue-light);
    border-radius: 4px;
}
/* 快门键 */
[data-theme="tenshi"] .tenshi-camera-shutter {
    width: 22px; height: 22px;
    border-radius: 50%;
    border: 2.5px solid var(--t-blue-light);
    background: var(--t-blue-ghost);
    cursor: pointer;
    transition: background 0.15s;
}
[data-theme="tenshi"] .tenshi-camera-shutter:hover {
    background: var(--t-blue-pale);
}
/* 取景框 */
[data-theme="tenshi"] .tenshi-camera-screen {
    flex: 1;
    min-height: 145px;
    background-color: #1a1a2e;
    background-size: cover;
    background-position: center;
    border-radius: 14px;
    border: 1px dotted var(--t-blue-light);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    overflow: hidden;
    transition: opacity 0.2s;
    position: relative;
}
[data-theme="tenshi"] .tenshi-camera-screen:hover { opacity: 0.88; }
/* 取景框内覆盖层 */
[data-theme="tenshi"] .tenshi-camera-overlay {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 2;
}
[data-theme="tenshi"] .tenshi-camera-battery {
    position: absolute;
    top: 6px; left: 8px;
    font-size: 8px;
    color: rgba(255,255,255,0.6);
    letter-spacing: 1px;
}
[data-theme="tenshi"] .tenshi-camera-timestamp {
    position: absolute;
    bottom: 6px; right: 8px;
    font-size: 8px;
    color: rgba(255,255,255,0.45);
    letter-spacing: 1px;
}
[data-theme="tenshi"] .tenshi-camera-rec {
    position: absolute;
    top: 6px; right: 8px;
    font-size: 7px;
    color: rgba(255,100,100,0.7);
    display: flex;
    align-items: center;
    gap: 3px;
}
[data-theme="tenshi"] .tenshi-camera-rec-dot {
    width: 5px; height: 5px;
    border-radius: 50%;
    background: rgba(255,100,100,0.7);
    animation: tenshi-indicator-blink 1.5s ease-in-out infinite;
}
/* 闪光灯指示 */
[data-theme="tenshi"] .tenshi-camera-flash {
    position: absolute;
    top: 10px; right: 14px;
    width: 8px; height: 8px;
    border-radius: 50%;
    background: #a5d6a7;
    border: 1px solid #81c784;
    box-shadow: 0 0 6px rgba(129,199,132,0.4);
    animation: tenshi-indicator-blink 2s ease-in-out infinite;
}
/* 相机底部标签 */
[data-theme="tenshi"] .tenshi-camera-label {
    text-align: center;
    font-size: 9px;
    color: var(--t-text-pale);
    padding: 6px 0 8px;
    letter-spacing: 2px;
    text-shadow: var(--t-glow-text);
}
/* 取景框占位符 */
[data-theme="tenshi"] .tenshi-camera-screen .tenshi-panel-placeholder {
    font-size: 32px;
    color: rgba(179,229,252,0.3);
    text-shadow: 0 0 20px rgba(129,212,250,0.2);
}

/* === 3D 珍珠爱心组件 === */
[data-theme="tenshi"] .tenshi-heart-3d {
    width: 130px;
    height: 140px;
    flex-shrink: 0;
    border-radius: 22px;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    background: var(--t-pearl);
    border: 1px dotted var(--t-blue-light);
    box-shadow:
        var(--t-shadow),
        var(--t-lace-inset),
        0 4px 30px rgba(129,212,250,0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 4px;
    transition: opacity 0.2s;
    background-size: cover;
    background-position: center;
}
[data-theme="tenshi"] .tenshi-heart-3d:hover { opacity: 0.88; }
/* 珍珠高光叠层 */
[data-theme="tenshi"] .tenshi-heart-3d::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse at 30% 25%, rgba(255,255,255,0.7) 0%, transparent 55%),
        radial-gradient(ellipse at 75% 70%, rgba(225,245,254,0.35) 0%, transparent 40%);
    pointer-events: none;
    z-index: 1;
}
[data-theme="tenshi"] .tenshi-heart-shape {
    font-size: 52px;
    position: relative;
    z-index: 2;
    color: var(--t-blue-light);
    opacity: 0.55;
    text-shadow:
        0 0 20px rgba(129,212,250,0.35),
        0 2px 4px rgba(129,212,250,0.1);
    filter: drop-shadow(0 0 10px rgba(255,255,255,0.7));
}
[data-theme="tenshi"] .tenshi-heart-sub {
    font-size: 8px;
    color: var(--t-text-pale);
    letter-spacing: 2px;
    position: relative;
    z-index: 2;
    text-shadow: var(--t-glow-text);
}
/* 上传图片后隐藏占位 */
[data-theme="tenshi"] .tenshi-heart-3d[style*="background-image"] .tenshi-heart-shape,
[data-theme="tenshi"] .tenshi-heart-3d[style*="background-image"] .tenshi-heart-sub,
[data-theme="tenshi"] .tenshi-heart-3d[style*="background-image"]::before {
    display: none;
}

/* === Frozen luv 文字信息流组件 === */
[data-theme="tenshi"] .tenshi-frozen-widget {
    background: var(--t-glass);
    backdrop-filter: blur(18px) saturate(180%);
    -webkit-backdrop-filter: blur(18px) saturate(180%);
    border: 1px dotted var(--t-blue-light);
    border-radius: 18px;
    padding: 10px 14px;
    box-shadow: var(--t-shadow-soft), var(--t-lace-inset);
    position: relative;
}
[data-theme="tenshi"] .tenshi-frozen-title {
    text-align: center;
    font-size: 10px;
    color: var(--t-text-light);
    letter-spacing: 3px;
    margin-bottom: 8px;
    text-shadow: var(--t-glow-text);
}
[data-theme="tenshi"] .tenshi-capsule-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
[data-theme="tenshi"] .tenshi-capsule-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 14px;
    background: rgba(255,255,255,0.55);
    border: 1px dotted var(--t-blue-light);
    border-radius: 28px;
    cursor: pointer;
    transition: all 0.15s;
}
[data-theme="tenshi"] .tenshi-capsule-item:hover {
    background: rgba(255,255,255,0.75);
    box-shadow: var(--t-glow);
}
[data-theme="tenshi"] .tenshi-capsule-avatar {
    width: 26px; height: 26px;
    border-radius: 50%;
    background: var(--t-blue-ghost);
    border: 1px dotted var(--t-blue-light);
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    overflow: hidden;
}
[data-theme="tenshi"] .tenshi-capsule-text {
    font-size: 10px;
    color: var(--t-text-light);
    flex: 1;
    letter-spacing: 1px;
    text-shadow: var(--t-glow-text);
}
[data-theme="tenshi"] .tenshi-capsule-end {
    width: 24px; height: 24px;
    border-radius: 50%;
    background: var(--t-blue-ghost);
    flex-shrink: 0;
    overflow: hidden;
    opacity: 0.6;
}

/* ==========================================
   PAGE 1 — 音楽 / Mood
   ========================================== */

/* === 音乐/情绪大组件 === */
[data-theme="tenshi"] .tenshi-music-widget {
    background: var(--t-glass-heavy);
    backdrop-filter: blur(24px) saturate(180%);
    -webkit-backdrop-filter: blur(24px) saturate(180%);
    border: 1px dotted var(--t-blue-light);
    border-radius: 22px;
    overflow: hidden;
    box-shadow: var(--t-shadow), var(--t-lace-inset);
    position: relative;
}
[data-theme="tenshi"] .tenshi-music-collage {
    display: flex;
    height: 140px;
    gap: 3px;
    padding: 8px;
}
[data-theme="tenshi"] .tenshi-music-panel {
    background-color: var(--t-blue-ghost);
    background-size: cover;
    background-position: center;
    border-radius: 14px;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: opacity 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
}
[data-theme="tenshi"] .tenshi-music-panel:hover { opacity: 0.85; }
[data-theme="tenshi"] .tenshi-panel-left { flex: 1.2; }
[data-theme="tenshi"] .tenshi-panel-right-col {
    flex: 0.8;
    display: flex;
    flex-direction: column;
    gap: 3px;
}
[data-theme="tenshi"] .tenshi-panel-top { flex: 1; }
[data-theme="tenshi"] .tenshi-panel-bottom { flex: 1; }
[data-theme="tenshi"] .tenshi-panel-placeholder {
    font-size: 28px;
    color: var(--t-blue-light);
    opacity: 0.4;
    text-shadow: 0 0 14px rgba(129, 212, 250, 0.25);
}
/* 音乐进度条 */
[data-theme="tenshi"] .tenshi-music-bar {
    padding: 8px 14px 10px;
}
[data-theme="tenshi"] .tenshi-progress-track {
    width: 100%;
    height: 2px;
    background: var(--t-blue-pale);
    border-radius: 2px;
    position: relative;
    margin-bottom: 8px;
}
[data-theme="tenshi"] .tenshi-progress-fill {
    width: 35%;
    height: 100%;
    background: linear-gradient(90deg, var(--t-blue-light), var(--t-blue));
    border-radius: 2px;
}
[data-theme="tenshi"] .tenshi-progress-heart {
    position: absolute;
    top: 50%;
    left: 35%;
    transform: translate(-50%, -50%);
    font-size: 11px;
    color: var(--t-text);
    line-height: 1;
    filter: drop-shadow(0 0 3px rgba(129,212,250,0.4));
}
[data-theme="tenshi"] .tenshi-warn-text {
    font-size: 9px;
    color: var(--t-text-light);
    letter-spacing: 1px;
    text-align: center;
    opacity: 0.6;
    text-shadow: var(--t-glow-text);
}

/* === 黑胶唱片组件 === */
[data-theme="tenshi"] .tenshi-vinyl-widget {
    width: 130px;
    height: 130px;
    flex-shrink: 0;
    background: var(--t-glass-heavy);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    border: 1px dotted var(--t-blue-light);
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    cursor: pointer;
    position: relative;
    box-shadow: var(--t-shadow), var(--t-lace-inset);
}
[data-theme="tenshi"] .tenshi-vinyl-inner {
    width: 95px; height: 95px;
    border-radius: 50%;
    background: conic-gradient(
        from 0deg,
        #111 0deg, #222 30deg, #111 60deg, #1a1a1a 90deg,
        #222 120deg, #111 150deg, #1a1a1a 180deg,
        #222 210deg, #111 240deg, #1a1a1a 270deg,
        #222 300deg, #111 330deg, #222 360deg
    );
    position: relative;
    box-shadow: 0 2px 14px rgba(0,0,0,0.18);
    animation: tenshi-spin 8s linear infinite;
    animation-play-state: paused;
}
[data-theme="tenshi"] .tenshi-vinyl-widget:hover .tenshi-vinyl-inner {
    animation-play-state: running;
}
[data-theme="tenshi"] .tenshi-vinyl-center {
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 24px; height: 24px;
    border-radius: 50%;
    background:
        radial-gradient(circle, var(--t-white) 30%, var(--t-blue-pale) 100%);
    border: 2px solid var(--t-blue-light);
    box-shadow: 0 0 8px rgba(129,212,250,0.2);
}
[data-theme="tenshi"] .tenshi-vinyl-label {
    position: absolute;
    bottom: 5px; right: 7px;
    font-size: 8px;
    color: var(--t-text-pale);
    text-shadow: var(--t-glow-text);
}
/* 四角螺丝点 */
[data-theme="tenshi"] .tenshi-vinyl-screw {
    position: absolute;
    width: 5px; height: 5px;
    border-radius: 50%;
    background: var(--t-blue-light);
    opacity: 0.4;
}
[data-theme="tenshi"] .tenshi-vinyl-screw.vs-tl { top: 8px; left: 8px; }
[data-theme="tenshi"] .tenshi-vinyl-screw.vs-tr { top: 8px; right: 8px; }
[data-theme="tenshi"] .tenshi-vinyl-screw.vs-bl { bottom: 8px; left: 8px; }
[data-theme="tenshi"] .tenshi-vinyl-screw.vs-br { bottom: 8px; right: 8px; }

/* === 纵向长方形组件 === */
[data-theme="tenshi"] .tenshi-vertical-widget {
    flex: 1;
    min-height: 130px;
    background: var(--t-glass);
    backdrop-filter: blur(18px) saturate(180%);
    -webkit-backdrop-filter: blur(18px) saturate(180%);
    border: 1px dotted var(--t-blue-light);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: var(--t-shadow-soft), var(--t-lace-inset);
}
[data-theme="tenshi"] .tenshi-vertical-img {
    width: 100%; height: 100%;
    background-color: var(--t-blue-ghost);
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}
[data-theme="tenshi"] .tenshi-vertical-img[style*="background-image"] .tenshi-vt-placeholder {
    display: none;
}
[data-theme="tenshi"] .tenshi-vt-placeholder {
    font-size: 36px;
    color: var(--t-blue-light);
    opacity: 0.35;
    text-shadow: 0 0 14px rgba(129,212,250,0.25);
}

/* ==========================================
   共用组件
   ========================================== */

/* 中间行布局 */
[data-theme="tenshi"] .tenshi-mid-row {
    display: flex;
    gap: 14px;
    align-items: stretch;
}

/* 底部行 */
[data-theme="tenshi"] .tenshi-bottom-row {
    margin-top: auto;
    padding-top: 8px;
}

/* 2x2 图标网格 */
[data-theme="tenshi"] .tenshi-icon-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    flex: 1;
}
/* 1x4 图标行 */
[data-theme="tenshi"] .tenshi-icon-row {
    display: flex;
    justify-content: space-around;
    gap: 8px;
}

/* 单个图标 */
[data-theme="tenshi"] .tenshi-app-icon {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    transition: transform 0.15s ease;
}
[data-theme="tenshi"] .tenshi-app-icon:active {
    transform: scale(0.9);
}
[data-theme="tenshi"] .tenshi-icon-box {
    width: 50px; height: 50px;
    background: var(--t-glass-heavy);
    backdrop-filter: blur(14px) saturate(160%);
    -webkit-backdrop-filter: blur(14px) saturate(160%);
    border: 1px dotted var(--t-blue-light);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--t-shadow-soft),
        inset 0 0 0 1.5px rgba(255,255,255,0.5),
        inset 0 0 0 3px rgba(179,229,252,0.1);
    transition: all 0.2s ease;
    overflow: hidden;
    background-size: cover;
    background-position: center;
}
[data-theme="tenshi"] .tenshi-app-icon:hover .tenshi-icon-box {
    box-shadow: var(--t-glow),
        inset 0 0 0 1.5px rgba(255,255,255,0.6),
        inset 0 0 0 3px rgba(179,229,252,0.15);
    border-color: var(--t-blue);
}
[data-theme="tenshi"] .tenshi-icon-box i {
    font-size: 19px !important;
    color: var(--t-blue) !important;
    filter: drop-shadow(0 0 4px rgba(129,212,250,0.25));
}
[data-theme="tenshi"] .tenshi-icon-box[style*="background-image"] i {
    display: none !important;
}
[data-theme="tenshi"] .tenshi-icon-label {
    font-size: 9px;
    color: var(--t-text-light);
    letter-spacing: 0.5px;
    text-align: center;
    outline: none;
    border: 1px dotted transparent;
    padding: 1px 4px;
    border-radius: 6px;
    transition: border-color 0.2s;
    text-shadow: var(--t-glow-text);
    white-space: nowrap;
}
[data-theme="tenshi"] .tenshi-icon-label:focus {
    border-color: var(--t-blue-light);
    background: var(--t-white);
}

/* 搜索胶囊 */
[data-theme="tenshi"] .tenshi-search-capsule {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 18px;
    background: var(--t-glass);
    backdrop-filter: blur(14px) saturate(160%);
    -webkit-backdrop-filter: blur(14px) saturate(160%);
    border: 1px dotted var(--t-blue-light);
    border-radius: 30px;
    box-shadow: var(--t-shadow-soft),
        inset 0 0 0 1.5px rgba(255,255,255,0.4);
}
[data-theme="tenshi"] .tenshi-search-icon {
    font-size: 12px;
    color: var(--t-blue);
    text-shadow: var(--t-glow-text);
}
[data-theme="tenshi"] .tenshi-search-text {
    font-size: 11px;
    color: var(--t-text-pale);
    letter-spacing: 1.5px;
    text-shadow: var(--t-glow-text);
}

/* ==========================================
   散落装饰 — 增强浮动 + 发光
   ========================================== */
[data-theme="tenshi"] .tenshi-deco {
    position: absolute;
    color: var(--t-blue-light);
    pointer-events: none;
    z-index: 2;
    text-shadow: 0 0 12px rgba(129, 212, 250, 0.35);
}
[data-theme="tenshi"] .td-1 {
    top: 8%; left: 10%;
    font-size: 14px;
    opacity: 0.45;
    animation: tenshi-float 5s ease-in-out infinite;
}
[data-theme="tenshi"] .td-2 {
    top: 20%; right: 6%;
    font-size: 15px;
    opacity: 0.4;
    animation: tenshi-float-alt 6s ease-in-out infinite 0.5s;
}
[data-theme="tenshi"] .td-3 {
    bottom: 35%; left: 5%;
    font-size: 13px;
    opacity: 0.45;
    animation: tenshi-glow-pulse 4s ease-in-out infinite;
}
[data-theme="tenshi"] .td-4 {
    top: 40%; right: 3%;
    font-size: 15px;
    opacity: 0.4;
    animation: tenshi-float-alt 5.5s ease-in-out infinite 0.8s;
}
[data-theme="tenshi"] .td-5 {
    bottom: 20%; left: 20%;
    font-size: 16px;
    color: var(--t-pink);
    opacity: 0.45;
    animation: tenshi-float 6.5s ease-in-out infinite 0.3s;
    text-shadow: 0 0 14px rgba(252, 228, 236, 0.45);
}
[data-theme="tenshi"] .td-6 {
    top: 60%; left: 8%;
    font-size: 11px;
    opacity: 0.35;
    animation: tenshi-glow-pulse 5s ease-in-out infinite 1s;
}
[data-theme="tenshi"] .td-7 {
    bottom: 45%; right: 10%;
    font-size: 12px;
    opacity: 0.38;
    animation: tenshi-float 7s ease-in-out infinite 1.5s;
}

/* ==========================================
   上传提示
   ========================================== */
[data-theme="tenshi"] .tenshi-uploadable {
    cursor: pointer !important;
    position: relative !important;
    transition: opacity 0.2s ease !important;
}
[data-theme="tenshi"] .tenshi-uploadable:hover { opacity: 0.85 !important; }
[data-theme="tenshi"] .tenshi-uploadable::after {
    content: '✚' !important;
    position: absolute !important;
    bottom: 5px !important;
    right: 5px !important;
    width: 20px !important;
    height: 20px !important;
    background: rgba(255,255,255,0.92) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 9px !important;
    color: var(--t-blue) !important;
    opacity: 0 !important;
    transition: opacity 0.2s !important;
    pointer-events: none !important;
    z-index: 10 !important;
    box-shadow: 0 0 8px rgba(129,212,250,0.2) !important;
}
[data-theme="tenshi"] .tenshi-uploadable:hover::after { opacity: 1 !important; }

/* ==========================================
   DOCK 栏 — 无滤镜
   ========================================== */
[data-theme="tenshi"] .dock-bar {
    background: rgba(255, 255, 255, 0.55) !important;
    backdrop-filter: blur(30px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(30px) saturate(180%) !important;
    border: none !important;
    border-top: 0.5px dotted rgba(179, 229, 252, 0.35) !important;
    border-radius: 28px !important;
    box-shadow:
        0 -1px 8px rgba(129,212,250,0.04),
        0 4px 24px rgba(129,212,250,0.08),
        inset 0 0.5px 0 rgba(255,255,255,0.7) !important;
    height: 68px !important;
    padding: 0 16px !important;
}
[data-theme="tenshi"] .dock-bar .app-icon-inner {
    background: rgba(241,248,255,0.45) !important;
    border: 1px dotted rgba(179,229,252,0.35) !important;
    box-shadow: 0 2px 6px rgba(129,212,250,0.06) !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 14px !important;
    overflow: hidden !important;
}
[data-theme="tenshi"] .dock-bar .app-icon-inner img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 14px !important;
    filter: saturate(0.85) brightness(1.05) !important;
    transition: filter 0.25s ease !important;
}
[data-theme="tenshi"] .dock-bar .app-icon:hover .app-icon-inner img {
    filter: saturate(1) brightness(1) !important;
}
[data-theme="tenshi"] .dock-bar .app-icon span { display: none !important; }
[data-theme="tenshi"] .dock-bar .app-icon-inner::before,
[data-theme="tenshi"] .dock-bar .app-icon-inner::after {
    content: none !important;
    display: none !important;
}

/* Dock class 方案 */
.dock-bar.tenshi-dock .app-icon-inner {
    background: rgba(241,248,255,0.45) !important;
    border: 1px dotted rgba(179,229,252,0.35) !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 14px !important;
    overflow: hidden !important;
}
.dock-bar.tenshi-dock .app-icon-inner img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    filter: saturate(0.85) brightness(1.05) !important;
}
.dock-bar.tenshi-dock .app-icon span { display: none !important; }
.dock-bar.tenshi-dock .app-icon-inner::before,
.dock-bar.tenshi-dock .app-icon-inner::after {
    content: none !important;
    display: none !important;
}

/* ==========================================
   全部 APP 内页面适配（水色化）
   ========================================== */

/* --- 通用头部 --- */
[data-theme="tenshi"] .qq-header,
[data-theme="tenshi"] .t-header,
[data-theme="tenshi"] .ig-header,
[data-theme="tenshi"] .ff-header,
[data-theme="tenshi"] .forum-header,
[data-theme="tenshi"] .shop-header,
[data-theme="tenshi"] .sub-header,
[data-theme="tenshi"] .wb-header,
[data-theme="tenshi"] .cp-nav {
    background: rgba(255,255,255,0.92) !important;
    backdrop-filter: blur(20px) !important;
    border-bottom: 1px dotted var(--t-blue-light) !important;
    box-shadow: none !important;
}
[data-theme="tenshi"] .qq-title,
[data-theme="tenshi"] .t-logo,
[data-theme="tenshi"] .ig-logo,
[data-theme="tenshi"] .ff-title,
[data-theme="tenshi"] .forum-title,
[data-theme="tenshi"] .sub-title,
[data-theme="tenshi"] .wb-title,
[data-theme="tenshi"] .cp-nav-title {
    color: var(--t-text) !important;
    font-family: var(--t-font-pixel) !important;
}

/* --- 通用底部导航 --- */
[data-theme="tenshi"] .qq-tab-bar,
[data-theme="tenshi"] .t-nav-bar,
[data-theme="tenshi"] .ig-nav-bar,
[data-theme="tenshi"] .ff-nav,
[data-theme="tenshi"] .forum-nav,
[data-theme="tenshi"] .shop-nav {
    background: rgba(255,255,255,0.92) !important;
    backdrop-filter: blur(20px) !important;
    border-top: 1px dotted var(--t-blue-light) !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}
[data-theme="tenshi"] .qq-tab-item,
[data-theme="tenshi"] .t-nav-item,
[data-theme="tenshi"] .ig-nav-item,
[data-theme="tenshi"] .ff-nav-item,
[data-theme="tenshi"] .forum-nav-item,
[data-theme="tenshi"] .shop-nav-item {
    color: var(--t-text-pale) !important;
}
[data-theme="tenshi"] .qq-tab-item.active,
[data-theme="tenshi"] .t-nav-item.active,
[data-theme="tenshi"] .ig-nav-item.active,
[data-theme="tenshi"] .ff-nav-item.active,
[data-theme="tenshi"] .forum-nav-item.active,
[data-theme="tenshi"] .shop-nav-item.active {
    color: var(--t-blue) !important;
}
[data-theme="tenshi"] .qq-tab-item i,
[data-theme="tenshi"] .t-nav-item i,
[data-theme="tenshi"] .ig-nav-item i,
[data-theme="tenshi"] .ff-nav-item i,
[data-theme="tenshi"] .forum-nav-item i,
[data-theme="tenshi"] .shop-nav-item i {
    font-size: 20px !important;
    color: inherit !important;
}
[data-theme="tenshi"] .qq-tab-item.active i,
[data-theme="tenshi"] .t-nav-item.active i,
[data-theme="tenshi"] .ig-nav-item.active i,
[data-theme="tenshi"] .ff-nav-item.active i,
[data-theme="tenshi"] .forum-nav-item.active i,
[data-theme="tenshi"] .shop-nav-item.active i {
    color: var(--t-blue) !important;
}

/* --- 通用内容区 --- */
[data-theme="tenshi"] .qq-content,
[data-theme="tenshi"] .t-content,
[data-theme="tenshi"] .ig-content,
[data-theme="tenshi"] .ff-content,
[data-theme="tenshi"] .forum-content,
[data-theme="tenshi"] .shop-content,
[data-theme="tenshi"] .wb-content,
[data-theme="tenshi"] .sub-content {
    background: var(--t-ice) !important;
}

/* --- 通用卡片/列表项 --- */
[data-theme="tenshi"] .chat-item,
[data-theme="tenshi"] .contact-item,
[data-theme="tenshi"] .tweet-item,
[data-theme="tenshi"] .ig-post,
[data-theme="tenshi"] .ff-card,
[data-theme="tenshi"] .forum-post,
[data-theme="tenshi"] .shop-item,
[data-theme="tenshi"] .wb-book-item,
[data-theme="tenshi"] .moments-item {
    background: var(--t-white) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 16px !important;
    margin: 8px 12px !important;
    box-shadow: var(--t-shadow-soft) !important;
}

/* --- 头像 --- */
[data-theme="tenshi"] .chat-avatar,
[data-theme="tenshi"] .contact-avatar,
[data-theme="tenshi"] .msg-avatar,
[data-theme="tenshi"] .tweet-avatar,
[data-theme="tenshi"] .ig-avatar-small,
[data-theme="tenshi"] .ig-profile-avatar,
[data-theme="tenshi"] .ff-card-avatar,
[data-theme="tenshi"] .t-avatar-small,
[data-theme="tenshi"] .t-drawer-avatar,
[data-theme="tenshi"] .me-avatar-large,
[data-theme="tenshi"] .moments-avatar,
[data-theme="tenshi"] .qq-avatar-small {
    border: 1.5px dotted var(--t-blue-light) !important;
    border-radius: 50% !important;
}

/* --- 文字颜色 --- */
[data-theme="tenshi"] .chat-name,
[data-theme="tenshi"] .contact-name,
[data-theme="tenshi"] .tweet-name,
[data-theme="tenshi"] .ig-username,
[data-theme="tenshi"] .ff-card-title,
[data-theme="tenshi"] .forum-post-title,
[data-theme="tenshi"] .moment-name,
[data-theme="tenshi"] .ig-profile-name,
[data-theme="tenshi"] .t-drawer-name,
[data-theme="tenshi"] .me-info h2,
[data-theme="tenshi"] .wb-book-name {
    color: var(--t-text) !important;
}
[data-theme="tenshi"] .chat-msg,
[data-theme="tenshi"] .chat-time,
[data-theme="tenshi"] .tweet-handle,
[data-theme="tenshi"] .tweet-time,
[data-theme="tenshi"] .ig-time,
[data-theme="tenshi"] .ff-card-preview,
[data-theme="tenshi"] .forum-post-meta,
[data-theme="tenshi"] .moment-time,
[data-theme="tenshi"] .me-info p,
[data-theme="tenshi"] .wb-book-count,
[data-theme="tenshi"] .t-drawer-handle,
[data-theme="tenshi"] .ig-stat-label {
    color: var(--t-text-light) !important;
}
[data-theme="tenshi"] .tweet-text,
[data-theme="tenshi"] .ig-caption,
[data-theme="tenshi"] .moment-text,
[data-theme="tenshi"] .ig-likes,
[data-theme="tenshi"] .ig-stat-num {
    color: var(--t-text) !important;
}

/* --- 聊天气泡 --- */
[data-theme="tenshi"] .message-row:not(.self) .msg-bubble {
    background: var(--t-white) !important;
    color: var(--t-text) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 18px 18px 18px 4px !important;
}
[data-theme="tenshi"] .message-row.self .msg-bubble {
    background: linear-gradient(135deg, var(--t-blue-pale), var(--t-blue-light)) !important;
    color: var(--t-text) !important;
    border: none !important;
    border-radius: 18px 18px 4px 18px !important;
}

/* --- 聊天输入区 --- */
[data-theme="tenshi"] .chat-input-area {
    background: var(--t-white) !important;
    border-top: 1px dotted var(--t-blue-light) !important;
}
[data-theme="tenshi"] .chat-input-area input {
    background: var(--t-ice) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 20px !important;
    color: var(--t-text) !important;
    flex: 1 !important;
    min-width: 0 !important;
}
[data-theme="tenshi"] .chat-circle-btn.send,
[data-theme="tenshi"] .send-btn {
    background: var(--t-blue) !important;
    color: var(--t-white) !important;
    border: none !important;
}

/* --- 按钮 --- */
[data-theme="tenshi"] .action-btn {
    background: var(--t-blue) !important;
    color: var(--t-white) !important;
    border: none !important;
    border-radius: 20px !important;
}
[data-theme="tenshi"] .action-btn.secondary {
    background: var(--t-white) !important;
    color: var(--t-text) !important;
    border: 1px dotted var(--t-blue-light) !important;
}

/* --- 输入框 --- */
[data-theme="tenshi"] input,
[data-theme="tenshi"] textarea,
[data-theme="tenshi"] select {
    background: var(--t-white) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 12px !important;
    color: var(--t-text) !important;
}
[data-theme="tenshi"] input:focus,
[data-theme="tenshi"] textarea:focus {
    border-color: var(--t-blue) !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(129,212,250,0.15) !important;
}
[data-theme="tenshi"] input::placeholder,
[data-theme="tenshi"] textarea::placeholder {
    color: var(--t-text-pale) !important;
}

/* --- 弹窗 --- */
[data-theme="tenshi"] .modal {
    background: rgba(129,212,250,0.15) !important;
    backdrop-filter: blur(8px) !important;
}
[data-theme="tenshi"] .modal-content,
[data-theme="tenshi"] .custom-dialog {
    background: var(--t-white) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 22px !important;
    box-shadow: 0 20px 60px rgba(129,212,250,0.15) !important;
}
[data-theme="tenshi"] .modal-header h2,
[data-theme="tenshi"] .custom-dialog h3 {
    color: var(--t-text) !important;
    font-family: var(--t-font-pixel) !important;
}
[data-theme="tenshi"] .sub-page {
    background: var(--t-white) !important;
}

/* --- 浮动按钮 --- */
[data-theme="tenshi"] .t-fab,
[data-theme="tenshi"] .wb-fab {
    background: var(--t-blue) !important;
    border-radius: 16px !important;
    box-shadow: 0 4px 16px rgba(129,212,250,0.3) !important;
}
[data-theme="tenshi"] .t-fab i,
[data-theme="tenshi"] .wb-fab i {
    color: var(--t-white) !important;
}

/* --- 开关 --- */
[data-theme="tenshi"] .slider {
    background: var(--t-blue-pale) !important;
}
[data-theme="tenshi"] input:checked + .slider {
    background: var(--t-blue) !important;
}

/* --- 搜索 --- */
[data-theme="tenshi"] .qq-search-bar,
[data-theme="tenshi"] .t-search-input,
[data-theme="tenshi"] .ff-search-box,
[data-theme="tenshi"] .forum-search-bar,
[data-theme="tenshi"] .shop-search-bar {
    background: var(--t-white) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 20px !important;
}

/* --- 标签/Tag --- */
[data-theme="tenshi"] .ff-tag,
[data-theme="tenshi"] .ff-sub-tab,
[data-theme="tenshi"] .shop-tab {
    background: var(--t-ice) !important;
    color: var(--t-text) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 14px !important;
}
[data-theme="tenshi"] .ff-sub-tab.active,
[data-theme="tenshi"] .shop-tab.active {
    background: var(--t-blue) !important;
    color: var(--t-white) !important;
    border-color: var(--t-blue) !important;
}

/* --- 朋友圈 --- */
[data-theme="tenshi"] .moments-bg {
    background: linear-gradient(135deg, var(--t-blue-pale) 0%, var(--t-frost) 100%) !important;
}
[data-theme="tenshi"] #chatWindow { background: var(--t-ice) !important; }
[data-theme="tenshi"] .chat-messages { background: var(--t-ice) !important; }

/* --- Twitter 补充 --- */
[data-theme="tenshi"] .t-drawer {
    background: var(--t-white) !important;
    border-right: 1px dotted var(--t-blue-light) !important;
}
[data-theme="tenshi"] .tweet-media {
    border-radius: 14px !important;
    border: 1px dotted var(--t-blue-light) !important;
}

/* --- Instagram 补充 --- */
[data-theme="tenshi"] .ig-edit-profile {
    border: 1px dotted var(--t-blue-light) !important;
    color: var(--t-text) !important;
    border-radius: 10px !important;
    background: var(--t-white) !important;
}

/* --- 情侣空间 --- */
[data-theme="tenshi"] #coupleApp,
[data-theme="tenshi"] .cp-page {
    background: var(--t-ice) !important;
}
[data-theme="tenshi"] .cp-home-header {
    background: linear-gradient(135deg, var(--t-blue-pale) 0%, var(--t-frost) 100%) !important;
    border-radius: 0 0 32px 32px !important;
}
[data-theme="tenshi"] .cp-menu-card,
[data-theme="tenshi"] .cp-card,
[data-theme="tenshi"] .cp-note-card {
    background: var(--t-white) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 18px !important;
}
[data-theme="tenshi"] .cp-heart-anim { color: var(--t-blue) !important; }

/* --- 世界书 --- */
[data-theme="tenshi"] #worldbookApp { background: var(--t-ice) !important; }
[data-theme="tenshi"] .wb-tab.active {
    color: var(--t-blue) !important;
    border-bottom-color: var(--t-blue) !important;
}
[data-theme="tenshi"] .wb-book-icon {
    background: var(--t-blue) !important;
    border-radius: 10px !important;
}

/* --- 通知 --- */
[data-theme="tenshi"] .in-app-notification {
    background: rgba(255,255,255,0.95) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 18px !important;
    color: var(--t-text) !important;
}

/* --- 钱包 --- */
[data-theme="tenshi"] .wallet-card {
    background: linear-gradient(135deg, var(--t-blue) 0%, var(--t-blue-mid) 100%) !important;
    color: var(--t-white) !important;
    border-radius: 20px !important;
}

/* --- 锁屏 --- */
[data-theme="tenshi"] .pc-lock-screen {
    background: linear-gradient(180deg, var(--t-ice) 0%, var(--t-blue-pale) 50%, var(--t-frost) 100%) !important;
}
[data-theme="tenshi"] .pc-lock-time {
    color: var(--t-text) !important;
    font-family: var(--t-font-pixel) !important;
}
[data-theme="tenshi"] .pc-lock-date { color: var(--t-text-light) !important; }
[data-theme="tenshi"] .pc-lock-avatar { border: 2px dotted var(--t-blue-light) !important; }
[data-theme="tenshi"] .pc-password-input {
    background: rgba(255,255,255,0.7) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 20px !important;
    color: var(--t-text) !important;
    flex: 1 !important;
    min-width: 0 !important;
}
[data-theme="tenshi"] .pc-unlock-btn {
    background: rgba(255,255,255,0.7) !important;
    border: 1px dotted var(--t-blue-light) !important;
    color: var(--t-blue) !important;
}

/* --- CW App --- */
[data-theme="tenshi"] .cw-app-container {
    background: var(--t-white) !important;
    color: var(--t-text) !important;
}
[data-theme="tenshi"] .cw-top-bar {
    background: rgba(255,255,255,0.95) !important;
    border-bottom: 1px dotted var(--t-blue-light) !important;
}
[data-theme="tenshi"] .cw-logo { color: var(--t-text) !important; text-shadow: none !important; }
[data-theme="tenshi"] .cw-nav-bar {
    background: rgba(255,255,255,0.95) !important;
    border-top: 1px dotted var(--t-blue-light) !important;
}
[data-theme="tenshi"] .cw-nav-item { color: var(--t-text-pale) !important; }
[data-theme="tenshi"] .cw-nav-item.active { color: var(--t-blue) !important; text-shadow: none !important; }
[data-theme="tenshi"] .cw-card {
    background: var(--t-white) !important;
    border: 1px dotted var(--t-blue-light) !important;
}
[data-theme="tenshi"] .other .cw-msg-bubble {
    background: var(--t-white) !important;
    border: 1px dotted var(--t-blue-light) !important;
    color: var(--t-text) !important;
}
[data-theme="tenshi"] .self .cw-msg-bubble {
    background: var(--t-blue-pale) !important;
    color: var(--t-text) !important;
}

/* --- 游戏大厅 --- */
[data-theme="tenshi"] #gameLobbyApp,
[data-theme="tenshi"] #gameLobbyApp > div[style*="background"] {
    background: var(--t-ice) !important;
    color: var(--t-text) !important;
}
[data-theme="tenshi"] #gameLobbyApp * { text-shadow: none !important; }
[data-theme="tenshi"] .gl-title {
    color: var(--t-text) !important;
    font-family: var(--t-font-pixel) !important;
}
[data-theme="tenshi"] .gl-capsule {
    background: var(--t-white) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 18px !important;
}

/* --- 悬浮球/菜单 --- */
[data-theme="tenshi"] #fb-menu {
    background: rgba(255,255,255,0.95) !important;
    border: 1px dotted var(--t-blue-light) !important;
    border-radius: 16px !important;
    box-shadow: 0 4px 20px rgba(129,212,250,0.12) !important;
    backdrop-filter: blur(15px) !important;
}
[data-theme="tenshi"] #fb-menu .fb-btn {
    border: 1px dotted var(--t-blue-light) !important;
    background: var(--t-ice) !important;
    color: var(--t-text) !important;
}
[data-theme="tenshi"] #fb-bar {
    background: rgba(255,255,255,0.8) !important;
    border: 1px dotted var(--t-blue-light) !important;
}

/* --- 滚动条 --- */
[data-theme="tenshi"] ::-webkit-scrollbar { width: 3px !important; }
[data-theme="tenshi"] ::-webkit-scrollbar-track { background: transparent !important; }
[data-theme="tenshi"] ::-webkit-scrollbar-thumb {
    background: var(--t-blue-light) !important;
    border-radius: 3px !important;
}

/* --- 主题预览缩略图 --- */
.theme-preview-tenshi { background: #E1F5FE; }
.theme-preview-tenshi .tp-header {
    background: rgba(255,255,255,0.7);
    border-bottom: 1px dotted #B3E5FC;
}
.theme-preview-tenshi .tp-widget {
    background: rgba(255,255,255,0.5);
    border: 1px dotted #B3E5FC;
    border-radius: 6px;
}
.theme-preview-tenshi .tp-icons span {
    background: rgba(255,255,255,0.6);
    border: 1px dotted #B3E5FC;
}
.theme-preview-tenshi .tp-dock {
    background: rgba(255,255,255,0.6);
    border-top: 1px dotted #B3E5FC;
}
/* ============================================================
   老板专属补丁：CW App 全主题高对比度/清晰度修复
   说明：拯救被过度柔化的字体让动态、私信、名字像默认主题一样清晰锐利！
   【插入位置：请务必将此段代码粘贴到整个 CSS 文件的最末尾】
   ============================================================ */



/* 3. Tenshi (水色天堂) 主题 - CW App 文字加深 */
[data-theme="tenshi"] .cw-app-container,
[data-theme="tenshi"] .cw-card-info,
[data-theme="tenshi"] .cw-post-content,
[data-theme="tenshi"] .cw-msg-wrapper.other .cw-msg-bubble,
[data-theme="tenshi"] .cw-me-bio {
    color: #333333 !important;
}
[data-theme="tenshi"] .cw-logo,
[data-theme="tenshi"] .cw-card-name,
[data-theme="tenshi"] .cw-username,
[data-theme="tenshi"] .cw-chat-title b,
[data-theme="tenshi"] .cw-me-name {
    color: #111111 !important;
    font-weight: 800 !important;
}
[data-theme="tenshi"] .cw-time,
[data-theme="tenshi"] .cw-chat-preview,
[data-theme="tenshi"] .cw-nav-item,
[data-theme="tenshi"] .cw-comments-preview {
    color: #666666 !important;
}
[data-theme="tenshi"] .cw-nav-item.active {
    color: #111111 !important;
    font-weight: 800 !important;
}

/* 4. 统一修复输入框看不清的问题 */
[data-theme="angelcore"] .cw-chat-input-bar input,
[data-theme="ins"] .cw-chat-input-bar input,
[data-theme="tenshi"] .cw-chat-input-bar input {
    color: #111111 !important;
    font-weight: 500 !important;
}
[data-theme="angelcore"] .cw-chat-input-bar input::placeholder,
[data-theme="ins"] .cw-chat-input-bar input::placeholder,
[data-theme="tenshi"] .cw-chat-input-bar input::placeholder {
    color: #999999 !important;
    font-weight: 400 !important;
}
