/* 每日一记：私有按日照片记录，复用成长中心的卡片、弹窗与主题变量体系。 */
.wl-daily-page { max-width:980px; margin:0 auto; padding:28px 18px 56px; color:var(--wl-text); }
.wl-daily-head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:18px; }
#wl-daily-record-today { white-space:nowrap; }
.wl-daily-head > div > span, .wl-daily-panel-head span, .wl-daily-dialog-card > span { color:var(--wl-accent); font-size:11px; font-weight:800; letter-spacing:.11em; }
.wl-daily-head h1 { margin:5px 0 7px; font-size:30px; }
.wl-daily-head p { margin:0; color:var(--wl-text-muted); font-size:14px; }
.wl-daily-notice { display:flex; align-items:baseline; gap:9px; margin-bottom:16px; padding:11px 13px; border:1px solid color-mix(in srgb,var(--wl-accent) 20%,var(--wl-border)); border-radius:12px; background:color-mix(in srgb,var(--wl-accent) 6%,var(--wl-bg-card)); color:var(--wl-text-secondary); font-size:13px; line-height:1.6; }
.wl-daily-notice strong { color:var(--wl-accent); font-size:12px; white-space:nowrap; }
.wl-daily-notice span { color:var(--wl-text-muted); }
.wl-daily-workspace-heading { display:flex; align-items:end; justify-content:space-between; gap:18px; margin:24px 0 10px; }
.wl-daily-workspace-heading > div > span { color:var(--wl-accent); font-size:11px; font-weight:800; letter-spacing:.11em; }
.wl-daily-workspace-heading h2 { margin:4px 0 0; font-size:20px; }
.wl-daily-workspace-heading p { max-width:390px; margin:0; color:var(--wl-text-muted); font-size:12px; line-height:1.55; text-align:right; }
.wl-daily-panel-hint { margin:4px 0 0; color:var(--wl-text-muted); font-size:11px; line-height:1.4; }
.wl-daily-date-field { display:grid; gap:4px; color:var(--wl-text-muted); font-size:11px; font-weight:700; white-space:nowrap; }
.wl-daily-date-field input { margin-top:0; }
.wl-daily-overview { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:16px; }
/* 2026-08-22 大圆角 + 玻璃态已上移到 unified-ui.css 统一面板声明块。 */
.wl-daily-overview article, .wl-daily-panel { padding:17px; border:1px solid var(--wl-border-light); background:var(--wl-bg-card); }
/* 概览卡片允许内容收缩，否则“记录主题”里的长主题列表会把整行栅格撑出页面。 */
.wl-daily-overview article { min-width:0; }
.wl-daily-overview span { display:block; color:var(--wl-text-muted); font-size:12px; }
.wl-daily-overview b { display:block; margin-top:6px; color:var(--wl-accent); font-size:26px; line-height:1; }
.wl-daily-overview b small { color:var(--wl-text-muted); font-size:12px; font-weight:500; }
.wl-daily-overview p { min-height:18px; margin:8px 0 0; overflow:hidden; color:var(--wl-text-muted); font-size:11px; line-height:1.45; text-overflow:ellipsis; white-space:nowrap; }
/* 记录编辑器与月历桌面端也上下排列：半宽时主题标签、照片和操作按钮都会被挤压。 */
.wl-daily-grid { display:grid; grid-template-columns:1fr; gap:16px; margin-bottom:16px; }
.wl-daily-panel-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:13px; }
.wl-daily-panel-head h2 { margin:3px 0 0; font-size:18px; }
.wl-daily-panel-head > small { max-width:340px; color:var(--wl-text-muted); font-size:11px; line-height:1.45; text-align:right; }

/* 主题色点：月历、标签、图例共用同一套颜色，保证一眼辨认。 */
.wl-daily-dot { display:inline-block; width:8px; height:8px; border-radius:50%; background:var(--wl-accent); }
.wl-daily-dot-meal { background:#e08a3c; }
.wl-daily-dot-outfit { background:#8a6fd6; }
.wl-daily-dot-body { background:#3fa88f; }
.wl-daily-dot-selfie { background:#d6708f; }
.wl-daily-dot-skin { background:#57b3c7; }
.wl-daily-dot-hair { background:#9c6b4f; }
.wl-daily-dot-mood { background:#e3b93c; }
.wl-daily-dot-study { background:#7a9e4a; }
.wl-daily-dot-workout { background:#4a86d4; }
.wl-daily-dot-window { background:#8a97a8; }

/* 记录编辑 */
.wl-daily-editor-panel input[type="date"], .wl-daily-metrics input { box-sizing:border-box; height:36px; padding:0 10px; border:1px solid var(--wl-border); border-radius:9px; background:var(--wl-bg-hover); color:var(--wl-text); font:inherit; font-size:13px; }
.wl-daily-theme-tabs { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:12px; }
.wl-daily-theme-tab { display:inline-flex; align-items:center; gap:6px; padding:7px 12px; border:1px solid var(--wl-border); border-radius:99px; background:var(--wl-bg-card); color:var(--wl-text-secondary); font:inherit; font-size:12px; font-weight:700; cursor:pointer; }
.wl-daily-theme-tab.is-active { border-color:var(--wl-accent); background:color-mix(in srgb,var(--wl-accent) 10%,var(--wl-bg-card)); color:var(--wl-accent); }
.wl-daily-editor-status { margin:-3px 0 12px; padding:8px 10px; border:1px dashed var(--wl-border); border-radius:10px; background:var(--wl-bg-hover); color:var(--wl-text-muted); font-size:12px; line-height:1.5; }
.wl-daily-editor-status.is-existing { border-color:color-mix(in srgb,var(--wl-accent) 42%,var(--wl-border)); background:color-mix(in srgb,var(--wl-accent) 7%,var(--wl-bg-card)); color:var(--wl-text-secondary); font-weight:700; }
.wl-daily-photo-list { display:grid; grid-template-columns:repeat(6,1fr); gap:8px; margin-bottom:12px; }
.wl-daily-photo { position:relative; margin:0; aspect-ratio:1; overflow:hidden; border:1px solid var(--wl-border-light); border-radius:11px; background:var(--wl-bg-hover); -webkit-transform:translateZ(0); transform:translateZ(0); }
.wl-daily-photo img { width:100%; height:100%; object-fit:cover; cursor:zoom-in; }
.wl-daily-photo-remove { position:absolute; top:5px; right:5px; display:grid; place-items:center; width:22px; height:22px; padding:0; border:0; border-radius:50%; background:rgba(31,35,42,.62); color:#fff; font-size:15px; line-height:1; cursor:pointer; }
.wl-daily-photo-remove:hover { background:#c95e59; }
.wl-daily-photo-add { display:grid; place-items:center; aspect-ratio:1; border:1px dashed color-mix(in srgb,var(--wl-accent) 45%,var(--wl-border)); border-radius:11px; background:color-mix(in srgb,var(--wl-accent) 4%,var(--wl-bg-card)); color:var(--wl-accent); font-size:12px; font-weight:700; cursor:pointer; text-align:center; }
.wl-daily-photo-add:hover { background:color-mix(in srgb,var(--wl-accent) 9%,var(--wl-bg-card)); }
.wl-daily-photo-add.is-uploading { opacity:.6; cursor:progress; }
.wl-daily-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; margin-bottom:12px; }
.wl-daily-metrics label { display:grid; gap:4px; min-width:0; }
.wl-daily-metrics span { color:var(--wl-text-muted); font-size:11px; font-weight:700; }
.wl-daily-metrics span em { font-style:normal; font-weight:400; }
.wl-daily-metrics input { width:100%; }
.wl-daily-mood-picker { display:flex; gap:5px; }
.wl-daily-mood-score { flex:1; min-width:34px; height:36px; padding:0; border:1px solid var(--wl-border); border-radius:9px; background:var(--wl-bg-card); color:var(--wl-text-muted); font:inherit; font-size:13px; font-weight:800; cursor:pointer; transition:transform var(--wl-transition),border-color var(--wl-transition),background var(--wl-transition),box-shadow var(--wl-transition),color var(--wl-transition); }
.wl-daily-mood-score:hover { border-color:var(--wl-accent); color:var(--wl-accent); transform:translateY(-1px); }
.wl-daily-mood-score.is-active { border-color:color-mix(in srgb,var(--wl-accent) 50%,var(--wl-border)); background:linear-gradient(145deg,color-mix(in srgb,var(--wl-accent) 18%,rgba(255,255,253,.98)),color-mix(in srgb,var(--wl-accent) 7%,rgba(255,255,253,.82))); box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 4px 10px color-mix(in srgb,var(--wl-accent) 14%,transparent); color:var(--wl-accent-dark); animation:wl-daily-toggle-settle .3s cubic-bezier(.2,.9,.25,1); }
.wl-daily-mood-score:active { transform:translateY(0) scale(.95); }
@keyframes wl-daily-toggle-settle { 0% { transform:scale(.9); } 58% { transform:scale(1.07); } 100% { transform:scale(1); } }
.wl-daily-editor-panel textarea { box-sizing:border-box; display:block; width:100%; min-height:64px; padding:10px 11px; resize:vertical; border:1px solid var(--wl-border); border-radius:11px; background:var(--wl-bg-hover); color:var(--wl-text); font:inherit; font-size:13px; line-height:1.6; outline:none; }
.wl-daily-editor-panel textarea:focus { border-color:var(--wl-accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--wl-accent) 16%,transparent); }
.wl-daily-editor-actions { display:flex; justify-content:space-between; gap:9px; margin-top:12px; }
.wl-daily-editor-actions .wl-btn-primary { margin-left:auto; white-space:nowrap; }

/* 同日全主题日记卡：记录不再从“选择类型”开始，而是以可按需填写的独立卡片自然展开。 */
.wl-daily-legacy-editor { display:none!important; }
.wl-daily-theme-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.wl-daily-theme-card { min-width:0; padding:15px; border:1px solid rgba(73,69,60,.11); border-radius:16px; background:var(--wl-bg-card); box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 4px 14px rgba(57,51,43,.05); transition:border-color .22s ease,box-shadow .22s ease; -webkit-transform:translateZ(0); transform:translateZ(0); -webkit-backface-visibility:hidden; backface-visibility:hidden; }
.wl-daily-theme-card:hover { border-color:color-mix(in srgb,var(--wl-accent) 28%,var(--wl-border)); box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 10px 24px rgba(57,51,43,.08); -webkit-transform:translate3d(0,-1px,0); transform:translate3d(0,-1px,0); }
.wl-daily-theme-card.is-existing { border-color:color-mix(in srgb,var(--wl-accent) 26%,var(--wl-border)); background:color-mix(in srgb,var(--wl-accent) 6%,var(--wl-bg-card)); }
.wl-daily-theme-card > header { display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:flex-start; gap:8px; }
.wl-daily-card-drag { display:grid; place-items:center; width:28px; height:28px; margin:-3px 0 0 -3px; padding:0; border:1px solid transparent; border-radius:8px; background:transparent; color:var(--wl-text-muted); cursor:grab; transition:color var(--wl-transition),background var(--wl-transition),border-color var(--wl-transition),transform var(--wl-transition); }
.wl-daily-card-drag:hover { border-color:color-mix(in srgb,var(--wl-accent) 22%,var(--wl-border)); background:color-mix(in srgb,var(--wl-accent) 7%,rgba(255,255,253,.78)); color:var(--wl-accent-dark); transform:translateY(-1px); }
.wl-daily-card-drag:active { cursor:grabbing; transform:scale(.94); }
.wl-daily-card-drag svg { width:15px; height:15px; }
.wl-daily-theme-card > header > div { display:grid; min-width:0; grid-template-columns:9px minmax(0,1fr); column-gap:7px; align-items:center; }
.wl-daily-theme-card > header .wl-daily-dot { grid-row:1 / span 2; }
.wl-daily-theme-card > header span { color:var(--wl-text-muted); font-size:9px; font-weight:850; letter-spacing:.12em; }
.wl-daily-theme-card > header h3 { margin:2px 0 0; color:var(--wl-text); font-size:16px; line-height:1.25; }
.wl-daily-theme-card > header small { justify-self:end; padding:4px 7px; border:1px solid rgba(73,69,60,.09); border-radius:7px; background:rgba(244,242,236,.72); color:var(--wl-text-muted); font-size:10px; font-weight:700; }
.wl-daily-theme-card.is-existing > header small { border-color:color-mix(in srgb,var(--wl-accent) 20%,transparent); background:color-mix(in srgb,var(--wl-accent) 8%,rgba(255,255,253,.9)); color:var(--wl-accent-dark); }
.wl-daily-theme-card.is-dragging { opacity:.58; border-color:color-mix(in srgb,var(--wl-accent) 58%,var(--wl-border)); box-shadow:0 14px 30px color-mix(in srgb,var(--wl-accent) 17%,transparent),inset 0 1px 0 rgba(255,255,255,.94); transform:scale(.985); }
.wl-daily-theme-card.is-drop-target { border-color:color-mix(in srgb,var(--wl-accent) 62%,var(--wl-border)); box-shadow:0 0 0 3px color-mix(in srgb,var(--wl-accent) 13%,transparent),inset 0 1px 0 rgba(255,255,255,.94); }
.wl-daily-card-hint { min-height:33px; margin:9px 0 11px; color:var(--wl-text-muted); font-size:11px; line-height:1.55; }
.wl-daily-card-photos { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; margin-bottom:10px; }
.wl-daily-card-photos .wl-daily-photo-add { font-size:10px; }
/* 单张照片为主：1 张照片时作为卡片主视觉大图呈现，0 张时为醒目添加区。 */
.wl-daily-card-photos.is-single { grid-template-columns:1fr; gap:9px; }
.wl-daily-card-photos.is-single .wl-daily-photo { aspect-ratio:auto; border-radius:13px; overflow:hidden; }
.wl-daily-card-photos.is-single .wl-daily-photo img { width:100%; height:auto; max-height:560px; border-radius:13px; display:block; }
/* 单张横向：铺满卡片宽度，按原始比例完整显示 */
.wl-daily-card-photos.is-single.is-landscape .wl-daily-photo img { width:100%; height:auto; max-height:560px; }
/* 单张竖向（手机竖拍）：保持竖向比例、自然高度、居中完整显示，不强行横向铺满 */
.wl-daily-card-photos.is-single.is-portrait .wl-daily-photo { width:auto; max-width:100%; margin:0 auto; }
.wl-daily-card-photos.is-single.is-portrait .wl-daily-photo img { width:auto; max-width:100%; max-height:560px; }
.wl-daily-card-photos.is-single .wl-daily-photo-add { aspect-ratio:auto; height:40px; padding:0 12px; border-radius:10px; font-size:11px; }
/* 拖拽进行中：禁止文字选中，给出抓取光标 */
.wl-daily-theme-cards.is-sorting { user-select:none; -webkit-user-select:none; cursor:grabbing; }
.wl-daily-theme-cards.is-sorting .wl-daily-theme-card { cursor:grabbing; }
.wl-daily-card-photos.is-empty { grid-template-columns:1fr; }
.wl-daily-card-photos.is-empty .wl-daily-photo-add { aspect-ratio:auto; min-height:120px; border-radius:13px; font-size:13px; }
/* 日记卡视频：与照片区并列，上限 3 个，封面 + 播放叠加，点击打开视频灯箱。 */
.wl-daily-card-videos { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; margin-bottom:10px; }
.wl-daily-card-videos .wl-daily-video-add { font-size:10px; }
.wl-daily-card-videos.is-empty { grid-template-columns:1fr; }
.wl-daily-card-videos.is-empty .wl-daily-video-add { aspect-ratio:auto; min-height:120px; border-radius:13px; font-size:13px; }
.wl-daily-video { position:relative; margin:0; aspect-ratio:1; overflow:hidden; border:1px solid var(--wl-border-light); border-radius:11px; background:#1c1d22; -webkit-transform:translateZ(0); transform:translateZ(0); }
.wl-daily-video-preview { width:100%; height:100%; object-fit:cover; cursor:zoom-in; background:#1c1d22; }
.wl-daily-video-no-poster .wl-daily-video-preview { object-fit:contain; }
.wl-daily-video-play { position:absolute; top:50%; left:50%; width:34px; height:34px; transform:translate(-50%,-50%); border-radius:50%; background:rgba(31,35,42,.55); box-shadow:0 2px 8px rgba(0,0,0,.3); pointer-events:none; }
.wl-daily-video-play::after { content:""; position:absolute; top:50%; left:54%; width:0; height:0; transform:translate(-50%,-50%); border-style:solid; border-width:8px 0 8px 13px; border-color:transparent transparent transparent #fff; }
.wl-daily-video-remove { position:absolute; top:5px; right:5px; z-index:1; display:grid; place-items:center; width:22px; height:22px; padding:0; border:0; border-radius:50%; background:rgba(31,35,42,.62); color:#fff; font-size:15px; line-height:1; cursor:pointer; }
.wl-daily-video-remove:hover { background:#c95e59; }
.wl-daily-video-add { display:grid; place-items:center; aspect-ratio:1; border:1px dashed color-mix(in srgb,var(--wl-accent) 45%,var(--wl-border)); border-radius:11px; background:color-mix(in srgb,var(--wl-accent) 4%,var(--wl-bg-card)); color:var(--wl-accent); font-size:12px; font-weight:700; cursor:pointer; text-align:center; }
.wl-daily-video-add:hover { background:color-mix(in srgb,var(--wl-accent) 9%,var(--wl-bg-card)); }
.wl-daily-video-add.is-uploading { opacity:.6; cursor:progress; }
.wl-daily-card-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:10px; }
.wl-daily-card-metrics label { display:grid; gap:4px; min-width:0; }
.wl-daily-card-metrics label.wl-daily-mood-full,
.wl-daily-metrics label.wl-daily-mood-full { grid-column:1 / -1; }
.wl-daily-card-metrics label > span { display:flex; justify-content:space-between; gap:5px; color:var(--wl-text-muted); font-size:10px; font-weight:800; }
.wl-daily-card-metrics label > span em { color:var(--wl-text-muted); font-style:normal; font-weight:500; }
.wl-daily-card-metrics input { box-sizing:border-box; width:100%; height:35px; padding:0 9px; border:1px solid rgba(73,69,60,.14); border-radius:9px; background:rgba(255,255,253,.76); color:var(--wl-text); font:inherit; font-size:12px; box-shadow:inset 0 1px 0 rgba(255,255,255,.9); }
.wl-daily-card-metrics input:focus { border-color:color-mix(in srgb,var(--wl-accent) 55%,var(--wl-border)); outline:none; box-shadow:0 0 0 3px color-mix(in srgb,var(--wl-accent) 12%,transparent); }
.wl-daily-card-mood-picker { display:flex; gap:4px; }
.wl-daily-card-mood-picker .wl-daily-mood-score { min-width:40px; height:35px; border-radius:8px; }
.wl-daily-mood-picker .wl-daily-mood-score { min-width:40px; }
.wl-daily-theme-card > textarea { box-sizing:border-box; display:block; width:100%; min-height:58px; margin-top:10px; padding:9px 10px; border:1px solid rgba(73,69,60,.13); border-radius:10px; background:rgba(255,255,253,.7); color:var(--wl-text); font:inherit; font-size:12px; line-height:1.55; resize:vertical; box-shadow:inset 0 1px 0 rgba(255,255,255,.88); }
.wl-daily-theme-card > textarea:focus { border-color:color-mix(in srgb,var(--wl-accent) 55%,var(--wl-border)); outline:none; box-shadow:0 0 0 3px color-mix(in srgb,var(--wl-accent) 12%,transparent); }
.wl-daily-theme-card > footer { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:10px; }
.wl-daily-card-save { min-height:36px; padding:7px 11px; border-radius:9px; font-size:11px; white-space:nowrap; }
.wl-daily-card-delete { min-height:32px; padding:5px 8px; border:1px solid rgba(166,91,83,.18); border-radius:8px; background:linear-gradient(145deg,rgba(255,249,247,.9),rgba(248,233,228,.68)); color:#a65b53; font:inherit; font-size:10px; font-weight:760; cursor:pointer; }
.wl-daily-card-delete:hover { border-color:rgba(166,91,83,.4); background:rgba(251,228,220,.78); }
.wl-daily-card-meals { margin-bottom:10px; }
.wl-daily-meal-compact-grid { display:grid; gap:6px; }
.wl-daily-meal-compact { display:grid; grid-template-columns:minmax(58px,1fr) auto 62px minmax(0,1.3fr); align-items:center; gap:6px; padding:7px; border:1px solid color-mix(in srgb,var(--wl-accent) 18%,transparent); border-radius:10px; background:transparent; }
.wl-daily-meal-compact strong { display:block; color:var(--wl-text-secondary); font-size:11px; }
.wl-daily-meal-compact small { display:block; margin-top:2px; color:var(--wl-text-muted); font-size:9px; }
.wl-daily-card-meal-photo { padding:5px 6px; border:1px dashed color-mix(in srgb,var(--wl-accent) 35%,var(--wl-border)); border-radius:7px; color:var(--wl-accent-dark); font-size:10px; font-weight:750; cursor:pointer; white-space:nowrap; }
.wl-daily-meal-compact input { box-sizing:border-box; min-width:0; height:31px; padding:0 7px; border:1px solid rgba(73,69,60,.12); border-radius:7px; background:rgba(255,255,253,.82); color:var(--wl-text); font:inherit; font-size:10px; }
.wl-daily-card-meal-photos { display:flex; grid-column:2 / -1; flex-wrap:wrap; gap:5px; padding-top:1px; }
.wl-daily-card-meal-photo-item { position:relative; display:block; width:34px; height:34px; overflow:hidden; border:1px solid rgba(73,69,60,.12); border-radius:7px; background:rgba(255,255,253,.82); }
.wl-daily-card-meal-photo-item img { display:block; width:100%; height:100%; object-fit:cover; cursor:zoom-in; }
.wl-daily-card-meal-photo-item button { position:absolute; top:1px; right:1px; display:grid; place-items:center; width:14px; height:14px; padding:0; border:0; border-radius:50%; background:rgba(42,38,33,.72); color:#fff; font-size:12px; line-height:1; cursor:pointer; }
.wl-daily-card-meal-photo-item button:hover { background:#a65b53; }
.wl-daily-card-meals > p { margin:7px 0 0; color:var(--wl-text-muted); font-size:10px; line-height:1.45; }

/* 月历 */
.wl-daily-calendar-head { display:flex; align-items:center; justify-content:center; gap:15px; margin-bottom:14px; }
.wl-daily-calendar-head h2 { min-width:150px; margin:0; text-align:center; font-size:18px; }
.wl-daily-calendar-head button { display:grid; place-items:center; width:30px; height:30px; padding:0; border:0; border-radius:50%; background:var(--wl-bg-hover); color:var(--wl-text-secondary); font-size:23px; line-height:1; cursor:pointer; }
.wl-daily-calendar-head button:hover { background:color-mix(in srgb,var(--wl-accent) 13%,var(--wl-bg-hover)); color:var(--wl-accent); }
.wl-daily-weekdays, .wl-daily-calendar { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; }
.wl-daily-weekdays { margin-bottom:7px; color:var(--wl-text-muted); font-size:11px; font-weight:700; text-align:center; }
.wl-daily-day, .wl-daily-calendar-blank { min-height:56px; border:1px solid var(--wl-border-light); border-radius:10px; background:var(--wl-bg-card); }
.wl-daily-day { display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:5px; padding:7px 8px; font:inherit; text-align:left; cursor:pointer; transition:border-color .16s ease, transform .16s ease, box-shadow .16s ease; }
.wl-daily-day:hover { border-color:color-mix(in srgb,var(--wl-accent) 55%,var(--wl-border)); transform:translateY(-1px); box-shadow:0 5px 15px color-mix(in srgb,var(--wl-accent) 12%,transparent); }
.wl-daily-day.is-today { border-color:var(--wl-accent); }
.wl-daily-day.is-editing { background:color-mix(in srgb,var(--wl-accent) 7%,var(--wl-bg-card)); border-color:var(--wl-accent); }
.wl-daily-day.is-future { opacity:.45; cursor:default; }
.wl-daily-day b { color:var(--wl-text-secondary); font-size:13px; }
.wl-daily-day.is-recorded b { color:var(--wl-text); }
.wl-daily-dots { display:flex; gap:3px; min-height:8px; }
.wl-daily-calendar-legend { display:flex; flex-wrap:wrap; gap:10px 14px; margin-top:12px; }
.wl-daily-calendar-legend span { display:inline-flex; align-items:center; gap:5px; color:var(--wl-text-muted); font-size:11px; }

/* 集合与对比 */
.wl-daily-collection-panel { margin-bottom:16px; }
.wl-daily-collection-summary { display:flex; align-items:center; flex-wrap:wrap; gap:8px 18px; margin:-3px 0 14px; padding:10px 14px; border-radius:13px; background:linear-gradient(145deg,color-mix(in srgb,var(--wl-accent) 16%,rgba(255,255,255,.78)),color-mix(in srgb,var(--wl-accent) 7%,rgba(255,255,255,.6))); -webkit-backdrop-filter:blur(14px) saturate(160%); backdrop-filter:blur(14px) saturate(160%); border:1px solid color-mix(in srgb,var(--wl-accent) 24%,transparent); box-shadow:0 4px 12px color-mix(in srgb,var(--wl-accent) 8%,transparent),inset 0 1px 0 rgba(255,255,255,.74); color:var(--wl-text-secondary); font-size:11px; }
.wl-daily-collection-summary span b { margin-right:3px; color:var(--wl-accent-dark); font-size:16px; }
.wl-daily-collection-summary em { margin-left:auto; color:var(--wl-text-muted); font-style:normal; }
.wl-daily-filters { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; margin-bottom:14px; padding-bottom:13px; border-bottom:1px solid var(--wl-border-light); }
.wl-daily-filter-themes::before, .wl-daily-filter-ranges::before { display:inline-flex; align-items:center; margin-right:2px; color:var(--wl-text-muted); font-size:10px; font-weight:800; letter-spacing:.08em; }
.wl-daily-filter-themes::before { content:'主题'; }
.wl-daily-filter-ranges::before { content:'范围'; }
.wl-daily-filter-themes, .wl-daily-filter-ranges { display:flex; flex-wrap:wrap; gap:6px; }
.wl-daily-filter-chip { padding:6px 11px; border:1px solid color-mix(in srgb,var(--wl-accent) 18%,transparent); border-radius:99px; background:linear-gradient(145deg,color-mix(in srgb,var(--wl-accent) 7%,rgba(255,255,255,.55)),color-mix(in srgb,var(--wl-accent) 3%,rgba(255,255,255,.4))); -webkit-backdrop-filter:blur(10px) saturate(150%); backdrop-filter:blur(10px) saturate(150%); color:var(--wl-text-secondary); font:inherit; font-size:12px; font-weight:700; cursor:pointer; transition:border-color .22s ease,box-shadow .22s ease; }
.wl-daily-filter-chip.is-active { border-color:var(--wl-accent); background:color-mix(in srgb,var(--wl-accent) 10%,var(--wl-bg-card)); color:var(--wl-accent); }
#wl-daily-custom-month { box-sizing:border-box; height:32px; padding:0 9px; border:1px solid var(--wl-border); border-radius:9px; background:var(--wl-bg-hover); color:var(--wl-text); font:inherit; font-size:12px; }
.wl-daily-day-group { padding:13px 0; border-top:1px solid var(--wl-border-light); }
.wl-daily-day-group > header { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:9px; }
.wl-daily-day-group > header b { font-size:14px; }
.wl-daily-day-group > header > div { display:flex; flex-wrap:wrap; gap:5px; }
.wl-daily-theme-chip { display:inline-flex; align-items:center; gap:5px; padding:3px 9px; border-radius:99px; background:var(--wl-bg-hover); color:var(--wl-text-secondary); font-size:11px; font-weight:700; }
.wl-daily-day-entries { display:grid; gap:10px; }
.wl-daily-entry-photos { display:grid; grid-template-columns:repeat(auto-fill, minmax(104px,1fr)); gap:7px; }
.wl-daily-entry-photos img { width:100%; aspect-ratio:1; object-fit:cover; border:1px solid var(--wl-border-light); border-radius:9px; cursor:zoom-in; }
/* 集合区：单张照片同样作为主视觉大图呈现。 */
.wl-daily-entry-photos.is-single { display:block; }
.wl-daily-entry-photos.is-single img { width:100%; max-width:380px; aspect-ratio:4 / 3; border-radius:13px; }
/* 集合区：视频以封面 + 播放叠加呈现，点击打开视频灯箱。 */
.wl-daily-entry-videos { display:grid; grid-template-columns:repeat(auto-fill, minmax(140px,1fr)); gap:7px; margin-top:7px; }
.wl-daily-entry-video { position:relative; margin:0; aspect-ratio:4 / 3; overflow:hidden; border:1px solid var(--wl-border-light); border-radius:11px; background:#1c1d22; cursor:zoom-in; }
.wl-daily-entry-video-preview { display:block; width:100%; height:100%; object-fit:cover; }
.wl-daily-entry-video.wl-daily-video-no-poster .wl-daily-entry-video-preview { object-fit:contain; }
.wl-daily-entry-video .wl-daily-video-play { width:38px; height:38px; }
.wl-daily-entry p { margin:7px 0 0; color:var(--wl-text-secondary); font-size:12px; line-height:1.6; }
.wl-daily-entry-actions { display:flex; justify-content:flex-end; margin-top:10px; }
.wl-daily-entry-edit { border:1px solid var(--wl-border); border-radius:8px; padding:6px 10px; color:var(--wl-text-secondary); background:var(--wl-bg-card); font-size:12px; cursor:pointer; transition:all .2s ease; }
.wl-daily-entry-edit:hover { border-color:var(--wl-primary); color:var(--wl-primary); background:var(--wl-bg-hover); }
.wl-daily-metric-chip { display:inline-block; margin:7px 6px 0 0; padding:3px 9px; border-radius:99px; background:color-mix(in srgb,#3fa88f 12%,var(--wl-bg-card)); color:#2c7a67; font-size:11px; font-weight:700; }
.wl-daily-empty { margin:10px 0; color:var(--wl-text-muted); font-size:13px; line-height:1.6; }

/* 主题专属：指标趋势与变化对比 */
.wl-daily-theme-extra { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:16px; margin-bottom:14px; padding:16px; border:1px solid color-mix(in srgb,var(--wl-accent) 26%,transparent); border-radius:17px; background:linear-gradient(145deg,color-mix(in srgb,var(--wl-accent) 14%,rgba(255,255,255,.86)),color-mix(in srgb,var(--wl-accent) 6%,rgba(255,255,255,.66))); -webkit-backdrop-filter:blur(20px) saturate(165%); backdrop-filter:blur(20px) saturate(165%); box-shadow:0 8px 22px color-mix(in srgb,var(--wl-accent) 10%,transparent),inset 0 1px 0 rgba(255,255,255,.78); }
.wl-daily-theme-extra[hidden] { display:none !important; }
.wl-daily-extra-hint { margin:0 0 8px; color:var(--wl-text-muted); font-size:11px; line-height:1.5; }
.wl-daily-theme-extra > div { min-width:0; }
.wl-daily-theme-extra > div[hidden] { display:none; }
.wl-daily-theme-extra:has(> div[hidden]:first-child) { grid-template-columns:minmax(0,1fr); }
.wl-daily-sub-head { display:flex; align-items:center; justify-content:space-between; min-width:0; gap:10px; margin-bottom:10px; }
.wl-daily-sub-head h3 { flex:0 0 auto; margin:0; font-size:14px; }
.wl-daily-sub-head select, .wl-daily-compare-picker select { box-sizing:border-box; min-width:0; height:34px; padding:0 10px; border:1px solid color-mix(in srgb,var(--wl-accent) 28%,transparent); border-radius:10px; background:linear-gradient(145deg,color-mix(in srgb,var(--wl-accent) 12%,rgba(255,255,255,.78)),color-mix(in srgb,var(--wl-accent) 5%,rgba(255,255,255,.6))); -webkit-backdrop-filter:blur(12px) saturate(155%); backdrop-filter:blur(12px) saturate(155%); color:var(--wl-accent-dark); font:inherit; font-size:12px; font-weight:760; box-shadow:inset 0 1px 0 rgba(255,255,255,.8); }
.wl-daily-trend .wl-global-select-trigger { min-width:0; width:min(100%,168px); }
.wl-daily-trend-chart svg { display:block; width:100%; height:auto; }
.wl-daily-trend-chart polyline { fill:none; stroke:var(--wl-accent); stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.wl-daily-trend-chart circle { fill:var(--wl-bg-card); stroke:var(--wl-accent); stroke-width:2; }
.wl-daily-trend-axis { stroke:var(--wl-border); stroke-width:1; }
.wl-daily-trend-bound { fill:var(--wl-text-muted); font-size:10px; }
.wl-daily-trend-meta { display:flex; justify-content:space-between; gap:10px; margin-bottom:6px; color:var(--wl-text-muted); font-size:11px; }
.wl-daily-trend-meta b { color:var(--wl-accent); font-size:12px; }
.wl-daily-compare-picker { display:grid; grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr); align-items:center; gap:7px; margin-bottom:10px; }
.wl-daily-compare-picker select { width:100%; }
.wl-daily-compare-picker > .wl-global-select-trigger { min-width:0; width:100%; }
.wl-daily-compare-picker span { display:grid; place-items:center; color:var(--wl-text-muted); font-size:11px; line-height:1.25; text-align:center; }
.wl-daily-compare-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.wl-daily-compare-card { margin:0; overflow:hidden; border:1px solid color-mix(in srgb,var(--wl-accent) 24%,transparent); border-radius:13px; background:linear-gradient(155deg,color-mix(in srgb,var(--wl-accent) 12%,rgba(255,255,255,.82)),color-mix(in srgb,var(--wl-accent) 5%,rgba(255,255,255,.62))); -webkit-backdrop-filter:blur(16px) saturate(160%); backdrop-filter:blur(16px) saturate(160%); box-shadow:0 6px 16px color-mix(in srgb,var(--wl-accent) 8%,transparent),inset 0 1px 0 rgba(255,255,255,.74); }
.wl-daily-compare-card header { padding:8px 12px; border-bottom:1px solid color-mix(in srgb,var(--wl-accent) 22%,transparent); background:color-mix(in srgb,var(--wl-accent) 9%,rgba(255,255,255,.5)); color:var(--wl-text-secondary); font-size:12px; font-weight:800; }
.wl-daily-compare-card img { display:block; width:100%; aspect-ratio:3/4; object-fit:cover; cursor:zoom-in; }
.wl-daily-compare-empty { display:grid; place-items:center; aspect-ratio:3/4; border-radius:inherit; background:color-mix(in srgb,var(--wl-accent) 4%,rgba(255,255,255,.35)); color:var(--wl-text-muted); font-size:12px; }
.wl-daily-compare-card ul { display:flex; flex-wrap:wrap; gap:5px 12px; margin:0; padding:9px 10px; list-style:none; }
.wl-daily-compare-card li { display:grid; gap:2px; }
.wl-daily-compare-card li span { color:var(--wl-text-muted); font-size:10px; }
.wl-daily-compare-card li b { color:var(--wl-text); font-size:13px; }
.wl-daily-compare-card figcaption { padding:0 10px 10px; color:var(--wl-text-muted); font-size:11px; line-height:1.5; }
.wl-daily-delta-row { display:flex; flex-wrap:wrap; gap:7px; margin-top:10px; }
.wl-daily-delta-chip { padding:4px 11px; border-radius:99px; border:1px solid color-mix(in srgb,var(--wl-accent) 22%,transparent); background:linear-gradient(145deg,color-mix(in srgb,var(--wl-accent) 12%,rgba(255,255,255,.7)),color-mix(in srgb,var(--wl-accent) 5%,rgba(255,255,255,.5))); -webkit-backdrop-filter:blur(10px) saturate(150%); backdrop-filter:blur(10px) saturate(150%); color:var(--wl-accent-dark); font-size:11px; font-weight:760; box-shadow:inset 0 1px 0 rgba(255,255,255,.7); }
.wl-daily-delta-chip.is-down { background:color-mix(in srgb,#3fa88f 14%,var(--wl-bg-card)); color:#2c7a67; }
.wl-daily-delta-chip.is-up { background:color-mix(in srgb,#c95e59 12%,var(--wl-bg-card)); color:#a54545; }

/* 灯箱与确认弹窗：与成长中心一致的站内组件，不使用浏览器原生弹窗。 */
.wl-daily-dialog[hidden], .wl-daily-toast[hidden] { display:none!important; }
.wl-daily-dialog { position:fixed; z-index:9999; inset:0; display:grid; place-items:center; padding:20px; }
.wl-daily-dialog-backdrop { position:absolute; inset:0; background:rgba(31,35,42,.55); backdrop-filter:blur(3px); }
.wl-daily-dialog-card { position:relative; z-index:1; width:min(100%,430px); padding:25px; border:1px solid var(--wl-border-light); border-radius:20px; background:var(--wl-bg-card); box-shadow:0 24px 70px rgba(33,36,43,.24); }
.wl-daily-dialog-card h2 { margin:6px 0 8px; font-size:22px; }
.wl-daily-dialog-card p { margin:0; color:var(--wl-text-muted); font-size:13px; line-height:1.65; }
.wl-daily-dialog-close { position:absolute; top:11px; right:12px; display:grid; place-items:center; width:30px; height:30px; padding:0; border:0; border-radius:50%; background:transparent; color:var(--wl-text-muted); font-size:22px; line-height:1; cursor:pointer; }
.wl-daily-dialog-close:hover { background:var(--wl-bg-hover); color:var(--wl-text); }
.wl-daily-dialog-actions { display:flex; justify-content:flex-end; gap:9px; margin-top:16px; }
.wl-daily-btn-danger { border-color:#c95e59!important; background:#c95e59!important; color:#fff!important; }
.wl-daily-btn-danger:hover { border-color:#ae4743!important; background:#ae4743!important; }
.wl-daily-lightbox-card { position:relative; z-index:1; width:min(100%,720px); max-height:calc(100vh - 60px); margin:0; overflow:hidden; border-radius:18px; background:#17181c; box-shadow:0 24px 70px rgba(0,0,0,.4); }
.wl-daily-lightbox-card img { display:block; width:100%; max-height:calc(100vh - 140px); object-fit:contain; background:#17181c; }
.wl-daily-lightbox-card video { display:block; width:100%; max-height:calc(100vh - 140px); background:#17181c; outline:none; }
.wl-daily-lightbox-card figcaption { padding:12px 16px; color:#e8e8ea; font-size:13px; line-height:1.6; }
.wl-daily-lightbox-card .wl-daily-dialog-close { color:#e8e8ea; }
.wl-daily-lightbox-card .wl-daily-dialog-close:hover { background:rgba(255,255,255,.12); }
.wl-daily-toast { position:fixed; z-index:10000; left:50%; bottom:25px; max-width:calc(100vw - 32px); padding:10px 14px; transform:translateX(-50%); border-radius:10px; background:#3a3b3f; color:#fff; box-shadow:0 8px 25px rgba(0,0,0,.2); font-size:13px; line-height:1.5; }
.wl-daily-toast.is-error { background:#a54545; }

/* ===== 今日能量卡片 ===== */
.wl-daily-head-actions { display:flex; align-items:center; gap:9px; flex-shrink:0; }
.wl-daily-energy { margin-bottom:16px; padding:18px 20px; border:1px solid var(--wl-border-light); border-radius:16px; background:var(--wl-bg-card); }
.wl-daily-energy-main { display:grid; grid-template-columns:150px 1fr; gap:22px; align-items:center; }
.wl-daily-energy-ring { position:relative; width:150px; height:150px; }
.wl-daily-energy-ring svg { width:100%; height:100%; transform:rotate(-90deg); }
.wl-daily-energy-ring circle { fill:none; stroke-width:11; stroke-linecap:round; }
.wl-daily-energy-ring .wl-ring-track { stroke:color-mix(in srgb,var(--wl-accent) 12%,var(--wl-border)); }
.wl-daily-energy-ring .wl-ring-bar { stroke:var(--wl-accent); transition:stroke-dashoffset .35s ease; }
.wl-daily-energy-ring.is-over .wl-ring-bar { stroke:#c95e59; }
.wl-daily-ring-label { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1px; }
.wl-daily-ring-label span { color:var(--wl-text-muted); font-size:12px; }
.wl-daily-ring-label b { font-size:30px; line-height:1.05; }
.wl-daily-ring-label small { color:var(--wl-text-muted); font-size:11px; }
.wl-daily-energy-ring.is-over .wl-daily-ring-label b { color:#c95e59; }
.wl-daily-energy-side { min-width:0; }
.wl-daily-energy-head { display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin-bottom:12px; }
.wl-daily-energy-head span { font-size:14px; font-weight:700; }
.wl-daily-energy-head small { color:var(--wl-text-muted); font-size:12px; }
.wl-daily-macros { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:14px; }
.wl-daily-macro-top { display:flex; align-items:baseline; gap:5px; margin-bottom:5px; }
.wl-daily-macro-top span { color:var(--wl-text-secondary); font-size:12px; }
.wl-daily-macro-top b { font-size:14px; }
.wl-daily-macro-top small { color:var(--wl-text-muted); font-size:11px; }
.wl-daily-macro-bar { height:6px; border-radius:99px; background:var(--wl-bg-hover); overflow:hidden; }
.wl-daily-macro-bar i { display:block; height:100%; border-radius:99px; background:var(--wl-accent); transition:width .3s ease; }
.wl-daily-macro[data-macro="protein"] .wl-daily-macro-bar i { background:#3fa88f; }
.wl-daily-macro[data-macro="fat"] .wl-daily-macro-bar i { background:#d99a3c; }
.wl-daily-macro-foot { margin-top:5px; color:var(--wl-text-muted); font-size:11px; }
.wl-daily-ledger { display:flex; align-items:center; flex-wrap:wrap; gap:8px; padding-top:12px; border-top:1px solid var(--wl-border-light); }
.wl-daily-ledger span { display:inline-flex; align-items:baseline; gap:5px; color:var(--wl-text-muted); font-size:12px; }
.wl-daily-ledger span b { color:var(--wl-text); font-size:14px; }
.wl-daily-ledger span i { color:var(--wl-text-muted); font-size:10px; font-style:normal; }
.wl-daily-ledger em { color:var(--wl-text-muted); font-size:12px; font-style:normal; }
.wl-daily-ledger .is-deficit b { color:#2c7a67; }
.wl-daily-ledger .is-surplus b { color:#c95e59; }
.wl-daily-energy-slots { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:16px; }
.wl-daily-energy-slot { display:flex; flex-direction:column; gap:2px; padding:10px 12px; border:1px solid var(--wl-border-light); border-radius:11px; background:var(--wl-bg-card); color:var(--wl-text); text-align:left; cursor:pointer; }
.wl-daily-energy-slot:hover { border-color:color-mix(in srgb,var(--wl-accent) 45%,var(--wl-border)); background:var(--wl-bg-hover); }
.wl-daily-energy-slot span { color:var(--wl-text-secondary); font-size:12px; }
.wl-daily-energy-slot b { font-size:17px; }
.wl-daily-energy-slot small { color:var(--wl-text-muted); font-size:11px; }
.wl-daily-energy-slot.is-filled { border-color:color-mix(in srgb,var(--wl-accent) 40%,var(--wl-border)); background:color-mix(in srgb,var(--wl-accent) 5%,var(--wl-bg-card)); }

/* ===== 吃什么：餐次编辑 ===== */
.wl-daily-meal-editor { margin-bottom:12px; }
.wl-daily-slot-tabs { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; margin-bottom:12px; }
.wl-daily-slot-tab { display:flex; flex-direction:column; gap:2px; padding:8px 10px; border:1px solid var(--wl-border); border-radius:10px; background:var(--wl-bg-card); color:var(--wl-text-secondary); cursor:pointer; }
.wl-daily-slot-tab span { font-size:13px; font-weight:600; }
.wl-daily-slot-tab b { color:var(--wl-text-muted); font-size:11px; font-weight:600; }
.wl-daily-slot-tab:hover { background:var(--wl-bg-hover); }
.wl-daily-slot-tab.is-active { border-color:var(--wl-accent); background:color-mix(in srgb,var(--wl-accent) 8%,var(--wl-bg-card)); color:var(--wl-text); }
.wl-daily-slot-tab.is-active b { color:var(--wl-accent); }
.wl-daily-meal-actions { display:flex; align-items:center; gap:9px; margin:10px 0; }
.wl-daily-meal-actions .wl-btn { flex-shrink:0; }
.wl-daily-meal-hint { flex:1; min-width:0; box-sizing:border-box; height:36px; padding:0 11px; border:1px solid var(--wl-border); border-radius:9px; background:var(--wl-bg-card); color:var(--wl-text); font:inherit; font-size:13px; }
.wl-daily-dish-table { border:1px solid var(--wl-border-light); border-radius:12px; overflow:hidden; }
.wl-daily-dish-head, .wl-daily-dish-row { display:grid; grid-template-columns:minmax(90px,1.6fr) minmax(70px,1fr) 68px 62px 62px 62px 30px; gap:6px; align-items:center; padding:7px 10px; }
.wl-daily-dish-head { background:var(--wl-bg-hover); color:var(--wl-text-muted); font-size:11px; font-weight:700; }
.wl-daily-dish-row { border-top:1px solid var(--wl-border-light); }
.wl-daily-dish-row.is-uncertain { background:color-mix(in srgb,#d99a3c 7%,var(--wl-bg-card)); }
.wl-daily-dish-row input { box-sizing:border-box; width:100%; height:30px; padding:0 7px; border:1px solid transparent; border-radius:7px; background:transparent; color:var(--wl-text); font:inherit; font-size:12px; }
.wl-daily-dish-row input:hover { border-color:var(--wl-border); }
.wl-daily-dish-row input:focus { border-color:var(--wl-accent); background:var(--wl-bg-card); outline:none; }
.wl-daily-dish-name { display:flex; align-items:center; gap:5px; min-width:0; }
.wl-daily-dish-name i { flex-shrink:0; padding:1px 6px; border-radius:99px; background:color-mix(in srgb,#d99a3c 18%,var(--wl-bg-card)); color:#96661d; font-size:10px; font-style:normal; font-weight:700; }
.wl-daily-dish-del { flex-shrink:0; width:24px; height:24px; border:none; border-radius:7px; background:transparent; color:var(--wl-text-muted); font-size:15px; line-height:1; cursor:pointer; }
.wl-daily-dish-del:hover { background:var(--wl-bg-hover); color:#c95e59; }
.wl-daily-dish-total { display:flex; align-items:baseline; flex-wrap:wrap; gap:8px; padding:9px 10px; border-top:1px solid var(--wl-border-light); background:var(--wl-bg-hover); }
.wl-daily-dish-total span { color:var(--wl-text-muted); font-size:12px; }
.wl-daily-dish-total b { font-size:15px; }
.wl-daily-dish-total i { color:var(--wl-text-muted); font-size:11px; font-style:normal; }
.wl-daily-meal-foot { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:9px; }
.wl-daily-meal-foot small { color:var(--wl-text-muted); font-size:11px; }
.wl-daily-dish-add { padding:5px 11px; border:1px dashed color-mix(in srgb,var(--wl-accent) 45%,var(--wl-border)); border-radius:8px; background:transparent; color:var(--wl-accent); font-size:12px; font-weight:700; cursor:pointer; }
.wl-daily-dish-add:hover { background:color-mix(in srgb,var(--wl-accent) 8%,var(--wl-bg-card)); }
.wl-daily-metric-chip.is-strong { background:color-mix(in srgb,var(--wl-accent) 15%,var(--wl-bg-card)); color:var(--wl-accent); }

/* ===== 集合区热量趋势 ===== */
.wl-daily-energy-trend { margin:16px 0 6px; padding:15px 16px; border:1px solid var(--wl-border-light); border-radius:14px; background:var(--wl-bg-card); }
.wl-daily-kcal-legend { display:flex; gap:14px; margin-bottom:9px; }
.wl-daily-kcal-legend span { display:inline-flex; align-items:center; gap:5px; color:var(--wl-text-muted); font-size:11px; }
.wl-daily-kcal-legend span::before { content:''; width:9px; height:9px; border-radius:3px; }
.wl-daily-kcal-legend .is-intake::before { background:var(--wl-accent); }
.wl-daily-kcal-legend .is-burn::before { background:#3fa88f; }
.wl-daily-kcal-chart { display:flex; align-items:flex-end; gap:6px; height:140px; padding-bottom:2px; overflow-x:auto; }
.wl-daily-kcal-col { display:flex; flex-direction:column; align-items:center; gap:5px; flex:1 0 26px; height:100%; }
.wl-daily-kcal-pair { display:flex; align-items:flex-end; gap:2px; width:100%; height:100%; }
.wl-daily-kcal-pair i { flex:1; min-height:2px; border-radius:3px 3px 0 0; }
.wl-daily-kcal-pair .is-intake { background:var(--wl-accent); }
.wl-daily-kcal-pair .is-burn { background:#3fa88f; }
.wl-daily-kcal-col span { color:var(--wl-text-muted); font-size:10px; white-space:nowrap; }
.wl-daily-kcal-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:12px; padding-top:12px; border-top:1px solid var(--wl-border-light); }
.wl-daily-kcal-summary article span { display:block; color:var(--wl-text-muted); font-size:11px; }
.wl-daily-kcal-summary article b { font-size:18px; }
.wl-daily-kcal-summary article small { color:var(--wl-text-muted); font-size:11px; font-weight:400; }

/* ===== 能量设置弹窗 ===== */
.wl-daily-energy-card { width:min(100%,560px); max-height:calc(100vh - 60px); overflow-y:auto; }
.wl-daily-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:11px; margin-top:14px; }
.wl-daily-form-grid label { display:flex; flex-direction:column; gap:5px; color:var(--wl-text-secondary); font-size:12px; }
.wl-daily-form-grid input, .wl-daily-form-grid select { box-sizing:border-box; height:36px; padding:0 10px; border:1px solid var(--wl-border); border-radius:9px; background:var(--wl-bg-card); color:var(--wl-text); font:inherit; font-size:13px; }
.wl-daily-form-grid input:focus, .wl-daily-form-grid select:focus { border-color:var(--wl-accent); outline:none; }
.wl-daily-form-wide { grid-column:1 / -1; }
.wl-daily-form-macro { grid-template-columns:repeat(3,1fr); }
.wl-daily-form-sub { margin-top:18px; padding-top:14px; border-top:1px solid var(--wl-border-light); color:var(--wl-text); font-size:13px; font-weight:700; }
.wl-daily-form-hint { margin:9px 0 0!important; color:var(--wl-text-muted); font-size:11px!important; line-height:1.6; }

@media (max-width:700px) {
    .wl-daily-page { padding:20px 13px 42px; }
    .wl-daily-notice { align-items:flex-start; flex-direction:column; gap:2px; }
    .wl-daily-workspace-heading { align-items:flex-start; flex-direction:column; gap:5px; margin-top:20px; }
    .wl-daily-workspace-heading p { text-align:left; }
    .wl-daily-date-field { width:100%; }
    .wl-daily-date-field input { width:100%; }
    .wl-daily-collection-summary { align-items:flex-start; gap:5px 13px; }
    .wl-daily-collection-summary em { flex-basis:100%; margin-left:0; }
    .wl-daily-filter-themes, .wl-daily-filter-ranges { width:100%; overflow-x:auto; flex-wrap:nowrap; padding-bottom:2px; }
    .wl-daily-filter-chip { flex-shrink:0; }
    .wl-daily-filter-themes::before, .wl-daily-filter-ranges::before { position:sticky; left:0; flex-shrink:0; padding:6px 4px 6px 0; background:var(--wl-bg-card); }

    .wl-daily-head-actions { width:100%; }
    .wl-daily-head-actions .wl-btn { flex:1; }
    .wl-daily-energy { padding:15px 14px; }
    .wl-daily-energy-main { grid-template-columns:1fr; gap:16px; justify-items:center; }
    .wl-daily-energy-side { width:100%; }
    .wl-daily-macros { grid-template-columns:1fr; gap:10px; }
    .wl-daily-energy-slots { grid-template-columns:1fr 1fr; }
    .wl-daily-ledger { gap:6px; }
    .wl-daily-slot-tabs { grid-template-columns:1fr 1fr; }
    .wl-daily-meal-actions { flex-direction:column; align-items:stretch; }
    .wl-daily-dish-head { display:none; }
    .wl-daily-dish-row { grid-template-columns:1fr 1fr 1fr; gap:5px; padding:9px 10px; }
    .wl-daily-dish-row .wl-daily-dish-name { grid-column:1 / 3; }
    .wl-daily-dish-row input { border-color:var(--wl-border); }
    .wl-daily-dish-del { justify-self:end; }
    .wl-daily-kcal-summary { grid-template-columns:1fr 1fr; }
    .wl-daily-form-grid { grid-template-columns:1fr; }
    .wl-daily-form-macro { grid-template-columns:repeat(3,1fr); }
    .wl-daily-head { align-items:flex-start; flex-direction:column; }
    .wl-daily-head h1 { font-size:26px; }
    .wl-daily-overview { grid-template-columns:1fr 1fr; }
    .wl-daily-grid { grid-template-columns:1fr; }
    .wl-daily-panel-head { align-items:flex-start; }
    .wl-daily-panel-head > small { text-align:left; }
    .wl-daily-photo-list { grid-template-columns:repeat(3,1fr); }
    .wl-daily-theme-cards { grid-template-columns:1fr; gap:10px; }
    .wl-daily-theme-card { padding:13px; }
    .wl-daily-card-hint { min-height:0; }
    .wl-daily-card-photos { grid-template-columns:repeat(3,1fr); }
    .wl-daily-meal-compact { grid-template-columns:minmax(52px,1fr) auto 55px; }
    .wl-daily-meal-compact input[data-card-meal-note] { grid-column:1 / -1; }
    .wl-daily-metrics { grid-template-columns:1fr 1fr; }
    .wl-daily-weekdays, .wl-daily-calendar { gap:4px; }
    .wl-daily-day, .wl-daily-calendar-blank { min-height:44px; border-radius:8px; }
    .wl-daily-day { padding:5px 6px; }
    .wl-daily-entry-photos { grid-template-columns:repeat(3,1fr); }
    .wl-daily-theme-extra { grid-template-columns:1fr; padding:12px; gap:13px; }
    .wl-daily-trend .wl-global-select-trigger { width:min(60vw,188px); }
    .wl-daily-compare-picker { grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr); gap:6px; }
    .wl-daily-dialog { align-items:end; padding:12px; }
    .wl-daily-dialog-card { width:100%; padding:22px 18px; border-radius:18px; }
    .wl-daily-dialog-actions { justify-content:stretch; }
    .wl-daily-dialog-actions .wl-btn { flex:1; }
}

/* 触屏设备：去掉 hover 抬升的 transform，避免卡片在滚动/键盘弹起时
   因合成层重绘而整片闪烁；拖拽排序仅在鼠标端启用（见 daily.js）。 */
@media (hover: none), (pointer: coarse) {
    .wl-daily-theme-card,
    .wl-daily-card-drag,
    .wl-daily-mood-score,
    .wl-daily-day {
        transition: border-color .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
    }
    .wl-daily-theme-card:hover,
    .wl-daily-card-drag:hover,
    .wl-daily-mood-score:hover,
    .wl-daily-day:hover { transform: none; }
}
