.gallery{position:relative;min-width:0;max-width:100%;color:var(--text,var(--ink))}.gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;outline-offset:2px}.gallery-track::-webkit-scrollbar{display:none}.gallery-slide{position:relative;flex:0 0 100%;min-width:0;scroll-snap-align:start}.gallery-image{height:300px;background:rgba(0,0,0,.04);display:flex;align-items:center;justify-content:center;overflow:hidden}.gallery-image img{display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;background:transparent!important}.gallery-image-actions{position:absolute;top:12px;right:12px;display:flex;gap:8px;opacity:0;transition:opacity .15s}.gallery-slide:hover .gallery-image-actions,.gallery-slide:focus-within .gallery-image-actions,.gallery-active .gallery-image-actions{opacity:1}.gallery-image-actions button,.gallery-arrow{width:28px;height:28px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:#ffffffe0;color:var(--ink,#2a2925);box-shadow:0 1px 3px #2a29251f;cursor:pointer;transition:background .15s,opacity .2s}.gallery-image-actions button:hover,.gallery-arrow:hover{background:#fff}.gallery-image-actions{gap:6px}.gallery-arrow{position:absolute;top:136px;z-index:2;opacity:0}.gallery:hover .gallery-arrow,.gallery-arrow:focus-visible{opacity:1}@media(hover:none){.gallery-arrow{display:none!important}}.gallery-arrow[hidden]{display:none}.gallery-prev{left:12px}.gallery-next{right:12px}.gallery-dots{display:flex;justify-content:center;gap:8px;min-height:24px;align-items:center}.gallery-dot{border:0;background:var(--sub,#aaa);width:6px;height:6px;border-radius:50%;padding:0;opacity:.4;cursor:pointer}.gallery-dot[aria-current=true]{opacity:1}.gallery-add-slide{height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:1px dashed var(--sub,#aaa);box-sizing:border-box;border-radius:4px;background:rgba(0,0,0,.02)}.gallery-add{height:44px;width:44px;display:grid;place-items:center;border:0;border-radius:50%;background:#ffffffe0;box-shadow:0 1px 3px #2a29251f;color:var(--ink,#2a2925);cursor:pointer}.gallery-add:hover{background:#fff}.gallery-add-slide span{font:12px var(--sans)}.gallery-order{display:flex;gap:8px;overflow-x:auto;padding:5px 1px 8px}.gallery-thumb{padding:2px;border:1px solid transparent;background:transparent;border-radius:4px;min-width:56px;width:56px;height:44px;touch-action:none;cursor:grab}.gallery-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;max-height:none!important}.gallery-thumb[aria-pressed=true]{border-color:var(--sub)}.gallery-order-dragging{opacity:.45}.gallery-feedback{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:9999;display:flex;align-items:center;gap:20px;max-width:calc(100vw - 40px);padding:12px 18px;background:#292925;color:#f5f2eb;box-shadow:0 4px 20px #0002;border-radius:12px;font:13px var(--sans)}.gallery-feedback button{border:0;background:none;color:inherit;text-decoration:underline;cursor:pointer;white-space:nowrap}.gallery-dialog{border:0;padding:0;width:1000px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 40px);background:#171715;color:#eee;overflow:auto;border-radius:10px}.gallery-dialog::backdrop{background:#0008}.gallery-dialog header{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;gap:16px;font:15px var(--sans)}.gallery-dialog header span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-close{display:grid;place-items:center;border:0;background:none;color:inherit;width:32px;height:32px;border-radius:50%;cursor:pointer}.gallery-close:hover{background:#ffffff1a}.gallery-dialog .gallery-image{height:min(70dvh,700px)}.gallery-dialog .gallery-arrow{top:45%;width:36px;height:36px}.gallery-dialog .gallery-dots{min-height:36px}.gallery-dialog .gallery-dot{background:#eee}@media(max-width:700px){.gallery-image,.gallery-add-slide{height:240px}.gallery-arrow{top:106px}.gallery-dialog{max-width:calc(100vw - 20px)}.gallery-feedback{bottom:16px;width:max-content}.gallery-dialog .gallery-image{height:65dvh}}

.gallery-image.gallery-cropped{position:relative;height:auto;aspect-ratio:16/9}.gallery-image.gallery-cropped img{position:absolute;width:var(--crop-width)!important;height:var(--crop-height)!important;left:var(--crop-left);top:var(--crop-top);object-fit:fill!important}

.note-art,.archive-media,.journal-photo{position:relative}.note-media-count{position:absolute;right:10px;bottom:10px;border-radius:10px;padding:3px 8px;background:rgba(0,0,0,.55);color:#fff;font:11px/1.5 var(--sans);pointer-events:none}
.archive-media.note-art{display:block;width:100%;padding:0;border:0;background:none;pointer-events:auto;cursor:pointer}

/* ===== Claude 2026-11-13 · Preview 九项 ===== */
/* 4 · buttons on the detail page take their tint from the note's paper colour */
#noteDialog.is-note-detail{--tint:color-mix(in srgb,var(--paper,#fff) 91%,#2a2925);--tint-2:color-mix(in srgb,var(--paper,#fff) 80%,#2a2925);--tint-line:color-mix(in srgb,var(--paper,#fff) 74%,#2a2925)}
#noteDialog.is-note-detail.detail-dark{--tint:color-mix(in srgb,var(--paper,#23221f) 86%,#fff);--tint-2:color-mix(in srgb,var(--paper,#23221f) 70%,#fff);--tint-line:color-mix(in srgb,var(--paper,#23221f) 64%,#fff)}
/* 2 · categories and paper colours share one row, chips like the share page */
#noteDialog.is-note-detail .detail-paper-settings{flex-direction:row;align-items:center;justify-content:space-between;gap:16px;margin:25px 0 0}
#noteDialog.is-note-detail .detail-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
#noteDialog.is-note-detail .detail-tags .ns-tag{display:inline-flex;align-items:center;gap:2px;height:30px;padding:0 5px 0 12px;border-radius:15px;background:var(--tint);color:var(--text,var(--ink));font:12px/1 var(--sans)}
#noteDialog.is-note-detail .detail-tags .ns-tag.is-system{padding:0 12px}
#noteDialog.is-note-detail .detail-tags .ns-tag-x{width:22px;height:22px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--sub);font-size:15px;line-height:1;display:grid;place-items:center;cursor:pointer}
#noteDialog.is-note-detail .detail-tags .ns-tag-x:hover{background:var(--tint-2);color:var(--text,var(--ink))}
#noteDialog.is-note-detail .detail-tags .ns-tag-add{width:30px;height:30px;padding:0;border-radius:15px;border:1px dashed var(--tint-line);background:transparent;color:var(--sub);font-size:17px;line-height:1;display:grid;place-items:center;cursor:pointer}
#noteDialog.is-note-detail .detail-tags .ns-tag-add:hover{border-style:solid;color:var(--text,var(--ink))}
/* 4 · selected paper colour: a soft tinted ring, no hairline */
#noteDialog.is-note-detail .detail-colors{gap:10px;flex-wrap:nowrap}
#noteDialog.is-note-detail .detail-colors button{width:30px;height:30px;min-width:30px;padding:0;display:grid;place-items:center}
#noteDialog.is-note-detail .detail-colors button:before{width:22px;height:22px;transition:box-shadow .18s ease}
#noteDialog.is-note-detail .detail-colors button[aria-pressed=true]:after{content:none}
#noteDialog.is-note-detail .detail-colors button[aria-pressed=true]:before{box-shadow:0 0 0 4px var(--tint-2)}
#noteDialog.is-note-detail .detail-colors button:focus-visible{outline:0}#noteDialog.is-note-detail .detail-colors button:focus-visible:before{box-shadow:0 0 0 4px var(--tint-line)}
/* 4 · "+ 添加图片" as a tinted pill, same + as 添加分类 */
#noteDialog.is-note-detail #coverField{margin:18px 0 0}
#noteDialog.is-note-detail #editMiniCover{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px 0 16px;border:0;border-radius:20px;background:var(--tint);color:var(--text,var(--ink));font:13px/1 var(--sans);text-decoration:none;cursor:pointer}
#noteDialog.is-note-detail #editMiniCover:before{content:"+";font-size:17px;line-height:1;color:var(--sub)}
#noteDialog.is-note-detail #editMiniCover:hover{background:var(--tint-2)}
/* 4 · footer: 完成并归档 is an outlined button in the paper tint; 保存修改 has no tick */
#noteDialog.is-note-detail .detail-footer .detail-secondary{min-height:48px;padding:0 22px;border-radius:var(--field-radius,18px);box-shadow:inset 0 0 0 1px var(--tint-line);background:transparent;color:var(--text,var(--ink));font:400 13px/1.6 var(--sans)}
#noteDialog.is-note-detail .detail-footer .detail-secondary:hover{background:var(--tint)}
#noteDialog.is-note-detail .detail-footer .detail-save{padding:0 26px}
@media(max-width:700px){#noteDialog.is-note-detail .detail-paper-settings{flex-direction:column;align-items:flex-start}#noteDialog.is-note-detail .detail-footer .detail-secondary{padding:0 14px}}
/* 5 · detail images: rounded main image, dots on the image (hover + soft shade), clean thumbnails */
.gallery-stage{position:relative}
#noteDialog .gallery-image{border-radius:14px}
#noteDialog .gallery-stage .gallery-dots{position:absolute;left:0;right:0;bottom:0;z-index:2;height:52px;min-height:0;padding:0 0 12px;align-items:flex-end;border-radius:0 0 14px 14px;background:linear-gradient(to top,rgba(20,19,17,.34),rgba(20,19,17,0));opacity:0;transition:opacity .2s ease;pointer-events:none}
#noteDialog .gallery-stage:hover .gallery-dots,#noteDialog .gallery-stage:focus-within .gallery-dots{opacity:1;pointer-events:auto}
@media(hover:none){#noteDialog .gallery-stage .gallery-dots{opacity:1;pointer-events:auto}}
#noteDialog .gallery-stage .gallery-dot{background:#fff;opacity:.55}
#noteDialog .gallery-stage .gallery-dot[aria-current=true]{opacity:1}
#noteDialog .gallery-order{gap:10px;padding:12px 2px 6px}
#noteDialog .gallery-thumb{position:relative;width:64px;min-width:64px;height:40px;padding:0;border:0;border-radius:6px;overflow:hidden;background:var(--tint,rgba(0,0,0,.04));opacity:.62;transition:opacity .15s ease,box-shadow .15s ease}
#noteDialog .gallery-thumb img{display:block;border-radius:6px}
#noteDialog .gallery-thumb:hover{opacity:.85}
#noteDialog .gallery-thumb[aria-pressed=true]{opacity:1;border:0;box-shadow:0 0 0 2px var(--paper,#fff),0 0 0 4px var(--tint-2,rgba(42,41,37,.22))}
#noteDialog .gallery-thumb:focus-visible{outline:0;box-shadow:0 0 0 2px var(--paper,#fff),0 0 0 4px var(--tint-line,rgba(42,41,37,.32))}
/* single image on the detail page: same corner */
#noteDialog.is-note-detail #detailPreview :is(.note-image-frame,img,video){border-radius:14px}
/* 1 · unsaved changes: centred title, two equal buttons */
dialog.detail-leave{width:380px;text-align:center}
dialog.detail-leave h2{text-align:center;margin:10px 0 0}
dialog.detail-leave>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}
dialog.detail-leave>div button{min-height:48px;margin:0;padding:0 16px!important;border-radius:var(--field-radius,18px);font:400 14px/1.4 var(--sans)}
dialog.detail-leave .detail-leave-discard{background:transparent!important;box-shadow:inset 0 0 0 1px var(--line-2,#C9C4B9);color:var(--ink)!important;text-decoration:none}
dialog.detail-leave .detail-leave-discard:hover{background:rgba(42,41,37,.04)!important;color:var(--ink)!important}
dialog.detail-leave .primary{background:var(--ink);color:#fff}
/* 6 · share page colour choices: same tinted ring as the detail page */
#noteShareDialog .ns-swatches{gap:14px}
#noteShareDialog .ns-swatches button{width:30px;height:30px;border:0;outline:0;box-shadow:inset 0 0 0 .5px rgba(22,22,21,.19);transition:box-shadow .18s ease}
#noteShareDialog .ns-swatches button[aria-pressed=true]{outline:0;box-shadow:inset 0 0 0 .5px rgba(22,22,21,.19),0 0 0 3px var(--bg,#ECEAE4),0 0 0 6px color-mix(in srgb,var(--bg,#ECEAE4) 76%,#2a2925)}
#noteShareDialog .ns-swatches button:focus-visible{outline:0}
#noteShareDialog input[type=checkbox]{accent-color:var(--ink,#2A2925)}
/* 3 · the share corner: its unfolding is the focus cue; no square box */
.note-share-corner:focus-visible{outline:0}
/* 7 · calendar spread close button: no ring, slightly see-through */
.pile-panel-head .pile-toggle{border:0!important;background:rgba(255,253,248,.72)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 28px -12px rgba(22,22,21,.32)!important}
.pile-panel-head .pile-toggle:hover{background:rgba(255,253,248,.92)!important}
.pile-panel-head .pile-toggle:focus{outline:0}.pile-panel-head .pile-toggle:focus-visible{background:#fff!important}
/* 8 · paper clips in the calendar spread and pile sit like the desk clip (24×52, 15px above the paper) */
.paper-pin,.archive-note>.paper-pin{width:24px!important;height:52px!important;top:-15px!important;background-size:contain!important;background-position:center!important}
@media(max-width:700px){.paper-pin,.archive-note>.paper-pin{width:20px!important;height:43px!important;top:-12px!important}}
/* 9 · 放回桌面 on calendar cards */
.archive-foot .archive-return{padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer;text-decoration:none}
.archive-foot .archive-return:hover{color:var(--text,var(--ink))}
/* 5 · root cause of the black box: the detail page's big-image rules (18px margin, near-black backdrop) also hit thumbnails */
#noteDialog.is-note-detail #detailPreview .gallery-thumb img{width:100%!important;height:100%!important;max-height:none!important;margin:0!important;object-fit:cover!important;background:transparent!important;border-radius:6px!important}
#noteDialog.is-note-detail #detailPreview .gallery-image img{margin:0!important;max-height:none!important;background:transparent!important;border-radius:0!important}
dialog.detail-leave>div>button{width:100%;margin:0!important}
/* 8 · the calendar pile's shared clip: same size and bite as the desk clip */
.pile-shared-pin{width:24px!important;height:52px!important;top:-1px!important;background-size:contain!important;background-position:center!important}
/* 3 · the dashed box around a note was the "⌘V pastes a screenshot here" hint; the note's own "+ 添加截图 · Ctrl/⌘V" line already says it */
.note.is-paste-target{outline:0!important}

/* ===== Claude 2026-11-13 · 大屏适配 + 缩略图 ===== */
/* thumbnails: the scroll row clipped the selected ring; give it room inside the row */
#noteDialog .gallery-order{padding:8px 6px 10px;margin:4px -6px 0}
/* wide screens: header, content and corner buttons share one rail; the rail grows with the screen */
@media(min-width:701px){.topbar{max-width:none;padding-left:var(--page-edge);padding-right:var(--page-edge)}}
@media(min-width:1800px){:root{--page-max:min(2240px,100vw);--page-gutter:56px}}
/* calendar: on tall screens the month fills the screen instead of leaving the bottom half empty */
@media(min-width:1101px) and (min-height:900px){.calendar-grid .day{min-height:max(108px,calc((100dvh - var(--cal-chrome,290px))/6))}}
@media(min-width:1800px){.calendar-layout{grid-template-columns:minmax(0,1fr) 340px;gap:48px}}
/* desk keeps its 4-column width (positions are shared across screens as fractions of this width); it sits centred on the wide rail */
@media(min-width:1800px){#boardView{max-width:1504px;margin-left:auto;margin-right:auto}}

/* ===== Claude 2026-11-13 · 账号胶囊、菜单图标、深色切换 ===== */
/* the date leaves the top bar; the ? moves into the account menu */
#todayLabel,.top-right .date-label{display:none!important}
#helpBtn,.floating-help{display:none!important}
/* avatar + name + ⋮ pill */
.top-right .avatar.wa-pill{width:auto!important;height:40px!important;display:inline-flex;align-items:center;gap:9px;padding:0 8px 0 5px;border:0;border-radius:20px;background:var(--chip,#E2DFD8);color:var(--ink);font:400 13.5px/1 var(--sans);cursor:pointer;overflow:visible;transition:background-color .18s ease}
.top-right .avatar.wa-pill:hover,.top-right .avatar.wa-pill[aria-expanded=true]{background:color-mix(in srgb,var(--chip,#E2DFD8) 82%,var(--ink,#2A2925))}
.top-right .avatar.wa-pill:focus-visible{outline:0;box-shadow:0 0 0 2px var(--bg),0 0 0 4px color-mix(in srgb,var(--bg) 60%,var(--ink))}
.wa-pill-avatar{position:relative;width:30px;height:30px;flex:none;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:color-mix(in srgb,var(--chip,#E2DFD8) 80%,var(--ink,#2A2925));color:var(--ink-2)}
.wa-pill-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.wa-pill-avatar .wa-avatar-letter{font-size:13px}
.wa-pill-name{max-width:15em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wa-pill-dots{flex:none;color:var(--ink-2);margin-left:2px}
@media(max-width:700px){.wa-pill-name{display:none}.top-right .avatar.wa-pill{gap:4px;padding:0 4px 0 4px;height:38px!important}}
/* menu sits under the pill, on the same right rail */
.wa-menu{right:var(--page-edge)!important;top:72px!important;width:264px}
@media(max-width:700px){.wa-menu{right:12px!important;top:62px!important}}
.wa-menu .wa-item.has-ico{gap:12px}
.wa-menu .wa-item .wa-ico{flex:none;color:var(--ink-2);transition:transform .45s cubic-bezier(.3,1.4,.5,1)}
.wa-menu .wa-item-label{flex:1;min-width:0;text-align:left}
.wa-menu .wa-language-value{margin-left:0}
.wa-menu .wa-gap{margin:8px 16px}
.wa-legal{display:flex;gap:8px;align-items:center;padding:10px 16px 0;font-size:12px;color:#8C897F}
.wa-legal a{color:inherit;text-decoration:none}.wa-legal a:hover{color:var(--ink)}
.wa-menu .wa-version{padding-top:6px}
/* switches (no 开/关 text) */
.wa-switch{position:relative;flex:none;width:34px;height:20px;border-radius:10px;background:#D9D5CC;transition:background-color .22s ease}
.wa-switch i{position:absolute;left:2px;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(42,41,37,.22);transition:transform .26s cubic-bezier(.3,1.3,.5,1)}
.wa-switch.is-on{background:#2A2925}.wa-switch.is-on i{transform:translateX(14px)}
/* small hover motions on the icons */
.wa-menu .wa-item:hover .ico-profile{transform:translateY(-1.5px)}
.wa-menu .wa-item:hover .ico-language{transform:rotate(-20deg)}
.wa-menu .wa-item:hover .ico-sound .w1{animation:wa-wave 1s ease infinite}.wa-menu .wa-item:hover .ico-sound .w2{animation:wa-wave 1s ease .15s infinite}
@keyframes wa-wave{0%,100%{opacity:1}50%{opacity:.25}}
.wa-menu .wa-item:hover .ico-export .arrow{animation:wa-down .7s ease}
.wa-menu .wa-item:hover .ico-import .arrow{animation:wa-up .7s ease}
@keyframes wa-down{0%,100%{transform:none}45%{transform:translateY(2.5px)}}
@keyframes wa-up{0%,100%{transform:none}45%{transform:translateY(-2.5px)}}
.wa-menu .wa-item:hover .ico-guide{transform:rotate(14deg)}
.wa-menu .wa-item:hover .ico-feedback{transform:translateY(-1.5px) rotate(-6deg)}
.wa-menu .wa-item:hover .ico-contact{transform:translateX(1.5px) rotate(-4deg)}
.wa-menu .wa-item:hover .ico-beta{transform:rotate(-12deg)}
.wa-menu .wa-item:hover .ico-community{transform:scale(1.1)}
.wa-menu .wa-item:hover .ico-logout .arrow{animation:wa-out .6s ease}
@keyframes wa-out{0%,100%{transform:none}50%{transform:translateX(2.5px)}}
.wa-ico .arrow,.wa-ico .w1,.wa-ico .w2{transform-box:fill-box;transform-origin:center}
/* theme icon: moon in light mode, sun in dark mode; the swap turns and fades */
.ico-theme .sun,.ico-theme .moon{transform-box:view-box;transform-origin:12px 12px;transition:transform .5s cubic-bezier(.3,1.2,.4,1),opacity .3s ease}
.ico-theme .sun{opacity:0;transform:rotate(-90deg) scale(.4)}
.ico-theme .moon{opacity:1;transform:none}
html[data-theme="dark"] .ico-theme .sun{opacity:1;transform:none}
html[data-theme="dark"] .ico-theme .moon{opacity:0;transform:rotate(90deg) scale(.4)}
.wa-menu .wa-item:hover .ico-theme .moon{transform:rotate(-18deg)}
html[data-theme="dark"] .wa-menu .wa-item:hover .ico-theme .sun{transform:rotate(45deg)}
/* page colours glide when switching */
html.theme-gliding,html.theme-gliding body,html.theme-gliding .topbar,html.theme-gliding #captureForm{transition:background-color .35s ease,color .35s ease}
/* help bubble now points at the pill */
.ac-help-bubble{top:78px;bottom:auto!important;right:var(--page-edge)!important}
@media(prefers-reduced-motion:reduce){.wa-menu .wa-ico,.wa-menu .wa-ico *,.ico-theme .sun,.ico-theme .moon,.wa-switch,.wa-switch i{transition:none!important;animation:none!important}}
/* -- 2026-11-13 第二轮：胶囊对齐、圆形按钮、MingCute 图标动效 -- */
/* an old rule (.avatar img at 155%, top -42%) cropped faces for the first round avatar; the pill shows the whole photo, centred */
.top-right .wa-pill-avatar img{position:static!important;inset:auto!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:center}
/* name: room for descenders (g, y, p) */
.wa-pill-name{line-height:1.35;padding:1px 0 2px;display:block}
.top-right{display:flex;align-items:center;gap:10px}
.wa-top-tools{display:flex;align-items:center;gap:10px}
.wa-round{width:40px;height:40px;flex:none;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:var(--chip,#E2DFD8);color:var(--ink-2);cursor:pointer;transition:background-color .18s ease,color .18s ease}
.wa-round:hover{background:color-mix(in srgb,var(--chip,#E2DFD8) 82%,var(--ink,#2A2925));color:var(--ink)}
.wa-round:focus-visible{outline:0;box-shadow:0 0 0 2px var(--bg),0 0 0 4px color-mix(in srgb,var(--bg) 60%,var(--ink))}
.wa-round .wa-ico{width:20px;height:20px;transition:transform .45s cubic-bezier(.3,1.4,.5,1)}
.wa-round:hover .ico-guide{transform:rotate(14deg)}
.wa-round:hover .ico-feedback{transform:translateY(-1.5px) rotate(-8deg)}
@media(max-width:700px){.wa-top-tools{gap:6px}.wa-round{width:38px;height:38px}}
.wa-round.ac-calling{box-shadow:0 0 0 3px var(--bg),0 0 0 5px color-mix(in srgb,var(--bg) 55%,var(--ink));animation:wa-call 1.6s ease-in-out infinite}
@keyframes wa-call{0%,100%{transform:none}50%{transform:translateY(-2px)}}
/* single-path icons: move the whole glyph */
.wa-menu .wa-item:hover .ico-sound{animation:wa-pulse .9s ease}
@keyframes wa-pulse{0%,100%{transform:none}40%{transform:scale(1.14)}}
.wa-menu .wa-item:hover .ico-export{animation:wa-down .7s ease}
.wa-menu .wa-item:hover .ico-import{animation:wa-up .7s ease}
.wa-menu .wa-item:hover .ico-logout{animation:wa-out .6s ease}
.wa-menu .wa-item:hover .ico-contact{transform:translateX(1.5px) rotate(-6deg)}
.ico-theme .sun,.ico-theme .moon{transform-box:view-box;transform-origin:12px 12px}
@media(prefers-reduced-motion:reduce){.wa-round .wa-ico,.wa-round.ac-calling{transition:none!important;animation:none!important}}
.top-right .avatar.wa-pill .wa-pill-avatar img{width:30px!important;height:30px!important;min-height:0!important;margin:0!important;transform:none!important}
/* -- 2026-11-13 第三轮：右下角按钮、菜单图标更细 -- */
/* menu icons: drawn at 16px so the MingCute lines read a touch finer; the two top buttons stay at 20px */
.wa-menu .wa-item .wa-ico{width:16px;height:16px}
/* search and trash: same chip circles and icon set as the buttons beside the avatar */
.floating-search,.floating-trash{width:40px!important;height:40px!important;padding:0;border:0!important;border-radius:50%;background:var(--chip,#E2DFD8)!important;color:var(--ink-2)!important;display:grid!important;place-items:center;transition:background-color .18s ease,color .18s ease,transform .18s ease}
.floating-search:hover,.floating-trash:hover,.floating-search:focus-visible,.floating-trash:focus-visible{background:color-mix(in srgb,var(--chip,#E2DFD8) 82%,var(--ink,#2A2925))!important;color:var(--ink)!important;outline:0}
.floating-search .mc-ico,.floating-trash .mc-ico{width:20px;height:20px;transition:transform .45s cubic-bezier(.3,1.4,.5,1)}
.floating-search:hover .mc-ico{transform:rotate(-12deg) scale(1.05)}
.floating-trash:hover .mc-ico{transform:rotate(8deg)}
@media(min-width:701px){.floating-search{bottom:80px!important}.floating-trash{bottom:28px!important}}
@media(max-width:700px){.floating-search,.floating-trash{width:38px!important;height:38px!important}}
.floating-trash .trash-count{right:-3px;top:-3px}
@media(prefers-reduced-motion:reduce){.floating-search .mc-ico,.floating-trash .mc-ico{transition:none}}
