/* 皮肤 float-card · 白卡浮彩幕（默认，白晨 10-13 定）。照原型 skins/float-card/skin.css 搬：令牌一字不改，规则改成 wb- 类名。
   一句话：背后是一块缓慢流动的杏桃色彩幕，前面的卡一律干净的白，浮在幕上。彩色只在卡外（彩幕）与信号圆点里，卡区内不透彩幕色。
   字号六档 12／14／16／20／28／44；标签只有一种手法：灰底 8% 的小胶囊（状态的胶囊里多一个圆点）。
   作用范围：[data-skin="float-card"] .wb-root（见 theme/tokens.css 文件头）；暗色单独设计，写在 [data-theme="dark"] 那一段。 */

/* ============ 一、令牌（亮） ============ */
[data-skin="float-card"] .wb-root {
  /* 字体、字号、字重、图标大小四套共用，在 theme/tokens.css（定稿取值，S-37）；大数字的字体也同 theme/tokens.css（SF 圆体，定稿 app.css:8） */

  /* 彩幕：杏桃同色系（色相 40°～80°，C* ≤ 12），只在卡外 */
  --fc-base: #F5E5D8; --fc-cream: #FFFAF4; --fc-blush: #EAD0C5; --fc-apricot: #F8E8D7;
  /* 卡与中性：暖白卡（不用纯白，免得在杏色上显塑料） */
  --bg: var(--fc-base); --bg-2: #F6F3EF;
  --surface: #FFFDFA; --surface-2: #F6F3EF; --surface-3: #EDEAE5; --surface-raised: #FFFDFA;
  --pocket: #F6F3EF; --pocket-2: #FFFDFA;
  --desk-bg: var(--fc-base);
  --fc-plate: rgba(31, 30, 27, .07);
  --topbar-bg: rgba(255, 255, 255, .55);
  --scrim: rgba(252, 249, 245, .58);   /* 浅色遮罩＝一层白雾，把桌面往后推；不用褐色压暗 */
  --ink: #1F1E1B; --ink-2: #4A4842; --ink-3: #6B6860;
  --line: rgba(31, 30, 27, .08); --line-strong: rgba(31, 30, 27, .15);
  --accent: #1F1E1B; --accent-hover: #34322D; --on-accent: #FFFFFF;
  --accent-soft: rgba(31, 30, 27, .055); --accent-line: rgba(31, 30, 27, .24);
  /* 状态信号：圆点＋文字色；-bg 只是 ≤ 8% 的淡渗 */
  --wait-dot: #D98A2B;  --wait-ink: #9A5A12;  --wait-bg: color-mix(in srgb, #D98A2B 8%, #FFFFFF);
  --late-dot: #CF4B34;  --late-ink: #B0392A;  --late-bg: color-mix(in srgb, #CF4B34 7%, #FFFFFF);
  --today-dot: #3C7FC0; --today-ink: #2C64A0; --today-bg: color-mix(in srgb, #3C7FC0 7%, #FFFFFF);
  --done-dot: #389A60;  --done-ink: #24784A;  --done-bg: color-mix(in srgb, #389A60 7%, #FFFFFF);
  --quiet-dot: #B3AFA5; --quiet-ink: #6B6860; --quiet-bg: #F6F5F3;
  --on-dot: #FFFFFF;
  --mark: rgba(217, 138, 43, .2);
  --changed-ring: rgba(31, 30, 27, .16);   /* 界面规范 2.3：原 .3 叠在柔影卡上像黑框 */
  /* 提示条：定稿原型 notify.css 第七轮的暖白实底、褐色短影（贴边细线＋近影＋一小片柔影），叠在后面的两档暖色 */
  --toast-bg: var(--ntf-surface); --toast-fg: var(--ink);
  --edit-bar-bg: #1F1E1B; --edit-bar-fg: #FFFFFF;   /* 编辑态浮条：评审改版 float-card/skin.css:61 的提示条色 */
  --edit-bar-rm: var(--late-dot);   /* 浮条 × 悬停的红底（float-card/skin.css:405） */
  --toast-shadow: var(--ntf-sh-toast);
  --toast-btn: rgba(31, 30, 27, .07); --toast-d1: #F7F1EA; --toast-d2: #F0E7DD;
  --toast-btn-hover: rgba(31, 30, 27, .11); --toast-file-dot: #C98A4E; --toast-file-bg: var(--pv-tint); --toast-file-ink: var(--ink-2);   /* 定稿 notify.css:30、35 */
  /* 横幅（通知第 2 层，原型 notify.css 的 --ntf-surface、--ntf-sh-bn 与叠在后面两条的 data-d）：比浮层阴影短、淡 */
  --banner-bg: var(--ntf-surface); --banner-bg-d1: #F7F1EA; --banner-bg-d2: #F0E7DD;
  --banner-shadow: var(--ntf-sh-bn);
  --banner-ic-ring: inset 0 0 0 1px rgba(44, 100, 160, .08); --banner-ic-ring-wait: inset 0 0 0 1px rgba(154, 90, 18, .10);
  --banner-x-hover: var(--fc-plate); --banner-grab: rgba(31, 30, 27, .14);   /* 定稿 notify.css:62、64、71、91 */
  --ext-bg: #EDEAE5; --ext-fg: #4A4842;
  /* 圆角 22；卡下柔影（模糊 28、约 8%），偏暖，像白纸浮在杏色上 */
  --radius-card: 22px; --radius-panel: 24px; --radius-ctl: 14px; --radius-sm: 10px; --radius-xs: 7px;
  --radius-btn: 999px; --radius-pill: 999px;
  --shadow-card: 0 1px 2px rgba(90, 60, 40, .05), 0 12px 28px -8px rgba(90, 60, 40, .10);
  --shadow-hover: 0 2px 4px rgba(90, 60, 40, .05), 0 22px 40px -12px rgba(90, 60, 40, .18);
  --shadow-pop: 0 2px 6px rgba(70, 48, 34, .08), 0 30px 60px -18px rgba(70, 48, 34, .32);
  --shadow-inset: inset 0 0 0 1px var(--line);
  /* 顶栏的高、间距、内边距四套共用（theme/tokens.css，定稿 app.css:64-84）；这里只有材质 */
  --top-border: 1px solid rgba(255, 255, 255, .5); --top-filter: blur(20px) saturate(1.1);
  --logo-bg: var(--ink); --logo-fg: var(--on-accent); --logo-radius: 9px;
  --well-bg: rgba(255, 255, 255, .6); --well-shadow: none;
  /* 桌面留白、网格间距、卡内距与卡头字号四套共用（theme/tokens.css，定稿取值） */
  --card-bg: var(--surface); --card-shadow: var(--shadow-card); --card-shadow-hover: var(--shadow-hover);
  --card-title-color: var(--ink); --card-icon-color: var(--ink-2);
  /* 对话框（原型 .dlg）：与详情层同一张暖白卡，圆角 24；遮罩比详情层深一点（.dlg-scrim） */
  --modal-bg: var(--detail-bg); --modal-shadow: var(--detail-shadow); --modal-radius: 24px;
  --modal-scrim: rgba(74, 48, 32, .22); --modal-scrim-filter: blur(10px) saturate(1.08);
  --sheet-bg: var(--surface-raised); --sheet-shadow: var(--shadow-pop); --sheet-radius: var(--radius-panel);
  /* 详情层（原型 app.css 第十三节 --pv-*）：暖褐微染＋10px 模糊的遮罩，暖白实底卡左上带一抹杏色，阴影三层带褐色；图标块杏色淡底 */
  --detail-scrim: var(--pv-scrim); --detail-scrim-filter: blur(var(--pv-blur)) saturate(1.08);
  --detail-bg: radial-gradient(120% 70% at 0% 0%, rgba(248, 232, 215, .55), rgba(248, 232, 215, 0) 55%), var(--pv-surface);
  --detail-surface: var(--pv-surface); --detail-filter: none;
  --detail-shadow: var(--pv-sh-layer);
  --detail-tint: var(--pv-tint); --detail-tint-ring: inset 0 0 0 1px rgba(154, 90, 18, .08);
  --detail-aside: rgba(31, 30, 27, .035);
  --detail-close-bg: var(--fc-plate); --detail-close-hover: rgba(31, 30, 27, .12);
  --detail-grab: rgba(31, 30, 27, .18);
  --detail-edge-top: 0 10px 18px -16px rgba(70, 48, 34, .35);
  --detail-edge-foot: 0 -12px 20px -18px rgba(70, 48, 34, .4);
  --tile-bg: var(--surface-2); --tile-radius: 18px; --tile-icon-color: var(--ink-2);
  --btn-bg: var(--fc-plate); --btn-shadow: none;
  --btn-pri-bg: var(--accent); --btn-pri-fg: var(--on-accent);
  --seg-on-shadow: 0 1px 3px rgba(90, 60, 40, .12);
  --backdrop: linear-gradient(150deg, #F7EADF 0%, var(--fc-base) 45%, #F3E1D6 100%);
  color-scheme: light;
}

/* ============ 一′、定稿新增的颜色令牌（S-02）：原值照 V1 定稿原型，名字也照定稿；上面的组件令牌（--detail-*、--toast-*、--banner-*）
   与下面业务段的 --bn-*、--ai-*、--dy-* 都引用它们，只在这里改一处。暗色那一套全是推断（定稿只有浮彩亮），见下一段。 ============ */
[data-skin="float-card"] .wb-root {
  /* 弹窗体系（app.css:1115-1121） */
  --pv-scrim: rgba(74, 48, 32, .16); --pv-surface: #FFFDFA; --pv-tint: color-mix(in srgb, var(--fc-apricot) 62%, #FFFFFF);
  --pv-sh-menu: 0 0 0 1px rgba(70, 48, 34, .07), 0 2px 4px rgba(70, 48, 34, .05), 0 14px 32px -10px rgba(70, 48, 34, .24);
  --pv-sh-layer: 0 0 0 1px rgba(70, 48, 34, .06), 0 2px 6px rgba(70, 48, 34, .06), 0 22px 44px -18px rgba(70, 48, 34, .22), 0 60px 120px -36px rgba(70, 48, 34, .30);
  /* 通知（notify.css:10-14） */
  --ntf-surface: #FFFDFA;
  --ntf-sh-toast: 0 0 0 1px rgba(70, 48, 34, .08), 0 1px 2px rgba(70, 48, 34, .06), 0 12px 28px -12px rgba(70, 48, 34, .30);
  --ntf-sh-bn: 0 0 0 1px rgba(70, 48, 34, .07), 0 2px 4px rgba(70, 48, 34, .05), 0 18px 40px -14px rgba(70, 48, 34, .30);
  /* 简报提议单的光边、草案字色与淡底、浮起投影（brief.css:16-30） */
  --e1: #E9AE86; --e2: #E6A0B2; --e3: #B7A3DC; --r1: #E39F78; --r2: #DB8EA4; --r3: #A994D8; --e-ink: #96566A;
  --e-tint: linear-gradient(115deg, color-mix(in srgb, var(--e1) 16%, #FFFFFF) 0%, color-mix(in srgb, var(--e2) 14%, #FFFFFF) 50%, color-mix(in srgb, var(--e3) 16%, #FFFFFF) 100%);
  --e-wash: linear-gradient(115deg, color-mix(in srgb, var(--e1) 6%, #FFFFFF) 0%, color-mix(in srgb, var(--e2) 5%, #FFFFFF) 50%, color-mix(in srgb, var(--e3) 7%, #FFFFFF) 100%);
  --shadow-lift: 0 1px 2px rgba(70, 48, 34, .05), 0 16px 32px -14px rgba(70, 48, 34, .16), 0 42px 84px -30px rgba(70, 48, 34, .30);
  --shadow-edge: 0 0 0 1px rgba(255, 255, 255, .75), 0 0 16px -3px color-mix(in srgb, var(--e2) 45%, transparent), var(--shadow-lift);
  /* 收工（daily.css:4-5） */
  --dusk: #C9782A; --dusk-soft: color-mix(in srgb, #D98A2B 12%, #FFFFFF); --dusk-line: color-mix(in srgb, #D98A2B 30%, transparent);
  --sc-paper: linear-gradient(165deg, #FFFDF9 0%, #FFF6EC 48%, #F9E6D8 100%);
}

/* ============ 二、令牌（暗）：近黑底上一块深暮色（蓝灰、青灰）彩幕；卡是同一冷调的深石墨，靠高光边与影浮起 ============ */
[data-skin="float-card"][data-theme="dark"] .wb-root {
  /* 详情层：原型只给了浮彩亮色，暗色保持浮层的底、遮罩与阴影（暗色未逐屏精调） */
  --detail-scrim: var(--pv-scrim); --detail-scrim-filter: none; --detail-bg: var(--pv-surface); --detail-surface: var(--pv-surface); --detail-filter: blur(30px) saturate(1.1);
  --detail-shadow: var(--pv-sh-layer); --detail-tint: var(--pv-tint); --detail-tint-ring: var(--shadow-inset); --detail-aside: var(--pocket);
  --detail-close-bg: var(--fc-plate); --detail-close-hover: rgba(235, 240, 250, .12); --detail-grab: var(--line-strong);
  --detail-edge-top: 0 10px 18px -16px rgba(0, 0, 0, .6); --detail-edge-foot: 0 -12px 20px -18px rgba(0, 0, 0, .7);
  --fc-base: #0E1012;
  --bg: #0E1012; --bg-2: #16181B;
  --surface: #1D2024; --surface-2: #24272B; --surface-3: #2B2E33; --surface-raised: #26292D;
  --pocket: #24272B; --pocket-2: #1D2024;
  --desk-bg: #0E1012;
  --fc-plate: rgba(235, 240, 250, .07);
  --topbar-bg: rgba(14, 16, 18, .55);
  --scrim: rgba(4, 6, 10, .6);
  --ink: #ECEDEF; --ink-2: #B5B8BE; --ink-3: #A0A4AB;   /* 界面规范 1.1：对底、卡、浮层与浮层上的 --fc-plate、徽章底（白 8%）都 ≥ 4.5，最差 4.64（原 #8C9097 在徽章底上 3.6） */
  --line: rgba(235, 240, 250, .08); --line-strong: rgba(235, 240, 250, .15);
  --fc-hi: rgba(235, 240, 250, .09);
  --accent: #ECEDEF; --accent-hover: #FFFFFF; --on-accent: #121418;
  --accent-soft: rgba(235, 240, 250, .06); --accent-line: rgba(235, 240, 250, .3);
  --wait-dot: #F2B33D;  --wait-ink: #F2B33D;  --wait-bg: color-mix(in srgb, #F2B33D 7%, #1D2024);
  --late-dot: #E5604A;  --late-ink: #F08672;  --late-bg: color-mix(in srgb, #E5604A 7%, #1D2024);   /* 界面规范 1.1：原 #EE7A66 在浮层上的徽章底（白 8%）只有 4.21，补到 4.62 */
  --today-dot: #5AA0E8; --today-ink: #7DB4EE; --today-bg: color-mix(in srgb, #5AA0E8 8%, #1D2024);
  --done-dot: #4CC38A;  --done-ink: #6BCF9C;  --done-bg: color-mix(in srgb, #4CC38A 8%, #1D2024);
  --quiet-dot: #6C7078; --quiet-ink: #B5B8BE; --quiet-bg: #24272B;
  --on-dot: #121418;
  --mark: rgba(255, 250, 238, .13);
  --changed-ring: rgba(236, 237, 239, .24);
  --toast-bg: var(--ntf-surface); --toast-fg: var(--ink);
  --edit-bar-bg: #ECEDEF; --edit-bar-fg: #121418;   /* float-card/skin.css:138 */
  --toast-shadow: var(--ntf-sh-toast);
  --toast-btn: rgba(235, 240, 250, .09); --toast-d1: #222528; --toast-d2: #1E2124;
  --toast-btn-hover: rgba(235, 240, 250, .14);   /* 推断：亮色 .07→.11 的同一档加深 */
  --banner-x-hover: var(--fc-plate);
  /* 横幅（通知第 2 层）：原型只给了浮彩亮色（notify.css 的 --ntf-surface、--ntf-sh-bn、data-d），这一套保持浮层的底与阴影 */
  --banner-bg: var(--ntf-surface); --banner-bg-d1: var(--surface-2); --banner-bg-d2: var(--surface-3); --banner-shadow: var(--ntf-sh-bn);
  --banner-ic-ring: var(--shadow-inset); --banner-ic-ring-wait: var(--shadow-inset); --banner-grab: var(--line-strong);   /* 推断：亮色的褐／蓝细描边在暗底上换成浮彩暗的内描边 */
  --ext-bg: #2B2E33; --ext-fg: #B5B8BE;
  --shadow-card: inset 0 1px 0 var(--fc-hi), 0 0 0 1px rgba(235, 240, 250, .06), 0 18px 36px -14px rgba(0, 0, 0, .7);
  --shadow-hover: inset 0 1px 0 rgba(235, 240, 250, .12), 0 0 0 1px rgba(235, 240, 250, .1), 0 26px 48px -14px rgba(0, 0, 0, .8);
  --shadow-pop: inset 0 1px 0 rgba(235, 240, 250, .1), 0 0 0 1px rgba(235, 240, 250, .08), 0 30px 64px -16px rgba(0, 0, 0, .85);
  --top-border: 1px solid rgba(235, 240, 250, .06);
  --well-bg: rgba(235, 240, 250, .06);
  --modal-bg: var(--surface-raised); --modal-shadow: var(--shadow-pop); --modal-radius: var(--radius-panel);
  --modal-scrim: var(--scrim); --modal-scrim-filter: blur(6px);
  --tile-bg: var(--surface);
  --backdrop: #0E1012;
  color-scheme: dark;
}

/* 浮彩暗：定稿新增令牌的推断值（S-02，定稿没画暗色；推法照附录 B 第四节：中性色并进彩幕冷调、不出现冷底暖卡、遮罩不用褐色、
   信号色 L* ≥ 57；每个值验收时给白晨看）。杏桃三色也换成暗色——定稿的 --pv-tint 等引用它们，不换会在暗色里漏出亮杏色（S-06）。 */
[data-skin="float-card"][data-theme="dark"] .wb-root {
  --fc-cream: #22252A; --fc-blush: #24272B; --fc-apricot: #26292D;   /* 推断：彩幕暗色不用它们（写死冷调三层），只防引用漏色 */
  --pv-scrim: var(--scrim); --pv-surface: var(--surface-raised); --pv-tint: var(--fc-plate);   /* 推断 */
  --pv-sh-layer: inset 0 1px 0 rgba(235, 240, 250, .1), 0 0 0 1px rgba(235, 240, 250, .08), 0 30px 64px -16px rgba(0, 0, 0, .85);   /* 推断：＝浮彩暗的浮层影 */
  --pv-sh-menu: inset 0 1px 0 rgba(235, 240, 250, .1), 0 0 0 1px rgba(235, 240, 250, .08), 0 14px 32px -10px rgba(0, 0, 0, .7);   /* 推断 */
  --ntf-surface: var(--surface-raised);   /* 推断：提示条照定稿的浅底手法推一版深色底（白晨 10-18 定） */
  --ntf-sh-toast: 0 0 0 1px rgba(235, 240, 250, .08), 0 12px 28px -12px rgba(0, 0, 0, .7);   /* 推断 */
  --ntf-sh-bn: 0 0 0 1px rgba(235, 240, 250, .08), 0 18px 40px -14px rgba(0, 0, 0, .75);   /* 推断 */
  --e1: #E9AE86; --e2: #E6A0B2; --e3: #B7A3DC;   /* 推断：保留原色（L* ≥ 70，只在 1px 光边与小光斑上，属信号） */
  --r1: var(--e1); --r2: var(--e2); --r3: var(--e3);   /* 推断：暗底上描边要亮，取本色不压深 */
  --e-ink: #E0A0B5;   /* 推断：对 #26292D 6.86:1（原 #96566A 只有 2.67:1） */
  --e-tint: linear-gradient(115deg, color-mix(in srgb, var(--e1) 20%, var(--surface-raised)) 0%, color-mix(in srgb, var(--e2) 18%, var(--surface-raised)) 50%, color-mix(in srgb, var(--e3) 20%, var(--surface-raised)) 100%);   /* 推断 */
  --e-wash: linear-gradient(115deg, color-mix(in srgb, var(--e1) 10%, var(--surface-raised)) 0%, color-mix(in srgb, var(--e2) 9%, var(--surface-raised)) 50%, color-mix(in srgb, var(--e3) 11%, var(--surface-raised)) 100%);   /* 推断 */
  --shadow-lift: 0 1px 2px rgba(0, 0, 0, .4), 0 16px 32px -14px rgba(0, 0, 0, .6), 0 42px 84px -30px rgba(0, 0, 0, .8);   /* 推断 */
  --shadow-edge: 0 0 0 1px rgba(235, 240, 250, .16), 0 0 16px -3px color-mix(in srgb, var(--e2) 45%, transparent), var(--shadow-lift);   /* 推断 */
  --dusk: #E8A04C; --dusk-soft: color-mix(in srgb, #E8A04C 12%, #1D2024); --dusk-line: color-mix(in srgb, #E8A04C 30%, transparent);   /* 推断：L* 71，对卡 7.45:1 */
  --sc-paper: var(--surface-raised);   /* 推断：不放暖色渐变 */
}

/* ============ 三、彩幕（S-07；theme/Backdrop.tsx 放三团大色场，照定稿 app.css:54-61：位置、渐变、14／12／16 秒一个来回、漂移路径；
   暗色只换三团颜色（评审改版 float-card/skin.css:170-172），时长与路径同亮色——同一款皮肤的动效不分亮暗） ============ */
[data-skin="float-card"] .wb-root {
  & .wb-fc-veil { position: absolute; inset: 0; overflow: hidden; }
  & .wb-fc-veil i { position: absolute; display: block; border-radius: 50%; will-change: transform; }
  & .wb-fc-veil .a { left: -30%; top: -40%; width: 95%; height: 120%; background: radial-gradient(closest-side, var(--fc-cream) 0%, color-mix(in srgb, var(--fc-cream) 55%, transparent) 45%, transparent 100%); animation: wb-fc-a 14s ease-in-out infinite alternate; }
  & .wb-fc-veil .b { right: -35%; top: -20%; width: 100%; height: 130%; background: radial-gradient(closest-side, var(--fc-blush) 0%, color-mix(in srgb, var(--fc-blush) 50%, transparent) 50%, transparent 100%); animation: wb-fc-b 12s ease-in-out infinite alternate; }
  & .wb-fc-veil .c { left: 5%; bottom: -55%; width: 110%; height: 110%; background: radial-gradient(closest-side, var(--fc-apricot) 0%, color-mix(in srgb, var(--fc-apricot) 50%, transparent) 50%, transparent 100%); animation: wb-fc-c 16s ease-in-out infinite alternate; }
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  & .wb-fc-veil .a { background: radial-gradient(closest-side, rgba(40, 58, 78, .85) 0%, rgba(40, 58, 78, .35) 50%, transparent 100%); }
  & .wb-fc-veil .b { background: radial-gradient(closest-side, rgba(26, 56, 60, .8) 0%, rgba(26, 56, 60, .3) 50%, transparent 100%); }
  & .wb-fc-veil .c { background: radial-gradient(closest-side, rgba(34, 40, 58, .7) 0%, rgba(34, 40, 58, .25) 55%, transparent 100%); }
}
@keyframes wb-fc-a { from { transform: translate3d(-8%, -6%, 0); } to { transform: translate3d(20%, 16%, 0) scale(1.1); } }
@keyframes wb-fc-b { from { transform: translate3d(8%, -4%, 0); } to { transform: translate3d(-22%, 12%, 0) scale(.92); } }
@keyframes wb-fc-c { from { transform: translate3d(-8%, 6%, 0); } to { transform: translate3d(14%, -14%, 0) scale(1.08); } }

/* ============ 四、顶栏与首屏（S-10～S-12；定稿 app.css:64-84）：版式（logo 区、时钟、角标、问候的尺寸与间距）四套共用，在
   features/shell/shell.css、brand.css、features/desk/desk.css；这里只有颜色 ============ */
[data-skin="float-card"] .wb-root {
  /* 悬停只换底、不加过渡，字色不变（定稿 .tbtn:hover:not(:disabled)，app.css:79） */
  & :is(.wb-tbtn, .wb-top-me):is(:hover, [aria-expanded="true"]) { background: rgba(255, 255, 255, .55); color: var(--ink-2); }
  & .wb-top-me { color: var(--ink-2); }
  /* 头像圆（定稿 .av，app.css:84）：浅灰底、墨色首字；卡里别处的头像仍是下面一节的灰胶囊底 */
  & .wb-top-me .wb-avatar { background: var(--surface-3); color: var(--ink); }
  & .wb-wait-btn.has { color: var(--ink); }
  & .wb-wait-btn.has:is(:hover, [aria-expanded="true"]) { color: var(--ink); }
  /* 计数角标（定稿 .wait-btn .n，app.css:83）。字色不照定稿的白：白字压 #D98A2B 只有 2.76:1（清单 S-06 要 ≥ 4.5），
     改法照原型自己的手法——评审改版浮彩暗（float-card/skin.css:186）与暗夜（night-glass/skin.css:381）都是深字压同一个橙点，6.05:1 */
  & .wb-n { background: var(--wait-dot); color: var(--ink); }
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  & :is(.wb-tbtn, .wb-top-me):is(:hover, [aria-expanded="true"]) { background: rgba(235, 240, 250, .07); }
  & .wb-n { color: #121312; }
}

/* ============ 五、卡片与状态信号：卡头图标块的底色、状态点的晕（位置四套共用：图标右上角，desk/card.css）。悬停上抬、卡头尺寸四套共用（desk/card.css） ============ */
[data-skin="float-card"] .wb-root {
  /* 卡头图标块（定稿 .ch-ic，app.css:268）：浅灰底、二级墨色；尺寸在 desk/card.css */
  & .wb-card-ico { background: var(--surface-2); color: var(--ink-2); }
  /* 状态点带一圈同色晕（原型 app.css 的 .dot：3 像素、18%） */
  & .wb-card-dot { box-shadow: 0 0 0 3px color-mix(in srgb, var(--sd) 18%, transparent); }
  & .wb-card-chg { background: transparent; box-shadow: inset 0 0 0 1.5px var(--ink-3); }
  & .wb-add-tile { background: rgba(255, 255, 255, .32); box-shadow: none; border: 1.5px dashed rgba(31, 30, 27, .16); color: var(--ink-2); }
  & .wb-add-tile:hover { background: rgba(255, 255, 255, .6); color: var(--ink); }
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  & .wb-add-tile { background: rgba(235, 240, 250, .03); border-color: rgba(235, 240, 250, .14); }
}

/* 标签（S-30；定稿 .tag／.tag.st.*，app.css:102-109）：只有一种手法——墨 7% 灰底小胶囊，高 22；表示状态的只换字色，不带圆点
   （要圆点时在标签前另放一颗 Dot，定稿卡头「逾期 2」就是这样）。浮彩暗色同一手法，只换颜色。 */
[data-skin="float-card"] .wb-root {
  & .wb-badge { background: var(--fc-plate); box-shadow: none; color: var(--ink-2); height: 22px; padding: 0 9px; gap: 5px; border-radius: 999px; font-size: 12px; font-weight: 500; vertical-align: 2px; }
  & .wb-badge.is-conn { height: 20px; }
  & .wb-badge--ok { color: var(--done-ink); }
  & :is(.wb-badge--warn, .wb-badge--bad) { color: var(--late-ink); }
  & .wb-badge--decide { color: var(--wait-ink); }
  & .wb-badge--info { color: var(--today-ink); }
  & .wb-src { background: rgba(31, 30, 27, .07); color: var(--ink-2); border-radius: 999px; }
  /* 来源插件标（卡头「腾讯会议 · 已连接」「飞书日历 · 已连接」）：灰胶囊，高 20（界面规范 2.2） */
  & :is(.wb-mt-conn, .wb-cal-conn) { height: 20px; padding: 0 8px; border-radius: 999px; background: rgba(31, 30, 27, .07); color: var(--ink-2); }
  & .wb-ext { background: var(--surface-3); color: var(--ink-2); }
  & .wb-avatar { background: var(--fc-plate); color: var(--ink-2); }
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  & :is(.wb-badge, .wb-src, .wb-mt-conn, .wb-cal-conn) { background: rgba(235, 240, 250, .08); }
}

/* ============ 六、卡内细节 ============ */
[data-skin="float-card"] .wb-root {
  & .wb-ci:hover { background: var(--surface-2); }
  & .wb-bign b { font-family: var(--font-num); font-weight: 650; color: var(--ink); }
  & .wb-due--late { color: var(--late-ink); font-weight: 600; }
  & .wb-ck { border-radius: 7px; background: transparent; }
  & .wb-ck[aria-checked="true"] { background: var(--done-dot); color: #FFFFFF; }
  & .wb-start-pt { background: var(--surface-2); border: 0; }
  & :is(.wb-notice, .wb-notice--warn, .wb-notice--decide) { background: var(--surface-2); color: var(--ink-2); }
  & .wb-notice > .wb-ico { color: var(--today-dot); }
  & .wb-notice--warn > .wb-ico { color: var(--late-dot); }
  & .wb-notice--decide > .wb-ico { color: var(--wait-dot); }
}

/* ============ 七、按钮：胶囊。实心墨色只给最后那一下决定；卡里其他动作是灰底胶囊 ============ */
[data-skin="float-card"] .wb-root {
  & .wb-btn:hover { background: rgba(31, 30, 27, .11); }   /* 定稿 app.css:122 */
  & .wb-btn--pri:hover { background: var(--accent-hover); }
  & .wb-btn--solid:hover { background: var(--btn-solid-hover); }
  /* 界面规范总则 4：桌面、卡片、下拉面板里没有实心主按钮；横幅的主动作与简报落款「采用并写入日历」照原型是实心（例外，D-33） */
  & :is(.wb-card, .wb-pop) .wb-btn--pri { background: var(--fc-plate); color: var(--ink); }
  & :is(.wb-card, .wb-pop) .wb-btn--pri:hover { background: rgba(31, 30, 27, .1); }
  & .wb-btn--ghost { color: var(--ink-2); background: transparent; }
  & .wb-btn--ghost:hover { background: var(--fc-plate); }   /* 定稿 app.css:133：悬停只加底，字色不变 */
  & .wb-seg { background: var(--surface-2); }
  & .wb-seg button[aria-pressed="true"] { background: var(--surface); }
  & :focus-visible:not([tabindex="-1"]) { outline: 2px solid var(--ink); outline-offset: 2px; }
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  & .wb-btn:hover { background: rgba(235, 240, 250, .1); }
  & .wb-btn--pri:hover { background: var(--accent-hover); }
  & .wb-btn--solid:hover { background: var(--btn-solid-hover); }
  & :is(.wb-card, .wb-pop) .wb-btn--pri:hover { background: rgba(235, 240, 250, .1); }
  & .wb-seg button[aria-pressed="true"] { background: var(--surface-3); }
}

/* ============ 八、详情层、弹层、面板：遮罩是一层白雾（暗色压暗），面板仍是白卡 ============ */
[data-skin="float-card"] .wb-root {
  /* 下拉面板（S-21，定稿 .pd 与 .pd .pop-h、.pop-b，app.css:375-388、1210-1211）：头与身的尺寸四套共用（features/overlay/overlay.css），这里只有颜色 */
  & .wb-sheet-h > .wb-ico { color: var(--ink-2); }
  & .wb-pop--sheet > .wb-sheet-h > .wb-btn--icon { background: var(--fc-plate); }
  /* 气泡菜单（S-22，定稿 .pop.menu 与 .menu-i，app.css:1198-1205）：暖白底、三层褐影，220 毫秒从锚点那一角展开 */
  --menu-bg: var(--pv-surface); --menu-shadow: var(--pv-sh-menu);
  & .wb-pop--menu { animation: wb-pv-menu 220ms var(--pv-ease); }
  & .wb-pop--menu.is-up { animation-name: wb-pv-menu-up; }
  & .wb-menu-item { border-radius: 10px; transition: background 120ms; }
  & .wb-mtile:hover { background: var(--surface-3); }
  & .wb-mtile > .wb-ico { border-radius: 14px; background: var(--surface); color: var(--ink-2); box-shadow: 0 1px 2px rgba(90, 60, 40, .06), 0 6px 14px -6px rgba(90, 60, 40, .16); }
  & .wb-mtile.is-on { box-shadow: inset 0 0 0 1.5px var(--ink); background: var(--surface-2); }
  & .wb-on-desk.is-ok { color: var(--done-ink); }
  & .wb-preview { background: var(--surface-2); }
  & .wb-pv-h > .wb-ico { color: var(--ink-2); }
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  & .wb-mtile > .wb-ico { background: var(--surface-3); box-shadow: inset 0 1px 0 var(--fc-hi); }
}

/* 手机一档（定稿只改卡内距、问候下边距，app.css:666、675）四套共用，在 desk/card.css、desk/desk.css；卡头图标块不缩 */

/* ============ 十、等你定草稿卡（S2；原型 skins/float-card/skin.css 的 .ap／.kind；旧日程时间轴 .wb-tl-* 随 T28 日视图退场已删，
   留下的 .wb-tl-tm 是今日小结时间线 features/daily/ 在用的） ============ */
[data-skin="float-card"] .wb-root {
  --ap-bg: var(--surface); --ap-radius: 16px; --ap-pad: 12px 14px;
  /* 底与描边照 V1 定稿原型 app.css:1212 的 .ap：--surface 底、加深一级的发丝线（--line-strong）＋一丝投影；标题前不画状态点、
     依据不画左竖线（原型没有，主控 10-18 裁决：UI 以原型为准） */
  --ap-shadow: inset 0 0 0 1px var(--line-strong), 0 1px 2px rgba(70, 48, 34, .04); --ap-out-shadow: var(--ap-shadow);
  & .wb-tl-tm { font-family: var(--font-num); color: var(--ink-3); font-weight: 500; }
  & .wb-ap.is-done { opacity: .8; }
  & .wb-ap-kind { gap: 5px; background: rgba(31, 30, 27, .07); color: var(--ink-2); }
  & .wb-ap .wb-btn--pri { background: transparent; box-shadow: inset 0 0 0 1.5px var(--ink); color: var(--ink); }
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  --ap-shadow: inset 0 0 0 1px var(--line); --ap-out-shadow: var(--ap-shadow);   /* 评审改版 fc/skin.css 暗色：发丝线，不带褐色影 */
  & .wb-ap-kind { background: rgba(235, 240, 250, .08); }
}

/* ============ S1 待办、随手记、项目（标签手法：灰底 8% 小胶囊；请核对是灰胶囊里琥珀图标＋琥珀字） ============ */
[data-skin="float-card"] .wb-root {
  & .wb-scan-chk { background: rgba(31, 30, 27, .07); height: 22px; padding: 0 9px; }
  & .wb-scan-chk.is-mini { height: 20px; }
  & .wb-ci-note .tags { color: var(--ink-3); }
  & .wb-tag { background: rgba(31, 30, 27, .08); height: 22px; padding: 0 9px; }
  & .wb-fixw { justify-content: flex-start; }
  & .wb-capture { box-shadow: none; border-radius: 16px; }
  & .wb-capture:focus-within { box-shadow: inset 0 0 0 1.5px var(--accent-line); }
  & .wb-capture .wb-btn--pri { background: var(--fc-plate); color: var(--ink); }
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  & :is(.wb-scan-chk, .wb-tag) { background: rgba(235, 240, 250, .08); }
}

/* ============ 收工小结、回放色带、收成一摞、底部入口盒（T39；原型 daily.css、r14.css 第三节、r17.css、app.css「底部入口」）
   四套皮肤令牌键名一致（theme/tokens.test.ts 核对）；组件样式在 features/daily/daily.css、features/desk/minis.css，只读这些令牌。
   亮色照原型暮色琥珀与暖白纸；暗色是同一结构换到深石墨上（暗夜未精调，D-88）。 ============ */
[data-skin="float-card"] .wb-root {
  --dy-dusk: var(--dusk); --dy-dusk-soft: var(--dusk-soft); --dy-dusk-hover: color-mix(in srgb, #D98A2B 18%, #FFFFFF);
  --dy-dusk-line: var(--dusk-line); --dy-dusk-glow: rgba(217, 138, 43, .38); --dy-sheen: rgba(255, 255, 255, .95);
  --dy-hero-bg: radial-gradient(120% 140% at 0% 0%, #FFF8EE 0%, rgba(255, 248, 238, 0) 60%), linear-gradient(120deg, #FFFCF7 0%, #FCEFE2 70%, #F8E3D3 100%);
  --dy-hero-ring: rgba(201, 120, 42, .12);
  --dy-track: var(--surface-2); --dy-past: linear-gradient(90deg, rgba(217, 138, 43, .05), rgba(217, 138, 43, .12)); --dy-lunch: rgba(31, 30, 27, .045);
  --dy-meet: var(--today-dot); --dy-todo: var(--quiet-dot); --dy-todo-on: var(--done-dot); --dy-on-dot: #FFFFFF;
  --dy-opt-bg: var(--fc-plate); --dy-opt-hover: rgba(31, 30, 27, .11); --dy-opt-on-bg: var(--accent); --dy-opt-on-fg: var(--on-accent);
  --dy-rp-bg: var(--surface-2);
  --bye-ink: var(--ink); --bye-ink-2: var(--ink-2); --bye-moon: #C9782A; --bye-card: rgba(255, 255, 255, .7); --bye-line: var(--line-strong); --bye-hover: #FFFFFF;
  --bye-sky: radial-gradient(60% 50% at 50% 48%, rgba(255, 246, 236, .55), rgba(255, 246, 236, 0) 70%);
  --bye-paper: #FFFDF9; --bye-paper-shadow: inset 0 0 0 1px var(--line-strong), 0 10px 26px -14px rgba(120, 70, 20, .32);
  --bye-sheet: #FBF4EA; --bye-sheet-shadow: inset 0 0 0 1px rgba(120, 80, 40, .12), 0 6px 18px -10px rgba(120, 70, 20, .28);
  --soon-bg: rgba(255, 253, 250, .36); --soon-ring: rgba(255, 255, 255, .6); --soon-item-bg: rgba(255, 255, 255, .34); --soon-ic-bg: rgba(31, 30, 27, .045); --soon-ink: var(--ink-3);
  /* 资讯（T37，原型 news.css 的来源小方标四色、app.css .tag-sample 底） */
  --nw-mk-0-bg: #F2E5D8; --nw-mk-0-ink: #8A5632; --nw-mk-1-bg: #E6EAF0; --nw-mk-1-ink: #4A586D;
  --nw-mk-2-bg: #EFE5EC; --nw-mk-2-ink: #6D4C67; --nw-mk-3-bg: #E3EBE2; --nw-mk-3-ink: #496350;
  --nw-tag-bg: rgba(31, 30, 27, .07); --nw-go-hover: #FFFFFF;
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  --dy-dusk: var(--dusk); --dy-dusk-soft: var(--dusk-soft); --dy-dusk-hover: color-mix(in srgb, #E8A04C 22%, #1D2024);
  --dy-dusk-line: var(--dusk-line); --dy-dusk-glow: rgba(229, 155, 87, .4); --dy-sheen: rgba(255, 255, 255, .18);
  --dy-hero-bg: radial-gradient(120% 140% at 0% 0%, rgba(229, 155, 87, .14) 0%, rgba(229, 155, 87, 0) 60%), linear-gradient(120deg, #22252A 0%, #262327 70%, #2A2427 100%);
  --dy-hero-ring: rgba(229, 155, 87, .18);
  --dy-track: var(--surface-2); --dy-past: linear-gradient(90deg, rgba(229, 155, 87, .06), rgba(229, 155, 87, .16)); --dy-lunch: rgba(235, 240, 250, .06);
  --dy-meet: var(--today-dot); --dy-todo: var(--quiet-dot); --dy-todo-on: var(--done-dot); --dy-on-dot: #121418;
  --dy-opt-bg: var(--fc-plate); --dy-opt-hover: rgba(235, 240, 250, .12); --dy-opt-on-bg: var(--accent); --dy-opt-on-fg: var(--on-accent);
  --dy-rp-bg: var(--surface-2);
  --bye-ink: var(--ink); --bye-ink-2: var(--ink-2); --bye-moon: #F2C890; --bye-card: rgba(255, 255, 255, .08); --bye-line: rgba(255, 255, 255, .15); --bye-hover: rgba(255, 255, 255, .16);
  --bye-sky: radial-gradient(60% 50% at 50% 48%, rgba(40, 58, 78, .5), rgba(40, 58, 78, 0) 70%);
  --bye-paper: #26292D; --bye-paper-shadow: inset 0 0 0 1px rgba(235, 240, 250, .12), 0 12px 30px -12px rgba(0, 0, 0, .6);
  --bye-sheet: #1F2226; --bye-sheet-shadow: inset 0 0 0 1px rgba(235, 240, 250, .08), 0 8px 20px -10px rgba(0, 0, 0, .5);
  --soon-bg: rgba(235, 240, 250, .03); --soon-ring: rgba(235, 240, 250, .08); --soon-item-bg: rgba(235, 240, 250, .04); --soon-ic-bg: rgba(235, 240, 250, .06); --soon-ink: var(--ink-3);
  /* 资讯（T37）：原型只画了亮色，暗色按同色相压暗底、提亮字 */
  --nw-mk-0-bg: rgba(242, 229, 216, .14); --nw-mk-0-ink: #E3B892; --nw-mk-1-bg: rgba(230, 234, 240, .12); --nw-mk-1-ink: #B4C0D2;
  --nw-mk-2-bg: rgba(239, 229, 236, .13); --nw-mk-2-ink: #D3B3CC; --nw-mk-3-bg: rgba(227, 235, 226, .12); --nw-mk-3-ink: #AECAB4;
  --nw-tag-bg: rgba(235, 240, 250, .07); --nw-go-hover: rgba(255, 255, 255, .16);
}

/* ============ 顶栏胶囊、随手记标签、问 AI（T33；原型 isl.css、r12.css、ask.css）
   标签八色＋未分类（--lb-<色>-c 圆点、-p 纸、-e 边，同明度，颜色只做辨认）、便签纸与附件卡（--lb-*）、AI 的光边色（--ai-*：
   问 AI 的 Siri 式全彩 s1～s5，整理与建议的杏粉紫 r1～r3）、胶囊（--isl-*）、问 AI 对话（--ask-*）。四套键名一致（theme/tokens.test.ts）；
   亮色照原型，暗色是同一结构换到深石墨上（未精调，交 T41）。 ============ */
[data-skin="float-card"] .wb-root {
  --lb-blue-c: oklch(64% .08 250); --lb-blue-p: oklch(96.6% .014 240); --lb-blue-e: oklch(90.5% .026 240);
  --lb-amber-c: oklch(72% .11 66); --lb-amber-p: oklch(96.9% .026 78); --lb-amber-e: oklch(90.5% .045 74);
  --lb-green-c: oklch(66% .09 152); --lb-green-p: oklch(96.6% .022 150); --lb-green-e: oklch(90.5% .036 150);
  --lb-violet-c: oklch(64% .08 296); --lb-violet-p: oklch(96.6% .018 296); --lb-violet-e: oklch(90.5% .03 296);
  --lb-rose-c: oklch(66% .1 356); --lb-rose-p: oklch(96.7% .018 356); --lb-rose-e: oklch(90.5% .032 356);
  --lb-teal-c: oklch(64% .07 200); --lb-teal-p: oklch(96.6% .016 200); --lb-teal-e: oklch(90.5% .028 200);
  --lb-coral-c: oklch(67% .11 40); --lb-coral-p: oklch(96.8% .02 46); --lb-coral-e: oklch(90.5% .038 44);
  --lb-gray-c: oklch(68% .012 70); --lb-gray-p: oklch(96.8% .007 75); --lb-gray-e: oklch(90.5% .012 75);
  --lb-none-c: oklch(72% .008 70); --lb-none-p: #FFFDFA; --lb-none-e: var(--line-strong);
  --lb-glass: rgba(255, 255, 255, .72); --lb-glass-hi: #FFFFFF; --lb-paper-hi: linear-gradient(180deg, rgba(255, 255, 255, .55), rgba(255, 255, 255, 0) 46%);
  --lb-shade: rgba(90, 60, 40, .5); --lb-recv-bg: #FFFEFC; --lb-new-bg: rgba(255, 255, 255, .5); --lb-new-line: rgba(31, 30, 27, .16); --lb-new-line-on: rgba(31, 30, 27, .3); --lb-lane-bg: rgba(246, 240, 233, .55);
  --ai-s1: #2F8BFF; --ai-s2: #9B5CF6; --ai-s3: #F0479A; --ai-s4: #FF8A3D; --ai-s5: #FFC35A;
  --ai-r1: var(--r1); --ai-r2: var(--r2); --ai-r3: var(--r3); --ai-e2: var(--e2); --ai-ink: var(--e-ink);
  --isl-bg: #FFFDFB; --isl-bg-hover: #FFFFFF; --isl-bg-open: #FFFDFA; --isl-wash: #FFFFFF;
  --isl-shadow: 0 4px 14px -8px rgba(150, 90, 60, .28); --isl-shadow-open: 0 2px 6px rgba(70, 48, 34, .07), 0 30px 64px -20px rgba(70, 48, 34, .38);
  --isl-tabs-bg: rgba(31, 30, 27, .055); --isl-thumb: #FFFFFF; --isl-thumb-shadow: 0 1px 2px rgba(70, 48, 34, .12), 0 3px 10px -3px rgba(70, 48, 34, .22); --isl-on-thumb: #FFFFFF;
  --isl-send-off: rgba(31, 30, 27, .14); --isl-kbd-bg: rgba(31, 30, 27, .06); --isl-chip-bg: rgba(31, 30, 27, .05); --isl-chip-hover: rgba(31, 30, 27, .08);
  --isl-file-bg: #FFFFFF; --isl-file-ic: oklch(52% .09 296); --isl-drop-bg: rgba(255, 255, 255, .72); --isl-drop-hot: #FFFFFF;
  --ask-q-bg: var(--ink); --ask-q-fg: #FFFFFF; --ask-cite-bg: #FFFFFF; --ask-act-bg: rgba(31, 30, 27, .055); --ask-act-hover: rgba(31, 30, 27, .1);
  --ask-scrim: rgba(252, 247, 242, .42); --ask-hl: color-mix(in srgb, #E9AE86 30%, transparent); --ask-cite-min: #8A6A3E;
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  --lb-blue-c: oklch(74% 0.08 250); --lb-blue-p: oklch(29% 0.028 240); --lb-blue-e: oklch(37% 0.040 240);
  --lb-amber-c: oklch(74% 0.1 66); --lb-amber-p: oklch(29% 0.030 78); --lb-amber-e: oklch(37% 0.045 78);
  --lb-green-c: oklch(74% 0.08 152); --lb-green-p: oklch(29% 0.028 150); --lb-green-e: oklch(37% 0.040 150);
  --lb-violet-c: oklch(74% 0.08 296); --lb-violet-p: oklch(29% 0.028 296); --lb-violet-e: oklch(37% 0.040 296);
  --lb-rose-c: oklch(74% 0.09 356); --lb-rose-p: oklch(29% 0.030 356); --lb-rose-e: oklch(37% 0.045 356);
  --lb-teal-c: oklch(74% 0.07 200); --lb-teal-p: oklch(29% 0.025 200); --lb-teal-e: oklch(37% 0.035 200);
  --lb-coral-c: oklch(74% 0.1 40); --lb-coral-p: oklch(29% 0.030 46); --lb-coral-e: oklch(37% 0.045 46);
  --lb-gray-c: oklch(74% 0.012 70); --lb-gray-p: oklch(29% 0.004 75); --lb-gray-e: oklch(37% 0.006 75);
  --lb-none-c: oklch(70% .01 70); --lb-none-p: #23262B; --lb-none-e: var(--line-strong);
  --lb-glass: rgba(255, 255, 255, .08); --lb-glass-hi: rgba(255, 255, 255, .16); --lb-paper-hi: linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, 0) 46%);
  --lb-shade: rgba(0, 0, 0, .6); --lb-recv-bg: #22252A; --lb-new-bg: rgba(255, 255, 255, .03); --lb-new-line: rgba(235, 240, 250, .18); --lb-new-line-on: rgba(235, 240, 250, .32); --lb-lane-bg: rgba(235, 240, 250, .04);
  --ai-s1: #2F8BFF; --ai-s2: #9B5CF6; --ai-s3: #F0479A; --ai-s4: #FF8A3D; --ai-s5: #FFC35A;
  --ai-r1: var(--r1); --ai-r2: var(--r2); --ai-r3: var(--r3); --ai-e2: var(--e2); --ai-ink: var(--e-ink);
  --isl-bg: #1F2226; --isl-bg-hover: #24272C; --isl-bg-open: #1D2024; --isl-wash: #1D2024;
  --isl-shadow: 0 4px 14px -8px rgba(0, 0, 0, .6); --isl-shadow-open: 0 2px 6px rgba(0, 0, 0, .3), 0 30px 64px -20px rgba(0, 0, 0, .7);
  --isl-tabs-bg: rgba(235, 240, 250, .07); --isl-thumb: #2E3238; --isl-thumb-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 3px 10px -3px rgba(0, 0, 0, .5); --isl-on-thumb: #FFFFFF;
  --isl-send-off: rgba(235, 240, 250, .14); --isl-kbd-bg: rgba(235, 240, 250, .08); --isl-chip-bg: rgba(235, 240, 250, .06); --isl-chip-hover: rgba(235, 240, 250, .1);
  --isl-file-bg: #2A2D32; --isl-file-ic: oklch(72% .09 296); --isl-drop-bg: rgba(255, 255, 255, .04); --isl-drop-hot: rgba(255, 255, 255, .08);
  --ask-q-bg: var(--ink); --ask-q-fg: #17191C; --ask-cite-bg: #26292E; --ask-act-bg: rgba(235, 240, 250, .07); --ask-act-hover: rgba(235, 240, 250, .12);
  --ask-scrim: rgba(10, 12, 15, .42); --ask-hl: rgba(233, 174, 134, .25); --ask-cite-min: #D7B88A;
}

/* ============ 今天要做什么（第七轮「提议单」briefN；原型 brief.css 第一节的 --e1～--e3、--r1～--r3、--e-ink、--sheet-bg、--shadow-lift）
   单子纸色、光边的杏粉淡紫（描边压深一档）、草案胶囊与标识的淡底（原型 --e-tint）、草案标识字色、流过的暖光、卡下光晕、玻璃高光、浮起投影、落款主按钮投影、手机吸底落款底色。
   四套键名一致（theme/tokens.test.ts）；亮色照原型，暗色是同一结构换到深底上（未精调，交 T41）。 ============ */
[data-skin="float-card"] .wb-root {
  --bn-sheet: #FFFFFF; --bn-e1: var(--e1); --bn-e2: var(--e2); --bn-e3: var(--e3); --bn-r1: var(--r1); --bn-r2: var(--r2); --bn-r3: var(--r3); --bn-ink: var(--e-ink);
  --bn-tint: var(--e-tint);
  --bn-streak: rgb(206, 98, 130); --bn-glow: rgb(222, 120, 150); --bn-hi: rgba(255, 255, 255, .75);
  --bn-lift: var(--shadow-lift);
  --bn-go-shadow: 0 1px 2px rgba(31, 30, 27, .2), 0 8px 18px -8px rgba(31, 30, 27, .5); --bn-sticky: rgba(255, 255, 255, .96);
}
[data-skin="float-card"][data-theme="dark"] .wb-root {
  --bn-sheet: #26292D; --bn-e1: var(--e1); --bn-e2: var(--e2); --bn-e3: var(--e3); --bn-r1: var(--r1); --bn-r2: var(--r2); --bn-r3: var(--r3); --bn-ink: var(--e-ink);
  --bn-tint: var(--e-tint);
  --bn-streak: rgb(235, 150, 175); --bn-glow: rgb(222, 120, 150); --bn-hi: rgba(255, 255, 255, .1);
  --bn-lift: var(--shadow-lift);
  --bn-go-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 18px -8px rgba(0, 0, 0, .6); --bn-sticky: rgba(30, 33, 36, .96);
}
