/* 1.12.13 — Mobile full-bleed feed shell + horizontal viewport lock. */
@media(max-width:767px){
  html,
  body.sms-app-page{
    inline-size:100%;
    max-inline-size:100%;
    overflow-x:hidden!important;
    overscroll-behavior-x:none;
  }
  .sms-app-root,
  .sms-app-shell,
  .sms-app-centre{
    inline-size:100%;
    max-inline-size:100%;
    min-inline-size:0;
    overflow-x:hidden!important;
  }
  .sms-app-centre__stream[data-sms-route="feed"]{
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    margin-inline:0!important;
    padding-inline:var(--sms-safe-left) var(--sms-safe-right)!important;
    overflow-x:clip!important;
  }
  .sms-app-centre__stream[data-sms-route="feed"]>.sms-feed-highlights,
  .sms-app-centre__stream[data-sms-route="feed"]>.sms-composer-launcher,
  .sms-app-centre__stream[data-sms-route="feed"]>.sms-composer,
  .sms-app-centre__stream[data-sms-route="feed"] .sms-activity-card{
    inline-size:100%!important;
    max-inline-size:100%!important;
    margin-inline:0!important;
    border-inline:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  .sms-app-centre__stream[data-sms-route="feed"]>.sms-feed-highlights{
    margin-block-end:8px!important;
    padding-inline:12px!important;
  }
  .sms-app-centre__stream[data-sms-route="feed"]>.sms-composer-launcher{
    margin-block-end:8px!important;
  }
  .sms-app-centre__stream[data-sms-route="feed"] .sms-activity-insertion,
  .sms-app-centre__stream[data-sms-route="feed"] .sms-activity-stream{
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    margin-inline:0!important;
  }
  .sms-app-centre__stream[data-sms-route="feed"] .sms-activity-stream{
    gap:8px!important;
  }
  .sms-app-centre__stream[data-sms-route="feed"] .sms-activity-gallery-grid{
    margin-inline:0!important;
    border-radius:0!important;
  }
  .sms-app-centre__stream[data-sms-route="feed"] .sms-activity-gallery-reference{
    margin-inline:14px!important;
  }
  .sms-app-centre__stream[data-sms-route="feed"] .sms-ad-grid-slot,
  .sms-app-centre__stream[data-sms-route="feed"] .sms-ad-server-position,
  .sms-app-centre__stream[data-sms-route="feed"] .sms-ad-placeholder{
    max-inline-size:100%!important;
    margin-inline:0!important;
  }
  .sms-mobile-bottom-nav{
    inset-inline:var(--sms-safe-left) var(--sms-safe-right)!important;
    inset-block-end:0!important;
    min-block-size:calc(62px + var(--sms-safe-bottom))!important;
    padding-block-end:max(6px,var(--sms-safe-bottom))!important;
    border-inline:0!important;
    border-block-end:0!important;
    border-radius:18px 18px 0 0!important;
  }
}

/* SMSocial 1.12.14 — Canonical Stories: explicit opt-in, timed viewer and social actions. */
.sms-composer__story-toggle{display:flex;align-items:center;gap:11px;margin-block-start:10px;padding:10px 12px;border:1px solid var(--sms-border);border-radius:13px;background:var(--sms-surface-soft);cursor:pointer}
.sms-composer__story-toggle>input{appearance:none;position:relative;flex:0 0 auto;inline-size:42px;block-size:24px;margin:0;border:1px solid var(--sms-border-strong);border-radius:999px;background:var(--sms-surface-strong);cursor:pointer;transition:background .15s ease,border-color .15s ease}
.sms-composer__story-toggle>input::after{content:"";position:absolute;inset-block-start:3px;inset-inline-start:3px;inline-size:16px;block-size:16px;border-radius:50%;background:var(--sms-muted);transition:transform .15s ease,background .15s ease}
.sms-composer__story-toggle>input:checked{border-color:var(--sms-primary);background:var(--sms-primary)}
.sms-composer__story-toggle>input:checked::after{background:#fff;transform:translateX(18px)}
.sms-composer__story-toggle>input:focus-visible{outline:2px solid color-mix(in srgb,var(--sms-primary) 55%,transparent);outline-offset:2px}
.sms-composer__story-toggle>span{display:grid;gap:2px;min-inline-size:0}.sms-composer__story-toggle strong{color:var(--sms-text);font-size:.8rem}.sms-composer__story-toggle small{color:var(--sms-muted);font-size:.68rem;line-height:1.35}

.sms-highlight-viewer__dialog{grid-template-rows:auto auto minmax(0,1fr) auto}
.sms-highlight-viewer__progress{display:flex;gap:4px;padding:8px 10px 2px;background:rgba(7,11,19,.98)}
.sms-highlight-viewer__progress>span{position:relative;flex:1 1 0;block-size:3px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.28)}
.sms-highlight-viewer__progress>span>i{display:block;inline-size:0;block-size:100%;border-radius:inherit;background:#fff;transition:inline-size .08s linear}
.sms-highlight-viewer__stage audio{inline-size:min(620px,calc(100% - 40px));max-inline-size:100%}
.sms-highlight-viewer__text-story{display:grid;place-items:center;inline-size:100%;block-size:100%;padding:clamp(28px,7vw,90px);background:linear-gradient(145deg,#10213d,#2e1767);overflow:auto}
.sms-highlight-viewer__text-story p{max-inline-size:780px;margin:0;color:#fff;font-size:clamp(1.35rem,4vw,3.4rem);font-weight:850;line-height:1.12;text-align:center;overflow-wrap:anywhere;white-space:pre-wrap}
.sms-highlight-viewer__interactions{min-inline-size:0;max-block-size:min(42dvh,440px);overflow:auto;overscroll-behavior:contain;border-top:1px solid rgba(255,255,255,.12);background:var(--sms-surface,#fff);color:var(--sms-text,#172033)}
.sms-highlight-viewer__interactions:empty{display:none}
.sms-highlight-viewer__interactions>.sms-story-interaction-card{display:block!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
.sms-highlight-viewer__interactions>.sms-story-interaction-card>.sms-reactions{border:0!important;background:var(--sms-surface,#fff)}
.sms-highlight-viewer__interactions .sms-share-control,.sms-highlight-viewer__interactions .sms-save-control{display:none!important}
.sms-highlight-viewer__interactions .sms-activity-actions{justify-content:center;gap:clamp(32px,12vw,110px);padding:7px 14px 10px}
.sms-highlight-viewer__interactions .sms-reaction-trigger,.sms-highlight-viewer__interactions .sms-comment-trigger{min-inline-size:96px;justify-content:center}
.sms-highlight-viewer__interactions .sms-reactions__summary{justify-content:center;min-block-size:25px;padding:4px 12px 0}
.sms-highlight-viewer__interactions .sms-comments:not([hidden]){max-block-size:min(34dvh,360px);overflow:auto;overscroll-behavior:contain;padding-block-end:max(18px,env(safe-area-inset-bottom))}
.sms-story-interaction-card[hidden]{display:none!important}

@media(max-width:767px){
 .sms-composer__story-toggle{margin-inline:0;padding:9px 10px}.sms-composer__story-toggle small{font-size:.64rem}
 .sms-highlight-viewer__progress{padding-block-start:max(7px,env(safe-area-inset-top));padding-inline:max(8px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-right))}
 .sms-highlight-viewer__bar{padding-block-start:7px}
 .sms-highlight-viewer__stage{padding-block-end:0}
 .sms-highlight-viewer__stage audio{inline-size:calc(100% - 28px)}
 .sms-highlight-viewer__text-story{padding:28px 22px}.sms-highlight-viewer__text-story p{font-size:clamp(1.3rem,7vw,2.4rem)}
 .sms-highlight-viewer__interactions{max-block-size:44dvh;padding-block-end:env(safe-area-inset-bottom)}
 .sms-highlight-viewer__interactions .sms-activity-actions{justify-content:space-evenly;gap:8px;padding-inline:10px}
 .sms-highlight-viewer__interactions .sms-reaction-trigger,.sms-highlight-viewer__interactions .sms-comment-trigger{min-inline-size:118px;min-block-size:42px}
 .sms-highlight-viewer__interactions .sms-reaction-picker{z-index:2147483660}
 .sms-highlight-viewer__interactions .sms-comments:not([hidden]){max-block-size:36dvh}
}

/* SMSocial 1.12.15 — Story Viewer 2.0: immersive canvas, compact social actions and optional CTA. */
.sms-composer__story-options[hidden]{display:none!important}
.sms-composer__story-options{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(150px,.6fr);gap:10px;margin-block-start:8px;padding:12px;border:1px solid var(--sms-border);border-radius:14px;background:var(--sms-surface-soft)}
.sms-composer__story-link-field{display:grid;gap:6px;min-inline-size:0}
.sms-composer__story-link-field>span{color:var(--sms-text);font-size:.72rem;font-weight:800}
.sms-composer__story-link-field>span small{color:var(--sms-muted);font-weight:650}
.sms-composer__story-link-field>input{inline-size:100%;min-inline-size:0;block-size:42px;padding:0 11px;border:1px solid var(--sms-border-strong);border-radius:10px;background:var(--sms-surface);color:var(--sms-text);font:inherit;font-size:.78rem}
.sms-composer__story-link-field>input:focus{outline:2px solid color-mix(in srgb,var(--sms-primary) 48%,transparent);outline-offset:1px;border-color:var(--sms-primary)}
.sms-composer__story-link-help{grid-column:1/-1;color:var(--sms-muted);font-size:.66rem;line-height:1.35}

.sms-highlight-viewer{padding:22px;background:rgba(3,5,10,.94);backdrop-filter:blur(14px)}
.sms-highlight-viewer__dialog{position:relative;display:block;inline-size:min(520px,calc(100vw - 44px));block-size:min(92dvh,900px);overflow:hidden;border:1px solid rgba(255,255,255,.14);border-radius:20px;background:#05070b;color:#fff;box-shadow:0 30px 110px rgba(0,0,0,.62);isolation:isolate}
.sms-highlight-viewer__stage-shell{position:absolute;inset:0;display:block;overflow:hidden;background:#05070b}
.sms-highlight-viewer__backdrop{position:absolute;z-index:0;inset:-28px;background-position:center;background-size:cover;background-repeat:no-repeat;filter:blur(26px) brightness(.42) saturate(.9);transform:scale(1.08);opacity:.94;pointer-events:none}
.sms-highlight-viewer__backdrop[hidden]{display:none!important}
.sms-highlight-viewer__stage-shell::after{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,.58) 0,rgba(0,0,0,.12) 16%,rgba(0,0,0,0) 48%,rgba(0,0,0,.08) 66%,rgba(0,0,0,.66) 100%)}
.sms-highlight-viewer__progress{position:absolute;z-index:20;inset-block-start:10px;inset-inline:12px;display:flex;gap:4px;padding:0;background:transparent}
.sms-highlight-viewer__progress>span{block-size:3px;background:rgba(255,255,255,.3);box-shadow:0 1px 2px rgba(0,0,0,.25)}
.sms-highlight-viewer__progress>span>i{background:#fff}
.sms-highlight-viewer__bar{position:absolute;z-index:15;inset-block-start:20px;inset-inline:12px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-block-size:46px;padding:0;border:0;background:transparent}
.sms-highlight-viewer__back{display:none!important}
.sms-highlight-viewer__identity{grid-column:2;display:flex;align-items:center;gap:9px;min-inline-size:0;justify-self:start}
.sms-highlight-viewer__avatar{display:grid;place-items:center;flex:0 0 36px;inline-size:36px;block-size:36px;overflow:hidden;border:2px solid rgba(255,255,255,.92);border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:.8rem;font-weight:900;text-shadow:0 1px 2px rgba(0,0,0,.35);box-shadow:0 4px 16px rgba(0,0,0,.28)}
.sms-highlight-viewer__avatar img{display:block;inline-size:100%;block-size:100%;object-fit:cover}
.sms-highlight-viewer__meta{display:grid;gap:1px;min-inline-size:0;text-align:start;text-shadow:0 1px 3px rgba(0,0,0,.7)}
.sms-highlight-viewer__meta strong,.sms-highlight-viewer__meta small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sms-highlight-viewer__meta strong{color:#fff;font-size:.84rem;font-weight:850}
.sms-highlight-viewer__meta small{max-inline-size:260px;color:rgba(255,255,255,.72);font-size:.62rem;font-weight:650}
.sms-highlight-viewer__close{grid-column:3;display:grid;place-items:center;inline-size:36px;min-inline-size:36px;max-inline-size:36px;block-size:36px;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.38);color:#fff;font-size:1.5rem;line-height:1;backdrop-filter:blur(8px);box-shadow:none}
.sms-highlight-viewer__close:hover{background:rgba(0,0,0,.58)}
.sms-highlight-viewer__stage{position:absolute;z-index:2;inset:0;display:grid;place-items:center;min-inline-size:0;min-block-size:0;overflow:hidden;background:transparent;contain:layout paint}
.sms-highlight-viewer__stage img{display:block;inline-size:100%;block-size:100%;max-inline-size:100%;max-block-size:100%;object-fit:contain;object-position:center;background:transparent}
.sms-highlight-viewer__stage video,.sms-highlight-viewer__dialog[data-media-orientation=portrait] .sms-highlight-viewer__stage video,.sms-highlight-viewer__dialog[data-media-orientation=landscape] .sms-highlight-viewer__stage video{display:block;inline-size:100%!important;block-size:100%!important;max-inline-size:100%!important;max-block-size:100%!important;object-fit:contain!important;object-position:center!important;background:transparent!important;outline:none}
.sms-highlight-viewer__stage audio{position:relative;z-index:2;inline-size:calc(100% - 44px);max-inline-size:430px}
.sms-highlight-viewer__nav{z-index:12;inline-size:34px;block-size:46px;margin-block-start:-23px;border:0;border-radius:10px;background:rgba(0,0,0,.18);box-shadow:none;color:rgba(255,255,255,.86);font-size:1.55rem;backdrop-filter:blur(4px);opacity:.55;transition:opacity .15s ease,background .15s ease}
.sms-highlight-viewer__nav--prev{inset-inline-start:8px}.sms-highlight-viewer__nav--next{inset-inline-end:8px}
.sms-highlight-viewer__nav:not(:disabled):hover{opacity:1;background:rgba(0,0,0,.42)}
.sms-highlight-viewer__nav:disabled{opacity:0;pointer-events:none}
.sms-highlight-viewer__playback{z-index:16;inset-block-start:70px;inset-inline-start:auto;inset-inline-end:13px;inline-size:36px;block-size:36px;border:0;background:rgba(0,0,0,.38);box-shadow:none;font-size:.82rem;backdrop-filter:blur(8px)}
.sms-highlight-viewer__caption{position:absolute;z-index:10;inset-inline:18px;inset-block-end:138px;display:-webkit-box;max-block-size:4.2em;overflow:hidden;color:#fff;font-size:.84rem;font-weight:650;line-height:1.4;text-shadow:0 2px 5px rgba(0,0,0,.9);-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow-wrap:anywhere;pointer-events:none}
.sms-highlight-viewer__caption[hidden]{display:none!important}
.sms-highlight-viewer__cta{position:absolute;z-index:11;inset-inline:18px;inset-block-end:76px;display:flex;justify-content:center;pointer-events:none}
.sms-highlight-viewer__cta[hidden]{display:none!important}
.sms-highlight-viewer__cta>a{display:inline-flex;align-items:center;justify-content:center;min-block-size:42px;max-inline-size:min(88%,360px);padding:0 18px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:rgba(255,255,255,.94);color:#101624;font-size:.78rem;font-weight:850;text-decoration:none;box-shadow:0 7px 24px rgba(0,0,0,.26);pointer-events:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sms-highlight-viewer__cta>a::after{content:"↗";margin-inline-start:8px;font-size:.9em}
.sms-highlight-viewer__cta>a:hover{background:#fff}

.sms-highlight-viewer__interactions{position:absolute;z-index:13;inset:0;max-block-size:none;overflow:visible;border:0;background:transparent;color:#fff;pointer-events:none}
.sms-highlight-viewer__interactions:empty{display:none}
.sms-highlight-viewer__interactions>.sms-story-interaction-card{position:absolute;inset:0;display:block!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;pointer-events:none}
.sms-highlight-viewer__interactions>.sms-story-interaction-card>.sms-reactions{position:absolute;inset:0;border:0!important;background:transparent!important;pointer-events:none}
.sms-highlight-viewer__interactions .sms-reactions__summary{display:none!important}
.sms-highlight-viewer__interactions .sms-share-control,.sms-highlight-viewer__interactions .sms-save-control{display:none!important}
.sms-highlight-viewer__interactions .sms-activity-actions{position:absolute;z-index:4;inset-inline-end:16px;inset-block-end:16px;display:flex;align-items:center;justify-content:flex-end!important;gap:8px!important;padding:0!important;background:transparent;pointer-events:auto}
.sms-highlight-viewer__interactions .sms-reaction-control{position:relative;display:block}
.sms-highlight-viewer__interactions .sms-reaction-trigger,.sms-highlight-viewer__interactions .sms-comment-trigger{display:grid!important;place-items:center!important;inline-size:46px!important;min-inline-size:46px!important;max-inline-size:46px!important;block-size:46px!important;min-block-size:46px!important;padding:0!important;border:1px solid rgba(255,255,255,.2)!important;border-radius:50%!important;background:rgba(0,0,0,.42)!important;color:#fff!important;box-shadow:0 5px 18px rgba(0,0,0,.25)!important;backdrop-filter:blur(8px);font-size:0!important}
.sms-highlight-viewer__interactions .sms-reaction-trigger:hover,.sms-highlight-viewer__interactions .sms-comment-trigger:hover{background:rgba(0,0,0,.62)!important}
.sms-highlight-viewer__interactions .sms-reaction-trigger svg,.sms-highlight-viewer__interactions .sms-comment-trigger svg{inline-size:23px!important;block-size:23px!important;color:#fff!important;stroke:currentColor}
.sms-highlight-viewer__interactions .sms-reaction-trigger .sms-action-label,.sms-highlight-viewer__interactions .sms-comment-trigger .sms-action-label{display:none!important}
.sms-highlight-viewer__interactions .sms-comment-trigger small{position:absolute;inset-block-start:-5px;inset-inline-end:-4px;display:grid;place-items:center;min-inline-size:18px;block-size:18px;padding:0 4px;border-radius:999px;background:#fff;color:#111827;font-size:10px!important;font-weight:900;line-height:1;box-shadow:0 2px 6px rgba(0,0,0,.28)}
.sms-highlight-viewer__interactions .sms-comment-trigger small:empty{display:none}
.sms-highlight-viewer__interactions .sms-reaction-picker{z-index:30;inset-block-end:55px!important;inset-inline-start:auto!important;inset-inline-end:0!important;pointer-events:auto}
.sms-highlight-viewer__interactions .sms-comments:not([hidden]){position:absolute;z-index:20;inset-inline:0;inset-block-end:0;display:block;max-block-size:min(58dvh,560px)!important;overflow:auto;overscroll-behavior:contain;padding:12px 14px max(18px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0;background:var(--sms-surface,#fff);color:var(--sms-text,#172033);box-shadow:0 -18px 50px rgba(0,0,0,.34);pointer-events:auto}
.sms-highlight-viewer__stage-shell:has(.sms-comments:not([hidden])) .sms-highlight-viewer__caption,.sms-highlight-viewer__stage-shell:has(.sms-comments:not([hidden])) .sms-highlight-viewer__cta,.sms-highlight-viewer__stage-shell:has(.sms-comments:not([hidden])) .sms-activity-actions{display:none!important}
.sms-highlight-viewer__text-story{position:relative;z-index:2;display:grid;place-items:center;inline-size:100%;block-size:100%;padding:88px 34px 150px;background:linear-gradient(145deg,#10213d,#2e1767);overflow:auto}
.sms-highlight-viewer__text-story p{max-inline-size:420px;margin:0;color:#fff;font-size:clamp(1.45rem,4vw,2.5rem);font-weight:850;line-height:1.13;text-align:center;overflow-wrap:anywhere;white-space:pre-wrap;text-shadow:0 2px 8px rgba(0,0,0,.22)}

@media(max-width:767px){
 .sms-composer__story-options{grid-template-columns:1fr;padding:10px}.sms-composer__story-link-help{grid-column:1}
 .sms-highlight-viewer{padding:0;background:#000;backdrop-filter:none}
 .sms-highlight-viewer__dialog{inline-size:100vw;block-size:100dvh;max-block-size:100dvh;border:0;border-radius:0;box-shadow:none}
 .sms-highlight-viewer__progress{z-index:55;inset-block-start:max(7px,env(safe-area-inset-top));inset-inline:max(8px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-right))}
 /* Mobile header controls are independently anchored to the safe viewport.
    Do not rely on the desktop grid: long identity text or browser/PWA chrome must never push the close control off-screen. */
 .sms-highlight-viewer__bar{z-index:50;inset:0;display:block;min-block-size:0;block-size:0;padding:0;border:0;background:transparent;pointer-events:none}
 .sms-highlight-viewer__identity{position:absolute;z-index:51;inset-block-start:calc(max(7px,env(safe-area-inset-top)) + 12px);inset-inline-start:max(12px,env(safe-area-inset-left));inset-inline-end:calc(max(12px,env(safe-area-inset-right)) + 56px);display:flex;max-inline-size:none;pointer-events:auto}
 .sms-highlight-viewer__meta small{max-inline-size:58vw}
 .sms-highlight-viewer__close{position:absolute!important;z-index:60!important;inset-block-start:calc(max(7px,env(safe-area-inset-top)) + 10px)!important;inset-inline-end:max(10px,env(safe-area-inset-right))!important;display:grid!important;place-items:center!important;inline-size:42px!important;min-inline-size:42px!important;max-inline-size:42px!important;block-size:42px!important;margin:0!important;padding:0!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:50%!important;background:rgba(0,0,0,.58)!important;color:#fff!important;font-size:1.65rem!important;line-height:1!important;box-shadow:0 4px 18px rgba(0,0,0,.28)!important;backdrop-filter:blur(10px);pointer-events:auto!important;transform:none!important}
 .sms-highlight-viewer__close:active{transform:scale(.96)!important}
 .sms-highlight-viewer__nav{display:none!important}
 .sms-highlight-viewer__playback{z-index:45;inset-block-start:calc(max(7px,env(safe-area-inset-top)) + 64px);inset-inline-end:max(12px,env(safe-area-inset-right))}
 .sms-highlight-viewer__caption{inset-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right));inset-block-end:calc(142px + env(safe-area-inset-bottom));font-size:.82rem}
 .sms-highlight-viewer__cta{inset-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right));inset-block-end:calc(80px + env(safe-area-inset-bottom))}
 .sms-highlight-viewer__cta>a{min-block-size:44px;max-inline-size:92%;padding-inline:18px;font-size:.8rem}
 .sms-highlight-viewer__interactions .sms-activity-actions{inset-inline-end:max(13px,env(safe-area-inset-right));inset-block-end:calc(14px + env(safe-area-inset-bottom));gap:8px!important}
 .sms-highlight-viewer__interactions .sms-reaction-trigger,.sms-highlight-viewer__interactions .sms-comment-trigger{inline-size:48px!important;min-inline-size:48px!important;max-inline-size:48px!important;block-size:48px!important;min-block-size:48px!important}
 .sms-highlight-viewer__interactions .sms-comments:not([hidden]){max-block-size:62dvh!important;padding-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right));padding-block-end:max(18px,env(safe-area-inset-bottom))}
 .sms-highlight-viewer__text-story{padding:calc(92px + env(safe-area-inset-top)) 22px calc(150px + env(safe-area-inset-bottom))}
 .sms-highlight-viewer__text-story p{font-size:clamp(1.35rem,7vw,2.35rem)}
}


/* SMSocial 1.12.16 — Canonical photo viewer geometry + Story comments close. */
/* Thumbnails may crop for layout. A dedicated photo viewer never crops the source asset. */
.sms-profile-gallery__viewer{padding:16px!important;overflow:hidden!important}
.sms-profile-gallery__viewer>section{
  grid-template-columns:minmax(0,1fr) clamp(280px,24vw,360px)!important;
  grid-template-rows:minmax(0,1fr)!important;
  inline-size:min(1380px,calc(100vw - 32px))!important;
  block-size:min(900px,calc(100dvh - 32px))!important;
  max-inline-size:1380px!important;
  max-block-size:calc(100dvh - 32px)!important;
  overflow:hidden!important;
}
.sms-profile-gallery__viewer-visual{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-inline-size:0!important;
  min-block-size:0!important;
  overflow:hidden!important;
  padding:48px 48px 24px!important;
  background:#0b0d12!important;
}
.sms-profile-gallery__viewer-visual img{
  display:block!important;
  inline-size:auto!important;
  block-size:auto!important;
  max-inline-size:100%!important;
  max-block-size:100%!important;
  min-inline-size:0!important;
  min-block-size:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  aspect-ratio:auto!important;
  flex:0 1 auto!important;
}
.sms-profile-gallery__viewer-side{min-block-size:0!important;overflow:hidden!important}
.sms-profile-gallery__viewer-social{min-block-size:0!important;overflow:auto!important}
.sms-feed-gallery-viewer .sms-profile-gallery__viewer-visual img{inline-size:auto!important;block-size:auto!important;max-inline-size:100%!important;max-block-size:100%!important;object-fit:contain!important}

/* Story comments already have a canonical close action; expose it in the Story bottom sheet. */
.sms-highlight-viewer__interactions .sms-comments__header{
  position:sticky!important;
  z-index:3!important;
  inset-block-start:0!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  background:var(--sms-surface,#fff)!important;
}
.sms-highlight-viewer__interactions .sms-comments__close{
  display:grid!important;
  place-items:center!important;
  margin-inline-start:auto!important;
  inline-size:38px!important;
  min-inline-size:38px!important;
  block-size:38px!important;
  min-block-size:38px!important;
  border-radius:50%!important;
  background:var(--sms-surface-strong,#f2f4f8)!important;
  color:var(--sms-text,#172033)!important;
  font-size:1.35rem!important;
}

@media(max-width:767px){
  .sms-profile-gallery__viewer{padding:0!important}
  .sms-profile-gallery__viewer>section{
    grid-template-columns:1fr!important;
    grid-template-rows:minmax(0,66dvh) minmax(0,34dvh)!important;
    inline-size:100vw!important;
    block-size:100dvh!important;
    max-inline-size:100vw!important;
    max-block-size:100dvh!important;
    border:0!important;
    border-radius:0!important;
  }
  .sms-profile-gallery__viewer-visual{grid-row:1!important;padding:52px 8px 8px!important}
  .sms-profile-gallery__viewer-side{grid-row:2!important;border-inline-start:0!important;border-block-start:1px solid var(--sms-border)!important;border-radius:18px 18px 0 0!important}
  .sms-profile-gallery__viewer-topbar{inset:0 0 auto 0!important}
  .sms-profile-gallery__viewer-nav{inset-block-start:33dvh!important}
  .sms-profile-gallery__viewer-nav.is-next{inset-inline-end:max(8px,env(safe-area-inset-right))!important}
  .sms-highlight-viewer__interactions .sms-comments__close{
    inline-size:42px!important;
    min-inline-size:42px!important;
    block-size:42px!important;
    min-block-size:42px!important;
  }
}


/* SMSocial 1.12.18 — Main logo is a complete uncropped brand lockup, not an avatar mark. */
.sms-app-brand.has-primary-logo{gap:10px;max-inline-size:min(100%,340px)}
.sms-app-brand__mark.has-image{inline-size:auto!important;block-size:clamp(28px,var(--sms-brand-logo-height,42px),52px)!important;max-block-size:calc(var(--sms-topbar-height,72px) - 20px)!important;max-inline-size:260px;min-inline-size:0;padding:0!important;overflow:hidden!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.sms-app-brand__mark.has-image img{inline-size:auto!important;block-size:100%!important;max-inline-size:100%!important;max-block-size:100%!important;object-fit:contain!important;object-position:center;display:block}
@media(max-width:767px){
  .sms-app-brand.has-primary-logo{max-inline-size:min(100%,230px);justify-self:center}
  .sms-app-brand__mark.has-image{inline-size:auto!important;block-size:min(var(--sms-brand-logo-height,42px),40px)!important;max-block-size:40px!important;max-inline-size:min(210px,56vw)!important}
  .sms-app-brand__name{max-inline-size:90px}
}

/* SMSocial 1.12.19 — hard top-bar logo containment contract. */
.sms-app-topbar__inner>.sms-app-brand.has-primary-logo{max-block-size:calc(var(--sms-topbar-height,72px) - 12px);align-self:center}
.sms-app-topbar__inner>.sms-app-brand.has-primary-logo .sms-app-brand__mark.has-image,.sms-app-topbar__inner>.sms-app-brand.has-primary-logo .sms-app-brand__mark.has-image img{max-block-size:100%!important}
@media(max-width:767px){.sms-app-topbar__inner>.sms-app-brand.has-primary-logo{max-block-size:40px}}
/* SMSocial 1.12.20 — canonical header-logo hard frame.
 * The uploaded Main logo is never allowed to size the top bar. The top bar owns a
 * fixed safe slot; the image only scales inside that slot. This prevents tall or
 * very wide source artwork from protruding below/above the header. */
.sms-app-topbar__inner > .sms-app-brand.has-primary-logo{
    inline-size:min(240px,100%)!important;
    min-inline-size:0!important;
    block-size:44px!important;
    min-block-size:44px!important;
    max-block-size:44px!important;
    align-self:center!important;
    justify-self:start!important;
    overflow:hidden!important;
    contain:layout paint!important;
}
.sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image{
    inline-size:100%!important;
    min-inline-size:0!important;
    max-inline-size:240px!important;
    block-size:clamp(28px,var(--sms-brand-logo-height,40px),44px)!important;
    min-block-size:0!important;
    max-block-size:44px!important;
    display:grid!important;
    place-items:center start!important;
    overflow:hidden!important;
    flex:0 1 240px!important;
}
.sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image > img{
    inline-size:100%!important;
    block-size:100%!important;
    max-inline-size:100%!important;
    max-block-size:100%!important;
    object-fit:contain!important;
    object-position:left center!important;
    display:block!important;
}
@media(max-width:767px){
    .sms-app-topbar__inner > .sms-app-brand.has-primary-logo{
        inline-size:min(190px,52vw)!important;
        block-size:36px!important;
        min-block-size:36px!important;
        max-block-size:36px!important;
        justify-self:center!important;
    }
    .sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image{
        inline-size:100%!important;
        max-inline-size:190px!important;
        block-size:min(var(--sms-brand-logo-height,36px),36px)!important;
        max-block-size:36px!important;
        place-items:center!important;
        flex-basis:190px!important;
    }
    .sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image > img{
        object-position:center!important;
    }
}


/* SMSocial 1.12.21 — canonical header logo slot.
 * The logo remains a normal proportional image. It is never stretched to a 100% x 100%
 * replacement box and is never clipped by the brand anchor. The top bar supplies the
 * boundary; the image only uses max-width/max-height inside it. */
.sms-app-topbar__inner > .sms-app-brand.has-primary-logo{
    inline-size:auto!important;
    min-inline-size:0!important;
    block-size:100%!important;
    min-block-size:0!important;
    max-block-size:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    align-self:stretch!important;
    justify-self:start!important;
    overflow:visible!important;
    contain:none!important;
}
.sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image.sms-app-brand__logo-slot{
    inline-size:auto!important;
    min-inline-size:0!important;
    max-inline-size:min(300px,100%)!important;
    block-size:auto!important;
    min-block-size:0!important;
    max-block-size:56px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex:0 1 auto!important;
    padding:0!important;
    margin:0!important;
    overflow:visible!important;
    contain:none!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
.sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image.sms-app-brand__logo-slot > img.sms-app-brand__logo-image{
    inline-size:auto!important;
    block-size:auto!important;
    width:auto!important;
    height:auto!important;
    min-inline-size:0!important;
    min-block-size:0!important;
    max-inline-size:300px!important;
    max-block-size:var(--sms-brand-logo-height,44px)!important;
    object-fit:contain!important;
    object-position:left center!important;
    display:block!important;
    flex:0 1 auto!important;
    transform:none!important;
    margin:0!important;
}
@media (max-width:1279px) and (min-width:1024px){
    .sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image.sms-app-brand__logo-slot,
    .sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image.sms-app-brand__logo-slot > img.sms-app-brand__logo-image{
        max-inline-size:200px!important;
    }
}
@media (max-width:1023px) and (min-width:768px){
    .sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image.sms-app-brand__logo-slot,
    .sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image.sms-app-brand__logo-slot > img.sms-app-brand__logo-image{
        max-inline-size:170px!important;
        max-block-size:48px!important;
    }
}
@media (max-width:767px){
    .sms-app-topbar__inner > .sms-app-brand.has-primary-logo{
        inline-size:auto!important;
        block-size:100%!important;
        max-inline-size:min(190px,54vw)!important;
        align-self:stretch!important;
        justify-self:center!important;
        justify-content:center!important;
        overflow:visible!important;
    }
    .sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image.sms-app-brand__logo-slot{
        max-inline-size:min(190px,54vw)!important;
        max-block-size:40px!important;
        justify-content:center!important;
    }
    .sms-app-topbar__inner > .sms-app-brand.has-primary-logo > .sms-app-brand__mark.has-image.sms-app-brand__logo-slot > img.sms-app-brand__logo-image{
        max-inline-size:min(190px,54vw)!important;
        max-block-size:min(var(--sms-brand-logo-height,40px),40px)!important;
        object-position:center!important;
    }
}

/* 1.12.22 — Blog / News desktop layout chooser. Mobile stays on the canonical existing card stack. */
.sms-blog-news__listing{display:grid;gap:16px}.sms-blog-news__featured-side,.sms-blog-news__magazine,.sms-blog-news__compact-list{display:grid;gap:16px}
@media (min-width:681px){
  .sms-blog-news--layout-featured_side .sms-blog-news__featured-side{grid-template-columns:minmax(0,1.75fr) minmax(250px,.9fr);grid-template-rows:repeat(4,minmax(0,1fr));gap:13px;min-height:520px}
  .sms-blog-news--layout-featured_side .sms-blog-news__featured-side>.sms-blog-news-card--lead{grid-column:1;grid-row:1/5}
  .sms-blog-news--layout-featured_side .sms-blog-news__featured-side>.sms-blog-news-card--side{grid-column:2}
  .sms-blog-news-card--lead .sms-blog-news-card__media{aspect-ratio:16/10;min-height:300px}
  .sms-blog-news-card--lead .sms-blog-news-card__body{padding:18px 20px 20px}
  .sms-blog-news-card--lead .sms-blog-news-card__body h3{font-size:clamp(1.18rem,1.7vw,1.55rem);-webkit-line-clamp:3}
  .sms-blog-news-card--lead .sms-blog-news-card__body p{-webkit-line-clamp:3;font-size:.82rem}
  .sms-blog-news-card--side{border-radius:15px}
  .sms-blog-news-card--side .sms-blog-news-card__link{display:grid;grid-template-columns:118px minmax(0,1fr);min-height:0}
  .sms-blog-news-card--side .sms-blog-news-card__media{aspect-ratio:auto;height:100%;min-height:104px}
  .sms-blog-news-card--side .sms-blog-news-card__category{display:none}
  .sms-blog-news-card--side .sms-blog-news-card__body{min-width:0;padding:10px 11px}
  .sms-blog-news-card--side .sms-blog-news-card__meta{font-size:.59rem}
  .sms-blog-news-card--side .sms-blog-news-card__body h3{margin:5px 0 0;font-size:.84rem;line-height:1.28;-webkit-line-clamp:3}
  .sms-blog-news-card--side .sms-blog-news-card__body p,.sms-blog-news-card--side .sms-blog-news-card__read{display:none}

  .sms-blog-news--layout-magazine .sms-blog-news__magazine{grid-template-columns:minmax(0,1.45fr) repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:14px;min-height:500px}
  .sms-blog-news--layout-magazine .sms-blog-news__magazine>.sms-blog-news-card--lead{grid-column:1;grid-row:1/3}
  .sms-blog-news-card--magazine-support .sms-blog-news-card__media{aspect-ratio:16/9}
  .sms-blog-news-card--magazine-support .sms-blog-news-card__body{padding:11px 12px 12px}
  .sms-blog-news-card--magazine-support .sms-blog-news-card__body h3{font-size:.88rem;line-height:1.28;-webkit-line-clamp:3;margin:6px 0 0}
  .sms-blog-news-card--magazine-support .sms-blog-news-card__body p,.sms-blog-news-card--magazine-support .sms-blog-news-card__read{display:none}
  .sms-blog-news-card--magazine-support .sms-blog-news-card__meta{font-size:.6rem}

  .sms-blog-news--layout-compact .sms-blog-news__compact-list{gap:12px}
  .sms-blog-news-card--compact{border-radius:15px}
  .sms-blog-news-card--compact .sms-blog-news-card__link{display:grid;grid-template-columns:220px minmax(0,1fr)}
  .sms-blog-news-card--compact .sms-blog-news-card__media{aspect-ratio:16/9;height:100%;min-height:132px}
  .sms-blog-news-card--compact .sms-blog-news-card__body{padding:13px 16px}
  .sms-blog-news-card--compact .sms-blog-news-card__body h3{font-size:1rem;-webkit-line-clamp:2}
  .sms-blog-news-card--compact .sms-blog-news-card__body p{-webkit-line-clamp:2;margin-bottom:8px}
  .sms-blog-news-card--compact .sms-blog-news-card__read{margin-top:0}

  .sms-blog-news__grid--continuation{margin-top:2px}
  .sms-blog-news.is-inline-reading>.sms-blog-news__intro,.sms-blog-news.is-inline-reading>[data-sms-blog-listing]{display:none!important}
  .sms-blog-news__inline-reader{overflow:hidden;border:1px solid var(--sms-border);border-radius:20px;background:var(--sms-surface);box-shadow:0 12px 34px color-mix(in srgb,var(--sms-text) 8%,transparent)}
  .sms-blog-news__inline-reader[hidden]{display:none!important}
  .sms-blog-news-inline__bar{position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:flex-start;min-height:56px;padding:9px 14px;border-bottom:1px solid var(--sms-border);background:color-mix(in srgb,var(--sms-surface) 96%,transparent);backdrop-filter:blur(12px)}
  .sms-blog-news-inline__back{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;min-height:38px;padding:0 13px;border:1px solid var(--sms-border);border-radius:11px;background:var(--sms-surface-strong);color:var(--sms-text);font:inherit;font-size:.78rem;font-weight:850;line-height:1;white-space:nowrap;word-break:normal;cursor:pointer}
  .sms-blog-news-inline__viewport{min-height:360px}
  .sms-blog-news-inline__viewport .sms-article-reader__article{max-width:none;margin:0;background:transparent}
  .sms-blog-news-inline__viewport .sms-article-reader__hero{max-height:520px}
}
@media (min-width:681px) and (max-width:1050px){
  .sms-blog-news--layout-featured_side .sms-blog-news__featured-side{grid-template-columns:minmax(0,1.45fr) minmax(220px,.9fr)}
  .sms-blog-news-card--side .sms-blog-news-card__link{grid-template-columns:92px minmax(0,1fr)}
  .sms-blog-news--layout-magazine .sms-blog-news__magazine{grid-template-columns:minmax(0,1.25fr) 1fr;grid-template-rows:repeat(4,minmax(0,1fr))}
  .sms-blog-news--layout-magazine .sms-blog-news__magazine>.sms-blog-news-card--lead{grid-column:1;grid-row:1/5}
  .sms-blog-news--layout-magazine .sms-blog-news__magazine>.sms-blog-news-card--magazine-support{grid-column:2}
  .sms-blog-news-card--magazine-support .sms-blog-news-card__link{display:grid;grid-template-columns:92px minmax(0,1fr)}
  .sms-blog-news-card--magazine-support .sms-blog-news-card__media{height:100%;aspect-ratio:auto}
  .sms-blog-news-card--compact .sms-blog-news-card__link{grid-template-columns:170px minmax(0,1fr)}
}
@media (max-width:680px){
  .sms-blog-news__listing,.sms-blog-news__featured-side,.sms-blog-news__magazine,.sms-blog-news__compact-list{display:grid;grid-template-columns:1fr;gap:13px}
  .sms-blog-news__featured-side>.sms-blog-news-card,.sms-blog-news__magazine>.sms-blog-news-card,.sms-blog-news__compact-list>.sms-blog-news-card{width:100%}
  .sms-blog-news__inline-reader{display:none!important}
}


/* 1.12.25 — canonical viewable Activity impressions.
 * The three ascending bars deliberately avoid the legacy eye/view pattern.
 * A card counts only after the JS viewability contract qualifies it. */
.sms-reactions__summary .sms-impression-metric{margin-inline-start:auto;display:inline-flex;align-items:center;gap:5px;min-inline-size:max-content;color:var(--sms-muted);font-size:.72rem;font-weight:760;line-height:1}
.sms-impression-icon{display:block;inline-size:17px;block-size:17px;flex:0 0 17px}
.sms-impression-metric [data-sms-impression-value],.sms-blog-news-card__impressions [data-sms-impression-value]{font-variant-numeric:tabular-nums}
.sms-blog-news-card__impressions{margin-inline-start:auto;display:inline-flex!important;align-items:center;gap:4px;min-inline-size:max-content;color:var(--sms-muted);font-weight:760}
.sms-blog-news-card__meta .sms-blog-news-card__impressions::before{display:none!important;content:none!important;margin:0!important}
.sms-blog-news-card__impressions .sms-impression-icon{inline-size:14px;block-size:14px;flex-basis:14px}
@media(max-width:767px){.sms-reactions__summary .sms-impression-metric{font-size:.7rem}.sms-impression-icon{inline-size:16px;block-size:16px;flex-basis:16px}.sms-blog-news-card__impressions .sms-impression-icon{inline-size:13px;block-size:13px;flex-basis:13px}}
.sms-blog-news-card__impressions span::before{display:none!important;content:none!important;margin:0!important}


/* 1.12.26 — video fast-ready processing surface. */
.sms-video-processing{position:relative;min-block-size:clamp(220px,54vw,520px);overflow:hidden;background:var(--sms-surface-strong);background-image:linear-gradient(rgba(13,17,27,.45),rgba(13,17,27,.45)),var(--sms-video-processing-poster,none);background-size:cover;background-position:center}
.sms-video-processing__overlay{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:9px;padding:28px;text-align:center;color:#fff;background:linear-gradient(180deg,rgba(12,15,24,.18),rgba(12,15,24,.58));backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.sms-video-processing__overlay strong{font-size:.95rem;line-height:1.25}
.sms-video-processing__overlay small{max-inline-size:390px;color:rgba(255,255,255,.82);font-size:.75rem;line-height:1.45}
.sms-video-processing__spinner{inline-size:32px;block-size:32px;border:3px solid rgba(255,255,255,.3);border-block-start-color:#fff;border-radius:50%;animation:sms-video-processing-spin .78s linear infinite}
.sms-video-processing.is-failed .sms-video-processing__spinner{display:none}
.sms-video-processing.is-failed .sms-video-processing__overlay{background:rgba(20,24,34,.72)}
@keyframes sms-video-processing-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.sms-video-processing__spinner{animation:none}}

.sms-video-processing__native-source{position:absolute;inset:0;z-index:2;display:block;inline-size:100%;block-size:100%;object-fit:contain;background:#000}
.sms-video-processing.is-native-playing .sms-video-processing__overlay{display:none}


/* 1.12.30: native/mobile action reliability and unclipped post menu portal. */
.sms-composer-preview__remove{position:absolute;z-index:20;inline-size:44px;block-size:44px;min-inline-size:44px;min-block-size:44px;display:grid;place-items:center;pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
/* 1.12.37 — mobile post actions stay attached to the three-dot trigger.
 * The menu remains portalled above overflow:hidden activity cards, but is no
 * longer rendered as a full-width bottom sheet over the mobile app dock. */
.sms-activity-more-menu--portal{position:fixed!important;z-index:2147483000!important;inset:auto!important;inset-inline-start:var(--sms-activity-menu-left,12px)!important;inset-block-start:var(--sms-activity-menu-top,12px)!important;inline-size:var(--sms-activity-menu-width,220px)!important;min-inline-size:0!important;max-inline-size:calc(100vw - 24px)!important;box-sizing:border-box;padding:5px!important;border:1px solid var(--sms-border)!important;border-radius:11px!important;background:var(--sms-surface,#fff)!important;box-shadow:0 12px 34px rgba(10,14,28,.24)!important;color:var(--sms-text)!important;pointer-events:auto!important;touch-action:manipulation}
.sms-activity-more-menu--portal[hidden]{display:none!important}
.sms-activity-more-menu--portal button{min-block-size:40px!important;padding:8px 10px!important;font-size:14px!important;line-height:1.2!important;pointer-events:auto!important;touch-action:manipulation}
html.bgvoice-native-ios .sms-activity-card__native>video{pointer-events:auto!important;touch-action:manipulation}


.sms-activity-confirm-modal{position:fixed;z-index:2147483100;inset:0;display:grid;place-items:center;padding:20px max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:rgba(11,15,24,.62);backdrop-filter:blur(8px);pointer-events:auto!important;touch-action:manipulation}
.sms-activity-confirm-modal[hidden]{display:none!important}
.sms-activity-confirm-modal>section{inline-size:min(420px,100%);display:grid;gap:14px;padding:22px;border:1px solid var(--sms-border);border-radius:18px;background:var(--sms-surface,#fff);color:var(--sms-text);box-shadow:0 28px 80px rgba(0,0,0,.28)}
.sms-activity-confirm-modal h2{margin:0;font-size:1.16rem;line-height:1.25}
.sms-activity-confirm-modal p{margin:0;color:var(--sms-muted);font-size:.9rem;line-height:1.5}
.sms-activity-confirm-modal>section>div{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-block-start:4px}
.sms-activity-confirm-modal button{min-block-size:48px;border:1px solid var(--sms-border);border-radius:12px;background:var(--sms-surface-strong);color:var(--sms-text);font:inherit;font-weight:800;cursor:pointer;pointer-events:auto!important;touch-action:manipulation}
.sms-activity-confirm-modal button.is-danger{border-color:color-mix(in srgb,var(--sms-danger,#b32d2e) 36%,var(--sms-border));background:var(--sms-danger,#b32d2e);color:#fff}
.sms-activity-confirm-open{overflow:hidden}

/* 1.12.42 — canonical WordPress Page view inside the SMSocial shell */
.sms-wp-page-view{width:100%;max-width:100%;padding:22px 24px 32px;border:1px solid var(--sms-border,#e1e5ec);border-radius:18px;background:var(--sms-surface,#fff);box-sizing:border-box;overflow-wrap:anywhere}
.sms-wp-page-view__header{margin:0 0 22px;padding:0 0 16px;border-bottom:1px solid var(--sms-border,#e1e5ec)}
.sms-wp-page-view__header h1{margin:5px 0 0;font-size:clamp(24px,3vw,38px);line-height:1.12}
.sms-wp-page-view__content{font-size:16px;line-height:1.7}
.sms-wp-page-view__content>:first-child{margin-top:0}.sms-wp-page-view__content>:last-child{margin-bottom:0}
.sms-wp-page-view__content img,.sms-wp-page-view__content video,.sms-wp-page-view__content iframe{max-width:100%;height:auto}
.sms-wp-page-view__content figure{max-width:100%;margin-left:0;margin-right:0}
.sms-wp-page-view__content table{display:block;max-width:100%;overflow-x:auto}
.sms-wp-page-view__content .alignwide,.sms-wp-page-view__content .alignfull{max-width:100%;margin-left:0;margin-right:0}
@media(max-width:700px){.sms-wp-page-view{padding:16px 14px 28px;border-radius:14px}.sms-wp-page-view__header{margin-bottom:16px}.sms-wp-page-view__content{font-size:15px}}

/* 1.12.44 — Mobile UX audit: measured dock clearance, route-safe scroll tails,
 * keyboard breathing room and native-style history gesture feedback. */
.sms-app-root{
  --sms-mobile-dock-clearance:max(112px,calc(96px + var(--sms-safe-bottom)));
}
@media(max-width:767px){
  .sms-app-centre{
    scroll-padding-block-end:var(--sms-mobile-dock-clearance);
    -webkit-overflow-scrolling:touch;
  }
  .sms-app-centre__stream{
    padding-block-end:var(--sms-mobile-dock-clearance)!important;
    scroll-padding-block-end:var(--sms-mobile-dock-clearance);
  }
  .sms-app-centre__stream>:last-child{
    scroll-margin-block-end:var(--sms-mobile-dock-clearance);
  }

  /* Tabbed profile/group/Page routes need their own tail because their active panel
   * can be the final scrollable child. Photos keep a full dock-sized tail. */
  .sms-public-profile__panel:not([hidden]),
  .sms-group-panel:not([hidden]),
  .sms-page-panel:not([hidden]){
    padding-block-end:max(28px,calc(var(--sms-mobile-dock-clearance) - 78px))!important;
    box-sizing:border-box;
  }
  .sms-public-profile__panel[data-sms-profile-panel="photos"]:not([hidden]){
    padding-block-end:var(--sms-mobile-dock-clearance)!important;
  }

  /* Full-screen Messages intentionally leaves the app dock visible. Follow its real
   * measured height instead of a hard-coded iPhone/Android guess. */
  body.sms-route-messages .sms-messages{
    inset-block-end:var(--sms-mobile-dock-clearance)!important;
    block-size:auto!important;
  }

  /* Horizontal tab strips stay fluid without turning a sideways tab swipe into
   * route history navigation. The JS gesture guard recognises these scroll hosts. */
  .sms-public-profile__tabs,
  .sms-group-tabs,
  .sms-page-tabs,
  .sms-group-workspace__nav,
  .sms-page-workspace__nav,
  .sms-discover__tabs{
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .sms-public-profile__tabs::-webkit-scrollbar,
  .sms-group-tabs::-webkit-scrollbar,
  .sms-page-tabs::-webkit-scrollbar,
  .sms-group-workspace__nav::-webkit-scrollbar,
  .sms-page-workspace__nav::-webkit-scrollbar,
  .sms-discover__tabs::-webkit-scrollbar{display:none}

  /* Floating UI that belongs to the normal shell must never sit behind the dock. */
  .sms-profile-gallery__photo-actions{
    inset-block-end:calc(var(--sms-mobile-dock-clearance) - 4px)!important;
  }
  .sms-notification-toast{
    inset-inline:max(10px,var(--sms-safe-left)) max(10px,var(--sms-safe-right));
    inset-block-end:var(--sms-mobile-dock-clearance);
    inline-size:auto;
  }

  /* 1.12.45 — route contract: scroll auto-hide belongs only to the main Feed.
   * Native wrappers or legacy scroll hooks must not move the dock on profiles,
   * groups, settings or any other app route. Full-screen/keyboard rules below
   * still take precedence and may intentionally suppress it. */
  body:not(.sms-route-feed) .sms-mobile-bottom-nav{
    opacity:1!important;
    transform:translateY(0)!important;
    pointer-events:auto!important;
  }

  /* Modal/lightbox surfaces own the whole phone viewport. The persistent dock must
   * yield instead of sitting above dialogs whose z-index predates the dock. */
  body.sms-modal-open .sms-mobile-bottom-nav,
  html.sms-modal-open .sms-mobile-bottom-nav,
  body.sms-composer-modal-open .sms-mobile-bottom-nav,
  body.sms-share-modal-open .sms-mobile-bottom-nav,
  html.sms-share-modal-open .sms-mobile-bottom-nav,
  body.sms-saved-modal-open .sms-mobile-bottom-nav,
  html.sms-saved-modal-open .sms-mobile-bottom-nav,
  body.sms-guest-auth-open .sms-mobile-bottom-nav,
  html.sms-guest-auth-open .sms-mobile-bottom-nav,
  body.sms-highlight-viewer-open .sms-mobile-bottom-nav,
  html.sms-highlight-viewer-open .sms-mobile-bottom-nav,
  body.sms-reader-open .sms-mobile-bottom-nav,
  html.sms-reader-open .sms-mobile-bottom-nav,
  body.sms-marketplace-viewer-open .sms-mobile-bottom-nav,
  body.sms-video-immersive-open .sms-mobile-bottom-nav,
  html.sms-video-immersive-open .sms-mobile-bottom-nav,
  body.sms-activity-confirm-open .sms-mobile-bottom-nav,
  html.sms-activity-confirm-open .sms-mobile-bottom-nav,
  html.sms-group-modal-open .sms-mobile-bottom-nav,
  html.sms-activity-report-open .sms-mobile-bottom-nav{
    opacity:0!important;
    transform:translateY(calc(100% + 24px))!important;
    pointer-events:none!important;
  }

  /* Feed/profile reactions are shell UI, so their phone picker opens above the
   * persistent dock. Full-screen Stories/Video viewers keep their own safe-area rule. */
  .sms-app-centre__stream .sms-activity-card:not(.sms-activity-card--immersive) .sms-reaction-picker{
    bottom:var(--sms-mobile-dock-clearance)!important;
  }
  .sms-highlight-viewer .sms-reaction-picker,
  .sms-video-immersive .sms-reaction-picker{
    bottom:max(18px,env(safe-area-inset-bottom))!important;
  }

  /* While typing, the dock yields the vertical space to the keyboard/form. */
  .sms-mobile-bottom-nav{
    transition:opacity .18s ease,transform .18s ease;
  }
  .sms-app-root[data-sms-mobile-keyboard="open"] .sms-mobile-bottom-nav{
    opacity:0!important;
    transform:translateY(calc(100% + 24px))!important;
    pointer-events:none!important;
  }
  body.sms-mobile-keyboard-open .sms-app-centre__stream{
    padding-block-end:max(28px,calc(20px + var(--sms-safe-bottom)))!important;
    scroll-padding-block-end:max(28px,calc(20px + var(--sms-safe-bottom)));
  }
  body.sms-mobile-keyboard-open.sms-route-messages .sms-messages{
    inset-block-end:0!important;
  }

  /* Subtle affordance for swipe-right Back / swipe-left Forward. */
  .sms-mobile-history-cue{
    position:fixed;
    z-index:2147482400;
    inset:0;
    display:block;
    pointer-events:none;
  }
  .sms-mobile-history-cue>span{
    position:absolute;
    inset-block-start:50%;
    inline-size:40px;
    block-size:40px;
    display:grid;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--sms-border) 75%,transparent);
    border-radius:999px;
    background:color-mix(in srgb,var(--sms-surface) 94%,transparent);
    color:var(--sms-primary);
    box-shadow:0 8px 24px rgba(15,23,42,.14);
    font-size:29px;
    font-weight:500;
    line-height:1;
    opacity:0;
    transform:translateY(-50%) scale(.88);
    transition:opacity .12s ease,transform .12s ease;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
  }
  .sms-mobile-history-cue>span:first-child{inset-inline-start:max(8px,var(--sms-safe-left))}
  .sms-mobile-history-cue>span:last-child{inset-inline-end:max(8px,var(--sms-safe-right))}
  .sms-app-root[data-sms-history-gesture="back"] .sms-mobile-history-cue>span:first-child,
  .sms-app-root[data-sms-history-gesture="forward"] .sms-mobile-history-cue>span:last-child{
    opacity:.94;
    transform:translateY(-50%) scale(1);
  }
}
@media(min-width:768px){.sms-mobile-history-cue{display:none!important}}
@media(prefers-reduced-motion:reduce){
  .sms-mobile-history-cue>span,.sms-mobile-bottom-nav{transition:none!important}
}



/* 1.12.45 — Feed-only dock auto-hide + slimmer/lower phone dock. */
@media(max-width:767px){
  body.sms-route-feed .sms-app-root[data-sms-mobile-dock-hidden="true"] .sms-mobile-bottom-nav{
    opacity:0!important;
    transform:translateY(calc(100% + 12px))!important;
    pointer-events:none!important;
  }
  .sms-mobile-bottom-nav{
    inset-inline:max(8px,var(--sms-safe-left)) max(8px,var(--sms-safe-right))!important;
    inset-block-end:0!important;
    min-block-size:calc(55px + var(--sms-safe-bottom))!important;
    padding:3px 5px max(3px,var(--sms-safe-bottom))!important;
    gap:2px!important;
    border-radius:16px 16px 0 0!important;
  }
  .sms-mobile-bottom-nav__item{
    min-block-size:44px!important;
    padding:2px!important;
  }
  .sms-mobile-bottom-nav__item>.sms-icon,
  .sms-mobile-bottom-nav__icon-wrap>.sms-icon{
    inline-size:24px!important;
    block-size:24px!important;
  }
  .sms-mobile-bottom-nav__icon-wrap{inline-size:28px!important;block-size:28px!important}
  .sms-mobile-bottom-nav__create-mark{
    inline-size:44px!important;
    block-size:44px!important;
    margin-block-start:-12px!important;
    border-width:3px!important;
  }
  .sms-mobile-bottom-nav__create-mark>.sms-icon{
    inline-size:24px!important;
    block-size:24px!important;
  }
}
@media(max-width:359px){
  .sms-mobile-bottom-nav{inset-inline:max(5px,var(--sms-safe-left)) max(5px,var(--sms-safe-right))!important;padding-inline:4px!important}
}

/* 1.12.46 — Fixed-dock scroll runway for every non-Feed mobile route.
 * iOS/WKWebView can stop a nested scroll container at its natural content end
 * while the fixed dock still occupies the bottom of the visual viewport. A real
 * trailing scroll element is more reliable than padding alone, and prevents the
 * user from having to rubber-band/overscroll just to reach the last action. */
.sms-app-root{
  --sms-mobile-fixed-dock-runway:max(138px,calc(var(--sms-mobile-dock-clearance) + 48px));
}
@media(max-width:767px){
  .sms-app-centre__stream[data-sms-router-view]:not([data-sms-route="feed"]){
    padding-block-end:24px!important;
    scroll-padding-block-end:var(--sms-mobile-fixed-dock-runway)!important;
  }
  .sms-app-centre__stream[data-sms-router-view]:not([data-sms-route="feed"])::after{
    content:"";
    display:block;
    inline-size:100%;
    block-size:var(--sms-mobile-fixed-dock-runway);
    min-block-size:var(--sms-mobile-fixed-dock-runway);
    flex:0 0 var(--sms-mobile-fixed-dock-runway);
    pointer-events:none;
    visibility:hidden;
  }
  .sms-app-centre__stream[data-sms-router-view]:not([data-sms-route="feed"]) :is(
    button[type="submit"],
    input[type="submit"],
    .sms-button,
    .button,
    [data-sms-save],
    [data-sms-submit]
  ){
    scroll-margin-block-end:calc(var(--sms-mobile-dock-clearance) + 28px);
  }
  body.sms-mobile-keyboard-open .sms-app-centre__stream[data-sms-router-view]:not([data-sms-route="feed"])::after{
    block-size:max(24px,calc(12px + var(--sms-safe-bottom)));
    min-block-size:max(24px,calc(12px + var(--sms-safe-bottom)));
    flex-basis:max(24px,calc(12px + var(--sms-safe-bottom)));
  }
  body.sms-mobile-keyboard-open .sms-app-centre__stream[data-sms-router-view]:not([data-sms-route="feed"]){
    scroll-padding-block-end:max(28px,calc(20px + var(--sms-safe-bottom)))!important;
  }
}



/* SMSocial 2.0.7 — @Mentions */
.sms-mention-link{color:var(--sms-primary);font-weight:700;text-decoration:none}.sms-mention-link:hover,.sms-mention-link:focus-visible{text-decoration:underline}.sms-mention-suggestions{position:fixed;z-index:2147482000;max-block-size:min(320px,46vh);overflow:auto;border:1px solid var(--sms-border);border-radius:14px;background:var(--sms-surface);box-shadow:0 18px 48px rgba(20,30,55,.18);padding:6px}.sms-mention-suggestion{display:flex;align-items:center;gap:10px;inline-size:100%;min-block-size:52px;border:0;border-radius:10px;background:transparent;color:var(--sms-text);padding:7px 9px;text-align:start;cursor:pointer}.sms-mention-suggestion:hover,.sms-mention-suggestion[aria-selected="true"]{background:var(--sms-surface-soft)}.sms-mention-suggestion__avatar{display:grid;place-items:center;flex:0 0 38px;inline-size:38px;block-size:38px;border-radius:50%;overflow:hidden;background:var(--sms-primary);color:#fff;font-size:.72rem;font-weight:800}.sms-mention-suggestion__avatar img{inline-size:100%;block-size:100%;object-fit:cover}.sms-mention-suggestion__copy{display:grid;min-inline-size:0;gap:1px}.sms-mention-suggestion__copy strong,.sms-mention-suggestion__copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sms-mention-suggestion__copy strong{font-size:.82rem}.sms-mention-suggestion__copy small{color:var(--sms-muted);font-size:.7rem}@media(max-width:767px){.sms-mention-suggestions{max-block-size:min(280px,40vh);border-radius:13px}.sms-mention-suggestion{min-block-size:50px}}

.sms-activity-card__text[data-sms-mention-text]{white-space:pre-line}

/* 2.1.2 — Native iOS/Android Article Reader touch/scroll reliability */
@media(max-width:767px){
  .sms-article-reader.is-native-webview{
    display:block;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }
  .sms-article-reader.is-native-webview .sms-article-reader__dialog{
    display:block;
    width:100%;
    min-height:100dvh;
    height:auto;
    max-height:none;
    overflow:visible;
    isolation:isolate;
  }
  .sms-article-reader.is-native-webview .sms-article-reader__bar{
    position:sticky;
    top:0;
    z-index:3;
    pointer-events:auto;
    touch-action:manipulation;
    isolation:isolate;
  }
  .sms-article-reader.is-native-webview .sms-article-reader__viewport{
    position:relative;
    z-index:1;
    overflow:visible;
    min-height:0;
    padding-bottom:env(safe-area-inset-bottom);
  }
  .sms-article-reader.is-native-webview .sms-article-reader__back,
  .sms-article-reader.is-native-webview .sms-article-reader__close{
    position:relative;
    z-index:4;
    pointer-events:auto;
    touch-action:manipulation;
    -webkit-user-select:none;
    user-select:none;
  }
}

/* SMSocial 2.1.5 — Desktop Article Reader close control reliability */
@media(min-width:768px){
  .sms-article-reader .sms-article-reader__bar{
    position:relative;
    z-index:5;
    pointer-events:auto;
    isolation:isolate;
  }
  .sms-article-reader .sms-article-reader__close{
    position:relative;
    z-index:6;
    pointer-events:auto;
    touch-action:manipulation;
  }
}
