/* ========================================================================
 * win11.css —— Windows 11 真·还原层
 *
 * 依据：
 *  1. 用户真机截图（Windows 11 企业版 26H1 / 28000.2956）逐像素取色
 *  2. 微软官方 Windows 11 设计原则
 *     learn.microsoft.com/zh-cn/windows/apps/design/design-principles
 *  3. Fluent Design 2 官方令牌（fluent2.microsoft.design）
 *
 * 原则：只改外观，不改 DOM / JS；颜色令牌全部走变量，自动跟随
 *       浅色 / 深色 / 4 套对比主题；不使用装饰性渐变。
 * ==================================================================== */

/* ------------------------------------------------------------------
 * 1. 令牌（精确取自真机截图 + 官方 Fluent 2）
 * ---------------------------------------------------------------- */
:root{
  /* 强调色：从「关于 Windows」与设置开关取样 = #0068C0，官方值 #0067C0 */
  --accent:#0067C0;
  --accent-hover:#01579B;
  --accent-pressed:#013A70;
  --accent-fg:#FFFFFF;
  --accent-subtle:rgba(0,103,192,.08);
  --accent-border:transparent;

  /* 窗口 / 表面
   * 官方 Mica 是「不透明」材质 —— 这三个变量必须是不透明色，
   * 通透感来自 backdrop-filter 模糊 Mica 之下的内容，而不是 Mica 自己半透明。
   * 运行时由 js/mica.js 按壁纸采样覆写（见 FALLBACK 注释里的 SolidBackgroundFillColorBase）。
   */
  --win-bg:#F3F3F3;                    /* 官方 SolidBackgroundFillColorBase 浅色 */
  --win-bg-2:#F9F9F9;
  --panel-bg:#EFEFEF;                  /* Mica 回退色，运行时被采样值覆写 */
  --titlebar-bg:#EFEFEF;               /* Mica 基底（不透明） */
  --tb-bg:#EFEFEF;                     /* Mica 基底（不透明） */
  --card:#FFFFFF;                      /* CardBackground */
  --card-2:#FAFAFA;
  --scrim:rgba(0,0,0,.32);
  /* 内容层：官方 LayerFillColorDefaultBrush（低透明度纯色，叠在 Mica 之上） */
  --layer-fill:rgba(255,255,255,.0625);
  --layer-on-mica:rgba(255,255,255,.05);

  /* 文字（官方 TextFill 系列） */
  --text:#1B1B1B;                      /* TextFillPrimary */
  --text-2:#616161;                    /* TextFillSecondary */
  --text-3:#8C8C8C;                    /* TextFillTertiary */
  --text-disabled:#A0A0A0;

  /* 交互状态 */
  --hover: rgba(0,0,0,.055);
  --hover-strong: rgba(0,0,0,.09);
  --active: rgba(0,0,0,.12);
  --selected: #E7E6E6;                 /* 选中导航项（官方 #EFEFEF/#E7E6E6） */
  --line: rgba(0,0,0,.09);             /* StrokeDefault */
  --line-soft: rgba(0,0,0,.06);
  --card-stroke: rgba(0,0,0,.06);
  --tb-border: rgba(0,0,0,.08);
  --win-border: rgba(0,0,0,.06);

  /* 圆角：官方 Windows 几何规范（Geometry in Windows）
   * https://learn.microsoft.com/windows/apps/design/signature-experiences/geometry
   *   8px  顶级容器（应用窗口、下拉菜单、对话框）—— 对应官方 OverlayCornerRadius
   *   4px  页内元素（按钮、列表背板、输入框）—— 对应官方 ControlCornerRadius
   *   0px  与其他直边相交的边、窗口最大化时
   * 12px 是开始菜单等大型浮层的取值（同 8px 级别但更柔）。
   */
  --r-1:4px;
  --r-2:8px;
  --r-3:12px;
  --r-pill:999px;

  /* 阴影：官方 Elevation */
  --sh-1: 0 1.6px 3.6px rgba(0,0,0,.10), 0 .3px .9px rgba(0,0,0,.10);
  --sh-2: 0 3.2px 7.2px rgba(0,0,0,.10), 0 .6px 1.8px rgba(0,0,0,.10);
  --sh-4: 0 6.4px 14.4px rgba(0,0,0,.13), 0 1.1px 3.6px rgba(0,0,0,.11);
  --sh-8: 0 12.8px 28.8px rgba(0,0,0,.15), 0 2.2px 7.2px rgba(0,0,0,.12);
  --sh-16: 0 25.6px 57.6px rgba(0,0,0,.17), 0 4.4px 14.4px rgba(0,0,0,.13);
  --sh-64: 0 51.2px 115.2px rgba(0,0,0,.19), 0 8.8px 28.8px rgba(0,0,0,.16);

  /* 背景模糊（官方 Materials）
   * 官方区分很明确：
   *   Acrylic —— semi-transparent 磨砂玻璃，只用于 flyout / context menu（短暂浮出）
   *   Mica    —— **opaque** 不透明，只采样壁纸一次，用于窗口/任务栏/设置等长期表面
   * 本项目 Mica 层本身不透明（--tb-bg 等），这里的 blur 作用于它**背后**的内容，
   * 这才是官方说的「subtly tinted with the wallpaper」观感来源。
   * 官方 Mica 设计建议值：LuminosityOpacity ≈ 0.8（Base）/ 0.7（Alt）。
   */
  --acrylic: blur(30px) saturate(180%);
  --mica: blur(var(--mica-blur,60px)) saturate(var(--mica-sat,1.8));
  --mica-blur:60px;
  --mica-sat:1.8;

  /* 字体 */
  --font: "Segoe UI Variable Display","Segoe UI Variable","Segoe UI Variable Text",
          "Segoe UI","Microsoft YaHei UI","Microsoft YaHei",system-ui,sans-serif;
  --fs-xs:12px; --fs-sm:13px; --fs-md:14px; --fs-lg:20px;
}

html[data-theme="dark"]{
  --accent:#4FA3F7;  --accent-hover:#3B8BDC;  --accent-pressed:#2A6FB0;
  --accent-subtle:rgba(79,163,247,.10);
  --win-bg:#202020; --win-bg-2:#1F1F1F; --panel-bg:#2B2B2B;
  /* 深色 Mica 也必须不透明（回退色 SolidBackgroundFillColorBase 深色 = #202020） */
  --titlebar-bg:#2B2B2B; --tb-bg:#2B2B2B;
  --layer-fill:rgba(255,255,255,.0512); --layer-on-mica:rgba(255,255,255,.032);
  --card:#2B2B2B; --card-2:#303030;
  --text:#F2F2F2; --text-2:#C8C8C8; --text-3:#9A9A9A; --text-disabled:#7A7A7A;
  --hover: rgba(255,255,255,.06); --hover-strong: rgba(255,255,255,.10);
  --active: rgba(255,255,255,.14);
  --selected:#3B3B3B;
  --line: rgba(255,255,255,.10); --line-soft: rgba(255,255,255,.06);
  --card-stroke: rgba(255,255,255,.07);
  --tb-border: rgba(255,255,255,.08); --win-border: rgba(255,255,255,.07);
  --scrim: rgba(0,0,0,.55);
}
html[data-theme="dark"] #desktop::before{ display:none; }

/* 对比色主题：只压中性层，强调色留给品牌区 */
html[data-contrast="aquatic"]{ --accent:#05A6F0; --accent-hover:#037FC0; --accent-subtle:rgba(5,166,240,.12); }
html[data-contrast="desert"]{  --accent:#C43E00; --accent-hover:#9E3200; --accent-subtle:rgba(196,62,0,.12); }
html[data-contrast="dusk"]{    --accent:#B146C2; --accent-hover:#8E359B; --accent-subtle:rgba(177,70,194,.12); }
html[data-contrast="night"]{   --accent:#4FA3F7; --accent-hover:#3B8BDC; --accent-subtle:rgba(79,163,247,.14); }

/* ------------------------------------------------------------------
 * 2. 全局
 * ---------------------------------------------------------------- */
body{ font-family:var(--font); font-size:var(--fs-md); color:var(--text); }
small,.sub{ font-size:var(--fs-xs); color:var(--text-2); }

/* 官方细滚动条 */
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{
  background:var(--text-3); border-radius:var(--r-pill);
  border:2px solid transparent; background-clip:content-box;
}
::-webkit-scrollbar-thumb:hover{ background:var(--text); background-clip:content-box; }

/* 焦点：官方焦点环（2px 描边 + 2px 偏移） */
:focus-visible{ outline:2px solid var(--accent); outline-offset:2px; border-radius:var(--r-1); }

button{ font-size:var(--fs-md); }

/* 位图图标（icons/win11/*.png）默认尺寸：跟随 em，随上下文放大缩小 */
.wico{ width:1em; height:1em; object-fit:contain; vertical-align:-.15em; flex:none; }

/* 各上下文的位图图标尺寸（与官方一致） */
.dicon .wico,
.dicon>svg{ width:34px; height:34px; filter:drop-shadow(0 2px 4px rgba(0,0,0,.55)); }
.tb-btn .wico,
.tb-btn>svg{ width:24px; height:24px; }
.tray-btn .wico,
.tray-btn>svg{ width:18px; height:18px; }
.s-tile .wico,
.s-tile>svg{ width:38px; height:38px; }
.set-nav-item .ni .wico,
.set-nav-item .ni>svg{ width:18px; height:18px; }
.set-nav-search .wico,
.set-nav-search>svg{ width:16px; height:16px; }
.set-row .wico{ width:20px; height:20px; }
#ctx .ci .wico{ width:16px; height:16px; }

/* ------------------------------------------------------------------
 * 3. 桌面图标（真机：白字 + 阴影，选中半透明蓝底）
 * ---------------------------------------------------------------- */
#desktop-icons{ padding:10px; }
.dicon{ width:92px; height:96px; border-radius:var(--r-1); padding:6px 4px; gap:6px; }
.dicon:hover{ background:var(--hover); }
.dicon.sel{ background:rgba(0,103,192,.28); box-shadow:none; }
.dicon svg{
  width:34px; height:34px; filter:drop-shadow(0 2px 4px rgba(0,0,0,.55));
}
.dicon span{ font-size:12px; color:#fff; text-shadow:0 1px 2px rgba(0,0,0,.9); }

/* ------------------------------------------------------------------
 * 4. 窗口（官方：8px 圆角、1px 描边、双层阴影、Mica）
 * ---------------------------------------------------------------- */
.window{
  background:var(--win-bg); border-radius:var(--r-2);
  border:1px solid var(--win-border);
  box-shadow:var(--sh-4);
  overflow:hidden;
}
.window.focused{ box-shadow:var(--sh-16); border-color:var(--card-stroke); }
.titlebar{
  background:var(--titlebar-bg);
  -webkit-backdrop-filter:var(--acrylic); backdrop-filter:var(--acrylic);
  height:32px; display:flex; align-items:center;
  padding-left:10px; position:relative;
}
.titlebar .tt{ font-size:var(--fs-sm); color:var(--text); }
.window .tb-ctl{ color:var(--text); }
.window .tb-ctl:hover{ background:var(--hover); }
.window .tb-ctl.close:hover{ background:#C42B1C; color:#fff; }

/* ------------------------------------------------------------------
 * 5. 任务栏（官方：48px、居中、Acrylic、运行指示为底部胶囊）
 * ---------------------------------------------------------------- */
#taskbar{
  background:var(--tb-bg);
  -webkit-backdrop-filter:var(--mica); backdrop-filter:var(--mica);
  border-top:1px solid var(--tb-border);
  box-shadow:0 -2px 8px rgba(0,0,0,.06);
}
.tb-btn{ width:48px; height:48px; border-radius:var(--r-1); }
.tb-btn:hover{ background:var(--hover); }
.tb-btn:active{ background:var(--active); }
.tb-btn svg{ width:24px; height:24px; }
.tb-btn.running.active svg{ color:var(--accent); }
/* 官方运行指示：底部细胶囊，不是圆点 */
.tb-btn.running .dot{
  bottom:4px; left:50%; transform:translateX(-50%);
  width:6px; height:3px; border-radius:var(--r-pill);
  background:var(--accent); box-shadow:none;
}
.tb-btn.active .dot{ width:8px; height:4px; }

.tray-btn{ height:44px; border-radius:var(--r-1); }
.tray-btn svg{ width:18px; height:18px; }
/* 真机时钟是两行：10:44 / 6/10/5 */
#clock{ color:var(--text); font-size:var(--fs-sm); }
/* 真机 IME：「英」「拼」两个小方块，激活的那块带浅底 */
.tray-ime{
  min-width:22px; height:22px; padding:0 5px; border-radius:4px;
  font-size:12px; line-height:1; font-weight:500;
  color:var(--text); justify-content:center;
}
.tray-ime.on{ background:rgba(0,0,0,.06); }
html[data-theme="dark"] .tray-ime.on{ background:rgba(255,255,255,.14); }
/* 「^」折叠箭头：比图标窄，无 hover 底色（真机就是纯箭头） */
.tray-caret{ min-width:22px; padding:0; }
.tray-caret svg{ width:14px; height:14px; }

/* ------------------------------------------------------------------
 * 6. 开始菜单（官方：640×720、磁贴 100×100、8px 圆角、底部搜索+账号）
 * ---------------------------------------------------------------- */
#start{
  width:640px; max-width:96vw;
  background:var(--panel-bg);
  -webkit-backdrop-filter:var(--mica); backdrop-filter:var(--mica);
  border-radius:var(--r-2); box-shadow:var(--sh-64);
  padding:16px; gap:8px;
}
.s-head{ display:flex; align-items:baseline; justify-content:space-between; padding:2px 2px 10px; }
.s-head h3{ font-size:var(--fs-lg); font-weight:600; color:var(--text); }
.s-head button{ color:var(--text-2); font-size:var(--fs-md); padding:4px 8px; border-radius:var(--r-1); }
.s-head button:hover{ background:var(--hover); }

/* 搜索框（官方：圆角矩形，聚焦时强调色描边） */
.s-search{
  border-radius:var(--r-2); background:var(--hover);
  height:40px; padding:0 12px; gap:10px;
}
.s-search svg{ width:18px; height:18px; color:var(--text-2); }
.s-search input{ color:var(--text); }
.s-search:focus-within{ background:var(--hover-strong); box-shadow:inset 0 0 0 2px var(--accent); }
.s-search:focus-within svg{ color:var(--accent); }

/* 磁贴：官方 100×100，8px 圆角 */
.s-grid{ grid-template-columns:repeat(4,100px); gap:8px; }
.s-tile{
  width:100px; height:100px; border-radius:var(--r-2);
  background:transparent; flex-direction:column; gap:6px; padding:8px;
}
.s-tile:hover{ background:var(--hover); }
.s-tile .t-ico{ width:38px; height:38px; }
.s-tile .t-name{ font-size:12px; color:var(--text); text-align:center; }

/* 真机 Win11：底栏与菜单同色，不加灰底，只留一条极淡分隔线 */
.s-foot{
  padding-top:10px; gap:8px;
  background:transparent !important;
  border-top:1px solid var(--line-soft);
}
.s-foot .user{ padding:6px 10px; border-radius:var(--r-1); }
.s-foot .user:hover{ background:var(--hover); }
.s-foot .avatar{
  width:32px; height:32px; border-radius:var(--r-pill);
  background:var(--accent); color:var(--accent-fg);
  font-size:var(--fs-md); font-weight:600;
}
.s-foot .pw button:hover{ background:var(--hover); }

/* 「所有应用」A-Z 分组视图（真机：字母标题行 + 整行磁贴） */
#start-grid.az{ display:block; overflow:auto; }
/* 官方层级：字母标题行是 Mica 之上的一层低透明度填充（LayerFillColorDefaultBrush），
   不是深色块 —— 用 --layer-fill 跟随主题，深浅都自然。 */
.s-az-letter{
  font-size:var(--fs-sm); font-weight:600; color:var(--text-2);
  padding:9px 12px 7px; background:var(--layer-fill);
  margin-top:2px; border-radius:var(--r-1);
  position:sticky; top:0; z-index:2;   /* 真机字母行吸顶 */
  -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px);
}
.s-az-row{
  display:grid; grid-template-columns:repeat(auto-fill,104px);
  gap:2px; padding:4px 0 6px; justify-content:start;
}
/* A-Z 里的磁贴：图标在上、名称、来源标签（真机形态） */
.s-app-az{
  width:auto; height:auto; min-height:104px; padding:12px 6px 9px;
  border-radius:var(--r-1); gap:6px; align-items:center;
}
.s-app-az .wico,.s-app-az>svg{ width:36px; height:36px; }
.s-app-az .s-name{
  font-size:var(--fs-xs); color:var(--text); text-align:center; line-height:1.3;
  max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.s-src{ font-size:10px; color:var(--text-3); line-height:1; }
/* 真机：「系统」是低调灰，「新增」是官方蓝底白字小胶囊 */
.s-src-new{
  color:#fff; background:#005FB8; border-radius:8px;
  padding:1.5px 6px; font-size:9.5px; line-height:1.4;
}
html[data-theme="dark"] .s-src-new{ background:#0F6CBD; }
/* 真机里「获取帮助」那种浅色常驻底（可点击项的静态强调） */
.s-app-az.on{ background:var(--selected); }

/* 7. 设置应用（严格对齐真机截图） */
.set-shell{ background:var(--win-bg); color:var(--text); }
.set-head{ padding:20px 32px 8px; }
.set-head h2{ font-size:var(--fs-lg); font-weight:600; }
.set-crumb{ font-size:var(--fs-md); color:var(--text-2); margin-left:8px; }
.set-body{ padding:8px 32px 32px; overflow:auto; }

.set-nav{ background:var(--panel-bg); border-right:1px solid var(--line); padding:16px 8px 8px; }
.set-nav-s{ padding:2px 6px 10px; }
.set-nav-search{
  display:flex; align-items:center; gap:8px;
  background:var(--hover); border-radius:var(--r-2); height:36px; padding:0 10px;
}
.set-nav-search svg{ width:16px; height:16px; color:var(--text-2); }
.set-nav-search input{ background:transparent; color:var(--text); font-size:var(--fs-md); }

.set-nav-item{
  display:flex; align-items:center; gap:12px;
  height:40px; padding:0 10px; border-radius:var(--r-1);
  color:var(--text); font-size:var(--fs-md);
}
.set-nav-item:hover{ background:var(--hover); }
.set-nav-item.on{ background:var(--selected); font-weight:600; }
.set-nav-item .ni{ display:flex; align-items:center; color:var(--text); }
.set-nav-item.on .ni{ color:var(--accent); }
/* 官方设置分类图标配色 */
.set-nav-item[data-c="system"] .ni{ color:#4C8BD7; }
.set-nav-item[data-c="bluetooth"] .ni{ color:#4C8BD7; }
.set-nav-item[data-c="network"] .ni{ color:#0E8A5F; }
.set-nav-item[data-c="personalization"] .ni{ color:#C50F6C; }
.set-nav-item[data-c="apps"] .ni{ color:#8764B8; }
.set-nav-item[data-c="accounts"] .ni{ color:#0E8A5F; }
.set-nav-item[data-c="time"] .ni{ color:#4C8BD7; }
.set-nav-item[data-c="gaming"] .ni{ color:#4C8BD7; }
.set-nav-item[data-c="accessibility"] .ni{ color:#0E8A5F; }
.set-nav-item[data-c="privacy"] .ni{ color:#4C8BD7; }
.set-nav-item[data-c="update"] .ni{ color:#4C8BD7; }
.set-noresult{ padding:16px 10px; color:var(--text-2); }

/* 卡片：官方白底 + 8px 圆角 + 极淡描边 */
.set-card{
  background:var(--card); border-radius:var(--r-2);
  border:1px solid var(--card-stroke);
  padding:16px 20px; margin-bottom:12px;
}
.set-card-title{ font-size:var(--fs-md); font-weight:600; color:var(--text); }
.set-card-sub{ font-size:var(--fs-md); color:var(--text-2); margin-top:2px; }

/* 设置行：图标 + 标题 / 副标题 + 值 + 箭头 */
.set-row{
  display:flex; align-items:center; gap:12px;
  min-height:52px; padding:8px 4px;
  border-top:1px solid var(--line-soft);
  color:var(--text);
}
.set-row:first-child{ border-top:none; }
.set-row.clickable{ cursor:pointer; }
.set-row.clickable:hover{ background:var(--hover); }
.set-row-main{ flex:1; min-width:0; }
.set-row-label{ font-size:var(--fs-md); }
.set-row-sub{ font-size:var(--fs-xs); color:var(--text-2); }
.set-row-ctl{ color:var(--text-2); }
.set-row-ctl svg{ width:16px; height:16px; }

/* 官方开关：36×20 轨道 + 16×16 滑块 */
.set-switch{
  width:36px; height:20px; border-radius:var(--r-pill);
  background:#D0D0D0; position:relative; flex:0 0 auto;
  transition:background .18s var(--ease, cubic-bezier(.1,.9,.2,1));
}
.set-switch::after{
  content:""; position:absolute; top:2px; left:2px;
  width:16px; height:16px; border-radius:50%; background:#fff;
  box-shadow:0 1px 2px rgba(0,0,0,.28);
  transition:transform .18s cubic-bezier(.1,.9,.2,1);
}
.set-switch.on{ background:var(--accent); }
.set-switch.on::after{ transform:translateX(16px); }

/* 复选框 / 单选（官方 20×20、4px 圆角） */
.set-cb,.set-radio{
  width:20px; height:20px; border:2px solid var(--text-3);
  border-radius:var(--r-1); position:relative; flex:0 0 auto;
}
.set-radio{ border-radius:50%; }
.set-cb.on,.set-radio.on{ background:var(--accent); border-color:var(--accent); }
.set-cb.on::after,.set-radio.on::after{
  content:""; position:absolute; left:4px; top:0px;
  width:6px; height:10px; border:solid #fff; border-width:0 2px 2px 0;
  transform:rotate(45deg);
}
.set-radio.on::after{
  left:5px; top:5px; width:6px; height:6px; border:none;
  border-radius:50%; background:#fff; transform:none;
}
.set-check{ color:var(--text); }

/* 按钮（官方：4px 圆角、32px 高） */
.set-btn{
  background:var(--card); color:var(--text);
  border:1px solid var(--line); border-radius:var(--r-1);
  height:32px; padding:0 16px; font-size:var(--fs-md);
}
.set-btn:hover{ background:var(--hover); }
.set-btn:active{ background:var(--active); }
.set-btn.primary{ background:var(--accent); color:var(--accent-fg); border-color:transparent; }
.set-btn.primary:hover{ background:var(--accent-hover); }
.set-btn.danger{ color:#C50F1F; }
.set-btn.danger:hover{ background:rgba(197,15,31,.08); }
.set-btn-group{ display:flex; gap:8px; }

/* 输入框（官方 4px 圆角） */
.set-input{
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-1); color:var(--text); height:32px; padding:0 10px;
}
.set-input:focus{ outline:none; border-color:var(--accent); box-shadow:0 0 0 1px var(--accent); }
.set-select{
  background:var(--card); border:1px solid var(--line);
  border-radius:var(--r-1); color:var(--text); height:32px; padding:0 28px 0 10px;
}
.set-inline-search{
  display:flex; align-items:center; gap:8px; height:36px;
  border:1px solid var(--line); border-radius:var(--r-1); padding:0 10px;
}
.set-inline-search input{ border:none; background:transparent; color:var(--text); }
.set-inline-search:focus-within{ border-color:var(--accent); }

/* 滑块 */
.set-slider{ -webkit-appearance:none; width:180px; height:4px; border-radius:2px; background:var(--line); }
.set-slider::-webkit-slider-thumb{
  -webkit-appearance:none; width:16px; height:16px; border-radius:50%;
  background:var(--accent); border:2px solid #fff; box-shadow:0 1px 2px rgba(0,0,0,.3);
}
.set-slider-val{ font-size:var(--fs-md); color:var(--text-2); min-width:40px; text-align:right; }

/* 分段控件 */
.set-seg{ display:inline-flex; background:var(--hover); border-radius:var(--r-1); padding:2px; }
.set-seg > *{ padding:4px 14px; border-radius:var(--r-1); color:var(--text-2); }
.set-seg .on{ background:var(--card); color:var(--text); box-shadow:var(--sh-1); }

/* 强调色格子（官方 12 色强调色） */
.set-acrow{ display:flex; gap:8px; }
.set-accent-grid{ display:flex; gap:10px; }
.set-acdot{ width:24px; height:24px; border-radius:50%; border:2px solid transparent; }
.set-acdot.on{ border-color:#000; box-shadow:inset 0 0 0 2px #fff; }

/* 状态徽标 */
.set-badge{
  padding:2px 10px; border-radius:var(--r-pill);
  font-size:var(--fs-xs); border:1px solid var(--line); color:var(--text-2);
}
.set-badge.ok{ color:#0E7A32; border-color:rgba(14,122,50,.35); background:rgba(14,122,50,.08); }
.set-badge.off{ color:#C50F1F; border-color:rgba(197,15,31,.35); background:rgba(197,15,31,.08); }

/* 磁贴 / 壁纸选择 */
.set-grid{ display:grid; gap:10px; }
.set-tile,.set-wp-tile{
  border:2px solid transparent; border-radius:var(--r-2);
  background:var(--card); padding:8px;
}
.set-tile.on,.set-wp-tile.on{ border-color:var(--accent); }
.set-wp{ border:2px solid transparent; border-radius:var(--r-2); }
.set-wp.on{ border-color:var(--accent); }
.set-tile.on,.set-wp.on{ box-shadow:0 0 0 2px var(--accent); }
.tile-box{ width:100%; height:64px; border-radius:var(--r-1); }
.tile-name{ font-size:var(--fs-xs); color:var(--text-2); text-align:center; }

/* 可折叠 */
.set-exp-head{ display:flex; align-items:center; gap:8px; cursor:pointer; padding:6px 0; }
.set-exp-panel{ padding:6px 0 10px; }
.set-exp-head svg{ transition:transform .2s; }
.set-exp.open .set-exp-head svg{ transform:rotate(90deg); }

/* 列表项 */
.set-list-item{ display:flex; align-items:center; gap:12px; padding:8px 4px; border-top:1px solid var(--line-soft); }
.set-list-item:first-child{ border-top:none; }
.li-icon{ width:28px; height:28px; display:flex; align-items:center; }

/* ------------------------------------------------------------------
 * 8. 右键菜单 / 通知 / 对话框（官方 Acrylic + 8px）
 * ---------------------------------------------------------------- */
#ctx{
  background:var(--panel-bg);
  -webkit-backdrop-filter:var(--mica); backdrop-filter:var(--mica);
  border-radius:var(--r-2); border:1px solid var(--line);
  box-shadow:var(--sh-16); padding:4px;
}
#ctx .ci{ height:34px; padding:0 12px; color:var(--text); border-radius:var(--r-1); }
#ctx .ci:hover{ background:var(--hover); }
#ctx .ci svg{ width:18px; height:18px; }
#ctx .sep{ height:1px; background:var(--line); margin:4px 0; }

.toast{
  background:var(--panel-bg);
  -webkit-backdrop-filter:var(--mica); backdrop-filter:var(--mica);
  border:1px solid var(--line); border-radius:var(--r-1);
  border-left:3px solid var(--accent);
  box-shadow:var(--sh-8);
}
.toast .tt-body{ color:var(--text); }

#modal-layer{ background:var(--scrim); }
.dlg{ background:var(--panel-bg); border-radius:var(--r-2); box-shadow:var(--sh-64); }

/* ------------------------------------------------------------------
 * 9. 锁屏（官方：居中大时间 + 日期）
 * ---------------------------------------------------------------- */
#lock{ background:#101014; }
#lock .l-bg{ opacity:.22; }
.l-time b{ color:#fff; font-weight:600; letter-spacing:-.01em; }
.l-time i{ color:rgba(255,255,255,.7); }
.l-avatar{
  background:var(--accent); color:var(--accent-fg);
  border:none; box-shadow:0 4px 16px rgba(0,0,0,.4);
}
.l-name{ color:#fff; }
.l-signin{
  background:rgba(255,255,255,.10); color:#fff;
  border:1px solid rgba(255,255,255,.25);
  -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
}
.l-signin:hover{ background:rgba(255,255,255,.18); }
.l-sub{ color:rgba(255,255,255,.55); }

/* ------------------------------------------------------------------
 * 10. 通用按钮（WM 工具栏等）
 * ---------------------------------------------------------------- */
.btn{
  background:var(--card); color:var(--text);
  border:1px solid var(--line); border-radius:var(--r-1);
  height:30px; padding:0 14px; font-size:var(--fs-md);
}
.btn:hover{ background:var(--hover); }
.btn:active{ background:var(--active); }
.btn.acc{ background:var(--accent); color:var(--accent-fg); border-color:transparent; }
.btn.acc:hover{ background:var(--accent-hover); }

/* 自定义颜色 / 主题磁贴控件（ct-* / cf-*） */
.ct-tile,.cf-tile{
  border:2px solid transparent; border-radius:var(--r-2);
  background:var(--card); padding:8px;
}
.ct-tile.on,.cf-tile.on{ border-color:var(--accent); box-shadow:0 0 0 2px var(--accent); }
.cf-swatch{ border-radius:var(--r-1); box-shadow:inset 0 0 0 1px var(--card-stroke); }
.ct-preview{ border-radius:var(--r-1); }
.ct-name,.cf-name{ color:var(--text); }

/* ------------------------------------------------------------------
 * 11. 降低动效
 * ---------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
}
