/* 高级玻璃材质预览：原配色由既有主题决定，这里只替换容器材质与层级。 */
html.north-glass-ui{--ng-blur:28px;--ng-sat:155%;--ng-line:rgba(255,255,255,.22);--ng-line-soft:rgba(255,255,255,.11);--ng-shadow:0 18px 44px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.18);--ng-dark:rgba(30,27,34,.57);--ng-dark-strong:rgba(25,22,29,.72);--ng-light:rgba(255,255,255,.56);--ng-light-strong:rgba(255,255,255,.7)}
html.north-glass-ui .glass-app{isolation:isolate}
html.north-glass-ui .home .app .ic.glass-pack-icon,
html.north-glass-ui .home:not(.tpink):not(.twhite) .app .ic.glass-pack-icon{background:transparent!important;border:0!important;box-shadow:none!important;overflow:hidden!important}
html.north-glass-ui .home .app .ic.glass-pack-icon>img{inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;object-fit:contain!important;object-position:50% 50%!important;border-radius:inherit;filter:none;transform:none}
html.north-glass-ui .glass-app>.nav,
html.north-glass-ui .glass-app>.tabbar,
html.north-glass-ui .glass-app .inputbar,
html.north-glass-ui .glass-app .panel,
html.north-glass-ui .glass-app>.scroll>.section,
html.north-glass-ui .glass-app>.scroll>.list,
html.north-glass-ui .glass-app>.scroll>.bill{border-color:var(--ng-line-soft);box-shadow:inset 0 1px rgba(255,255,255,.08);backdrop-filter:blur(var(--ng-blur)) saturate(var(--ng-sat));-webkit-backdrop-filter:blur(var(--ng-blur)) saturate(var(--ng-sat))}

/* 主屏：不改 App 图案，只让承载层变成玻璃，并整体轻微放大。 */
html.north-glass-ui .home .hwid:not(.wpet),
html.north-glass-ui .home .dock,
html.north-glass-ui .home .home-editbar{overflow:hidden;border:1px solid var(--ng-line)!important;box-shadow:var(--ng-shadow)!important;backdrop-filter:blur(22px) saturate(150%)!important;-webkit-backdrop-filter:blur(22px) saturate(150%)!important}

html.north-glass-ui .home:not([style*="background:url"]){background:radial-gradient(circle at 74% 18%,rgba(255,255,255,.055),transparent 28%),radial-gradient(circle at 20% 56%,rgba(255,255,255,.035),transparent 32%),linear-gradient(160deg,#101114,#030405 58%,#0a0b0d)!important;color:#f3f3f4}
html.north-glass-ui .home:not([style*="background:url"]):before{background:radial-gradient(circle,rgba(255,255,255,.055),transparent 70%);opacity:.7}
html.north-glass-ui .home:not([style*="background:url"]):after{background:radial-gradient(circle,rgba(148,154,166,.09),transparent 70%);opacity:.6}
html.north-glass-ui .home[style*="background:url"]:before,html.north-glass-ui .home[style*="background:url"]:after{display:none!important;content:none!important}
html.north-glass-ui .home:not(.tpink):not(.twhite) .hwid:not(.wpet){background:linear-gradient(145deg,rgba(24,25,29,.2),rgba(8,9,12,.09))!important}
html.north-glass-ui .home:not(.tpink):not(.twhite) .dock{background:linear-gradient(145deg,rgba(25,27,31,.18),rgba(7,8,10,.08))!important}
html.north-glass-ui .home.tpink .hwid:not(.wpet),html.north-glass-ui .home.tpink .dock{background:linear-gradient(145deg,rgba(255,219,233,.18),rgba(247,180,207,.08))!important}
html.north-glass-ui .home.twhite .hwid:not(.wpet),html.north-glass-ui .home.twhite .dock{background:linear-gradient(145deg,rgba(255,255,255,.2),rgba(229,231,239,.09))!important}
html.north-glass-ui .home .hwid:not(.wpet):before,
html.north-glass-ui .home .dock:before{content:"";position:absolute;left:8%;right:8%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.82),transparent);pointer-events:none}
/* 图标沿用液态玻璃教程的镂空细高光：只包边，不铺白色蒙层。 */
html.north-glass-ui .home .app .ic{width:64px;height:64px;border-radius:20px;border:0!important;box-shadow:0 5px 14px rgba(9,8,11,.12)!important;isolation:isolate}
html.north-glass-ui .home .app .ic.custom-app-icon{background:transparent!important}
html.north-glass-ui .home .app .ic:after{content:'';position:absolute;inset:0;z-index:3;border-radius:inherit;pointer-events:none;padding:.8px;box-sizing:border-box;background:linear-gradient(140deg,rgba(255,255,255,.88),rgba(255,255,255,.32) 26%,rgba(255,255,255,.14) 50%,rgba(255,255,255,.38) 76%,rgba(255,255,255,.8));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;-webkit-backdrop-filter:none;backdrop-filter:none}
html.north-glass-ui.north-icon-rim-black .home .app .ic:after{background:linear-gradient(140deg,rgba(0,0,0,.86),rgba(0,0,0,.48) 26%,rgba(0,0,0,.26) 50%,rgba(0,0,0,.52) 76%,rgba(0,0,0,.8));-webkit-backdrop-filter:none;backdrop-filter:none}
html.north-glass-ui .home .dock .app .ic{width:64px;height:64px}
html.north-glass-ui .home .app>span{font-size:10.5px;color:#f5f5f6;text-shadow:0 1px 4px rgba(0,0,0,.9);font-weight:560}

/* 微信夜间/白天共用同一套高级玻璃，只保留原有明暗差异。 */
html.north-glass-ui .wx-glass{position:relative;background:radial-gradient(circle at 88% -8%,rgba(167,110,151,.19),transparent 36%),linear-gradient(180deg,#18151b,#211b21 58%,#151419)!important}
html.north-glass-ui .wx-glass.wxlight{background:radial-gradient(circle at 88% -8%,rgba(255,190,218,.34),transparent 34%),linear-gradient(180deg,#f7f0f4,#eee8ed 62%,#f6f3f5)!important}
html.north-glass-ui .wx-glass>.nav,
html.north-glass-ui .wx-glass>.tabbar,
html.north-glass-ui .wx-glass .inputbar,
html.north-glass-ui .wx-glass .panel,
html.north-glass-ui .wx-glass .moodbar,
html.north-glass-ui .wx-glass .manual-reply-row{background:var(--ng-dark-strong)!important;border-color:var(--ng-line-soft)!important;box-shadow:inset 0 1px rgba(255,255,255,.1);backdrop-filter:blur(30px) saturate(160%);-webkit-backdrop-filter:blur(30px) saturate(160%)}
html.north-glass-ui .wx-glass.wxlight>.nav,
html.north-glass-ui .wx-glass.wxlight>.tabbar,
html.north-glass-ui .wx-glass.wxlight .inputbar,
html.north-glass-ui .wx-glass.wxlight .panel,
html.north-glass-ui .wx-glass.wxlight .moodbar,
html.north-glass-ui .wx-glass.wxlight .manual-reply-row{background:var(--ng-light-strong)!important;border-color:rgba(255,255,255,.76)!important}
html.north-glass-ui .wx-glass>.scroll,
html.north-glass-ui .wx-glass .chatbg{background:transparent!important}
html.north-glass-ui .wx-glass .list .row,
html.north-glass-ui .wx-glass .section,
html.north-glass-ui .wx-glass .bill,
html.north-glass-ui .wx-glass .mpost{background:linear-gradient(145deg,rgba(54,48,56,.55),rgba(31,28,34,.45))!important;border-color:var(--ng-line-soft)!important;box-shadow:inset 0 1px rgba(255,255,255,.07);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%)}
html.north-glass-ui .wx-glass.wxlight .list .row,
html.north-glass-ui .wx-glass.wxlight .section,
html.north-glass-ui .wx-glass.wxlight .bill,
html.north-glass-ui .wx-glass.wxlight .mpost{background:linear-gradient(145deg,rgba(255,255,255,.69),rgba(247,235,242,.53))!important;border-color:rgba(255,255,255,.72)!important;box-shadow:inset 0 1px rgba(255,255,255,.86)}
html.north-glass-ui .wx-glass .msg.them .bubble{background:linear-gradient(145deg,rgba(66,60,69,.76),rgba(39,36,43,.72))!important;border:1px solid var(--ng-line-soft);box-shadow:0 7px 18px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.09);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
html.north-glass-ui .wx-glass.wxlight .msg.them .bubble{background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(247,240,244,.72))!important;border-color:rgba(255,255,255,.78);box-shadow:0 7px 18px rgba(85,68,80,.1),inset 0 1px #fff}
html.north-glass-ui .wx-glass .msg.me .bubble{background:linear-gradient(145deg,rgba(75,196,113,.82),rgba(44,146,86,.72))!important;border:1px solid rgba(185,255,207,.34);box-shadow:0 7px 18px rgba(17,91,52,.18),inset 0 1px rgba(255,255,255,.26);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}

/* 微信真实外卖回执：订单事实留在卡片，角色只需发一句自然短话。 */
.wx-real-delivery-card{width:260px;max-width:calc(100vw - 104px);overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:linear-gradient(155deg,rgba(37,35,32,.96),rgba(18,18,20,.94));box-shadow:0 13px 30px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.07);color:#eee;cursor:pointer;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.wx-real-delivery-hero{display:flex;gap:11px;padding:12px 12px 9px}.wx-real-delivery-thumb{position:relative;width:66px;height:66px;flex:0 0 66px;overflow:hidden;border-radius:13px;background:linear-gradient(145deg,#3d3127,#1b1715);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.wx-real-delivery-thumb img{width:100%;height:100%;display:block;object-fit:cover}.wx-real-delivery-thumb span{display:none;position:absolute;inset:0;place-items:center;font-size:29px}.wx-real-delivery-thumb.fallback span{display:grid}.wx-real-delivery-copy{min-width:0;flex:1;padding-top:1px}.wx-real-delivery-copy small{display:block;color:#d6a86c;font-size:8px;letter-spacing:.13em;white-space:nowrap}.wx-real-delivery-copy h4{margin:6px 0 3px;color:#f4f1ec;font-size:14px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wx-real-delivery-copy p{margin:0;color:#a9a6a2;font-size:11px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.wx-real-delivery-spec{margin:0 12px;padding:8px 0;border-top:1px solid rgba(255,255,255,.07);color:#b8b3ad;font-size:10px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.wx-real-delivery-meta{display:flex;align-items:flex-end;justify-content:space-between;gap:9px;padding:1px 12px 10px}.wx-real-delivery-meta b{color:#ffc46f;font-size:20px;line-height:1;font-variant-numeric:tabular-nums}.wx-real-delivery-meta span{color:#8f8c88;font-size:9px;text-align:right}.wx-real-delivery-card footer{display:flex;justify-content:space-between;align-items:center;padding:7px 12px;border-top:1px solid rgba(255,255,255,.065);background:rgba(255,255,255,.035);font-size:9px}.wx-real-delivery-card footer span{color:#f0b361}.wx-real-delivery-card footer i{color:#777;font-style:normal}.wx-real-delivery-card.state-paid footer span,.wx-real-delivery-card.state-merchant_confirmed footer span,.wx-real-delivery-card.state-preparing footer span,.wx-real-delivery-card.state-delivering footer span,.wx-real-delivery-card.state-delivered footer span{color:#6ed39a}
.wxlight .wx-real-delivery-card{border-color:rgba(137,111,87,.16);background:linear-gradient(155deg,rgba(255,255,255,.96),rgba(249,244,238,.92));box-shadow:0 12px 26px rgba(98,75,57,.13),inset 0 1px #fff;color:#24201c}.wxlight .wx-real-delivery-thumb{background:linear-gradient(145deg,#f2e3d3,#e4d3c1)}.wxlight .wx-real-delivery-copy h4{color:#2b241e}.wxlight .wx-real-delivery-copy p,.wxlight .wx-real-delivery-spec{color:#746b62}.wxlight .wx-real-delivery-spec{border-color:rgba(88,67,48,.1)}.wxlight .wx-real-delivery-meta span{color:#8f8175}.wxlight .wx-real-delivery-card footer{border-color:rgba(88,67,48,.1);background:rgba(126,94,66,.045)}
.wx-real-delivery-detail{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.wx-real-delivery-detail-image,.wx-real-delivery-detail-placeholder{width:100%;height:176px;margin:4px 0 13px;border-radius:16px;object-fit:cover;background:linear-gradient(145deg,#332920,#171513)}.wx-real-delivery-detail-placeholder{display:grid;place-items:center;font-size:58px}.wx-real-delivery-detail-shop small{color:#d6a86c;font-size:9px;letter-spacing:.12em}.wx-real-delivery-detail-shop h4{margin:4px 0 11px;font-size:18px}.wx-real-delivery-detail-list{overflow:hidden;border:1px solid rgba(255,255,255,.075);border-radius:14px;background:rgba(255,255,255,.025)}.wx-real-delivery-detail-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:11px 12px;border-bottom:1px solid rgba(255,255,255,.065)}.wx-real-delivery-detail-item:last-child{border-bottom:0}.wx-real-delivery-detail-item div{min-width:0}.wx-real-delivery-detail-item b,.wx-real-delivery-detail-item small{display:block}.wx-real-delivery-detail-item b{font-size:13px}.wx-real-delivery-detail-item small{margin-top:4px;color:#8d8985;font-size:10px;line-height:1.45}.wx-real-delivery-detail-item>span{flex:none;color:#d7b27f;font-size:12px}.wx-real-delivery-detail-facts{display:grid;grid-template-columns:1fr 1fr;margin:11px 0;overflow:hidden;border:1px solid rgba(255,255,255,.075);border-radius:14px}.wx-real-delivery-detail-facts span{padding:10px 11px;border-right:1px solid rgba(255,255,255,.065);border-bottom:1px solid rgba(255,255,255,.065)}.wx-real-delivery-detail-facts span:nth-child(2){border-right:0}.wx-real-delivery-detail-facts span:last-child{grid-column:1/3;border:0}.wx-real-delivery-detail-facts small,.wx-real-delivery-detail-facts b{display:block}.wx-real-delivery-detail-facts small{color:#777;font-size:9px}.wx-real-delivery-detail-facts b{margin-top:4px;font-size:12px}.wx-real-delivery-qr{display:flex;flex-direction:column;align-items:center;margin:12px 0;padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.035)}.wx-real-delivery-qr img{width:min(230px,72vw);height:auto;border:10px solid #fff;border-radius:12px}.wx-real-delivery-qr b{margin-top:9px;font-size:12px}.wx-real-delivery-qr small{margin-top:4px;color:#85817d;font-size:9px;text-align:center}.wxlight .wx-real-delivery-detail-list,.wxlight .wx-real-delivery-detail-facts,.wxlight .wx-real-delivery-qr{border-color:rgba(88,67,48,.11);background:rgba(126,94,66,.04)}.wxlight .wx-real-delivery-detail-item,.wxlight .wx-real-delivery-detail-facts span{border-color:rgba(88,67,48,.1)}
html.north-glass-ui .wx-glass textarea,
html.north-glass-ui .wx-glass input,
html.north-glass-ui .wx-glass select{border-color:var(--ng-line-soft)!important;background:rgba(255,255,255,.08)!important;box-shadow:inset 0 1px rgba(255,255,255,.07);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
html.north-glass-ui .wx-glass.wxlight textarea,
html.north-glass-ui .wx-glass.wxlight input,
html.north-glass-ui .wx-glass.wxlight select{border-color:rgba(255,255,255,.8)!important;background:rgba(255,255,255,.59)!important;box-shadow:inset 0 1px #fff}

/* 小手机好友完整跟随微信黑白主题，避免白色主题只换外框、卡片仍是黑色。 */
.pf-friends-page{background:#000!important;color:#f0f0f0}
.pf-friends-kicker{padding:12px 14px 4px;color:#c9cbd0;font-weight:700}
.pf-id-title{padding-top:13px;padding-bottom:6px;color:#9ec5fe}
.pf-request-title{color:#ffb6d0}.pf-outgoing-title{color:#aaa}
.pf-friends-search-row{display:flex;gap:8px;padding:6px 14px 12px}
.pf-friends-search{min-width:0;flex:1;border:1px solid #38383a;border-radius:9px;padding:9px;background:#2c2c2e;color:#eee;text-transform:uppercase}
.pf-friends-create-group{display:inline-flex;align-items:center;gap:8px;color:#c3c6d2}
.wxlight .pf-friends-page{background:#ededed!important;color:#111}
.wxlight .pf-friends-kicker{color:#55585e}.wxlight .pf-id-title{color:#3377b9}.wxlight .pf-request-title{color:#bb5f81}.wxlight .pf-outgoing-title{color:#777}
.wxlight .pf-friends-search{border-color:#dedee2!important;background:#f2f2f4!important;color:#111!important;box-shadow:none!important}
.wxlight .pf-friends-create-group{color:#52545a}
.wxlight .pf-friends-list{background:#fff}

/* 设置页同样使用完整玻璃层，而不是只改一张设置卡。 */
html.north-glass-ui .settings-glass{background:radial-gradient(circle at 88% 0,rgba(130,101,177,.25),transparent 34%),linear-gradient(180deg,#151419,#211c23)!important}
html.north-glass-ui .settings-glass>.nav{background:rgba(31,28,35,.68)!important;border-color:var(--ng-line-soft)!important;box-shadow:inset 0 1px rgba(255,255,255,.1);backdrop-filter:blur(30px) saturate(160%);-webkit-backdrop-filter:blur(30px) saturate(160%)}
html.north-glass-ui .settings-glass>#settingsscroll{background:transparent!important}
html.north-glass-ui .settings-glass .section{overflow:hidden;border:1px solid var(--ng-line-soft)!important;border-radius:18px!important;background:linear-gradient(145deg,rgba(53,47,57,.58),rgba(30,27,34,.5))!important;box-shadow:0 15px 35px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.09)!important;backdrop-filter:blur(25px) saturate(145%);-webkit-backdrop-filter:blur(25px) saturate(145%)}
html.north-glass-ui .settings-glass .section .it{min-height:48px;border-color:rgba(255,255,255,.065)!important;background:transparent!important}
html.north-glass-ui .settings-glass .field input,
html.north-glass-ui .settings-glass .field textarea,
html.north-glass-ui .settings-glass .field select,
html.north-glass-ui .settings-glass .minibtn{border:1px solid var(--ng-line-soft)!important;background:rgba(255,255,255,.075)!important;box-shadow:inset 0 1px rgba(255,255,255,.08);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}

/* 屏保主体继续沿用 v910；只让主页顶部“回到屏保”箭头随透明玻璃图标主题换色。纯黑保持原来的深灰按钮。 */
html.north-glass-ui.north-pack-pink .lockpull{border:1px solid rgba(255,226,239,.34);background:linear-gradient(145deg,rgba(164,83,116,.82),rgba(105,50,76,.72));box-shadow:0 7px 20px rgba(74,18,42,.27),inset 0 1px 0 rgba(255,239,247,.25)}
html.north-glass-ui.north-pack-pink .lockpull:before{border-color:rgba(255,226,239,.96)}
html.north-glass-ui.north-pack-blue .lockpull{border:1px solid rgba(225,240,255,.32);background:linear-gradient(145deg,rgba(69,99,139,.82),rgba(37,60,92,.72));box-shadow:0 7px 20px rgba(9,29,58,.29),inset 0 1px 0 rgba(239,247,255,.24)}
html.north-glass-ui.north-pack-blue .lockpull:before{border-color:rgba(220,237,255,.97)}
html.north-glass-ui.north-pack-gray .lockpull{border:1px solid rgba(255,255,255,.7);background:linear-gradient(145deg,rgba(250,251,253,.9),rgba(208,212,220,.8));box-shadow:0 7px 20px rgba(34,37,44,.2),inset 0 1px 0 rgba(255,255,255,.92)}
html.north-glass-ui.north-pack-gray .lockpull:before{border-color:rgba(72,76,85,.9)}
/* 顶部状态条与私人 iOS 安全区使用同一套浅色主题；纯黑继续保持原样。 */
html.north-glass-ui.north-shell-pink .statusbar{background:#ffeaf3!important;color:#704257!important}
html.north-glass-ui.north-shell-blue .statusbar{background:#eaf4ff!important;color:#355271!important}
html.north-glass-ui.north-shell-gray .statusbar{background:#e6e8ec!important;color:#42464e!important}
html.north-glass-ui.north-shell-white .statusbar{background:#fff!important;color:#111!important}
html.north-native-app .statusbar{display:none!important}
/* Web/PWA outer chrome and safe-area backdrop follow the selected shell theme.
   The native private app keeps using its dedicated status-bar bridge. */
html.north-shell-black,html.north-shell-black body,html.north-shell-black .phone{background-color:#000!important}
html.north-shell-pink,html.north-shell-pink body,html.north-shell-pink .phone{background-color:#ffeaf3!important}
html.north-shell-blue,html.north-shell-blue body,html.north-shell-blue .phone{background-color:#eaf4ff!important}
html.north-shell-gray,html.north-shell-gray body,html.north-shell-gray .phone{background-color:#e6e8ec!important}
html.north-shell-white,html.north-shell-white body,html.north-shell-white .phone{background-color:#fff!important}
html.north-glass-ui .msgbanner{border-color:rgba(255,255,255,.24);background:linear-gradient(145deg,rgba(67,63,72,.68),rgba(30,29,35,.58));box-shadow:0 18px 42px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.18);backdrop-filter:blur(30px) saturate(165%);-webkit-backdrop-filter:blur(30px) saturate(165%)}
html.north-glass-ui .north-glass-modal{background:rgba(4,4,7,.34);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}
html.north-glass-ui .north-glass-modal .sheet{border:1px solid rgba(255,255,255,.18);background:linear-gradient(145deg,rgba(55,50,59,.82),rgba(26,24,30,.78));box-shadow:0 28px 70px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.14);backdrop-filter:blur(34px) saturate(155%);-webkit-backdrop-filter:blur(34px) saturate(155%)}
html.north-glass-ui .north-glass-modal.wxmodal-light .sheet{background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(240,231,237,.77));border-color:rgba(255,255,255,.82);box-shadow:0 28px 70px rgba(72,57,67,.24),inset 0 1px #fff}

/* 主屏时间本身的玻璃高光；颜色由用户独立选择。 */
html.north-glass-ui .home-premium-head{display:none!important;height:0!important;padding:0!important}

/* 可拖动黑色组件：沿用主屏既有 home-item/data-token 拖动机制。 */
.hwwrap .home-widget-dashboard,.apppage .home-widget-dashboard{grid-column:1/-1;grid-row:span 2;min-height:164px}
.home-dashboard-card{display:grid!important;grid-template-columns:minmax(0,1fr) 128px;gap:8px;padding:9px!important;background:linear-gradient(145deg,rgba(28,29,33,.18),rgba(7,8,10,.08))!important;border-color:rgba(255,255,255,.24)!important;border-radius:25px!important;color:#fff!important}
.home-dashboard-card:after,.home-vinyl-card:after,.home-sweetie-card:after{display:none}
.home-dashboard-grid{display:grid;grid-template-columns:.72fr 1fr 1fr;grid-template-rows:.72fr 1fr;gap:7px;min-width:0;height:128px;align-self:center}
.home-dashboard-grid>div,.home-dashboard-photo{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:linear-gradient(145deg,rgba(70,71,76,.18),rgba(16,17,20,.08));box-shadow:inset 0 1px rgba(255,255,255,.08)}
.dash-heart{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.dash-heart small{font-size:12px;font-weight:750}.dash-heart small i{display:block;font-size:6px;font-style:normal;letter-spacing:.1em;opacity:.55;text-align:center}
.dash-time{grid-column:span 2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;text-align:center;padding:1px 0 2px;box-sizing:border-box}.dash-time b{display:block;font-size:24px;line-height:.94;letter-spacing:-.04em}.dash-time small{display:block;margin-top:2px;font-size:7px;line-height:1;opacity:.82;white-space:nowrap}
.home-dashboard-grid>.dash-battery{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.dash-battery svg{width:19px;height:19px}.dash-battery b{font-size:9px;color:#fff}
.dash-device{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.dash-device b{font-size:8px;opacity:.8}
.dash-storage{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}.dash-storage i{position:relative;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#f3f3f3 var(--dash-store),#555 0);font-style:normal}.dash-storage i:after{content:"";position:absolute;inset:6px;border-radius:50%;background:#242424}.dash-storage em{position:relative;z-index:1;font-style:normal;font-size:7px;font-weight:650}.dash-storage small{max-width:58px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7px;font-weight:600;opacity:.86}
.home-dashboard-card,.home-dashboard-grid,.home-dashboard-photo{min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden}.home-dashboard-photo{width:128px;height:128px;align-self:center;justify-self:end;background:linear-gradient(145deg,rgba(55,57,63,.18),rgba(8,9,12,.08))!important}.home-dashboard-photo img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-width:100%!important;max-width:none!important;margin:0!important;padding:0!important;object-fit:cover!important;object-position:50% 50%!important;border:0!important;border-radius:inherit!important}.home-dashboard-photo-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#aaa}.home-dashboard-photo-empty small{font-size:8px}
.apppage .home-widget-vinyl{grid-column:span 2;grid-row:span 2;min-height:164px;aspect-ratio:1}.home-vinyl-card{display:block!important;padding:10px!important;background:linear-gradient(145deg,rgba(28,29,33,.18),rgba(7,8,10,.08))!important;border-color:rgba(255,255,255,.22)!important;border-radius:25px!important;color:#fff!important}.vinyl-label{position:absolute;left:11px;top:8px;z-index:3;font:italic 10px Georgia,serif;opacity:.78}.vinyl-record{position:absolute;left:15px;right:15px;top:15px;aspect-ratio:1;border-radius:50%}.vinyl-record:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:repeating-radial-gradient(circle,rgba(255,255,255,.08) 0 1px,transparent 1.7px 3.3px),radial-gradient(circle at 36% 31%,#f4f4f3 0,#b9b9b7 18%,#686967 43%,#d8d8d6 61%,#525351 78%,#a9aaa8 100%);box-shadow:0 7px 18px rgba(0,0,0,.55),inset 0 0 0 1px #e6e6e3,inset 0 0 18px rgba(255,255,255,.35);opacity:var(--home-vinyl-opacity,1)}.vinyl-cover{position:absolute!important;inset:25%!important;width:50%!important;height:50%!important;display:grid;place-items:center;border-radius:50%!important;object-fit:cover!important;background:#24262b;color:#fff;font-size:13px;font-style:normal}.vinyl-record>b{position:absolute;z-index:2;left:50%;top:50%;width:5px;height:5px;border-radius:50%;background:#f1f1f1;transform:translate(-50%,-50%)}.vinyl-arm{position:absolute;z-index:2;right:4px;top:14px;width:45px;height:131px;overflow:visible;filter:drop-shadow(0 2px 2px #000)}.vinyl-arm circle{fill:#777;stroke:#eee;stroke-width:6}.vinyl-arm path{fill:none;stroke:#e7e7ea;stroke-width:6;stroke-linecap:round}.vinyl-arm rect{fill:#bfc0c5;stroke:#eee;stroke-width:2}
.vinyl-cover{inset:25%!important;width:50%!important;height:50%!important;max-width:none!important;object-position:50% 50%!important;box-shadow:0 0 0 4px rgba(0,0,0,.78),inset 0 0 10px rgba(0,0,0,.28)!important}
.home-vinyl-card .vinyl-cover{inset:20%!important;width:60%!important;height:60%!important}
.apppage .home-widget-sweetie{grid-column:span 2;grid-row:span 2;min-height:164px;aspect-ratio:1}.home-sweetie-card{display:block!important;padding:14px!important;background:linear-gradient(145deg,rgba(28,29,33,.18),rgba(7,8,10,.08))!important;border-color:rgba(255,255,255,.22)!important;border-radius:25px!important;color:#fff!important}.sweetie-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:9px;width:100%;margin-top:2px}.sweetie-people>div{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0}.sweetie-avatar-picker{width:60px;height:60px;display:grid;place-items:center;flex:0 0 60px;overflow:hidden;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:#333;cursor:pointer;box-sizing:border-box}.sweetie-people img,.sweetie-people svg{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:50% 50%;background:#333}.sweetie-people b{display:block;width:100%;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:12px;font-weight:550;text-align:center}.home-sweetie-card p{position:absolute;left:12px;right:12px;bottom:13px;margin:0;padding:8px 9px;border-radius:14px;background:rgba(255,255,255,.07);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;text-align:center;opacity:.96}
.sweetie-days{position:absolute;left:12px;right:12px;top:98px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit;font:inherit;font-size:9px;line-height:12px;font-weight:550;text-align:center}

/* 参考图固定首屏结构：4x2 信息条；左侧四应用+右侧唱片；左侧双人卡+右侧四应用。 */
html.north-glass-ui .home .apppage{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:82px;gap:10px 7px;padding:9px 14px 13px}
html.north-glass-ui .home .apppage>.home-widget-dashboard{grid-column:span 4;grid-row:span 2}
html.north-glass-ui .home .apppage>.home-widget-vinyl{grid-column:span 2;grid-row:span 2}
html.north-glass-ui .home .apppage>.home-widget-sweetie{grid-column:span 2;grid-row:span 2}
html.north-glass-ui .home .apppage>.app{align-self:start;justify-content:flex-start;gap:4px}
html.north-glass-ui .home .dock{height:80px;min-height:80px;margin-left:16px;margin-right:16px;padding:10px 52px;border-radius:25px;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
html.north-glass-ui .home .dock:empty{display:none!important}
html.north-glass-ui .home .dock .app{min-width:0;width:100%;align-items:center}
html.north-glass-ui .home .dock .app .ic{width:64px!important;height:64px!important;border-radius:20px!important}

/* Explicit reference layout. It does not depend on free-grid auto placement. */
html.north-glass-ui .glass-reference-page{position:relative;display:block!important;min-height:635px;padding:8px 16px 16px!important}
html.north-glass-ui .glass-reference-page>.home-item{position:absolute!important;margin:0!important}
html.north-glass-ui .glass-reference-page>.glass-app-drop-slot{position:absolute!important;display:block;pointer-events:none;visibility:hidden}
/* 普通触摸交给浏览器原生滚动与点按；只有长按真正进入拖拽后才独占手势。 */
html.north-glass-ui #homeDesktop .home-item{touch-action:manipulation}
html.north-glass-ui body.home-drag-active #homeDesktop .home-item{touch-action:none}
html.north-glass-ui .glass-reference-page~.apppage{content-visibility:visible}
html.north-glass-ui .glass-reference-page>.glass-place-dashboard{left:16px!important;right:auto!important;top:8px!important;width:calc(100% - 32px)!important;height:154px!important;min-width:0!important;min-height:0!important;max-width:348px!important;box-sizing:border-box!important;overflow:hidden!important}
html.north-glass-ui .glass-reference-page>.glass-place-app-a{left:16px;top:178px;width:calc(25% - 13px);height:90px}
html.north-glass-ui .glass-reference-page>.glass-place-app-b{left:calc(25% + 4px);top:178px;width:calc(25% - 13px);height:90px}
html.north-glass-ui .glass-reference-page>.glass-place-app-c{left:16px;top:269px;width:calc(25% - 13px);height:90px}
html.north-glass-ui .glass-reference-page>.glass-place-app-d{left:calc(25% + 4px);top:269px;width:calc(25% - 13px);height:90px}
html.north-glass-ui .glass-reference-page>.glass-place-vinyl{left:calc(50% - 5px)!important;right:auto!important;top:175px!important;width:calc(50% - 21px)!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:none!important;aspect-ratio:1!important;box-sizing:border-box!important;overflow:hidden!important}
html.north-glass-ui .glass-reference-page>.glass-place-sweetie{left:16px!important;right:auto!important;top:365px!important;width:calc(50% - 21px)!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:none!important;aspect-ratio:1!important;box-sizing:border-box!important;overflow:hidden!important}
html.north-glass-ui .glass-reference-page>.glass-place-app-e{left:calc(50% + 12px)!important;top:371px!important;width:calc(25% - 27px)!important;height:90px!important;min-width:0!important}
html.north-glass-ui .glass-reference-page>.glass-place-app-f{left:calc(75% - .5px)!important;top:371px!important;width:calc(25% - 27px)!important;height:90px!important;min-width:0!important}
html.north-glass-ui .glass-reference-page>.glass-place-app-g{left:calc(50% + 12px)!important;top:462px!important;width:calc(25% - 27px)!important;height:90px!important;min-width:0!important}
html.north-glass-ui .glass-reference-page>.glass-place-app-h{left:calc(75% - .5px)!important;top:462px!important;width:calc(25% - 27px)!important;height:90px!important;min-width:0!important}
html.north-glass-ui .glass-reference-page .app .ic{width:66px!important;height:66px!important;flex:0 0 auto!important;border-radius:20px!important}
html.north-glass-ui .glass-reference-page .app>span{max-width:74px;min-height:20px!important;flex:0 0 20px!important;line-height:20px!important}
html.north-glass-ui .glass-reference-page>.app{min-width:0!important;max-width:none!important;box-sizing:border-box!important;overflow:visible}
/* 第二页严格按参考图分区：左上 2×2 App + 右上竖向人物；横向三照片；两排各 4 个 App。 */
html.north-glass-ui .glass-second-page{position:relative;display:block!important;min-height:635px;padding:8px 16px 16px!important;overflow:hidden!important;box-sizing:border-box!important;content-visibility:visible}
html.north-glass-ui .glass-second-page>.home-item{position:absolute!important;margin:0!important;width:calc(25% - 17px)!important;height:88px!important;min-width:0!important;max-width:none!important;box-sizing:border-box!important;overflow:visible}
html.north-glass-ui .glass-second-page>.app{align-items:center!important;justify-content:flex-start!important;gap:5px!important}
html.north-glass-ui .glass-second-page>.app .ic{width:62px!important;height:62px!important;flex:0 0 auto!important;border-radius:19px!important}
html.north-glass-ui .glass-second-page>.app>span{max-width:76px!important;min-height:19px!important;flex:0 0 19px!important;font-size:10px!important;line-height:19px!important;text-align:center!important}
html.north-glass-ui .glass-second-page>.glass-second-slot-0{left:16px!important;top:8px!important}
html.north-glass-ui .glass-second-page>.glass-second-slot-1{left:calc(25% + 11px)!important;top:8px!important}
html.north-glass-ui .glass-second-page>.glass-second-slot-2{left:16px!important;top:96px!important}
html.north-glass-ui .glass-second-page>.glass-second-slot-3{left:calc(25% + 11px)!important;top:96px!important}
html.north-glass-ui .glass-second-page>.glass-second-slot-4,html.north-glass-ui .glass-second-page>.glass-second-slot-8{left:16px!important}
html.north-glass-ui .glass-second-page>.glass-second-slot-5,html.north-glass-ui .glass-second-page>.glass-second-slot-9{left:calc(25% + 11px)!important}
html.north-glass-ui .glass-second-page>.glass-second-slot-6,html.north-glass-ui .glass-second-page>.glass-second-slot-10{left:calc(50% + 6px)!important}
html.north-glass-ui .glass-second-page>.glass-second-slot-7,html.north-glass-ui .glass-second-page>.glass-second-slot-11{left:calc(75% + 1px)!important}
html.north-glass-ui .glass-second-page>.glass-second-slot-4,html.north-glass-ui .glass-second-page>.glass-second-slot-5,html.north-glass-ui .glass-second-page>.glass-second-slot-6,html.north-glass-ui .glass-second-page>.glass-second-slot-7{top:359px!important}
html.north-glass-ui .glass-second-page>.glass-second-slot-8,html.north-glass-ui .glass-second-page>.glass-second-slot-9,html.north-glass-ui .glass-second-page>.glass-second-slot-10,html.north-glass-ui .glass-second-page>.glass-second-slot-11{top:451px!important}
html.north-glass-ui .glass-second-portrait,html.north-glass-ui .glass-second-photos{position:absolute;display:block;border:1px solid rgba(255,255,255,.24);background:linear-gradient(145deg,rgba(34,35,40,.18),rgba(5,6,8,.08));box-shadow:0 16px 38px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.14);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);box-sizing:border-box;overflow:hidden;-webkit-tap-highlight-color:transparent}
html.north-glass-ui .glass-second-portrait:before,html.north-glass-ui .glass-second-photos:before{content:"";position:absolute;z-index:4;left:10%;right:10%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent);pointer-events:none}
html.north-glass-ui .glass-second-portrait{left:calc(50% + 6px);right:16px;top:8px;height:176px;border-radius:24px;padding:12px 10px 9px;display:flex;flex-direction:column;align-items:center}
html.north-glass-ui .glass-second-avatar-picker{position:relative;z-index:2;display:grid;place-items:center;width:84px;height:84px;flex:0 0 84px;border:1px solid rgba(255,255,255,.35);border-radius:50%;overflow:hidden;background:rgba(12,13,16,.42);box-shadow:0 8px 20px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.17);cursor:pointer}
html.north-glass-ui .glass-second-avatar-picker img,html.north-glass-ui .glass-second-avatar-picker .glass-second-photo-empty{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:50%;filter:saturate(.88) contrast(1.03)}
html.north-glass-ui .glass-second-photo-empty{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.02))}
html.north-glass-ui .glass-second-portrait-copy{position:absolute;left:9px;right:9px;bottom:9px;padding:8px 9px 7px;border:1px solid rgba(255,255,255,.24);border-radius:14px;background:rgba(5,6,8,.24);color:#fff;text-align:center;box-shadow:inset 0 1px rgba(255,255,255,.12);backdrop-filter:blur(14px) saturate(132%);-webkit-backdrop-filter:blur(14px) saturate(132%);cursor:text}
html.north-glass-ui .glass-second-portrait-copy b,html.north-glass-ui .glass-second-portrait-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html.north-glass-ui .glass-second-portrait-copy b{font:600 15px/1.25 Georgia,"Times New Roman",serif;letter-spacing:.7px}
html.north-glass-ui .glass-second-portrait-copy span{margin-top:3px;font-size:11px;line-height:1.3;opacity:.88}
html.north-glass-ui .second-page-text-input{font-size:16px!important;line-height:1.45!important;min-height:44px!important}
html.north-glass-ui .glass-second-photos{left:16px;right:16px;top:195px;height:150px;border-radius:25px;padding:13px 12px}
html.north-glass-ui .glass-second-polaroids{position:relative;width:100%;height:100%}
html.north-glass-ui .glass-second-polaroid{position:absolute;width:37%;height:112px;margin:0;padding:6px 6px 17px;border-radius:4px;background:rgba(247,247,245,.94);box-sizing:border-box;transform-origin:center center;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:transparent}
html.north-glass-ui .glass-second-polaroid img,html.north-glass-ui .glass-second-polaroid .glass-second-photo-empty{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:1px;background:#17181b}
html.north-glass-ui .glass-second-polaroid i{position:absolute;left:31%;right:31%;bottom:7px;height:1px;border-radius:1px;background:rgba(20,20,23,.18)}
html.north-glass-ui .glass-second-polaroid.p1{z-index:1;left:1.5%;top:0;transform:rotate(-7deg);box-shadow:0 7px 15px rgba(0,0,0,.3)}
html.north-glass-ui .glass-second-polaroid.p2{z-index:3;left:30.5%;top:7px;transform:rotate(2deg);box-shadow:0 11px 22px rgba(0,0,0,.42)}
html.north-glass-ui .glass-second-polaroid.p3{z-index:2;right:1.5%;top:3px;transform:rotate(6deg);box-shadow:0 8px 17px rgba(0,0,0,.34)}
html.north-glass-ui.north-pack-pink .glass-second-portrait,html.north-glass-ui.north-pack-pink .glass-second-photos{background:linear-gradient(145deg,rgba(255,202,224,.18),rgba(239,156,190,.08));border-color:rgba(255,224,238,.58);box-shadow:0 18px 44px rgba(55,14,34,.34),inset 0 1px rgba(255,220,237,.17)}
html.north-glass-ui.north-pack-blue .glass-second-portrait,html.north-glass-ui.north-pack-blue .glass-second-photos{background:linear-gradient(145deg,rgba(205,228,255,.18),rgba(143,188,241,.08));border-color:rgba(225,239,255,.56);box-shadow:0 18px 44px rgba(8,24,51,.36),inset 0 1px rgba(218,235,255,.17)}
html.north-glass-ui.north-pack-gray .glass-second-portrait,html.north-glass-ui.north-pack-gray .glass-second-photos{background:linear-gradient(145deg,rgba(250,251,253,.2),rgba(218,222,229,.09));border-color:rgba(255,255,255,.66);box-shadow:0 18px 44px rgba(16,17,20,.31),inset 0 1px rgba(255,255,255,.18)}
html.north-glass-ui.north-pack-pink .glass-second-portrait-copy,html.north-glass-ui .home.tpink .glass-second-portrait-copy{border-color:rgba(255,245,250,.6);background:linear-gradient(145deg,rgba(255,235,244,.48),rgba(246,190,215,.3));color:#71344f;box-shadow:0 7px 18px rgba(91,36,61,.12),inset 0 1px rgba(255,255,255,.56);text-shadow:0 1px rgba(255,255,255,.45)}
html.north-glass-ui.north-pack-blue .glass-second-portrait-copy{border-color:rgba(244,250,255,.6);background:linear-gradient(145deg,rgba(235,246,255,.49),rgba(184,216,251,.31));color:#304c72;box-shadow:0 7px 18px rgba(28,55,88,.12),inset 0 1px rgba(255,255,255,.56);text-shadow:0 1px rgba(255,255,255,.46)}
html.north-glass-ui.north-pack-gray .glass-second-portrait-copy,html.north-glass-ui .home.twhite .glass-second-portrait-copy{border-color:rgba(255,255,255,.66);background:linear-gradient(145deg,rgba(255,255,255,.5),rgba(220,225,233,.32));color:#3f444e;box-shadow:0 7px 18px rgba(35,38,45,.11),inset 0 1px rgba(255,255,255,.62);text-shadow:0 1px rgba(255,255,255,.52)}
html.north-glass-ui .home.tpink .glass-second-portrait,html.north-glass-ui .home.tpink .glass-second-photos{background:linear-gradient(145deg,rgba(255,219,233,.18),rgba(247,180,207,.08));border-color:rgba(255,236,245,.58)}
html.north-glass-ui .home.twhite .glass-second-portrait,html.north-glass-ui .home.twhite .glass-second-photos{background:linear-gradient(145deg,rgba(255,255,255,.2),rgba(237,241,247,.09));border-color:rgba(255,255,255,.66)}
html.north-glass-ui .home.glass-widget-custom .glass-second-portrait,html.north-glass-ui .home.glass-widget-custom .glass-second-photos{background:linear-gradient(145deg,rgba(var(--ng-widget-rgb),var(--ng-widget-alpha)),rgba(var(--ng-widget-rgb),var(--ng-widget-alpha-soft)));border-color:rgba(var(--ng-widget-rgb),calc(var(--ng-widget-alpha) + .22))}
html.north-glass-ui .home-scroll{overflow-y:auto;padding-top:38px;box-sizing:border-box}
html.north-glass-ui .home.home-editing .home-scroll{padding-top:38px}
/* 苹果主屏幕兼容开启时，只下移网页版第一页/第二页共用的主内容区，为屏保箭头留下独立位置；私人 App 与安卓不命中。 */
html.north-ios-home-safe.north-glass-ui .home .home-scroll{padding-top:calc(var(--north-ios-home-safe-top) + 25px)}
html.north-glass-ui .appswipe{margin-top:0;align-items:flex-start}
html.north-glass-ui .home .dock{display:grid!important;width:calc(100% - 32px)!important;max-width:348px!important;margin-left:16px!important;margin-right:auto!important;padding-left:10px!important;padding-right:10px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;column-gap:6px!important;box-sizing:border-box!important;overflow:hidden!important}
html.north-glass-ui .home .dock>.app{width:auto!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important}
/* 旧参考图按 390px 视口定稿，348px 上限在 401~649px 的宽屏手机上会把顶部组件和 Dock 压向左侧。
   仅对这段手机宽度解除上限；常见 390/393px 手机与平板预览均保持原布局。 */
@media(min-width:401px) and (max-width:649px){
  html.north-glass-ui .glass-reference-page>.glass-place-dashboard,
  html.north-glass-ui .home .dock{max-width:none!important}
}

/* v1029 real delivery: compact controls live inside the delivery app. */
.delivery-mode-pill{margin:10px 12px 2px;width:calc(100% - 24px);border:1px solid rgba(17,17,20,.08);border-radius:15px;background:#fff;display:grid;grid-template-columns:10px 1fr auto;grid-template-rows:auto auto;gap:1px 9px;align-items:center;padding:10px 12px;text-align:left;color:#202024;box-shadow:0 4px 18px rgba(20,20,30,.05)}
.delivery-mode-pill i{grid-row:1/3;width:9px;height:9px;border-radius:50%;background:#8e8e93}.delivery-mode-pill.real i{background:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.12)}.delivery-mode-pill span{font-size:13px;font-weight:800}.delivery-mode-pill small{font-size:10px;color:#8b8b91}.delivery-mode-pill b{grid-column:3;grid-row:1/3;color:#aaa;font-size:20px}.mt-real-trust{margin:8px 12px;display:flex;gap:7px}.mt-real-trust span{flex:1;text-align:center;background:#ecfdf5;color:#087a56;border-radius:10px;padding:7px 3px;font-size:11px;font-weight:700}.mt-card.real .mt-logo{overflow:hidden;background:#f4f5f7}.mt-card.real .mt-logo img{width:100%;height:100%;object-fit:cover}.mt-provider{display:inline-flex;margin-bottom:3px;padding:2px 6px;border-radius:5px;background:#fff2c9;color:#835d00;font-size:9px;font-weight:800}.mt-real-foot{border-top:1px solid #f1f1f3;margin-top:8px;padding-top:7px;color:#999;font-size:9px}
.delivery-settings{color:#202024}.delivery-settings-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.delivery-settings-head small{font-size:9px;letter-spacing:1.4px;color:#9a9aa1}.delivery-settings-head h3{margin:2px 0 0}.delivery-settings-head>button{border:0;background:#f1f1f3;border-radius:50%;width:30px;height:30px;font-size:20px;color:#555}.delivery-notice,.delivery-safety{background:#f6f7f9;border-radius:11px;padding:10px;color:#6f7077;font-size:11px;line-height:1.55;margin:9px 0}.delivery-toggle{display:flex;align-items:center;gap:10px;border-bottom:1px solid #eee;padding:12px 1px}.delivery-toggle.disabled{opacity:.48}.delivery-toggle>span{flex:1}.delivery-toggle b,.delivery-toggle small{display:block}.delivery-toggle b{font-size:14px}.delivery-toggle small{font-size:10px;color:#8c8c92;margin-top:3px;line-height:1.4}.delivery-toggle input{display:none}.delivery-toggle i{width:43px;height:25px;border-radius:14px;background:#d2d2d6;position:relative;transition:.2s}.delivery-toggle i:after{content:'';position:absolute;left:2px;top:2px;width:21px;height:21px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:.2s}.delivery-toggle input:checked+i{background:#12b981}.delivery-toggle input:checked+i:after{transform:translateX(18px)}.delivery-field{margin:13px 0}.delivery-field>label{font-size:11px;font-weight:700;color:#555}.delivery-field>div{display:flex;gap:6px;margin-top:6px}.delivery-field input,.delivery-limits input{min-width:0;flex:1;border:1px solid #ddd;border-radius:9px;padding:9px;background:#fff;color:#222}.delivery-field button,.delivery-save,.delivery-refresh{border:0;border-radius:9px;padding:8px 11px;background:#17171b;color:#fff}.delivery-field>small{display:block;margin-top:5px;color:#888;font-size:9px}.delivery-section-title{margin:15px 0 5px;font-size:11px;font-weight:800;color:#777}.delivery-role-row{width:100%;border:0;border-bottom:1px solid #eee;background:transparent;padding:10px 0;display:flex;align-items:center;gap:8px;text-align:left}.delivery-role-row>span:nth-child(2){flex:1}.delivery-role-row b,.delivery-role-row small{display:block}.delivery-role-row small{color:#888;font-size:9px;margin-top:2px}.delivery-role-row i{font-style:normal;color:#aaa;font-size:18px}.delivery-wallet-balance{text-align:center;background:linear-gradient(145deg,#202127,#373942);color:#fff;border-radius:16px;padding:20px 12px}.delivery-wallet-balance small,.delivery-wallet-balance span{display:block;color:#c6c7cd}.delivery-wallet-balance b{display:block;font-size:32px;margin:5px}.delivery-wallet-balance span{font-size:9px}.delivery-quick{display:flex;gap:7px;margin:10px 0}.delivery-quick button{flex:1;border:0;border-radius:9px;padding:8px;background:#ecfdf5;color:#087a56;font-weight:800}.delivery-limits{display:grid;grid-template-columns:1fr 1fr;gap:8px}.delivery-limits label{font-size:10px;color:#666}.delivery-limits input{width:100%;box-sizing:border-box;margin-top:5px}.delivery-save{width:100%;margin-top:12px;background:#10a875}.delivery-empty-mini{padding:14px;text-align:center;color:#999;font-size:11px}.delivery-orders{color:#202024}.delivery-refresh{width:100%;margin-bottom:10px;background:#effaf6;color:#087a56}.delivery-order-list{max-height:62vh;overflow:auto}.delivery-order-card{border:1px solid #e9e9ec;border-radius:14px;padding:11px;margin:8px 0;background:#fff}.delivery-order-card header,.delivery-order-meta,.delivery-order-card footer{display:flex;justify-content:space-between;align-items:center;gap:8px}.delivery-order-card header span{font-size:9px;background:#fff2c9;color:#835d00;padding:2px 6px;border-radius:5px}.delivery-order-card header b{font-size:11px;color:#0a8c63}.delivery-order-card h4{margin:9px 0 4px}.delivery-order-card p{font-size:11px;color:#666;margin:0}.delivery-progress{height:4px;background:#eee;border-radius:4px;margin:10px 0;overflow:hidden}.delivery-progress i{display:block;height:100%;background:#10b981}.delivery-order-meta{font-size:10px;color:#888}.delivery-order-meta span:first-child{font-size:14px;font-weight:800;color:#222}.delivery-reason{display:block;margin-top:8px;color:#b36b00;background:#fff8e6;border-radius:7px;padding:6px}.delivery-order-card footer{justify-content:flex-end;margin-top:9px}.delivery-order-card footer button{border:0;border-radius:8px;padding:7px 10px;background:#17171b;color:#fff;font-size:10px}.delivery-remove{color:#fa5151;cursor:pointer;margin-left:6px}.delivery-cart-total{text-align:right;padding:10px 4px;font-size:16px;color:#e89600}
.delivery-preference-field{padding:11px;border:1px solid rgba(120,120,130,.18);border-radius:14px;background:rgba(248,248,250,.82)}.delivery-preference-field>.delivery-chip-editor{display:block}.delivery-chip-list{display:flex;flex-wrap:wrap;gap:7px;min-height:32px;align-items:center}.delivery-chip-list em{font-style:normal;font-size:10px;color:#9a9aa1}.delivery-pref-chip{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:7px 8px 7px 10px;border-radius:10px;background:#fff;border:1px solid #dedee4;color:#24242a;font-size:11px;box-shadow:0 2px 8px rgba(0,0,0,.04)}.delivery-pref-chip button{width:19px;height:19px;padding:0;border-radius:50%;background:#ececf0;color:#777;line-height:19px}.delivery-pref-entry{display:flex;gap:7px;margin-top:8px}.delivery-pref-entry input{width:0}.delivery-pref-entry button{flex:0 0 auto;background:#10a875}
.delivery-option-group{margin:12px 0;padding:10px;border:1px solid #ececf0;border-radius:12px}.delivery-option-group>b{display:block;font-size:12px;margin-bottom:8px}.delivery-option-group select,.delivery-option-qty input{width:100%;box-sizing:border-box;border:1px solid #ddd;border-radius:9px;padding:9px;background:#fff;color:#222}.delivery-option-check{display:flex;align-items:center;gap:7px;padding:6px 0;font-size:11px}.delivery-option-qty{display:block;font-size:11px;color:#666}.delivery-option-qty input{margin-top:5px}.delivery-payment{text-align:center}.delivery-payment h4{margin:12px 0 5px}.delivery-payment p{font-size:11px;color:#777}.delivery-pay-total{display:block;font-size:28px;margin:10px}.delivery-pay-qr{display:block;width:min(240px,75vw);height:auto;margin:10px auto;border:8px solid #fff;border-radius:12px;box-shadow:0 5px 20px rgba(0,0,0,.08)}.delivery-payment>.btn{width:100%;margin-top:8px}
/* 少数宽屏长屏设备再给首组件下方留出一点呼吸位，避免四个 App 视觉上贴住组件；普通设备不命中。 */
@media(min-width:401px) and (max-width:649px) and (min-height:820px){
  html.north-glass-ui .glass-reference-page>.glass-place-app-a,
  html.north-glass-ui .glass-reference-page>.glass-place-app-b{top:186px!important}
  html.north-glass-ui .glass-reference-page>.glass-place-app-c,
  html.north-glass-ui .glass-reference-page>.glass-place-app-d{top:277px!important}
  html.north-glass-ui .glass-reference-page>.glass-place-vinyl{top:183px!important}
  html.north-glass-ui .glass-reference-page>.glass-place-sweetie{top:373px!important}
  html.north-glass-ui .glass-reference-page>.glass-place-app-e,
  html.north-glass-ui .glass-reference-page>.glass-place-app-f{top:393px!important}
  html.north-glass-ui .glass-reference-page>.glass-place-app-g,
  html.north-glass-ui .glass-reference-page>.glass-place-app-h{top:484px!important}
}
html.north-glass-ui.north-pack-pink .glass-reference-page>.app,html.north-glass-ui.north-pack-blue .glass-reference-page>.app,html.north-glass-ui.north-pack-gray .glass-reference-page>.app,html.north-glass-ui.north-pack-black .glass-reference-page>.app{transform:none!important}
html.north-glass-ui.north-pack-black .home-dashboard-card,html.north-glass-ui.north-pack-black .home-vinyl-card,html.north-glass-ui.north-pack-black .home-sweetie-card,html.north-glass-ui.north-pack-black .home .dock{background:linear-gradient(145deg,rgba(34,35,40,.18),rgba(5,6,8,.08))!important;border-color:rgba(255,255,255,.24)!important;backdrop-filter:blur(22px) saturate(145%)!important;-webkit-backdrop-filter:blur(22px) saturate(145%)!important}
html.north-glass-ui.north-pack-pink .home-dashboard-card,html.north-glass-ui.north-pack-pink .home-vinyl-card,html.north-glass-ui.north-pack-pink .home-sweetie-card,html.north-glass-ui.north-pack-pink .home .dock{background:linear-gradient(145deg,rgba(255,202,224,.18),rgba(239,156,190,.08))!important;border-color:rgba(255,224,238,.58)!important}
html.north-glass-ui.north-pack-blue .home-dashboard-card,html.north-glass-ui.north-pack-blue .home-vinyl-card,html.north-glass-ui.north-pack-blue .home-sweetie-card,html.north-glass-ui.north-pack-blue .home .dock{background:linear-gradient(145deg,rgba(205,228,255,.18),rgba(143,188,241,.08))!important;border-color:rgba(225,239,255,.56)!important}
html.north-glass-ui.north-pack-gray .home-dashboard-card,html.north-glass-ui.north-pack-gray .home-vinyl-card,html.north-glass-ui.north-pack-gray .home-sweetie-card,html.north-glass-ui.north-pack-gray .home .dock{background:linear-gradient(145deg,rgba(250,251,253,.2),rgba(218,222,229,.09))!important;border-color:rgba(255,255,255,.66)!important}
html.north-glass-ui.north-pack-pink .home-dashboard-grid>div,html.north-glass-ui.north-pack-pink .home-dashboard-photo{background:linear-gradient(145deg,rgba(255,232,241,.22),rgba(250,184,211,.10))!important}
html.north-glass-ui.north-pack-blue .home-dashboard-grid>div,html.north-glass-ui.north-pack-blue .home-dashboard-photo{background:linear-gradient(145deg,rgba(232,243,255,.22),rgba(177,210,249,.10))!important}
html.north-glass-ui.north-pack-gray .home-dashboard-grid>div,html.north-glass-ui.north-pack-gray .home-dashboard-photo{background:linear-gradient(145deg,rgba(255,255,255,.24),rgba(232,235,240,.11))!important}
html.north-glass-ui.north-pack-pink .home-sweetie-card p{background:rgba(255,199,222,.22);border:1px solid rgba(255,220,235,.18)}
html.north-glass-ui.north-pack-blue .home-sweetie-card p{background:rgba(190,220,255,.21);border:1px solid rgba(220,237,255,.17)}
html.north-glass-ui.north-pack-gray .home-sweetie-card p{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.16)}
html.north-glass-ui.north-pack-black .vinyl-record:before{background:repeating-radial-gradient(circle,rgba(255,255,255,.1) 0 1px,rgba(0,0,0,.05) 1.5px 3px),conic-gradient(from 14deg,#f1f1ef,#777875,#dededb,#555653,#efefed,#858683,#d5d5d2,#5f605d,#f1f1ef)}
html.north-glass-ui.north-pack-pink .vinyl-record:before{background:repeating-radial-gradient(circle,rgba(255,255,255,.12) 0 1px,rgba(75,24,45,.06) 1.5px 3px),conic-gradient(from 14deg,#ffe1ed,#a96881,#f3bdcf,#805068,#ffdce8,#b87890,#f4c8d7,#8b576d,#ffe1ed)}
html.north-glass-ui.north-pack-blue .vinyl-record:before{background:repeating-radial-gradient(circle,rgba(255,255,255,.12) 0 1px,rgba(17,43,82,.07) 1.5px 3px),conic-gradient(from 14deg,#e1eeff,#6680aa,#bdd2f2,#4e668d,#dceaff,#7892bd,#c6d9f5,#56709a,#e1eeff)}
html.north-glass-ui.north-pack-gray .vinyl-record:before{background:repeating-radial-gradient(circle,rgba(255,255,255,.13) 0 1px,rgba(0,0,0,.04) 1.5px 3px),conic-gradient(from 14deg,#fff,#aaa,#f5f5f3,#8a8b88,#fff,#b7b8b5,#f7f7f5,#979895,#fff)}
html.north-glass-ui.north-pack-pink .dash-storage i{background:conic-gradient(rgba(255,255,255,.92) var(--dash-store),rgba(255,190,216,.34) 0)}
html.north-glass-ui.north-pack-blue .dash-storage i{background:conic-gradient(rgba(255,255,255,.92) var(--dash-store),rgba(185,215,255,.34) 0)}
html.north-glass-ui.north-pack-gray .dash-storage i{background:conic-gradient(rgba(255,255,255,.94) var(--dash-store),rgba(215,216,222,.38) 0)}
html.north-glass-ui.north-pack-pink .dash-storage i:after{background:rgba(255,232,241,.24)}
html.north-glass-ui.north-pack-blue .dash-storage i:after{background:rgba(232,243,255,.24)}
html.north-glass-ui.north-pack-gray .dash-storage i:after{background:rgba(255,255,255,.28)}
html.north-glass-ui.north-pack-pink .home-dashboard-grid>div,html.north-glass-ui.north-pack-pink .home-dashboard-photo,html.north-glass-ui.north-pack-pink .sweetie-people img,html.north-glass-ui.north-pack-pink .sweetie-people svg,html.north-glass-ui.north-pack-pink .vinyl-cover{border-color:rgba(255,226,239,.58)!important;background-color:rgba(246,176,205,.34)!important;box-shadow:inset 0 1px rgba(255,245,250,.42)}
html.north-glass-ui.north-pack-blue .home-dashboard-grid>div,html.north-glass-ui.north-pack-blue .home-dashboard-photo,html.north-glass-ui.north-pack-blue .sweetie-people img,html.north-glass-ui.north-pack-blue .sweetie-people svg,html.north-glass-ui.north-pack-blue .vinyl-cover{border-color:rgba(225,240,255,.56)!important;background-color:rgba(165,202,246,.32)!important;box-shadow:inset 0 1px rgba(246,251,255,.42)}
html.north-glass-ui.north-pack-gray .home-dashboard-grid>div,html.north-glass-ui.north-pack-gray .home-dashboard-photo,html.north-glass-ui.north-pack-gray .sweetie-people img,html.north-glass-ui.north-pack-gray .sweetie-people svg,html.north-glass-ui.north-pack-gray .vinyl-cover{border-color:rgba(255,255,255,.66)!important;background-color:rgba(238,241,246,.48)!important;box-shadow:inset 0 1px rgba(255,255,255,.55)}
html.north-glass-ui.north-pack-pink .home:not(.tpink):not(.twhite) .hwid.home-dashboard-card:not(.wpet),html.north-glass-ui.north-pack-pink .home:not(.tpink):not(.twhite) .hwid.home-vinyl-card:not(.wpet),html.north-glass-ui.north-pack-pink .home:not(.tpink):not(.twhite) .hwid.home-sweetie-card:not(.wpet),html.north-glass-ui.north-pack-pink .home:not(.tpink):not(.twhite) .dock{background:linear-gradient(145deg,rgba(255,219,233,.18),rgba(247,180,207,.08))!important;border-color:rgba(255,236,245,.58)!important}
html.north-glass-ui.north-pack-blue .home:not(.tpink):not(.twhite) .hwid.home-dashboard-card:not(.wpet),html.north-glass-ui.north-pack-blue .home:not(.tpink):not(.twhite) .hwid.home-vinyl-card:not(.wpet),html.north-glass-ui.north-pack-blue .home:not(.tpink):not(.twhite) .hwid.home-sweetie-card:not(.wpet),html.north-glass-ui.north-pack-blue .home:not(.tpink):not(.twhite) .dock{background:linear-gradient(145deg,rgba(217,236,255,.18),rgba(157,199,246,.08))!important;border-color:rgba(233,245,255,.56)!important}
html.north-glass-ui.north-pack-gray .home:not(.tpink):not(.twhite) .hwid.home-dashboard-card:not(.wpet),html.north-glass-ui.north-pack-gray .home:not(.tpink):not(.twhite) .hwid.home-vinyl-card:not(.wpet),html.north-glass-ui.north-pack-gray .home:not(.tpink):not(.twhite) .hwid.home-sweetie-card:not(.wpet),html.north-glass-ui.north-pack-gray .home:not(.tpink):not(.twhite) .dock{background:linear-gradient(145deg,rgba(255,255,255,.2),rgba(237,241,247,.09))!important;border-color:rgba(255,255,255,.62)!important}
html.north-glass-ui .home.glass-widget-custom .hwid.home-dashboard-card,html.north-glass-ui .home.glass-widget-custom .hwid.home-vinyl-card,html.north-glass-ui .home.glass-widget-custom .hwid.home-sweetie-card,html.north-glass-ui .home.glass-widget-custom .dock{background:linear-gradient(145deg,rgba(var(--ng-widget-rgb),var(--ng-widget-alpha)),rgba(var(--ng-widget-rgb),var(--ng-widget-alpha-soft)))!important;border-color:rgba(var(--ng-widget-rgb),calc(var(--ng-widget-alpha) + .22))!important}
/* 图标包规则的选择器更具体；自定义值必须再以更高优先级覆盖，透明度滑杆才会真正改变卡片。 */
html.north-glass-ui[class*="north-pack-"] .home.glass-widget-custom:not(.tpink):not(.twhite) .hwid.home-dashboard-card:not(.wpet),html.north-glass-ui[class*="north-pack-"] .home.glass-widget-custom:not(.tpink):not(.twhite) .hwid.home-vinyl-card:not(.wpet),html.north-glass-ui[class*="north-pack-"] .home.glass-widget-custom:not(.tpink):not(.twhite) .hwid.home-sweetie-card:not(.wpet),html.north-glass-ui[class*="north-pack-"] .home.glass-widget-custom:not(.tpink):not(.twhite) .dock{background:linear-gradient(145deg,rgba(var(--ng-widget-rgb),var(--ng-widget-alpha)),rgba(var(--ng-widget-rgb),var(--ng-widget-alpha-soft)))!important;border-color:rgba(var(--ng-widget-rgb),calc(var(--ng-widget-alpha) + .22))!important}
html.north-glass-ui.north-pack-pink .home-dashboard-card,html.north-glass-ui.north-pack-pink .home-vinyl-card,html.north-glass-ui.north-pack-pink .home-sweetie-card{color:#fff7fb!important;text-shadow:0 1px 5px rgba(85,23,50,.72)}
html.north-glass-ui.north-pack-blue .home-dashboard-card,html.north-glass-ui.north-pack-blue .home-vinyl-card,html.north-glass-ui.north-pack-blue .home-sweetie-card{color:#f5f9ff!important;text-shadow:0 1px 5px rgba(19,46,80,.74)}
html.north-glass-ui.north-pack-gray .home-dashboard-card,html.north-glass-ui.north-pack-gray .home-vinyl-card,html.north-glass-ui.north-pack-gray .home-sweetie-card{color:#fff!important;text-shadow:0 1px 5px rgba(22,24,29,.78)}
html.north-glass-ui.north-pack-pink .glass-reference-page .app>span,html.north-glass-ui.north-pack-pink .glass-reference-page+.apppage .app>span,html.north-glass-ui.north-pack-blue .glass-reference-page .app>span,html.north-glass-ui.north-pack-blue .glass-reference-page+.apppage .app>span,html.north-glass-ui.north-pack-gray .glass-reference-page .app>span,html.north-glass-ui.north-pack-gray .glass-reference-page+.apppage .app>span{color:#fff!important;text-shadow:0 1px 5px rgba(0,0,0,.92),0 0 2px rgba(0,0,0,.75)!important;font-weight:650!important}
html.north-glass-ui.north-pack-pink .home-dashboard-card svg,html.north-glass-ui.north-pack-blue .home-dashboard-card svg,html.north-glass-ui.north-pack-gray .home-dashboard-card svg{stroke:currentColor!important}
html.north-glass-ui.north-pack-pink .dash-battery b,html.north-glass-ui.north-pack-blue .dash-battery b,html.north-glass-ui.north-pack-gray .dash-battery b{color:currentColor!important}
html.north-glass-ui.north-pack-pink .home-dashboard-card,html.north-glass-ui.north-pack-pink .home-vinyl-card,html.north-glass-ui.north-pack-pink .home-sweetie-card,html.north-glass-ui.north-pack-pink .home .dock{box-shadow:0 18px 44px rgba(55,14,34,.34),inset 0 1px rgba(255,220,237,.17)!important}
html.north-glass-ui.north-pack-blue .home-dashboard-card,html.north-glass-ui.north-pack-blue .home-vinyl-card,html.north-glass-ui.north-pack-blue .home-sweetie-card,html.north-glass-ui.north-pack-blue .home .dock{box-shadow:0 18px 44px rgba(8,24,51,.36),inset 0 1px rgba(218,235,255,.17)!important}
html.north-glass-ui.north-pack-gray .home-dashboard-card,html.north-glass-ui.north-pack-gray .home-vinyl-card,html.north-glass-ui.north-pack-gray .home-sweetie-card,html.north-glass-ui.north-pack-gray .home .dock{box-shadow:0 18px 44px rgba(16,17,20,.31),inset 0 1px rgba(255,255,255,.18)!important}
.vinyl-record[role="button"]{cursor:pointer;touch-action:manipulation}
.music-headphone-pair>svg{display:none!important}
html.north-glass-ui.north-pack-pink .vinyl-arm circle{fill:#8e5a70;stroke:#ffd5e6}html.north-glass-ui.north-pack-pink .vinyl-arm path{stroke:#efb7cf}html.north-glass-ui.north-pack-pink .vinyl-arm rect{fill:#b87994;stroke:#ffd5e6}
html.north-glass-ui.north-pack-blue .vinyl-arm circle{fill:#617ba7;stroke:#d8e9ff}html.north-glass-ui.north-pack-blue .vinyl-arm path{stroke:#b8d3f5}html.north-glass-ui.north-pack-blue .vinyl-arm rect{fill:#7993bd;stroke:#d8e9ff}
html.north-glass-ui.north-pack-gray .vinyl-arm circle{fill:#949597;stroke:#fff}html.north-glass-ui.north-pack-gray .vinyl-arm path{stroke:#ececea}html.north-glass-ui.north-pack-gray .vinyl-arm rect{fill:#b8b9bb;stroke:#fff}
html.north-glass-ui.north-pack-black .home-vinyl-card .vinyl-record:before{background:repeating-radial-gradient(circle,rgba(255,255,255,.1) 0 1px,rgba(0,0,0,.05) 1.5px 3px),conic-gradient(from 14deg,#bfc1c3,#3e4042,#a8abad,#303234,#d3d4d5,#55585a,#b9bbbd,#3a3c3e,#bfc1c3)!important}
html.north-glass-ui.north-pack-pink .home-vinyl-card .vinyl-record:before{background:repeating-radial-gradient(circle,rgba(255,255,255,.15) 0 1px,rgba(75,24,45,.06) 1.5px 3px),conic-gradient(from 14deg,#ffe5f0,#b36d89,#f6c5d7,#8c5670,#ffe0ec,#c07d98,#f8cfdd,#985f77,#ffe5f0)!important}
html.north-glass-ui.north-pack-blue .home-vinyl-card .vinyl-record:before{background:repeating-radial-gradient(circle,rgba(255,255,255,.15) 0 1px,rgba(17,43,82,.07) 1.5px 3px),conic-gradient(from 14deg,#e5f1ff,#6d87b2,#c6d9f6,#536b94,#e0edff,#829bc4,#cfdef7,#5d77a1,#e5f1ff)!important}
html.north-glass-ui.north-pack-gray .home-vinyl-card .vinyl-record:before{background:repeating-radial-gradient(circle,rgba(255,255,255,.16) 0 1px,rgba(0,0,0,.04) 1.5px 3px),conic-gradient(from 14deg,#fff,#b4b5b7,#f7f7f6,#929395,#fff,#c0c1c2,#fafafa,#a0a1a3,#fff)!important}
html.north-glass-ui[class*="north-pack-"] .home-vinyl-card .vinyl-record.home-vinyl-custom:before{background:repeating-radial-gradient(circle,rgba(255,255,255,.12) 0 1px,rgba(0,0,0,.06) 1.5px 3px),conic-gradient(from 14deg,var(--home-vinyl-light),var(--home-vinyl-dark),var(--home-vinyl-soft),var(--home-vinyl-deep),var(--home-vinyl-light),var(--home-vinyl-color),var(--home-vinyl-soft),var(--home-vinyl-dark),var(--home-vinyl-light))!important}
/* 播放页唱片独立选色；不接管唱片尺寸、封面尺寸或外层布局。 */
html.north-glass-ui .music-premium.music-disc-black .music-vinyl{background:repeating-radial-gradient(circle,rgba(255,255,255,.09) 0 1px,rgba(0,0,0,.08) 1.6px 3.4px),conic-gradient(from 14deg,#5b5d61,#0b0c0e,#3e4044,#050607,#73757a,#161719,#4b4d51,#090a0c,#5b5d61)!important;box-shadow:0 9px 22px rgba(0,0,0,.62),inset 0 0 0 1px rgba(255,255,255,.24),inset 0 0 22px rgba(255,255,255,.08)!important}
html.north-glass-ui .music-premium.music-disc-white .music-vinyl{background:repeating-radial-gradient(circle,rgba(255,255,255,.24) 0 1px,rgba(79,81,84,.05) 1.6px 3.4px),conic-gradient(from 14deg,#fff,#c8c9ca,#f8f8f6,#aeb0b2,#fff,#d5d6d7,#f2f2f0,#b9babc,#fff)!important;box-shadow:0 9px 22px rgba(0,0,0,.46),inset 0 0 0 1px rgba(255,255,255,.86),inset 0 0 24px rgba(255,255,255,.36)!important}
html.north-glass-ui .music-premium.music-disc-blue .music-vinyl{background:repeating-radial-gradient(circle,rgba(255,255,255,.17) 0 1px,rgba(18,53,101,.07) 1.6px 3.4px),conic-gradient(from 14deg,#e4f2ff,#6894c8,#c3ddfa,#3e6fa8,#eef7ff,#7da9d8,#d2e8ff,#507fae,#e4f2ff)!important;box-shadow:0 9px 22px rgba(7,28,58,.56),inset 0 0 0 1px rgba(220,239,255,.68),inset 0 0 22px rgba(213,235,255,.25)!important}
html.north-glass-ui .music-premium.music-disc-pink .music-vinyl{background:repeating-radial-gradient(circle,rgba(255,255,255,.17) 0 1px,rgba(91,29,57,.06) 1.6px 3.4px),conic-gradient(from 14deg,#ffe8f2,#c47b9a,#f7c6da,#9b5c79,#ffe3ef,#d28aa7,#fbd1e1,#aa6985,#ffe8f2)!important;box-shadow:0 9px 22px rgba(66,17,40,.52),inset 0 0 0 1px rgba(255,226,239,.68),inset 0 0 22px rgba(255,213,231,.24)!important}
html.north-glass-ui .music-premium.music-disc-black .music-headphone-action{border-color:rgba(255,255,255,.42)!important;background:radial-gradient(circle at 34% 20%,rgba(255,255,255,.34),rgba(255,255,255,.04) 28%,transparent 30%),linear-gradient(145deg,#45474b,#111214 58%,#050506)!important;box-shadow:0 5px 13px rgba(0,0,0,.5),0 0 0 1px rgba(255,255,255,.08),inset 0 1px 1px rgba(255,255,255,.32)!important;color:#fff!important}
html.north-glass-ui .music-premium.music-disc-white .music-headphone-action{border-color:#202124!important;background:#fff!important;box-shadow:0 5px 13px rgba(0,0,0,.38),0 0 0 1px rgba(255,255,255,.48),inset 0 1px 1px rgba(255,255,255,.95)!important;color:#171719!important}
html.north-glass-ui .music-premium.music-disc-blue .music-headphone-action{border-color:rgba(218,237,255,.86)!important;background:radial-gradient(circle at 34% 20%,rgba(255,255,255,.82),rgba(255,255,255,.08) 28%,transparent 30%),linear-gradient(145deg,#a8d4ff,#5b98d7 58%,#356a9e)!important;box-shadow:0 5px 13px rgba(0,0,0,.38),0 0 0 1px rgba(112,174,233,.2),inset 0 1px 1px rgba(255,255,255,.88)!important;color:#fff!important}
html.north-glass-ui .music-premium.music-disc-pink .music-headphone-action{border-color:rgba(255,231,241,.88)!important;background:radial-gradient(circle at 34% 20%,rgba(255,255,255,.82),rgba(255,255,255,.08) 28%,transparent 30%),linear-gradient(145deg,rgba(255,172,205,.96),rgba(247,101,158,.9) 58%,rgba(187,60,113,.9))!important;box-shadow:0 5px 13px rgba(0,0,0,.38),0 0 0 1px rgba(255,139,185,.15),inset 0 1px 1px rgba(255,255,255,.88)!important;color:#fff!important}
.music-disc-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 10px}.music-disc-choice{height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;border:1px solid rgba(255,255,255,.06);border-radius:12px;background:#25262a;color:#8c8f95;font-size:8px}.music-disc-choice i{width:22px;height:22px;border:1px solid rgba(255,255,255,.34);border-radius:50%;background:#111214;box-shadow:inset 0 0 0 5px rgba(255,255,255,.04)}.music-disc-choice[data-color="white"] i{border-color:#73757a;background:#fff;box-shadow:inset 0 0 0 5px rgba(0,0,0,.035)}.music-disc-choice[data-color="blue"] i{border-color:#b9ddff;background:linear-gradient(145deg,#b7ddff,#548fc9)}.music-disc-choice[data-color="pink"] i{border-color:#ffd5e7;background:linear-gradient(145deg,#ffc7de,#ef75aa)}.music-disc-choice.on{border-color:rgba(255,255,255,.3);background:#303136;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}.music-disc-choice.on i{box-shadow:0 0 0 2px #202124,0 0 0 4px rgba(255,255,255,.72)}
.music-premium[class*="music-disc-#"] .music-vinyl{background:repeating-radial-gradient(circle,rgba(255,255,255,.16) 0 1px,rgba(0,0,0,.07) 1.6px 3.4px),conic-gradient(from 14deg,var(--music-disc-light),var(--music-disc-dark),var(--music-disc-soft),var(--music-disc-deep),var(--music-disc-light),var(--music-disc-custom),var(--music-disc-soft),var(--music-disc-dark),var(--music-disc-light))!important;box-shadow:0 9px 22px rgba(0,0,0,.52),inset 0 0 0 1px rgba(255,255,255,.5),inset 0 0 22px rgba(255,255,255,.18)!important}
.music-premium[class*="music-disc-#"] .music-headphone-action{border-color:rgba(255,255,255,.72)!important;background:radial-gradient(circle at 34% 20%,rgba(255,255,255,.8),rgba(255,255,255,.08) 28%,transparent 30%),linear-gradient(145deg,var(--music-disc-light),var(--music-disc-custom) 58%,var(--music-disc-dark))!important;box-shadow:0 5px 13px rgba(0,0,0,.4),0 0 0 1px rgba(255,255,255,.12),inset 0 1px 1px rgba(255,255,255,.82)!important;color:#fff!important}
.music-disc-picker.music-disc-picker-custom{grid-template-columns:repeat(5,minmax(0,1fr))}.music-disc-custom-choice{position:relative;cursor:pointer}.music-disc-custom-choice input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.music-disc-custom-choice i,.music-disc-custom-choice span{pointer-events:none}.music-disc-custom-choice i{background:linear-gradient(145deg,var(--custom-disc-preview),#fff)!important}.music-disc-custom-choice:focus-within{outline:2px solid rgba(255,255,255,.55);outline-offset:2px}@media(max-width:360px){.music-disc-picker.music-disc-picker-custom{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* 主屏组件与播放页使用同一档慢速；播放/暂停状态仍由原有逻辑控制。 */
html.north-glass-ui .home-vinyl-card .vinyl-record.wdisc,html.north-glass-ui .music-vinyl{animation-duration:24s!important}
/* 浅色壁纸下头像不得露出深灰底边；保留圆形裁切与点击换图能力。 */
html.north-glass-ui .sweetie-avatar-picker{border:0!important;background:transparent!important;box-shadow:none!important}
html.north-glass-ui .sweetie-avatar-picker>img,html.north-glass-ui .sweetie-avatar-picker>svg{border:0!important;background:transparent!important;box-shadow:none!important}
/* 唱片封面不再叠加中心白点或黑色包边，唱片材质、选色和旋转保持原样。 */
html.north-glass-ui .home-vinyl-card .vinyl-cover,html.north-glass-ui .music-vinyl-cover{box-shadow:none!important}
html.north-glass-ui.north-pack-black .home:not(.tpink):not(.twhite) .hwid.home-dashboard-card:not(.wpet),html.north-glass-ui.north-pack-black .home:not(.tpink):not(.twhite) .hwid.home-vinyl-card:not(.wpet),html.north-glass-ui.north-pack-black .home:not(.tpink):not(.twhite) .hwid.home-sweetie-card:not(.wpet),html.north-glass-ui.north-pack-black .home:not(.tpink):not(.twhite) .dock{background:linear-gradient(145deg,rgba(34,35,40,.18),rgba(5,6,8,.08))!important;border-color:rgba(255,255,255,.24)!important;backdrop-filter:blur(22px) saturate(145%)!important;-webkit-backdrop-filter:blur(22px) saturate(145%)!important}
html.north-glass-ui.north-pack-pink .home-dashboard-grid>div,html.north-glass-ui.north-pack-blue .home-dashboard-grid>div,html.north-glass-ui.north-pack-gray .home-dashboard-grid>div{box-shadow:inset 0 1px rgba(255,255,255,.2),0 6px 16px rgba(0,0,0,.08)!important}
@media(max-width:360px){html.north-glass-ui .home .app .ic{width:60px!important;height:60px!important}html.north-glass-ui .home .dock .app .ic{width:60px!important;height:60px!important}}

/* 真页面预览模式只隔离示例数据，不另画一套界面。 */
html.north-real-preview,html.north-real-preview body{background:#09090b}
@media(min-width:650px){html.north-real-preview:not(.north-preview-tablet) body{width:390px!important;max-width:390px!important;margin:0!important;overflow:hidden!important}html.north-real-preview:not(.north-preview-tablet) .phone{width:390px!important;max-width:390px!important;margin:0!important}}
html.north-real-preview .msgbanner.show{animation:none!important}
@media(min-width:650px){html.north-preview-tablet .phone{width:760px!important;max-width:96vw!important;height:940px!important;border-radius:38px!important;padding:10px!important}html.north-preview-tablet .screen{border-radius:30px!important}html.north-preview-tablet .home .apppage{grid-template-columns:repeat(6,minmax(0,1fr))!important}html.north-preview-tablet .home .dock{max-width:560px;margin-left:auto;margin-right:auto}}

/* 微信本体透明，明暗只由玻璃层切换；不把原来的主题配色改掉。 */
html.north-glass-ui .wx-glass{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:100%!important;display:flex!important;background:linear-gradient(180deg,rgba(13,12,16,.92),rgba(24,20,26,.94))!important}
html.north-glass-ui .wx-glass>.scroll{flex:1 1 auto!important;min-height:0!important}
html.north-glass-ui .wx-glass.wxlight{background:linear-gradient(180deg,rgba(250,247,249,.94),rgba(237,234,238,.96))!important}
html.north-glass-ui .wx-glass:not(.wxlight)>.nav,html.north-glass-ui .wx-glass:not(.wxlight)>.tabbar,html.north-glass-ui .wx-glass:not(.wxlight) .list .row{background:rgba(25,23,29,.48)!important}
html.north-glass-ui .wx-glass.wxlight>.nav,html.north-glass-ui .wx-glass.wxlight>.tabbar,html.north-glass-ui .wx-glass.wxlight .list .row{background:rgba(255,255,255,.5)!important}

/* Android/触屏浏览器在页面恢复或显存紧张时会丢弃大面积 backdrop 合成层，
   造成组件仍占位但整块不绘制。仅让三个大组件退回实体玻璃底色；布局、内容和拖动不变。 */
@media (pointer:coarse),(hover:none){
html.north-android.north-glass-ui .home .home-widget-item,
html.north-android.north-glass-ui.north-pack-black .home:not(.tpink):not(.twhite) .hwid.home-widget-item.home-dashboard-card:not(.wpet),
html.north-android.north-glass-ui.north-pack-black .home:not(.tpink):not(.twhite) .hwid.home-widget-item.home-vinyl-card:not(.wpet),
html.north-android.north-glass-ui.north-pack-black .home:not(.tpink):not(.twhite) .hwid.home-widget-item.home-sweetie-card:not(.wpet),
html.north-native-app.north-glass-ui .home .home-widget-item,
html.north-native-app.north-glass-ui .home .dock,
html.north-native-app.north-glass-ui .glass-second-portrait,
html.north-native-app.north-glass-ui .glass-second-photos,
html.north-native-app.north-glass-ui .glass-second-portrait-copy{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
/* 关闭实时取景后必须补足实体底色，否则浅壁纸或部分 WebKit/GPU 会只剩边框。
   这里只作用于原生 App 的低成本合成分支，不改变网页和仍能正常渲染模糊的设备。 */
html.north-native-app.north-glass-ui .glass-second-portrait,
html.north-native-app.north-glass-ui .glass-second-photos{background-color:rgba(18,19,23,.62)!important}
html.north-native-app.north-glass-ui .glass-second-portrait-copy{background-color:rgba(5,6,8,.7)!important}
/* WKWebView 在长聊天、多组件和热／内存压力叠加时，大量实时背景取景层会出现内容只剩一半、图层丢失并阻断点按。
   私人原生 App 统一使用现有渐变／实色玻璃底，不再为每个消息气泡、卡片和弹层创建独立的 backdrop 合成层；网页与 Android 视觉不变。 */
html.north-native-app.north-glass-ui .phone *,
html.north-native-app.north-glass-ui .phone *::before,
html.north-native-app.north-glass-ui .phone *::after{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
/* Safari/PWA 与原生 WKWebView 使用同一套 iOS WebKit 合成器；网页也可能在另一个 WebKit 进程里独立丢层。
   只限 iPhone/iPad 触屏 WebKit，桌面网页和 Android 仍保留完整实时模糊。 */
html.north-ios-webkit.north-glass-ui .phone *,
html.north-ios-webkit.north-glass-ui .phone *::before,
html.north-ios-webkit.north-glass-ui .phone *::after{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
/* The private App detects real event-loop stalls instead of permanently
   degrading the design. During a hot/blocked window only decorative infinite
   motion and the two largest filtered backdrops are paused; message progress,
   call state and other functional feedback remain visible. */
html:is(.north-native-performance-guard,.north-native-startup-quiet) .home .wdisc,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .home .petday,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .home .petsleep,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .home .petcat .ptail,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .home .petcat .peyes,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .home .pzzz,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .dybg,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .dy-orbit,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .dyemoji,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .dydisc,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .locpulse,
html:is(.north-native-performance-guard,.north-native-startup-quiet) .lmmarker span{animation-play-state:paused!important}
html.north-native-performance-guard .music-ambient,
html.north-native-performance-guard .dybg{filter:none!important}
html.north-native-app.north-glass-ui.north-pack-pink .glass-second-portrait,
html.north-native-app.north-glass-ui.north-pack-pink .glass-second-photos,
html.north-native-app.north-glass-ui .home.tpink .glass-second-portrait,
html.north-native-app.north-glass-ui .home.tpink .glass-second-photos{background-color:rgba(244,181,208,.55)!important}
html.north-native-app.north-glass-ui.north-pack-blue .glass-second-portrait,
html.north-native-app.north-glass-ui.north-pack-blue .glass-second-photos{background-color:rgba(169,205,244,.52)!important}
html.north-native-app.north-glass-ui.north-pack-gray .glass-second-portrait,
html.north-native-app.north-glass-ui.north-pack-gray .glass-second-photos,
html.north-native-app.north-glass-ui .home.twhite .glass-second-portrait,
html.north-native-app.north-glass-ui .home.twhite .glass-second-photos{background-color:rgba(228,232,239,.56)!important}
html.north-native-app.north-glass-ui .home.glass-widget-custom .glass-second-portrait,
html.north-native-app.north-glass-ui .home.glass-widget-custom .glass-second-photos{background-color:rgba(var(--ng-widget-rgb),var(--ng-widget-alpha))!important}
html.north-native-app.north-glass-ui.north-pack-pink .glass-second-portrait-copy,
html.north-native-app.north-glass-ui .home.tpink .glass-second-portrait-copy{background-color:rgba(246,190,215,.58)!important}
html.north-native-app.north-glass-ui.north-pack-blue .glass-second-portrait-copy{background-color:rgba(184,216,251,.58)!important}
html.north-native-app.north-glass-ui.north-pack-gray .glass-second-portrait-copy,
html.north-native-app.north-glass-ui .home.twhite .glass-second-portrait-copy{background-color:rgba(230,234,241,.62)!important}
/* 设置页表单会同时包含大量按钮和输入框。触屏 WebView 对这些逐层实时取景代价很高，
   保留实体玻璃配色和边框，只关闭设置页自身的 backdrop 合成。 */
html.north-android.north-glass-ui .settings-glass>.nav,
html.north-android.north-glass-ui .settings-glass .section,
html.north-android.north-glass-ui .settings-glass .field input,
html.north-android.north-glass-ui .settings-glass .field textarea,
html.north-android.north-glass-ui .settings-glass .field select,
html.north-android.north-glass-ui .settings-glass .minibtn{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
}

/* Delivery sheets inherit the app's dark glass modal; keep every secondary
   label readable without changing the light delivery cards behind the sheet. */
.delivery-route-list{display:grid;gap:8px;margin-top:10px}
.delivery-route-card{border:1px solid #e3e4e8;border-radius:12px;padding:10px 11px;background:#fff}
.delivery-route-card b,.delivery-route-card span,.delivery-route-card small{display:block}
.delivery-route-card b{font-size:12px}.delivery-route-card span{font-size:11px;margin-top:3px;color:#4f5057}.delivery-route-card small{font-size:9px;margin-top:5px;color:#85868d}.delivery-route-card.closed{opacity:.58}
.sheet .delivery-settings,.sheet .delivery-orders{color:#f5f5f7}
.sheet .delivery-settings-head h3,.sheet .delivery-toggle b,.sheet .delivery-role-row b{color:#f5f5f7}
.sheet .delivery-settings-head small,.sheet .delivery-toggle small,.sheet .delivery-field>label,.sheet .delivery-section-title,.sheet .delivery-role-row small,.sheet .delivery-limits label{color:#b8b8c0}
.sheet .delivery-toggle,.sheet .delivery-role-row{border-color:rgba(255,255,255,.16)}
.sheet .delivery-role-row i{color:#d1d1d6}
.sheet .delivery-route-card{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.13)}
.sheet .delivery-route-card b{color:#f5f5f7}.sheet .delivery-route-card span{color:#d1d1d6}.sheet .delivery-route-card small{color:#9d9da5}
.sheet .delivery-notice,.sheet .delivery-safety{background:#f5f5f7;color:#555861}
.sheet .delivery-field>small{color:#b8b8c0}
.sheet .delivery-preference-field{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.11)}.sheet .delivery-pref-chip{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:#f1f1f4;box-shadow:none}.sheet .delivery-pref-chip button{background:rgba(255,255,255,.12);color:#d8d8de}.sheet .delivery-chip-list em{color:#8e8e97}

/* 微信消息首页：严格贴合真实微信的黑白双模式。只改主列表外观，聊天、朋友圈和数据逻辑不变。 */
.wx-premium{--wx-green:#07c160;--wx-bg:#111;--wx-row:#19191b;--wx-head:#111;--wx-sub:#77777d;--wx-line:rgba(255,255,255,.075);background:var(--wx-bg)!important;color:#ededed;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Helvetica Neue",sans-serif}
.wx-premium.wxlight{--wx-bg:#ededed;--wx-row:#fff;--wx-head:#f7f7f7;--wx-sub:#8b8b91;--wx-line:rgba(0,0,0,.075);color:#111}
.wx-premium>.wx-preview-status{height:44px;flex:0 0 44px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;background:var(--wx-head);color:#f6f6f7;box-sizing:border-box;font-variant-numeric:tabular-nums}
.wx-premium.wxlight>.wx-preview-status{color:#111}
.wx-preview-status>span{display:flex;align-items:center;gap:7px}.wx-preview-status b{font-size:16px;line-height:1;font-weight:650;letter-spacing:-.15px}.wx-paw{width:20px;height:19px;fill:currentColor}.wx-preview-radio{gap:4px!important}.wx-preview-radio>i{width:4px;border-radius:1px;background:currentColor;display:block}.wx-preview-radio>i:nth-child(1){height:5px}.wx-preview-radio>i:nth-child(2){height:8px}.wx-preview-radio>i:nth-child(3){height:11px}.wx-preview-radio>i:nth-child(4){height:14px;opacity:.32}.wx-wifi{width:25px;height:19px;margin:0 4px;fill:currentColor;stroke:currentColor;stroke-width:2.6;stroke-linecap:round}.wx-preview-radio>em{min-width:29px;height:16px;padding-left:5px;border:1.5px solid currentColor;border-radius:4px;box-sizing:border-box;font:600 12px/13px -apple-system,BlinkMacSystemFont,"SF Pro Text",sans-serif;font-style:normal;position:relative}.wx-preview-radio>em:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;border-radius:2px 0 0 2px;background:#ff453a}.wx-preview-radio>em:after{content:"";position:absolute;right:-3.5px;top:4px;width:2px;height:6px;border-radius:0 2px 2px 0;background:currentColor;opacity:.45}
.wx-premium>.wx-main-nav{height:58px;flex:0 0 58px;padding:0 17px;border:0!important;background:radial-gradient(circle at 22% -30%,rgba(255,255,255,.12),transparent 56%),linear-gradient(180deg,rgba(34,34,37,.88),rgba(17,17,19,.91))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.07),inset 0 -1px 0 rgba(255,255,255,.065),0 8px 28px rgba(0,0,0,.14)!important;backdrop-filter:blur(42px) saturate(155%)!important;-webkit-backdrop-filter:blur(42px) saturate(155%)!important;box-sizing:border-box;position:relative;z-index:6;isolation:isolate}
.wx-premium>.wx-main-nav:before{content:"";position:absolute;inset:0;background:linear-gradient(108deg,rgba(255,255,255,.05),transparent 36%,rgba(255,255,255,.016) 70%,transparent);pointer-events:none;z-index:-1}.wx-premium.wxlight>.wx-main-nav{background:radial-gradient(circle at 22% -30%,rgba(255,255,255,.94),transparent 56%),linear-gradient(180deg,rgba(255,255,255,.87),rgba(243,243,246,.91))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),inset 0 -1px 0 rgba(0,0,0,.06),0 8px 24px rgba(0,0,0,.035)!important}
.wx-premium>.wx-main-nav .wx-main-title{height:100%;max-width:70%;display:flex;align-items:center;gap:8px;color:#ededed!important;font-size:18px;font-weight:600;letter-spacing:.1px}
.wx-premium.wxlight>.wx-main-nav .wx-main-title{color:#111!important}.wx-main-title b{font:inherit}
.wx-main-nav .wx-main-exit,.wx-main-nav .wx-main-add{width:42px;min-width:42px;height:42px;min-height:42px;padding:0;border:0;background:transparent;color:#d9d9dc;appearance:none;-webkit-appearance:none}.wx-main-nav .wx-main-add{display:grid;place-items:center;line-height:0}
.wx-premium.wxlight .wx-main-nav .wx-main-add{color:#111}.wx-main-nav .wx-main-add svg{width:25px;height:25px;display:block;margin:auto;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.wx-main-nav .wx-main-exit{color:transparent}
.wx-premium>.wx-main-scroll{min-height:0;margin-top:-58px;padding-top:58px;box-sizing:border-box;background:var(--wx-bg)!important;color:inherit;scrollbar-width:none}.wx-premium>.wx-main-scroll::-webkit-scrollbar{display:none}
.wx-chats .wx-chat-search{width:calc(100% - 16px);height:34px;margin:5px 8px 7px;padding:0 12px;border:0;border-radius:5px;display:flex;align-items:center;justify-content:center;gap:7px;background:#1b1b1d;color:#74747a;font:400 15px/1 -apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC",sans-serif;appearance:none;-webkit-appearance:none;cursor:pointer}
.wx-chats.wxlight .wx-chat-search{background:#fff;color:#8b8b91}.wx-chat-search svg{width:18px!important;height:18px!important;stroke-width:1.9!important}.wx-chat-search span{transform:translateY(-.5px)}
.wx-chats .wx-desktop-login{height:44px;display:flex;align-items:center;gap:16px;padding:0 25px;border-top:.5px solid var(--wx-line);border-bottom:.5px solid var(--wx-line);background:#202022;color:#88888e;box-sizing:border-box}.wx-chats.wxlight .wx-desktop-login{background:#f7f7f7;color:#8b8b91}.wx-desktop-login>span{width:24px;height:22px;display:flex}.wx-desktop-login svg{width:24px;height:21px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round}.wx-desktop-login b{font-size:13px;font-weight:400;letter-spacing:.05px}
.wx-chats .wx-chat-list{margin:0;border-radius:0;overflow:hidden;background:var(--wx-row)}
.wx-chats .wx-chat-list .row{min-height:68px;padding:8px 14px;gap:11px;border:0!important;background:var(--wx-row)!important;box-sizing:border-box;position:relative;color:inherit}
.wx-chats .wx-chat-list .row.pin{background:#202023!important}.wx-chats.wxlight .wx-chat-list .row.pin{background:#f4f4f6!important}
.wx-chats .wx-chat-list .row:after{content:"";position:absolute;left:69px;right:0;bottom:0;height:.5px;background:var(--wx-line);transform:scaleY(.7);transform-origin:bottom}.wx-chats .wx-chat-list .row:last-child:after{display:none}.wx-chats .wx-chat-list .row:active{background:#222225!important}.wx-chats.wxlight .wx-chat-list .row:active{background:#f2f2f4!important}
.wx-chats .wx-chat-list .avatar{width:44px;height:44px;min-width:44px;flex:0 0 44px;border-radius:6px;font-size:21px;overflow:hidden}.wx-chats .wx-chat-list .avatar img{width:100%;height:100%;object-fit:cover}.wx-chats .wx-chat-list .meta{min-width:0}.wx-chats .wx-chat-list .meta .n{margin-bottom:5px;color:#ededed;font-size:15px;font-weight:500;line-height:1.18;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wx-chats.wxlight .wx-chat-list .meta .n{color:#111}.wx-chats .wx-chat-list .meta .s{max-width:100%;color:#69696f;font-size:12px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wx-chats.wxlight .wx-chat-list .meta .s{color:#8b8b91}.wx-chats .wx-chat-list .meta.time{margin:2px 0 0 6px;color:#424247;font-size:10px;line-height:1.2;white-space:nowrap}.wx-chats.wxlight .wx-chat-list .meta.time{color:#b1b1b6}
.wx-classic-group-avatar{background:#08bd66!important;color:#fff!important;display:grid!important;place-items:center!important}.wx-classic-group-avatar svg{width:29px!important;height:29px!important;fill:none!important;stroke:currentColor!important;stroke-width:2.3!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.wx-premium>.wx-main-tabbar{height:76px;flex:0 0 76px;padding:8px 0 6px;border:0!important;border-top:.5px solid rgba(255,255,255,.085)!important;background:linear-gradient(180deg,rgba(39,39,42,.74),rgba(22,22,24,.82))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 -10px 28px rgba(0,0,0,.08)!important;backdrop-filter:blur(34px) saturate(165%)!important;-webkit-backdrop-filter:blur(34px) saturate(165%)!important;box-sizing:border-box;overflow:hidden;position:relative;isolation:isolate}
.wx-premium>.wx-main-tabbar:before{content:"";position:absolute;inset:0;background:linear-gradient(112deg,rgba(255,255,255,.035),transparent 38%,rgba(255,255,255,.012) 68%,transparent);pointer-events:none;z-index:0}.wx-premium.wxlight>.wx-main-tabbar{border-top-color:rgba(0,0,0,.09)!important;background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(244,244,246,.82))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 -10px 28px rgba(0,0,0,.035)!important}
.wx-main-tabbar .tb{height:100%;padding:0;border:0;background:transparent!important;color:#d2d2d4!important;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:2px;font:400 11px/1.15 -apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC",sans-serif;appearance:none;-webkit-appearance:none;position:relative;z-index:1}.wx-premium.wxlight .wx-main-tabbar .tb{color:#4f4f53!important}.wx-premium .wx-main-tabbar .tb.on{color:var(--wx-green)!important}.wx-main-tabbar .tb .i{height:32px;display:flex;align-items:center;justify-content:center;position:relative;font-size:0}.wx-main-tabbar .tb>span{display:block;white-space:nowrap}
.wx-tab-icon{width:28px;height:28px;display:block;overflow:visible;color:currentColor}.wx-tab-outline{fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.wx-tab-solid{fill:currentColor;stroke:none;opacity:0}.wx-tab-solid-cut{fill:#19191b;stroke:none;opacity:0}.wx-premium.wxlight .wx-tab-solid-cut{fill:#f8f8fa}.wx-main-tabbar .tb.on .wx-tab-outline{opacity:0}.wx-main-tabbar .tb.on .wx-tab-solid,.wx-main-tabbar .tb.on .wx-tab-solid-cut{opacity:1}
@media(max-height:720px){.wx-premium>.wx-main-nav{height:52px;flex-basis:52px}.wx-premium>.wx-main-tabbar{height:66px;flex-basis:66px}.wx-chats .wx-chat-list .row{min-height:63px;padding-top:7px;padding-bottom:7px}.wx-chats .wx-chat-list .avatar{width:42px;height:42px;min-width:42px;flex-basis:42px}.wx-chats .wx-chat-list .row:after{left:67px}}

/* 微信通讯录、悬浮加号菜单与通讯录子页面。 */
.wx-quick-shade{position:absolute;inset:58px 0 76px;z-index:18;background:transparent}.wx-quick-menu{position:absolute;right:10px;top:66px;z-index:19;width:154px;border:1px solid rgba(255,255,255,.08);border-radius:7px;background:rgba(62,62,65,.94);box-shadow:0 12px 34px rgba(0,0,0,.32),inset 0 1px rgba(255,255,255,.07);backdrop-filter:blur(28px) saturate(150%);-webkit-backdrop-filter:blur(28px) saturate(150%)}.wx-quick-menu:before{content:"";position:absolute;right:22px;top:-7px;width:14px;height:14px;background:inherit;border-left:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.08);transform:rotate(45deg)}.wx-quick-menu button{position:relative;width:100%;height:58px;padding:0 17px;border:0;border-bottom:.5px solid rgba(255,255,255,.12);background:transparent;color:#fff;display:flex;align-items:center;gap:15px;font:400 16px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;text-align:left}.wx-quick-menu button:last-child{border-bottom:0}.wx-quick-menu svg{width:25px;height:25px;fill:#fff;stroke:#fff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.wx-premium.wxlight .wx-quick-menu{background:rgba(255,255,255,.94);border-color:rgba(0,0,0,.08);box-shadow:0 12px 34px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.85)}.wx-premium.wxlight .wx-quick-menu:before{border-color:rgba(0,0,0,.08)}.wx-premium.wxlight .wx-quick-menu button{color:#151515;border-color:rgba(0,0,0,.1)}.wx-premium.wxlight .wx-quick-menu svg{fill:#151515;stroke:#151515}html.north-real-preview .wx-quick-shade{top:102px}html.north-real-preview .wx-quick-menu{top:110px}@media(max-height:720px){.wx-quick-shade{top:52px}.wx-quick-menu{top:60px}html.north-real-preview .wx-quick-shade{top:96px}html.north-real-preview .wx-quick-menu{top:104px}}
.wx-quick-menu:before{right:13px}.wx-main-nav .wx-contact-add-icon{width:30px!important;height:30px!important;stroke-width:1.45!important;fill:none}.wx-contacts>.wx-main-scroll{position:relative;overflow-x:hidden}.wx-contact-sticky-search{position:sticky;top:0;z-index:5;padding:7px 10px;background:linear-gradient(180deg,rgba(28,28,30,.93),rgba(22,22,24,.89));border-bottom:.5px solid var(--wx-line);backdrop-filter:blur(28px) saturate(150%);-webkit-backdrop-filter:blur(28px) saturate(150%)}.wxlight .wx-contact-sticky-search{background:linear-gradient(180deg,rgba(247,247,249,.94),rgba(237,237,239,.9))}.wx-contact-sticky-search label,.wx-directory-search label{height:34px;border-radius:6px;background:#272729;color:#77777d;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;box-sizing:border-box}.wxlight .wx-contact-sticky-search label,.wxlight .wx-directory-search label{background:#fff;color:#96969b}.wx-contact-sticky-search svg,.wx-directory-search svg{width:18px;height:18px;flex:0 0 18px}.wx-contact-sticky-search input,.wx-directory-search input{width:92px;min-width:0;flex:0 1 auto;border:0!important;outline:0;background:transparent!important;color:#ededed!important;padding:0!important;font:400 15px/1.1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;text-align:left}.wx-contact-sticky-search input:focus{width:100%;flex:1}.wxlight .wx-contact-sticky-search input,.wxlight .wx-directory-search input{color:#111!important}.wx-contact-special{background:var(--wx-row);margin-bottom:10px}.wx-contact-special>button{width:100%;min-height:58px;padding:7px 24px 7px 14px;border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:12px;position:relative;text-align:left;font:400 16px/1.2 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.wx-contact-special>button:after{content:"";position:absolute;left:60px;right:0;bottom:0;height:.5px;background:var(--wx-line)}.wx-contact-special>button:last-child:after{display:none}.wx-contact-special i{width:38px;height:38px;flex:0 0 38px;border-radius:5px;display:grid;place-items:center;color:#fff;font-style:normal;font-size:22px}.wx-contact-special i.orange{background:#fa9b35}.wx-contact-special i.green{background:#08bd66}.wx-contact-special i.blue{background:#248eea}.wx-contact-special i.violet{background:#6875f4}.wx-contact-special i.mint{background:#28b99a}.wx-contact-special i svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.wx-contact-special>button>span{flex:1;min-width:0}.wx-contact-special>button>span small{display:block;margin-top:3px;color:var(--wx-sub);font-size:11px}.wx-contact-special>button>b{min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#fa5151;color:#fff;font-size:10px;line-height:17px;text-align:center}.wx-contact-special>button>small{color:var(--wx-sub);font-size:11px}.wx-contact-directory{background:var(--wx-row)}.wx-contact-letter>h4{height:28px;margin:0;padding:0 14px;background:var(--wx-bg);color:#85858b;font:500 13px/28px -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;scroll-margin-top:48px}.wx-contact-person,.wx-group-pick{width:100%;height:58px;padding:7px 28px 7px 14px;border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:12px;position:relative;text-align:left;font:400 16px/1.2 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.wx-contact-person:after,.wx-group-pick:after{content:"";position:absolute;left:60px;right:0;bottom:0;height:.5px;background:var(--wx-line)}.wx-contact-person .avatar,.wx-group-pick .avatar{width:40px;height:40px;flex:0 0 40px;border-radius:5px}.wx-contact-person>span,.wx-group-pick>span{flex:1;min-width:0}.wx-contact-person>span small{display:block;margin-top:3px;color:var(--wx-sub);font-size:11px}.wx-contact-person>em{color:#fa5151;font-size:11px;font-style:normal}.wx-contact-empty{padding:72px 20px;color:var(--wx-sub);font-size:13px;text-align:center;background:var(--wx-bg)}.wx-alpha-rail{position:absolute;right:1px;top:120px;bottom:82px;z-index:5;width:22px;display:flex;flex-direction:column;align-items:center;justify-content:center}.wx-alpha-rail button{flex:1;min-height:8px;max-height:17px;width:22px;padding:0;border:0;background:transparent;color:#68686e;font:500 8px/1 -apple-system,BlinkMacSystemFont,sans-serif}.wxlight .wx-alpha-rail button{color:#7f7f85}
.wx-directory-page{--dir-bg:#111;--dir-row:#19191b;--dir-text:#ededed;--dir-sub:#7d7d83;--dir-line:rgba(255,255,255,.08);display:flex!important;flex-direction:column;background:var(--dir-bg)!important;color:var(--dir-text);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC",sans-serif}.wx-directory-page.wxlight{--dir-bg:#ededed;--dir-row:#fff;--dir-text:#111;--dir-sub:#8d8d93;--dir-line:rgba(0,0,0,.08)}.wx-directory-head{flex:0 0 auto;position:relative;z-index:8;background:radial-gradient(circle at 25% -35%,rgba(255,255,255,.11),transparent 54%),linear-gradient(180deg,rgba(34,34,37,.9),rgba(17,17,19,.93));box-shadow:inset 0 -1px var(--dir-line),0 8px 28px rgba(0,0,0,.13);backdrop-filter:blur(38px) saturate(155%);-webkit-backdrop-filter:blur(38px) saturate(155%)}.wxlight .wx-directory-head{background:radial-gradient(circle at 25% -35%,rgba(255,255,255,.94),transparent 54%),linear-gradient(180deg,rgba(255,255,255,.9),rgba(244,244,246,.93));box-shadow:inset 0 -1px var(--dir-line),0 8px 24px rgba(0,0,0,.035)}.wx-directory-nav{height:58px;flex:0 0 58px;padding:0 13px;border:0!important;background:transparent!important;color:var(--dir-text)!important}.wx-directory-nav .l,.wx-directory-nav .r{width:62px;min-width:62px;height:44px;border:0;background:transparent;color:var(--dir-text);font-size:35px;font-weight:300;display:flex;align-items:center}.wx-directory-nav .l{justify-content:flex-start}.wx-directory-nav .r{justify-content:flex-end}.wx-directory-nav .t{font-size:18px;font-weight:600}.wx-directory-nav .wx-dir-text{font-size:14px}.wx-directory-nav .wx-dir-plus{font-size:28px}.wx-directory-nav .wx-dir-done{min-width:72px;width:auto;font-size:14px;color:#07c160}.wx-directory-nav .wx-dir-done:disabled{color:#5e5e63}.wx-directory-search{height:48px;padding:6px 10px;box-sizing:border-box}.wx-directory-search label{height:36px}.wx-directory-search input{width:100%;flex:1;text-align:center}.wx-directory-search input:focus{text-align:left}.wx-directory-scroll{flex:1 1 auto!important;min-height:0;background:var(--dir-bg)!important;color:var(--dir-text);position:relative}.wx-directory-page .wx-contact-directory{background:var(--dir-row)}.wx-directory-page .wx-contact-letter>h4{background:var(--dir-bg);color:var(--dir-sub)}.wx-directory-page .wx-contact-person,.wx-directory-page .wx-group-pick{color:var(--dir-text)}.wx-directory-page .wx-contact-person:after,.wx-directory-page .wx-group-pick:after{background:var(--dir-line)}.wx-only-note{padding:14px 16px 18px;background:var(--dir-row);color:var(--dir-sub);font-size:13px;line-height:1.6}.wx-directory-bottom{height:60px;flex:0 0 60px;border-top:.5px solid var(--dir-line);background:rgba(30,30,32,.9);display:flex;align-items:center;justify-content:space-between;padding:0 16px;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}.wxlight .wx-directory-bottom{background:rgba(255,255,255,.9)}.wx-directory-bottom button{border:0;background:transparent;color:#7f8ba6;font-size:16px}.wx-directory-bottom .danger{color:#fa5151}.wx-directory-bottom button:disabled{opacity:.35}.wx-modal-picker{max-height:42vh;overflow:auto;margin:10px -4px}.wx-modal-picker>button{width:100%;height:52px;padding:5px 7px;border:0;border-bottom:.5px solid rgba(127,127,127,.18);background:transparent;color:inherit;display:flex;align-items:center;gap:10px;text-align:left}.wx-modal-picker>button>i,.wx-group-pick>i{width:22px;height:22px;flex:0 0 22px;border:1.5px solid #74747a;border-radius:50%;box-sizing:border-box;position:relative}.wx-modal-picker>button.on>i,.wx-group-pick.on>i{border-color:#07c160;background:#07c160}.wx-modal-picker>button.on>i:after,.wx-group-pick.on>i:after{content:"✓";position:absolute;inset:0;color:#fff;font:700 13px/20px sans-serif;text-align:center}.wx-modal-picker .avatar{width:38px;height:38px}.wx-modal-picker>button>span{font-size:14px}
#wx-group-create-search:not(:focus):placeholder-shown{text-indent:-16px}
#wx-group-create-search:focus{text-indent:0}
.wx-group-list,.wx-label-list{margin-top:10px;background:var(--dir-row)}.wx-group-row,.wx-label-list>button{width:100%;min-height:64px;padding:8px 16px;border:0;border-bottom:.5px solid var(--dir-line);background:transparent;color:var(--dir-text);display:flex;align-items:center;gap:12px;text-align:left}.wx-group-row>i{width:42px;height:42px;border-radius:7px;background:linear-gradient(135deg,#20c97a,#069755);display:grid;place-items:center}.wx-group-row>i.real{background:linear-gradient(135deg,#7584ff,#5964db)}.wx-group-row>span,.wx-label-list>button>span{flex:1;font-size:16px}.wx-group-row small,.wx-label-list small{display:block;margin-top:4px;color:var(--dir-sub);font-size:11px}.wx-group-row>b,.wx-label-list b{color:var(--dir-sub);font-size:23px;font-weight:300}.wx-label-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:15%;box-sizing:border-box}.wx-label-empty p{color:var(--dir-sub);font-size:14px}.wx-label-empty button{width:48%;height:48px;border:0;border-radius:8px;background:#2b2b2e;color:var(--dir-text);font-size:18px}.wxlight .wx-label-empty button{background:#fff}.wx-group-create-actions{margin-bottom:10px;background:var(--dir-row)}.wx-group-create-actions>button{width:100%;height:72px;padding:0 18px;border:0;border-bottom:.5px solid var(--dir-line);background:transparent;color:var(--dir-text);display:flex;align-items:center;text-align:left;font-size:17px}.wx-group-create-actions>button>span{flex:1}.wx-group-create-actions>button>b{color:var(--dir-sub);font-size:26px;font-weight:300}.wx-group-create-actions>small{display:block;height:35px;padding:0 16px;background:var(--dir-bg);color:var(--dir-sub);font:500 13px/35px sans-serif}.wx-group-pick>i{margin-right:2px}.wx-directory-page .wx-alpha-rail{top:150px;bottom:4px}
.nf-phone-entry{width:100%;height:88px;margin-bottom:10px;padding:0 16px;border:0;background:var(--dir-row);color:var(--dir-text);display:flex;align-items:center;gap:14px;text-align:left}.nf-phone-entry>i{width:48px;height:58px;display:grid;place-items:center}.nf-phone-entry>span{flex:1;font-size:17px}.nf-phone-entry small{display:block;margin-top:5px;color:var(--dir-sub);font-size:11px}.nf-phone-entry>b{color:var(--dir-sub);font-size:24px;font-weight:300}.nf-create-row{height:42px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;color:var(--dir-sub);font-size:13px}.nf-create-row button{border:0;background:transparent;color:#07c160;font-size:13px}.nf-create-acts{display:flex;align-items:center;gap:4px}.nf-create-acts button{padding:0 4px}.wx-directory-page .nf-group{background:var(--dir-row)}.wx-directory-page .nf-group h4{background:var(--dir-bg);color:var(--dir-sub)}.wx-directory-page .nf-card{background:var(--dir-row);color:var(--dir-text);border-color:var(--dir-line)}.wx-directory-page .nf-copy p,.wx-directory-page .nf-source{color:var(--dir-sub)}
.wx-directory-page.wxlight .nf-empty i{border-color:rgba(0,0,0,.09);background:#fff;color:#07c160;box-shadow:0 4px 14px rgba(0,0,0,.05)}.wx-directory-page.wxlight .nf-empty b{color:#555}.wx-directory-page .nf-role-result{cursor:pointer}.wx-directory-page .nf-role-result .nf-action{align-self:center}
.wx-contact-editor{padding:12px 12px 36px;box-sizing:border-box}.wx-editor-intro{padding:18px 17px;margin-bottom:12px;border:1px solid rgba(120,130,160,.22);border-radius:14px;background:linear-gradient(145deg,rgba(64,75,106,.28),rgba(33,33,37,.5));display:flex;flex-direction:column;gap:7px}.wxlight .wx-editor-intro{background:linear-gradient(145deg,#fff,#f5f6fa)}.wx-editor-intro b{font-size:18px}.wx-editor-intro span{color:var(--dir-sub);font-size:12px;line-height:1.55}.wx-contact-editor>section{margin-bottom:12px;padding:8px 15px 14px;border:1px solid var(--dir-line);border-radius:14px;background:var(--dir-row);overflow:hidden}.wx-contact-editor>section>h4{margin:5px 0 10px;color:#7f92c6;font-size:13px}.wxlight .wx-contact-editor>section>h4{color:#6376a9}.wx-contact-editor label{min-height:52px;border-bottom:.5px solid var(--dir-line);display:flex;align-items:center;gap:12px;color:var(--dir-text);font-size:14px}.wx-contact-editor label>span{min-width:88px}.wx-contact-editor label input,.wx-contact-editor label select,.wx-contact-editor label textarea{min-width:0;flex:1;border:0!important;outline:0;background:transparent!important;color:var(--dir-text)!important;padding:10px 0!important;font-size:14px;text-align:right}.wx-contact-editor label textarea{text-align:left;line-height:1.6;resize:vertical}.wx-contact-editor label.vertical{display:block;padding-top:12px}.wx-contact-editor label.vertical>span{display:block;margin-bottom:5px}.wx-editor-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wx-editor-two label>span{min-width:0}.wx-editor-avatar{display:flex;align-items:center;gap:15px;padding:5px 0 12px;border-bottom:.5px solid var(--dir-line)}.wx-editor-avatar #c_av_preview .avatar{width:62px;height:62px;border-radius:12px}.wx-editor-avatar>div:last-child{flex:1;min-width:0}.wx-editor-avatar button{height:30px;border:0;border-radius:7px;background:#3b5fbd;color:#fff;padding:0 12px}.wx-editor-avatar input{width:100%;margin-top:6px;border:0;background:transparent;color:var(--dir-sub);font-size:11px}.wx-editor-switch{min-height:54px;border-bottom:.5px solid var(--dir-line);display:flex;align-items:center;justify-content:space-between;gap:12px}.wx-editor-switch>span{font-size:14px}.wx-editor-switch small{display:block;margin-top:3px;color:var(--dir-sub);font-size:10px}.wx-editor-chips{padding:13px 0 2px}.wx-editor-chips>span{display:block;margin-bottom:9px;font-size:14px}.wx-editor-chip{margin:0 6px 7px 0;padding:6px 10px;border:1px solid var(--dir-line);border-radius:8px;background:#2c2c2e;color:#bbb}.wx-editor-chip[aria-pressed="true"]{background:#07c160;color:#fff}.wxlight .wx-editor-chip{background:#f2f2f4;color:#555}.wxlight .wx-editor-chip[aria-pressed="true"]{background:#07c160;color:#fff}.wx-contact-editor .sw.on{background:#07c160}.wx-editor-save,.wx-editor-cancel{width:100%;height:48px;border:0;border-radius:11px;font-size:16px}.wx-editor-save{background:#07c160;color:#fff}.wx-editor-cancel{margin-top:9px;background:var(--dir-row);color:var(--dir-sub)}
.wx-contact-editor{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none}.wx-contact-editor>*,.wx-contact-editor>section{min-width:0;max-width:100%;box-sizing:border-box}.wx-contact-editor label{min-width:0;max-width:100%;box-sizing:border-box}.wx-contact-editor label input,.wx-contact-editor label select,.wx-contact-editor label textarea{width:100%;max-width:100%;box-sizing:border-box}.wx-editor-two{grid-template-columns:minmax(0,1fr);gap:0;min-width:0;max-width:100%}.wx-editor-two>label{min-width:0;max-width:100%;overflow:visible}.wx-editor-two label>span{min-width:96px;max-width:none;flex:0 0 96px;white-space:normal;overflow:visible;text-overflow:clip}.wx-editor-two label input,.wx-editor-two label select{min-width:0;flex:1 1 auto;width:auto}
.modal.wxmodal-green .btn.p{background:linear-gradient(135deg,#22d47d,#07c160);color:#fff;box-shadow:0 6px 16px rgba(7,193,96,.2)}.modal.wxmodal-green .sw.on{background:#07c160}

.wx-steps-chat-row{width:100%;min-height:68px;padding:8px 14px!important;border:0;background:var(--wx-row);color:var(--wx-text);display:flex!important;align-items:center!important;gap:11px!important;box-sizing:border-box;text-align:left;font:inherit;appearance:none;-webkit-appearance:none}.wx-steps-icon{width:52px;height:52px;flex:0 0 52px;border-radius:9px;background:#07c160;display:grid;place-items:center;overflow:hidden;box-shadow:inset 0 1px rgba(255,255,255,.22)}.wx-steps-icon svg{width:39px;height:39px;overflow:visible}.wx-steps-icon .wx-steps-bubble{fill:#fff!important;stroke:none!important}.wx-steps-icon .wx-steps-eye{fill:#07c160!important;stroke:none!important}.wx-chats .wx-chat-list .wx-steps-icon.avatar{width:44px;height:44px;min-width:44px;flex:0 0 44px;border-radius:6px}.wx-chats .wx-chat-list .wx-steps-icon.avatar svg{width:34px;height:34px}.wx-steps-chat-row>.meta{min-width:0;flex:1;display:block}.wx-steps-chat-row>.meta.time{align-self:flex-start;flex:0 0 auto;margin:2px 0 0 8px;color:var(--wx-sub);font-size:10px}.wxsteps-page{height:100%;min-height:0;background:#101011;color:#ededee;display:flex;flex-direction:column}.wxsteps-nav{height:66px;flex:0 0 66px;border-bottom:.5px solid rgba(255,255,255,.055);background:#101011;display:flex;align-items:center}.wxsteps-nav button{width:64px;height:100%;padding:0 0 2px 22px;border:0;background:transparent;color:#dedee1;text-align:left;font:300 46px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.wxsteps-scroll{min-height:0;flex:1;background:#101011}.wxsteps-hero{min-height:176px;padding:36px 28px 35px;border-bottom:.5px solid rgba(255,255,255,.055);background:#181819;display:flex;align-items:center;gap:20px;box-sizing:border-box}.wxsteps-hero>.wx-steps-icon{width:78px;height:78px;flex-basis:78px;border-radius:13px}.wxsteps-hero>.wx-steps-icon svg{width:59px;height:59px}.wxsteps-hero>div b,.wxsteps-hero>div small{display:block}.wxsteps-hero>div b{font-size:23px;font-weight:600;line-height:1.25}.wxsteps-hero>div small{margin-top:10px;color:#77777d;font-size:16px}.wxsteps-about{min-height:112px;padding:22px 24px;border-bottom:.5px solid rgba(255,255,255,.055);background:#181819;display:grid;grid-template-columns:82px minmax(0,1fr);align-items:start;gap:14px;box-sizing:border-box}.wxsteps-about b{padding-top:2px;font-size:15px;font-weight:500}.wxsteps-about p{margin:0;color:#77777d;font-size:14px;line-height:1.7}.wxsteps-toggle{width:100%;min-height:64px;margin-top:12px;border:0;border-top:.5px solid rgba(255,255,255,.035);border-bottom:.5px solid rgba(255,255,255,.035);background:#181819;color:#7d8daf;font-size:18px}.wxsteps-toggle.stop{color:#fa5151}.wxlight .wxsteps-page,.wxlight .wxsteps-nav,.wxlight .wxsteps-scroll{background:#f2f2f2;color:#111}.wxlight .wxsteps-nav{border-bottom-color:rgba(0,0,0,.06)}.wxlight .wxsteps-nav button{color:#111}.wxlight .wx-steps-chat-row,.wxlight .wxsteps-hero,.wxlight .wxsteps-about,.wxlight .wxsteps-toggle{background:#fff}.wxlight .wxsteps-hero,.wxlight .wxsteps-about{border-bottom-color:rgba(0,0,0,.08)}.wxlight .wxsteps-toggle{border-color:rgba(0,0,0,.05)}.role-wxsteps-entry .it{gap:12px}.role-wxsteps-entry .wx-steps-icon{width:38px;height:38px;flex-basis:38px;border-radius:7px}.role-wxsteps-entry .wx-steps-icon svg{width:29px;height:29px}.role-wxsteps-entry .it>span:nth-child(2){min-width:0;flex:1}

/* 微信聊天：只在固定层使用磨砂，避免给气泡逐个加滤镜造成 iPhone 掉帧。 */
.wx-chat-premium{--chat-glass:rgba(27,27,30,.86);--chat-panel:rgba(30,30,32,.92);--chat-control:#d7d7da;--chat-field:rgba(52,52,55,.92);--chat-line:rgba(255,255,255,.09);background:#101011;color:#ededee}
.wx-chat-premium.wxlight{--chat-glass:rgba(247,247,249,.88);--chat-panel:rgba(245,245,247,.93);--chat-control:#242426;--chat-field:rgba(255,255,255,.94);--chat-line:rgba(0,0,0,.09);background:#ededed;color:#111}
.wx-chat-premium>.chat-glass-nav{height:58px;flex:0 0 58px;padding:0 13px;border:0!important;border-bottom:.5px solid var(--chat-line)!important;background:radial-gradient(circle at 28% -45%,rgba(255,255,255,.13),transparent 58%),linear-gradient(180deg,rgba(38,38,42,.88),rgba(18,18,20,.91))!important;box-shadow:inset 0 1px rgba(255,255,255,.06),0 8px 26px rgba(0,0,0,.13)!important;backdrop-filter:blur(34px) saturate(150%);-webkit-backdrop-filter:blur(34px) saturate(150%);position:relative;z-index:9;isolation:isolate}
.wx-chat-premium.wxlight>.chat-glass-nav{background:radial-gradient(circle at 28% -45%,rgba(255,255,255,.98),transparent 58%),linear-gradient(180deg,rgba(255,255,255,.88),rgba(244,244,247,.92))!important;box-shadow:inset 0 1px rgba(255,255,255,.95),0 8px 24px rgba(0,0,0,.035)!important}
.wx-chat-premium>.chat-glass-nav .t{left:50%;right:auto;max-width:64%;font-size:17px;font-weight:600;letter-spacing:.05px}.wx-chat-premium>.chat-glass-nav .t b{font:inherit}.wx-chat-premium>.chat-glass-nav .l{font:300 38px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:#dedee1}.wx-chat-premium>.chat-glass-nav .r{font-size:25px;letter-spacing:2px;color:#dedee1}.wx-chat-premium.wxlight>.chat-glass-nav .l,.wx-chat-premium.wxlight>.chat-glass-nav .r{color:#171719}
.wx-chat-premium>.chat-glass-mood{width:calc(100% - 24px);max-width:680px;min-height:30px;flex:0 0 auto;margin:8px auto;padding:5px 14px;border:.5px solid rgba(255,255,255,.105);border-radius:999px;background:linear-gradient(135deg,rgba(58,58,63,.68),rgba(30,30,34,.72));box-shadow:inset 0 1px rgba(255,255,255,.055),0 6px 18px rgba(0,0,0,.08);backdrop-filter:blur(20px) saturate(135%);-webkit-backdrop-filter:blur(20px) saturate(135%);box-sizing:border-box;color:#aaaab0;font-size:11px;position:relative;z-index:5}
.wx-chat-premium.wxlight>.chat-glass-mood{border-color:rgba(0,0,0,.07);background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(235,235,239,.84));box-shadow:inset 0 1px rgba(255,255,255,.8),0 5px 16px rgba(0,0,0,.035);color:#77777d}
.wx-chat-premium>.chatbg{min-height:0;background-color:#101011!important}.wx-chat-premium.wxlight>.chatbg{background-color:#ededed!important}
.wx-chat-premium .chatbg .msgt{display:none!important}
.wx-chat-premium .chatbg .tstamp span{padding:2px 4px;background:transparent!important;box-shadow:none!important;color:#77777d}.wx-chat-premium.wxlight .chatbg .tstamp span{color:#99999f}
.wx-chat-premium>.manual-reply-row,.wx-chat-premium.wxlight>.manual-reply-row,html.north-glass-ui .wx-glass.wx-chat-premium>.manual-reply-row{position:absolute;right:10px;bottom:68px;z-index:10;width:auto;min-height:0;padding:0;background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;justify-content:flex-end;pointer-events:none}.wx-chat-premium>.manual-reply-row .manual-reply-chip{pointer-events:auto}
.wx-chat-premium:has(>.chat-quote-pending)>.manual-reply-row{bottom:111px}
.wx-chat-premium>.chat-inputbar{position:relative;z-index:8;min-height:62px;gap:7px;padding:10px 9px 13px;border-top:.5px solid var(--chat-line)!important;background:linear-gradient(180deg,rgba(41,41,44,.9),rgba(23,23,25,.94))!important;box-shadow:0 -10px 28px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.045);backdrop-filter:blur(30px) saturate(145%);-webkit-backdrop-filter:blur(30px) saturate(145%);box-sizing:border-box;align-items:center}
.wx-chat-premium.wxlight>.chat-inputbar{background:linear-gradient(180deg,rgba(255,255,255,.91),rgba(242,242,245,.95))!important;box-shadow:0 -9px 25px rgba(0,0,0,.055),inset 0 1px rgba(255,255,255,.9)}
.wx-chat-premium>.chat-quote-pending{order:1;position:relative;z-index:8;width:calc(100% - 96px);min-height:43px;flex:0 0 auto;align-self:flex-start;margin:-7px 9px 8px 48px;padding:8px 8px 8px 12px;border:.5px solid rgba(255,255,255,.055);border-radius:7px;background:linear-gradient(145deg,rgba(48,48,52,.94),rgba(35,35,38,.94));box-shadow:inset 0 1px rgba(255,255,255,.035);display:flex;align-items:center;gap:9px;box-sizing:border-box;color:#97979d;backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%)}
.wx-chat-premium.wxlight>.chat-quote-pending{border-color:rgba(0,0,0,.055);background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(238,238,241,.96));box-shadow:inset 0 1px #fff;color:#77777d}
.chat-quote-pending-text{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:20px}.chat-quote-pending-text b{font:inherit;color:inherit}.chat-quote-cancel{position:relative;z-index:2;width:32px;height:32px;min-width:32px;margin:-3px;padding:0;border:0;border-radius:50%;background:#66666b;color:#232326;display:grid;place-items:center;font:700 20px/1 -apple-system,BlinkMacSystemFont,sans-serif;appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;pointer-events:auto;cursor:pointer}.chat-quote-cancel span{pointer-events:none;transform:translateY(-.5px)}.chat-quote-cancel:active{transform:scale(.9)}.wxlight .chat-quote-cancel{background:#a5a5aa;color:#f5f5f7}
.chat-quote-sent{max-width:min(260px,calc(100vw - 116px));margin-top:5px;padding:8px 10px;border:.5px solid rgba(255,255,255,.045);border-radius:7px;background:rgba(38,38,41,.9);color:#89898f;font-size:12.5px;line-height:1.45;box-sizing:border-box;word-break:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-quote-sent b{font:inherit;color:inherit}.wxlight .chat-quote-sent{border-color:rgba(0,0,0,.045);background:rgba(218,218,222,.9);color:#717177}.msg.me .chat-quote-sent{align-self:flex-end}.msg.them .chat-quote-sent{align-self:flex-start}
.wx-chat-premium>.chat-inputbar textarea{height:38px;min-height:38px;padding:8px 11px 9px;border:.5px solid rgba(255,255,255,.055);border-radius:7px;background:var(--chat-field);color:#eee;box-shadow:inset 0 1px 1px rgba(0,0,0,.12);font-size:16px;line-height:20px;font-family:inherit}
.wx-chat-premium.wxlight>.chat-inputbar textarea{border-color:rgba(0,0,0,.065);color:#171719;box-shadow:inset 0 1px 1px rgba(0,0,0,.03)}
.chat-composer-icon{width:39px;height:39px;min-width:39px;padding:0;border:0;outline:0;background:transparent;color:var(--chat-control);display:flex;align-items:center;justify-content:center;appearance:none;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;cursor:pointer;transition:transform .12s ease,opacity .12s ease}.chat-composer-icon:active{transform:scale(.91)}.chat-composer-icon svg{display:block}.chat-voice-svg,.chat-emoji-svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.chat-voice-seed{fill:currentColor;stroke:none}.chat-emoji-eye{fill:currentColor;stroke:none}.chat-inputbar.voice-on .chat-voice-svg{color:#07c160}.chat-function-toggle{font-size:0}.chat-function-toggle>span{position:relative;width:28px;height:28px;border:1.8px solid currentColor;border-radius:50%;display:block;box-sizing:border-box}.chat-function-toggle>span::before,.chat-function-toggle>span::after{content:"";position:absolute;left:50%;top:calc(50% + .75px);border-radius:999px;background:currentColor;transform:translate(-50%,-50%)}.chat-function-toggle>span::before{width:13.5px;height:1.8px}.chat-function-toggle>span::after{width:1.8px;height:13.5px}.chat-inputbar .chat-send{display:none;height:36px;min-width:51px;padding:0 10px;border:0;border-radius:6px;background:#07c160;color:#fff;box-shadow:none;font-size:13px}.chat-inputbar.has-text .chat-function-toggle{display:none}.chat-inputbar.has-text .chat-send{display:block}
.group-chat-inputbar textarea{min-width:0}.group-chat-tools .chat-function-viewport{height:100%}.group-chat-tools .chat-function-page{height:100%;padding-top:17px}.group-voice-bubble{display:flex!important;align-items:center;gap:8px;min-width:112px}.group-voice-bubble>span:first-child{font-size:18px;letter-spacing:-2px}
.wx-chat-premium>.chat-tools-panel{height:264px;max-height:38vh;padding:0;border-top:.5px solid var(--chat-line);background:linear-gradient(180deg,rgba(31,31,34,.94),rgba(22,22,24,.97));box-shadow:inset 0 1px rgba(255,255,255,.035);backdrop-filter:blur(28px) saturate(135%);-webkit-backdrop-filter:blur(28px) saturate(135%);overflow:hidden;box-sizing:border-box}
.wx-chat-premium.wxlight>.chat-tools-panel{background:linear-gradient(180deg,rgba(247,247,249,.95),rgba(237,237,240,.97));box-shadow:inset 0 1px rgba(255,255,255,.8)}
.chat-panel-pane{display:none;height:100%;min-height:0}.chat-panel-pane.on{display:block}.chat-function-pane{position:relative}.chat-function-viewport{height:225px;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;touch-action:pan-x;-webkit-overflow-scrolling:touch;scrollbar-width:none}.chat-function-viewport::-webkit-scrollbar{display:none}.chat-function-page{width:100%;min-width:100%;height:100%;padding:17px 15px 6px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,92px);gap:5px 8px;scroll-snap-align:start;scroll-snap-stop:always;box-sizing:border-box}.chat-tools-panel .chat-function-page .it{min-width:0;padding:0;border:0;background:transparent;color:#c9c9cd;font:inherit;appearance:none;-webkit-appearance:none}.chat-tools-panel .chat-function-page .it .b{width:57px;height:57px;border:.5px solid rgba(255,255,255,.055);border-radius:17px;background:linear-gradient(145deg,#343437,#29292c);box-shadow:inset 0 1px rgba(255,255,255,.055),0 6px 15px rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;color:#d2d2d5}.chat-tools-panel .chat-function-page .it>span:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#929298;font-size:11px}.wx-chat-premium.wxlight .chat-function-page .it .b{border-color:rgba(0,0,0,.055);background:linear-gradient(145deg,#fff,#ececef);box-shadow:inset 0 1px #fff,0 5px 13px rgba(0,0,0,.04);color:#4f4f53}.wx-chat-premium.wxlight .chat-function-page .it>span:last-child{color:#717177}.chat-panel-dots{height:25px;display:flex;align-items:center;justify-content:center;gap:8px}.chat-panel-dot{width:7px;height:7px;border-radius:50%;background:#444449;transition:background .15s,transform .15s}.chat-panel-dot.on{background:#a5a5aa;transform:scale(1.12)}.wx-chat-premium.wxlight .chat-panel-dot{background:#c9c9cd}.wx-chat-premium.wxlight .chat-panel-dot.on{background:#77777d}.chat-emoji-pane .ppage{height:100%;max-height:none;padding:12px 13px 18px;box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch}
@media(max-height:720px){.wx-chat-premium>.chat-glass-nav{height:52px;flex-basis:52px}.wx-chat-premium>.chat-tools-panel{height:226px}.chat-function-viewport{height:192px}.chat-function-page{padding-top:10px;grid-template-rows:repeat(2,79px)}.chat-tools-panel .chat-function-page .it .b{width:50px;height:50px}}

/* 通讯录搜索和右侧索引固定在滚动层外；分组字母在搜索栏下方吸顶。 */
.wx-contacts>.wx-contact-sticky-search{position:relative;top:auto;z-index:7;flex:0 0 48px;height:48px;box-sizing:border-box}
.wx-contacts>.wx-contact-sticky-search input{width:2em;flex:0 0 2em;text-align:left}
.wx-contacts>.wx-contact-sticky-search label:focus-within{justify-content:flex-start}
.wx-contacts>.wx-contact-sticky-search label:focus-within input{width:auto;flex:1;text-align:left}
.wx-contacts>.wx-alpha-rail{position:absolute;right:1px;top:106px;bottom:76px;z-index:8}
html.north-real-preview .wx-contacts>.wx-alpha-rail{top:150px}
@media(max-height:720px){.wx-contacts>.wx-alpha-rail{top:100px;bottom:66px}html.north-real-preview .wx-contacts>.wx-alpha-rail{top:144px}}
.wx-contact-letter>h4{position:sticky;top:0;z-index:3}
/* 真人好友头像不再占满姓名前的整行空间。 */
.wx-contact-person>.pfavwrap{width:40px;height:40px;flex:0 0 40px}
.wx-contact-person>.wx-contact-name{flex:1;min-width:0}

/* 微信发现页：保留真实入口，已被角色锁定的软件直接灰掉且不可点击。 */
.wx-discover-list{min-height:100%;padding:10px 0 24px;background:var(--wx-bg);box-sizing:border-box}.wx-discover-list section{margin-bottom:10px;background:var(--wx-row);border-top:.5px solid var(--wx-line);border-bottom:.5px solid var(--wx-line)}.wx-discover-row{width:100%;height:64px;padding:0 18px;border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:16px;position:relative;text-align:left;font:400 17px/1.2 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.wx-discover-row:after{content:"";position:absolute;left:62px;right:0;bottom:0;height:.5px;background:var(--wx-line)}.wx-discover-row:last-child:after{display:none}.wx-discover-row:active{background:rgba(127,127,127,.08)}.wx-discover-row>i{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;font-style:normal}.wx-discover-row>i svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.wx-discover-row>span{flex:1;min-width:0}.wx-discover-row>span small{display:block;margin-top:4px;color:var(--wx-sub);font-size:10px}.wx-discover-row>em{min-width:22px;color:#57575c;display:flex;align-items:center;justify-content:flex-end;gap:5px;font:300 26px/1 sans-serif;font-style:normal}.wxlight .wx-discover-row>em{color:#aaa}.wx-discover-row>em b{width:17px;height:17px;display:grid;place-items:center}.wx-discover-row>em b svg{width:14px;height:14px}.wx-discover-row>em small{font-size:10px;white-space:nowrap}.wx-discover-row.tone-moments>i,.wx-discover-row.tone-games>i{color:#4b9cff}.wx-discover-row.tone-channels>i{color:#f19a38}.wx-discover-row.tone-live>i{color:#ff675d}.wx-discover-row.tone-music>i,.wx-discover-row.tone-search>i{color:#fa5864}.wx-discover-row.tone-cinema>i{color:#dfb531}.wx-discover-row.tone-nearby>i{color:#3c9eff}.wx-discover-row.locked{opacity:.32;filter:grayscale(1);pointer-events:none}.wx-discover-row.locked>i{color:var(--wx-sub)}
.wx-live-coming{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 35px 14%;box-sizing:border-box;text-align:center}.wx-live-orbit{width:112px;height:112px;border:1px solid rgba(255,103,93,.25);border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,rgba(255,103,93,.14),transparent 68%);box-shadow:0 0 50px rgba(255,103,93,.08)}.wx-live-orbit i{width:58px;height:58px;display:grid;place-items:center;color:#ff675d}.wx-live-orbit svg{width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:1.5}.wx-live-coming>b{margin-top:24px;font-size:20px}.wx-live-coming>p{max-width:260px;margin:10px 0 24px;color:var(--dir-sub);font-size:12px;line-height:1.7}.wx-live-coming>button{height:42px;padding:0 28px;border:0;border-radius:11px;background:var(--dir-row);color:var(--dir-text);font-size:14px}.wx-moment-feed{padding-bottom:20px}.wx-moment-feed .mcover{margin-top:0}
.wx-nearby-page{padding-bottom:28px}.wx-nearby-hero{margin:10px 12px;padding:17px 16px;border:1px solid rgba(77,156,255,.18);border-radius:16px;background:linear-gradient(135deg,rgba(61,111,190,.2),rgba(39,39,43,.5));display:flex;align-items:center;gap:14px}.wxlight .wx-nearby-hero{background:linear-gradient(135deg,#eef5ff,#fff)}.wx-nearby-hero>i{width:42px;height:42px;border-radius:14px;background:rgba(75,156,255,.14);color:#4b9cff;display:grid;place-items:center}.wx-nearby-hero svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.6}.wx-nearby-hero>span{flex:1}.wx-nearby-hero b{display:block;font-size:17px}.wx-nearby-hero small{display:block;margin-top:5px;color:var(--dir-sub);font-size:10px}.wx-nearby-list{margin-top:10px;background:var(--dir-row)}.wx-nearby-card{min-height:78px;padding:10px 14px;border-bottom:.5px solid var(--dir-line);display:flex;align-items:center;gap:12px;box-sizing:border-box}.wx-nearby-avatar{width:48px;height:48px;flex:0 0 48px;border-radius:9px;background:linear-gradient(145deg,#777b82,#41444a);display:grid;place-items:center;overflow:hidden;box-shadow:inset 0 1px rgba(255,255,255,.16)}.wxlight .wx-nearby-avatar{background:linear-gradient(145deg,#d6d8dc,#a9adb4)}.wx-nearby-avatar svg{width:41px;height:41px;fill:#c9ccd1;stroke:#c9ccd1;stroke-width:1.7}.wxlight .wx-nearby-avatar svg{fill:#f0f1f3;stroke:#f0f1f3}.wx-nearby-copy{flex:1;min-width:0}.wx-nearby-copy b{display:block;font-size:15px;font-weight:550}.wx-nearby-copy span{display:block;margin-top:4px;color:#4b9cff;font-size:10px}.wx-nearby-copy p{margin:4px 0 0;color:var(--dir-sub);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wx-nearby-card>button{min-width:58px;height:31px;padding:0 10px;border:0;border-radius:7px;background:#07c160;color:#fff;font-size:12px}.wx-nearby-card>button:disabled{background:#343439;color:#8a8a90}.wxlight .wx-nearby-card>button:disabled{background:#e5e5e8;color:#999}.wx-nearby-card.accepted>button{border:1px solid var(--dir-line);background:transparent;color:var(--dir-sub)}.wx-nearby-foot{margin:20px 28px 0;color:var(--dir-sub);font-size:10px;line-height:1.65;text-align:center}.wx-stranger-avatar{background:linear-gradient(145deg,#777b82,#41444a)!important;box-shadow:inset 0 1px rgba(255,255,255,.16)!important}.wxlight .wx-stranger-avatar{background:linear-gradient(145deg,#d6d8dc,#a9adb4)!important}.wx-stranger-avatar svg{stroke:#f0f1f3!important}

/* WeChat transfer cards and the independent receipt/refund page. */
.wx-transfer-card{--wx-transfer-bg:#e99332;position:relative;width:min(246px,calc(100vw - 96px));border-radius:7px;overflow:visible;color:#fff;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.13);outline:0;transform:translateZ(0);-webkit-tap-highlight-color:transparent}.wx-transfer-card:active{filter:brightness(.96)}.wx-transfer-main{min-height:60px;padding:12px 13px 6px;display:flex;align-items:center;gap:11px;border-radius:7px 7px 0 0;background:var(--wx-transfer-bg);box-sizing:border-box}.wx-transfer-glyph{width:40px;height:40px;flex:0 0 40px;color:rgba(255,255,255,.94)}.wx-transfer-glyph svg,.wx-transfer-detail-icon svg{width:100%;height:100%;display:block;fill:none;stroke:currentColor;stroke-width:3.1;stroke-linecap:round;stroke-linejoin:round}.wx-transfer-copy{min-width:0;display:block}.wx-transfer-copy b,.wx-transfer-copy em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wx-transfer-copy b{font-size:18px;line-height:1.1;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:.01em}.wx-transfer-copy em{margin-top:3px;font-size:14px;line-height:1.18;font-style:normal;font-weight:400}.wx-transfer-foot{height:24px;padding:6px 13px 0;border-top:1px solid rgba(255,255,255,.17);border-radius:0 0 7px 7px;background:var(--wx-transfer-bg);box-sizing:border-box;color:rgba(255,255,255,.68);font-size:10px;line-height:1}.msg.them .wx-transfer-card:before,.msg.me .wx-transfer-card:after{content:"";position:absolute;top:13px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;z-index:1}.msg.them .wx-transfer-card:before{left:-7px;border-right:8px solid var(--wx-transfer-bg)}.msg.me .wx-transfer-card:after{right:-7px;border-left:8px solid var(--wx-transfer-bg)}.wx-transfer-card.state-received,.wx-transfer-card.state-refunded{--wx-transfer-bg:#9b692b}.wx-transfer-card.state-received .wx-transfer-main,.wx-transfer-card.state-refunded .wx-transfer-main,.wx-transfer-card.state-received .wx-transfer-foot,.wx-transfer-card.state-refunded .wx-transfer-foot{color:rgba(255,255,255,.53)}.wx-transfer-card.state-received .wx-transfer-glyph,.wx-transfer-card.state-refunded .wx-transfer-glyph{color:rgba(255,255,255,.48)}.wx-transfer-card.state-received .wx-transfer-foot,.wx-transfer-card.state-refunded .wx-transfer-foot{border-top-color:rgba(255,255,255,.09)}
.wx-transfer-detail-nav{height:58px!important;background:#181818!important;border-bottom-color:transparent!important}.wx-transfer-detail-nav .l{color:#d7d7db!important;font-size:38px!important;font-weight:200!important}.wx-transfer-detail{height:calc(100dvh - 58px);min-height:calc(100dvh - 58px);display:flex;flex-direction:column;background:#181818;color:#f2f2f3;box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch}.wx-transfer-detail-hero{padding:108px 24px 0;text-align:center}.wx-transfer-detail-icon{width:56px;height:56px;margin:0 auto 28px;color:#14aaf5}.wx-transfer-detail.state-received .wx-transfer-detail-icon{color:#14aaf5}.wx-transfer-detail.state-refunded .wx-transfer-detail-icon{color:#dda900}.wx-transfer-detail-hero p{margin:0;color:#cfcfd3;font-size:19px;line-height:1.3}.wx-transfer-detail-hero h1{margin:29px 0 0;color:#f1f1f2;font-size:54px;line-height:1;font-weight:500;letter-spacing:-.025em;font-variant-numeric:tabular-nums}.wx-transfer-detail-meta{margin:72px 28px 0;padding:24px 0 20px;border-top:1px solid #2b2b2d}.wx-transfer-detail-meta>div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:5px 0}.wx-transfer-detail-meta dt,.wx-transfer-detail-meta dd{margin:0;font-size:15px;line-height:1.42}.wx-transfer-detail-meta dt{color:#85858b}.wx-transfer-detail-meta dd{color:#d8d8dc;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.wx-transfer-actions{margin-top:auto;padding:30px 30px max(34px,env(safe-area-inset-bottom));text-align:center}.wx-transfer-actions>button{width:min(100%,270px);height:54px;border:0;border-radius:7px;background:#07c160;color:#fff;font-size:18px;font-weight:500;appearance:none;-webkit-appearance:none}.wx-transfer-actions>button:active{background:#06ad56}.wx-transfer-actions p{margin:24px 0 0;color:#77777c;font-size:14px;line-height:1.45}.wx-transfer-actions p button{padding:0;border:0;background:transparent;color:#8a8d9d;font:inherit;appearance:none;-webkit-appearance:none}.wx-transfer-actions.passive{padding-bottom:max(44px,env(safe-area-inset-bottom))}.wx-transfer-detail-empty{margin:auto;color:#85858b;font-size:14px}
.wxlight .wx-transfer-detail-nav{background:#f7f7f7!important;border-bottom-color:#e4e4e6!important}.wxlight .wx-transfer-detail-nav .l{color:#3a3a3c!important}.wxlight .wx-transfer-detail{background:#f7f7f7;color:#111}.wxlight .wx-transfer-detail-hero p{color:#3d3d40}.wxlight .wx-transfer-detail-hero h1{color:#111}.wxlight .wx-transfer-detail-meta{border-top-color:#dfdfe2}.wxlight .wx-transfer-detail-meta dt{color:#8b8b91}.wxlight .wx-transfer-detail-meta dd{color:#303034}.wxlight .wx-transfer-actions p{color:#9a9a9f}.wxlight .wx-transfer-actions p button{color:#73778b}@media(max-height:680px){.wx-transfer-detail-hero{padding-top:58px}.wx-transfer-detail-icon{margin-bottom:18px}.wx-transfer-detail-hero h1{margin-top:19px;font-size:46px}.wx-transfer-detail-meta{margin-top:42px}.wx-transfer-actions{padding-top:18px}}
.wx-transfer-detail{height:calc(100vh - 58px);min-height:calc(100vh - 58px)}
.page:has(>.wx-transfer-detail-nav){display:flex;flex-direction:column}.page:has(>.wx-transfer-detail-nav)>.wx-transfer-detail-nav{flex:0 0 58px}.page:has(>.wx-transfer-detail-nav)>.wx-transfer-detail{flex:1 1 auto;height:auto;min-height:0}

/* ===== 真实红包与转账（深色微信；颜色是从她给的五张截图里逐点取的） ===== */
.wx-rp-card{--wx-rp-bg:#d59148;position:relative;width:min(246px,calc(100vw - 96px));border-radius:7px;color:#ffecda;cursor:pointer;box-shadow:0 1px 2px rgba(0,0,0,.13);outline:0;transform:translateZ(0);-webkit-tap-highlight-color:transparent;text-align:left}
.wx-rp-card:active{filter:brightness(.95)}
.wx-rp-main{min-height:60px;padding:12px 14px 6px;display:flex;align-items:center;gap:12px;border-radius:7px 7px 0 0;background:var(--wx-rp-bg);box-sizing:border-box}
.wx-rp-env{width:34px;height:43px;flex:0 0 34px;display:block}
.wx-rp-env svg{width:100%;height:100%;display:block}
.wx-rp-copy{min-width:0;display:block}
.wx-rp-copy b,.wx-rp-copy em{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wx-rp-copy b{font-size:16px;line-height:1.28;font-weight:400;color:#ffecda}
.wx-rp-copy em{margin-top:2px;font-size:13px;line-height:1.2;font-style:normal;color:#fbd9b3}
.wx-rp-foot{height:25px;padding:6px 14px 0;border-radius:0 0 7px 7px;background:var(--wx-rp-bg);box-sizing:border-box;color:#fbcc98;font-size:10.5px;line-height:1.2}
.wx-rp-card.incoming:before,.wx-rp-card.outgoing:after{content:"";position:absolute;top:13px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;z-index:1}
.wx-rp-card.incoming:before{left:-7px;border-right:8px solid var(--wx-rp-bg)}
.wx-rp-card.outgoing:after{right:-7px;border-left:8px solid var(--wx-rp-bg)}
.wx-rp-card.opened{--wx-rp-bg:#a57137}
.wx-rp-card.opened .wx-rp-copy b{color:#c7a172}
.wx-rp-card.opened .wx-rp-copy em{color:#caa173}
.wx-rp-card.opened .wx-rp-foot{color:#cb9f72}
.wx-rp-sys span{display:inline-flex;align-items:center;color:#8b8b8f}
.wx-rp-sys .wx-rp-sysicon{margin-right:6px}
.wx-rp-sysicon{position:relative;width:12px;height:15px;flex:0 0 12px;border-radius:2px;background:#e3584a}
.wx-rp-sysicon:after{content:"";position:absolute;left:50%;top:4px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:#f7d78b}
.wx-rp-sys b{font-weight:400;color:#eca85f}
/* 開红包那一层 */
.wx-rp-overlay{position:absolute;inset:0;z-index:950;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(0,0,0,.74);animation:wxRpFade .18s ease-out}
.wx-rp-sheet{position:relative;width:min(80vw,312px);height:min(64vh,510px);border-radius:11px;overflow:hidden;background:#e1604b;box-shadow:0 12px 40px rgba(0,0,0,.45);animation:wxRpPop .28s cubic-bezier(.2,.9,.3,1.18)}
.wx-rp-top{position:absolute;left:0;right:0;top:0;height:80%;padding:110px 22px 0;box-sizing:border-box;background:#d65b49;border-radius:0 0 50% 50%/0 0 8% 8%;box-shadow:0 2px 4px rgba(0,0,0,.16);text-align:center;z-index:1}
.wx-rp-from{display:flex;align-items:center;justify-content:center;gap:7px;color:#ffe5bc;font-size:17px;font-weight:500;line-height:1.3}
.wx-rp-from span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wx-rp-av,.wx-rp-from .avatar,.wx-rpd-from .avatar{width:24px!important;height:24px!important;min-width:24px;border-radius:4px!important;font-size:13px!important;flex:0 0 24px}
.wx-rp-wish{margin-top:22px;color:#ffe5bc;font-size:24px;line-height:1.35;font-weight:500;word-break:break-all;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.wx-rp-open{position:absolute;left:50%;top:80%;z-index:2;width:98px;height:98px;margin:-49px 0 0 -49px;padding:0;border:0;border-radius:50%;background:#e6cea0;color:#4e4445;font:400 40px/98px "Songti SC","STSong","Noto Serif SC",serif;box-shadow:0 3px 7px rgba(0,0,0,.2);cursor:pointer;-webkit-tap-highlight-color:transparent}
.wx-rp-open:active{filter:brightness(.97)}
.wx-rp-open.spinning{animation:wxRpSpin .76s linear infinite}
.wx-rp-more{position:absolute;left:0;right:0;bottom:22px;z-index:2;padding:6px 0;border:0;background:transparent;color:#fee6b6;font-size:14px;line-height:1.2;cursor:pointer}
.wx-rp-more i{font-style:normal;margin-left:6px}
.wx-rp-close{width:42px;height:42px;margin-top:26px;padding:0;border:1.5px solid #d4b483;border-radius:50%;background:transparent;color:#d4b483;cursor:pointer}
.wx-rp-close svg{width:20px;height:20px;display:block;margin:auto;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
@keyframes wxRpFade{from{opacity:0}to{opacity:1}}
@keyframes wxRpPop{from{transform:scale(.86);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes wxRpSpin{from{transform:perspective(420px) rotateY(0)}to{transform:perspective(420px) rotateY(360deg)}}
/* 领取详情 */
.wx-rpd-nav{height:58px!important;background:#d65b49!important;border-bottom-color:transparent!important}
.wx-rpd-nav .l{color:#ffe5bc!important;font-size:38px!important;font-weight:200!important}
.wx-rpd{min-height:calc(100dvh - 58px);background:#111;color:#d1d1d1;box-sizing:border-box;text-align:center}
.wx-rpd-head{height:64px;background:#d65b49;border-radius:0 0 50% 50%/0 0 100% 100%}
.wx-rpd-from{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:34px}
.wx-rpd-from b{color:#d9d9d9;font-size:18px;font-weight:500}
.wx-rpd-wish{margin:10px 32px 0;color:#888;font-size:14px;line-height:1.5}
.wx-rpd-amt{margin-top:30px;color:#e8c28a}
.wx-rpd-amt b{font-size:52px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.wx-rpd-amt span{margin-left:4px;font-size:15px}
.wx-rpd-tip{margin-top:12px;color:#7d90a9;font-size:14px}
.wx-rpd-state{margin:36px 32px 0;color:#9a9a9e;font-size:15px;line-height:1.6}
/* 发红包页、转账页共用的顶栏 */
.wx-pay-nav{height:58px!important;background:#111!important;border-bottom-color:transparent!important}
.wx-pay-nav .l{color:#cfcfcf!important;font-size:38px!important;font-weight:200!important}
.wx-pay-nav .t{color:#cfcfcf!important;font-size:17px!important;font-weight:500!important}
/* 发红包页 */
.wx-rps{height:calc(100dvh - 58px);display:flex;flex-direction:column;padding:12px 16px 0;background:#111;color:#d1d1d1;box-sizing:border-box;overflow-y:auto}
.wx-rps-row{display:flex;align-items:center;gap:12px;min-height:55px;margin-bottom:12px;padding:0 16px;border-radius:6px;background:#191919;box-sizing:border-box}
.wx-rps-row>span{flex:0 0 auto;color:#d1d1d1;font-size:17px}
.wx-rps-row input{flex:1;min-width:0;height:44px;padding:0;border:0;outline:0;background:transparent;color:#d9d9d9;font-size:17px;text-align:right;caret-color:#ff6146}
.wx-rps-row input::placeholder{color:#57575a}
.wx-rps-row.wish{min-height:63px}
.wx-rps-row.wish input{text-align:left}
.wx-rps-row.wish input::placeholder{color:#5e5e5e}
.wx-rps-emoji{width:28px;height:28px;flex:0 0 28px;color:#8c8c8c}
.wx-rps-emoji svg{width:100%;height:100%;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.wx-rps-row.cover{min-height:63px;justify-content:space-between;cursor:pointer}
.wx-rps-chev{color:#8c8c8c;font-style:normal;font-size:24px;line-height:1}
.wx-rps-total{margin-top:62px;display:flex;align-items:baseline;justify-content:center;gap:10px;color:#cfcfcf;font-variant-numeric:tabular-nums}
.wx-rps-total span{font-size:34px;font-weight:700}
.wx-rps-total b{font-size:54px;font-weight:600;letter-spacing:.01em}
.wx-rps-go{display:block;width:182px;height:46px;margin:24px auto 0;border:0;border-radius:6px;background:#ff6146;color:#fff;font-size:17px;font-weight:500;cursor:pointer}
.wx-rps-go.off{opacity:.5;cursor:default}
.wx-rps-foot{margin-top:auto;padding:28px 0 calc(22px + env(safe-area-inset-bottom));text-align:center;color:#888;font-size:13px}
/* 转账页 */
.wx-tfs{height:calc(100dvh - 58px);display:flex;flex-direction:column;background:#111;color:#d1d1d1;box-sizing:border-box}
.wx-tfs-to{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 32px 26px}
.wx-tfs-to>div{min-width:0}
.wx-tfs-to b{display:block;color:#cfcfcf;font-size:17px;font-weight:500;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wx-tfs-to small{display:block;margin-top:5px;color:#888;font-size:14px;letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wx-tfs-av,.wx-tfs-to .avatar{width:44px!important;height:44px!important;min-width:44px;border-radius:6px!important;flex:0 0 44px}
.wx-tfs-panel{flex:1;min-height:0;padding:26px 32px 0;border-radius:14px 14px 0 0;background:#191919}
.wx-tfs-label{color:#d1d1d1;font-size:15px}
.wx-tfs-amt{display:flex;align-items:center;height:78px;margin-top:8px;border-bottom:1px solid #2a2a2a}
.wx-tfs-amt .yen{margin-right:14px;color:#d1d1d1;font-size:36px;font-weight:700}
.wx-tfs-amt .num{color:#e6e6e6;font-size:44px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.01em}
.wx-tfs-amt .caret{width:2.5px;height:50px;margin-left:4px;background:#07c160;animation:wxTfCaret 1.06s steps(1) infinite}
@keyframes wxTfCaret{50%{opacity:0}}
.wx-tfs-note{margin-top:20px;padding:0;border:0;background:transparent;color:#7d90a9;font-size:15px;cursor:pointer;text-align:left}
.wx-tfs-note u{margin-left:10px;text-decoration:none;color:#7d90a9}
.wx-tfs-keys{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,47px);gap:8px;padding:8px 8px calc(10px + env(safe-area-inset-bottom));background:#1e1e1e;border-top:1px solid #262626}
.wx-tfs-keys button{padding:0;border:0;border-radius:5px;background:#2c2c2c;color:#d5d5d5;font-size:24px;font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent}
.wx-tfs-keys button:active{background:#3a3a3a}
.wx-tfs-keys .go{grid-column:4;grid-row:2/5;background:#07c160;color:#fff;font-size:18px}
.wx-tfs-keys .go:active{background:#06ad56}
.wx-tfs-keys .go.off{opacity:.5;cursor:default}
.wx-tfs-keys .zero{grid-column:1/3}
.wx-tfs-keys .del svg{width:28px;height:21px;display:block;margin:auto;fill:#d5d5d5;stroke:#2c2c2c;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* 白天模式：发红包页、转账页、领取详情页跟着微信切成浅色 */
.wxlight .wx-pay-nav{background:#ededed!important}
.wxlight .wx-pay-nav .l,.wxlight .wx-pay-nav .t{color:#191919!important}
.wxlight .wx-rps{background:#ededed;color:#191919}
.wxlight .wx-rps-row{background:#fff}
.wxlight .wx-rps-row>span{color:#191919}
.wxlight .wx-rps-row input{color:#191919}
.wxlight .wx-rps-row input::placeholder,.wxlight .wx-rps-row.wish input::placeholder{color:#b2b2b2}
.wxlight .wx-rps-emoji,.wxlight .wx-rps-chev{color:#b2b2b2}
.wxlight .wx-rps-total{color:#191919}
.wxlight .wx-rps-foot{color:#9b9b9b}
.wxlight .wx-tfs{background:#ededed;color:#191919}
.wxlight .wx-tfs-to b{color:#191919}
.wxlight .wx-tfs-to small{color:#8a8a8a}
.wxlight .wx-tfs-panel{background:#fff}
.wxlight .wx-tfs-label,.wxlight .wx-tfs-amt .yen{color:#191919}
.wxlight .wx-tfs-amt .num{color:#111}
.wxlight .wx-tfs-amt{border-bottom-color:#e5e5e5}
.wxlight .wx-tfs-note,.wxlight .wx-tfs-note u{color:#576b95}
.wxlight .wx-tfs-keys{background:#f6f6f6;border-top-color:#e6e6e6}
.wxlight .wx-tfs-keys button{background:#fff;color:#111}
.wxlight .wx-tfs-keys button:active{background:#e3e3e3}
.wxlight .wx-tfs-keys .del svg{fill:#111;stroke:#fff}
.wxlight .wx-tfs-keys .go{background:#07c160;color:#fff}
.wxlight .wx-tfs-keys .go:active{background:#06ad56}
.wxlight .wx-rpd{background:#fff;color:#191919}
.wxlight .wx-rpd-from b{color:#191919}
.wxlight .wx-rpd-wish{color:#8a8a8a}
.wxlight .wx-rpd-amt{color:#c9a15f}
.wxlight .wx-rpd-tip{color:#576b95}
.wxlight .wx-rpd-state{color:#8a8a8a}
/* 群红包：发红包页（个数 + 总金额 + 拼手气）、领取详情（谁抢了多少、手气最佳）、群转账选择收款方 */
.wx-grps-type{align-self:flex-start;display:inline-flex;align-items:center;gap:5px;margin:0 0 12px 2px;padding:4px 2px;border:0;background:transparent;color:#d9a55a;font:inherit;font-size:15px;cursor:pointer}
.wx-grps-type i{width:0;height:0;border-left:4.5px solid transparent;border-right:4.5px solid transparent;border-top:5.5px solid currentColor;margin-top:1px}
.wx-grps .wx-rps-row{margin-bottom:0}.wx-grps .wx-rps-row+.wx-rps-row,.wx-grps .wx-grps-hint+.wx-rps-row{margin-top:12px}
.wx-grps-unit{flex:0 0 auto;font-style:normal;color:#d1d1d1;font-size:17px}
.wx-grps-hint{padding:8px 16px 0;color:#888;font-size:13px}
.wx-grps-lab{display:inline-flex;align-items:center;gap:6px}
.wx-grps-pin{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;background:#e9a23b;color:#fff;font-style:normal;font-size:11.5px;font-weight:600;line-height:1;flex:0 0 18px}
.wx-rpd-from .wx-grps-pin{margin-left:2px}
.wx-grpd{overflow-y:auto;height:calc(100dvh - 58px);min-height:0;padding-bottom:calc(20px + env(safe-area-inset-bottom))}
.wx-grpd-tip{display:flex;align-items:center;justify-content:center;gap:3px;width:max-content;margin:12px auto 0;color:#e8c28a!important}.wx-grpd-tip i{font-style:normal;font-size:17px;line-height:1}
.wx-grpd-reply{display:flex;align-items:center;gap:6px;margin:22px auto 0;padding:9px 18px;border:.5px solid rgba(232,194,138,.45);border-radius:6px;background:transparent;color:#e8c28a;font:inherit;font-size:14px;cursor:pointer}
.wx-grpd-list{margin-top:34px;text-align:left;background:#191919;border-top:8px solid #111}
.wx-grpd-sum{padding:14px 16px 12px;color:#8d8d92;font-size:14px;border-bottom:.5px solid rgba(255,255,255,.07)}
.wx-grpd-row{display:flex;align-items:center;gap:12px;min-height:68px;padding:0 16px;position:relative}
.wx-grpd-row+.wx-grpd-row:before{content:"";position:absolute;left:68px;right:0;top:0;height:.5px;background:rgba(255,255,255,.07)}
.wx-grpd-av .avatar{width:42px!important;height:42px!important;min-width:42px;border-radius:5px!important;font-size:22px!important}
.wx-grpd-who{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.wx-grpd-who b{font-weight:400;font-size:16px;color:#d9d9d9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wx-grpd-who small{font-size:13px;color:#77777c}
.wx-grpd-amt{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.wx-grpd-amt b{font-weight:400;font-size:16px;color:#d9d9d9;font-variant-numeric:tabular-nums}
.wx-grpd-amt em{display:inline-flex;align-items:center;gap:3px;font-style:normal;font-size:12px;color:#e0a73c}.wx-grpd-amt em svg{width:13px;height:10px;fill:currentColor}
.wx-grpd-foot{padding:18px 16px;text-align:center;color:#77777c;font-size:13px}
.wx-rp-late{height:98px}
.wxlight .wx-grps-unit{color:#191919}.wxlight .wx-grps-hint{color:#9b9b9b}.wxlight .wx-grps-type{color:#c7883a}
.wxlight .wx-grpd-list{background:#fff;border-top-color:#ededed}.wxlight .wx-grpd-sum{color:#8a8a8a;border-bottom-color:rgba(0,0,0,.07)}
.wxlight .wx-grpd-row+.wx-grpd-row:before{background:rgba(0,0,0,.07)}.wxlight .wx-grpd-who b,.wxlight .wx-grpd-amt b{color:#191919}.wxlight .wx-grpd-who small{color:#9b9b9b}
.wxlight .wx-grpd-tip{color:#c9a15f!important}.wxlight .wx-grpd-reply{color:#c9a15f;border-color:rgba(201,161,95,.55)}.wxlight .wx-grpd-foot{color:#9b9b9b}

/* v1422 unread counts and complete quotes; both light/dark themes. */
.wx-unread-avatar{position:relative;display:inline-flex;flex-shrink:0;overflow:visible}.wx-unread-badge{position:absolute;top:-5px;right:-6px;z-index:2;display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;box-sizing:border-box;border-radius:12px;background:#fa5151;color:#fff;font:500 12px/18px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;white-space:nowrap;pointer-events:none}.wx-unread-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#fa5151;flex-shrink:0;pointer-events:none}.tabbar .tb .i{position:relative;overflow:visible}.tabbar .wx-unread-dot{position:absolute;top:0;right:-3px}.wx-discover-row>span>.wx-unread-dot{margin-left:8px;vertical-align:middle}.chat-quote-sent{display:block;-webkit-line-clamp:unset;overflow:visible;white-space:pre-wrap;overflow-wrap:anywhere;max-height:none}.chat-quote-sent span{white-space:pre-wrap}

.wx-chat-premium:has(.chat-tools-panel.show)>.manual-reply-row{display:none!important}

/* Phone access: a blue permission card, with vector icons and clear hierarchy. */
.card.spy-access-card{width:260px;max-width:100%;border:1px solid rgba(127,184,255,.28);border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#193b6d 0%,#10294c 52%,#0d1d35 100%);color:#f4f8ff;box-shadow:0 8px 22px rgba(5,22,47,.18);position:relative}
.spy-access-card:before{content:'';position:absolute;width:170px;height:170px;border:1px solid rgba(146,197,255,.13);border-radius:50%;top:-82px;right:0;pointer-events:none;box-shadow:0 0 0 22px rgba(128,185,255,.035),0 0 0 44px rgba(128,185,255,.025)}
.spy-access-main{position:relative;padding:19px 18px 17px}.spy-access-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:22px}.spy-access-brand{font-size:9px;letter-spacing:1.7px;color:#a6c7ef;font-weight:600}.spy-access-state{display:inline-flex;align-items:center;gap:4px;color:#c7e1ff;font-size:10px;white-space:nowrap}.spy-access-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;border:1px solid rgba(168,210,255,.25);background:linear-gradient(145deg,rgba(159,206,255,.17),rgba(71,135,220,.06));color:#c5e4ff;margin-bottom:15px}.spy-access-title{margin:0 0 7px;font-size:18px;line-height:1.35;letter-spacing:.3px;font-weight:600}.spy-access-sub{font-size:12px;line-height:1.65;color:#b4cbe8;word-break:break-word}.spy-access-scope{display:flex;flex-wrap:wrap;gap:6px;margin-top:17px}.spy-access-scope span{font-size:10px;line-height:1.2;color:#bdd5f3;padding:5px 7px;border:1px solid rgba(163,197,240,.15);border-radius:6px;background:rgba(104,160,224,.05)}
.spy-access-foot{display:flex;align-items:center;gap:6px;position:relative;padding:11px 18px;border-top:1px solid rgba(145,182,226,.16);font-size:10px;letter-spacing:.4px;color:#91afd5;background:rgba(3,12,28,.18)}

/* Compact access card: keep the permission summary close to half the original height. */
.spy-access-main{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:10px;row-gap:5px;padding:8px 14px}
.spy-access-top{grid-column:1/-1;margin-bottom:5px}.spy-access-brand{font-size:8px;letter-spacing:1.3px}.spy-access-state{font-size:9px}
.spy-access-icon{grid-column:1;grid-row:2/span 2;width:36px;height:36px;border-radius:10px;margin:0;align-self:center}.spy-access-icon svg{width:23px;height:23px}
.spy-access-title{grid-column:2;margin:0;font-size:15px;line-height:20px;letter-spacing:0}.spy-access-sub{grid-column:2;font-size:11px;line-height:18px}
.spy-access-scope{grid-column:1/-1;gap:5px;margin-top:6px}.spy-access-scope span{padding:4px 6px;font-size:9px}
.spy-access-foot{padding:6px 14px;font-size:9px;letter-spacing:0}.card.spy-access-card{border-radius:16px}

html.north-glass-ui.north-shell-custom .statusbar{background:var(--north-shell-status-color)!important;color:var(--north-shell-status-text)!important}

.sweetie-avatar-picker[data-glass-inner][style]>img,.sweetie-avatar-picker[data-glass-inner][style]>svg{background:transparent!important}

html.north-glass-ui .home-vinyl-card .vinyl-arm{opacity:var(--home-vinyl-opacity,1)}

html.north-glass-ui #lockPull.north-lockpull-color{background:var(--north-lockpull-color)!important}
html.north-glass-ui #lockPull.north-lockpull-color:before{border-color:var(--north-lockpull-arrow)!important}
html.north-glass-ui #lockPull.north-lockpull-opacity{opacity:var(--north-lockpull-opacity)!important}

html.north-glass-ui.north-shell-custom,html.north-glass-ui.north-shell-custom body{background-color:var(--north-shell-status-color)!important}

/* Role phone: frosted body below a masked 0.8px highlight ring, scoped to this desktop. */
.spy-desktop{position:relative;isolation:isolate;display:flex;flex-direction:column;flex:1;min-height:0;width:100%;overflow:hidden;color:#fff;background:radial-gradient(ellipse at 12% 5%,#a9c9ce 0,transparent 53%),radial-gradient(ellipse at 94% 57%,#486978 0,transparent 64%),linear-gradient(160deg,#6b8b98,#253e4b 70%,#111e29)}
.spy-wallpaper{position:absolute;inset:0;z-index:-1;pointer-events:none}.spy-wallpaper .avatar{width:100%;height:100%;border-radius:0;background:none;max-width:none}.spy-wallpaper img{width:100%;height:100%;object-fit:cover}.spy-wallpaper:after{content:'';position:absolute;inset:0;background:rgba(17,29,38,.12)}
.spy-desktop button{font:inherit;color:inherit;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.spy-desktop button:focus-visible{outline:2px solid #a8e6ff;outline-offset:3px}.spy-glass{position:relative;isolation:isolate;background:rgba(58,76,86,.28);backdrop-filter:blur(14px) saturate(1.32);-webkit-backdrop-filter:blur(14px) saturate(1.32);box-shadow:0 8px 25px rgba(5,21,30,.12)}
.spy-glass:before{content:'';position:absolute;inset:0;z-index:2;border-radius:inherit;pointer-events:none;padding:.8px;box-sizing:border-box;background:linear-gradient(140deg,rgba(255,255,255,.88),rgba(255,255,255,.38) 25%,rgba(255,255,255,.16) 54%,rgba(255,255,255,.45) 80%,rgba(255,255,255,.8));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;backdrop-filter:brightness(1.72) saturate(1.68);-webkit-backdrop-filter:brightness(1.72) saturate(1.68)}
.spy-home-nav{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 17px 8px;flex:none;min-height:46px;font-size:13px;font-weight:500;letter-spacing:.4px;text-shadow:0 1px 5px rgba(0,0,0,.22)}.spy-home-nav>span{min-width:0;overflow-wrap:anywhere;text-align:center}.spy-nav-button{display:flex;align-items:center;justify-content:center;flex:none;width:34px;height:34px;border-radius:50%;font-size:26px!important;line-height:1}.spy-nav-button:disabled{opacity:.6}
.spy-home-scroll{position:relative;min-height:0;overflow-x:hidden!important;padding:8px 0 max(14px,env(safe-area-inset-bottom));background:transparent!important}.spy-profile-card{margin:0 20px 22px;border-radius:28px;box-shadow:0 14px 32px rgba(12,34,46,.16)}.spy-profile-cover{display:block;position:relative;overflow:hidden;width:100%;height:146px;border-radius:28px 28px 0 0;padding:0;background:linear-gradient(120deg,#c1dde1,#7ca6b4 52%,#557380)}.spy-profile-cover>.avatar{height:100%;width:100%;border-radius:0;background:none}.spy-profile-cover img{width:100%;height:100%;object-fit:cover}.spy-cover-orbit{position:absolute;width:280px;height:280px;top:-130px;right:-40px;border-radius:50%;border:1px solid rgba(210,242,247,.42);box-shadow:0 0 0 35px rgba(108,161,176,.22),0 0 0 75px rgba(78,131,152,.12)}
.spy-profile-info{min-height:171px;border-radius:0 0 28px 28px;padding:55px 20px 24px;text-align:center;background:rgba(65,94,109,.3);box-sizing:border-box}.spy-profile-info:before{border-radius:0 0 28px 28px}.spy-profile-avatar{position:absolute;z-index:3;top:-46px;left:50%;transform:translateX(-50%);padding:0;width:92px;height:92px;border-radius:50%;background:transparent;box-shadow:none}.spy-profile-avatar .avatar{width:100%;height:100%;border-radius:50%;font-size:36px;background:transparent;overflow:hidden}.spy-profile-avatar:after{content:'';position:absolute;inset:0;z-index:4;box-sizing:border-box;border:1px solid rgba(255,255,255,.88);border-radius:50%;pointer-events:none}.spy-profile-avatar img{width:100%;height:100%;object-fit:cover}.spy-profile-name{display:block;margin:0 auto;background:none;padding:0;max-width:100%;font-size:22px!important;font-weight:700!important;line-height:1.35;overflow-wrap:anywhere;text-shadow:0 1px 5px rgba(0,0,0,.15)}.spy-name-input{box-sizing:border-box;width:100%;min-width:0;color:inherit;text-align:center;border:0;border-bottom:1px solid rgba(255,255,255,.65);border-radius:0;outline:none;appearance:none;-webkit-appearance:none;background:transparent;caret-color:#fff;padding:0 0 2px}.spy-profile-words{font-size:13px;line-height:1.7;margin:13px 0 14px;overflow-wrap:anywhere;white-space:normal;color:rgba(255,255,255,.96);text-shadow:0 1px 6px rgba(5,22,34,.25)}.spy-profile-location{display:flex;align-items:flex-start;justify-content:center;gap:6px;font-size:12px;line-height:1.5;color:rgba(239,250,255,.78)}.spy-profile-location>span{overflow-wrap:anywhere}.spy-profile-location svg{flex:none;margin-top:1.5px}
.spy-app-pages{display:flex;width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.spy-app-pages::-webkit-scrollbar{display:none}.spy-app-page{box-sizing:border-box;flex:0 0 100%;width:100%;min-width:100%;scroll-snap-align:start;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:88px;gap:14px 4px;padding:0 15px;align-content:start;min-height:190px}.spy-home-app{display:flex;flex-direction:column;align-items:center;gap:7px;background:none;min-width:0;padding:0;height:88px}.spy-app-icon{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:17px;color:rgba(249,253,255,.96);transition:transform .15s}.spy-home-app:active .spy-app-icon{transform:scale(.94)}.spy-app-icon svg{width:31px;height:31px;filter:drop-shadow(0 1px 2px rgba(23,52,68,.1))}.spy-app-label{font-size:11px;line-height:1.4;text-align:center;max-width:100%;overflow-wrap:anywhere;text-shadow:0 1px 6px rgba(0,0,0,.35)}.spy-page-dots{display:flex;justify-content:center;gap:9px;margin:13px 0 0}.spy-page-dot{position:relative;width:25px;height:24px;padding:0;background:none}.spy-page-dot:after{content:'';position:absolute;width:5px;height:5px;border-radius:50%;left:10px;top:9px;background:rgba(226,240,244,.38)}.spy-page-dot.active:after{background:#fff;box-shadow:0 0 6px rgba(220,249,255,.35)}.spy-home-updated{text-align:center;font-size:10px;margin-top:7px;color:rgba(241,250,255,.55)}.spy-first-refresh{display:block;margin:0 auto 20px;padding:11px 22px;border-radius:15px;font-size:13px!important}
.spy-app-dock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:4px 16px 0;padding:12px 7px 5px;border-radius:30px;background:rgba(121,153,164,.1);box-shadow:0 6px 20px rgba(5,21,30,.06)}.spy-app-dock .spy-app-icon{background:rgba(121,153,164,.1);box-shadow:0 3px 12px rgba(5,21,30,.04);backdrop-filter:blur(6px) saturate(1.15);-webkit-backdrop-filter:blur(6px) saturate(1.15)}
.spy-reset-archive{grid-column:1/-1;justify-self:center;align-self:center;border-radius:15px;padding:11px 25px;font-size:12px!important;background:rgba(121,153,164,.14)}
.spy-appearance-settings{margin:14px;padding:18px;border-radius:18px;background:#1b2028;color:#eee}.spy-appearance-settings h3{font-size:15px;margin:0 0 8px}.spy-appearance-settings p{font-size:12px;line-height:1.7;color:#a9b4c3}.spy-appearance-actions{display:flex;flex-wrap:wrap;gap:9px}.spy-appearance-actions button{font-size:12px;padding:10px 13px;border:1px solid #44515d;border-radius:12px;color:#e4f6ff;background:#283442}
@media(max-width:350px){.spy-profile-card{margin-left:14px;margin-right:14px}.spy-app-page{padding-left:10px;padding-right:10px}.spy-app-icon{width:54px;height:54px}.spy-profile-cover{height:135px}}
@media(prefers-reduced-motion:reduce){.spy-app-icon{transition:none}}

/* Role-phone passcode keypad: denser frosted bodies with the same masked highlight ring. */
.spy-lock-screen{background:radial-gradient(ellipse at 15% 0,#799aa8,transparent 65%),linear-gradient(160deg,#425e70,#142c3c 85%)}.spy-lock-nav-spacer{width:34px;flex:none}.spy-lock-scroll{padding:12px 20px max(24px,env(safe-area-inset-bottom));text-align:center;background:transparent!important}.spy-lock-clock>div{font-size:50px;font-weight:300;line-height:1.15;letter-spacing:1px;text-shadow:0 2px 14px rgba(0,0,0,.2)}.spy-lock-clock p{margin:5px 0 0;font-size:13px;color:rgba(255,255,255,.86)}.spy-lock-role{margin-top:20px}.spy-lock-avatar{position:relative;width:74px;height:74px;overflow:hidden;border-radius:50%;margin:0 auto;box-shadow:0 5px 18px rgba(0,0,0,.18);outline:1px solid rgba(255,255,255,.7)}.spy-lock-avatar>.avatar{width:100%;height:100%;border-radius:50%}.spy-lock-role p{margin:10px 0 4px;font-size:11px;color:rgba(255,255,255,.8)}.spy-lock-role strong{font-size:18px;font-weight:600;overflow-wrap:anywhere}.spy-lock-prompt{margin:19px 0 15px;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.spy-lock-dots{display:flex;justify-content:center;gap:24px}.spy-lock-dot{width:12px;height:12px;border:1px solid rgba(255,255,255,.85);border-radius:50%;box-sizing:border-box}.spy-lock-dot.filled{background:#fff}.spy-lock-error{min-height:29px;margin:6px 0 5px;font-size:12px;line-height:23px;color:#ffbac5}.spy-lock-pad{display:grid;grid-template-columns:repeat(3,70px);justify-content:center;gap:14px 24px}.spy-lock-key{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:70px;height:70px;border-radius:50%;background:transparent;backdrop-filter:blur(18px) saturate(1.5) brightness(.82);-webkit-backdrop-filter:blur(18px) saturate(1.5) brightness(.82);box-shadow:0 7px 18px rgba(8,26,39,.17);font-size:28px!important;line-height:1.1;transition:transform .12s}.spy-lock-key small{font-size:8px;letter-spacing:1.3px;line-height:1.4;color:rgba(255,255,255,.8)}.spy-lock-key:active{transform:scale(.94)}.spy-lock-key:disabled{opacity:.4;cursor:default}.spy-lock-action{display:flex;align-items:center;justify-content:center;width:70px;height:70px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;color:#fff;font-size:13px!important}.spy-lock-action:disabled{opacity:.4;cursor:default}.spy-lock-action[aria-label]{font-size:25px!important}@media(max-height:680px){.spy-lock-scroll{padding-top:5px}.spy-lock-role{margin-top:12px}.spy-lock-clock>div{font-size:42px}.spy-lock-prompt{margin-top:12px}.spy-lock-pad{grid-template-columns:repeat(3,62px);gap:12px 24px}.spy-lock-key,.spy-lock-action{width:62px;height:62px}}@media(prefers-reduced-motion:reduce){.spy-lock-key{transition:none}}

/* Dedicated Moments composer; scoped colors do not change chat or glass controls. */
.moment-editor{position:absolute;inset:0;z-index:60;display:flex;flex-direction:column;background:#191919;color:#d9d9d9;--mm-line:#292929;--mm-muted:#777;--mm-tile:#202020}.moment-editor-light{background:#fff;color:#161616;--mm-line:#eee;--mm-muted:#999;--mm-tile:#f5f5f5}.moment-editor-nav{display:flex;align-items:center;justify-content:space-between;flex:0 0 65px;padding:10px 16px;box-sizing:border-box}.moment-editor-nav button{border:0;background:none;color:inherit;font-size:16px;padding:8px 0;min-width:48px}.moment-editor-nav strong{font-size:17px;font-weight:500}.moment-editor-nav .moment-publish{background:#07c160;color:#fff;border-radius:7px;padding:8px 14px;font-size:15px}.moment-editor-nav .moment-publish:disabled{background:#303030;color:#626262}.moment-editor-light .moment-publish:disabled{background:#eee;color:#bbb}.moment-editor-scroll{flex:1;overflow:auto;padding:18px 30px 40px;box-sizing:border-box}.moment-editor #mm_t{display:block;width:100%;height:150px;resize:none;border:0;outline:0;border-radius:0;padding:5px 0;background:transparent;color:inherit;font-family:inherit;font-size:16px;line-height:1.6;box-shadow:none;box-sizing:border-box}.moment-editor #mm_t::placeholder{color:var(--mm-muted)}.moment-editor-media{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.moment-editor-photo{position:relative;aspect-ratio:1;min-width:0}.moment-editor-photo img{width:100%;height:100%;object-fit:cover}.moment-editor-photo button{position:absolute;right:3px;top:3px;width:20px;height:20px;border:0;background:rgba(0,0,0,.55);color:#fff;border-radius:50%;font-size:15px;line-height:20px;padding:0}.moment-photo-add{aspect-ratio:1;border:0;background:var(--mm-tile);color:#999;font-size:44px;font-weight:200}.moment-upload-row{display:flex;align-items:center;gap:10px;margin:18px 0 26px;flex-wrap:wrap}.moment-upload-row button{border:0;background:var(--mm-tile);color:inherit;padding:9px 12px;border-radius:4px;font-size:12px}.moment-upload-row span{font-size:11px;color:var(--mm-muted)}.moment-text-card-field{margin-bottom:20px;font-size:13px}.moment-text-card-field textarea{width:100%;box-sizing:border-box;background:var(--mm-tile);color:inherit;border:1px solid var(--mm-line);padding:10px;border-radius:4px;margin-top:8px}.moment-text-card-field small{display:block;color:var(--mm-muted);line-height:1.6;margin-top:6px}.moment-editor-options{margin-top:20px;border-top:1px solid var(--mm-line)}.moment-editor-options>button{display:flex;align-items:center;gap:16px;width:100%;height:55px;border:0;border-bottom:1px solid var(--mm-line);background:transparent;color:inherit;text-align:left;padding:0 3px;font-size:16px}.moment-editor-options i{display:flex;align-items:center;justify-content:center;width:23px;flex:0 0 23px;font-style:normal}.moment-editor-options .moment-at{font-size:25px;font-weight:300}.moment-editor-options span{white-space:nowrap}.moment-editor-options small{margin-left:auto;max-width:42%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:inherit}.moment-editor-options b{font-size:25px;color:var(--mm-muted);font-weight:300}.moment-lastgroup{font-size:13px;color:#8196b0;padding:16px 42px;border-bottom:1px solid var(--mm-line)}.moment-lastgroup:empty{display:none}.moment-post-location{font-size:12px;color:#71849e;margin:7px 0}

/* Moments friend selector: draft choices stay local until the bottom Select action. */
.moment-editor-options .moment-at{font-size:21px}.moment-people-page{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;background:#191919;color:#ddd;--mp-head:#111;--mp-line:#292929;--mp-tile:#202020;--mp-muted:#777}.moment-editor-light .moment-people-page{background:#fff;color:#171717;--mp-head:#f7f7f7;--mp-line:#eee;--mp-tile:#ededed;--mp-muted:#999}.moment-people-nav{height:65px;flex:0 0 65px;box-sizing:border-box;padding:10px 17px;display:flex;align-items:center;justify-content:space-between;background:var(--mp-head)}.moment-people-nav button{width:32px;padding:0;border:0;background:transparent;color:inherit;font-size:35px;font-weight:200;line-height:1}.moment-people-nav strong{font-size:17px;font-weight:500}.moment-people-nav>span{width:32px}.moment-people-search{background:var(--mp-head);padding:4px 10px 15px}.moment-people-search input{width:100%;box-sizing:border-box;outline:0;border:0;border-radius:7px;background:var(--mp-tile);color:inherit;text-align:center;padding:10px;font-family:inherit;font-size:16px;height:37px;box-shadow:none}.moment-people-search input:focus{text-align:left}.moment-people-search input::placeholder{color:var(--mp-muted)}.moment-people-main{position:relative;flex:1;min-height:0;display:flex}.moment-people-list{flex:1;min-width:0;overflow:auto;position:relative;padding-right:23px;scrollbar-width:none}.moment-people-list::-webkit-scrollbar{display:none}.moment-people-letter{background:var(--mp-tile);font-size:13px;color:var(--mp-muted);padding:7px 16px}.moment-person-row{display:flex;align-items:center;gap:14px;min-height:65px;margin-left:16px;padding:10px 0;box-sizing:border-box;position:relative;cursor:pointer}.moment-person-row:after{content:'';position:absolute;bottom:0;left:92px;right:0;border-bottom:1px solid var(--mp-line)}.moment-person-row input{position:absolute;opacity:0;width:24px;height:24px;left:0;top:50%;margin:0;transform:translateY(-50%)}.moment-person-circle{width:22px;height:22px;flex:0 0 22px;box-sizing:border-box;border:1.5px solid #626262;border-radius:50%;color:transparent;font:15px/20px sans-serif;text-align:center;font-style:normal}.moment-person-row input:checked+.moment-person-circle{background:#07c160;border-color:#07c160;color:#fff}.moment-person-row input:focus-visible+.moment-person-circle{outline:2px solid #07c160;outline-offset:3px}.moment-person-row>.avatar{width:40px!important;height:40px!important;flex:0 0 40px;border-radius:5px!important;overflow:hidden;margin:0!important}.moment-person-row>span{font-size:16px;line-height:1.5;overflow-wrap:anywhere;padding-right:7px;min-width:0}.moment-people-rail{position:absolute;right:0;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center;align-items:center;width:23px;overflow:auto}.moment-people-rail button{border:0;background:transparent;color:#999;padding:0;width:21px;min-height:16px;font-size:10px}.moment-people-rail button:disabled{opacity:.38}.moment-people-rail button:active{color:#fff;background:#07c160;border-radius:50%}.moment-people-footer{flex:0 0 74px;display:flex;align-items:center;gap:10px;padding:12px 20px;box-sizing:border-box;border-top:1px solid var(--mp-line);background:var(--mp-tile)}.moment-people-footer select{max-width:115px;border:0;background:transparent;color:inherit;font-family:inherit;font-size:13px;outline:0}.moment-people-footer select option{background:var(--mp-tile);color:inherit}.moment-people-footer>span:first-child{flex:1}.moment-people-footer #mm_people_count{margin-left:auto;font-size:12px;color:var(--mp-muted);white-space:nowrap}.moment-people-footer>button{border:0;background:#07c160;color:#fff;border-radius:7px;padding:9px 18px;font-size:15px;min-width:60px}.moment-people-empty{padding:40px 12px;text-align:center;font-size:13px;color:var(--mp-muted)}
/* Standalone photo album: frosted bodies and a masked fine highlight ring. */
.photo-album-page{background:#000!important;color:#f5f5f7!important;position:absolute;inset:0;overflow:hidden}.photo-album-scroll{height:100%;overflow-y:auto;padding:24px 0 120px;box-sizing:border-box}.photo-album-head{position:relative;padding:13px 18px 20px;min-height:87px;box-sizing:border-box}.photo-album-head h1{margin:0;padding-top:16px;font-size:34px;line-height:1.2;letter-spacing:-1px;font-weight:750}.photo-album-head p{margin:6px 0 0;font-size:17px;font-weight:600}.photo-album-head-actions{display:flex;align-items:center;gap:14px;position:absolute;right:18px;top:24px}.photo-album-page button{color:inherit;border:0;cursor:pointer;font-family:inherit}.photo-album-page svg{display:block;width:24px;height:24px}.photo-album-back{position:absolute;left:18px;top:-13px;background:transparent;font-size:25px;line-height:1;padding:0 6px;color:#8f9095!important}.photo-album-glass{position:relative;background:rgba(40,40,43,.72)!important;backdrop-filter:blur(18px) saturate(1.32);-webkit-backdrop-filter:blur(18px) saturate(1.32);box-shadow:0 5px 20px rgba(0,0,0,.12)}.photo-album-glass:before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;padding:.8px;box-sizing:border-box;background:linear-gradient(145deg,rgba(255,255,255,.30),rgba(255,255,255,.04) 45%,rgba(255,255,255,.17));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;backdrop-filter:brightness(1.72) saturate(1.68);-webkit-backdrop-filter:brightness(1.72) saturate(1.68)}.photo-album-round,.photo-album-face{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden}.photo-album-face{background:transparent}.photo-album-face .avatar{width:44px!important;height:44px!important;border-radius:50%!important}.photo-album-avatar-fallback{display:grid;place-items:center;width:100%;height:100%;background:linear-gradient(135deg,#a5bfd2,#526887);font-size:19px}.photo-album-select{height:44px;padding:0 19px;border-radius:26px;font-size:17px}.photo-album-collections{padding:0 23px}.photo-album-category{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:59px;padding:12px 0;background:transparent;text-align:left;border-bottom:1px solid #232326!important}.photo-album-category strong{font-size:23px;line-height:1.35;font-weight:650}.photo-album-category:first-child{min-height:70px}.photo-album-chevron{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;color:#0a9dff}.photo-album-chevron svg{width:19px;height:19px;stroke-width:2.5}.photo-album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}.photo-album-grid button{padding:0;aspect-ratio:1;overflow:hidden;background:#151517}.photo-album-grid img{width:100%;height:100%;object-fit:cover;display:block}.photo-album-empty{padding:100px 24px;color:#8e8e93;text-align:center;font-size:15px}.photo-album-footer{position:absolute;bottom:0;left:0;right:0;padding:20px 20px max(18px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;background:linear-gradient(transparent,#000 35%);pointer-events:none;gap:20px}.photo-album-footer>*{pointer-events:auto}.photo-album-tabs{display:flex;padding:4px;border-radius:45px;width:204px;max-width:calc(100% - 79px);height:67px;box-sizing:border-box}.photo-album-tabs button{flex:1;min-width:0;background:transparent;border-radius:36px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;font-size:12px}.photo-album-tabs button.selected{background:rgba(76,76,79,.72);color:#16a8ff}.photo-album-tabs svg{width:28px;height:28px}.photo-album-search{width:63px;height:63px;border-radius:50%;padding:16px;flex:none}.photo-album-search svg{width:31px;height:31px}

/* Role settings: retain current iOS settings rows and use modern per-role forms. */
.spy-settings-detail{padding-top:14px!important}.spy-settings-detail h1{font-size:28px;letter-spacing:-.6px;margin:6px 2px 22px}.spy-settings-back{border:0;background:transparent;color:inherit;font:inherit;font-size:30px}.spy-settings-action{min-height:72px}.spy-settings-action small{white-space:normal;line-height:1.5}.spy-settings-thumbnail{flex:0 0 40px!important;width:40px;height:40px;overflow:hidden;border-radius:9px}.spy-settings-thumbnail .avatar,.spy-settings-thumbnail .av{width:40px!important;height:40px!important;border-radius:9px!important}.spy-settings-note{margin:2px 5px 28px;color:#8e8e93;font-size:13px;line-height:1.7}.spy-settings-status small{color:#8e8e93;font-size:13px}.spy-settings-form{padding:20px 16px;border-radius:13px;background:#1c1c1e;margin-bottom:22px}.spy-settings-form label{display:block;color:#b0b0b8;font-size:13px;margin-bottom:12px}.spy-settings-form input{display:block;width:100%;min-width:0;box-sizing:border-box;padding:14px;border:1px solid #38383a;border-radius:10px;background:#111113;color:#f5f5f7;font-size:17px;outline:none}.spy-settings-form input:focus{border-color:#0a84ff}.spy-settings-form button{display:block;width:100%;border:0;border-radius:10px;background:#0a84ff;color:white;font-size:16px;font-weight:600;padding:13px;margin-top:18px}.spy-settings-form p{color:#8e8e93;font-size:12px;line-height:1.6;margin:16px 0 0}.spy-settings-form p b{font-weight:500;color:#c7c7ce}

.photo-album-scroll{scrollbar-width:none}.photo-album-scroll::-webkit-scrollbar{display:none}

/* Photo detail: bounded slides, native filmstrip scrolling, no full-app redraw on swipe. */
.photo-viewer{display:flex!important;flex-direction:column;touch-action:pan-y}.photo-view-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 16px 14px;flex:none}.photo-view-circle{width:46px;height:46px;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:12px}.photo-view-date{border-radius:40px;min-width:0;width:176px;padding:8px 10px;text-align:center;line-height:1.3}.photo-view-date strong{display:block;font-size:16px;font-weight:600}.photo-view-date span{display:block;font-size:13px;margin-top:1px}.photo-view-stage{flex:1;min-height:0;overflow:hidden;position:relative;touch-action:pan-y;outline:none;user-select:none}.photo-view-track{display:flex;height:100%;width:100%;transform:translate3d(-100%,0,0);will-change:transform}.photo-view-slide{flex:0 0 100%;height:100%;display:flex;justify-content:center;align-items:center;overflow:hidden}.photo-view-slide img{width:100%;height:100%;object-fit:contain;pointer-events:none}.photo-view-slide span{font-size:14px;color:#aaa}.photo-view-bottom{flex:none;padding:12px 16px max(16px,env(safe-area-inset-bottom));background:#000}.photo-view-count{display:block;color:#96969c;text-align:center;font-size:11px;line-height:16px;margin-bottom:8px}.photo-view-strip{display:flex;align-items:center;gap:4px;height:43px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x;padding:0 4px}.photo-view-strip::-webkit-scrollbar{display:none}.photo-view-thumb{width:23px;height:34px;flex:none;padding:0;border-radius:3px;overflow:hidden;opacity:.65;transition:width .16s,opacity .16s}.photo-view-thumb.selected{width:36px;height:42px;margin:0 6px;opacity:1}.photo-view-thumb img{width:100%;height:100%;object-fit:cover}.photo-view-more{flex:none;width:28px;height:34px;background:transparent;font-size:25px}.photo-view-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px}.photo-view-tools svg{width:27px;height:27px}.photo-view-tools .photo-view-circle{width:50px;height:50px}.photo-view-tool-pill{display:flex;align-items:center;justify-content:space-evenly;flex:1;max-width:190px;height:50px;border-radius:40px}.photo-view-tool-pill button{height:44px;width:48px;display:flex;align-items:center;justify-content:center;background:transparent;padding:9px}.photo-view-head svg{width:25px;height:25px}@media(prefers-reduced-motion:reduce){.photo-view-thumb{transition:none}}

/* Expandable collections and local categorized import. */
.photo-album-section{margin-bottom:8px}.photo-album-category strong{display:flex;align-items:center;gap:9px}.photo-category-title-arrow{font-size:28px;font-weight:400;color:#808085}.photo-album-chevron svg{transition:transform .18s}.photo-album-chevron.expanded svg{transform:rotate(90deg)}.photo-category-strip{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;padding:2px 18px 16px;touch-action:pan-x pan-y}.photo-category-strip::-webkit-scrollbar{display:none}.photo-category-card{position:relative;flex:none;width:108px;height:108px;border-radius:14px;overflow:hidden;padding:0;background:#19191d;scroll-snap-align:start;text-align:left}.photo-category-strip.memory .photo-category-card{width:240px;height:240px;border-radius:28px}.photo-category-strip.dated .photo-category-card{width:146px;height:146px;border-radius:21px}.photo-category-card img{width:100%;height:100%;object-fit:cover;display:block}.photo-category-caption{position:absolute;inset:35% 0 0;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(transparent,rgba(0,0,0,.7));padding:15px;color:#fff}.photo-category-caption strong{font-size:21px;line-height:1.25;margin-bottom:5px;overflow-wrap:anywhere}.photo-category-caption span{font-size:14px;line-height:1.25;overflow-wrap:anywhere}.photo-category-caption small{font-size:12px;margin-top:2px}.photo-category-empty{min-width:180px;min-height:100px;border-radius:16px;padding:20px;background:#19191d;text-align:center;font-size:14px}.photo-album-image-failure{color:#999;font-size:12px;padding:8px}.photo-upload{overflow-y:auto!important;padding:18px!important;box-sizing:border-box}.photo-upload-head{display:flex;align-items:center;gap:28px;padding:8px 0 24px}.photo-upload-head button{background:none;color:#ddd;font-size:16px}.photo-upload-head h1{font-size:24px;margin:0}.photo-upload-form{display:flex;flex-direction:column;gap:18px}.photo-upload-form label{display:flex;flex-direction:column;gap:9px;font-size:15px}.photo-upload-form input:not([type=file]),.photo-upload-form select{box-sizing:border-box;width:100%;min-height:44px;border-radius:10px;background:#202024;color:#fff;border:1px solid #39393e;padding:10px;font:inherit;color-scheme:dark}.photo-upload-form p{font-size:12px;line-height:1.6;color:#96969d;margin:0}.photo-upload-picker{position:relative!important;display:flex;align-items:center;justify-content:center;padding:18px;border-radius:16px;color:#32aaff;overflow:hidden}.photo-upload-picker input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}.photo-upload-file-count{font-size:13px;color:#aaa}.photo-upload-submit{padding:16px;border-radius:30px;color:#32aaff;font-size:16px}.photo-upload-submit:disabled{opacity:.45}.photo-upload-status{font-size:13px;color:#bbb;line-height:1.5}

/* Library selection and the two-option frosted sorting bubble. */
.photo-album-grid-cell{position:relative}.photo-album-check{position:absolute;bottom:7px;right:7px;width:23px;height:23px;border-radius:50%;background:#009eff;color:#fff;border:2px solid #fff;display:grid;place-items:center;font-size:18px;line-height:1;box-shadow:0 1px 4px #0005}.photo-album-selection-count{font-size:16px;font-weight:600;text-align:center;flex:1;min-width:0}.photo-album-footer:has(.photo-album-selection-count){gap:8px;padding-left:16px;padding-right:16px}.photo-album-footer button:disabled{opacity:.35;cursor:default}.photo-album-round[aria-label="取消选择"]{font-size:35px;font-weight:300;line-height:1}.photo-album-sort-dismiss{position:fixed;inset:0;z-index:8}.photo-album-sort-menu{position:absolute!important;top:77px;right:18px;width:258px;border-radius:27px;z-index:9;padding:10px 6px;background:rgba(170,184,198,.38)!important}.photo-album-sort-menu button{display:flex;align-items:center;gap:12px;width:100%;background:transparent;padding:17px 10px;font-size:17px;text-align:left}.photo-album-sort-menu button span{width:20px;font-size:20px;flex:none}.photo-album-sort-menu button+button{border-top:1px solid #ffffff20}.photo-album-sort-menu button:active{background:#ffffff15;border-radius:20px}

/* Album share: full-page photos and circular multi-recipient avatars. */
.photo-album-share{display:flex;flex-direction:column;background:#1c1c1e!important}.photo-share-head{display:flex;align-items:center;gap:14px;padding:28px 18px 20px;flex:none}.photo-share-cover{width:66px;height:78px;border-radius:18px;overflow:hidden;flex:none}.photo-share-cover img{width:100%;height:100%;object-fit:cover}.photo-share-head h1{font-size:20px;margin:0 0 8px;line-height:1.3}.photo-share-head p{font-size:13px;color:#b5b5ba;margin:0}.photo-share-head>div:nth-child(2){flex:1;min-width:0}.photo-share-send{flex:none;min-width:51px;height:51px;border-radius:50%;font-size:31px;line-height:1;padding:0 8px}.photo-share-send.ready{font-size:16px;border-radius:28px;color:#0aafff;min-width:64px}.photo-share-send:disabled{opacity:.6}.photo-share-scroll{flex:1;min-height:0;overflow-y:auto;padding-bottom:12px}.photo-share-photos{display:flex;overflow-x:auto;gap:14px;padding:0 18px 8px;scroll-snap-type:x proximity;overscroll-behavior-x:contain}.photo-share-photo{position:relative;flex:0 0 66%;height:330px;background:#121214;border-radius:25px;overflow:hidden;padding:0;scroll-snap-align:center}.photo-share-photo img{width:100%;height:100%;object-fit:contain}.photo-share-tick{position:absolute;bottom:13px;right:13px;border:2px solid #fff;width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-size:22px;line-height:1;background:#0003}.photo-share-tick.on{background:#009eff}.photo-share-scroll h2{font-size:17px;margin:20px 18px 14px}.photo-share-people{display:flex;gap:18px;overflow-x:auto;padding:0 18px 10px;overscroll-behavior-x:contain}.photo-share-person{width:78px;flex:none;background:none;padding:0;text-align:center}.photo-share-avatar{position:relative;display:block;width:68px;height:68px;margin:0 auto 9px}.photo-share-avatar .avatar{width:68px!important;height:68px!important;border-radius:50%!important}.photo-share-avatar .photo-album-check{width:19px;height:19px;right:-1px;bottom:0;font-style:normal;font-size:15px}.photo-share-person strong{display:block;font-size:13px;font-weight:500;overflow-wrap:anywhere;line-height:1.3}.photo-share-person small{display:block;font-size:11px;color:#929297;margin-top:4px}.photo-share-status{font-size:13px;color:#a5bdd2;margin:10px 18px;line-height:1.6}.photo-share-back{background:none;border-top:1px solid #ffffff17!important;padding:16px;color:#aaa!important;font-size:14px;flex:none}.photo-share-back:disabled{opacity:.35}

/* Album unified metadata search; same masked liquid-glass recipe. */
.photo-search-home{padding:0 18px}.photo-search-home h2,.photo-search-collection h2{font-size:22px;margin:18px 0}.photo-search-recent{display:flex;gap:10px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x proximity}.photo-search-tile{position:relative;flex:none;width:calc((100% - 20px)/3);aspect-ratio:1;border-radius:20px;overflow:hidden;padding:0;background:#17171a;scroll-snap-align:start}.photo-search-tile img{width:100%;height:100%;object-fit:cover}.photo-search-tile>svg{margin:auto;width:32px;height:32px;color:#8c8c96}.photo-search-tile>span{position:absolute;bottom:0;left:0;right:0;padding:24px 6px 10px;font-size:13px;text-align:center;background:linear-gradient(transparent,#000b);overflow-wrap:anywhere}.photo-search-tile small{display:block;font-size:11px}.photo-search-history-head{display:flex;align-items:center;justify-content:space-between}.photo-search-history-head button{border-radius:20px;padding:8px 16px}.photo-search-history{display:flex;align-items:flex-start;flex-direction:column;gap:10px}.photo-search-history button{border-radius:23px;padding:14px 24px;font-size:17px;max-width:100%;overflow-wrap:anywhere;text-align:left}.photo-search-history p{color:#909098;font-size:14px}.photo-search-footer{gap:8px;padding:16px 12px max(14px,env(safe-area-inset-bottom))}.photo-search-footer>.photo-album-round{flex:none;width:44px;height:44px;font-size:32px}.photo-search-input{display:flex;align-items:center;gap:7px;flex:1;min-width:0;border-radius:30px;height:49px;padding:0 10px}.photo-search-input>svg{width:20px;height:20px;flex:none}.photo-search-input input{width:100%;min-width:0;border:0!important;background:transparent!important;color:#f5f5f7!important;padding:0!important;font-size:15px;outline:none;box-shadow:none!important}.photo-search-input button{padding:3px;background:transparent;color:#1ba9ff}.photo-search-input button svg{width:19px;height:19px}.photo-search-tabs{margin:8px 16px 18px;display:flex;border-radius:30px;padding:4px;height:49px}.photo-search-tabs button{flex:1;background:transparent;border-radius:26px;font-size:17px}.photo-search-tabs .selected{background:#68686b70}.photo-search-result-label{font-size:20px;margin:18px}.photo-search-result-label small{font-size:14px;color:#a0a0a8;font-weight:400;margin-left:8px}.photo-search-collection{padding:0 18px}.photo-search-collection .photo-search-tile{width:42%}.photo-search-page .photo-album-head h1{padding-top:10px}.photo-search-page .photo-album-scroll{padding-bottom:110px}

/* Collection upload popup: non-white frosted body, inherited masked fine rim. */
.photo-collection-menu{position:absolute!important;z-index:9;top:78px;right:18px;width:min(306px,calc(100vw - 36px));border-radius:29px;padding:12px 16px;background:rgba(37,40,48,.74)!important;box-sizing:border-box;max-height:calc(100dvh - 180px);overflow-y:auto}.photo-collection-menu h2{font-size:13px;font-weight:500;color:#aaaeb8;margin:7px 9px 8px}.photo-collection-menu-row+div{border-top:1px solid #ffffff14}.photo-collection-menu-row button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 8px;background:transparent;font-size:17px;text-align:left;line-height:1.4}.photo-collection-menu-row button:active{border-radius:16px;background:#73819825}.photo-collection-upload{display:flex;align-items:center;gap:7px;font-size:14px;color:#38b7ff;white-space:nowrap}.photo-collection-upload svg{width:17px;height:17px}

/* Couple photo comments and recollection cards. */
.photo-role-comment{display:flex;gap:10px;padding:10px 16px;text-align:left;max-height:116px;overflow:auto;flex-shrink:0}.photo-role-avatar{width:34px;height:34px;border-radius:50%;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}.photo-role-avatar img{width:100%;height:100%;object-fit:cover}.photo-role-comment strong{font-size:12px;color:#d4d9e2}.photo-role-comment p{font-size:13px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;margin:4px 0;color:#eee}.photo-role-comment button{border:0;background:none;color:#4eb4ff;font-size:12px;padding:0}.photo-memory-card{display:flex;flex-direction:column;gap:9px;width:240px;max-width:100%;border-radius:22px;padding:14px;text-align:left;color:inherit;cursor:pointer;background:rgba(100,125,151,.15);backdrop-filter:blur(18px) saturate(1.32);border:1px solid rgba(255,255,255,.22)}.photo-memory-label{font-size:11px;color:#80bce7}.photo-memory-image{display:block;height:145px;overflow:hidden;border-radius:15px}.photo-memory-image img{width:100%;height:100%;object-fit:cover}.photo-memory-card strong{font-size:14px;line-height:1.55;overflow-wrap:anywhere;white-space:normal}.photo-memory-card small{font-size:11px;line-height:1.5;opacity:.7}

.photo-album-message-source{display:block;padding:5px 8px;font-size:11px;line-height:1.5;opacity:.78;white-space:normal;overflow-wrap:anywhere}

.photo-album-chat-image .imgmsg{width:220px;max-width:100%;box-sizing:border-box}.photo-album-chat-image .imgmsg img{display:block;width:100%;height:auto}

[data-photo-move-id]{-webkit-touch-callout:none;user-select:none}
.photo-album-move-overlay{position:absolute;inset:0;z-index:200;pointer-events:none}
.photo-album-move-tray{position:absolute;left:12px;right:12px;bottom:96px;max-width:400px;margin:auto;padding:18px;border-radius:28px;pointer-events:auto;box-sizing:border-box;box-shadow:0 18px 60px #0006;background:rgba(38,43,53,.72);backdrop-filter:blur(30px) saturate(160%);-webkit-backdrop-filter:blur(30px) saturate(160%);color:white}
.photo-album-move-tray strong{font-size:20px}.photo-album-move-tray p{font-size:13px;opacity:.8;margin:8px 0 14px}.photo-album-move-tray>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-album-move-tray button{padding:13px 8px;border-radius:17px;font-size:14px;color:inherit;white-space:normal;overflow-wrap:anywhere}.photo-album-move-tray .drop-active{background:rgba(10,145,255,.85)!important;border-color:#b4e3ff;box-shadow:0 0 0 2px #56baff}.photo-album-move-cancel{display:block;margin:12px auto 0;border:0;background:transparent;min-width:80px}
.photo-album-move-ghost{position:absolute;top:0;left:0;width:72px;height:72px;overflow:hidden;border-radius:16px;box-shadow:0 8px 25px #0008;border:2px solid #ffffffc0;pointer-events:none;opacity:.85}.photo-album-move-ghost img{width:100%;height:100%;object-fit:cover;pointer-events:none}

/* Photo metadata editor: frosted overlay keeps the existing image mounted. */
.photo-meta-overlay{position:absolute;inset:0;z-index:50;display:flex;align-items:flex-start;justify-content:center;padding:85px 18px 20px;overflow:auto}.photo-meta-dismiss{position:fixed;inset:0;background:rgba(0,0,0,.2)}.photo-meta-panel{position:relative;width:100%;max-width:360px;padding:24px;border-radius:30px;color:#fff;background:rgba(35,35,39,.78);backdrop-filter:blur(30px) saturate(150%);-webkit-backdrop-filter:blur(30px) saturate(150%)}.photo-meta-panel h2{font-size:21px;margin:0 0 22px}.photo-meta-panel label{display:flex;flex-direction:column;gap:8px;margin:14px 0;font-size:14px;color:rgba(255,255,255,.72)}.photo-meta-panel input{width:100%;box-sizing:border-box;min-height:44px;padding:10px 12px;border:1px solid rgba(255,255,255,.16);border-radius:13px;color:#fff;background:rgba(255,255,255,.08);font-size:16px;color-scheme:dark}.photo-meta-panel input::placeholder{color:rgba(255,255,255,.4)}.photo-meta-error{color:#ffb4ab;font-size:13px;min-height:18px;margin:12px 0}.photo-meta-done{width:100%;min-height:47px;border:0;border-radius:18px;color:#fff;background:#168bea;font-size:17px;font-weight:600}.photo-meta-done:disabled{opacity:.5}.photo-meta-cancel{display:block;width:100%;background:none;border:0;color:rgba(255,255,255,.72);padding:15px 0 0;font-size:15px}

.photo-view-metadata{color:#fff;text-align:center;padding:0 20px 8px;font-size:13px}.photo-view-metadata:empty{display:none}.photo-view-metadata strong{display:block;font-size:16px;margin-bottom:4px}.photo-view-metadata span{color:rgba(255,255,255,.62)}

/* Bound native iOS date controls to the same form width as text inputs. */
.photo-upload-form,.photo-upload-form label{min-width:0;max-width:100%;box-sizing:border-box}.photo-upload-form input:not([type=file]),.photo-upload-form select{display:block;min-width:0;max-width:100%;width:100%;box-sizing:border-box}.photo-upload-form input[type=datetime-local]{appearance:none;-webkit-appearance:none;overflow:hidden;min-inline-size:0;inline-size:100%;max-inline-size:100%}.photo-upload-form input[type=datetime-local]::-webkit-date-and-time-value{min-width:0;text-align:left}.photo-user-like.on svg,.photo-album-like-badge svg{fill:currentColor}.photo-album-like-badge{position:absolute;right:8px;bottom:8px;width:17px;height:17px;color:#fff;z-index:2;filter:drop-shadow(0 1px 3px #0008);pointer-events:none}.photo-album-like-badge svg{width:100%;height:100%;stroke-width:1}.photo-album-grid-cell.checked .photo-album-like-badge{right:auto;left:8px}.photo-like-info{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;color:rgba(255,255,255,.75);font-size:12px;margin:6px 0}.photo-like-info:empty{display:none}.photo-role-like{display:inline-flex;align-items:center;gap:5px}.photo-role-like .av,.photo-role-like .avatar,.photo-role-like img{width:20px!important;height:20px!important;min-width:20px!important;flex:0 0 20px!important;font-size:12px!important;border-radius:50%;object-fit:cover}

.photo-category-panel .photo-category-current{font-size:13px;color:#b8bbc4;margin:0 0 15px}.photo-category-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-category-panel .photo-category-options label{display:flex;flex-direction:row;align-items:center;gap:8px;margin:0;padding:13px 10px;border-radius:16px;color:#fff;font-size:14px;cursor:pointer}.photo-category-options input[type=radio]{width:16px;height:16px;min-height:0;flex:0 0 16px;margin:0;padding:0;accent-color:#168bea}.photo-category-options label:has(input:checked){background:rgba(12,91,151,.55);box-shadow:inset 0 0 0 1px #53baff}.photo-category-note{font-size:12px;line-height:1.7;color:#aeb1bb;margin:16px 0 0}

/* Recently deleted keeps the existing album glass controls. */
.photo-trash-page .photo-album-head{padding-bottom:18px}.photo-trash-page .photo-album-head h1{font-size:34px}.photo-trash-count{font-size:16px;font-weight:400;color:#8e8e93;margin-left:12px}.photo-trash-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px;padding:0 18px 32px}.photo-trash-tile{min-width:0;text-align:left;padding:0;background:transparent;color:inherit;display:flex;flex-direction:column;gap:6px}.photo-trash-tile img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:18px}.photo-trash-tile strong{font-size:16px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.photo-trash-tile span{font-size:13px;color:#8e8e93}.photo-trash-preview{padding:0 18px 36px;text-align:center}.photo-trash-preview>img{width:100%;max-height:55vh;object-fit:contain;border-radius:18px}.photo-trash-preview h2{font-size:22px;margin:18px 0 8px}.photo-trash-preview p{color:#8e8e93;font-size:14px}.photo-trash-restore{display:block;width:100%;border-radius:30px;padding:16px;font-size:18px;color:#32aaff;margin-top:24px}
