/* App pages: launcher identity, app routing and page rendering stay separate. */
.app-layer{position:fixed;z-index:40;inset:0;pointer-events:none;isolation:isolate}
.app-layer.open{pointer-events:auto}
.app-page{position:absolute;inset:0;background:var(--page);opacity:0;transform:translate3d(3.5%,0,0);pointer-events:none;visibility:hidden;transition:opacity 220ms ease,transform 300ms cubic-bezier(.2,.82,.2,1),visibility 0s linear 300ms}
.app-page.active{opacity:1;transform:translate3d(0,0,0);pointer-events:auto;visibility:visible;transition-delay:0s}
.settings-app,.theme-app{--settings-grid1:var(--dock-h);--settings-icon-shell:var(--theme-primary);--settings-icon:var(--white);--settings-image:#F3F3F3;background:var(--white);color:var(--text);overflow:hidden}
.settings-scroll,.theme-scroll{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;padding:max(var(--edge-y),env(safe-area-inset-top)) var(--gap) max(var(--edge-y),env(safe-area-inset-bottom));background:var(--white)}
.settings-scroll::-webkit-scrollbar,.theme-scroll::-webkit-scrollbar{display:none}
.global-page-back{appearance:none;-webkit-appearance:none;position:absolute;left:0;top:0;width:var(--global-page-back-width);height:var(--global-page-header-height);margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--global-page-back-color);display:grid;place-items:center;cursor:pointer;transform:translateX(var(--global-page-back-shift))}
.global-page-back svg{width:var(--global-page-back-icon-size);height:var(--global-page-back-icon-size);display:block;fill:none;stroke:currentColor;stroke-width:var(--global-page-back-stroke);stroke-linecap:round;stroke-linejoin:round}
.global-page-back:focus-visible{outline:1px solid color-mix(in srgb,var(--global-page-back-color) 18%,transparent);outline-offset:-4px;border-radius:10px}
.global-page-nav{position:relative;width:var(--global-page-content-width);height:var(--global-page-header-height);min-height:var(--global-page-header-height);margin:0 auto var(--global-page-header-bottom);display:block}
.global-page-heading{position:absolute;left:var(--global-page-title-left);top:50%;min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;transform:translateY(-50%)}
.global-page-title{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--global-page-title-font);font-size:var(--global-page-title-size);line-height:var(--global-page-title-line);font-weight:var(--global-page-title-weight);letter-spacing:var(--global-page-title-spacing);color:var(--global-page-title-color)}
.global-page-subtitle{font-family:var(--global-page-title-font);font-size:var(--global-page-subtitle-size);line-height:var(--global-page-subtitle-line);font-weight:var(--weight-regular);letter-spacing:-.01em;color:var(--global-page-subtitle-color)}
.settings-profile-header{width:calc(var(--global-page-content-width) - 12px);height:114px;margin:0 0 22px 12px;display:grid;grid-template-columns:114px minmax(0,1fr);column-gap:45px;align-items:stretch}
.settings-profile-avatar{position:relative;width:100px;height:100px;margin:7px 0 7px 7px;border:0;border-radius:50%;outline:0;background-color:var(--image-placeholder);background-position:center;background-size:cover;background-repeat:no-repeat;box-shadow:none;cursor:pointer}
.settings-profile-avatar::after{content:'';position:absolute;inset:-7px;border:2px solid var(--settings-group-bg);border-radius:50%;pointer-events:none}
.settings-information{min-width:0;height:114px;display:grid;grid-template-rows:22px 11px 22px 22px;align-content:space-between;align-items:end}
.settings-information-title-row{min-width:0;height:22px;display:flex;align-items:flex-start;gap:7px}
.settings-information-title{font-family:var(--font-ui);font-size:18px;line-height:22px;font-weight:var(--weight-semibold);letter-spacing:-.025em;color:var(--ink);white-space:nowrap}
.settings-information-arrow{width:13px;height:13px;flex:0 0 13px;margin-top:4px;display:block;color:var(--ink)}
.settings-information-subtitle{margin:0;font-family:var(--font-ui);font-size:8.5px;line-height:11px;font-weight:var(--weight-regular);letter-spacing:-.005em;color:#B3B3B6;white-space:nowrap}
.settings-info-field{width:max-content;max-width:100%;height:22px;display:flex;align-items:flex-end;justify-content:flex-start;gap:7px}
.settings-info-input{appearance:none;-webkit-appearance:none;width:104px;height:22px;margin:0;padding:0 1px 4px;border:0;border-bottom:1px solid rgba(80,80,80,.22);border-radius:0;outline:0;background:transparent;font-family:var(--font-ui);font-size:9.5px;line-height:16px;font-weight:var(--weight-medium);letter-spacing:-.005em;color:var(--text-strong);user-select:text;-webkit-user-select:text}
.settings-info-input:focus{border-bottom-color:rgba(80,80,80,.42)}
.settings-info-label{flex:0 0 auto;padding:0 0 1px;font-family:var(--font-ui);font-size:8.5px;line-height:10px;font-weight:var(--weight-regular);letter-spacing:-.005em;color:#A6A6AA;white-space:nowrap}
.settings-menu{width:var(--global-page-content-width);margin:0 auto;display:flex;flex-direction:column;gap:12px;padding:0 0 14px}
.settings-group{width:100%;overflow:hidden;border-radius:15px;background:var(--settings-group-bg)}
.settings-entry{appearance:none;-webkit-appearance:none;position:relative;width:100%;min-height:54px;margin:0;padding:10px 12px;border:0;outline:0;background:transparent;display:flex;align-items:center;justify-content:flex-start;gap:12px;color:var(--text);font:inherit;text-align:left;cursor:pointer}
.settings-entry:not(:last-child)::after{content:'';position:absolute;left:56px;right:0;bottom:0;height:1px;background:rgba(105,105,105,.10);transform:scaleY(.5);transform-origin:50% 100%;pointer-events:none}
.settings-entry-icon{width:32px;height:32px;flex:0 0 32px;display:block;box-sizing:border-box;padding:6.5px;border-radius:7.5px;background:var(--settings-icon-shell);fill:var(--settings-icon);color:var(--settings-icon)}
.settings-entry-icon.settings-entry-fa{display:grid;place-items:center;padding:0;font-style:normal;font-weight:900;font-size:15px;line-height:1;text-rendering:auto;-webkit-font-smoothing:antialiased}
.settings-entry-name{min-width:0;flex:1 1 auto;font-family:var(--font-ui);font-size:14.5px;line-height:21px;font-weight:var(--weight-regular);letter-spacing:-.018em;color:var(--text-strong);white-space:nowrap}
.settings-entry-chevron{width:7.5px;height:13px;flex:0 0 7.5px;margin-left:auto;display:block;color:var(--chevron)}
.settings-decor{width:var(--global-page-content-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--gap)}
.settings-wide-image,.settings-square-image{background-color:var(--settings-image);background-position:center;background-size:cover;background-repeat:no-repeat}
.settings-wide-image[data-editor],.settings-square-image[data-editor]{cursor:pointer;outline:0}
.settings-wide-image[data-editor]:focus-visible,.settings-square-image[data-editor]:focus-visible{box-shadow:inset 0 0 0 1px rgba(105,105,105,.20)}
.settings-wide-image{width:100%;height:var(--settings-grid1);border-radius:var(--radius)}
.settings-decor-row{width:100%;height:var(--settings-grid1);display:flex;align-items:stretch;gap:var(--gap)}
.settings-square-image{width:var(--settings-grid1);height:var(--settings-grid1);flex:0 0 var(--settings-grid1);border-radius:var(--radius)}
.settings-color-decor{min-width:0;flex:1 1 auto;height:100%;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:4px 0}
.settings-color-rail{position:relative;width:100%;height:24px;border-radius:999px;background:linear-gradient(90deg,var(--theme-primary) 0%,color-mix(in srgb,var(--theme-primary) 75%,var(--white)) 25%,color-mix(in srgb,var(--theme-primary) 50%,var(--white)) 50%,color-mix(in srgb,var(--theme-primary) 25%,var(--white)) 75%,var(--white) 100%);overflow:hidden}
.settings-color-pick{position:absolute;left:57%;top:50%;width:var(--theme-decor-dot-size);height:var(--theme-decor-dot-size);border-radius:50%;background:color-mix(in srgb,var(--theme-primary) 43%,var(--white));border:var(--theme-decor-stroke) solid color-mix(in srgb,var(--white) 92%,transparent);transform:translate(-50%,-50%);box-shadow:none}
.settings-swatches{display:flex;align-items:center;justify-content:space-between;padding:0 2px}
.settings-swatch{width:var(--theme-decor-dot-size);height:var(--theme-decor-dot-size);border-radius:50%;display:block;border:var(--theme-decor-stroke) solid color-mix(in srgb,var(--ink) 8%,transparent)}
.settings-swatch:nth-child(1){background:var(--theme-primary)}.settings-swatch:nth-child(2){background:color-mix(in srgb,var(--theme-primary) 75%,var(--white))}.settings-swatch:nth-child(3){background:color-mix(in srgb,var(--theme-primary) 50%,var(--white))}.settings-swatch:nth-child(4){background:color-mix(in srgb,var(--theme-primary) 25%,var(--white))}.settings-swatch:nth-child(5){background:var(--white)}
.theme-menu{width:var(--global-page-content-width);margin:var(--block-gap) auto 0;padding:0 0 14px}
.theme-menu .settings-group{margin:0}
.theme-entry{min-height:54px}
.theme-entry-icon{width:32px;height:32px;flex:0 0 32px;padding:0;display:grid;place-items:center;border-radius:7.5px;background:var(--settings-icon-shell);color:var(--settings-icon);font-size:15px;line-height:1}
.theme-entry-icon>i{display:block;font-size:15px;line-height:1;color:inherit}
.theme-entry-chevron{width:8px;flex:0 0 8px;margin-left:auto;color:var(--chevron);font-size:11px;line-height:1;text-align:center}
.theme-menu .settings-entry:not(:last-child)::after{left:56px}
.theme-detail-content{width:var(--global-page-content-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--block-gap);padding-bottom:14px}
.theme-wallpaper-preview{width:100%;height:min(48vw,210px);min-height:150px;border:0;border-radius:var(--radius);outline:0;background-color:var(--wallpaper-color);background-image:var(--wallpaper-image);background-position:var(--wallpaper-position);background-size:var(--wallpaper-size);background-repeat:var(--wallpaper-repeat);cursor:pointer;box-shadow:none}
.theme-wallpaper-preview:focus-visible,.theme-icon-cell:focus-visible{outline:1px solid rgba(105,105,105,.22);outline-offset:2px}
.theme-control-stack{display:flex;flex-direction:column;gap:12px}
.theme-page-button{appearance:none;-webkit-appearance:none;width:100%;height:var(--ui-action-height);margin:0;border:1px solid var(--ui-control-border);border-radius:var(--ui-action-radius);background:var(--white);font-family:var(--font-ui);font-size:13px;line-height:1;font-weight:var(--weight-medium);color:var(--text);cursor:pointer;box-shadow:none}
.theme-page-button.dashed{border-style:dashed;border-color:rgba(105,105,105,.30);background:transparent;color:var(--text-muted)}
.theme-page-action-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.theme-icon-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:10px;row-gap:17px;align-items:start;padding:2px 0 4px}
.theme-icon-cell{appearance:none;-webkit-appearance:none;min-width:0;margin:0;padding:0;border:0;outline:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;color:var(--text);font:inherit}
.theme-icon-preview-shell{width:var(--app-icon-size);height:var(--app-icon-size);max-width:72px;max-height:72px;min-width:44px;min-height:44px;border-radius:var(--app-icon-radius);background-color:var(--app-icon-shell-color);background-position:center;background-size:cover;background-repeat:no-repeat;display:grid;place-items:center;overflow:hidden;transition:width 120ms ease,height 120ms ease,border-radius 120ms ease}
.theme-icon-preview-shell>i{width:calc(var(--app-icon-size) * .51);height:calc(var(--app-icon-size) * .51);display:grid;place-items:center;font-size:var(--icon-size,calc(var(--app-icon-size) * .444));line-height:1;color:var(--app-icon-color);font-style:normal;text-rendering:auto;-webkit-font-smoothing:antialiased;transition:opacity 120ms ease}
.theme-icon-preview-shell>svg{width:var(--icon-size,calc(var(--app-icon-size) * .444));height:var(--icon-size,calc(var(--app-icon-size) * .444));display:block;fill:var(--app-icon-color);color:var(--app-icon-color);transition:opacity 120ms ease}
.theme-icon-preview-shell.theme-custom-icon>i,.theme-icon-preview-shell.theme-custom-icon>svg{opacity:0}
.theme-icon-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-ui);font-size:10.5px;line-height:13px;font-weight:var(--weight-regular);color:var(--text)}
.theme-slider-group{display:flex;flex-direction:column;gap:16px;padding:0;border:0;border-radius:0;background:transparent}
.theme-slider-group .editor-range-field{padding:0}
.theme-slider-group .editor-color-field{width:100%;min-height:var(--ui-control-height);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.theme-icon-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
:is(.editor-actions,.api-actions,.theme-page-action-row,.theme-icon-actions) > :is(.editor-action,.theme-page-button):last-child{border:0;background:var(--ui-action-primary-shell);color:var(--ui-action-color)}
body.app-open .viewport{pointer-events:none}
@media (max-width:350px){.settings-profile-header{grid-template-columns:114px minmax(0,1fr);column-gap:37px}.settings-information-title{font-size:17px}.settings-information-subtitle{font-size:8px}.settings-info-input{width:96px}}
@media (max-height:720px){.global-page-nav{margin-bottom:14px}.settings-profile-header{margin-bottom:16px}.settings-menu{gap:10px;padding-bottom:8px}.settings-entry{min-height:50px;padding-top:8px;padding-bottom:8px}.settings-decor{gap:12px}}
@media (prefers-reduced-motion:reduce){.app-page{transition:none}}


/* Chat app: one page mother owns its tabs, layout, colour and icon states. */
.chat-app-page{
  --chat-app-bg:var(--white);
  --chat-app-ink:var(--text-strong);
  --chat-app-muted:var(--text-muted);
  --chat-app-faint:color-mix(in srgb,var(--theme-primary) 78%,var(--white));
  --chat-app-placeholder:color-mix(in srgb,var(--theme-primary) 42%,var(--white));
  --chat-app-side:24px;
  --chat-contact-inline:26px;
  --chat-app-title-size:32px;
  --chat-app-title-line:40px;
  --chat-app-title-weight:700;
  --chat-app-dock-height:64px;
  --chat-app-dock-bottom:max(16px,env(safe-area-inset-bottom));
  --chat-app-dock-main-size:calc(var(--chat-app-dock-me-size) * 3);
  --chat-app-dock-radius:999px;
  --chat-app-dock-border-color:color-mix(in srgb,var(--theme-primary) 82%,var(--text-muted));
  --chat-app-dock-icon-color:color-mix(in srgb,var(--theme-primary) 72%,var(--white));
  --chat-app-dock-active-color:color-mix(in srgb,var(--theme-primary) 72%,var(--text-muted));
  --chat-app-dock-icon-size:27px;
  --chat-app-dock-me-size:66px;
  --chat-app-dock-me-icon-size:25px;
  --chat-app-dock-gap:28px;
  --chat-app-dock-main-pad:7px;
  --chat-message-mini-size:70px;
  --chat-message-mini-rotate:15deg;
  --chat-message-artwork-radius:18px;
  --chat-message-column-gap:36px;
  --chat-contact-scale:.72;
  --chat-moments-cover-height:30dvh;
  --chat-moments-divider-overlap:20px;
  --chat-moments-divider-radius:20px;
  --chat-moments-avatar-size:120px;
  --chat-moments-stat-color:color-mix(in srgb,var(--text-faint) 72%,var(--white));
  --chat-me-browser-bg:#F1F1F2;
  --chat-me-tag-bg:#F4F4F4;
  --chat-me-dot:#D7D7D9;
  --chat-me-name-size:14px;
  --chat-me-signature-size:11px;
  --chat-me-tag-size:8.5px;
  --chat-me-home-title-size:13px;
  --chat-me-home-copy-size:9.5px;
  --chat-me-menu-size:12px;
  --chat-app-motion:180ms ease;
  background:var(--chat-app-bg);
  color:var(--chat-app-ink);
  overflow:hidden;
}
.chat-app-shell{position:relative;width:100%;height:100%;background:var(--chat-app-bg);overflow:hidden}
.chat-app-panels{position:absolute;inset:0 0 calc(var(--chat-app-dock-height) + var(--chat-app-dock-bottom) + 18px);overflow:hidden}
.chat-tab-panel{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;padding:max(24px,env(safe-area-inset-top)) var(--chat-app-side) 28px;background:var(--chat-app-bg)}
.chat-tab-panel::-webkit-scrollbar{display:none}
.chat-tab-panel[hidden]{display:none}
.chat-app-title{appearance:none;-webkit-appearance:none;display:block;width:max-content;max-width:100%;margin:0;padding:0;border:0;outline:0;background:transparent;font-family:Arial,'Noto Sans KR','Noto Sans SC',sans-serif;font-size:var(--chat-app-title-size);line-height:var(--chat-app-title-line);font-weight:var(--chat-app-title-weight);letter-spacing:-.035em;color:var(--chat-app-ink);text-align:left;cursor:pointer}
.chat-app-title:focus-visible{outline:1px solid color-mix(in srgb,var(--chat-app-ink) 16%,transparent);outline-offset:4px;border-radius:4px}

/* Messages: title + one native artwork/player row; all icons are Font Awesome Classic Solid. */
.chat-tab-panel[data-chat-panel="messages"]{padding-top:max(30px,env(safe-area-inset-top));padding-inline:var(--chat-app-side)}
.chat-message-player{width:100%;min-width:0;margin:27px 0 0}
.chat-message-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--chat-message-column-gap);align-items:stretch;min-width:0}
.chat-message-artwork-wrap{position:relative;width:100%;height:auto;aspect-ratio:1/1;min-width:0}
.chat-message-artwork{width:100%;height:100%;aspect-ratio:1/1;border-radius:var(--chat-message-artwork-radius);background:var(--chat-app-placeholder) center/cover no-repeat;box-shadow:var(--avatar-shadow)}
.chat-message-artwork-mini{position:absolute;right:0;bottom:0;width:var(--chat-message-mini-size);height:var(--chat-message-mini-size);border-radius:14px;background:var(--chat-app-placeholder) center/cover no-repeat;box-shadow:var(--avatar-shadow);transform:rotate(var(--chat-message-mini-rotate));transform-origin:100% 100%}
.chat-message-track{min-width:0;width:100%;height:auto;aspect-ratio:1/1;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;text-align:left}
.chat-message-song-row{min-width:0;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.chat-message-song{min-width:0;max-width:calc(100% - 28px);font-family:var(--font-ui);font-size:14px;line-height:19px;font-weight:var(--weight-semibold);letter-spacing:-.025em;color:#000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}
.chat-message-bars{width:20px;height:20px;flex:0 0 20px;display:grid;place-items:center;font-size:17px;line-height:1;color:var(--chat-app-dock-active-color);text-align:right}
.chat-message-lyrics{margin-top:0;display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center}
.chat-message-lyric{font-family:var(--font-ui);font-size:11px;line-height:17px;font-weight:var(--weight-regular);letter-spacing:-.015em;color:#000}
.chat-message-lyric:first-child,.chat-message-lyric:last-child{color:var(--chat-app-muted)}
.chat-player-progress-row{width:100%;margin-top:0;display:grid;grid-template-columns:22px minmax(0,1fr) 22px;gap:5px;align-items:center}
.chat-player-time{font-family:var(--font-ui);font-size:7px;line-height:10px;font-weight:var(--weight-medium);font-variant-numeric:tabular-nums;color:var(--chat-app-muted);text-align:center;white-space:nowrap}
.chat-player-progress{min-width:0}
.chat-player-controls{margin-top:0;display:flex;align-items:center;justify-content:center;gap:13px}
.chat-player-control{appearance:none;-webkit-appearance:none;width:28px;height:28px;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--chat-app-dock-active-color);display:grid;place-items:center;cursor:pointer;font-size:15px;line-height:1}
.chat-player-toggle{width:32px;height:32px;font-size:19px}
.chat-player-control .chat-player-pause{display:none}
.chat-player-toggle[aria-pressed="true"] .chat-player-play{display:none}
.chat-player-toggle[aria-pressed="true"] .chat-player-pause{display:inline-block}
.chat-player-control:active{transform:scale(.92)}
.chat-player-control:focus-visible{outline:1px solid color-mix(in srgb,#000 14%,transparent);outline-offset:0;border-radius:50%}
.chat-message-record{margin-top:34px}
.chat-message-record-title{font-family:var(--font-ui);font-size:13px;line-height:18px;font-weight:var(--weight-medium);letter-spacing:-.02em;color:#000;text-align:left}
.chat-empty{min-height:180px;display:grid;place-items:center;padding:40px 0;font-family:var(--font-ui);font-size:11px;line-height:16px;font-weight:var(--weight-regular);letter-spacing:-.01em;color:var(--chat-app-muted)}

.chat-contact-title-row{display:flex;align-items:flex-end;gap:9px;min-width:0}
.chat-contact-title-row .chat-contact-account{padding-bottom:4px}
.chat-tab-panel[data-chat-panel="contacts"]{padding-inline:var(--chat-contact-inline)}
.chat-contact-card{margin-top:24px;padding:0 0 8px}
.chat-contact-content-scale{width:calc(100% / var(--chat-contact-scale));margin-top:0;transform:scale(var(--chat-contact-scale));transform-origin:top left}
.chat-contact-account{padding-bottom:3px;font-family:var(--font-ui);font-size:11px;line-height:14px;font-weight:var(--weight-medium);letter-spacing:-.025em;color:#000;white-space:nowrap}
.chat-language-list{margin-top:0;padding-inline:0}
.chat-language{position:relative;padding:0 0 25px}
.chat-language+.chat-language{padding-top:20px;border-top:1px solid color-mix(in srgb,var(--theme-primary) 38%,var(--white))}
.chat-language-name{font-family:var(--font-ui);font-size:16px;line-height:21px;font-weight:700;letter-spacing:-.025em;color:#050505}
.chat-language-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:14px;align-items:center;margin-top:13px}
.chat-language-phrase{font-family:var(--font-ui);font-size:clamp(17px,5.7vw,23px);line-height:1.25;font-weight:700;letter-spacing:-.035em;color:#050505;overflow-wrap:anywhere}
.chat-language-play{appearance:none;-webkit-appearance:none;width:38px;height:38px;margin:0;padding:0;border:0;border-radius:50%;background:#050505;display:grid;place-items:center;color:var(--white);font-size:15px;line-height:1}
.chat-language-play .fa-play{transform:translateX(1px)}
.chat-language-muted .chat-language-name,.chat-language-muted .chat-language-phrase{color:var(--chat-app-faint)}
.chat-language-muted .chat-language-play{background:var(--chat-app-faint)}
.chat-contact-tools{display:grid;grid-template-columns:repeat(4,36px);gap:18px;margin:21px 0 0;color:var(--chat-app-faint)}
.chat-contact-tool{appearance:none;-webkit-appearance:none;width:36px;height:36px;margin:0;padding:0;border:0;background:transparent;display:grid;place-items:center;color:inherit;font-size:25px;line-height:1}
.chat-contact-tool:nth-child(1){font-size:23px}.chat-contact-tool:nth-child(3){font-size:23px}.chat-contact-tool:nth-child(4){font-size:22px}

.chat-tab-panel[data-chat-panel="moments"]{padding:0;background:var(--chat-app-bg)}
.chat-moments-page{width:100%;height:100%;min-height:100%;background:var(--white)}
.chat-moments-cover{width:100%;height:var(--chat-moments-cover-height);background-color:var(--chat-app-placeholder);background-position:center;background-size:cover;background-repeat:no-repeat}
.chat-moments-content{position:relative;min-height:calc(100% - var(--chat-moments-cover-height) + var(--chat-moments-divider-overlap));margin-top:calc(-1 * var(--chat-moments-divider-overlap));padding:calc(var(--chat-moments-avatar-size) / 2 + 16px) var(--chat-app-side) 30px;border-radius:var(--chat-moments-divider-radius) var(--chat-moments-divider-radius) 0 0;background:var(--white)}
.chat-moments-avatar{position:absolute;left:50%;top:0;width:var(--chat-moments-avatar-size);height:var(--chat-moments-avatar-size);border-radius:50%;background:var(--chat-app-placeholder) center/cover no-repeat;transform:translate(-50%,-50%);box-shadow:var(--avatar-shadow)}
.chat-moments-profile{display:flex;flex-direction:column;align-items:center;text-align:center}
.chat-moments-name{font-family:var(--font-ui);font-size:15px;line-height:17px;font-weight:var(--weight-semibold);letter-spacing:-.02em;color:var(--chat-app-ink)}
.chat-moments-ip{margin-top:2px;font-family:var(--font-ui);font-size:10px;line-height:11px;font-weight:var(--weight-regular);color:var(--chat-app-muted)}
.chat-moments-signature{max-width:100%;margin-top:6px;font-family:var(--font-ui);font-size:12px;line-height:14px;font-weight:var(--weight-regular);letter-spacing:-.01em;color:var(--chat-app-ink);overflow-wrap:anywhere}
.chat-moments-stats{width:min(270px,100%);margin:26px auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;text-align:center}
.chat-moments-stat{display:flex;flex-direction:column;align-items:center;gap:4px}
.chat-moments-stat-value{font-family:var(--font-ui);font-size:16px;line-height:18px;font-weight:var(--weight-semibold);color:var(--chat-moments-stat-color)}
.chat-moments-stat-label{font-family:var(--font-ui);font-size:10px;line-height:12px;font-weight:var(--weight-regular);color:var(--chat-moments-stat-color)}
.chat-moments-empty{min-height:150px;margin-top:28px;display:grid;place-items:center;font-family:var(--font-ui);font-size:11px;line-height:14px;font-weight:var(--weight-regular);color:var(--chat-app-muted)}

/* Me: rounded browser-tab header + horizontal profile identity row; icons are Font Awesome Classic Solid. */
.chat-tab-panel[data-chat-panel="me"]{padding:0;background:var(--white)}
.chat-me-page{width:100%;min-height:100%;background:var(--white)}
.chat-me-browser{position:relative;height:60px;background:var(--chat-me-browser-bg);display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:end;padding:0 8px;overflow:visible}
.chat-me-browser-plus{width:34px;height:40px;display:grid;place-items:center;color:#747477;font-size:15px;line-height:1}
.chat-me-tab{position:relative;z-index:2;min-width:0;width:min(190px,100%);height:40px;padding:0 11px 0 14px;border-radius:12px 12px 10px 10px;background:var(--white);display:flex;align-items:center;gap:8px;color:#111}
.chat-me-tab::before,.chat-me-tab::after{content:"";position:absolute;bottom:0;width:12px;height:12px;pointer-events:none}
.chat-me-tab::before{left:-12px;border-bottom-right-radius:12px;box-shadow:6px 6px 0 6px var(--white)}
.chat-me-tab::after{right:-12px;border-bottom-left-radius:12px;box-shadow:-6px 6px 0 6px var(--white)}
.chat-me-tab-title{min-width:0;flex:1;font-family:var(--font-ui);font-size:13px;line-height:17px;font-weight:var(--weight-semibold);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-me-tab-close,.chat-me-window-close{appearance:none;-webkit-appearance:none;margin:0;padding:0;border:0;outline:0;background:transparent;color:#8B8B8D;display:grid;place-items:center;cursor:pointer}
.chat-me-tab-close{width:20px;height:20px;border-radius:50%;font-size:12px;line-height:1}
.chat-me-window-controls{height:40px;display:flex;align-items:center;justify-content:flex-end;color:#8B8B8D}
.chat-me-window-control,.chat-me-window-close{width:29px;height:40px;font-size:13px;line-height:1}
.chat-me-tab-close:focus-visible,.chat-me-window-close:focus-visible{outline:1px solid color-mix(in srgb,#000 12%,transparent)}
.chat-me-content{padding:27px var(--chat-app-side) 34px;background:var(--white)}
.chat-me-profile{display:grid;grid-template-columns:108px minmax(0,1fr);gap:18px;align-items:center;text-align:left}
.chat-me-avatar{width:108px;height:108px;border-radius:50%;background:var(--chat-app-placeholder) center/cover no-repeat;box-shadow:var(--avatar-shadow)}
.chat-me-profile-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.chat-me-name{font-family:var(--font-ui);font-size:var(--chat-me-name-size);line-height:19px;font-weight:var(--weight-semibold);letter-spacing:-.02em;color:#000}
.chat-me-signature{max-width:100%;margin-top:3px;font-family:var(--font-ui);font-size:var(--chat-me-signature-size);line-height:16px;font-weight:var(--weight-regular);letter-spacing:-.01em;color:#000;overflow-wrap:anywhere}
.chat-me-tag{display:inline-flex;align-items:center;min-height:18px;margin-top:8px;padding:2px 8px;border-radius:999px;background:var(--chat-me-tag-bg);font-family:var(--font-ui);font-size:var(--chat-me-tag-size);line-height:12px;font-weight:var(--weight-medium);letter-spacing:.04em;color:#A2A2A4}
.chat-me-home{margin-top:34px;text-align:left}
.chat-me-home-title{font-family:var(--font-ui);font-size:var(--chat-me-home-title-size);line-height:18px;font-weight:var(--weight-medium);letter-spacing:-.015em;color:#000}
.chat-me-home-copy{max-width:295px;margin-top:6px;font-family:var(--font-ui);font-size:var(--chat-me-home-copy-size);line-height:16px;font-weight:var(--weight-regular);letter-spacing:-.01em;color:#000;overflow-wrap:anywhere}
.chat-me-home-media{width:100%;margin-top:14px;border-radius:18px;aspect-ratio:14/5;background:var(--chat-app-placeholder) center/cover no-repeat}
.chat-me-menu{margin-top:28px;display:flex;flex-direction:column;align-items:stretch}
.chat-me-menu-item{min-height:45px;display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:center}
.chat-me-menu-item+.chat-me-menu-item{border-top:1px solid color-mix(in srgb,var(--chat-app-ink) 6%,transparent)}
.chat-me-menu-dot{width:14px;height:14px;display:grid;place-items:center;color:var(--chat-me-dot);font-size:10px;line-height:1}
.chat-me-menu-text{min-width:0;display:flex;align-items:center;justify-content:flex-start}
.chat-me-menu-label{font-family:var(--font-ui);font-size:var(--chat-me-menu-size);line-height:16px;font-weight:var(--weight-medium);letter-spacing:-.015em;color:#000;white-space:nowrap}

.chat-app-dock{position:absolute;z-index:2;left:50%;right:auto;bottom:var(--chat-app-dock-bottom);width:min(calc(100% - 28px),calc(var(--chat-app-dock-main-size) + var(--chat-app-dock-me-size) + var(--chat-app-dock-gap)));height:var(--chat-app-dock-height);padding:0;border:0;background:transparent;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:var(--chat-app-dock-gap);align-items:center;transform:translateX(-50%);box-shadow:none}
.chat-app-dock-main{min-width:0;height:100%;padding:0 var(--chat-app-dock-main-pad);border:1.5px dashed var(--chat-app-dock-border-color);border-radius:var(--chat-app-dock-radius);background:transparent;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center}
.chat-tab-button{appearance:none;-webkit-appearance:none;width:100%;height:100%;margin:0;padding:0;border:0;outline:0;background:transparent;display:grid;place-items:center;color:var(--chat-app-dock-icon-color);font-size:var(--chat-app-dock-icon-size);line-height:1;cursor:pointer;transition:color var(--chat-app-motion),transform var(--chat-app-motion)}
.chat-tab-button-me{width:100%;max-width:var(--chat-app-dock-me-size);height:auto;aspect-ratio:1;border:1.5px dashed var(--chat-app-dock-border-color);border-radius:50%;background:transparent;font-size:var(--chat-app-dock-me-icon-size)}
.chat-tab-button[aria-selected="true"]{color:var(--chat-app-dock-active-color)}
.chat-tab-button:active{transform:scale(.92)}
.chat-tab-button:focus-visible{outline:1px solid color-mix(in srgb,var(--chat-app-dock-active-color) 18%,transparent);outline-offset:-9px;border-radius:999px}
@media (max-width:350px){.chat-app-page{--chat-app-side:20px;--chat-contact-inline:18px}.chat-contact-tools{gap:13px}.chat-me-browser{grid-template-columns:34px minmax(0,1fr) auto;padding-inline:4px}.chat-me-window-control,.chat-me-window-close{width:23px}.chat-me-content{padding-inline:20px}}
@media (prefers-reduced-motion:reduce){.chat-tab-button{transition:none}}


/* API page uses the shared settings shell and editor controls. */
.api-app{background:var(--white);color:var(--text);overflow:hidden}
.api-scroll{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;padding:max(var(--edge-y),env(safe-area-inset-top)) var(--gap) max(var(--edge-y),env(safe-area-inset-bottom));background:var(--white)}
.api-scroll::-webkit-scrollbar{display:none}
.api-form{width:var(--global-page-content-width);margin:0 auto;padding:0 0 calc(10 * var(--editor-u));display:flex;flex-direction:column;gap:calc(14 * var(--editor-u))}
.api-preset-row{display:grid;grid-template-columns:minmax(0,1fr) calc(42 * var(--editor-u)) calc(42 * var(--editor-u));gap:calc(8 * var(--editor-u));align-items:center;margin-bottom:calc(2 * var(--editor-u))}
.api-icon-button{appearance:none;-webkit-appearance:none;width:calc(42 * var(--editor-u));height:var(--ui-control-height);padding:0;outline:0;border-radius:var(--ui-control-radius);color:var(--theme-primary);display:grid;place-items:center;cursor:pointer;transition:opacity 120ms ease,border-color 120ms ease,background-color 120ms ease,transform 120ms ease}
.api-icon-button:active{transform:scale(.96)}
.api-icon-button:focus-visible{border-color:var(--theme-primary);outline:0}
.api-icon-button:disabled{opacity:.32;cursor:default;transform:none}
.api-icon-button .fa-solid{width:calc(18 * var(--editor-u));height:calc(18 * var(--editor-u));display:block;color:currentColor}
.api-fields{display:flex;flex-direction:column;gap:calc(12 * var(--editor-u))}
.api-field{display:flex;flex-direction:column;align-items:stretch;gap:calc(5 * var(--editor-u))}
.api-field-label{padding-left:calc(1 * var(--editor-u));font-family:var(--font-ui);font-size:calc(10 * var(--editor-u));line-height:calc(13 * var(--editor-u));font-weight:var(--weight-medium);color:var(--editor-label);text-align:left;white-space:nowrap}
.api-key-input{font-family:var(--font-ui);letter-spacing:.02em}
.api-context-input{font-variant-numeric:tabular-nums}
.api-temperature{padding:calc(2 * var(--editor-u)) calc(1 * var(--editor-u)) calc(1 * var(--editor-u))}
.api-temperature .editor-range-value{min-width:calc(42 * var(--editor-u))}
.api-actions{display:grid;grid-template-columns:1fr 1fr;gap:calc(10 * var(--editor-u));padding-top:calc(4 * var(--editor-u))}
.api-test-busy{opacity:.62;pointer-events:none}


/* Worldbook system: consumes the global theme mother variable directly. */
.worldbook-app{
  --worldbook-gap:12px;
  --worldbook-radius:var(--radius);
  --worldbook-ink:var(--text-strong);
  --worldbook-sub:var(--text-muted);
  --worldbook-faint:var(--text-faint);
  --worldbook-line:color-mix(in srgb,var(--theme-primary) 18%,transparent);
  --worldbook-tint-1:color-mix(in srgb,var(--theme-primary) 8%,var(--white));
  --worldbook-tint-2:color-mix(in srgb,var(--theme-primary) 14%,var(--white));
  --worldbook-tint-3:color-mix(in srgb,var(--theme-primary) 24%,var(--white));
  background:var(--white);color:var(--text);overflow:hidden
}
.worldbook-scroll,.lore-entry-scroll,.lore-editor-scroll{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;padding:max(var(--edge-y),env(safe-area-inset-top)) var(--gap) max(var(--edge-y),env(safe-area-inset-bottom));background:var(--white)}
.worldbook-scroll::-webkit-scrollbar,.lore-entry-scroll::-webkit-scrollbar,.lore-editor-scroll::-webkit-scrollbar{display:none}
.worldbook-nav,.lore-nav{width:var(--global-page-content-width)}
.worldbook-heading,.lore-heading{right:82px}
.worldbook-actions,.lore-nav-actions{position:absolute;right:-4px;top:0;height:var(--global-page-header-height);display:flex;align-items:center;gap:0}
.worldbook-icon-button,.lore-nav-button{appearance:none;-webkit-appearance:none;width:34px;height:40px;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--theme-primary);display:grid;place-items:center;cursor:pointer;transition:transform 120ms ease,opacity 120ms ease,color 120ms ease}
.worldbook-icon-button i,.lore-nav-button i{display:block;font-size:16px;line-height:1;font-style:normal;text-rendering:auto;-webkit-font-smoothing:antialiased}
.worldbook-icon-button[data-worldbook-more] i{font-size:17px}.lore-nav-button[data-lore-manage] i{font-size:15px}
.worldbook-icon-button:active,.lore-nav-button:active{transform:scale(.92)}
.worldbook-icon-button:focus-visible,.lore-nav-button:focus-visible{outline:1px solid var(--worldbook-line);outline-offset:-5px;border-radius:10px}
.lore-nav-button[aria-pressed="true"]{color:var(--theme-primary)}

/* Parent library: theme-bound book covers. */
.worldbook-content,.lore-entry-content,.lore-editor-content{width:var(--global-page-content-width);margin:0 auto;padding:0 0 24px}
.worldbook-library-meta{min-height:18px;margin:0 1px 13px;display:flex;align-items:center;justify-content:flex-end}
.worldbook-total{font-family:var(--font-soft);font-size:8.5px;line-height:12px;font-weight:var(--weight-regular);letter-spacing:.16em;font-variant-numeric:tabular-nums;color:var(--worldbook-faint)}
.worldbook-cover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--worldbook-gap)}
.worldbook-card{position:relative;min-width:0;aspect-ratio:1/1.16;overflow:hidden;border:0;border-radius:var(--worldbook-radius);background:var(--worldbook-tint-3);padding:14px 13px 13px;display:flex;flex-direction:column;align-items:stretch;text-align:left;cursor:pointer;isolation:isolate;transition:transform 120ms ease,background-color 120ms ease}
.worldbook-card:active{transform:scale(.988);background:color-mix(in srgb,var(--theme-primary) 31%,var(--white))}
.worldbook-card::before{content:'';position:absolute;z-index:-1;left:13px;top:0;width:34px;height:5px;border-radius:0 0 999px 999px;background:var(--theme-primary)}
.worldbook-card::after{content:attr(data-seq);position:absolute;z-index:-1;right:9px;bottom:-8px;font-family:var(--font-soft);font-size:58px;line-height:1;font-weight:var(--weight-regular);letter-spacing:-.08em;color:color-mix(in srgb,var(--theme-primary) 29%,transparent);pointer-events:none}
.worldbook-card-head{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:14px}
.worldbook-card-index,.worldbook-scope{font-family:var(--font-soft);font-size:8px;line-height:11px;font-weight:var(--weight-regular);letter-spacing:.02em;color:color-mix(in srgb,var(--worldbook-ink) 62%,transparent);white-space:nowrap}
.worldbook-scope{display:inline-flex;align-items:center;gap:5px}
.worldbook-scope::before{content:'';width:5px;height:5px;flex:0 0 5px;border-radius:50%;background:var(--theme-primary)}
.worldbook-scope[data-scope="extension"]::before{background:transparent;border:1px solid var(--theme-primary)}
.worldbook-card-title{margin:33px 0 8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-family:var(--font-ui);font-size:17px;line-height:24px;font-weight:var(--weight-medium);letter-spacing:-.035em;color:var(--worldbook-ink);overflow-wrap:anywhere}
.worldbook-card-caption{font-family:var(--font-soft);font-size:8px;line-height:11px;font-weight:var(--weight-regular);letter-spacing:.13em;color:color-mix(in srgb,var(--worldbook-sub) 64%,transparent);text-transform:uppercase}
.worldbook-card-foot{margin-top:auto;padding-top:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.worldbook-card-meta,.worldbook-card-open{font-family:var(--font-soft);font-size:8px;line-height:11px;font-weight:var(--weight-regular);letter-spacing:.1em;color:color-mix(in srgb,var(--worldbook-sub) 70%,transparent);white-space:nowrap}
.worldbook-card-open{text-transform:uppercase}
.worldbook-filter-menu{position:absolute;z-index:8;right:0;top:43px;width:132px;padding:6px;border:1px solid var(--worldbook-line);border-radius:13px;background:var(--white);box-shadow:0 12px 34px rgba(60,50,54,.07)}
.worldbook-filter-menu[hidden]{display:none}
.worldbook-filter-option{appearance:none;-webkit-appearance:none;width:100%;height:34px;margin:0;padding:0 10px;border:0;border-radius:8px;background:transparent;font-family:var(--font-ui);font-size:10.5px;line-height:1;font-weight:var(--weight-regular);color:var(--text);text-align:left;cursor:pointer}
.worldbook-filter-option.active{background:var(--worldbook-tint-2);font-weight:var(--weight-medium);color:var(--worldbook-ink)}
.worldbook-empty{min-height:300px;padding:28px 0;display:flex;align-items:flex-start;justify-content:center}
.worldbook-empty-paper{position:relative;width:min(236px,76%);aspect-ratio:1/1.12;padding:22px 20px;border:0;border-radius:var(--worldbook-radius);background:var(--worldbook-tint-2);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;overflow:hidden}
.worldbook-empty-paper::before{content:'';position:absolute;left:20px;top:0;width:42px;height:5px;border-radius:0 0 999px 999px;background:var(--theme-primary)}
.worldbook-empty-index{position:absolute;right:12px;top:12px;margin:0;font-family:var(--font-soft);font-size:54px;line-height:1;font-weight:var(--weight-regular);letter-spacing:-.07em;color:color-mix(in srgb,var(--theme-primary) 24%,transparent)}
.worldbook-empty-title{font-family:var(--font-ui);font-size:16px;line-height:22px;font-weight:var(--weight-medium);letter-spacing:-.025em;color:var(--worldbook-ink)}
.worldbook-empty-copy{max-width:180px;margin-top:6px;font-family:var(--font-soft);font-size:9.5px;line-height:15px;font-weight:var(--weight-regular);color:var(--worldbook-faint)}

/* Entry index and editor consume the worldbook and global UI mothers directly. */
.lore-entry-app,.lore-editor-app{background:var(--white);color:var(--text);overflow:hidden}
.lore-book-meta{min-height:22px;margin:0 1px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.lore-book-meta-count,.lore-book-meta-scope{font-family:var(--font-soft);font-size:8.8px;line-height:12px;font-weight:var(--weight-regular);letter-spacing:.04em;color:var(--worldbook-faint)}
.lore-book-meta-scope{order:-1;display:inline-flex;align-items:center;gap:7px}
.lore-book-meta-scope::before{content:'';width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--theme-primary)}
.lore-entry-stack{display:flex;flex-direction:column;gap:12px}
.lore-entry-card{position:relative;min-width:0;min-height:158px;margin:0;padding:14px 15px 13px;border:1px solid color-mix(in srgb,var(--theme-primary) 12%,transparent);border-radius:var(--worldbook-radius);outline:0;background:var(--worldbook-tint-1);display:flex;flex-direction:column;cursor:pointer;overflow:hidden;text-align:left;color:inherit;isolation:isolate;transition:transform 120ms ease,opacity 120ms ease,background-color 120ms ease,border-color 120ms ease}
.lore-entry-card::before{content:'';position:absolute;z-index:-1;left:0;top:0;width:100%;height:4px;background:var(--theme-primary)}
.lore-entry-card::after{content:attr(data-seq);position:absolute;z-index:-1;right:-4px;top:30px;font-family:var(--font-soft);font-size:70px;line-height:1;font-weight:var(--weight-regular);letter-spacing:-.09em;color:color-mix(in srgb,var(--theme-primary) 17%,transparent);pointer-events:none}
.lore-entry-card:active{transform:scale(.994);background:var(--worldbook-tint-2)}
.lore-entry-top{display:flex;align-items:center;gap:10px;min-height:34px;padding-right:30px}
.lore-entry-icon{width:32px;height:32px;flex:0 0 32px;border-radius:10px;background:var(--worldbook-tint-3);display:grid;place-items:center;color:color-mix(in srgb,var(--theme-primary) 78%,var(--worldbook-ink))}
.lore-entry-icon i{font-size:13px;line-height:1}
.lore-entry-topcopy{min-width:0;display:flex;flex-direction:column;gap:2px}
.lore-entry-index{font-family:var(--font-soft);font-size:7.8px;line-height:10px;font-weight:var(--weight-regular);letter-spacing:.15em;color:var(--worldbook-faint);text-transform:uppercase}
.lore-entry-title{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-ui);font-size:15px;line-height:19px;font-weight:var(--weight-medium);letter-spacing:-.026em;color:var(--worldbook-ink)}
.lore-entry-status{margin-left:auto;display:inline-flex;align-items:center;gap:6px;min-width:0;padding-left:4px;font-family:var(--font-soft);font-size:8px;line-height:11px;font-weight:var(--weight-regular);color:var(--worldbook-faint);white-space:nowrap}
.lore-entry-enabled{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--theme-primary)}
.lore-entry-enabled.off{background:transparent;border:1px solid color-mix(in srgb,var(--theme-primary) 68%,var(--worldbook-faint))}
.lore-entry-preview{max-width:88%;margin:11px 0 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-family:var(--font-ui);font-size:10.4px;line-height:16.5px;font-weight:var(--weight-regular);letter-spacing:-.008em;color:var(--worldbook-sub);white-space:pre-line}
.lore-entry-foot{min-width:0;margin-top:auto;padding-top:13px;display:flex;align-items:center;gap:8px;border-top:1px solid var(--worldbook-line)}
.lore-entry-keyicon{width:20px;height:20px;flex:0 0 20px;border-radius:7px;background:var(--worldbook-tint-2);display:grid;place-items:center;color:color-mix(in srgb,var(--theme-primary) 74%,var(--worldbook-sub))}
.lore-entry-keyicon i{font-size:8px;line-height:1}
.lore-entry-keytext{min-width:0;max-width:calc(100% - 87px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-soft);font-size:8.3px;line-height:11px;font-weight:var(--weight-regular);letter-spacing:.015em;color:var(--worldbook-faint)}
.lore-entry-position{margin-left:auto;max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-soft);font-size:7.7px;line-height:11px;font-weight:var(--weight-regular);letter-spacing:.05em;color:color-mix(in srgb,var(--worldbook-faint) 82%,transparent)}
.lore-select-mark{position:absolute;z-index:3;right:11px;top:11px;width:22px;height:22px;border:1px solid color-mix(in srgb,var(--theme-primary) 32%,transparent);border-radius:8px;background:color-mix(in srgb,var(--white) 88%,transparent);display:none;place-items:center;color:var(--worldbook-ink)}
.lore-select-mark i{font-size:9px;line-height:1;opacity:0}
.lore-entry-app.managing .lore-select-mark{display:grid}.lore-entry-app.managing .lore-entry-card{opacity:.58}.lore-entry-app.managing .lore-entry-card.selected{opacity:1}
.lore-entry-card.selected{background:var(--worldbook-tint-2);border-color:color-mix(in srgb,var(--theme-primary) 62%,transparent)}
.lore-entry-card.selected .lore-select-mark{background:var(--theme-primary);border-color:var(--theme-primary)}.lore-entry-card.selected .lore-select-mark i{opacity:1}
.lore-manage-bar{margin-top:12px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:9px}
.lore-manage-bar[hidden]{display:none}
.lore-manage-button{appearance:none;-webkit-appearance:none;height:41px;margin:0;border:1px solid var(--worldbook-line);border-radius:10px;background:var(--white);font-family:var(--font-ui);font-size:11px;font-weight:var(--weight-medium);color:var(--text);cursor:pointer}
.lore-manage-button.danger{border-style:dashed;color:color-mix(in srgb,var(--theme-primary) 78%,var(--worldbook-ink))}.lore-manage-button:disabled{opacity:.32;cursor:default}
.lore-empty{min-height:290px;padding:28px 0;display:flex;justify-content:center}
.lore-empty-sheet{position:relative;width:100%;min-height:198px;padding:24px 23px;border:0;border-radius:var(--worldbook-radius);background:var(--worldbook-tint-2);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;overflow:hidden}
.lore-empty-sheet::before{content:'00';position:absolute;right:15px;top:12px;font-family:var(--font-soft);font-size:62px;line-height:1;letter-spacing:-.08em;color:color-mix(in srgb,var(--theme-primary) 22%,transparent)}
.lore-empty-sheet::after{content:'';position:absolute;left:23px;top:0;width:41px;height:5px;border-radius:0 0 999px 999px;background:var(--theme-primary)}
.lore-empty-title{font-family:var(--font-ui);font-size:16px;line-height:22px;font-weight:var(--weight-medium);letter-spacing:-.025em;color:var(--worldbook-ink)}
.lore-empty-copy{margin-top:6px;max-width:230px;font-family:var(--font-soft);font-size:9.6px;line-height:15px;font-weight:var(--weight-regular);color:var(--worldbook-faint)}

/* Entry editor: page structure only; every control is a global UI primitive. */
.lore-editor-content{padding-bottom:30px}
.lore-editor-form{display:flex;flex-direction:column;gap:0}
.lore-editor-sheet{counter-reset:loreSection;position:relative;padding:0}
.lore-editor-sheet::before{content:'';display:block;width:42px;height:5px;margin:1px 0 23px 1px;border-radius:999px;background:var(--theme-primary)}
.lore-section{counter-increment:loreSection;padding:0 0 25px;margin:0 0 25px;border:0;border-bottom:1px solid var(--worldbook-line)}
.lore-section:last-of-type{margin-bottom:12px;padding-bottom:4px;border-bottom:0}
.lore-section-head{margin-bottom:13px}
.lore-section-title{display:flex;align-items:center;gap:8px;font-family:var(--font-ui);font-size:13px;line-height:18px;font-weight:var(--weight-medium);letter-spacing:-.02em;color:var(--worldbook-ink)}
.lore-section-title::before{content:'0' counter(loreSection);font-family:var(--font-soft);font-size:8px;line-height:11px;font-weight:var(--weight-regular);letter-spacing:.1em;color:color-mix(in srgb,var(--theme-primary) 82%,var(--text-muted))}
.lore-section-help{margin-top:4px;max-width:96%;font-family:var(--font-soft);font-size:9.4px;line-height:15px;font-weight:var(--weight-regular);letter-spacing:-.005em;color:var(--worldbook-faint)}
.page-fields{display:flex;flex-direction:column;gap:calc(10 * var(--editor-u))}
.page-field{display:flex;flex-direction:column;gap:calc(6 * var(--editor-u))}
.page-field-label{padding-left:calc(1 * var(--editor-u));font-family:var(--font-ui);font-size:calc(10 * var(--editor-u));line-height:calc(13 * var(--editor-u));font-weight:var(--weight-medium);color:var(--editor-label)}
.page-title-input{height:calc(54 * var(--editor-u));padding:0 calc(1 * var(--editor-u));border-width:0 0 calc(1 * var(--editor-u));border-radius:0;background:transparent;font-size:calc(18 * var(--editor-u));line-height:calc(54 * var(--editor-u));font-weight:var(--weight-medium);letter-spacing:-.03em}
.page-title-input:focus,.page-title-input:focus-visible{background:transparent;box-shadow:none}
.page-textarea{appearance:none;-webkit-appearance:none;width:100%;min-height:calc(92 * var(--editor-u));margin:0;padding:calc(11 * var(--editor-u)) var(--ui-control-pad-x);border:calc(1 * var(--editor-u)) solid var(--ui-control-border);border-radius:var(--ui-control-radius);outline:0;background:var(--white);font-family:var(--font-ui);font-size:calc(12 * var(--editor-u));line-height:calc(18 * var(--editor-u));font-weight:var(--weight-regular);color:var(--editor-copy);box-shadow:none;resize:vertical;user-select:text;-webkit-user-select:text;transition:border-color 120ms ease,background-color 120ms ease}
.page-textarea.entry-content{min-height:calc(220 * var(--editor-u));padding:calc(16 * var(--editor-u));line-height:calc(20 * var(--editor-u))}
.page-textarea:focus,.page-textarea:focus-visible{border-color:var(--theme-primary);background:var(--white);box-shadow:none}
.lore-inline-two{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.ui-toggle-row{min-height:calc(49 * var(--editor-u));padding:0 calc(2 * var(--editor-u));display:flex;align-items:center;justify-content:space-between;gap:calc(14 * var(--editor-u));border-bottom:calc(1 * var(--editor-u)) solid var(--worldbook-line)}.ui-toggle-row:last-child{border-bottom:0}
.ui-toggle-copy{min-width:0}.ui-toggle-title{font-family:var(--font-ui);font-size:calc(11.5 * var(--editor-u));line-height:calc(15 * var(--editor-u));font-weight:var(--weight-regular);color:var(--text)}.ui-toggle-help{margin-top:calc(2 * var(--editor-u));font-family:var(--font-soft);font-size:calc(8.6 * var(--editor-u));line-height:calc(12 * var(--editor-u));color:var(--worldbook-faint)}
.ui-toggle{position:relative;width:var(--ui-toggle-width);height:var(--ui-toggle-height);flex:0 0 var(--ui-toggle-width);cursor:pointer}.ui-toggle input{position:absolute;opacity:0;pointer-events:none}.ui-toggle-track{position:absolute;inset:0;border:var(--ui-toggle-border) dashed var(--ui-toggle-off);border-radius:var(--ui-toggle-radius);background:transparent;transition:border-color var(--ui-toggle-motion) ease}.ui-toggle-track::after{content:'';position:absolute;left:var(--ui-toggle-offset);top:50%;width:var(--ui-toggle-knob);height:var(--ui-toggle-knob);border-radius:var(--ui-toggle-radius);background:var(--ui-toggle-off);box-shadow:none;transform:translateY(-50%);transition:transform var(--ui-toggle-motion) ease,background-color var(--ui-toggle-motion) ease}.ui-toggle input:checked+.ui-toggle-track{border-style:solid;border-color:var(--ui-toggle-on)}.ui-toggle input:checked+.ui-toggle-track::after{background:var(--ui-toggle-on);transform:translate(var(--ui-toggle-travel),-50%)}.ui-toggle input:focus-visible+.ui-toggle-track{outline:var(--ui-toggle-border) solid var(--ui-toggle-on);outline-offset:var(--ui-toggle-border)}
.lore-conditional[hidden]{display:none}
.lore-writing-note{padding:3px 1px 0;font-family:var(--font-soft);font-size:9px;line-height:14px;color:var(--worldbook-faint)}

@media (max-width:350px){.worldbook-app{--worldbook-gap:9px}.worldbook-card{padding-left:11px;padding-right:11px}.worldbook-card-title{font-size:16px;line-height:22px}.lore-entry-card{padding-left:13px;padding-right:13px}.lore-inline-two{gap:7px}}
@media (max-height:720px){.worldbook-library-meta,.lore-book-meta{margin-bottom:10px}.lore-section{padding-bottom:21px;margin-bottom:21px}.page-textarea.entry-content{min-height:calc(182 * var(--editor-u))}}
@media (prefers-reduced-motion:reduce){.worldbook-icon-button,.lore-nav-button,.worldbook-card,.lore-entry-card,.ui-toggle-track,.ui-toggle-track::after,.editor-input,.page-textarea,.editor-choice-select{transition:none}}

/* Single global system-guidance layer: viewport-centered shell and centered content. */
.system-guide{position:fixed;z-index:80;top:50dvh;left:50vw;width:max-content;max-width:calc(100vw - calc(30 * var(--editor-u)));min-height:0;margin:0;padding:5px 14px;border:0;border-radius:var(--ui-control-radius);background:var(--system-guide-bg);box-shadow:none;display:block;opacity:0;visibility:hidden;transform:translate3d(-50%,-50%,0);transform-origin:center;pointer-events:none;transition:opacity 160ms ease,visibility 0s linear 200ms;box-sizing:border-box;text-align:center}
.system-guide.show{opacity:1;visibility:visible;transition-delay:0s}
.system-guide-copy{display:block;width:max-content;max-width:100%;min-width:0;margin:0 auto;padding:0;font-family:var(--font-ui);font-size:14px;line-height:20px;font-weight:var(--weight-regular);letter-spacing:-.01em;color:var(--white);text-align:center;white-space:normal;overflow-wrap:anywhere}

.global-editor .modal-body .editor-field:first-child{margin-top:0}
.global-editor .modal-form{display:flex;flex-direction:column;gap:var(--modal-content-gap)}
.global-editor .modal-form .editor-field{margin:0}
.global-editor .modal-copy{font-family:var(--font-ui);font-size:calc(11 * var(--editor-u));line-height:calc(17 * var(--editor-u));font-weight:var(--weight-regular);color:var(--text-muted);text-align:center}
.editor-actions.single{grid-template-columns:1fr}
.modal-document{display:flex;flex-direction:column;gap:var(--modal-content-gap);font-family:var(--font-ui);color:var(--text)}
.modal-document-meta{display:flex;align-items:center;justify-content:space-between;gap:calc(12 * var(--editor-u));padding-bottom:calc(2 * var(--editor-u));font-size:calc(10 * var(--editor-u));line-height:calc(14 * var(--editor-u));color:var(--text-muted)}
.modal-document-version{font-weight:var(--weight-semibold);color:var(--text-strong)}
.modal-document-section{display:flex;flex-direction:column;gap:calc(6 * var(--editor-u));padding-top:var(--modal-content-gap);border-top:calc(1 * var(--editor-u)) solid var(--line-soft)}
.modal-document-section:first-of-type{padding-top:0;border-top:0}
.modal-document-heading{font-size:calc(12 * var(--editor-u));line-height:calc(17 * var(--editor-u));font-weight:var(--weight-semibold);color:var(--text-strong)}
.modal-document-copy,.modal-document-list{margin:0;font-size:calc(10.5 * var(--editor-u));line-height:calc(17 * var(--editor-u));font-weight:var(--weight-regular);color:var(--text-muted);text-align:left}
.modal-document-list{padding-left:calc(18 * var(--editor-u))}.modal-document-list li+li{margin-top:calc(5 * var(--editor-u))}
.modal-document-warning{padding:calc(11 * var(--editor-u)) calc(12 * var(--editor-u));border:calc(1 * var(--editor-u)) solid color-mix(in srgb,var(--theme-primary) 44%,transparent);border-radius:var(--ui-control-radius);background:color-mix(in srgb,var(--theme-primary) 9%,var(--white));color:var(--text-strong)}
@media (max-height:720px){.api-form{gap:calc(11 * var(--editor-u))}.api-fields{gap:calc(10 * var(--editor-u))}}
@media (prefers-reduced-motion:reduce){.system-guide,.api-icon-button{transition:none}}



/* Una Instagram — current mobile IA + geometry-normalized surface. */
.instagram-app{
  --ig-bg:#fff;--ig-ink:#000;--ig-muted:#737373;--ig-muted-2:#8e8e8e;--ig-soft:#efefef;--ig-line-soft:#efefef;--ig-blue:#0095f6;
  --ig-nav-h:50px;--ig-top-h:52px;--ig-edge:12px;--ig-avatar:36px;--ig-story-ring-size:66px;--ig-story-avatar-size:58px;
  --ig-placeholder:#d8d8d8;--ig-placeholder-dark:#1b1b1b;--ig-placeholder-border:#cfcfcf;
  --ig-ring:conic-gradient(from 220deg,#ffd600 0 12%,#ff7a00 22%,#ff0169 44%,#d300c5 66%,#7638fa 82%,#ffd600 100%);
  background:var(--ig-bg);color:var(--ig-ink);overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  user-select:none;-webkit-user-select:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility
}
.instagram-shell{position:relative;width:100%;height:100%;background:var(--ig-bg);overflow:hidden;touch-action:pan-y}
.instagram-panels{position:absolute;inset:0 0 calc(var(--ig-nav-h) + env(safe-area-inset-bottom));overflow:hidden;background:var(--ig-bg)}
.instagram-panel{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:none;background:var(--ig-bg);color:var(--ig-ink)}
.instagram-panel::-webkit-scrollbar{display:none}.instagram-panel[hidden]{display:none}
.instagram-topbar{position:sticky;z-index:8;top:0;height:calc(var(--ig-top-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--ig-edge) 0;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.985);border-bottom:0}
.instagram-wordmark{appearance:none;-webkit-appearance:none;margin:0;padding:0 2px 0 0;border:0;background:transparent;color:var(--ig-ink);display:inline-flex;align-items:center;gap:6px;line-height:1;cursor:pointer}
.instagram-wordmark-logo{display:block;width:112px;height:25px;flex:0 0 auto;background:currentColor;-webkit-mask:url("https://upload.wikimedia.org/wikipedia/commons/c/c6/Instagram_wordmark_%282026%29.svg") center/contain no-repeat;mask:url("https://upload.wikimedia.org/wikipedia/commons/c/c6/Instagram_wordmark_%282026%29.svg") center/contain no-repeat}
.instagram-wordmark .ig-icon{width:10px;height:10px;margin-top:2px}
.instagram-top-actions{display:flex;align-items:center;gap:17px}.instagram-icon-button{appearance:none;-webkit-appearance:none;width:30px;height:38px;margin:0;padding:0;border:0;background:transparent;color:inherit;display:grid;place-items:center;font-size:22px;line-height:1;cursor:pointer}
.instagram-icon-button.small{font-size:20px}.instagram-icon-button .fa-solid,.instagram-icon-button .fa-regular,.instagram-icon-button .fa-brands{line-height:1}

/* Stories: the ring, white separation and avatar are independent circles so no box-model deformation can occur. */
.instagram-stories{height:101px;padding:7px 8px 8px;display:flex;align-items:flex-start;gap:10px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;border-bottom:1px solid var(--ig-line-soft);background:var(--ig-bg)}
.instagram-stories::-webkit-scrollbar{display:none}.instagram-story{width:72px;flex:0 0 72px;display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0}
.instagram-story-ring{position:relative;width:var(--ig-story-ring-size);height:var(--ig-story-ring-size);min-width:var(--ig-story-ring-size);min-height:var(--ig-story-ring-size);aspect-ratio:1/1;flex:0 0 var(--ig-story-ring-size);border-radius:50%;background:var(--ig-ring);display:grid;place-items:center;isolation:isolate}
.instagram-story-ring::before{content:"";position:absolute;inset:2px;border-radius:50%;background:var(--ig-bg);z-index:0}
.instagram-story-ring.muted{background:#c7c7c7}.instagram-story-ring.yours{background:transparent}
.instagram-story-ring.yours::before{display:none}
.instagram-story-avatar,.instagram-avatar{background:var(--ig-placeholder)}
.instagram-story-avatar{position:relative;z-index:1;width:var(--ig-story-avatar-size);height:var(--ig-story-avatar-size);min-width:var(--ig-story-avatar-size);min-height:var(--ig-story-avatar-size);aspect-ratio:1/1;flex:none;border:0;border-radius:50%}
.instagram-story-ring.yours .instagram-story-avatar{width:64px;height:64px;min-width:64px;min-height:64px}
.instagram-story-add{position:absolute;z-index:2;right:0;bottom:0;width:20px;height:20px;border:2px solid #fff;border-radius:50%;background:var(--ig-blue);display:grid;place-items:center;color:#fff;font-size:9px;line-height:1}
.instagram-story-name{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:11.5px;line-height:14px;font-weight:400;color:#262626;letter-spacing:-.08px}

.instagram-feed{padding:0 0 8px}.instagram-post{border-bottom:1px solid var(--ig-line-soft);background:var(--ig-bg)}
.instagram-post-head{height:52px;padding:7px var(--ig-edge);display:flex;align-items:center;gap:9px}
.instagram-avatar{width:var(--ig-avatar);height:var(--ig-avatar);min-width:var(--ig-avatar);min-height:var(--ig-avatar);aspect-ratio:1/1;flex:0 0 var(--ig-avatar);border-radius:50%}
.instagram-avatar.ring{position:relative;padding:0;background:var(--ig-ring);display:grid;place-items:center;isolation:isolate}
.instagram-avatar.ring::before{content:"";position:absolute;inset:2px;border-radius:50%;background:#fff;z-index:0}
.instagram-avatar.ring::after{content:"";position:relative;z-index:1;display:block;width:28px;height:28px;border-radius:50%;background:var(--ig-placeholder)}
.instagram-post-meta{min-width:0;flex:1;display:flex;flex-direction:column;justify-content:center}.instagram-post-user{display:flex;align-items:center;gap:4px;font-size:13px;line-height:16px;font-weight:600;white-space:nowrap;letter-spacing:-.08px}.instagram-post-time{font-weight:400;color:var(--ig-muted)}.instagram-lock{font-size:10px}
.instagram-verified{display:inline-block;width:13px;height:13px;min-width:13px;vertical-align:-2px;color:var(--ig-blue);background:currentColor;-webkit-mask:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/filled/rosette-discount-check.svg") center/contain no-repeat;mask:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/filled/rosette-discount-check.svg") center/contain no-repeat}
.instagram-thread-name .instagram-verified{width:13px;height:13px;min-width:13px;margin-left:2px}
.instagram-post-sub{font-size:11.5px;line-height:14px;color:#262626;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instagram-post-more{width:28px;height:30px;display:grid;place-items:center;font-size:16px}
.instagram-post-media{position:relative;width:100%;aspect-ratio:1/1;background:var(--ig-placeholder);overflow:hidden}.instagram-post-media.alt{background:var(--ig-placeholder)}
.instagram-post-counter{position:absolute;top:10px;right:10px;min-width:34px;padding:5px 7px;border-radius:14px;background:rgba(0,0,0,.66);color:#fff;font-size:10px;line-height:11px;text-align:center}
.instagram-post-actions{height:44px;padding:0 var(--ig-edge);display:flex;align-items:center;gap:17px}.instagram-post-actions .ig-icon{width:22px;height:22px}.instagram-post-actions .bookmark{margin-left:auto}.instagram-post-copy{padding:0 var(--ig-edge) 14px;font-size:12.5px;line-height:18px;color:#111}.instagram-like-count{font-weight:600;margin-bottom:1px}.instagram-caption-user{font-weight:600;margin-right:5px}.instagram-comments{margin-top:2px;color:var(--ig-muted)}

.instagram-tab-head{position:sticky;z-index:8;top:0;height:calc(var(--ig-top-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--ig-edge) 0;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.985);border-bottom:0}
.instagram-tab-title{appearance:none;-webkit-appearance:none;margin:0;padding:0;border:0;background:none;color:#000;font-size:20px;line-height:28px;font-weight:700;letter-spacing:-.35px;cursor:pointer}.instagram-tab-title.chevron{display:flex;align-items:center;gap:6px}.instagram-tab-title.chevron .ig-icon{width:11px;height:11px}
.instagram-reels-panel{background:#000;color:#fff;overflow:hidden}.instagram-reels-panel .instagram-tab-head{position:absolute;left:0;right:0;top:0;background:rgba(0,0,0,.26);border:0;color:#fff}.instagram-reels-panel .instagram-tab-title{color:#fff;font-size:17px;font-weight:700}.instagram-reels-head-left{display:flex;align-items:center;gap:19px}.instagram-reels-head-left button{position:relative}.instagram-reels-head-left button[aria-selected="true"]::after{content:"";position:absolute;left:50%;bottom:-6px;width:4px;height:4px;border-radius:50%;background:#fff;transform:translateX(-50%)}
.instagram-reel{position:absolute;inset:0;background:var(--ig-placeholder-dark);overflow:hidden}.instagram-reel::before{display:none}
.instagram-reel-copy{position:absolute;left:12px;right:66px;bottom:18px;z-index:3;font-size:12.5px;line-height:18px;text-shadow:0 1px 3px rgba(0,0,0,.5)}.instagram-reel-account{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-weight:600}.instagram-reel-account .instagram-avatar{width:32px;height:32px;min-width:32px;min-height:32px;flex-basis:32px;border:1px solid #fff}.instagram-follow{padding:5px 9px;border:1px solid rgba(255,255,255,.82);border-radius:7px;font-size:11px;line-height:12px;font-weight:600}.instagram-reel-music{margin-top:7px;display:flex;align-items:center;gap:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instagram-reel-actions{position:absolute;right:10px;bottom:19px;z-index:4;display:flex;flex-direction:column;align-items:center;gap:15px}.instagram-reel-action{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:10px;line-height:12px;font-weight:600}.instagram-reel-action>.ig-icon{width:24px;height:24px}.instagram-reel-action .instagram-avatar{width:28px;height:28px;min-width:28px;min-height:28px;flex-basis:28px;border:2px solid #fff;border-radius:6px}

.instagram-dm-head{border-bottom:0}.instagram-dm-head-actions{display:flex;align-items:center;gap:10px}.instagram-dm-body{padding:0 12px 18px}.instagram-searchbox{height:36px;margin:5px 0 12px;padding:0 12px;border-radius:10px;background:var(--ig-soft);display:flex;align-items:center;gap:8px;color:var(--ig-muted-2);font-size:13.5px}.instagram-searchbox .ig-icon{width:15px;height:15px}.instagram-searchbox span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.instagram-notes{height:99px;display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;padding:4px 1px 10px}.instagram-notes::-webkit-scrollbar{display:none}.instagram-note{width:72px;flex:0 0 72px;position:relative;text-align:center}.instagram-note .instagram-avatar{width:58px;height:58px;min-width:58px;min-height:58px;margin:16px auto 3px}.instagram-note-bubble{position:absolute;z-index:2;left:29px;top:0;max-width:58px;padding:5px 7px;border:1px solid #e5e5e5;border-radius:12px;background:#fff;font-size:8.5px;line-height:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instagram-note-name{font-size:10.5px;line-height:13px;color:#555;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.instagram-dm-section-head{height:42px;display:flex;align-items:center;justify-content:space-between;font-size:13.5px}.instagram-dm-section-head strong{font-weight:700}.instagram-dm-section-head span{color:var(--ig-blue);font-size:12.5px;font-weight:600}.instagram-thread{height:70px;display:grid;grid-template-columns:54px minmax(0,1fr) 30px;align-items:center;gap:10px}.instagram-thread .instagram-avatar{width:54px;height:54px;min-width:54px;min-height:54px;flex-basis:54px}.instagram-thread-copy{min-width:0}.instagram-thread-name{font-size:13.5px;line-height:18px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instagram-thread-preview{font-size:12px;line-height:16px;color:var(--ig-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instagram-thread>.ig-icon{width:20px;height:20px;color:#737373}

.instagram-explore-head{position:sticky;z-index:7;top:0;padding:calc(env(safe-area-inset-top) + 8px) 9px 8px;background:#fff}.instagram-explore-head .instagram-searchbox{margin:0;height:36px;border-radius:9px}.instagram-explore-grid,.instagram-profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#fff}.instagram-explore-tile,.instagram-profile-tile{position:relative;aspect-ratio:1/1;background:var(--ig-placeholder);overflow:hidden}.instagram-explore-tile:nth-child(3n+2),.instagram-profile-tile:nth-child(3n+2){background:var(--ig-placeholder)}.instagram-explore-tile.tall{grid-row:span 2;aspect-ratio:auto}.instagram-explore-tile>.ig-icon,.instagram-profile-tile>.ig-icon{position:absolute;right:7px;top:7px;width:15px;height:15px;color:#fff;text-shadow:none}

.instagram-profile-head{border-bottom:0}.instagram-profile-head .instagram-tab-title{font-size:16px;line-height:22px}.instagram-profile{padding:7px 12px 0}.instagram-profile-summary{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:center}.instagram-profile-avatar-wrap{position:relative;width:92px;height:92px;display:grid;place-items:center}
.instagram-profile-avatar-ring{position:relative;width:90px;height:90px;min-width:90px;min-height:90px;aspect-ratio:1/1;border-radius:50%;background:var(--ig-ring);display:grid;place-items:center;isolation:isolate}.instagram-profile-avatar-ring::before{content:"";position:absolute;inset:2px;border-radius:50%;background:#fff;z-index:0}.instagram-profile-avatar{position:relative;z-index:1;width:82px;height:82px;min-width:82px;min-height:82px;aspect-ratio:1/1;border-radius:50%;background:var(--ig-placeholder)}
.instagram-profile-note{position:absolute;z-index:2;left:55px;top:-2px;max-width:82px;padding:5px 8px;border:1px solid #e4e4e4;border-radius:13px;background:#fff;font-size:9px;line-height:11px;white-space:nowrap}
.instagram-profile-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;text-align:center}.instagram-profile-stat strong{display:block;font-size:14.5px;line-height:19px;font-weight:700}.instagram-profile-stat span{display:block;font-size:11.5px;line-height:15px;color:#262626}.instagram-profile-bio{padding:10px 0 10px;font-size:12px;line-height:17px}.instagram-profile-bio strong{font-weight:600}.instagram-profile-bio a{color:#00376b}.instagram-profile-buttons{display:grid;grid-template-columns:1fr 1fr 34px;gap:6px}.instagram-profile-button{height:32px;border:0;border-radius:8px;background:#efefef;display:grid;place-items:center;font-size:12px;font-weight:600;color:#111}
.instagram-profile-highlights{height:94px;margin:13px -2px 2px;display:flex;gap:16px;align-items:flex-start;overflow-x:auto;scrollbar-width:none}.instagram-profile-highlights::-webkit-scrollbar{display:none}.instagram-highlight{width:64px;flex:0 0 64px;text-align:center}.instagram-highlight-ring{width:62px;height:62px;min-width:62px;min-height:62px;aspect-ratio:1/1;margin:0 auto 4px;border:1px solid var(--ig-placeholder-border);border-radius:50%;padding:3px}.instagram-highlight-ring>div{width:100%;height:100%;aspect-ratio:1/1;border-radius:50%;background:var(--ig-placeholder)}.instagram-highlight span{display:block;font-size:10.5px;line-height:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instagram-profile-tabs{height:43px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #efefef}.instagram-profile-tab{position:relative;display:grid;place-items:center;color:#737373}.instagram-profile-tab .ig-icon{width:20px;height:20px}.instagram-profile-tab.active{color:#111}.instagram-profile-tab.active::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#111}

.instagram-bottom-nav{position:absolute;z-index:12;left:0;right:0;bottom:0;height:calc(var(--ig-nav-h) + env(safe-area-inset-bottom));padding:0 10px env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(5,1fr);align-items:center;background:rgba(255,255,255,.99);border-top:1px solid var(--ig-line-soft)}
.instagram-nav-button{appearance:none;-webkit-appearance:none;height:var(--ig-nav-h);margin:0;padding:0;border:0;background:transparent;color:#262626;display:grid;place-items:center;cursor:pointer}.instagram-nav-button .ig-icon{width:24px;height:24px}.instagram-nav-button[aria-selected="true"]{color:#000}.instagram-nav-avatar{width:25px;height:25px;min-width:25px;min-height:25px;aspect-ratio:1/1;border-radius:50%;background:var(--ig-placeholder);border:1px solid #999}.instagram-nav-button[aria-selected="true"] .instagram-nav-avatar{outline:1.5px solid #000;outline-offset:1px}
.instagram-app[data-ig-active="reels"] .instagram-bottom-nav{background:#000;border-top-color:rgba(255,255,255,.14)}.instagram-app[data-ig-active="reels"] .instagram-nav-button{color:#fff}.instagram-app[data-ig-active="reels"] .instagram-nav-avatar{border-color:#fff;background:#777}.instagram-app[data-ig-active="reels"] .instagram-nav-button[aria-selected="true"] .instagram-nav-avatar{outline-color:#fff}
/* Instagram icon audit: closest open-source glyph per official mobile UI.
   Tabler Icons v3.48.0 (MIT); Reels glyph: Remix Icon movie line/fill (Apache-2.0). */
.ig-icon{display:inline-block;flex:0 0 auto;width:1em;height:1em;background:currentColor;-webkit-mask:var(--ig-icon) center/contain no-repeat;mask:var(--ig-icon) center/contain no-repeat}
.ig-icon-plus{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/plus.svg")}
.ig-icon-chevron-down{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/chevron-down.svg")}
.ig-icon-heart{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/heart.svg")}
.ig-icon-dots{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/filled/dots.svg")}
.ig-icon-comment{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/message-circle.svg")}
.ig-icon-repost{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/repeat.svg")}
/* React Icons ri/RiSendInsLine — Remix Icon send-ins-line outline glyph, matching Instagram's current paper-plane/share treatment. */
.ig-icon-send{--ig-icon:url("https://api.iconify.design/ri/send-ins-line.svg")}
.ig-icon-bookmark{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/bookmark.svg")}
.ig-icon-camera{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/camera.svg")}
.ig-icon-music{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/music.svg")}
.ig-icon-video{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/video.svg")}
.ig-icon-compose{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/edit.svg")}
.ig-icon-search{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/search.svg")}
.ig-icon-lock{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/lock.svg")}
.ig-icon-menu{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/menu-2.svg")}
.ig-icon-user-plus{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/user-plus.svg")}
.ig-icon-grid{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/layout-grid.svg")}
.ig-icon-tagged{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/user-square-rounded.svg")}
.ig-icon-carousel{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/copy.svg")}
.ig-icon-threads{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/brand-threads.svg")}
.ig-icon-home{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/outline/home-2.svg")}
.ig-icon-reels{--ig-icon:url("https://api.iconify.design/ri/movie-line.svg")}
.instagram-nav-button[aria-selected="true"] .ig-icon-home{--ig-icon:url("https://cdn.jsdelivr.net/npm/@tabler/icons@3.48.0/icons/filled/home-2.svg")}
.instagram-nav-button[aria-selected="true"] .ig-icon-reels{--ig-icon:url("https://api.iconify.design/ri/movie-fill.svg")}
.instagram-nav-button[aria-selected="true"] .ig-icon-send{--ig-icon:url("https://api.iconify.design/ri/send-ins-fill.svg")}
.instagram-icon-button .ig-icon{width:22px;height:22px}.instagram-icon-button.small .ig-icon{width:20px;height:20px}
.instagram-post-more .ig-icon{width:18px;height:18px}.instagram-story-add .ig-icon{width:12px;height:12px}
.instagram-reel-music .ig-icon{width:14px;height:14px}.instagram-profile-button .ig-icon{width:17px;height:17px}
@media (max-width:360px){.instagram-top-actions{gap:14px}.instagram-story{width:69px;flex-basis:69px}.instagram-stories{gap:8px}.instagram-profile-summary{grid-template-columns:86px minmax(0,1fr);gap:11px}.instagram-profile-avatar-wrap{width:86px;height:86px}.instagram-profile-avatar-ring{width:84px;height:84px;min-width:84px;min-height:84px}.instagram-profile-avatar{width:76px;height:76px;min-width:76px;min-height:76px}.instagram-profile-stat span{font-size:10.5px}}

/* Xiaohongshu / RedNote — stable app id "redbook"; one source of UI tokens for every panel and detail view. */

/* Douyin: one component layer. Tokens own all reusable dimensions and colors. */
.douyin-app{--dy-bg:#fff;--dy-ink:#161823;--dy-muted:#96979c;--dy-line:#f1f1f2;--dy-soft:#f6f6f7;--dy-red:#fe2c55;--dy-top:max(10px,env(safe-area-inset-top));--dy-bottom:max(8px,env(safe-area-inset-bottom));--dy-nav:calc(52px + var(--dy-bottom));--dy-head:calc(48px + var(--dy-top));--dy-pad:16px;--dy-icon:24px;--dy-avatar:48px;background:var(--dy-bg);color:var(--dy-ink);font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Noto Sans CJK SC','Microsoft YaHei',sans-serif;-webkit-font-smoothing:antialiased;overflow:hidden;touch-action:pan-y}
.douyin-app *{box-sizing:border-box}.douyin-app :where(button,input,textarea,select){font:inherit;color:inherit}.douyin-app :where(button){appearance:none;border:0;padding:0;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}.douyin-app button:focus-visible{outline:2px solid var(--dy-red);outline-offset:-2px}.douyin-app :where(input,textarea){min-width:0;border:0;outline:none;background:transparent;user-select:text}.douyin-app [hidden]{display:none}.dy-icon-svg{width:var(--dy-icon);height:var(--dy-icon);display:block;flex-shrink:0}.dy-icon-svg svg{width:100%;height:100%;display:block}.dy-fa svg{fill:currentColor}.dy-fa{font-size:var(--dy-icon);width:var(--dy-icon);text-align:center;flex-shrink:0}.dy-app-body{position:absolute;inset:0 0 var(--dy-nav);overflow:hidden}.dy-app-body.dy-full{bottom:0}.dy-scroll{height:100%;overflow:auto;overscroll-behavior:contain;scrollbar-width:none}.dy-scroll::-webkit-scrollbar{display:none}.dy-header{height:var(--dy-head);padding:var(--dy-top) 10px 0;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;background:var(--dy-bg);flex-shrink:0}.dy-header strong{font-size:17px;font-weight:600;text-align:center}.dy-icon-button{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0}.dy-header-end{display:flex;justify-content:flex-end;grid-column:3}.dy-header.dy-wide{grid-template-columns:80px 1fr 80px}.dy-header.dy-clear{background:transparent;color:#fff;position:relative;z-index:3}.dy-header-action{font-size:15px;color:var(--dy-red)}.dy-nav{position:absolute;bottom:0;left:0;right:0;height:var(--dy-nav);padding-bottom:var(--dy-bottom);display:grid;grid-template-columns:repeat(5,1fr);align-items:center;background:#fff;border-top:1px solid var(--dy-line);z-index:5}.dy-nav button{height:52px;color:#7b7b80;font-size:16px;position:relative}.dy-nav button[aria-selected=true]{color:#161823;font-weight:600}.dy-nav .dy-create{display:flex;align-items:center;justify-content:center}.dy-create-mark{display:grid;place-items:center;width:42px;height:29px;border:3px solid #161823;border-radius:8px;color:#161823}.dy-create-mark .dy-icon-svg{--dy-icon:22px}.dy-nav.dy-dark{background:#0b0b0d;border-color:#222;color:#fff}.dy-nav.dy-dark button{color:#a8a8ac}.dy-nav.dy-dark button[aria-selected=true]{color:#fff}.dy-dark .dy-create-mark{background:#fff;color:#0b0b0d;border:0;box-shadow:-4px 0 #25f4ee,4px 0 #fe2c55}.dy-dot{background:var(--dy-red);color:white;min-width:16px;height:16px;border-radius:10px;font-size:10px;padding:0 4px;display:inline-grid;place-items:center;font-weight:400}.dy-nav-label{position:relative;display:inline-block;line-height:1}.dy-nav-label>.dy-dot{position:absolute;top:-8px;left:calc(100% - 2px);margin:0}
/* Feed */
.dy-feed{position:relative;height:100%;background:#090a0c;color:#fff;overflow:hidden;touch-action:none}.dy-feed-photo{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.dy-feed-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0006,transparent 24%,transparent 52%,#0009)}.dy-feed-top{position:relative;z-index:2;display:flex;align-items:center;height:var(--dy-head);padding:var(--dy-top) 6px 0;gap:1px}.dy-feed-top .dy-icon-button{width:36px}.dy-channels{display:flex;justify-content:space-evenly;align-items:center;flex:1;gap:8px;min-width:0}.dy-channels button{position:relative;font-size:17px;white-space:nowrap;color:#fff9;height:38px}.dy-channels button[aria-selected=true]{color:#fff;font-weight:600}.dy-channels button[aria-selected=true]:after{content:'';position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:22px;height:3px;border-radius:2px;background:#fff}.dy-side{position:absolute;right:6px;bottom:26px;display:flex;flex-direction:column;align-items:center;gap:20px;width:54px;z-index:2}.dy-side>button{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:48px;font-size:11px;color:white;text-shadow:0 1px 3px #0006}.dy-side .dy-fa{--dy-icon:34px}.dy-side .dy-side-avatar{position:relative;margin-bottom:2px}.dy-avatar{display:block;width:var(--dy-avatar);height:var(--dy-avatar);border-radius:50%;object-fit:cover;flex-shrink:0;background:#eee}.dy-side-avatar .dy-avatar{border:2px solid #fff}.dy-follow-plus{position:absolute;bottom:-9px;background:var(--dy-red);border-radius:50%;height:20px;width:20px;display:grid;place-items:center}.dy-follow-plus .dy-icon-svg{--dy-icon:14px}.dy-side button.dy-liked{color:var(--dy-red)}.dy-side button.dy-collected{color:#f7bf3c}.dy-disc{width:42px;height:42px;border:8px solid #25252c;border-radius:50%;object-fit:cover}.dy-caption{position:absolute;bottom:23px;left:12px;right:73px;text-shadow:0 1px 3px #0005;z-index:2}.dy-caption h3{font-size:17px;margin:0 0 9px;font-weight:600}.dy-caption p{margin:0;font-size:14px;line-height:1.55}.dy-music{display:flex;align-items:center;gap:6px;margin-top:11px;font-size:12px;max-width:100%;overflow:hidden;white-space:nowrap}.dy-music .dy-icon-svg{--dy-icon:16px}.dy-pause{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);opacity:.65}.dy-pause .dy-fa{--dy-icon:54px}.dy-feed-progress{position:absolute;bottom:0;left:0;height:2px;width:37%;background:#fffb}.dy-feed-friends{position:relative;z-index:2;margin:10px 14px;border-radius:20px;background:#0004;padding:8px 12px;display:inline-flex;gap:8px;align-items:center;font-size:12px}
/* Lists and messages */
.dy-notifications{display:grid;grid-template-columns:repeat(3,1fr);padding:18px 5px 25px}.dy-notification{display:flex;flex-direction:column;gap:10px;align-items:center;font-size:13px}.dy-notification-icon{width:48px;height:48px;border-radius:16px;position:relative;display:grid;place-items:center;background:#fff0f2;color:#ff526d}.dy-notification-icon .dy-fa{--dy-icon:25px}.dy-notification:nth-child(2) .dy-notification-icon{background:#eaf2ff;color:#3887ff}.dy-notification:nth-child(3) .dy-notification-icon{background:#e3f9f0;color:#2ed19d}.dy-notification-icon .dy-dot{position:absolute;right:-7px;top:-5px;border:1px solid #fff}.dy-chat-list{padding:0 14px 12px}.dy-person{width:100%;min-height:72px;display:flex;gap:12px;align-items:center;text-align:left;position:relative}.dy-person-copy{flex:1;min-width:0}.dy-person-name{font-size:16px;font-weight:500;line-height:24px;display:block}.dy-person-copy small{font-size:13px;color:var(--dy-muted);display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;line-height:21px}.dy-person time{align-self:flex-start;margin-top:17px;font-size:11px;color:#a4a4a8}.dy-system-avatar{width:var(--dy-avatar);height:var(--dy-avatar);border-radius:50%;display:grid;place-items:center;background:#438dff;color:#fff}.dy-banner{padding:12px 14px;background:#fafafa;display:flex;gap:8px;align-items:center;font-size:12px}.dy-banner>span{flex:1}.dy-banner button{color:var(--dy-red)}.dy-empty{text-align:center;padding:70px 25px;color:#999;font-size:13px;line-height:24px}.dy-empty .dy-icon-svg{--dy-icon:46px;margin:0 auto 15px;color:#c4c4c7}.dy-empty strong{display:block;color:#555;font-size:16px;margin-bottom:6px;font-weight:500}.dy-list-row{display:flex;align-items:center;gap:12px;min-height:56px;padding:0 var(--dy-pad);width:100%;text-align:left;font-size:15px;background:#fff}.dy-list-row .dy-row-label{flex:1}.dy-list-row .dy-row-value{font-size:13px;color:#939398;max-width:52%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dy-list-row>.dy-icon-svg:last-child{--dy-icon:18px;color:#b5b5b8}.dy-group-gap{height:8px;background:var(--dy-soft)}.dy-section-label{padding:18px 16px 8px;font-size:13px;color:#999}.dy-tabs{display:flex;justify-content:space-around;align-items:center;height:48px;border-bottom:1px solid var(--dy-line);background:#fff;position:sticky;top:0;z-index:2}.dy-tabs button{height:100%;position:relative;color:#8b8b90;font-size:15px;white-space:nowrap}.dy-tabs button[aria-selected=true]{font-weight:600;color:#161823}.dy-tabs button[aria-selected=true]:after{content:'';height:2px;width:28px;background:currentColor;position:absolute;bottom:0;left:50%;transform:translateX(-50%)}
/* Profiles */
.dy-profile-cover{height:164px;background-position:center 48%;background-size:cover;position:relative}.dy-profile-cover:before{content:'';position:absolute;inset:0;background:#0003}.dy-profile-identity{display:flex;gap:14px;align-items:center;padding:0 var(--dy-pad);margin-top:-31px;position:relative;z-index:1}.dy-profile-identity .dy-avatar{--dy-avatar:90px;border:3px solid #fff}.dy-profile-identity h2{font-size:22px;line-height:28px;margin:28px 0 3px;font-weight:600}.dy-profile-identity small{font-size:11px;color:#999}.dy-profile-details{padding:18px var(--dy-pad) 15px}.dy-stats{display:flex;gap:19px;font-size:13px;color:#808087}.dy-stats b{font-size:17px;color:#161823;margin-right:4px;font-weight:600}.dy-profile-bio{margin:16px 0 9px;font-size:14px;line-height:21px}.dy-tags{display:flex;gap:5px;flex-wrap:wrap}.dy-tags span{font-size:11px;background:#f4f4f5;color:#85858a;border-radius:3px;padding:4px 7px}.dy-profile-actions{display:flex;gap:7px;margin-top:16px}.dy-button{height:38px;border-radius:5px;background:#f1f1f2;color:#222;display:flex;align-items:center;justify-content:center;gap:6px;font-size:14px;padding:0 14px;min-width:44px}.douyin-app .dy-button{background:#f1f1f2;padding:0 14px}.douyin-app .dy-primary{background:var(--dy-red);color:white}.dy-profile-actions>.dy-button{flex:1}.dy-profile-actions>.dy-button:last-child{flex:0;padding:0;width:38px}.dy-services{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:15px 10px 20px;border-bottom:6px solid var(--dy-soft)}.dy-services button{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11px;white-space:nowrap}.dy-services .dy-icon-svg{--dy-icon:23px}.dy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px}.dy-tile{position:relative;aspect-ratio:3/4;overflow:hidden}.dy-tile img{width:100%;height:100%;object-fit:cover}.dy-tile span{position:absolute;bottom:7px;left:7px;font-size:11px;color:white;text-shadow:0 1px 3px #0009;display:flex;align-items:center;gap:4px}.dy-tile .dy-icon-svg{--dy-icon:13px}.dy-tile-tag{position:absolute;top:6px;left:6px;background:var(--dy-red);color:white;font-size:10px;padding:3px;border-radius:2px}.dy-edit-avatar{display:flex;align-items:center;flex-direction:column;gap:9px;margin:24px auto 28px;font-size:12px;color:#999}.dy-edit-avatar .dy-avatar{--dy-avatar:86px}.dy-editor{padding:16px}.dy-editor input,.dy-editor textarea{width:100%;background:var(--dy-soft);padding:15px;border-radius:5px;font-size:15px}.dy-editor textarea{height:140px;resize:none}.dy-helper{padding:12px 16px;color:#aaa;font-size:12px;line-height:19px}.dy-toggle{width:44px;height:26px;border-radius:20px;background:#ddd;position:relative}.dy-toggle:after{content:'';position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff}.dy-toggle[aria-checked=true]{background:var(--dy-red)}.dy-toggle[aria-checked=true]:after{left:21px}
/* Search, shopping and local */
.dy-search-header{display:flex;gap:9px;padding:var(--dy-top) 10px 8px;align-items:center;height:var(--dy-head)}.dy-search-header>.dy-icon-button{width:28px}.dy-search-box{flex:1;display:flex;align-items:center;gap:7px;height:36px;background:#f3f3f4;border-radius:7px;padding:0 10px;min-width:0}.dy-search-box .dy-icon-svg{--dy-icon:19px;color:#888}.dy-search-box input{width:100%;font-size:14px}.dy-search-header>button:last-child{font-size:15px;white-space:nowrap}.dy-search-section{padding:18px 16px 6px}.dy-search-section h3{font-size:16px;margin:0 0 16px;display:flex;justify-content:space-between;font-weight:600}.dy-search-section h3 small{font-size:12px;color:#999;font-weight:400}.dy-search-chips{display:flex;flex-wrap:wrap;gap:10px}.dy-search-chips button{padding:8px 12px;background:#f6f6f7;border-radius:4px;font-size:13px}.dy-hot{height:42px;display:flex;align-items:center;width:100%;gap:12px;font-size:14px;text-align:left}.dy-hot b{color:#fe2c55;font-style:italic;width:16px;font-weight:600}.dy-hot span{flex:1}.dy-hot small{color:#aaa;font-size:11px}.dy-two-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:8px}.dy-card{overflow:hidden;border-radius:7px;background:#fff;text-align:left}.dy-card img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}.dy-card p{padding:8px 7px 0;font-size:13px;margin:0;line-height:20px}.dy-card small{display:block;color:#999;padding:6px 7px 10px;font-size:11px}.dy-shop{background:#f5f5f5}.dy-shop .dy-card img{aspect-ratio:1}.dy-shop-top{background:white}.dy-shop-categories{display:flex;gap:24px;padding:14px 16px;white-space:nowrap;overflow:auto;scrollbar-width:none;font-size:14px;background:#fff}.dy-shop-categories .active{font-weight:600;color:var(--dy-red)}.dy-sale{background:#fff;margin:8px;border-radius:8px;padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.dy-sale strong{font-size:17px}.dy-sale small{font-size:11px;color:#e53650;display:block;margin-top:7px}.dy-price{color:#fe2c55;font-size:20px;padding:8px 7px 11px;display:block;font-weight:600}.dy-price small{display:inline;font-size:11px;font-weight:400}.dy-product-hero{width:100%;aspect-ratio:1;object-fit:cover;display:block}.dy-product-info{padding:16px}.dy-product-info h2{font-size:17px;font-weight:500;line-height:25px}.dy-product-info .dy-price{padding-left:0;font-size:28px}.dy-bottom-actions{position:absolute;bottom:0;left:0;right:0;padding:10px 14px var(--dy-bottom);display:flex;gap:8px;background:#fff;border-top:1px solid var(--dy-line)}.dy-bottom-actions .dy-button{flex:1;height:42px}.dy-with-bottom{height:calc(100% - 68px)}.dy-city-head{display:flex;align-items:center;gap:8px;padding:12px 16px;font-size:16px;font-weight:600}.dy-city-head .dy-search-box{font-weight:400}.dy-wallet{background:#fff8ed;margin:16px;border-radius:12px;padding:24px}.dy-wallet small{color:#807160}.dy-wallet h2{font-size:36px;margin:18px 0}.dy-wallet-actions{display:flex;justify-content:space-around;margin:20px 0}.dy-wallet-actions button{display:flex;flex-direction:column;align-items:center;gap:9px;font-size:13px}
/* Dialog and chat */
.dy-layer{position:absolute;z-index:20;inset:0;background:#0006;display:flex;align-items:flex-end}.dy-sheet{width:100%;background:#fff;color:var(--dy-ink);border-radius:14px 14px 0 0;max-height:78%;display:flex;flex-direction:column;overflow:hidden;padding-bottom:var(--dy-bottom)}.dy-sheet-header{height:48px;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;flex-shrink:0}.dy-sheet-header strong{text-align:center;font-size:14px;font-weight:500}.dy-sheet-content{overflow-y:auto;overscroll-behavior:contain}.dy-sheet.dy-comments{height:69%}.dy-comment{display:flex;gap:10px;padding:14px 14px 8px}.dy-comment .dy-avatar{--dy-avatar:34px}.dy-comment-copy{flex:1;min-width:0;font-size:14px;line-height:21px}.dy-comment-copy small{color:#999;font-size:12px}.dy-comment-copy p{margin:3px 0 6px}.dy-comment-copy>button{color:#999;font-size:12px}.dy-comment-heart{display:flex;flex-direction:column;gap:5px;align-items:center;color:#aaa;font-size:10px;margin-top:16px}.dy-comment-heart .dy-icon-svg{--dy-icon:18px}.dy-input-bar{margin-top:auto;display:flex;gap:10px;align-items:center;padding:9px 14px;border-top:1px solid var(--dy-line);background:#fff;flex-shrink:0}.dy-input-bar input{height:38px;border-radius:22px;background:#f5f5f5;padding:0 13px;flex:1;width:100%;font-size:14px}.dy-input-bar button{color:var(--dy-ink)}.dy-input-bar .dy-send{color:var(--dy-red);font-size:14px;white-space:nowrap}.dy-share-row{display:flex;gap:20px;padding:14px 16px 20px;overflow:auto;scrollbar-width:none}.dy-share-row button{display:flex;flex-direction:column;gap:9px;align-items:center;font-size:11px;min-width:52px;white-space:nowrap}.dy-share-round{height:49px;width:49px;background:#f4f4f5;border-radius:50%;display:grid;place-items:center}.dy-sheet-cancel{height:50px;width:100%;border-top:7px solid #f7f7f8;font-size:15px}.dy-chat-screen{height:100%;display:flex;flex-direction:column}.dy-chat-messages{flex:1;overflow:auto;padding:14px 12px;background:#f8f8f8}.dy-chat-time{text-align:center;color:#b0b0b4;font-size:11px;margin:10px 0 22px}.dy-chat-message{display:flex;gap:10px;align-items:flex-start;margin-bottom:22px}.dy-chat-message .dy-avatar{--dy-avatar:38px}.dy-chat-message>div{background:#fff;border-radius:8px;padding:11px 12px;max-width:70%;font-size:15px;line-height:22px}.dy-chat-message.mine{flex-direction:row-reverse}.dy-chat-message.mine>div{background:#d9eeff}.dy-chat-screen .dy-input-bar{padding-bottom:var(--dy-bottom)}.dy-chat-screen .dy-input-bar input{border-radius:8px}.dy-toast{position:absolute;z-index:99;left:50%;bottom:110px;transform:translateX(-50%);max-width:86%;padding:11px 16px;border-radius:6px;background:#24242ee8;color:#fff;font-size:13px;text-align:center;pointer-events:none}
/* Creation */
.dy-create-screen{height:100%;background:#111;color:white;position:relative}.dy-camera-stage{position:absolute;inset:0 0 142px;background:#202124;overflow:hidden}.dy-camera-stage>img,.dy-camera-stage>video{width:100%;height:100%;object-fit:cover}.dy-camera-stage .dy-camera-prompt{position:absolute;top:45%;left:15%;right:15%;text-align:center;font-size:13px;color:#aaa;line-height:24px}.dy-camera-stage .dy-camera-prompt button{margin:14px auto}.dy-create-tools{position:absolute;right:9px;top:82px;display:flex;flex-direction:column;gap:24px}.dy-create-tools button{display:flex;align-items:center;flex-direction:column;gap:5px;font-size:10px}.dy-create-tools .dy-icon-svg{--dy-icon:23px}.dy-record-bottom{position:absolute;bottom:var(--dy-bottom);left:0;right:0}.dy-record-modes{display:flex;justify-content:center;gap:25px;font-size:14px;color:#aaa;margin:12px 0 20px}.dy-record-modes button[aria-selected=true]{color:#fff;font-weight:600}.dy-record-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;width:100%;margin:15px 0}.dy-record-controls>button{display:flex;flex-direction:column;align-items:center;justify-self:center;gap:6px;font-size:11px}.dy-record-controls>button[data-dy-action="capture"]{grid-column:2;justify-self:center}.dy-shutter{width:72px;height:72px;border:3px solid #fff;border-radius:50%;padding:0;position:relative;display:block}.dy-shutter span{position:absolute;left:50%;top:50%;width:56px;height:56px;border-radius:50%;background:var(--dy-red);transform:translate(-50%,-50%)}.dy-music-button{display:flex;align-items:center;justify-content:center;gap:7px;background:#0005;border-radius:18px;font-size:13px;padding:7px 12px}.dy-publish-edit{display:flex;padding:18px 16px;gap:12px;min-height:166px}.dy-publish-edit textarea{flex:1;resize:none;line-height:24px;font-size:16px}.dy-publish-edit img{width:82px;height:110px;object-fit:cover;border-radius:5px}.dy-publish-chips{display:flex;gap:8px;padding:0 16px 22px}.dy-publish-chips button{background:#f5f5f5;border-radius:4px;font-size:12px;padding:8px 10px}.dy-live{height:100%;background:#171821;color:white;position:relative;overflow:hidden}.dy-live>img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:.7}.dy-live .dy-header{background:transparent;color:#fff;position:relative;z-index:1}.dy-live-comment{position:absolute;bottom:80px;left:16px;right:50px;font-size:13px;line-height:26px;text-shadow:0 1px 3px #000}.dy-live .dy-input-bar{position:absolute;bottom:0;left:0;right:0;background:transparent;border:0;padding-bottom:var(--dy-bottom)}.dy-live .dy-input-bar input{background:#0005;color:white}.dy-live .dy-input-bar button{color:white}.dy-live-tag{background:#ff3158;border-radius:3px;padding:2px 5px;font-size:10px;margin-left:6px}.dy-qr{display:block;width:190px;height:190px;margin:30px auto}.dy-qr svg{width:100%;height:100%}.dy-center{text-align:center}.dy-text-content{padding:22px 18px;font-size:14px;line-height:26px;color:#777}.dy-text-content h2{color:#222;font-size:22px}@media(max-width:360px){.dy-channels{gap:5px}.dy-channels button{font-size:15px}.dy-stats{gap:12px}.dy-profile-identity h2{font-size:20px}.dy-services{gap:2px}.dy-side{gap:16px}.dy-side .dy-fa{--dy-icon:31px}}
@media(prefers-reduced-motion:reduce){.douyin-app{transition:none}}

.redbook-app{
  --xhs-red:#ff2442;
  --xhs-ink:#171717;
  --xhs-bg:#fff;
  --xhs-cover:#8d8288;
  --xhs-bottom-core:49px;
  --xhs-bottom-h:calc(var(--xhs-bottom-core) + env(safe-area-inset-bottom));
  --xhs-safe-top:max(8px,env(safe-area-inset-top));
  --xhs-head-h:46px;
  --xhs-feed-gap:4px;
  --xhs-side:12px;
  --xhs-divider-radius:15px;
  --xhs-divider-overlap:15px;
  --xhs-me-content-lift:20px;
  --xhs-me-cover-layout-h:306px;
  --xhs-me-cover-h:326px;
  background:var(--xhs-bg);
  color:var(--xhs-ink);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Noto Sans CJK SC","Helvetica Neue",Arial,sans-serif;
  overflow:hidden;
}
.xhs-shell{position:relative;width:100%;height:100%;overflow:hidden;background:var(--xhs-bg)}
.xhs-panel{position:absolute;inset:0 0 var(--xhs-bottom-h);overflow-y:auto;overflow-x:hidden;background:var(--xhs-bg);scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}
.xhs-panel::-webkit-scrollbar,.xhs-detail-scroll::-webkit-scrollbar,.xhs-chat-main::-webkit-scrollbar{display:none}
.xhs-panel[hidden],.xhs-subpage[hidden]{display:none}

/* Home / Discover */
.xhs-home-chrome{position:sticky;top:0;z-index:9;background:#fff}
.xhs-home-head{height:calc(var(--xhs-head-h) + var(--xhs-safe-top));padding:var(--xhs-safe-top) var(--xhs-side) 0;display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center}
.xhs-home-brand,.xhs-icon-btn,.xhs-me-head button,.xhs-detail-head button,.xhs-chat-head button{appearance:none;border:0;background:transparent;padding:0;display:grid;place-items:center;cursor:pointer}.xhs-detail-head button,.xhs-chat-head button{color:inherit}
.xhs-home-brand{width:32px;height:36px;justify-self:start;color:#292929;font-size:18px}
.xhs-home-tabs{height:100%;display:flex;align-items:center;justify-content:center;gap:28px}
.xhs-home-tab{position:relative;appearance:none;border:0;background:transparent;color:#777;padding:0;font:400 15.5px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;white-space:nowrap;cursor:pointer}
.xhs-home-tab[aria-selected="true"]{color:#151515;font-weight:600}
.xhs-home-tab[aria-selected="true"]::after{content:"";position:absolute;left:50%;bottom:-13px;width:17px;height:2px;border-radius:2px;background:var(--xhs-red);transform:translateX(-50%)}
.xhs-head-actions{display:flex;justify-content:flex-end}.xhs-icon-btn{width:32px;height:36px;color:#222;font-size:18px}
.xhs-topic-strip{height:36px;display:flex;align-items:center;gap:22px;padding:0 var(--xhs-side);overflow-x:auto;white-space:nowrap;scrollbar-width:none;border-top:1px solid #fafafa}
.xhs-topic-strip::-webkit-scrollbar{display:none}.xhs-topic{font-size:11.5px;color:#777;flex:0 0 auto}.xhs-topic.active{font-weight:600;color:#171717}
.xhs-feed{padding:4px var(--xhs-feed-gap) 24px;columns:2;column-gap:var(--xhs-feed-gap)}
.xhs-note{display:inline-block;width:100%;margin:0 0 12px;break-inside:avoid;vertical-align:top;cursor:pointer}
.xhs-color-block{width:100%;border-radius:4px;background:#e5e5e5;overflow:hidden}
.xhs-color-block.r34{aspect-ratio:3/4}.xhs-color-block.r45{aspect-ratio:4/5}.xhs-color-block.r11{aspect-ratio:1/1}.xhs-color-block.r54{aspect-ratio:5/4}
.xhs-color-1{background:#d9d3ce}.xhs-color-2{background:#bfcbd3}.xhs-color-3{background:#d7c0b2}.xhs-color-4{background:#cbd6c0}.xhs-color-5{background:#c8c3d2}.xhs-color-6{background:#dbc7ca}.xhs-color-7{background:#c1d4d0}.xhs-color-8{background:#d8cfae}.xhs-color-9{background:#c5ceda}.xhs-color-10{background:#d4c6bc}
.xhs-note-meta{padding:7px 4px 0}.xhs-note-title{font-size:12px;line-height:17px;font-weight:500;color:#262626;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.xhs-note-foot{margin-top:8px;display:flex;align-items:center;gap:6px}.xhs-avatar-dot{width:18px;height:18px;border-radius:50%;flex:0 0 18px;background:#d7d7d7}.xhs-author-name{min-width:0;max-width:82px;font-size:9.5px;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.xhs-note-like{margin-left:auto;display:flex;align-items:center;gap:3px;font-size:9px;color:#888}.xhs-note-like i{font-size:11px}.xhs-refresh{padding:5px 0 2px;text-align:center;font-size:10px;color:#b7b7b7;column-span:all}

/* Bottom navigation */
.xhs-tabbar{position:absolute;z-index:15;left:0;right:0;bottom:0;height:var(--xhs-bottom-h);padding:0 6px env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(5,1fr);align-items:start;background:#fff;border-top:1px solid #f4f4f4}
.xhs-tab,.xhs-publish{appearance:none;border:0;background:transparent;height:var(--xhs-bottom-core);padding:0;display:grid;place-items:center;cursor:pointer;position:relative}
.xhs-tab{color:#7b7b7b;font:400 13px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.xhs-tab[aria-selected="true"]{color:#171717;font-weight:600}
.xhs-tab>span{position:relative;display:inline-block}.xhs-tab.has-badge>span::after{content:"";position:absolute;top:-3px;left:calc(100% - 1px);width:6px;height:6px;border-radius:50%;background:var(--xhs-red)}
.xhs-publish-mark{width:50px;height:31px;border-radius:8px;background:var(--xhs-red);display:grid;place-items:center;color:#fff;font-size:18px}
.redbook-app.xhs-subpage-open .xhs-tabbar{display:none}

/* Market */
.xhs-market-head{position:sticky;z-index:8;top:0;padding:calc(var(--xhs-safe-top) + 7px) var(--xhs-side) 0;background:#fff}
.xhs-market-top{display:flex;align-items:center;gap:10px}.xhs-search{height:34px;flex:1;border-radius:18px;background:#f5f5f5;display:flex;align-items:center;gap:8px;padding:0 13px;color:#9a9a9a;font-size:11.5px}.xhs-search i{font-size:13px;color:#777}.xhs-market-cart{width:31px;height:34px;display:grid;place-items:center;font-size:18px;color:#222}
.xhs-market-cats{height:43px;display:flex;align-items:center;gap:21px;overflow-x:auto;white-space:nowrap;scrollbar-width:none}.xhs-market-cats::-webkit-scrollbar{display:none}.xhs-market-cat{position:relative;color:#777;font-size:11.5px;flex:0 0 auto}.xhs-market-cat.active{color:#171717;font-weight:600}.xhs-market-cat.active::after{content:"";position:absolute;left:50%;bottom:-12px;width:17px;height:2px;border-radius:2px;background:var(--xhs-red);transform:translateX(-50%)}
.xhs-market-services{background:#fff}.xhs-market-service,.xhs-market-subservice{display:grid;grid-template-columns:repeat(5,1fr);padding:12px 6px 11px}.xhs-market-subservice{padding-top:9px}.xhs-market-tool{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:9.5px;color:#4b4b4b;text-align:center;min-width:0}.xhs-market-tool i{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#f5f5f5;color:#383838;font-size:14px}.xhs-market-subservice .xhs-market-tool i{width:29px;height:29px;background:#fff2f4;color:#ed566c;font-size:12.5px}.xhs-market-promo{margin:2px 10px 9px;height:46px;border-radius:7px;background:#fff0f2;display:flex;align-items:center;justify-content:space-between;padding:0 13px;color:#df425b}.xhs-market-promo strong{font-size:13px;font-weight:600}.xhs-market-promo span{font-size:10px;color:#ea6e80}
.xhs-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--xhs-feed-gap);padding:0 var(--xhs-feed-gap) 24px}.xhs-product-card{min-width:0;cursor:pointer}.xhs-product-copy{padding:7px 4px 0}.xhs-product-title{font-size:12px;line-height:17px;color:#252525;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.xhs-price-meta{margin-top:6px;display:flex;align-items:baseline;gap:6px}.xhs-price{font-size:14px;font-weight:600;color:#ff2442}.xhs-sales{font-size:9px;color:#999}

/* Messages */
.xhs-message-head{position:sticky;z-index:12;top:0;height:calc(52px + var(--xhs-safe-top));padding:var(--xhs-safe-top) 14px 0;background:#fff;display:grid;grid-template-columns:92px minmax(0,1fr) 92px;align-items:center}.xhs-message-spacer{width:100%;height:1px}.xhs-message-title{text-align:center;font-size:17px;font-weight:600;color:#171717;letter-spacing:.1px}.xhs-message-chat{appearance:none;border:0;background:transparent;justify-self:end;height:36px;padding:0;display:flex;align-items:center;gap:5px;color:#222;white-space:nowrap;font:500 12.5px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;cursor:pointer}.xhs-message-chat i{font-size:15px}.xhs-message-quick{display:grid;grid-template-columns:repeat(3,1fr);padding:15px 10px 18px;background:#fff}.xhs-quick{appearance:none;border:0;background:transparent;padding:0;display:flex;flex-direction:column;align-items:center;gap:8px;font:400 11px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:#2c2c2c;cursor:pointer}.xhs-quick-icon{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;font-size:21px}.xhs-quick.like .xhs-quick-icon{background:#fff0f2;color:#f05c71}.xhs-quick.follow .xhs-quick-icon{background:#edf4ff;color:#5d91ea}.xhs-quick.comment .xhs-quick-icon{background:#eaf8f1;color:#56b987}
.xhs-message-list{padding:0 15px 18px;background:#fff}.xhs-message-item{appearance:none;width:100%;min-height:70px;padding:0;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:11px;align-items:center;border:0;border-bottom:1px solid #f2f2f2;background:#fff;text-align:left;font:inherit;cursor:pointer}.xhs-message-avatar{width:48px;height:48px;border-radius:50%;background:#d7d7d7;display:grid;place-items:center;color:#fff;font-size:18px}.xhs-message-name{display:block;font-size:13px;line-height:17px;font-weight:500;color:#242424}.xhs-message-preview{display:block;margin-top:5px;font-size:10.5px;line-height:14px;color:#9b9b9b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.xhs-message-time{align-self:start;padding-top:18px;font-size:9px;color:#b9b9b9}.xhs-message-recommend{padding:14px 15px 24px;border-top:7px solid #f7f7f7}.xhs-message-recommend-title{font-size:13px;font-weight:600;margin-bottom:8px}.xhs-message-recommend-row{display:grid;grid-template-columns:42px minmax(0,1fr) 56px;align-items:center;gap:10px;min-height:58px}.xhs-message-recommend-avatar{width:42px;height:42px;border-radius:50%;background:#ddd}.xhs-message-recommend-name{font-size:11px;color:#555}.xhs-message-follow{height:28px;border:0;border-radius:15px;background:var(--xhs-red);color:#fff;font-size:10.5px}.xhs-group-popover{position:absolute;z-index:46;top:calc(var(--xhs-safe-top) + 44px);right:10px;width:142px;padding:5px 0;border-radius:12px;background:#fff;box-shadow:0 5px 20px rgba(0,0,0,.12);opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .16s ease,transform .16s ease}.xhs-group-popover.open{opacity:1;pointer-events:auto;transform:translateY(0)}.xhs-group-popover button{appearance:none;width:100%;height:43px;padding:0 13px;border:0;background:#fff;display:flex;align-items:center;gap:10px;color:#252525;font:400 12px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;text-align:left}.xhs-group-popover button+button{border-top:1px solid #f2f2f2}.xhs-group-popover i{width:18px;text-align:center;font-size:15px}.xhs-message-detail-head{height:calc(50px + var(--xhs-safe-top));padding:var(--xhs-safe-top) 10px 0;display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;border-bottom:1px solid #f4f4f4;background:#fff}.xhs-message-detail-head button{appearance:none;border:0;background:transparent;width:36px;height:40px;font-size:18px}.xhs-message-detail-title{text-align:center;font-size:16px;font-weight:600}.xhs-message-detail-list{height:calc(100% - 50px - var(--xhs-safe-top));overflow-y:auto;padding:5px 15px 24px;scrollbar-width:none}.xhs-message-detail-list::-webkit-scrollbar{display:none}.xhs-message-event{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:start;padding:13px 0;border-bottom:1px solid #f2f2f2}.xhs-message-event-avatar{width:42px;height:42px;border-radius:50%;background:#d8d8d8}.xhs-message-event-name{font-size:12px;font-weight:500;color:#252525}.xhs-message-event-copy{margin-top:4px;font-size:11px;line-height:17px;color:#777}.xhs-message-event-time{font-size:9px;color:#aaa;padding-top:2px}.xhs-message-event-panel[hidden]{display:none}

/* Me / Profile — only the real white content surface forms the 15px overlapping Section Divider. */
.xhs-me-cover{position:relative;min-height:var(--xhs-me-cover-layout-h);box-sizing:border-box;background:var(--xhs-cover);color:#fff;padding:0 0 30px}
.xhs-me-cover-bg{position:absolute;z-index:0;top:0;left:0;right:0;height:var(--xhs-me-cover-h);background:var(--xhs-cover);pointer-events:none}
.xhs-me-head,.xhs-profile{position:relative;z-index:1}
.xhs-me-head{min-height:calc(47px + var(--xhs-safe-top));padding:var(--xhs-safe-top) 13px 0;display:flex;align-items:center;justify-content:space-between}.xhs-me-head button{width:36px;height:38px;color:#fff;font-size:18px}.xhs-me-actions{display:flex;gap:2px}
.xhs-profile{padding:4px 18px 0}.xhs-profile-top{display:flex;align-items:center;gap:16px}.xhs-profile-avatar{width:72px;height:72px;border-radius:50%;background:#d9d9d9;border:2px solid rgba(255,255,255,.82);flex:0 0 72px}.xhs-profile-name{font-size:18px;line-height:24px;font-weight:600}.xhs-profile-id{margin-top:5px;color:rgba(255,255,255,.74);font-size:10.5px}.xhs-profile-copy{margin-top:12px;font-size:12px;line-height:18px;color:#fff}.xhs-profile-tags{margin-top:7px;display:flex;gap:6px;flex-wrap:wrap}.xhs-profile-tag{padding:3px 7px;border-radius:4px;background:rgba(255,255,255,.14);color:rgba(255,255,255,.86);font-size:9px}.xhs-profile-row{display:flex;align-items:center;gap:13px;margin-top:14px}.xhs-profile-stats{display:flex;gap:24px;flex:1}.xhs-stat{display:flex;flex-direction:column;align-items:center;gap:3px}.xhs-stat b{font-size:14px;color:#fff}.xhs-stat span{font-size:9px;color:rgba(255,255,255,.76)}.xhs-profile-buttons{display:flex;gap:7px}.xhs-profile-btn{height:30px;padding:0 14px;border-radius:16px;border:1px solid rgba(255,255,255,.74);background:transparent;color:#fff;font:500 10.5px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.xhs-profile-btn.icon{width:32px;padding:0;display:grid;place-items:center}
.xhs-me-content{position:relative;z-index:2;margin-top:calc(-1 * (var(--xhs-divider-overlap) + var(--xhs-me-content-lift)));min-height:calc(100% - 210px);border-radius:var(--xhs-divider-radius) var(--xhs-divider-radius) 0 0;background:#fff;padding-top:7px}.xhs-me-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;padding:6px 12px 9px;background:transparent}.xhs-me-tool{height:46px;border-radius:5px;background:#f7f7f7;display:flex;align-items:center;justify-content:center;gap:6px;color:#666;font-size:10px}.xhs-me-tool i{font-size:13px;color:#555}.xhs-profile-tabs{position:sticky;z-index:6;top:0;height:43px;background:#fff;display:flex;align-items:center;justify-content:center;gap:50px}.xhs-profile-tab{position:relative;font-size:12px;color:#777}.xhs-profile-tab.active{color:#222;font-weight:600}.xhs-profile-tab.active::after{content:"";position:absolute;left:50%;bottom:-14px;width:18px;height:2px;border-radius:2px;background:var(--xhs-red);transform:translateX(-50%)}.xhs-profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;padding-bottom:18px}.xhs-profile-tile{aspect-ratio:3/4;background:#ddd;cursor:pointer}.xhs-profile-tile:nth-child(1){background:#d0c8c2}.xhs-profile-tile:nth-child(2){background:#c3ced2}.xhs-profile-tile:nth-child(3){background:#d8c5b8}.xhs-profile-tile:nth-child(4){background:#bdcbbf}.xhs-profile-tile:nth-child(5){background:#d3c2cc}.xhs-profile-tile:nth-child(6){background:#c4c9d4}.xhs-profile-tile:nth-child(7){background:#d9d0b5}.xhs-profile-tile:nth-child(8){background:#c4d2cc}.xhs-profile-tile:nth-child(9){background:#d4c5bd}

/* Shared nested pages */
.xhs-subpage{position:absolute;inset:0;z-index:30;background:#fff;overflow:hidden}.xhs-detail-scroll{height:100%;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:calc(58px + env(safe-area-inset-bottom))}.xhs-detail-head{position:sticky;top:0;z-index:8;height:calc(50px + var(--xhs-safe-top));padding:var(--xhs-safe-top) 10px 0;background:#fff;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;border-bottom:1px solid #f5f5f5}.xhs-detail-back{width:36px;height:40px;font-size:18px}.xhs-detail-author{display:flex;align-items:center;gap:8px;min-width:0}.xhs-detail-avatar{width:32px;height:32px;border-radius:50%;flex:0 0 32px;background:#d8d8d8}.xhs-detail-author-copy{min-width:0}.xhs-detail-name{font-size:12.5px;font-weight:500;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.xhs-detail-sub{margin-top:2px;font-size:9px;color:#999}.xhs-detail-head-actions{display:flex;align-items:center;gap:4px}.xhs-follow-btn{height:29px;padding:0 14px;border:1px solid var(--xhs-red);border-radius:15px;background:#fff;color:var(--xhs-red);font:500 11px/1 inherit}.xhs-detail-share{width:36px;height:38px;font-size:18px}.xhs-detail-share i{transform:translateY(-1px)}.xhs-solid-media{width:100%;background:#c9c9c9}.xhs-note-detail-media{aspect-ratio:1/1}.xhs-media-dots{height:22px;display:flex;align-items:center;justify-content:center;gap:5px}.xhs-media-dots span{width:4px;height:4px;border-radius:50%;background:#d2d2d2}.xhs-media-dots span.active{width:5px;height:5px;background:#555}.xhs-note-detail-copy{padding:0 15px 15px}.xhs-note-detail-title{font-size:17px;line-height:24px;font-weight:600;color:#1f1f1f}.xhs-note-detail-text{margin-top:8px;font-size:13.5px;line-height:21px;color:#333}.xhs-note-detail-tags{margin-top:8px;font-size:13px;line-height:20px;color:#295c9a}.xhs-note-detail-meta{margin-top:12px;font-size:9.5px;color:#aaa}.xhs-note-product-link{margin:12px 15px;padding:11px 12px;border:1px solid #ededed;border-radius:8px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px}.xhs-note-product-swatch{width:38px;height:38px;border-radius:5px;background:#d5c8c0}.xhs-note-product-name{font-size:11.5px;color:#333;line-height:16px}.xhs-note-product-price{font-size:12px;font-weight:600;color:var(--xhs-red)}.xhs-comment-section{border-top:8px solid #f7f7f7;padding:15px 15px 24px}.xhs-comment-title{font-size:12.5px;font-weight:600;color:#333;margin-bottom:13px}.xhs-comment{display:grid;grid-template-columns:34px minmax(0,1fr) 22px;gap:9px;padding:9px 0}.xhs-comment-avatar{width:34px;height:34px;border-radius:50%;background:#ddd}.xhs-comment-name{font-size:10px;color:#999}.xhs-comment-text{margin-top:4px;font-size:12px;line-height:18px;color:#333}.xhs-comment-meta{margin-top:5px;font-size:9px;color:#aaa}.xhs-comment-like{font-size:13px;color:#aaa;text-align:center;padding-top:4px}.xhs-note-actionbar{position:absolute;z-index:10;left:0;right:0;bottom:0;height:calc(58px + env(safe-area-inset-bottom));padding:0 12px env(safe-area-inset-bottom);background:#fff;border-top:1px solid #eee;display:grid;grid-template-columns:minmax(0,1fr) repeat(3,46px);gap:4px;align-items:center}.xhs-note-input{height:36px;border-radius:19px;background:#f5f5f5;display:flex;align-items:center;padding:0 13px;color:#999;font-size:11px}.xhs-note-action{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:8.5px;color:#666}.xhs-note-action i{font-size:18px;color:#333}

/* Product detail */
.xhs-product-detail-head{grid-template-columns:38px minmax(0,1fr) 38px}.xhs-product-head-title{text-align:center;font-size:15px;font-weight:600}.xhs-product-detail-media{aspect-ratio:1/1;background:#c8cfd4}.xhs-product-main{padding:12px 15px 13px}.xhs-product-price-row{display:flex;align-items:baseline;gap:6px}.xhs-product-price-now{font-size:23px;font-weight:650;color:var(--xhs-red)}.xhs-product-price-old{font-size:10px;color:#aaa;text-decoration:line-through}.xhs-product-detail-title{margin-top:7px;font-size:14.5px;line-height:20px;font-weight:550;color:#202020}.xhs-product-stats{margin-top:7px;font-size:9.5px;color:#999}.xhs-product-section{border-top:8px solid #f7f7f7;background:#fff;padding:0 15px}.xhs-product-row{min-height:48px;display:grid;grid-template-columns:48px minmax(0,1fr) 18px;align-items:center;border-bottom:1px solid #f2f2f2;font-size:11px}.xhs-product-row:last-child{border-bottom:0}.xhs-product-row-label{color:#888}.xhs-product-row-value{color:#333}.xhs-product-row i{justify-self:end;color:#aaa;font-size:10px}.xhs-product-guarantee{display:flex;gap:13px;flex-wrap:wrap;padding:11px 0;font-size:10px;color:#666}.xhs-product-guarantee span::before{content:"✓";margin-right:3px;color:#666}.xhs-product-review-head{display:flex;justify-content:space-between;align-items:center;padding:13px 0 9px;font-size:12px}.xhs-product-review-head strong{font-weight:600}.xhs-product-review-head span{font-size:10px;color:#999}.xhs-product-shop{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 0}.xhs-product-shop-logo{width:42px;height:42px;border-radius:50%;background:#d8d0ca}.xhs-product-shop-name{font-size:12px;font-weight:500}.xhs-product-shop-sub{margin-top:3px;font-size:9px;color:#999}.xhs-product-shop-enter{height:28px;padding:0 12px;border:1px solid #ddd;border-radius:15px;background:#fff;color:#555;font-size:10px}.xhs-product-desc{padding:15px}.xhs-product-desc-title{font-size:13px;font-weight:600;margin-bottom:11px}.xhs-product-desc-copy{font-size:11px;line-height:19px;color:#666}.xhs-product-buybar{position:absolute;z-index:10;left:0;right:0;bottom:0;height:calc(60px + env(safe-area-inset-bottom));padding:0 10px env(safe-area-inset-bottom);display:grid;grid-template-columns:42px 42px 1fr 1fr;gap:7px;align-items:center;background:#fff;border-top:1px solid #eee}.xhs-product-mini-action{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:8px;color:#666}.xhs-product-mini-action i{font-size:17px;color:#333}.xhs-buy-btn{height:39px;border:0;border-radius:20px;font:600 12px/1 inherit}.xhs-buy-btn.cart{background:#fff1f3;color:#ff2442}.xhs-buy-btn.buy{background:#ff2442;color:#fff}

/* Chat detail */
.xhs-chat-page{background:#f5f5f5}.xhs-chat-head{height:calc(51px + var(--xhs-safe-top));padding:var(--xhs-safe-top) 9px 0;background:#fff;display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:center;border-bottom:1px solid #ededed}.xhs-chat-back,.xhs-chat-more{width:36px;height:40px;font-size:18px}.xhs-chat-user{text-align:center;min-width:0}.xhs-chat-user strong{display:block;font-size:14px;font-weight:600;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.xhs-chat-user span{display:block;margin-top:2px;font-size:9px;color:#999}.xhs-chat-main{position:absolute;top:calc(51px + var(--xhs-safe-top));left:0;right:0;bottom:calc(55px + env(safe-area-inset-bottom));overflow-y:auto;scrollbar-width:none;padding:14px 12px 18px;background:#f5f5f5}.xhs-chat-time{text-align:center;font-size:9px;color:#aaa;margin:2px 0 15px}.xhs-chat-line{display:flex;align-items:flex-start;gap:8px;margin-bottom:14px}.xhs-chat-line.me{justify-content:flex-end}.xhs-chat-avatar{width:34px;height:34px;border-radius:50%;background:#d3d3d3;flex:0 0 34px}.xhs-chat-bubble{max-width:72%;padding:9px 11px;border-radius:10px;background:#fff;color:#333;font-size:12px;line-height:18px;word-break:break-word}.xhs-chat-line.me .xhs-chat-bubble{background:#ffedf0}.xhs-chat-photo{width:126px;height:158px;border-radius:8px;background:#c7d0cf}.xhs-chat-inputbar{position:absolute;z-index:10;left:0;right:0;bottom:0;height:calc(55px + env(safe-area-inset-bottom));padding:0 10px env(safe-area-inset-bottom);display:grid;grid-template-columns:34px minmax(0,1fr) 34px 46px;gap:7px;align-items:center;background:#fff;border-top:1px solid #ededed}.xhs-chat-tool{width:34px;height:38px;border:0;background:transparent;font-size:18px;color:#555}.xhs-chat-input{height:36px;border-radius:18px;background:#f5f5f5;padding:0 13px;display:flex;align-items:center;color:#999;font-size:11px}.xhs-chat-send{height:32px;border:0;border-radius:16px;background:var(--xhs-red);color:#fff;font-size:10.5px}

/* Create */
.xhs-share-layer{position:absolute;inset:0;z-index:70;background:rgba(0,0,0,.32);display:flex;align-items:flex-end;opacity:0;pointer-events:none;transition:opacity .18s ease}.xhs-share-layer.open{opacity:1;pointer-events:auto}.xhs-share-sheet{width:100%;padding:14px 14px calc(12px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;background:#fff;transform:translateY(100%);transition:transform .2s ease}.xhs-share-layer.open .xhs-share-sheet{transform:translateY(0)}.xhs-share-title{text-align:center;font-size:13px;font-weight:600;color:#222;padding:2px 0 14px}.xhs-share-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.xhs-share-dest{appearance:none;border:0;background:transparent;padding:0 0 13px;display:flex;flex-direction:column;align-items:center;gap:7px;color:#333;font:400 10px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.xhs-share-dest i{width:45px;height:45px;border-radius:50%;background:#f5f5f5;display:grid;place-items:center;font-size:18px;color:#333}.xhs-share-actions{border-top:1px solid #f0f0f0;padding-top:12px}.xhs-share-action{appearance:none;width:100%;height:42px;border:0;background:#fff;display:flex;align-items:center;gap:11px;padding:0 4px;color:#333;font:400 12px/1 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}.xhs-share-action i{width:22px;text-align:center;font-size:15px}.xhs-share-cancel{appearance:none;width:100%;height:45px;margin-top:8px;border:0;border-radius:10px;background:#f6f6f6;color:#333;font-size:12px}
.xhs-compose{position:absolute;z-index:40;inset:0;display:flex;align-items:flex-end;background:rgba(0,0,0,.34);opacity:0;visibility:hidden;pointer-events:none;transition:opacity 160ms ease,visibility 0s linear 160ms}.xhs-compose.open{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.xhs-compose-sheet{width:100%;background:#fff;border-radius:18px 18px 0 0;overflow:hidden;transform:translateY(12px);transition:transform 200ms ease;padding-bottom:env(safe-area-inset-bottom)}.xhs-compose.open .xhs-compose-sheet{transform:translateY(0)}.xhs-compose-action{appearance:none;border:0;background:#fff;width:100%;min-height:70px;padding:0 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#222;font-family:inherit}.xhs-compose-action+.xhs-compose-action{border-top:1px solid #f5f5f5}.xhs-compose-action strong{font-size:16px;font-weight:500}.xhs-compose-action span{margin-top:5px;font-size:11px;color:#999}.xhs-compose-cancel-wrap{padding-top:7px;background:#f6f6f6}.xhs-compose-cancel{appearance:none;border:0;background:#fff;width:100%;height:54px;color:#333;font:400 15px/1 inherit}

@media (max-width:350px){.xhs-home-tabs{gap:22px}.xhs-topic-strip{gap:18px}.xhs-feed{--xhs-feed-gap:3px}.xhs-profile{padding-inline:15px}.xhs-profile-stats{gap:18px}.xhs-profile-tabs{gap:42px}.xhs-product-buybar{grid-template-columns:38px 38px 1fr 1fr}}
@media (prefers-reduced-motion:reduce){.xhs-compose,.xhs-compose-sheet{transition:none}}



/* Weibo Android 16.9.x reference reconstruction. Single current layer. */
.weibo-app{
  --wb-orange:#ff8200;--wb-red:#e6162d;--wb-text:#1a1a1a;--wb-bg:#f2f2f2;--wb-safe-bottom:env(safe-area-inset-bottom,0px);
  background:var(--wb-bg);color:var(--wb-text);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
}
.weibo-app,.weibo-app *{box-sizing:border-box}.weibo-reset{appearance:none;border:0;background:none;color:inherit;font:inherit;margin:0;padding:0}.weibo-shell{position:absolute;inset:0;background:var(--wb-bg);overflow:hidden}.weibo-panels{position:absolute;inset:0 0 calc(52px + var(--wb-safe-bottom));overflow:hidden}.weibo-panel{display:block;height:100%;overflow-y:auto;overscroll-behavior:contain;background:var(--wb-bg);scrollbar-width:none;-webkit-overflow-scrolling:touch}.weibo-panel::-webkit-scrollbar{display:none}.weibo-panel[hidden]{display:none}.weibo-app i[class^="ri-"],.weibo-app i[class*=" ri-"]{font-size:21px;line-height:1;font-weight:400}
/* 首页：以 16.9.x 商店截图的关注/推荐顶栏与信息流密度为基准 */
.weibo-topbar{height:47px;padding:0 10px;display:grid;grid-template-columns:70px 1fr 70px;align-items:center;background:#fff;border-bottom:1px solid #f3f3f3;position:sticky;top:0;z-index:15}.weibo-top-left,.weibo-top-actions{display:flex;align-items:center}.weibo-top-actions{justify-content:flex-end;gap:7px}.weibo-top-icon{width:29px;height:29px;display:grid;place-items:center;color:#222}.weibo-top-icon i{font-size:21px}.weibo-task-icon{width:27px;height:27px;border-radius:7px;background:linear-gradient(145deg,#ff6e39,#f23536);color:#fff;display:grid;place-items:center}.weibo-task-icon i{font-size:17px}.weibo-top-icon.orange{width:28px;height:28px;border-radius:50%;background:var(--wb-orange);color:#fff}.weibo-top-icon.orange i{font-size:19px}.weibo-main-tabs{height:100%;display:flex;align-items:center;justify-content:center;gap:27px}.weibo-main-tab{height:100%;position:relative;display:flex;align-items:center;gap:1px;font-size:16px;color:#777;font-weight:500;white-space:nowrap}.weibo-main-tab>i{font-size:12px;margin-top:2px}.weibo-main-tab[aria-selected="true"]{color:#151515;font-weight:650}.weibo-main-tab[aria-selected="true"]::after{content:"";position:absolute;width:17px;height:2px;border-radius:2px;background:var(--wb-orange);left:50%;bottom:2px;transform:translateX(-50%)}
.weibo-feed{display:flex;flex-direction:column;gap:7px}.weibo-post{background:#fff;padding:10px 11px 0}.weibo-post-head{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:8px;align-items:start}.wb-avatar{width:40px;height:40px;border-radius:50%;background:#d0d0d0;position:relative;flex:none}.wb-avatar.sm{width:34px;height:34px}.wb-avatar.dark{background:#aaa}.wb-avatar.light{background:#dedede}.wb-avatar::after{content:"";position:absolute;inset:4px;border-radius:50%;border:1px solid rgba(255,255,255,.55)}.weibo-author-line{--wb-author-badge-size:13px;display:flex;align-items:center;gap:3px;min-height:20px}.weibo-author{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wb-author-badge{width:var(--wb-author-badge-size);height:var(--wb-author-badge-size);color:#4b9eea;display:inline-grid;place-items:center;align-self:center;line-height:0;flex:0 0 var(--wb-author-badge-size)}.wb-author-badge[data-badge="vip"]{color:#f3a11e}.wb-badge-icon{width:var(--wb-author-badge-size);height:var(--wb-author-badge-size);display:block;overflow:visible}.weibo-meta{font-size:9.5px;color:#aaa;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weibo-post-actions-top{display:flex;align-items:center;gap:4px}.weibo-follow{height:25px;padding:0 10px;border:1px solid #ffad61;color:var(--wb-orange);border-radius:13px;font-size:10.5px}.weibo-post-more{width:27px;height:26px;color:#aaa;display:grid;place-items:center}.weibo-post-more i{font-size:18px}.weibo-post-body{padding:7px 0 8px;font-size:13.5px;line-height:1.55;color:#202020;word-break:break-word}.weibo-post-body .topic,.weibo-post-body .link{color:#507ea5}.wb-media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;width:min(276px,100%);margin-bottom:8px}.wb-media{aspect-ratio:1;background:#d6d6d6;border-radius:1px}.wb-media:nth-child(2){background:#c7c7c7}.wb-media:nth-child(3){background:#dfdfdf}.wb-wide-media{height:181px;background:#d0d0d0;border-radius:2px;margin:0 0 8px;position:relative}.wb-media-count{position:absolute;right:6px;bottom:6px;height:20px;padding:0 6px;border-radius:2px;background:rgba(0,0,0,.46);color:#fff;display:flex;align-items:center;gap:3px;font-size:9px}.wb-media-count i{font-size:13px}.weibo-post-foot{height:36px;border-top:1px solid #f2f2f2;display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.weibo-post-foot button{height:100%;display:flex;align-items:center;justify-content:center;gap:5px;color:#777;font-size:11px}.weibo-post-foot .ri-chat-3-line{font-size:17.1px}.weibo-post-foot .ri-thumb-up-line{font-size:12.8px;stroke-width:1.6}.weibo-post-foot .wb-xhs-share-svg{width:22.5px;height:22.5px;display:block;flex:0 0 22.5px}.weibo-app[data-weibo-home-mode="following"] .wb-only-recommend{display:none}.weibo-app[data-weibo-home-mode="recommend"] .wb-only-following{display:none}
/* 超话：当前底部第二入口使用菱形超话标识，不再误作独立视频 Tab */
.wb-super-panel{background:#f4f4f4}.wb-super-top{height:47px;background:#fff;display:grid;grid-template-columns:52px 1fr 52px;align-items:center;position:sticky;top:0;z-index:12;border-bottom:1px solid #f1f1f1}.wb-super-top>button{width:40px;height:40px;display:grid;place-items:center}.wb-super-top .left{justify-self:start;margin-left:4px}.wb-super-top .right{justify-self:end;margin-right:4px;color:var(--wb-orange)}.wb-super-top>button i{font-size:22px}.wb-super-tabs{height:100%;display:flex;align-items:center;justify-content:center;gap:34px}.wb-super-tab{height:100%;position:relative;display:flex;align-items:center;font-size:15px;color:#777}.wb-super-tab.active{color:#151515;font-weight:650}.wb-super-tab.active::after{content:"";position:absolute;left:50%;bottom:2px;width:19px;height:2px;background:var(--wb-orange);border-radius:2px;transform:translateX(-50%)}.wb-super-section{background:#fff;margin-top:7px}.wb-super-head{height:42px;padding:0 12px;display:flex;align-items:center;font-size:14px;font-weight:650}.wb-super-head span{margin-left:auto;font-size:10px;font-weight:400;color:#aaa}.wb-super-mine{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;padding:1px 12px 12px}.wb-super-mine::-webkit-scrollbar{display:none}.wb-super-chip{width:66px;flex:0 0 66px;text-align:center}.wb-super-avatar{width:48px;height:48px;margin:0 auto 5px;border-radius:9px;background:#d0d0d0;position:relative}.wb-super-avatar::after{content:"";position:absolute;inset:5px;border:1px solid rgba(255,255,255,.6);border-radius:6px}.wb-super-chip strong{display:block;font-size:10.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wb-super-chip span{display:block;font-size:9px;color:#aaa;margin-top:2px}.wb-super-tools{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;padding:0 12px 12px}.wb-super-tool{height:50px;border-radius:4px;background:#fafafa;display:flex;align-items:center;padding:0 12px;gap:9px}.wb-super-tool i{font-size:23px;color:#ff8b29}.wb-super-tool:nth-child(2) i{color:#5c95db}.wb-super-tool strong{display:block;font-size:11px;font-weight:600}.wb-super-tool span{display:block;font-size:9px;color:#aaa;margin-top:3px}.wb-super-post{padding:10px 12px;border-top:1px solid #f1f1f1}.wb-super-post-head{display:grid;grid-template-columns:36px 1fr auto;gap:8px;align-items:center}.wb-super-post-title{font-size:12px;font-weight:600}.wb-super-post-meta{font-size:9px;color:#aaa;margin-top:2px}.wb-super-post-head>i{font-size:18px;color:#aaa}.wb-super-copy{margin:8px 0 7px;font-size:12.5px;line-height:1.5}.wb-super-post-media{height:150px;background:#d2d2d2;border-radius:2px}
/* 发现：搜索 + 发现/趋势/榜单 + 双栏微博热搜 */
.wb-discover{background:#f4f4f4}.wb-discover-head{background:#fff;position:sticky;top:0;z-index:12;padding:7px 10px 0;border-bottom:1px solid #f0f0f0}.wb-discover-search{height:32px;border-radius:16px;background:#f2f2f2;display:grid;grid-template-columns:22px 1fr 22px;align-items:center;padding:0 10px;color:#8f8f8f;font-size:11.5px}.wb-discover-search i{font-size:16px}.wb-discover-search .scan{justify-self:end;color:#666}.wb-discover-tabs{height:38px;display:flex;align-items:center;justify-content:center;gap:44px}.wb-discover-tab{height:100%;position:relative;display:flex;align-items:center;font-size:14px;color:#777}.wb-discover-tab.active{color:#171717;font-weight:650}.wb-discover-tab.active::after{content:"";position:absolute;left:50%;bottom:1px;width:18px;height:2px;background:var(--wb-orange);border-radius:2px;transform:translateX(-50%)}.wb-hot-card{background:#fff;margin-top:7px;padding:0 11px}.wb-hot-title{height:42px;display:flex;align-items:center}.wb-hot-title .brand{color:var(--wb-red);font-size:20px;margin-right:6px}.wb-hot-title strong{font-size:15px}.wb-hot-title span{margin-left:auto;color:#aaa;font-size:9.5px}.wb-hot-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:13px;border-top:1px solid #f3f3f3;padding:4px 0 3px}.wb-hot-row{height:31px;display:grid;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:3px;min-width:0}.wb-hot-rank{font-size:11px;color:#9d9d9d;font-weight:600;text-align:center}.wb-hot-row:nth-child(1) .wb-hot-rank,.wb-hot-row:nth-child(2) .wb-hot-rank,.wb-hot-row:nth-child(3) .wb-hot-rank{color:#ef533e}.wb-hot-name{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wb-hot-mark{font-size:8px;line-height:13px;padding:0 2px;border-radius:2px;color:#fff;background:#ff5a51}.wb-hot-mark.new{background:#ff8a25}.wb-hot-mark.boil{background:#f22}.wb-hot-footer{height:34px;border-top:1px solid #f2f2f2;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--wb-orange)}.wb-discover-services{background:#fff;margin-top:7px;display:grid;grid-template-columns:repeat(5,1fr);padding:12px 5px 13px}.wb-service{text-align:center;font-size:9.5px;color:#555}.wb-service-icon{width:30px;height:30px;margin:0 auto 5px;display:grid;place-items:center}.wb-service-icon i{font-size:22px}.wb-service:nth-child(1) .wb-service-icon{color:#ef7541}.wb-service:nth-child(2) .wb-service-icon{color:#4b93d3}.wb-service:nth-child(3) .wb-service-icon{color:#e7566b}.wb-service:nth-child(4) .wb-service-icon{color:#8f68c8}.wb-service:nth-child(5) .wb-service-icon{color:#58a47a}.wb-discover-feed{background:#fff;margin-top:7px}.wb-section-title{height:40px;display:flex;align-items:center;padding:0 11px;font-size:14px;font-weight:650;border-bottom:1px solid #f1f1f1}.wb-mini-trend{padding:10px 11px}.wb-mini-trend strong{font-size:13px;display:block;margin-bottom:5px}.wb-mini-trend p{font-size:12.5px;line-height:1.5;margin:0 0 6px}.wb-mini-trend span{font-size:9.5px;color:#999}
/* 消息：发现群/动态/消息 + 搜索 + @/评论/赞 */
.wb-message-top{height:47px;background:#fff;display:grid;grid-template-columns:1fr auto;align-items:end;padding:0 9px;border-bottom:1px solid #eee;position:sticky;top:0;z-index:12}.wb-message-tabs{height:100%;display:flex;align-items:flex-end;gap:24px}.wb-message-tab{height:100%;display:flex;align-items:center;position:relative;font-size:15px;color:#666}.wb-message-tab.active{font-weight:650;color:#111}.wb-message-tab.active::after{content:"";position:absolute;bottom:1px;left:50%;width:18px;height:2px;border-radius:2px;background:var(--wb-orange);transform:translateX(-50%)}.wb-msg-actions{height:100%;display:flex;align-items:center;gap:3px}.wb-msg-actions button{width:30px;height:32px;display:grid;place-items:center}.wb-msg-actions i{font-size:20px}.wb-msg-search{background:#fff;padding:7px 10px}.wb-search-pill{height:31px;border-radius:16px;background:#f2f2f2;display:flex;align-items:center;justify-content:center;gap:4px;color:#999;font-size:11px}.wb-search-pill i{font-size:16px}.wb-notice-list{background:#fff;margin-bottom:7px}.wb-notice-row{height:58px;display:grid;grid-template-columns:40px 1fr 18px;align-items:center;gap:9px;padding:0 11px;border-bottom:1px solid #f2f2f2}.wb-notice-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#56a9df}.wb-notice-row:nth-child(2) .wb-notice-icon{background:#48bd8e}.wb-notice-row:nth-child(3) .wb-notice-icon{background:#ffad2f}.wb-notice-icon i{font-size:20px}.wb-notice-name{font-size:13.5px}.wb-notice-row>i{font-size:17px;color:#bbb}.wb-thread-list{background:#fff}.wb-thread{min-height:64px;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 11px;border-bottom:1px solid #f2f2f2}.wb-thread .wb-avatar{width:44px;height:44px}.wb-thread-main{min-width:0}.wb-thread-title{font-size:13.5px;font-weight:520;margin-bottom:4px}.wb-thread-preview{font-size:10.5px;color:#999;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wb-thread-time{font-size:9.5px;color:#aaa;align-self:start;margin-top:4px}.wb-thread-badge{background:#f33;color:#fff;border-radius:9px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;font-size:8.5px;margin-top:5px;margin-left:auto}
/* 我：三项资料数据 + 会员卡 + 8 宫格 + 经常访问 */
.wb-me{background:#f4f4f4}.wb-me-hero{background:#fff;padding:4px 11px 11px}.wb-me-actions{height:36px;display:flex;justify-content:flex-end;align-items:center;gap:8px}.wb-me-actions button{width:28px;height:30px;display:grid;place-items:center}.wb-me-actions i{font-size:20px}.wb-profile-row{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:2px}.wb-profile-avatar{width:60px;height:60px;border-radius:50%;background:#c9c9c9;border:2px solid #fff;box-shadow:0 0 0 1px #ededed}.wb-profile-name{font-size:18px;font-weight:700;display:flex;align-items:center;gap:5px}.wb-vip-mini{height:16px;border-radius:8px;background:#f2b733;color:#fff;font-size:8.5px;padding:0 5px;display:inline-flex;align-items:center}.wb-profile-bio{font-size:10.5px;color:#999;margin-top:4px}.wb-profile-chevron{color:#bbb}.wb-profile-chevron i{font-size:18px}.wb-profile-stats{height:50px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;margin-top:5px}.wb-stat{text-align:center}.wb-stat strong{display:block;font-size:15px}.wb-stat span{font-size:9.5px;color:#777}.wb-vip-strip{height:46px;background:linear-gradient(100deg,#5e3b78 0%,#90516b 55%,#c9784f 100%);margin-top:2px;padding:0 11px;display:flex;align-items:center;color:#fff;border-radius:5px}.wb-vip-strip i{font-size:19px;margin-right:7px;color:#ffd980}.wb-vip-strip strong{font-size:11.5px}.wb-vip-strip span{font-size:9px;color:rgba(255,255,255,.75);margin-left:6px}.wb-vip-strip b{margin-left:auto;font-size:9.5px;font-weight:500}.wb-me-card{background:#fff;margin-top:7px;padding:10px 11px}.wb-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);row-gap:15px;padding:3px 0}.wb-feature{text-align:center;font-size:9.5px;color:#555}.wb-feature-icon{width:30px;height:28px;margin:0 auto 4px;display:grid;place-items:center}.wb-feature-icon i{font-size:22px}.wb-feature:nth-child(1) .wb-feature-icon{color:#6b9bd0}.wb-feature:nth-child(2) .wb-feature-icon{color:#ef8f4f}.wb-feature:nth-child(3) .wb-feature-icon{color:#8379c1}.wb-feature:nth-child(4) .wb-feature-icon{color:#68a18d}.wb-feature:nth-child(5) .wb-feature-icon{color:#dd7a56}.wb-feature:nth-child(6) .wb-feature-icon{color:#7598bb}.wb-feature:nth-child(7) .wb-feature-icon{color:#ca8c58}.wb-feature:nth-child(8) .wb-feature-icon{color:#738dbc}.wb-card-title{display:flex;align-items:center;height:25px;font-size:13.5px;font-weight:650}.wb-card-title span{font-size:9.5px;color:#aaa;font-weight:400;margin-left:auto}.wb-frequent{display:flex;gap:13px;padding:8px 1px 2px}.wb-frequent-person{text-align:center;font-size:9.5px;color:#666;width:49px}.wb-frequent-person .wb-avatar{margin:0 auto 5px}
/* 底部主导航：官方当前结构 首页 / 超话 / 发现 / 消息 / 我 */
.weibo-tabbar{position:absolute;left:0;right:0;bottom:0;height:calc(52px + var(--wb-safe-bottom));padding-bottom:var(--wb-safe-bottom);display:grid;grid-template-columns:repeat(5,1fr);align-items:stretch;background:#fff;border-top:1px solid #e9e9e9;z-index:20}.weibo-tab{height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#777;position:relative}.wb-nav-icon{height:24px;display:grid;place-items:center}.wb-nav-icon i{font-size:22px}.wb-nav-icon .fill{display:none}.weibo-tab .label{font-size:9.5px;line-height:12px;position:relative;display:inline-block}.weibo-tab[aria-selected="true"]{color:#171717}.weibo-tab[aria-selected="true"] .line{display:none}.weibo-tab[aria-selected="true"] .fill{display:inline-block}.wb-tab-badge{position:absolute;top:-8px;left:calc(100% - 2px);min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:#f33;color:#fff;font-size:8px;display:grid;place-items:center;border:1px solid #fff}
/* 发布 */
.weibo-compose{position:absolute;inset:0;z-index:60;visibility:hidden;pointer-events:none}.weibo-compose[aria-hidden="false"]{visibility:visible;pointer-events:auto}.weibo-compose-mask{position:absolute;inset:0;background:rgba(0,0,0,.35);opacity:0;transition:opacity .18s ease}.weibo-compose[aria-hidden="false"] .weibo-compose-mask{opacity:1}.weibo-compose-sheet{position:absolute;left:0;right:0;bottom:0;background:#fff;border-radius:16px 16px 0 0;padding:17px 17px calc(15px + var(--wb-safe-bottom));transform:translateY(100%);transition:transform .2s ease}.weibo-compose[aria-hidden="false"] .weibo-compose-sheet{transform:translateY(0)}.weibo-compose-handle{width:34px;height:4px;border-radius:2px;background:#ddd;margin:0 auto 15px}.weibo-compose-title{text-align:center;font-size:15px;font-weight:650;margin-bottom:18px}.weibo-compose-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.weibo-compose-item{text-align:center;font-size:10.5px;color:#666}.weibo-compose-item .circle{width:48px;height:48px;border-radius:50%;margin:0 auto 6px;background:#f6f6f6;display:grid;place-items:center;color:var(--wb-orange)}.weibo-compose-item .circle i{font-size:23px}.weibo-compose-close{width:36px;height:36px;border-radius:50%;background:#f2f2f2;margin:20px auto 0;display:grid;place-items:center;color:#555}.weibo-compose-close i{font-size:20px}@media(max-width:380px){.weibo-main-tabs{gap:23px}.wb-hot-grid{column-gap:9px}.wb-super-mine{gap:10px}.wb-feature-grid{row-gap:13px}}@media(prefers-reduced-motion:reduce){.weibo-compose-mask,.weibo-compose-sheet{transition:none}}
/* YouTube Android 17.18.x · May 2022 — single authoritative component tree. */
.youtube-app{--yt-ink:#030303;--yt-safe-top:env(safe-area-inset-top);--yt-safe-bottom:env(safe-area-inset-bottom);--yt-top:56px;--yt-nav-core:50px;--yt-nav-h:calc(var(--yt-nav-core) + var(--yt-safe-bottom));background:#fff;color:var(--yt-ink);font-family:Roboto,Arial,"PingFang SC",sans-serif;overflow:hidden}.youtube-app *{box-sizing:border-box}.yt-reset{appearance:none;border:0;background:transparent;padding:0;color:inherit;font:inherit}.yt-shell{position:relative;width:100%;height:100%;overflow:hidden;background:#fff}.yt-panels{position:absolute;inset:0 0 var(--yt-nav-h);overflow:hidden;background:#fff}.yt-panel{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;background:#fff;scrollbar-width:none;-webkit-overflow-scrolling:touch}.yt-panel::-webkit-scrollbar,.yt-topic-row::-webkit-scrollbar,.yt-channel-strip::-webkit-scrollbar,.yt-recent-strip::-webkit-scrollbar{display:none}.yt-panel[hidden]{display:none}
/* 2022 shared app bar */.yt-topbar{position:sticky;z-index:20;top:0;height:calc(var(--yt-top) + var(--yt-safe-top));padding:var(--yt-safe-top) 6px 0 14px;display:flex;align-items:center;background:#fff}.yt-wordmark{width:93px;height:21px;display:block;object-fit:contain;object-position:left center}.yt-top-actions{margin-left:auto;display:flex;align-items:center}.yt-icon-btn{width:39px;height:46px;display:grid;place-items:center;font-size:22px;cursor:pointer}.yt-icon-btn i{line-height:1}.yt-account-btn{width:38px;height:46px;display:grid;place-items:center}.yt-avatar{width:27px;height:27px;border-radius:50%;background:#9aa0a6;flex:0 0 auto}.yt-avatar.a2{background:#bd8e7c}.yt-avatar.a3{background:#7c9a8b}.yt-avatar.a4{background:#8c789e}.yt-avatar.a5{background:#7e91a4}
/* pre-Oct-2022 topic chips were pill-like, not the later rounded rectangles */.yt-topic-row{position:sticky;z-index:18;top:calc(var(--yt-top) + var(--yt-safe-top));height:47px;padding:7px 10px 7px 12px;display:flex;align-items:center;gap:8px;overflow-x:auto;white-space:nowrap;background:#fff;border-top:1px solid #f0f0f0;border-bottom:1px solid #eee;scrollbar-width:none}.yt-topic-divider{width:1px;height:25px;background:#ddd;flex:0 0 auto}.yt-chip{height:31px;padding:0 13px;border:1px solid #ddd;border-radius:16px;background:#f2f2f2;font-size:12px;font-weight:400;line-height:29px;flex:0 0 auto;white-space:nowrap}.yt-chip[aria-selected="true"]{background:#606060;border-color:#606060;color:#fff}.yt-explore-chip{display:flex;align-items:center;gap:6px;border-radius:2px;padding:0 11px}.yt-explore-chip i{font-size:17px}.yt-feed{padding:0 0 14px}.yt-video{padding:0 0 16px;background:#fff}.yt-thumb{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#c8c8c8}.yt-thumb.t1{background:#c9d1d6}.yt-thumb.t2{background:#b9cbc5}.yt-thumb.t3{background:#d3c1b7}.yt-thumb.t4{background:#c8c1d2}.yt-thumb.t5{background:#d2cba8}.yt-duration{position:absolute;z-index:2;right:5px;bottom:5px;padding:1px 4px;border-radius:2px;background:rgba(0,0,0,.8);color:#fff;font-size:10px;line-height:15px;font-weight:500}.yt-live{background:#f00}.yt-video-meta{display:grid;grid-template-columns:36px minmax(0,1fr) 26px;gap:10px;padding:10px 9px 0 12px}.yt-video-meta>.yt-avatar{width:36px;height:36px}.yt-video-copy{min-width:0}.yt-video-title{font-size:13.5px;line-height:18px;font-weight:500;color:#030303;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.yt-video-sub{margin-top:3px;color:#606060;font-size:10.5px;line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yt-more{width:26px;height:30px;display:grid;place-items:center;font-size:18px}
/* Home Shorts shelf, 2022 proportions */.yt-shorts-shelf{padding:0 0 15px;border-top:4px solid #eee;border-bottom:4px solid #eee;margin:0 0 16px}.yt-shelf-title{height:47px;padding:0 12px;display:flex;align-items:center;gap:8px;font-size:16px;font-weight:500}.yt-shorts-logo{width:22px;height:25px;display:block;color:#f00}.yt-shelf-title .yt-more{margin-left:auto;color:#222}.yt-shorts-row{display:flex;gap:4px;padding:0 4px;overflow-x:auto;scrollbar-width:none}.yt-shorts-row::-webkit-scrollbar{display:none}.yt-short-card{position:relative;width:43%;flex:0 0 43%;aspect-ratio:9/16;overflow:hidden;background:#c7c7c7}.yt-short-card.s1{background:#c2ccd1}.yt-short-card.s2{background:#d8bdac}.yt-short-card.s3{background:#aebfaa}.yt-short-overlay{position:absolute;left:8px;right:7px;bottom:7px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.75)}.yt-short-title{font-size:11.5px;line-height:15px;font-weight:500;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.yt-short-views{margin-top:3px;font-size:9.5px}
/* Subscriptions */.yt-channel-strip-wrap{border-bottom:1px solid #e5e5e5}.yt-channel-strip{height:83px;display:flex;gap:12px;align-items:flex-start;padding:7px 11px 6px;overflow-x:auto;scrollbar-width:none}.yt-channel{width:48px;flex:0 0 48px;text-align:center;font-size:8.8px;line-height:12px;color:#303030;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yt-channel .yt-avatar{width:46px;height:46px;margin:0 auto 4px;position:relative}.yt-channel.unseen .yt-avatar::before{content:"";position:absolute;right:-2px;bottom:2px;width:9px;height:9px;border:2px solid #fff;border-radius:50%;background:#065fd4}.yt-channel-all{width:39px;flex:0 0 39px;align-self:center;margin-top:-15px;color:#065fd4;font-size:10px;font-weight:500}.yt-sub-filter{height:45px;padding:7px 9px 7px 12px;display:flex;gap:7px;overflow-x:auto;background:#fff;scrollbar-width:none}.yt-sub-filter::-webkit-scrollbar{display:none}.yt-sub-filter .yt-chip{height:30px;line-height:28px;padding:0 12px}.yt-sub-filter .manage{margin-left:auto;background:transparent;border-color:transparent;color:#065fd4;padding-right:4px}
/* Shorts viewer, May-2022 hierarchy */.yt-shorts-panel{background:#000;color:#fff;overflow:hidden}.yt-shorts-stage{position:absolute;inset:0;background:#546268;overflow:hidden}.yt-shorts-media{position:absolute;inset:0;background:#65747a}.yt-shorts-media::after{content:"";position:absolute;left:8%;right:22%;bottom:0;height:48%;background:#4c575b;opacity:.65}.yt-shorts-head{position:absolute;z-index:3;top:0;left:0;right:0;height:calc(52px + var(--yt-safe-top));padding:var(--yt-safe-top) 7px 0 12px;display:flex;align-items:center;text-shadow:0 1px 3px rgba(0,0,0,.55)}.yt-shorts-word{font-size:18px;font-weight:500}.yt-shorts-head .yt-section-actions{margin-left:auto;display:flex}.yt-shorts-head .yt-icon-btn{color:#fff}.yt-shorts-rail{position:absolute;z-index:3;right:6px;bottom:53px;display:flex;flex-direction:column;align-items:center;gap:13px}.yt-short-action{width:45px;display:flex;flex-direction:column;align-items:center;gap:3px;color:#fff;font-size:9px;text-shadow:0 1px 2px rgba(0,0,0,.6)}.yt-short-action i{font-size:28px}.yt-short-action .yt-avatar{width:36px;height:36px;border:2px solid #fff}.yt-shorts-caption{position:absolute;z-index:3;left:11px;right:58px;bottom:19px;text-shadow:0 1px 3px rgba(0,0,0,.65)}.yt-shorts-account{display:flex;align-items:center;gap:7px;margin-bottom:8px;font-size:11px;font-weight:500}.yt-shorts-account .yt-avatar{width:30px;height:30px;border:1px solid #fff}.yt-subscribe{height:27px;padding:0 10px;background:#f00;color:#fff;font-size:10px;font-weight:500;border-radius:2px}.yt-shorts-copy{font-size:11.5px;line-height:16px}.yt-shorts-music{margin-top:7px;display:flex;align-items:center;gap:6px;font-size:9.5px}.youtube-app[data-yt-active="shorts"] .yt-bottom-nav{background:#050505;border-top-color:#292929;color:#fff}.youtube-app[data-yt-active="shorts"] .yt-nav-item{color:#fff}
/* Library 2022 */.yt-library-body{padding-bottom:18px}.yt-library-heading{height:39px;padding:0 13px;display:flex;align-items:center;font-size:15px;font-weight:500}.yt-recent-strip{display:flex;gap:8px;overflow-x:auto;padding:0 12px 14px;scrollbar-width:none}.yt-recent-card{width:128px;flex:0 0 128px}.yt-mini-thumb{position:relative;width:128px;aspect-ratio:16/9;background:#c6c6c6;overflow:hidden}.yt-recent-card:nth-child(2) .yt-mini-thumb{background:#cbc2d5}.yt-recent-card:nth-child(3) .yt-mini-thumb{background:#b9c9be}.yt-mini-title{margin-top:5px;font-size:10.5px;line-height:13.5px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yt-mini-sub{margin-top:1px;color:#606060;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yt-library-list{border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5;padding:7px 0}.yt-library-row{height:45px;display:grid;grid-template-columns:43px minmax(0,1fr);align-items:center;padding:0 12px 0 10px;font-size:12.5px}.yt-library-row>i{font-size:20px;text-align:center;color:#606060}.yt-library-row .sub{display:block;margin-top:1px;color:#606060;font-size:9.5px}.yt-playlists-head{height:47px;padding:0 13px;display:flex;align-items:center;font-size:15px;font-weight:500}.yt-playlists-head .sort{margin-left:auto;font-size:10.5px;font-weight:400}.yt-playlist-row{height:58px;padding:0 12px;display:grid;grid-template-columns:82px minmax(0,1fr) 23px;gap:10px;align-items:center}.yt-playlist-thumb{width:82px;height:46px;background:#c8c8c8;position:relative}.yt-playlist-thumb.p2{background:#bfc9d2}.yt-playlist-copy{min-width:0}.yt-playlist-title{font-size:11.5px;line-height:15px}.yt-playlist-sub{color:#606060;font-size:9px;margin-top:2px}.yt-playlist-row .yt-more{font-size:17px}
/* five-entry bottom system: Home / Shorts / Create / Subscriptions / Library */.yt-bottom-nav{position:absolute;z-index:30;left:0;right:0;bottom:0;height:var(--yt-nav-h);padding:0 0 var(--yt-safe-bottom);display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid #e5e5e5}.yt-nav-item{height:var(--yt-nav-core);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#030303;font-size:8.6px;line-height:11px}.yt-nav-icon{height:25px;display:grid;place-items:center}.yt-nav-icon i{font-size:21px}.yt-nav-icon .fill{display:none}.yt-nav-item[aria-selected="true"] .line{display:none}.yt-nav-item[aria-selected="true"] .fill{display:inline-block}.yt-shorts-nav-svg{width:20px;height:22px;display:block}.yt-shorts-nav-svg .yt-shorts-fill{display:none}.yt-nav-item[aria-selected="true"] .yt-shorts-outline{display:none}.yt-nav-item[aria-selected="true"] .yt-shorts-fill{display:block}.yt-nav-create{gap:0}.yt-nav-create .yt-nav-icon{width:32px;height:32px;border:1.7px solid currentColor;border-radius:50%}.yt-nav-create .yt-nav-icon i{font-size:20px}.yt-nav-create>span:last-child{display:none}
/* Account flow + centered 2022 channel/profile page. Handles and the later You tab are intentionally absent. */
.yt-account-layer{position:absolute;z-index:55;inset:0;background:#fff;visibility:hidden;pointer-events:none;transform:translateX(5%);opacity:0;transition:transform .18s ease,opacity .14s ease}.yt-account-layer[aria-hidden="false"]{visibility:visible;pointer-events:auto;transform:translateX(0);opacity:1}.yt-account-head{height:calc(55px + var(--yt-safe-top));padding:var(--yt-safe-top) 12px 0 8px;display:flex;align-items:center;border-bottom:1px solid #e5e5e5}.yt-account-close{width:46px;height:46px;display:grid;place-items:center;font-size:27px}.yt-account-title{font-size:19px;font-weight:500}.yt-account-scroll{height:calc(100% - 55px - var(--yt-safe-top));overflow-y:auto;scrollbar-width:none}.yt-account-scroll::-webkit-scrollbar{display:none}.yt-account-id{min-height:138px;padding:17px 17px 13px;display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:15px;border-bottom:1px solid #e5e5e5}.yt-account-id>.yt-avatar{width:48px;height:48px}.yt-account-copy{min-width:0;padding-top:1px}.yt-account-name-row{height:29px;display:flex;align-items:center;font-size:15px;font-weight:500}.yt-account-name-row i{margin-left:9px;font-size:18px}.yt-account-google{margin-top:7px;color:#065fd4;font-size:13.5px}.yt-account-group{padding:7px 0;border-bottom:1px solid #e5e5e5}.yt-account-row{width:100%;height:49px;padding:0 18px;display:grid;grid-template-columns:34px minmax(0,1fr) 28px;align-items:center;text-align:left;font-size:14px}.yt-account-row>i:first-child{font-size:21px;color:#303030}.yt-account-row .external{justify-self:end;font-size:19px}.yt-account-footer{padding:11px 18px 18px;color:#606060;font-size:9px}
.yt-channel-page{position:absolute;z-index:26;inset:0 0 var(--yt-nav-h);background:#fff;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;visibility:hidden;pointer-events:none;opacity:0}.yt-channel-page::-webkit-scrollbar,.yt-channel-tabs::-webkit-scrollbar,.yt-channel-upload-row::-webkit-scrollbar{display:none}.yt-channel-page[aria-hidden="false"]{visibility:visible;pointer-events:auto;opacity:1}.yt-channel-top{position:sticky;top:0;z-index:10;background:#fff;color:#030303;border-bottom:1px solid #e5e5e5}.yt-channel-toolbar{height:calc(52px + var(--yt-safe-top));padding:var(--yt-safe-top) 3px 0;display:grid;grid-template-columns:44px minmax(0,1fr) 40px 40px 40px;align-items:center}.yt-channel-back,.yt-channel-tool{width:40px;height:44px;display:grid;place-items:center;color:#030303}.yt-channel-back{font-size:24px}.yt-channel-tool{font-size:22px}.yt-channel-title{min-width:0;padding-left:4px;font-size:16px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yt-channel-tabs{height:43px;display:flex;align-items:stretch;overflow-x:auto;scrollbar-width:none}.yt-channel-tab{position:relative;height:43px;padding:0 18px;flex:0 0 auto;color:#606060;font-size:11.5px;font-weight:500;text-transform:uppercase;letter-spacing:.15px}.yt-channel-tab[aria-selected="true"]{color:#030303}.yt-channel-tab[aria-selected="true"]::after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2px;background:#030303}.yt-channel-banner{height:112px;background:#d7d7d7}.yt-channel-profile{padding:13px 20px 15px;text-align:center;border-bottom:1px solid #ededed}.yt-channel-avatar{width:68px;height:68px;margin:0 auto;border-radius:50%;background:#b9b9b9}.yt-channel-name{margin-top:10px;font-size:18px;font-weight:500;line-height:22px}.yt-channel-subscribe{height:31px;margin:1px auto 0;padding:0 14px;color:#cc0000;font-size:12px;font-weight:500;letter-spacing:.2px;text-transform:uppercase}.yt-channel-count{margin-top:0;color:#606060;font-size:11px;line-height:16px}.yt-channel-description{position:relative;max-width:330px;margin:4px auto 0;padding:0 18px;color:#606060;font-size:10.5px;line-height:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yt-channel-description i{position:absolute;right:0;top:-1px;color:#777;font-size:17px}.yt-channel-content{min-height:230px;background:#fff}.yt-channel-pane[hidden]{display:none}.yt-channel-feature{border-bottom:1px solid #ededed}.yt-channel-feature-thumb{position:relative;width:100%;aspect-ratio:16/9;background:#c5c5c5}.yt-channel-feature-copy{display:grid;grid-template-columns:40px minmax(0,1fr) 28px;gap:9px;padding:9px 10px 11px;align-items:start}.yt-channel-feature-avatar{width:34px;height:34px;border-radius:50%;background:#b9b9b9}.yt-channel-feature-title{font-size:11.5px;line-height:15px;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.yt-channel-feature-meta{margin-top:2px;color:#606060;font-size:9.5px;line-height:12px}.yt-channel-section{padding:13px 0 11px;border-bottom:1px solid #ededed}.yt-channel-section-head{height:25px;padding:0 13px;display:flex;align-items:center;font-size:15px;font-weight:400}.yt-channel-section-head .all{margin-left:auto;color:#606060;font-size:10.5px;font-weight:500}.yt-channel-upload-row{display:flex;gap:8px;overflow-x:auto;padding:4px 12px 0;scrollbar-width:none}.yt-channel-upload{width:144px;flex:0 0 144px}.yt-channel-upload-thumb{position:relative;width:144px;aspect-ratio:16/9;background:#c9c9c9}.yt-channel-upload:nth-child(2) .yt-channel-upload-thumb{background:#bfc5c8}.yt-channel-upload:nth-child(3) .yt-channel-upload-thumb{background:#d1c5bd}.yt-channel-upload-title{margin-top:6px;font-size:10.8px;line-height:14px;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.yt-channel-upload-meta{margin-top:2px;color:#777;font-size:9px}.yt-channel-video-list{padding-top:5px}.yt-channel-video-row{display:grid;grid-template-columns:142px minmax(0,1fr) 26px;gap:9px;padding:7px 9px}.yt-channel-video-thumb{position:relative;width:142px;aspect-ratio:16/9;background:#c9c9c9}.yt-channel-video-row:nth-child(2) .yt-channel-video-thumb{background:#bfc5c8}.yt-channel-video-row:nth-child(3) .yt-channel-video-thumb{background:#d1c5bd}.yt-channel-video-copy{min-width:0;padding-top:1px}.yt-channel-video-title{font-size:11.3px;line-height:15px;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.yt-channel-video-meta{margin-top:4px;color:#777;font-size:9px;line-height:12px}.yt-channel-playlist{height:70px;padding:8px 12px;display:grid;grid-template-columns:96px minmax(0,1fr) 24px;gap:10px;align-items:center}.yt-channel-playlist-thumb{width:96px;height:54px;background:#c9c9c9;position:relative}.yt-channel-playlist-thumb::after{content:"12";position:absolute;right:0;top:0;bottom:0;width:31px;background:rgba(0,0,0,.62);color:#fff;display:grid;place-items:center;font-size:10px}.yt-channel-playlist-name{font-size:11.5px;font-weight:500}.yt-channel-playlist-sub{margin-top:3px;color:#777;font-size:9.3px}.yt-channel-community-post{margin:12px;border:1px solid #e5e5e5;padding:13px 13px 12px}.yt-channel-community-head{display:flex;align-items:center;gap:9px}.yt-channel-community-head .yt-channel-feature-avatar{width:32px;height:32px}.yt-channel-community-name{font-size:11.5px;font-weight:500}.yt-channel-community-time{margin-top:1px;color:#777;font-size:9px}.yt-channel-community-copy{margin-top:10px;font-size:11px;line-height:16px;color:#303030}
/* 2022 Create bottom sheet: title + close, no modern drag handle/cancel pill */.yt-create-layer{position:absolute;z-index:60;inset:0;visibility:hidden;pointer-events:none}.yt-create-layer[aria-hidden="false"]{visibility:visible;pointer-events:auto}.yt-create-mask{position:absolute;inset:0;background:rgba(0,0,0,.38);opacity:0;transition:opacity .16s ease}.yt-create-layer[aria-hidden="false"] .yt-create-mask{opacity:1}.yt-create-sheet{position:absolute;left:0;right:0;bottom:0;padding:4px 16px calc(13px + var(--yt-safe-bottom));border-radius:14px 14px 0 0;background:#fff;color:#030303;transform:translateY(100%);transition:transform .18s ease}.yt-create-layer[aria-hidden="false"] .yt-create-sheet{transform:translateY(0)}.yt-create-head{height:52px;display:flex;align-items:center}.yt-create-title{font-size:18px;font-weight:500}.yt-create-close{margin-left:auto;width:39px;height:39px;display:grid;place-items:center;font-size:22px}.yt-create-option{height:56px;display:flex;align-items:center;gap:14px;font-size:13.5px}.yt-create-option i{width:39px;height:39px;border-radius:50%;background:#f2f2f2;display:grid;place-items:center;font-size:20px}.yt-toast{position:absolute;z-index:80;left:50%;bottom:calc(var(--yt-nav-h) + 10px);max-width:82%;padding:8px 12px;border-radius:2px;background:#323232;color:#fff;font-size:10.5px;transform:translate(-50%,7px);opacity:0;pointer-events:none;transition:opacity .14s ease,transform .14s ease}.yt-toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:380px){.yt-wordmark{width:88px}.yt-icon-btn{width:36px}.yt-short-card{width:44%;flex-basis:44%}.yt-video-title{font-size:13px}.yt-recent-card,.yt-mini-thumb{width:122px}}@media(prefers-reduced-motion:reduce){.yt-create-mask,.yt-create-sheet,.yt-toast{transition:none}}

/* X mobile light UI: one scoped component system; navigation and transient pages share these tokens. */
.x-app{--x-bg:#fff;--x-ink:#0f1419;--x-muted:#536471;--x-border:#eff3f4;--x-blue:#1d9bf0;--x-safe-top:env(safe-area-inset-top,0px);--x-safe-bottom:env(safe-area-inset-bottom,0px);--x-nav-height:calc(54px + var(--x-safe-bottom));font-family:Arial,"Noto Sans SC","PingFang SC",sans-serif;color:var(--x-ink);background:var(--x-bg);overflow:hidden}
.x-app *{box-sizing:border-box}:where(.x-app button,.x-app input,.x-app textarea){font:inherit}:where(.x-app button){appearance:none;border:0;background:transparent;color:inherit;padding:0;cursor:pointer}.x-app button:focus-visible,.x-app input:focus-visible,.x-app textarea:focus-visible{outline:2px solid var(--x-blue);outline-offset:2px}.x-shell{position:absolute;inset:0;background:var(--x-bg);overflow:hidden}.x-panels{position:absolute;inset:0 0 var(--x-nav-height)}.x-panel{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;overscroll-behavior:contain;background:var(--x-bg)}.x-panel[hidden],.x-timeline[hidden]{display:none}.x-panel::-webkit-scrollbar,.x-sub-scroll::-webkit-scrollbar{display:none}.x-top{position:sticky;top:0;z-index:8;height:calc(52px + var(--x-safe-top));padding:var(--x-safe-top) 16px 0;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.96)}.x-home-top{border-bottom:0}.x-icon{width:32px;height:40px;display:grid;place-items:center;flex:none}.x-icon i{font-size:21px}.x-avatar{width:32px;height:32px;border-radius:50%;font-size:15px;font-weight:600;display:grid;place-items:center;flex:none}.x-self-avatar{background:#273746;color:white}.x-brand{font-size:25px}.x-title-head{gap:22px}.x-title-head h2{font-size:20px;font-weight:800;line-height:1;margin:0 auto 0 0}.x-switch{height:49px;position:sticky;top:calc(52px + var(--x-safe-top));z-index:7;display:flex;background:rgba(255,255,255,.96);border-bottom:1px solid var(--x-border)}.x-switch button,.x-switch-item{position:relative;flex:1;text-align:center;font-size:14px;font-weight:500;color:var(--x-muted)}.x-switch button[aria-selected="true"]{font-weight:700;color:var(--x-ink)}.x-switch button[aria-selected="true"]:after{position:absolute;content:"";bottom:0;left:50%;transform:translateX(-50%);width:56px;height:4px;border-radius:4px;background:var(--x-blue)}.x-three button[aria-selected="true"]:after{width:42px}
.x-post{display:flex;gap:10px;padding:12px 14px 9px 15px;border-bottom:1px solid var(--x-border);min-width:0}.x-post-avatar{width:40px;height:40px;border-radius:50%;flex:none;display:grid;place-items:center;color:white;font-size:18px;font-weight:600}.x-av-purple{background:#77729e;color:white}.x-av-blue{background:#648b9f;color:white}.x-av-amber{background:#b87a5d;color:white}.x-post-main{flex:1;min-width:0}.x-post-head{min-height:20px;display:flex;align-items:center;gap:3px;white-space:nowrap;overflow:hidden;font-size:14px}.x-post-head strong{font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis}.x-post-head span{font-size:13px;color:var(--x-muted);overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.x-verified{font-size:16px;color:var(--x-blue);flex:none}.x-post-more{font-size:18px;color:var(--x-muted);width:20px;flex:none}.x-post-text{font-size:14px;line-height:1.48;white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0 10px}.x-post-media{border:1px solid #cfd9de;border-radius:15px;aspect-ratio:1.8;overflow:hidden;background-size:cover;background-position:center}.x-media-sky{background-image:url('https://images.unsplash.com/photo-1534088568595-a066f410bcda?w=850&q=80')}.x-media-street{background-image:url('https://images.unsplash.com/photo-1519608487953-e999c86e7455?w=850&q=80')}.x-post-actions{display:flex;align-items:center;justify-content:space-between;margin:8px 0 0 -7px;gap:1px;color:var(--x-muted)}.x-post-actions button{display:flex;align-items:center;gap:3px;min-width:0;font-size:11px;color:var(--x-muted)}.x-post-actions button i{font-size:17px;line-height:20px}.x-post-actions button[aria-pressed="true"][data-x-action="like"]{color:#f91880}.x-post-actions button[aria-pressed="true"][data-x-action="repost"]{color:#00ba7c}.x-post-actions span{white-space:nowrap}
.x-nav{position:absolute;bottom:0;left:0;right:0;z-index:14;height:var(--x-nav-height);padding-bottom:var(--x-safe-bottom);border-top:1px solid var(--x-border);display:grid;grid-template-columns:repeat(5,1fr);background:#fff}.x-nav button{position:relative;display:grid;place-items:center;min-width:0;height:54px}.x-nav i{font-size:27px}.x-nav .x-fill,.x-nav button[aria-selected="true"] .x-line{display:none}.x-nav button[aria-selected="true"] .x-fill{display:block}.x-nav-icon-anchor{position:relative;display:inline-grid;place-items:center;width:max-content;height:max-content;line-height:0}.x-nav-icon-anchor i{line-height:1}.x-nav-dot{display:none;width:6px;height:6px;border-radius:50%;background:var(--x-blue);position:absolute;top:-1px;right:-1px}.x-nav button[data-x-tab="notifications"] .x-nav-dot{display:block}.x-compose-fab{position:absolute;z-index:12;right:18px;bottom:calc(var(--x-nav-height) + 18px);width:56px;height:56px;border-radius:50%;background:var(--x-blue);color:#fff;box-shadow:0 3px 10px rgba(0,0,0,.19);display:grid;place-items:center}.x-compose-fab i{font-size:25px}.x-compose-plus{position:absolute;right:12px;bottom:8px;font-size:17px;font-weight:700;line-height:1}.x-app[data-x-active="grok"] .x-compose-fab,.x-app[data-x-active="messages"] .x-compose-fab,.x-app[data-x-active="notifications"] .x-compose-fab{display:none}
.x-search-head{gap:15px;padding-left:15px;padding-right:12px}.x-search{height:35px;border-radius:19px;background:#eff3f4;display:flex;align-items:center;gap:8px;color:var(--x-muted);padding:0 14px;flex:1;min-width:0}.x-search i{font-size:18px}.x-search input,.x-message-search input{border:0;outline:none;background:transparent;width:100%;min-width:0;font-size:14px;color:var(--x-ink)}.x-search input::placeholder,.x-message-search input::placeholder{color:var(--x-muted)}.x-explore-tabs{height:49px;display:flex;overflow-x:auto;border-bottom:1px solid var(--x-border);white-space:nowrap;scrollbar-width:none;position:sticky;top:calc(52px + var(--x-safe-top));z-index:7;background:#fff}.x-explore-tabs::-webkit-scrollbar{display:none}.x-explore-tabs button{padding:0 15px;flex:none;font-size:14px;color:var(--x-muted);position:relative}.x-explore-tabs button[aria-selected="true"]{font-weight:700;color:var(--x-ink)}.x-explore-tabs button[aria-selected="true"]:after{content:"";position:absolute;bottom:0;left:16px;right:16px;height:4px;border-radius:4px;background:var(--x-blue)}.x-section-title{font-size:19px;font-weight:800;padding:16px 15px 12px}.x-trend-feature{margin:0 15px 5px;border:1px solid var(--x-border);border-radius:16px;padding:25px 15px;background:#0f1419;color:#fff;display:flex;align-items:center;gap:10px;justify-content:space-between}.x-trend-feature div,.x-trend-feature>span{display:flex;flex-direction:column;gap:6px}.x-trend-feature small{font-size:12px;color:#b9c0c5}.x-trend-feature strong{font-size:19px;line-height:1.35}.x-trend-feature span{font-size:12px}.x-trend-feature i{font-size:45px;opacity:.65}.x-trend{padding:13px 15px;display:flex;justify-content:space-between;min-height:77px}.x-trend div{display:flex;flex-direction:column;gap:4px}.x-trend small,.x-trend span{font-size:12px;color:var(--x-muted)}.x-trend strong{font-size:15px}.x-trend button{width:25px;align-self:flex-start;color:var(--x-muted);font-size:19px}.x-trend[hidden],.x-notice[hidden],.x-thread[hidden]{display:none}
.x-grok-panel{overflow:hidden}.x-grok-panel .x-top strong{font-size:20px;font-weight:800}.x-grok-center{position:absolute;top:40%;left:22px;right:22px;transform:translateY(-40%)}.x-grok-logo{font-size:35px}.x-grok-center h2{font-size:23px;margin:20px 0 6px}.x-grok-center p{color:var(--x-muted);font-size:14px;margin:0 0 24px}.x-grok-chips{display:flex;flex-direction:column;gap:9px}.x-grok-chips button{border:1px solid var(--x-border);border-radius:14px;text-align:left;padding:12px 14px;color:var(--x-ink);display:flex;justify-content:space-between}.x-grok-form{position:absolute;bottom:calc(var(--x-safe-bottom) + 10px);left:16px;right:16px;border:1px solid #cfd9de;border-radius:28px;min-height:48px;display:flex;align-items:center;padding:5px 6px 5px 17px;gap:8px}.x-grok-form input{flex:1;min-width:0;border:0;outline:0;background:none;font-size:14px}.x-grok-form button{background:var(--x-ink);color:white;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:18px}
.x-notice{padding:13px 16px 15px;display:flex;gap:15px;border-bottom:1px solid var(--x-border);min-height:112px}.x-notice-icon{font-size:28px;color:#f91880;line-height:30px}.x-notice-icon.blue{color:var(--x-blue)}.x-notice-icon.green{color:#00ba7c}.x-notice>div{flex:1;min-width:0}.x-notice-avatars{display:flex;margin-bottom:8px}.x-notice-avatars span{width:31px;height:31px;border:2px solid #fff;margin-right:-4px;border-radius:50%;display:grid;place-items:center;font-size:13px}.x-notice p{font-size:14px;line-height:1.45;margin:0 0 5px}.x-notice strong{font-weight:700}.x-notice small{font-size:12px;color:var(--x-muted)}.x-notice-quote{display:block;margin:4px 0 7px;font-size:14px;color:var(--x-muted)}.x-message-search{margin:8px 16px 12px;height:36px;background:#eff3f4;border-radius:19px;color:var(--x-muted);display:flex;gap:8px;align-items:center;padding:0 15px}.x-message-search i{font-size:18px}.x-request{height:51px;width:100%;padding:0 16px;border-bottom:1px solid var(--x-border);text-align:left;display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:15px}.x-request i{font-size:19px;color:var(--x-muted)}.x-thread{width:100%;padding:14px 16px;text-align:left;display:flex;align-items:flex-start;gap:10px;min-width:0}.x-thread-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;font-size:14px}.x-thread-copy strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.x-thread-copy small{font-weight:400;font-size:12px;color:var(--x-muted)}.x-thread-copy>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--x-muted)}.x-thread time{font-size:12px;color:var(--x-muted);white-space:nowrap}
.x-subpage{position:absolute;z-index:25;inset:0;overflow:hidden;background:white;transform:translateX(100%);visibility:hidden;pointer-events:none;transition:transform .2s ease,visibility 0s linear .2s}.x-subpage[aria-hidden="false"]{transform:translateX(0);visibility:visible;pointer-events:auto;transition:transform .2s ease}.x-sub-head{height:calc(53px + var(--x-safe-top));padding:var(--x-safe-top) 14px 0;display:flex;align-items:center;gap:25px;border-bottom:1px solid var(--x-border)}.x-sub-head>div{display:flex;flex-direction:column;flex:1;min-width:0}.x-sub-head strong{font-size:18px;font-weight:800}.x-sub-head small{color:var(--x-muted);font-size:12px}.x-sub-head>.x-icon:last-child{margin-left:auto}.x-sub-scroll{height:calc(100% - 53px - var(--x-safe-top));overflow:auto;scrollbar-width:none}.x-cover{height:135px;background:#b3c4ca}.x-profile-info{padding:0 15px 13px}.x-profile-toolbar{height:43px;display:flex;justify-content:space-between;align-items:flex-start}.x-profile-avatar{width:70px;height:70px;border:4px solid white;border-radius:50%;font-size:31px;font-weight:700;display:grid;place-items:center;margin-top:-36px}.x-profile-toolbar button{margin-top:11px}.x-profile-info h2{font-size:20px;margin:9px 0 0}.x-muted{color:var(--x-muted);font-size:14px}.x-profile-info p{font-size:14px;line-height:1.5;margin:12px 0}.x-profile-extra{color:var(--x-muted);font-size:13px;margin:9px 0}.x-profile-extra i{font-size:16px}.x-profile-follow{font-size:13px;color:var(--x-muted);display:flex;gap:4px;align-items:center}.x-profile-follow strong{color:var(--x-ink);margin-left:8px}.x-profile-follow strong:first-child{margin-left:0}.x-profile-tabs{position:sticky;top:0;z-index:2;background:#fff;height:49px;display:flex;border-bottom:1px solid var(--x-border)}.x-profile-tabs button{flex:1;position:relative;font-size:13px;color:var(--x-muted)}.x-profile-tabs button[aria-selected="true"]{color:var(--x-ink);font-weight:700}.x-profile-tabs button[aria-selected="true"]:after{content:"";height:4px;position:absolute;bottom:0;left:24%;right:24%;border-radius:4px;background:var(--x-blue)}.x-profile-empty{text-align:center;margin:55px 20px;display:flex;flex-direction:column;gap:9px}.x-profile-empty strong{font-size:20px}.x-profile-empty span{font-size:13px;color:var(--x-muted)}
.x-compose-head{justify-content:space-between;border-bottom:0}.x-compose-head>button:first-child{font-size:15px}.x-submit{padding:7px 18px;border-radius:20px;background:var(--x-ink);color:#fff;font-weight:700;font-size:13px}.x-submit:disabled{opacity:.4}.x-compose-body{display:flex;align-items:flex-start;gap:11px;padding:14px 16px}.x-compose-body>div:last-child{flex:1}.x-compose-body span{font-size:13px;color:var(--x-blue);font-weight:700}.x-compose-body textarea{display:block;width:100%;height:190px;border:0;outline:0;resize:none;padding:15px 0;font-size:19px;line-height:1.5;color:var(--x-ink)}.x-compose-body textarea::placeholder{color:var(--x-muted)}.x-compose-tools{position:absolute;bottom:var(--x-safe-bottom);height:55px;left:0;right:0;display:flex;align-items:center;gap:14px;border-top:1px solid var(--x-border);padding:0 16px;color:var(--x-blue)}.x-compose-tools button{font-size:21px}.x-compose-tools small{margin-left:auto;color:var(--x-muted)}.x-chat-log{height:calc(100% - 122px - var(--x-safe-top) - var(--x-safe-bottom));padding:14px 16px;overflow:auto;display:flex;flex-direction:column;gap:12px}.x-chat-date{text-align:center;color:var(--x-muted);font-size:12px;margin:10px}.x-chat-bubble{overflow-wrap:anywhere;padding:11px 14px;border-radius:17px;max-width:78%;font-size:14px;line-height:1.4;align-self:flex-start;background:var(--x-border)}.x-chat-bubble.own{align-self:flex-end;color:#fff;background:var(--x-blue)}.x-chat-form{height:calc(69px + var(--x-safe-bottom));padding:7px 16px var(--x-safe-bottom);border-top:1px solid var(--x-border);display:flex;gap:10px;align-items:center}.x-chat-form button{font-size:22px;color:var(--x-blue)}.x-chat-form input{height:38px;flex:1;min-width:0;border-radius:19px;border:1px solid #cfd9de;padding:0 14px;outline:0;font-size:14px}.x-toast{position:absolute;z-index:50;left:50%;bottom:calc(var(--x-nav-height) + 15px);transform:translateX(-50%);background:#0f1419;color:white;padding:9px 15px;border-radius:6px;font-size:13px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .16s}.x-toast.show{opacity:1}
.x-drawer{position:absolute;inset:0;z-index:32;pointer-events:none;visibility:hidden}.x-drawer[aria-hidden="false"]{pointer-events:auto;visibility:visible}.x-drawer-shade,.x-sheet-shade{position:absolute;inset:0;background:rgba(15,20,25,.48);width:100%;height:100%}.x-drawer-content{position:absolute;left:0;top:0;bottom:0;width:min(82%,310px);background:#fff;overflow-y:auto;box-shadow:3px 0 15px rgba(0,0,0,.12);transform:translateX(-100%);transition:transform .22s ease}.x-drawer[aria-hidden="false"] .x-drawer-content{transform:translateX(0)}.x-drawer-account{padding:calc(20px + var(--x-safe-top)) 18px 16px;border-bottom:1px solid var(--x-border);display:flex;align-items:flex-start;flex-direction:column}.x-drawer-avatar{width:42px;height:42px;border-radius:50%;font-weight:400;font-size:21px}.x-drawer-more{position:absolute;top:calc(20px + var(--x-safe-top));right:15px;font-size:22px}.x-drawer-account>strong{font-size:18px;font-weight:700;margin-top:9px}.x-drawer-account>span{font-size:13px;color:var(--x-muted)}.x-drawer-account>div{display:flex;gap:18px;margin-top:16px;font-size:13px;color:var(--x-muted)}.x-drawer-account>div button{font-weight:400}.x-drawer-account>div b{color:var(--x-ink);font-weight:700}.x-drawer-links{display:flex;flex-direction:column;padding:10px 0}.x-drawer-links button{height:51px;display:flex;gap:21px;align-items:center;padding:0 19px;text-align:left;font-size:18px;font-weight:400}.x-drawer-links i{width:25px;font-size:22px;font-weight:400;text-align:center}.x-drawer-foot{border-top:1px solid var(--x-border);padding:13px 19px;display:flex;flex-direction:column;gap:8px}.x-drawer-foot button{height:38px;display:flex;align-items:center;justify-content:space-between;text-align:left;font-size:14px;font-weight:400}.x-subpage .x-sub-scroll{height:calc(100% - 53px - var(--x-safe-top));overscroll-behavior:contain}.x-sub-head>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.x-text-action{margin-left:auto;color:var(--x-blue);font-size:14px;font-weight:700}.x-page-empty{padding:80px 32px;text-align:center;max-width:400px;margin:auto}.x-page-empty strong{font-size:21px}.x-page-empty p,.x-inline-empty{font-size:14px;color:var(--x-muted);line-height:1.5}.x-inline-empty{padding:16px}.x-menu-row{width:100%;display:flex;align-items:center;gap:17px;padding:14px 17px;min-height:62px;text-align:left;border-bottom:1px solid var(--x-border);font-size:15px}.x-menu-row>i:first-child{width:25px;font-size:22px;color:var(--x-ink);text-align:center}.x-menu-row>span{flex:1;min-width:0}.x-menu-row small{display:block;font-size:12px;color:var(--x-muted);margin-top:3px}.x-menu-row>i:last-child{margin-left:auto;font-size:19px;color:var(--x-muted)}.x-menu-row input[type=checkbox],.x-switch-row input{appearance:none;width:41px;height:23px;border-radius:20px;background:#cfd9de;position:relative;flex:none}.x-menu-row input[type=checkbox]:checked,.x-switch-row input:checked{background:var(--x-blue)}.x-menu-row input[type=checkbox]::before,.x-switch-row input::before{content:"";position:absolute;top:3px;left:3px;width:17px;height:17px;background:#fff;border-radius:50%;transition:transform .17s}.x-menu-row input[type=checkbox]:checked::before,.x-switch-row input:checked::before{transform:translateX(18px)}.x-feature-copy{padding:18px;font-size:14px;line-height:1.65;color:var(--x-muted)}.x-form-page{padding:20px 16px}.x-form-page>h2{font-size:21px}.x-form-page label{display:block;margin:20px 0;color:var(--x-muted);font-size:13px}.x-form-page label input:not([type=checkbox]),.x-form-page label textarea{display:block;border:1px solid #cfd9de;border-radius:4px;padding:12px;width:100%;color:var(--x-ink);margin-top:8px;font-size:15px;background:#fff;outline-color:var(--x-blue)}.x-form-page label textarea{resize:vertical;min-height:90px}.x-form-page .x-switch-row{display:flex;align-items:center;justify-content:space-between;font-size:15px;color:var(--x-ink)}.x-primary-wide{display:block;width:calc(100% - 32px);margin:25px 16px;border-radius:24px;background:var(--x-ink);color:white;text-align:center;height:47px;font-weight:700}.x-form-page .x-primary-wide{width:100%;margin:28px 0}.x-sheet{position:absolute;inset:0;z-index:45;visibility:hidden;pointer-events:none}.x-sheet[aria-hidden="false"]{visibility:visible;pointer-events:auto}.x-sheet-body{position:absolute;bottom:0;left:0;right:0;padding:11px 0 calc(16px + var(--x-safe-bottom));background:#fff;border-radius:18px 18px 0 0;max-height:80%;overflow:auto;transform:translateY(100%);transition:transform .2s}.x-sheet[aria-hidden="false"] .x-sheet-body{transform:translateY(0)}.x-sheet-body>strong{display:block;padding:10px 20px 16px;font-size:17px}.x-sheet-body button{width:100%;height:48px;display:flex;align-items:center;gap:19px;text-align:left;padding:0 22px;font-size:15px}.x-sheet-body button i{font-size:21px;width:24px;text-align:center}.x-sheet-body button.danger{color:#f4212e}
.x-detail-post{padding:15px 16px 3px}.x-detail-author{display:flex;gap:10px;align-items:center}.x-detail-author>div:nth-child(2){display:flex;flex:1;min-width:0;flex-direction:column}.x-detail-author strong{font-size:15px}.x-detail-author small{font-size:13px;color:var(--x-muted)}.x-follow-button,.x-profile-toolbar button,.x-community-info button,.x-list-detail-copy button{border:1px solid #cfd9de;border-radius:20px;padding:7px 14px;font-size:13px;font-weight:700}.x-follow-button[aria-pressed="true"],.x-community-info button[aria-pressed="true"]{color:var(--x-muted);background:#eff3f4}.x-detail-post p{font-size:18px;line-height:1.5;margin:16px 0;white-space:pre-wrap;overflow-wrap:anywhere}.x-detail-media{aspect-ratio:1.8;border:1px solid #cfd9de;border-radius:15px;background-size:cover;background-position:center}.x-detail-media[hidden]{display:none}.x-detail-date,.x-detail-stats{font-size:13px;color:var(--x-muted);padding:16px 0;border-bottom:1px solid var(--x-border)}.x-detail-date strong,.x-detail-stats b{color:var(--x-ink)}.x-detail-stats b:not(:first-child){margin-left:10px}.x-detail-actions{display:flex;align-items:center;justify-content:space-between;padding:11px 5px;border-bottom:1px solid var(--x-border);color:var(--x-muted)}.x-detail-actions button{font-size:23px}.x-detail-actions button[aria-pressed="true"][data-x-action="like"]{color:#f91880}.x-detail-actions button[aria-pressed="true"][data-x-action="bookmark"]{color:var(--x-blue)}.x-reply-form{position:absolute;bottom:0;left:0;right:0;height:calc(63px + var(--x-safe-bottom));padding:8px 13px var(--x-safe-bottom);border-top:1px solid var(--x-border);display:flex;gap:10px;align-items:center;background:#fff}.x-reply-form .x-post-avatar{width:31px;height:31px;font-size:14px}.x-reply-form input{flex:1;min-width:0;border:1px solid #cfd9de;border-radius:20px;height:37px;padding:0 12px;outline-color:var(--x-blue);font-size:13px}.x-reply-form button{font-size:22px;color:var(--x-blue)}.x-subpage[data-x-subpage="post"] .x-sub-scroll{height:calc(100% - 116px - var(--x-safe-top) - var(--x-safe-bottom))}.x-media-full{height:calc(100% - 53px - var(--x-safe-top));background:#0f1419 center/contain no-repeat}.x-subpage[data-x-subpage="media"]{background:#0f1419;color:white}.x-subpage[data-x-subpage="media"] .x-sub-head{border-color:#323b44}.x-search-result-head{gap:10px}.x-search-result-head .x-search{flex:1}.x-subpage[data-x-subpage="search"] .x-sub-scroll{height:calc(100% - 102px - var(--x-safe-top))}.x-search-results .x-page-empty{padding-top:40px}.x-person-row{display:flex;width:100%;padding:13px 16px;gap:10px;text-align:left;align-items:flex-start}.x-person-row>div:nth-child(2){display:flex;flex:1;flex-direction:column;gap:4px}.x-person-row strong{font-size:15px}.x-person-row small{font-size:13px;color:var(--x-muted)}.x-person-row p{font-size:13px;margin:2px 0}.x-user-cover{background:#aab8c1}
.x-list-row{padding:12px 16px;width:100%;display:flex;text-align:left;gap:12px;align-items:center;border-bottom:1px solid var(--x-border)}.x-list-cover{width:57px;height:57px;flex:none;border-radius:9px;background:#96acb8;color:white;display:grid;place-items:center;font-size:26px}.x-list-cover.dark{background:#39434c}.x-list-row>span:nth-child(2){flex:1;display:flex;flex-direction:column;gap:3px}.x-list-row small{font-size:12px;color:var(--x-muted)}.x-list-row>i{font-size:20px;color:var(--x-muted)}.x-list-hero,.x-list-detail-hero{height:133px;background:#cfd9de;display:grid;place-items:center;color:#fff;font-size:38px}.x-list-detail-copy{text-align:center;padding:17px}.x-list-detail-copy h2{font-size:20px;margin:0 0 6px}.x-list-detail-copy span,.x-list-detail-copy p{display:block;font-size:13px;color:var(--x-muted)}.x-list-detail-copy p{margin:8px 0 14px}.x-community-card{width:calc(100% - 32px);margin:0 16px 16px;text-align:left;border:1px solid var(--x-border);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;padding-bottom:14px;gap:5px}.x-community-cover,.x-community-hero{height:122px;background:#788b9e;color:white;display:grid;place-items:center;font-size:44px;width:100%}.x-community-cover.warm{background:#9d877a}.x-community-card strong,.x-community-card small{margin:0 14px}.x-community-card strong{font-size:16px;margin-top:9px}.x-community-card small{font-size:12px;color:var(--x-muted)}.x-community-info{padding:17px}.x-community-info h2{margin:0 0 3px}.x-community-info small,.x-community-info p{font-size:13px;color:var(--x-muted)}.x-community-info p{margin:14px 0}.x-space-card{margin:0 16px 12px;padding:18px;width:calc(100% - 32px);text-align:left;display:flex;flex-direction:column;gap:11px;border-radius:17px;background:#4d425f;color:#fff}.x-space-card.alt{background:#456275}.x-space-card small{font-size:12px}.x-space-card strong{font-size:19px}.x-space-card span{font-size:13px;color:#e8e3ed}.x-space-detail{position:absolute;inset:calc(53px + var(--x-safe-top)) 0 0;background:#4d425f;color:white;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:22px;text-align:center}.x-space-detail>span{font-size:12px}.x-space-detail h2{font-size:25px;line-height:1.3}.x-space-detail p{font-size:14px}.x-space-people{display:flex;margin:25px}.x-space-people span{width:42px;height:42px;border:2px solid #fff;margin-right:-10px;border-radius:50%;display:grid;place-items:center}.x-space-detail button{position:absolute;bottom:calc(25px + var(--x-safe-bottom));left:18px;right:18px;height:48px;border-radius:25px;background:#fff;color:#0f1419;font-weight:700}
.x-premium{text-align:center;padding:30px 16px}.x-premium>i{font-size:45px}.x-premium h2{font-size:26px;margin:20px 0 10px}.x-premium p{font-size:13px;color:var(--x-muted);line-height:1.6}.x-premium-card{border:1px solid #cfd9de;border-radius:15px;text-align:left;padding:16px;margin-top:13px;display:flex;flex-direction:column;gap:7px}.x-premium-card strong{font-size:17px}.x-premium-card span{font-size:13px;color:var(--x-muted)}.x-analytics-hero{padding:30px 20px;background:#f7f9f9;display:flex;flex-direction:column;gap:9px}.x-analytics-hero small,.x-analytics-hero span{font-size:13px;color:var(--x-muted)}.x-analytics-hero strong{font-size:45px}.x-analytics-grid{display:grid;grid-template-columns:1fr 1fr;padding:0 16px 22px;gap:12px}.x-analytics-grid div{padding:15px;border:1px solid var(--x-border);border-radius:12px;display:flex;flex-direction:column;gap:5px}.x-analytics-grid b{font-size:20px}.x-analytics-grid span{font-size:12px;color:var(--x-muted)}.x-thread-info-avatar{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;color:white;margin:40px auto 10px;font-size:30px}.x-center{text-align:center}.x-account-row{padding:19px;display:flex;align-items:center;gap:11px}.x-account-row>span:nth-child(2){display:flex;flex:1;flex-direction:column}.x-account-row small{color:var(--x-muted);font-size:12px}.x-grok-chat{position:absolute;inset:calc(52px + var(--x-safe-top)) 0 65px;overflow-y:auto;padding:17px;display:flex;flex-direction:column;gap:14px}.x-grok-chat:empty{display:none}.x-grok-chat .x-chat-bubble{max-width:92%}.x-grok-chat .x-grok-note{font-size:13px;color:var(--x-muted);line-height:1.5}.x-grok-panel.has-chat .x-grok-center{display:none}
.x-compose-preview:not(:empty){margin:0 17px 10px 67px;padding:14px;border:1px solid var(--x-border);border-radius:13px;color:var(--x-muted);font-size:14px}.x-poll-fields:not([hidden]){display:flex;flex-direction:column;gap:7px;margin:0 17px 0 67px}.x-poll-fields input{height:39px;border:1px solid #cfd9de;border-radius:5px;padding:0 10px}.x-grok-chat .x-chat-bubble.own{color:#fff}.x-post[role="button"]:focus-visible{outline:2px solid var(--x-blue);outline-offset:-2px}
.x-subpage[data-x-subpage="history"] .x-sub-scroll{height:calc(100% - 102px - var(--x-safe-top))}.x-video-card{width:calc(100% - 32px);margin:0 16px 20px;display:flex;flex-direction:column;gap:8px;text-align:left}.x-video-card strong{font-size:15px}.x-video-card small{font-size:12px;color:var(--x-muted)}.x-video-poster{height:180px;width:100%;border-radius:13px;background:#8aa6b4;color:white;display:grid;place-items:center;font-size:37px}.x-video-poster.alt{background:#a18e9f}.x-video-view{height:54%;background:#1a1b1c;color:white;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px}.x-video-view i{font-size:55px}.x-video-view span{font-size:13px}.x-video-caption{padding:17px;display:flex;flex-direction:column;gap:6px}.x-video-caption strong{font-size:18px}.x-video-caption small{font-size:13px;color:var(--x-muted)}.x-job-card{display:flex;flex-direction:column;text-align:left;gap:7px;padding:17px;width:100%;border-bottom:1px solid var(--x-border)}.x-job-card strong{font-size:17px}.x-job-card span{font-size:14px}.x-job-card small{font-size:12px;color:var(--x-muted)}.x-job-detail{padding:20px 0}.x-job-detail>h2,.x-job-detail>span,.x-job-detail>p{margin-left:17px;margin-right:17px}.x-job-detail h2{font-size:22px;margin-top:0;margin-bottom:7px}.x-job-detail>span,.x-job-detail>p{font-size:14px;color:var(--x-muted);line-height:1.55}.x-job-detail .x-section-title{border-top:1px solid var(--x-border);margin-top:20px}


/* ================= Weather — canonical components and shared typography ================= */
#weatherApp{--wx-micro-size:10px;--wx-axis-size:11px;--wx-label-size:12px;--wx-caption-size:13px;--wx-secondary-size:14px;--wx-summary-size:15px;--wx-body-size:16px;--wx-heading-size:17px;--wx-subvalue-size:18px;--wx-condition-size:19px;--wx-control-size:20px;--wx-date-size:21px;--wx-nav-size:22px;--wx-city-size:23px;--wx-close-size:24px;--wx-result-size:25px;--wx-title-size:30px;--wx-value-size:32px;--wx-list-title-size:34px;--wx-detail-temp-size:48px;--wx-city-temp-size:52px;--wx-detail-value-size:58px;--wx-hero-compact-size:88px;--wx-hero-size:100px;--wx-text:#fff;--wx-sub:rgba(255,255,255,.80);--wx-line:rgba(255,255,255,.14);--wx-radius:18px;--wx-pad:14px;--wx-safe:max(12px,env(safe-area-inset-bottom));--wx-blur:13px;--wx-glass-border:rgba(255,255,255,.24);--wx-glass-shadow:0 10px 24px rgba(10,58,100,.10);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","PingFang SC","Noto Sans SC","Noto Sans CJK SC","Noto Sans CJK JP","Helvetica Neue",Arial,sans-serif;color:var(--wx-text);background:#398bd0;overflow:hidden;font-size:var(--wx-body-size);line-height:1.4;font-weight:400;letter-spacing:0;font-variant-numeric:tabular-nums;-webkit-text-size-adjust:100%;text-size-adjust:100%;--wx-space-small:2px;--wx-space-medium:8px;--wx-space-section:10px;--wx-forecast-top:64px;--wx-hero-bottom:20px;--wx-day-height:44px;--wx-card-heading-height:32px;}
#weatherApp *{box-sizing:border-box}
:where(#weatherApp) :where(button,input,textarea){font:inherit;color:inherit;letter-spacing:inherit;}
:where(#weatherApp) button{appearance:none;-webkit-appearance:none;border:0;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}
#weatherApp .weather-wi{display:block;fill:currentColor;overflow:visible}
#weatherApp .weather-wi path{fill:currentColor}
.wx-shell{position:absolute;inset:0;overflow:hidden;background:#5aa4db}
.wx-view{position:absolute;inset:0;display:none;overflow:hidden;background:transparent}
.wx-view.is-active{display:block}
.wx-scroll{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;padding:calc(env(safe-area-inset-top) + 48px) var(--wx-pad) calc(92px + var(--wx-safe))}
.wx-scroll::-webkit-scrollbar,.wx-hour-strip::-webkit-scrollbar{display:none}
.wx-forecast-scroll{padding-top:calc(env(safe-area-inset-top) + var(--wx-forecast-top));}

/* Forecast: iOS 26 has no conditions/precipitation/wind mode row on the main page. */
.wx-hero{text-align:center;padding:0 10px var(--wx-hero-bottom);display:flex;flex-direction:column;align-items:center;gap:var(--wx-space-small);}
.wx-local-label{font-size:var(--wx-caption-size);line-height:1.2;font-weight:600;letter-spacing:.2px;text-transform:uppercase;margin-bottom:0;color:rgba(255,255,255,.93);}
.wx-city{font-size:var(--wx-value-size);line-height:1.08;font-weight:400;letter-spacing:-.55px}
.wx-temp{font-size:var(--wx-hero-size);line-height:1;font-weight:200;letter-spacing:-5px;margin:0;text-indent:-5px;}
.wx-condition{font-size:var(--wx-condition-size);line-height:1.2;font-weight:600;margin-top:0;}
.wx-highlow{font-size:var(--wx-subvalue-size);line-height:1.2;font-weight:600;margin-top:0;}


.wx-card{position:relative;isolation:isolate;background:rgba(255,255,255,.14);border:1px solid var(--wx-glass-border);border-radius:var(--wx-radius);overflow:hidden;margin-bottom:var(--wx-space-section);box-shadow:inset 0 1px 0 rgba(255,255,255,.30),inset 0 -1px 0 rgba(255,255,255,.04),var(--wx-glass-shadow);-webkit-backdrop-filter:blur(var(--wx-blur)) saturate(1.16) brightness(1.03);backdrop-filter:blur(var(--wx-blur)) saturate(1.16) brightness(1.03);}
.wx-summary{font-size:var(--wx-summary-size);line-height:1.3;font-weight:500;padding:var(--wx-space-medium) 14px;border-bottom:1px solid var(--wx-line);}
.wx-hour-strip{display:flex;background:transparent;color:inherit;width:100%;border:0;overflow-x:auto;padding:var(--wx-space-medium) 4px;scroll-snap-type:x proximity;}
.wx-hour{flex:0 0 61px;display:flex;flex-direction:column;align-items:center;gap:0;scroll-snap-align:start;font-size:var(--wx-secondary-size);line-height:16px;font-weight:600;}
.wx-hour .weather-wi{width:28px;height:28px;}
.wx-hour-temp{font-size:var(--wx-subvalue-size);font-weight:500;margin-top:var(--wx-space-small);line-height:22px;}
.wx-rain{height:12px;font-size:var(--wx-micro-size);font-weight:700;color:#8ed8ff;line-height:12px;}
.wx-rain:empty{visibility:hidden}
.wx-card-title{height:var(--wx-card-heading-height);padding:0 13px;display:flex;align-items:center;gap:5px;text-transform:uppercase;color:rgba(235,247,255,.80);font-size:var(--wx-label-size);font-weight:600;letter-spacing:.2px;border-bottom:1px solid var(--wx-line);line-height:1.3;}
.wx-card-title .weather-wi{width:20px;height:20px}
.wx-days{padding:0 13px}
.wx-day{height:var(--wx-day-height);display:grid;grid-template-columns:58px 29px 34px minmax(0,1fr) 34px;gap:6px;align-items:center;border-bottom:1px solid var(--wx-line);}
.wx-day:last-child{border-bottom:0}
.wx-day-name{font-size:var(--wx-heading-size);font-weight:500;line-height:1.3;}.wx-day .weather-wi{width:29px;height:29px}.wx-low,.wx-high{font-size:var(--wx-heading-size);font-weight:500;line-height:1.3;}.wx-low{color:var(--wx-sub)}
.wx-range{height:4px;border-radius:5px;background:rgba(50,130,192,.58);position:relative}
.wx-range>span{position:absolute;top:0;bottom:0;left:var(--a);right:var(--b);border-radius:5px;background:linear-gradient(90deg,#7ddff5 0%,#dbe566 48%,#ffd33e 74%,#ff9d29 100%)}
.wx-range>i{position:absolute;width:5px;height:5px;border-radius:50%;background:#fff;top:50%;left:var(--dot);transform:translate(-50%,-50%);box-shadow:0 0 0 1px rgba(41,94,137,.22)}
.wx-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--wx-space-section);margin-top:0;}
.wx-tile{padding:12px 13px 11px;background:rgba(255,255,255,.12);border:1px solid var(--wx-glass-border);border-radius:var(--wx-radius);overflow:hidden;position:relative;isolation:isolate;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),inset 0 -1px 0 rgba(255,255,255,.03),0 8px 20px rgba(10,58,100,.08);-webkit-backdrop-filter:blur(var(--wx-blur)) saturate(1.16) brightness(1.03);backdrop-filter:blur(var(--wx-blur)) saturate(1.16) brightness(1.03);display:flex;flex-direction:column;align-items:stretch;text-align:left;min-width:0;}
.wx-tile.wide{grid-column:1/-1;}
.wx-tile-head{display:flex;align-items:center;gap:4px;color:rgba(235,247,255,.80);font-size:var(--wx-label-size);line-height:1.4;font-weight:600;text-transform:uppercase;letter-spacing:.25px;flex-shrink:0;}
.wx-tile-head .weather-wi{width:19px;height:19px}
.wx-value{font-size:var(--wx-value-size);line-height:1.2;font-weight:400;letter-spacing:-.4px;margin-top:7px;white-space:nowrap;flex-shrink:0;}
.wx-value-unit{font-size:var(--wx-subvalue-size);line-height:1.2;font-weight:400;letter-spacing:0;}.wx-value-sub{font-size:var(--wx-subvalue-size);font-weight:500;margin-top:1px;line-height:1.3;}
.wx-copy{font-size:var(--wx-caption-size);line-height:1.3;color:rgba(255,255,255,.92);margin-top:var(--wx-space-medium);padding-top:0;}
.wx-uvbar{height:4px;border-radius:5px;background:linear-gradient(90deg,#4bd55b,#f7dc3d,#ff8c2c,#ee4e7c,#a851e8);margin:var(--wx-space-medium) 0 0;position:relative;}.wx-uvbar::after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:#fff;left:31%;top:50%;transform:translate(-50%,-50%)}
.wx-sunline{position:relative;height:44px;border-bottom:2px solid rgba(255,255,255,.35);overflow:hidden;flex-shrink:0;margin-top:8px;}.wx-sunline::before{content:"";position:absolute;width:120%;height:58px;left:-10%;top:18px;border-radius:50%;border:3px solid rgba(199,235,255,.50)}.wx-sun-dot{position:absolute;left:32%;bottom:0;width:9px;height:9px;border-radius:50%;background:#fff;}
.wx-wind-layout{display:grid;grid-template-columns:1fr 116px;margin-top:4px;gap:12px;}.wx-wind-stats{padding-top:0;align-self:center;}.wx-wind-stat{height:32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.11);font-size:var(--wx-caption-size);line-height:1.3;}.wx-wind-stat:last-child{border:0}.wx-wind-stat span:last-child{color:var(--wx-sub)}
.wx-compass{width:104px;height:104px;border-radius:50%;margin:auto;position:relative;border:1px solid rgba(255,255,255,.18);background:radial-gradient(circle,rgba(255,255,255,.07) 0 37%,transparent 38%),repeating-conic-gradient(from 0deg,rgba(255,255,255,.22) 0 1deg,transparent 1deg 10deg)}.wx-compass b{position:absolute;font-size:var(--wx-micro-size);font-weight:700;color:var(--wx-sub);line-height:1.3;}.wx-compass .n{left:50%;top:5px;transform:translateX(-50%)}.wx-compass .e{right:6px;top:50%;transform:translateY(-50%)}.wx-compass .s{left:50%;bottom:5px;transform:translateX(-50%)}.wx-compass .w{left:6px;top:50%;transform:translateY(-50%)}.wx-compass-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:var(--wx-heading-size);font-weight:600;text-align:center;line-height:1.3;}.wx-needle{position:absolute;width:3px;height:39px;left:50%;top:10px;background:#fff;border-radius:5px;transform:translateX(-50%) rotate(27deg);transform-origin:50% 42px}

/* iOS 26 floating navigation controls: semi-transparent frosted glass with restrained blur. */
.wx-bottom-nav{position:absolute;left:0;right:0;bottom:var(--wx-safe);height:58px;z-index:40;pointer-events:none;display:grid;grid-template-columns:52px minmax(0,202px) 52px;justify-content:space-between;align-items:center;gap:10px;padding:0 13px;}
.wx-glass{pointer-events:auto;position:relative;isolation:isolate;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.26);box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 6px 16px rgba(19,79,124,.10);-webkit-backdrop-filter:blur(14px) saturate(1.18) brightness(1.04);backdrop-filter:blur(14px) saturate(1.18) brightness(1.04)}
.wx-nav-round{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:var(--wx-nav-size);line-height:1.3;}
.wx-nav-pill{height:52px;border-radius:26px;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 16px;color:#d7f4ff;min-width:0;}
.wx-nav-pill .fa-location-arrow{font-size:var(--wx-caption-size);transform:rotate(-35deg);margin-right:2px;line-height:1.3;}.wx-dots{display:flex;gap:5px;align-items:center}.wx-dots i{display:block;width:6px;height:6px;border-radius:50%;background:#65d7fb}.wx-dots i.active{background:#fff;width:7px;height:7px}.wx-nav-round i{font-size:var(--wx-date-size);line-height:1.3;}

/* Locations list */
.wx-locations{background:linear-gradient(180deg,#225f91 0%,#2d75aa 46%,#2c78b5 100%)}
.wx-locations-scroll{padding:calc(env(safe-area-inset-top) + 38px) 16px calc(88px + var(--wx-safe))}
.wx-list-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.wx-list-head h2{font-size:var(--wx-list-title-size);line-height:1;font-weight:700;letter-spacing:-1px;margin:0}.wx-more{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:var(--wx-control-size);position:relative;isolation:isolate;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 6px 14px rgba(11,52,86,.10);-webkit-backdrop-filter:blur(13px) saturate(1.15);backdrop-filter:blur(13px) saturate(1.15);line-height:1.3;}
.wx-city-list{display:flex;flex-direction:column;gap:13px}
.wx-city-card{width:100%;height:127px;border-radius:20px;padding:15px 17px;position:relative;isolation:isolate;text-align:left;overflow:hidden;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 18px rgba(11,52,86,.10);-webkit-backdrop-filter:blur(14px) saturate(1.16) brightness(1.03);backdrop-filter:blur(14px) saturate(1.16) brightness(1.03);display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto 1fr auto;column-gap:8px;align-content:stretch;align-items:start;}
.wx-city-card.night{background:linear-gradient(125deg,rgba(67,91,129,.36),rgba(27,58,98,.30) 58%,rgba(15,40,73,.28))}.wx-city-card.rainy{background:linear-gradient(125deg,rgba(126,148,168,.35),rgba(73,105,133,.29) 52%,rgba(44,75,103,.27))}
.wx-city-name{font-size:var(--wx-city-size);line-height:1.2;font-weight:600;letter-spacing:-.45px;grid-column:1;grid-row:1;}.wx-city-sub{font-size:var(--wx-caption-size);font-weight:500;margin-top:2px;grid-column:1;grid-row:2;line-height:1.4;}.wx-city-desc{font-size:var(--wx-caption-size);font-weight:500;grid-column:1;grid-row:4;line-height:1.4;}.wx-city-temp{font-size:var(--wx-city-temp-size);line-height:1;font-weight:300;letter-spacing:-2px;grid-column:2;grid-row:1 / 3;text-align:right;}.wx-city-hl{font-size:var(--wx-caption-size);font-weight:500;grid-column:2;grid-row:4;line-height:1.4;text-align:right;}
.wx-search-float{position:absolute;left:16px;right:16px;bottom:var(--wx-safe);height:52px;border-radius:26px;display:flex;align-items:center;gap:9px;padding:0 15px;background:rgba(20,57,87,.38);border:1px solid rgba(255,255,255,.24);box-shadow:inset 0 1px rgba(255,255,255,.14),0 2px 10px rgba(0,34,59,.10);-webkit-backdrop-filter:blur(9px) saturate(1.08);backdrop-filter:blur(9px) saturate(1.08);z-index:50}.wx-search-float i{font-size:var(--wx-subvalue-size);color:rgba(255,255,255,.72);line-height:1.3;}.wx-search-float span{font-size:var(--wx-body-size);color:rgba(255,255,255,.76);flex:1;line-height:1.3;}.wx-search-float .wx-search-mic{font-size:var(--wx-body-size);color:rgba(255,255,255,.62);margin-left:auto;line-height:1.3;}
.wx-menu{position:absolute;right:15px;top:calc(env(safe-area-inset-top) + 86px);width:224px;padding:6px;border-radius:18px;background:rgba(28,52,72,.58);border:1px solid rgba(255,255,255,.22);z-index:80;display:none;box-shadow:inset 0 1px rgba(255,255,255,.12),0 8px 22px rgba(0,0,0,.13);-webkit-backdrop-filter:blur(8px) saturate(1.08);backdrop-filter:blur(8px) saturate(1.08)}.wx-menu.open{display:block}.wx-menu button{height:45px;width:100%;display:flex;align-items:center;gap:12px;background:transparent;border-radius:12px;padding:0 11px;text-align:left;font-size:var(--wx-summary-size);font-weight:500;line-height:1.3;}.wx-menu button+button{border-top:1px solid rgba(255,255,255,.09);border-radius:0}.wx-menu button i{width:20px;text-align:center;font-size:var(--wx-heading-size);line-height:1.3;}

/* Search + preview */
.wx-search-view{background:#1d1d1f;color:#fff}.wx-search-top{height:calc(env(safe-area-inset-top) + 68px);padding:calc(env(safe-area-inset-top) + 12px) 14px 9px;display:flex;align-items:flex-end;gap:9px;border-bottom:1px solid rgba(255,255,255,.08)}
.wx-searchbox{height:42px;flex:1;border-radius:13px;background:rgba(74,74,78,.48);border:1px solid rgba(255,255,255,.09);display:flex;align-items:center;gap:8px;padding:0 11px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.wx-searchbox input{border:0;outline:0;background:transparent;min-width:0;flex:1;font-size:var(--wx-body-size);line-height:1.3;}.wx-searchbox input::placeholder{color:#8e8e93}.wx-searchbox i{color:#8e8e93}.wx-cancel{height:42px;background:transparent;color:#65aef7;font-size:var(--wx-body-size);padding:0 3px;line-height:1.3;}.wx-results{position:absolute;left:0;right:0;top:calc(env(safe-area-inset-top) + 69px);bottom:0;overflow-y:auto;padding:9px 16px 24px}.wx-result{height:66px;width:100%;background:transparent;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.09);text-align:left}.wx-result-main b{display:block;font-size:var(--wx-heading-size);font-weight:600;line-height:1.3;}.wx-result-main span{display:block;font-size:var(--wx-caption-size);color:#a7a7ad;margin-top:3px;line-height:1.3;}.wx-result-temp{font-size:var(--wx-result-size);font-weight:400;line-height:1.3;}
.wx-preview{background:linear-gradient(180deg,#5ca5dc 0%,#4b98d4 40%,#2c7abb 100%)}.wx-preview-top{position:absolute;left:0;right:0;top:0;height:calc(env(safe-area-inset-top) + 56px);padding:calc(env(safe-area-inset-top) + 7px) 13px 6px;display:flex;justify-content:space-between;align-items:flex-end;z-index:20}.wx-preview-top button{width:42px;height:42px;border-radius:50%;background:rgba(207,237,253,.22);border:1px solid rgba(255,255,255,.28);display:grid;place-items:center;font-size:var(--wx-control-size);box-shadow:inset 0 1px rgba(255,255,255,.18);-webkit-backdrop-filter:blur(8px) saturate(1.08);backdrop-filter:blur(8px) saturate(1.08);line-height:1.3;}

/* Hourly/detail sheet — dark native Weather detail presentation. */
.wx-dark{background:#1c1c1e;color:#fff}.wx-dark-scroll{padding:calc(env(safe-area-inset-top) + 61px) 16px 34px}.wx-sheet-close{right:13px;top:calc(env(safe-area-inset-top) + 10px);width:38px;height:38px;border-radius:50%;display:grid;place-items:center;position:absolute;isolation:isolate;background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.12);color:#d1d1d6;z-index:25;font-size:var(--wx-subvalue-size);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 6px 14px rgba(0,0,0,.12);-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);line-height:1.3;}.wx-sheet-title{position:absolute;top:calc(env(safe-area-inset-top) + 10px);left:0;right:0;text-align:center;font-size:var(--wx-heading-size);font-weight:700;pointer-events:none;height:38px;display:flex;align-items:center;justify-content:center;padding:0 60px;line-height:1.3;}.wx-weekbar{display:flex;justify-content:space-between;padding:8px 2px 13px;border-bottom:1px solid #353538}.wx-date{width:45px;text-align:center}.wx-date b{display:block;font-size:var(--wx-label-size);color:#f2f2f7;line-height:1.3;}.wx-date span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;margin:6px auto 0;font-size:var(--wx-control-size);line-height:1.3;}.wx-date.active span{background:#4cc2f3;color:#111}.wx-full-date{text-align:center;font-size:var(--wx-date-size);margin:12px 0 24px;line-height:1.3;}.wx-detail-summary{display:flex;align-items:center;justify-content:space-between}.wx-detail-temp{font-size:var(--wx-detail-temp-size);font-weight:400;letter-spacing:-1px;display:flex;align-items:center;gap:5px;line-height:1.1;}.wx-detail-temp .weather-wi{display:block;width:43px;height:43px;flex-shrink:0;}.wx-detail-hl{font-size:var(--wx-heading-size);color:#8e8e93;margin-top:2px;line-height:1.3;}.wx-metric-button{height:42px;border-radius:21px;padding:0 14px;position:relative;isolation:isolate;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.10);display:flex;align-items:center;gap:8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 6px 14px rgba(0,0,0,.10);-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px)}.wx-metric-button .weather-wi{width:26px;height:26px}.wx-chart{height:268px;margin-top:12px;border:1px solid #36363a;border-radius:12px;position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent)}
.wx-chart-grid{position:absolute;inset:0;background:linear-gradient(to bottom,transparent 24%,rgba(255,255,255,.10) 25%,transparent 25.5%,transparent 49%,rgba(255,255,255,.10) 50%,transparent 50.5%,transparent 74%,rgba(255,255,255,.10) 75%,transparent 75.5%),repeating-linear-gradient(to right,transparent 0 12.4%,rgba(255,255,255,.07) 12.5% 12.7%)}
.wx-chart-line{position:absolute;left:0;right:0;top:82px;height:95px;background:linear-gradient(180deg,rgba(247,190,30,.45),rgba(85,190,206,.18));clip-path:polygon(0 68%,12% 76%,25% 82%,38% 62%,50% 40%,62% 28%,75% 46%,87% 66%,100% 79%,100% 100%,0 100%)}
.wx-chart-stroke{position:absolute;left:0;right:0;top:77px;height:88px;background:#f7ae1c;clip-path:polygon(0 66%,12% 74%,25% 80%,38% 60%,50% 38%,62% 26%,75% 44%,87% 64%,100% 77%,100% 82%,87% 69%,75% 49%,62% 31%,50% 43%,38% 65%,25% 85%,12% 79%,0 71%)}
.wx-chart-icons{position:absolute;left:6px;right:6px;top:8px;display:grid;grid-template-columns:repeat(8,1fr);place-items:center}.wx-chart-icons .weather-wi{width:21px;height:21px}.wx-chart-times{position:absolute;left:8px;right:8px;bottom:8px;display:grid;grid-template-columns:repeat(4,1fr);font-size:var(--wx-axis-size);color:#8e8e93;line-height:1.3;}.wx-chart-times span:last-child{text-align:right}.wx-chart-y{position:absolute;right:8px;top:54px;bottom:31px;display:flex;flex-direction:column;justify-content:space-between;font-size:var(--wx-axis-size);color:#8e8e93;text-align:right;line-height:1.3;}.wx-detail-note{font-size:var(--wx-secondary-size);line-height:1.38;color:#b7b7bd;margin:14px 2px 0}

/* Generic detail card page */
.wx-detail-page{background:#1c1c1e}.wx-detail-page .wx-dark-scroll{padding-top:calc(env(safe-area-inset-top) + 74px)}.wx-detail-page-title{font-size:var(--wx-title-size);font-weight:700;letter-spacing:-.6px;line-height:1.3;}.wx-detail-big{font-size:var(--wx-detail-value-size);font-weight:300;margin-top:20px;line-height:1.2;overflow-wrap:anywhere;}.wx-detail-text{font-size:var(--wx-body-size);line-height:1.45;color:#c7c7cc;margin-top:10px}.wx-detail-panel{margin-top:20px;position:relative;isolation:isolate;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 8px 20px rgba(0,0,0,.14);-webkit-backdrop-filter:blur(13px) saturate(1.06);backdrop-filter:blur(13px) saturate(1.06)}.wx-detail-panel h4{font-size:var(--wx-caption-size);text-transform:uppercase;color:#8e8e93;margin:0 0 12px;line-height:1.3;}.wx-detail-bars{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;height:150px;align-items:end}.wx-detail-bars i{height:var(--h);border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#66d6ff,#347eb3)}

/* Weather map: iOS 26 control placement, no heavy blur. */
.wx-map{background:#187db8}.wx-map-canvas{position:absolute;inset:0;overflow:hidden;background:linear-gradient(180deg,#1689c4,#0d77b4 55%,#086da8)}.wx-map-canvas::before{content:"";position:absolute;inset:0;opacity:.55;background:repeating-radial-gradient(ellipse at 20% 30%,rgba(202,243,255,.40) 0 1px,transparent 1px 15px),repeating-radial-gradient(ellipse at 74% 68%,rgba(212,247,255,.28) 0 1px,transparent 1px 18px)}.wx-map-canvas[data-layer="temperature"]{background:linear-gradient(130deg,#2e71d0,#42b0c8 35%,#8cc86a 58%,#efb63e 78%,#e25b4c)}.wx-map-canvas[data-layer="air"]{background:radial-gradient(circle at 32% 30%,#56b56f,transparent 28%),radial-gradient(circle at 72% 60%,#d1bb3c,transparent 27%),#3b9079}.wx-map-canvas[data-layer="precipitation"]{background:radial-gradient(circle at 37% 43%,rgba(244,77,178,.88),transparent 12%),radial-gradient(circle at 58% 56%,rgba(56,80,231,.90),transparent 22%),radial-gradient(circle at 72% 25%,rgba(46,164,236,.78),transparent 18%),#263f5a}.wx-map-land{position:absolute;border:1px solid rgba(211,242,255,.40);border-radius:46% 54% 58% 42%;background:rgba(62,151,185,.15)}.wx-map-land.a{width:46%;height:43%;left:12%;top:19%;transform:rotate(-16deg)}.wx-map-land.b{width:27%;height:39%;left:47%;top:50%;transform:rotate(16deg)}.wx-map-land.c{width:31%;height:28%;right:-5%;top:22%;transform:rotate(-11deg)}.wx-map-name{position:absolute;font-size:var(--wx-axis-size);font-weight:650;color:rgba(255,255,255,.78);text-shadow:0 1px 2px rgba(0,0,0,.3);line-height:1.3;}.wx-map-name.na{left:29%;top:36%}.wx-map-name.sa{left:56%;top:62%}.wx-map-name.tokyo{right:13%;top:43%}.wx-map-point{position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 2px rgba(24,100,148,.35)}.wx-map-point.p1{left:26%;top:48%}.wx-map-point.p2{right:18%;top:46%}
.wx-map-control{z-index:20;display:grid;place-items:center;position:absolute;isolation:isolate;background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(213,239,250,.12) 60%,rgba(116,189,231,.11));color:#0d2537;border:1px solid rgba(255,255,255,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 6px 16px rgba(0,56,87,.10);-webkit-backdrop-filter:blur(14px) saturate(1.14);backdrop-filter:blur(14px) saturate(1.14)}.wx-map-close{left:12px;top:calc(env(safe-area-inset-top) + 10px);width:48px;height:48px;border-radius:50%;font-size:var(--wx-close-size);line-height:1.3;}.wx-map-stack{right:12px;top:calc(env(safe-area-inset-top) + 10px);width:48px;border-radius:24px;overflow:hidden}.wx-map-stack button{width:48px;height:48px;background:transparent;display:grid;place-items:center;color:#0d2537;font-size:var(--wx-date-size);line-height:1.3;}.wx-map-stack button+button{border-top:1px solid rgba(36,83,111,.15)}.wx-map-list{right:12px;top:calc(env(safe-area-inset-top) + 119px);width:48px;height:48px;border-radius:50%;font-size:var(--wx-control-size);line-height:1.3;}.wx-map-scale{left:12px;top:calc(env(safe-area-inset-top) + 72px);width:104px;min-height:174px;border-radius:17px;padding:12px;position:absolute;isolation:isolate;background:linear-gradient(180deg,rgba(255,255,255,.20),rgba(210,237,249,.12) 55%,rgba(117,190,231,.11));border:1px solid rgba(255,255,255,.36);color:#14354a;z-index:15;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 8px 18px rgba(0,56,87,.10);-webkit-backdrop-filter:blur(14px) saturate(1.14);backdrop-filter:blur(14px) saturate(1.14)}.wx-map-scale b{font-size:var(--wx-caption-size);line-height:1.3;}.wx-scale-bar{width:6px;height:111px;border-radius:4px;margin:12px 0 0 2px;background:linear-gradient(#e8f9ff,#62cae3,#3c93c5,#1a5b98);position:relative}.wx-scale-labels{position:absolute;left:27px;top:50px;height:111px;display:flex;flex-direction:column;justify-content:space-between;font-size:var(--wx-axis-size);color:#31586f;line-height:1.3;}
.wx-map-layer-menu{z-index:40;right:67px;top:calc(env(safe-area-inset-top) + 10px);width:205px;padding:6px;border-radius:18px;position:absolute;isolation:isolate;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.56);color:#111;display:none;box-shadow:0 12px 26px rgba(0,0,0,.12);-webkit-backdrop-filter:blur(14px) saturate(1.12);backdrop-filter:blur(14px) saturate(1.12)}.wx-map-layer-menu.open{display:block}.wx-map-layer-menu button{width:100%;height:45px;border-radius:12px;background:transparent;display:flex;align-items:center;gap:10px;padding:0 10px;text-align:left;color:#111;font-size:var(--wx-body-size);line-height:1.3;}.wx-map-layer-menu button.active{background:rgba(77,170,220,.17)}.wx-map-layer-menu .weather-wi{width:26px;height:26px}.wx-map-timeline{left:16px;right:16px;bottom:var(--wx-safe);min-height:100px;border-radius:31px;position:absolute;isolation:isolate;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.44);color:#143349;z-index:20;padding:12px 18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 8px 18px rgba(0,56,87,.10);-webkit-backdrop-filter:blur(14px) saturate(1.14);backdrop-filter:blur(14px) saturate(1.14)}.wx-map-timehead{display:flex;align-items:center;gap:10px}.wx-play{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:rgba(54,133,181,.18)}.wx-map-timehead b{font-size:var(--wx-summary-size);line-height:1.3;}.wx-map-timehead small{display:block;font-size:var(--wx-label-size);color:#3a8ac1;margin-top:1px;line-height:1.3;}.wx-map-track{height:5px;border-radius:5px;background:linear-gradient(90deg,#1d5c92 0 42%,#78d4f0 42%);margin-top:11px;position:relative}.wx-map-track::after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;left:42%;top:50%;transform:translate(-50%,-50%)}.wx-map-times{display:flex;justify-content:space-between;font-size:var(--wx-micro-size);color:#2f84bb;margin-top:6px;line-height:1.3;}

/* In-app settings pages */
.wx-settings-view{background:#f2f2f7;color:#111}.wx-settings-top{height:calc(env(safe-area-inset-top) + 58px);padding:calc(env(safe-area-inset-top) + 10px) 12px 8px;display:grid;grid-template-columns:64px 1fr 64px;align-items:center;background:rgba(248,248,250,.72);border-bottom:1px solid rgba(209,209,214,.66);-webkit-backdrop-filter:blur(14px) saturate(1.05);backdrop-filter:blur(14px) saturate(1.05);}.wx-settings-top button{height:40px;background:transparent;color:#007aff;font-size:var(--wx-body-size);line-height:1.3;}.wx-settings-top .left{text-align:left}.wx-settings-top .right{text-align:right}.wx-settings-top h3{text-align:center;margin:0;font-size:var(--wx-heading-size);font-weight:600;line-height:1.3;}.wx-settings-scroll{position:absolute;top:calc(env(safe-area-inset-top) + 58px);left:0;right:0;bottom:0;overflow-y:auto;padding:26px 16px 38px}.wx-group-label{font-size:var(--wx-caption-size);color:#6e6e73;text-transform:uppercase;margin:0 15px 7px;line-height:1.3;}.wx-setting-group{position:relative;isolation:isolate;background:linear-gradient(180deg,rgba(255,255,255,.70),rgba(255,255,255,.58));border:1px solid rgba(255,255,255,.78);border-radius:13px;overflow:hidden;margin-bottom:22px;box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 6px 16px rgba(0,0,0,.06);-webkit-backdrop-filter:blur(14px) saturate(1.04);backdrop-filter:blur(14px) saturate(1.04)}.wx-setting-row{min-height:49px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e5e5ea;font-size:var(--wx-body-size);line-height:1.3;}.wx-setting-row:last-child{border-bottom:0}.wx-setting-row small{font-size:var(--wx-caption-size);color:#8e8e93;line-height:1.3;}.wx-switch{width:51px;height:31px;border-radius:17px;background:#c7c7cc;position:relative;flex:none}.wx-switch::after{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.22);transition:left .15s}.wx-switch[aria-checked="true"]{background:#34c759}.wx-switch[aria-checked="true"]::after{left:22px}.wx-unit-choice{display:flex;gap:6px}.wx-unit-choice button{height:31px;border-radius:8px;padding:0 10px;background:#e5e5ea;color:#333;font-size:var(--wx-caption-size);line-height:1.3;}.wx-unit-choice button.active{background:#007aff;color:#fff}.wx-report-option{width:100%;height:49px;background:rgba(255,255,255,.42);text-align:left;padding:0 15px;border-bottom:1px solid rgba(229,229,234,.80);color:#111;display:flex;align-items:center;justify-content:space-between;font-size:var(--wx-body-size);line-height:1.3;}.wx-report-option.active::after{content:"✓";color:#007aff;font-weight:700}.wx-report-text{width:100%;height:110px;position:relative;isolation:isolate;border:1px solid rgba(255,255,255,.78);outline:0;resize:none;background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.58));border-radius:13px;padding:12px 14px;color:#111;font-size:var(--wx-body-size);box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 6px 16px rgba(0,0,0,.06);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);line-height:1.3;}.wx-submit{width:100%;height:48px;border-radius:13px;background:#007aff;color:#fff;font-size:var(--wx-heading-size);font-weight:600;margin-top:18px;display:grid;place-items:center;line-height:1.3;}

@media(max-width:365px){#weatherApp{--wx-pad:12px}.wx-temp{font-size:var(--wx-hero-compact-size);}.wx-city-card{height:121px}}
@media(prefers-reduced-motion:reduce){#weatherApp *,#weatherApp *::before,#weatherApp *::after{scroll-behavior:auto;transition:none;animation:none}}


#weatherApp .fa-map{--fa:"\f279"}#weatherApp .fa-location-arrow{--fa:"\f124"}


.runtime-error-panel{position:fixed;z-index:120;left:15px;right:15px;bottom:max(15px,env(safe-area-inset-bottom));max-width:560px;margin:0 auto;padding:12px 13px;border:1px solid rgba(17,17,17,.16);border-radius:12px;background:rgba(255,255,255,.98);color:var(--text-strong);font-family:var(--font-ui);box-shadow:none;box-sizing:border-box;opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;transition:opacity 140ms ease,transform 140ms ease,visibility 0s linear 160ms}
.runtime-error-panel.show{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;transition-delay:0s}
.runtime-error-head{display:flex;align-items:center;gap:8px;min-width:0}
.runtime-error-mark{width:22px;height:22px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--text-strong);color:var(--white);font-size:12px;line-height:1}
.runtime-error-title{min-width:0;flex:1;font-size:13px;font-weight:var(--weight-semibold);line-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.runtime-error-close{appearance:none;-webkit-appearance:none;width:26px;height:26px;display:grid;place-items:center;border:0;background:transparent;color:var(--text-secondary);font:inherit;font-size:18px;line-height:1;cursor:pointer}
.runtime-error-copy{margin-top:7px;font-size:12px;line-height:17px;color:var(--text-secondary);white-space:pre-wrap;overflow-wrap:anywhere;user-select:text;-webkit-user-select:text}
.runtime-error-meta{margin-top:5px;font-size:10px;line-height:14px;color:var(--text-muted);user-select:text;-webkit-user-select:text}
@media (prefers-reduced-motion:reduce){.runtime-error-panel{transition:none}}
