/* ICON Swipe News 1.2.2 - full-content natural-flow reader with host-height collapse */
.icon-swipe-reader{width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;background:var(--icon-content-bg,#fff);color:var(--icon-headline-color,#222);box-sizing:border-box;position:relative!important;overflow:visible!important;font-family:var(--icon-font-family,inherit);}
.icon-swipe-reader *{box-sizing:border-box;}
.icon-swipe-topbar{display:none!important;}
/* One article is rendered at a time. The reader itself never creates a viewport-sized spacer. */
.icon-swipe-feed{width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;background:var(--icon-content-bg,#fff);display:block!important;overflow:visible!important;touch-action:none;overscroll-behavior:none;}
.icon-swipe-card{display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;background:var(--icon-content-bg,#fff);overflow:visible!important;}
.icon-swipe-card-surface{width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;background:var(--icon-content-bg,#fff);}
.icon-swipe-image-wrap{position:relative;width:100%;aspect-ratio:var(--icon-image-ratio,16 / 9);overflow:hidden;background:#eee;}
.icon-swipe-image{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--icon-image-position,center center);}
.icon-swipe-image-topbar{position:absolute;inset:0 0 auto 0;height:68px;padding:15px 16px 0;display:flex;justify-content:space-between;align-items:flex-start;color:#fff;font-size:17px;line-height:1.2;background:linear-gradient(to bottom,rgba(0,0,0,.55),rgba(0,0,0,0));text-shadow:0 1px 3px rgba(0,0,0,.75);pointer-events:none;}
.icon-swipe-image-progress{font-variant-numeric:tabular-nums;}
.icon-swipe-category{position:absolute;left:16px;bottom:8px;display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;border-radius:8px;background:var(--icon-category-bg,#0787ee);color:var(--icon-category-text,#fff);font-size:12.5px;line-height:1;box-shadow:0 2px 7px rgba(0,0,0,.15);z-index:2;}
.icon-swipe-content{padding:9px var(--icon-pad-mobile,16px) 0!important;background:var(--icon-content-bg,#fff);}
.icon-swipe-content>.icon-swipe-category{position:relative;left:auto;bottom:auto;margin:0 0 6px;}
.icon-swipe-title{margin:0 0 4px!important;padding:0!important;font-size:var(--icon-title-mobile,20px)!important;line-height:var(--icon-title-lh,1.27)!important;font-weight:var(--icon-title-weight,700)!important;color:var(--icon-headline-color,#222)!important;letter-spacing:0;overflow-wrap:anywhere;}
.icon-swipe-excerpt{margin:0!important;padding:0!important;font-size:var(--icon-body-mobile,16px)!important;line-height:var(--icon-body-lh,1.45)!important;font-weight:var(--icon-body-weight,400)!important;color:var(--icon-body-color,#666);display:block!important;overflow:visible!important;white-space:normal!important;}
.icon-swipe-meta{height:29px!important;margin-top:4px!important;padding-top:4px;border-top:1px solid #e5e5e5;display:grid;grid-template-columns:minmax(0,1fr) auto auto auto auto auto;align-items:center;gap:4px;color:var(--icon-meta-color,#707984);font-size:var(--icon-meta-size,10px);line-height:1;white-space:nowrap;overflow:hidden;}
.icon-swipe-meta>span{display:inline-flex;align-items:center;gap:3px;min-width:0;overflow:hidden;text-overflow:ellipsis;}
.icon-swipe-meta>span>span{overflow:hidden;text-overflow:ellipsis;}
.icon-swipe-meta svg{width:13px;height:13px;flex:0 0 13px;}
.icon-swipe-meta>i{width:1px;height:16px;background:#ddd;display:block;}
.icon-swipe-actions{display:grid;grid-template-columns:minmax(0,1fr) 66px 70px 32px;gap:4px;align-items:center;margin:2px 0 0!important;}
.icon-swipe-actions a,.icon-swipe-actions button{height:var(--icon-action-height,32px)!important;min-height:var(--icon-action-height,32px)!important;max-height:var(--icon-action-height,32px)!important;border:2px solid var(--icon-accent,#0787ee);border-radius:var(--icon-button-radius,17px);background:var(--icon-button-bg,#fff);color:var(--icon-button-text,#222);display:flex;align-items:center;justify-content:center;gap:3px;padding:0 5px;font:inherit;font-size:10px!important;font-weight:400;line-height:1;white-space:nowrap;text-decoration:none;overflow:hidden;box-shadow:none;}
.icon-swipe-actions button{cursor:pointer;}
.icon-swipe-actions svg{width:15px;height:15px;flex:0 0 15px;}
.icon-swipe-read-more svg{width:16px;height:16px;}
.icon-swipe-bookmark-card{width:32px;padding:0!important;}
.icon-swipe-bookmark-card svg{width:15px;height:15px;}
.icon-swipe-like-card.is-liked,.icon-swipe-bookmark-card.is-saved{background:#eef7ff;}
/* The cue is part of the article flow. It can never consume leftover viewport height. */
.icon-swipe-page-cue{border:0!important;background:transparent!important;color:var(--icon-cue-color,#7a8792);width:100%;height:18px!important;min-height:18px!important;max-height:18px!important;margin:1px 0 2px!important;padding:0!important;display:flex;align-items:center;justify-content:center;gap:4px;font:inherit;font-size:9.5px!important;line-height:1;cursor:pointer;}
.icon-swipe-page-cue .icon-swipe-cue-arrow{font-size:16px;line-height:16px;color:var(--icon-accent,#0787ee);font-weight:600;animation:iconSwipeCue .95s ease-in-out infinite;}
.icon-swipe-page-cue:focus-visible{outline:2px solid var(--icon-accent,#0787ee);outline-offset:1px;border-radius:4px;}
@keyframes iconSwipeCue{0%,100%{transform:translateY(2px)}50%{transform:translateY(-2px)}}
.icon-swipe-loading{min-height:100px;display:flex;align-items:center;justify-content:center;color:#666;font-size:14px;}
.icon-swipe-spinner{width:18px;height:18px;border:2px solid #ddd;border-top-color:var(--icon-accent,#0787ee);border-radius:50%;animation:iconSpin .7s linear infinite;margin-right:8px;}
@keyframes iconSpin{to{transform:rotate(360deg)}}
.icon-swipe-side-actions,.icon-swipe-next-cue{display:none!important;}
.icon-swipe-enter-up{animation:iconSwipeEnterUp var(--icon-animation,140ms) ease-out both;}
.icon-swipe-enter-down{animation:iconSwipeEnterDown var(--icon-animation,140ms) ease-out both;}
@keyframes iconSwipeEnterUp{from{opacity:.35;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes iconSwipeEnterDown{from{opacity:.35;transform:translateY(-10px)}to{opacity:1;transform:none}}


/* V1.0.2: the reader must not inherit a theme/page min-height that creates a
   large blank region after a short article. JS marks only ancestors that
   actually contain this reader, so unrelated site sections are untouched. */
.icon-swipe-host-collapsed{min-height:0!important;height:auto!important;max-height:none!important;}
.icon-swipe-host-collapsed .icon-swipe-reader{height:auto!important;min-height:0!important;}

.icon-swipe-reader{width:var(--icon-reader-width,100%)!important;}
.icon-swipe-actions.count-1{grid-template-columns:minmax(0,1fr);}
.icon-swipe-actions.count-2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.icon-swipe-actions.count-3{grid-template-columns:minmax(0,1fr) minmax(66px,.42fr) minmax(70px,.45fr);}
.icon-swipe-actions.count-4{grid-template-columns:minmax(0,1fr) 66px 70px 32px;}
@media (min-width:601px){
  .icon-swipe-content{padding-left:var(--icon-pad-desktop,20px)!important;padding-right:var(--icon-pad-desktop,20px)!important;}
  .icon-swipe-image-topbar{padding-left:20px;padding-right:20px;}
  .icon-swipe-category{left:20px;}
  .icon-swipe-title{font-size:var(--icon-title-desktop,21px)!important;}
  .icon-swipe-excerpt{font-size:var(--icon-body-desktop,17px)!important;line-height:var(--icon-body-lh,1.48)!important;}
  .icon-swipe-actions{grid-template-columns:minmax(0,1fr) 72px 78px 34px;gap:5px;}
  .icon-swipe-actions a,.icon-swipe-actions button{font-size:10.5px!important;}
}
@media (max-width:380px){
  .icon-swipe-content{padding-left:var(--icon-pad-mobile,16px)!important;padding-right:var(--icon-pad-mobile,16px)!important;}
  .icon-swipe-image-topbar{padding-left:14px;padding-right:14px;font-size:16px;}
  .icon-swipe-category{left:14px;height:31px;font-size:12px;padding:0 11px;}
  .icon-swipe-title{font-size:var(--icon-title-mobile,20px)!important;line-height:var(--icon-title-lh,1.27)!important;}
  .icon-swipe-excerpt{font-size:var(--icon-body-mobile,16px)!important;line-height:var(--icon-body-lh,1.45)!important;}
  .icon-swipe-actions{grid-template-columns:minmax(0,1fr) 64px 68px 31px;gap:3px;}
  .icon-swipe-actions a,.icon-swipe-actions button{font-size:9.7px!important;padding-left:3px;padding-right:3px;}
  .icon-swipe-bookmark-card{width:31px;}
}


/* V1.1.2: keep the current article's metadata + action buttons fixed above the
   site's fixed bottom navigation on every news item. The dock is populated by
   JS whenever the active news changes. */
.icon-swipe-fixed-dock{
  position:fixed!important;
  left:50%!important;
  bottom:var(--icon-bottom-nav-height,0px)!important;
  transform:translateX(-50%)!important;
  width:var(--icon-reader-width,100%)!important;
  max-width:100vw!important;
  z-index:9998!important;
  margin:0!important;
  padding:0 var(--icon-pad-mobile,16px) 4px!important;
  background:var(--icon-content-bg,#fff)!important;
  color:var(--icon-meta-color,#707984)!important;
  box-shadow:0 -1px 5px rgba(0,0,0,.08)!important;
}
.icon-swipe-fixed-dock.is-empty{display:none!important;}
.icon-swipe-fixed-dock .icon-swipe-dock-meta{width:100%;}
.icon-swipe-fixed-dock .icon-swipe-dock-actions{width:100%;}
.icon-swipe-fixed-dock .icon-swipe-meta{margin-top:0!important;}
.icon-swipe-fixed-dock .icon-swipe-actions{margin:2px 0 0!important;}
.icon-swipe-feed{padding-bottom:calc(var(--icon-fixed-dock-space,0px) + 6px)!important;}
@media (min-width:601px){
  .icon-swipe-fixed-dock{padding-left:var(--icon-pad-desktop,20px)!important;padding-right:var(--icon-pad-desktop,20px)!important;}
}
@media (max-width:380px){
  .icon-swipe-fixed-dock{padding-left:var(--icon-pad-mobile,14px)!important;padding-right:var(--icon-pad-mobile,14px)!important;}
}

/* V1.2.2: Download Image replaces Save/Bookmark in the action row. */
.icon-swipe-download-card svg{width:15px;height:15px;flex:0 0 15px;}
.icon-swipe-download-card:disabled{opacity:.55;cursor:wait!important;}
.icon-swipe-download-card span{display:none!important;}
@media (min-width:601px){.icon-swipe-download-card span{display:inline!important;}.icon-swipe-actions.count-4{grid-template-columns:minmax(0,1fr) 72px 78px 70px;}}
@media (max-width:380px){.icon-swipe-actions.count-4{grid-template-columns:minmax(0,1fr) 58px 64px 31px;}.icon-swipe-download-card{width:31px;padding:0!important;}}


/* V1.3.3: full-width metadata bar at the bottom of the hero image. */
.icon-swipe-image-bottom{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:stretch;gap:5px;z-index:4;pointer-events:none;}
.icon-swipe-image-bottom .icon-swipe-category{position:static!important;left:auto!important;bottom:auto!important;align-self:flex-start;margin:0 0 0 16px;}
.icon-swipe-image-meta{width:100%;max-width:none;height:36px!important;margin:0!important;padding:0 14px!important;border:0!important;display:flex!important;align-items:center!important;justify-content:flex-start;gap:7px;color:#fff!important;font-size:var(--icon-meta-size,10px)!important;line-height:1;white-space:nowrap;overflow:hidden;text-shadow:0 1px 3px rgba(0,0,0,.95);background:rgba(0,0,0,var(--icon-meta-opacity,.64));border-radius:0!important;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);box-shadow:0 -1px 7px rgba(0,0,0,.16);}
.icon-swipe-image-meta>span{display:inline-flex!important;align-items:center;gap:3px;min-width:0;overflow:hidden;text-overflow:ellipsis;}
.icon-swipe-image-meta>span>span{overflow:hidden;text-overflow:ellipsis;}
.icon-swipe-image-meta>i{width:1px!important;height:16px!important;background:rgba(255,255,255,.62)!important;flex:0 0 1px;}
.icon-swipe-image-meta svg{width:13px!important;height:13px!important;flex:0 0 13px;}

/* V1.3.3: higher, lighter, icon-only transparent right-side actions. */
.icon-swipe-fixed-dock{display:none!important;}
.icon-swipe-feed{padding-bottom:8px!important;}
.icon-swipe-side-actions{position:fixed!important;right:7px!important;bottom:calc(var(--icon-side-bottom,82px) + var(--icon-side-offset,145px))!important;top:auto!important;display:flex!important;flex-direction:column!important;align-items:center;gap:7px;width:44px!important;z-index:10000!important;pointer-events:none;}
.icon-swipe-side-actions.is-empty{display:none!important;}
.icon-swipe-side-btn{pointer-events:auto;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;border:1px solid rgba(255,255,255,.20)!important;border-radius:50%!important;background:rgba(0,0,0,var(--icon-side-opacity,.09))!important;color:rgba(255,255,255,.90)!important;display:flex!important;align-items:center;justify-content:center;padding:0!important;box-shadow:0 1px 4px rgba(0,0,0,.08)!important;backdrop-filter:blur(1.5px);-webkit-backdrop-filter:blur(1.5px);cursor:pointer!important;text-shadow:0 1px 3px rgba(0,0,0,.75);}
.icon-swipe-side-btn svg{width:21px!important;height:21px!important;display:block;}
.icon-swipe-side-btn:hover,.icon-swipe-side-btn:focus-visible{background:rgba(0,0,0,.26)!important;color:#fff!important;}
.icon-swipe-side-btn.is-liked{background:rgba(7,135,238,.58)!important;}
.icon-swipe-side-btn:disabled{opacity:.50!important;cursor:wait!important;}
.icon-swipe-side-btn span{display:none!important;}
@media(max-width:380px){.icon-swipe-image-bottom .icon-swipe-category{margin-left:13px;}.icon-swipe-image-meta{height:34px!important;padding:0 11px!important;}.icon-swipe-side-actions{right:5px!important;bottom:calc(var(--icon-side-bottom,82px) + var(--icon-side-offset,135px))!important;gap:6px;width:40px!important;}.icon-swipe-side-btn{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;background:rgba(0,0,0,var(--icon-side-opacity,.075))!important;}.icon-swipe-side-btn svg{width:19px!important;height:19px!important;}}
@media(min-width:601px){.icon-swipe-side-actions{right:14px!important;bottom:calc(var(--icon-side-bottom,82px) + var(--icon-side-offset,115px))!important;}.icon-swipe-side-btn{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;background:rgba(0,0,0,var(--icon-side-opacity,.09))!important;}.icon-swipe-side-btn svg{width:22px!important;height:22px!important;}}

/* Milestone 5: persistent per-card action dock above the site's fixed bottom nav. */
.icon-swipe-fixed-dock{display:block!important;left:50%!important;bottom:var(--icon-bottom-nav-height,0px)!important;transform:translateX(-50%)!important;width:var(--icon-reader-width,100%)!important;max-width:100vw!important;z-index:9998!important;padding:5px var(--icon-pad-mobile,16px) 7px!important;background:rgba(255,255,255,.97)!important;border-top:1px solid rgba(0,0,0,.08)!important;box-shadow:0 -2px 10px rgba(0,0,0,.08)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
.icon-swipe-fixed-dock.is-empty{display:none!important;}
.icon-swipe-fixed-dock .icon-swipe-dock-meta{display:none!important;}
.icon-swipe-fixed-dock .icon-swipe-dock-actions{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;width:100%!important;}
.icon-swipe-fixed-dock .icon-swipe-dock-btn{height:34px!important;min-height:34px!important;border:1px solid rgba(0,0,0,.10)!important;border-radius:17px!important;background:rgba(255,255,255,.9)!important;color:var(--icon-button-text,#222)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;padding:0 12px!important;font:inherit!important;font-size:11px!important;cursor:pointer!important;}
.icon-swipe-fixed-dock .icon-swipe-dock-btn svg{width:15px!important;height:15px!important;flex:0 0 15px!important;}
.icon-swipe-fixed-dock .icon-swipe-dock-btn.is-liked{background:#eef7ff!important;color:var(--icon-accent,#0787ee)!important;border-color:rgba(7,135,238,.22)!important;}
.icon-swipe-fixed-dock .icon-swipe-dock-btn:disabled{opacity:.5!important;cursor:wait!important;}
@media(max-width:380px){.icon-swipe-fixed-dock{padding-left:10px!important;padding-right:10px!important;}.icon-swipe-fixed-dock .icon-swipe-dock-btn{padding:0 9px!important;font-size:10px!important;gap:4px!important;}}

/* Milestone 5.1: shared links use a dedicated reader template. Hide the normal
   single-post wrappers so a shared URL can never render a duplicate article. */
.icon-swipe-shared-reader-page .icon-swipe-shared-reader-main{width:100%;margin:0!important;padding:0!important;}
.icon-swipe-shared-reader-page .icon-swipe-shared-reader-main > *:not(.icon-swipe-reader){margin:0!important;}


/* V1.5.5: polished modal share sheet. The previous JS created the dialog but no
   stylesheet was present, so the share UI was appended as ordinary page
   content near the footer. */
.icon-swipe-share-sheet{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:2147483000!important;display:none!important;align-items:flex-end!important;justify-content:center!important;margin:0!important;padding:0!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;}
.icon-swipe-share-sheet.is-open{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
.icon-swipe-share-backdrop{position:absolute!important;inset:0!important;background:rgba(0,0,0,.48)!important;backdrop-filter:blur(2px)!important;-webkit-backdrop-filter:blur(2px)!important;}
.icon-swipe-share-dialog{position:relative!important;width:min(520px,100vw)!important;max-height:min(72dvh,620px)!important;overflow:auto!important;margin:0!important;padding:20px 16px calc(20px + env(safe-area-inset-bottom))!important;background:#fff!important;color:#222!important;border-radius:20px 20px 0 0!important;box-shadow:0 -10px 40px rgba(0,0,0,.22)!important;z-index:1!important;transform:translateY(0)!important;}
.icon-swipe-share-close{position:absolute!important;right:12px!important;top:10px!important;width:34px!important;height:34px!important;border:0!important;border-radius:50%!important;background:#f1f1f1!important;color:#333!important;font-size:24px!important;line-height:1!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;}
.icon-swipe-share-dialog h3{margin:0 42px 8px!important;padding:0!important;font-size:22px!important;line-height:1.25!important;color:#222!important;font-weight:700!important;}
.icon-swipe-share-preview{margin:0 42px 16px 0!important;padding:0!important;font-size:13px!important;line-height:1.45!important;color:#666!important;display:-webkit-box!important;-webkit-line-clamp:4!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.icon-swipe-share-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;margin:0!important;padding:0!important;}
.icon-swipe-share-grid button{min-height:44px!important;border:1px solid #ddd!important;border-radius:11px!important;background:#fafafa!important;color:#222!important;padding:8px 6px!important;font:inherit!important;font-size:13px!important;cursor:pointer!important;box-shadow:none!important;}
.icon-swipe-share-grid button:hover,.icon-swipe-share-grid button:focus-visible{background:#f0f6fb!important;border-color:#b8d8ef!important;outline:none!important;}
@media(max-width:380px){.icon-swipe-share-dialog{padding-left:12px!important;padding-right:12px!important;}.icon-swipe-share-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}

/* Keep a short card visually occupying the reader area so the site's footer
   cannot appear immediately under a short article. This does not add a fake
   scroll section; the next card is still selected by the swipe gesture. */
.icon-swipe-reader.icon-swipe-reader-short-card{min-height:calc(100dvh - var(--icon-reader-top-offset,0px))!important;}
.icon-swipe-reader.icon-swipe-reader-short-card .icon-swipe-feed,
.icon-swipe-reader.icon-swipe-reader-short-card .icon-swipe-card,
.icon-swipe-reader.icon-swipe-reader-short-card .icon-swipe-card-surface{min-height:calc(100dvh - var(--icon-reader-top-offset,0px))!important;}
.icon-swipe-reader.icon-swipe-reader-short-card .icon-swipe-content{min-height:calc(100dvh - var(--icon-reader-top-offset,0px) - var(--icon-image-short-offset,0px))!important;padding-bottom:22px!important;}

/* V1.5.5: keep the share wizard out of document flow and prevent the page
   behind it from moving while the bottom sheet is open. */
html.icon-swipe-share-open,body.icon-swipe-share-open{overflow:hidden!important;overscroll-behavior:none!important;}
.icon-swipe-share-sheet{isolation:isolate;}
.icon-swipe-share-dialog{padding-top:24px!important;}
.icon-swipe-share-dialog:before{content:"";display:block;width:38px;height:4px;border-radius:4px;background:rgba(0,0,0,.16);margin:0 auto 14px;}
@media(max-width:600px){.icon-swipe-share-dialog{width:100%!important;border-radius:22px 22px 0 0!important;padding-bottom:calc(18px + env(safe-area-inset-bottom))!important;}}

/* V1.5.5 share-card preview */
.icon-swipe-share-card-preview{display:flex!important;gap:11px!important;align-items:flex-start!important;margin:0 34px 16px 0!important;padding:0!important;}
.icon-swipe-share-thumb{width:82px!important;height:58px!important;flex:0 0 82px!important;object-fit:cover!important;border-radius:9px!important;background:#eee!important;display:block!important;}
.icon-swipe-share-card-preview>div{min-width:0!important;}
.icon-swipe-share-card-preview .icon-swipe-share-preview{margin:0 0 4px!important;}
.icon-swipe-share-url{display:block!important;color:#8a8a8a!important;font-size:10px!important;line-height:1.3!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}


/* Milestone 6: engagement controls and dedicated shared route. */
.icon-swipe-side-btn .icon-swipe-count{position:absolute!important;right:-2px!important;bottom:-2px!important;min-width:16px!important;height:16px!important;padding:0 4px!important;border-radius:9px!important;background:rgba(0,0,0,.55)!important;color:#fff!important;font-size:9px!important;line-height:16px!important;text-align:center!important;text-shadow:none!important;}
.icon-swipe-side-btn{position:relative!important;}
.icon-swipe-side-btn.is-bookmarked{background:rgba(7,135,238,.50)!important;color:#fff!important;}
.icon-swipe-fixed-dock .icon-swipe-count{font-weight:600!important;}
.icon-swipe-shared-route{width:100%!important;margin:0!important;padding:0!important;}
.icon-swipe-shared-route .icon-swipe-shared-reader-main{width:100%!important;margin:0!important;padding:0!important;}
@media(max-width:600px){.icon-swipe-shared-route .icon-swipe-reader{width:100%!important;max-width:100%!important;}}


/* V1.6.1 — Instagram/Reels-style vertical engagement rail.
   Counts sit below each icon instead of being hidden inside a bubble. */
.icon-swipe-side-actions{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:13px!important;
  width:54px!important;
  pointer-events:auto!important;
}
.icon-swipe-side-btn{
  position:relative!important;
  width:50px!important;
  min-width:50px!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#fff!important;
  box-shadow:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;
  text-shadow:0 1px 5px rgba(0,0,0,.75)!important;
}
.icon-swipe-side-btn svg{
  width:29px!important;
  height:29px!important;
  flex:0 0 29px!important;
  filter:drop-shadow(0 1px 4px rgba(0,0,0,.55))!important;
}
.icon-swipe-side-btn .icon-swipe-action-count{
  display:block!important;
  position:static!important;
  min-width:0!important;
  height:auto!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.1!important;
  text-align:center!important;
  text-shadow:0 1px 5px rgba(0,0,0,.8)!important;
}
.icon-swipe-side-btn:hover,.icon-swipe-side-btn:focus-visible{
  background:transparent!important;
  color:#fff!important;
  transform:scale(1.06)!important;
  outline:none!important;
}
.icon-swipe-side-btn:active{transform:scale(.94)!important;}
.icon-swipe-side-btn.is-liked svg{fill:currentColor!important;}
.icon-swipe-side-btn.is-liked{color:#ff2d55!important;}
.icon-swipe-side-btn.is-bookmarked svg{fill:currentColor!important;}
@media(max-width:600px){
  .icon-swipe-side-actions{right:8px!important;gap:15px!important;width:52px!important;}
  .icon-swipe-side-btn{width:48px!important;min-width:48px!important;}
  .icon-swipe-side-btn svg{width:28px!important;height:28px!important;flex-basis:28px!important;}
  .icon-swipe-side-btn .icon-swipe-action-count{font-size:11px!important;}
}
@media(max-width:380px){
  .icon-swipe-side-actions{right:4px!important;gap:12px!important;width:46px!important;}
  .icon-swipe-side-btn{width:44px!important;min-width:44px!important;}
  .icon-swipe-side-btn svg{width:25px!important;height:25px!important;flex-basis:25px!important;}
  .icon-swipe-side-btn .icon-swipe-action-count{font-size:10px!important;}
}

/* V1.6.2 — Transparent adaptive action rail.
   No button circles/backgrounds. The icons use difference blending so white
   artwork becomes dark over the white article area and light over dark media. */
.icon-swipe-side-actions::before{
  content:"";
  position:absolute!important;
  top:-18px!important;
  bottom:-18px!important;
  left:9px!important;
  right:9px!important;
  z-index:-1!important;
  pointer-events:none!important;
  background:linear-gradient(to bottom,rgba(0,0,0,0),rgba(0,0,0,.10),rgba(0,0,0,0))!important;
  filter:blur(10px)!important;
  border-radius:28px!important;
}
.icon-swipe-side-btn{
  mix-blend-mode:difference!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#fff!important;
  outline:none!important;
  isolation:auto!important;
}
.icon-swipe-side-btn svg{
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.95)) drop-shadow(0 0 2px rgba(0,0,0,.75))!important;
}
.icon-swipe-side-btn .icon-swipe-action-count{
  color:#fff!important;
  mix-blend-mode:difference!important;
  text-shadow:0 1px 3px rgba(0,0,0,.95)!important;
  font-weight:600!important;
  letter-spacing:.05px!important;
}
.icon-swipe-side-btn.is-liked{
  mix-blend-mode:normal!important;
  color:#ff2d55!important;
  background:transparent!important;
}
.icon-swipe-side-btn.is-liked svg{
  filter:drop-shadow(0 0 1px #fff) drop-shadow(0 1px 3px rgba(0,0,0,.95))!important;
}
.icon-swipe-side-btn.is-liked .icon-swipe-action-count{
  color:#ff2d55!important;
  mix-blend-mode:normal!important;
  text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 1px rgba(255,255,255,.9)!important;
}
.icon-swipe-side-btn.is-bookmarked{
  background:transparent!important;
}
.icon-swipe-side-btn:hover,.icon-swipe-side-btn:focus-visible{
  background:transparent!important;
  box-shadow:none!important;
}
.icon-swipe-side-btn:focus-visible svg{
  filter:drop-shadow(0 0 2px rgba(255,255,255,.95)) drop-shadow(0 1px 3px rgba(0,0,0,.95))!important;
}
@media(max-width:600px){
  .icon-swipe-side-actions::before{left:8px!important;right:8px!important;}
  .icon-swipe-side-btn svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.95)) drop-shadow(0 0 2px rgba(0,0,0,.75))!important;}
}


/* ================================================================
   V1.7.0 — Performance, Mobile & Reader Polish
   The reader is measured against the visible viewport. Article length may
   grow naturally, but short cards fill only the available reader viewport.
   The action rail is viewport-anchored rather than content-height-anchored.
   ================================================================ */
.icon-swipe-reader{
  --icon-reader-vh:100dvh;
  --icon-reader-top-offset:0px;
  --icon-reader-bottom-offset:0px;
  --icon-reader-available:100dvh;
  min-height:var(--icon-reader-available)!important;
  overflow:visible!important;
}
.icon-swipe-feed{min-height:0!important;}
.icon-swipe-card,.icon-swipe-card-surface{min-height:0!important;}
.icon-swipe-reader.icon-swipe-reader-short-card,
.icon-swipe-reader.icon-swipe-reader-short-card .icon-swipe-feed,
.icon-swipe-reader.icon-swipe-reader-short-card .icon-swipe-card,
.icon-swipe-reader.icon-swipe-reader-short-card .icon-swipe-card-surface{
  min-height:var(--icon-reader-available)!important;
}
.icon-swipe-reader.icon-swipe-reader-short-card .icon-swipe-content{
  min-height:calc(var(--icon-reader-available) - var(--icon-image-rendered-height,0px))!important;
  padding-bottom:clamp(22px,4vh,48px)!important;
}
.icon-swipe-side-actions{
  top:var(--icon-side-top,55vh)!important;
  bottom:auto!important;
  transform:translateY(-50%)!important;
}
.icon-swipe-side-actions .icon-swipe-side-btn{
  transition:transform .16s ease,opacity .16s ease!important;
}
.icon-swipe-side-actions .icon-swipe-side-btn:active{transform:scale(.92)!important;}
.icon-swipe-side-actions .icon-swipe-side-btn svg{shape-rendering:geometricPrecision;}
.icon-swipe-image{content-visibility:auto;}
@media(max-width:600px){
  .icon-swipe-reader{min-height:var(--icon-reader-available)!important;}
  .icon-swipe-image-wrap{contain:layout paint style;}
  .icon-swipe-side-actions{top:var(--icon-side-top,55vh)!important;right:max(6px,env(safe-area-inset-right))!important;}
}
@media(max-width:380px){
  .icon-swipe-side-actions{top:var(--icon-side-top,54vh)!important;}
}
@media(orientation:landscape) and (max-width:900px){
  .icon-swipe-side-actions{top:52vh!important;}
  .icon-swipe-reader.icon-swipe-reader-short-card .icon-swipe-content{padding-bottom:18px!important;}
}
@media(prefers-reduced-motion:reduce){
  .icon-swipe-enter-up,.icon-swipe-enter-down,.icon-swipe-page-cue .icon-swipe-cue-arrow{animation:none!important;}
  .icon-swipe-side-actions .icon-swipe-side-btn{transition:none!important;}
}


/* V1.8.0 — Smart Feed & Discovery */
.icon-swipe-discovery{position:absolute!important;z-index:20!important;top:10px!important;left:10px!important;right:10px!important;display:flex!important;align-items:center!important;gap:7px!important;pointer-events:auto!important;max-width:720px!important;margin:0 auto!important;}
.icon-swipe-discovery[hidden],.icon-swipe-search-box[hidden]{display:none!important;}
.icon-swipe-discovery-search{width:38px!important;height:38px!important;flex:0 0 38px!important;border:0!important;border-radius:50%!important;background:rgba(0,0,0,.38)!important;color:#fff!important;backdrop-filter:blur(5px)!important;-webkit-backdrop-filter:blur(5px)!important;font-size:23px!important;line-height:38px!important;padding:0!important;cursor:pointer!important;text-shadow:0 1px 3px rgba(0,0,0,.7)!important;}
.icon-swipe-category-select{height:38px!important;max-width:210px!important;border:1px solid rgba(255,255,255,.42)!important;border-radius:19px!important;background:rgba(0,0,0,.38)!important;color:#fff!important;backdrop-filter:blur(5px)!important;-webkit-backdrop-filter:blur(5px)!important;padding:0 30px 0 13px!important;font-size:12px!important;outline:none!important;cursor:pointer!important;}
.icon-swipe-category-select option{color:#222;background:#fff;}
.icon-swipe-search-box{display:flex!important;align-items:center!important;flex:1 1 auto!important;min-width:0!important;height:38px!important;border:1px solid rgba(255,255,255,.42)!important;border-radius:19px!important;background:rgba(0,0,0,.38)!important;backdrop-filter:blur(5px)!important;-webkit-backdrop-filter:blur(5px)!important;overflow:hidden!important;}
.icon-swipe-search-input{flex:1 1 auto!important;min-width:0!important;height:36px!important;border:0!important;background:transparent!important;color:#fff!important;padding:0 10px!important;font-size:13px!important;outline:none!important;box-shadow:none!important;}
.icon-swipe-search-input::placeholder{color:rgba(255,255,255,.82)!important;}
.icon-swipe-search-clear{width:36px!important;height:36px!important;flex:0 0 36px!important;border:0!important;background:transparent!important;color:#fff!important;font-size:22px!important;line-height:36px!important;padding:0!important;cursor:pointer!important;}
.icon-swipe-empty{min-height:240px!important;padding:70px 24px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;color:#666!important;background:#fff!important;gap:8px!important;}
.icon-swipe-empty strong{font-size:20px!important;color:#222!important;}
.icon-swipe-empty span{font-size:13px!important;max-width:420px!important;line-height:1.5!important;}
.icon-swipe-empty-reset{margin-top:8px!important;border:1px solid #0787ee!important;border-radius:18px!important;background:#fff!important;color:#0787ee!important;padding:8px 16px!important;cursor:pointer!important;}
@media(max-width:600px){
 .icon-swipe-discovery{top:8px!important;left:8px!important;right:8px!important;gap:5px!important;}
 .icon-swipe-discovery-search{width:34px!important;height:34px!important;flex-basis:34px!important;line-height:34px!important;font-size:21px!important;}
 .icon-swipe-category-select{height:34px!important;max-width:150px!important;border-radius:17px!important;font-size:11px!important;padding-left:10px!important;}
 .icon-swipe-search-box{height:34px!important;border-radius:17px!important;}
 .icon-swipe-search-input{height:32px!important;font-size:12px!important;}
 .icon-swipe-search-clear{height:32px!important;line-height:32px!important;}
}

/* ================================================================
   V1.9.0 — Production stability & resilient states
   ================================================================ */
.icon-swipe-error{
  min-height:240px!important;padding:60px 24px!important;display:flex!important;
  flex-direction:column!important;align-items:center!important;justify-content:center!important;
  text-align:center!important;background:var(--icon-content-bg,#fff)!important;color:#666!important;gap:8px!important;
}
.icon-swipe-error strong{font-size:20px!important;color:var(--icon-headline-color,#222)!important;line-height:1.35!important}
.icon-swipe-error span{font-size:13px!important;line-height:1.5!important}
.icon-swipe-retry{margin-top:8px!important;border:1px solid var(--icon-accent,#0787ee)!important;border-radius:20px!important;background:transparent!important;color:var(--icon-accent,#0787ee)!important;padding:9px 20px!important;font-weight:600!important;cursor:pointer!important}
.icon-swipe-retry:active{transform:scale(.97)!important}
.icon-swipe-loading .icon-swipe-spinner{will-change:transform}

/* V1.9.2: canonical branded share message and non-duplicating social metadata. */
.icon-swipe-share-heading{margin:0 42px 10px 0!important;padding:0!important;}
.icon-swipe-share-kicker{display:block!important;margin:0 0 3px!important;font-size:9px!important;line-height:1.2!important;letter-spacing:.16em!important;font-weight:800!important;color:#0787ee!important;}
.icon-swipe-share-heading h3{margin:0!important;font-size:25px!important;line-height:1.18!important;}
.icon-swipe-share-preview-copy{min-width:0!important;padding-top:1px!important;}
.icon-swipe-share-card-preview{align-items:center!important;padding:10px!important;border:1px solid #e8e8e8!important;border-radius:14px!important;background:#fafafa!important;box-shadow:0 2px 10px rgba(0,0,0,.04)!important;}
.icon-swipe-share-thumb{width:88px!important;height:62px!important;flex-basis:88px!important;border-radius:10px!important;}
.icon-swipe-share-preview{font-size:14px!important;line-height:1.35!important;color:#222!important;font-weight:650!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;}
.icon-swipe-share-meta{display:block!important;margin-top:4px!important;color:#707070!important;font-size:10px!important;line-height:1.3!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.icon-swipe-share-url{margin-top:3px!important;color:#0787ee!important;}
.icon-swipe-share-grid{gap:10px!important;margin-top:4px!important;}
.icon-swipe-share-grid button{min-height:58px!important;border:1px solid #e2e2e2!important;border-radius:14px!important;background:#fff!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;font-size:11px!important;font-weight:600!important;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease!important;}
.icon-swipe-share-grid button:active{transform:scale(.96)!important;}
.icon-swipe-share-grid button:hover,.icon-swipe-share-grid button:focus-visible{background:#f7fbff!important;border-color:#b8d8ef!important;box-shadow:0 5px 16px rgba(0,0,0,.08)!important;}
.icon-swipe-share-platform-icon{width:27px!important;height:27px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;background:#f0f2f4!important;color:#222!important;font-size:15px!important;font-weight:800!important;line-height:1!important;}
@media(max-width:380px){.icon-swipe-share-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}.icon-swipe-share-grid button{min-height:54px!important;}.icon-swipe-share-platform-icon{width:24px!important;height:24px!important;font-size:13px!important;}}


/* V1.9.3 — YouTube video news inside the same media frame. Playback starts only after Play is tapped. */
.icon-swipe-has-video{position:relative!important;overflow:hidden!important;background:#111!important;}
.icon-swipe-has-video .icon-swipe-image{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;}
.icon-swipe-video-play{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:68px!important;height:68px!important;border:0!important;border-radius:50%!important;background:rgba(0,0,0,.72)!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;z-index:4!important;box-shadow:0 5px 24px rgba(0,0,0,.35)!important;}
.icon-swipe-video-play:hover{transform:translate(-50%,-50%) scale(1.06)!important;background:rgba(0,0,0,.82)!important;}
.icon-swipe-video-play-icon{font-size:27px!important;line-height:1!important;margin-left:4px!important;}
.icon-swipe-video-frame{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;background:#000!important;z-index:3!important;display:block!important;}
.icon-swipe-has-video.is-video-playing:after{display:none!important;}
@media(max-width:600px){.icon-swipe-video-play{width:60px!important;height:60px!important;}.icon-swipe-video-play-icon{font-size:24px!important;}}

/* ================================================================
   V1.9.4 — Responsive Desktop Two-Column Reader
   Desktop/laptop screens use the available viewport width intelligently:
   column 1 = media, column 2 = article. Mobile/tablet layout remains
   unchanged below 901px.
   ================================================================ */
@media (min-width:901px){
  .icon-swipe-reader{
    width:min(var(--icon-reader-width,100%),1440px)!important;
    max-width:1440px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  .icon-swipe-feed{
    width:100%!important;
    max-width:1440px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .icon-swipe-card,
  .icon-swipe-card-surface{
    width:100%!important;
  }

  /* Two equal-purpose columns: media on the left, story on the right. */
  .icon-swipe-card-surface{
    display:grid!important;
    grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr)!important;
    align-items:stretch!important;
    min-height:clamp(420px,calc(100vh - 110px),760px)!important;
    background:var(--icon-content-bg,#fff)!important;
  }

  .icon-swipe-image-wrap{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    height:100%!important;
    min-height:420px!important;
    aspect-ratio:auto!important;
    border-radius:0!important;
  }

  .icon-swipe-image{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  .icon-swipe-content{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    min-height:100%!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    padding:clamp(28px,3vw,56px) clamp(28px,3.2vw,60px) 70px!important;
    overflow:visible!important;
    background:var(--icon-content-bg,#fff)!important;
  }

  .icon-swipe-content>.icon-swipe-category{
    margin-bottom:12px!important;
  }

  .icon-swipe-title{
    font-size:clamp(25px,2.25vw,42px)!important;
    line-height:1.18!important;
    margin-bottom:14px!important;
  }

  .icon-swipe-excerpt{
    font-size:clamp(17px,1.18vw,21px)!important;
    line-height:1.58!important;
    max-width:760px!important;
  }

  .icon-swipe-page-cue{
    margin-top:auto!important;
    padding-top:20px!important;
  }

  /* Desktop metadata/action dock follows the same centered reader width. */
  .icon-swipe-fixed-dock{
    width:min(var(--icon-reader-width,100%),1440px)!important;
    max-width:1440px!important;
    left:50%!important;
    padding-left:28px!important;
    padding-right:28px!important;
  }

  /* Keep side actions outside the article text column. */
  .icon-swipe-side-actions{
    right:max(18px,calc((100vw - 1440px)/2 + 14px))!important;
  }
}

/* Medium laptop screens: preserve readable article width while giving the
   image enough room to remain visually dominant. */
@media (min-width:901px) and (max-width:1199px){
  .icon-swipe-card-surface{
    grid-template-columns:minmax(0,1fr) minmax(330px,.82fr)!important;
    min-height:clamp(400px,calc(100vh - 100px),680px)!important;
  }
  .icon-swipe-image-wrap{min-height:400px!important;}
  .icon-swipe-content{padding:24px 28px 64px!important;}
  .icon-swipe-title{font-size:clamp(23px,2.5vw,32px)!important;}
  .icon-swipe-excerpt{font-size:16px!important;line-height:1.52!important;}
}

/* ================================================================
   V1.9.6 — Desktop Premium Reader UI
   Visual refinement for desktop/laptop two-column presentation.
   Mobile/tablet rules are intentionally untouched.
   ================================================================ */
@media (min-width:901px){
  .icon-swipe-reader{
    --icon-desktop-gap:18px;
    background:transparent!important;
    padding:18px 18px 28px!important;
  }

  .icon-swipe-feed{
    max-width:1440px!important;
  }

  .icon-swipe-card{
    padding:0!important;
    background:transparent!important;
  }

  .icon-swipe-card-surface{
    position:relative!important;
    display:grid!important;
    grid-template-columns:minmax(0,58%) minmax(360px,42%)!important;
    min-height:clamp(500px,calc(100vh - 190px),790px)!important;
    border:1px solid rgba(10,42,102,.10)!important;
    border-radius:22px!important;
    overflow:hidden!important;
    background:#fff!important;
    box-shadow:0 12px 38px rgba(10,42,102,.10)!important;
  }

  .icon-swipe-image-wrap{
    position:relative!important;
    min-height:500px!important;
    height:100%!important;
    border-radius:0!important;
    background:#0b1220!important;
    isolation:isolate;
  }

  .icon-swipe-image-wrap:after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    pointer-events:none;
    background:linear-gradient(180deg,rgba(0,0,0,.34) 0%,rgba(0,0,0,0) 22%,rgba(0,0,0,0) 68%,rgba(0,0,0,.48) 100%);
  }

  .icon-swipe-image{
    transition:transform .45s ease,filter .3s ease!important;
  }

  .icon-swipe-card:hover .icon-swipe-image{transform:scale(1.012)!important;}

  .icon-swipe-image-topbar{
    z-index:3!important;
    height:76px!important;
    padding:20px 22px 0!important;
    font-size:15px!important;
    font-weight:600!important;
    letter-spacing:.2px!important;
  }

  .icon-swipe-image-progress{
    padding:7px 11px!important;
    border:1px solid rgba(255,255,255,.28)!important;
    border-radius:999px!important;
    background:rgba(8,18,34,.48)!important;
    backdrop-filter:blur(8px);
  }

  .icon-swipe-video-play{
    z-index:5!important;
    width:82px!important;
    height:82px!important;
    background:rgba(7,16,29,.78)!important;
    border:1px solid rgba(255,255,255,.32)!important;
    box-shadow:0 10px 30px rgba(0,0,0,.34)!important;
  }

  .icon-swipe-video-play-icon{font-size:31px!important;}

  .icon-swipe-image-bottom{
    z-index:4!important;
  }

  .icon-swipe-content{
    position:relative!important;
    min-height:100%!important;
    padding:42px 46px 34px!important;
    background:linear-gradient(180deg,#fff 0%,#fbfcff 100%)!important;
    border-left:1px solid rgba(10,42,102,.08)!important;
  }

  .icon-swipe-content:before{
    content:"";
    display:block;
    width:44px;
    height:4px;
    margin-bottom:22px;
    border-radius:999px;
    background:linear-gradient(90deg,#0A2A66,#F4B400);
  }

  .icon-swipe-title{
    max-width:820px!important;
    margin:0 0 20px!important;
    font-size:clamp(28px,2.15vw,42px)!important;
    line-height:1.18!important;
    font-weight:800!important;
    letter-spacing:-.25px!important;
    color:#0b1d3a!important;
  }

  .icon-swipe-excerpt{
    max-width:780px!important;
    color:#526173!important;
    font-size:clamp(17px,1.08vw,20px)!important;
    line-height:1.72!important;
    font-weight:400!important;
  }

  .icon-swipe-page-cue{
    margin-top:auto!important;
    height:32px!important;
    min-height:32px!important;
    color:#7c8998!important;
    font-size:10px!important;
    border-top:1px solid #edf0f5!important;
    padding-top:18px!important;
  }

  .icon-swipe-page-cue .icon-swipe-cue-arrow{
    color:#0A2A66!important;
  }

  .icon-swipe-fixed-dock{
    width:min(calc(100% - 36px),1404px)!important;
    max-width:1404px!important;
    padding:8px 16px 10px!important;
    border:1px solid rgba(10,42,102,.10)!important;
    border-radius:18px 18px 0 0!important;
    box-shadow:0 -5px 24px rgba(10,42,102,.08)!important;
    backdrop-filter:blur(12px);
  }

  .icon-swipe-fixed-dock .icon-swipe-actions a,
  .icon-swipe-fixed-dock .icon-swipe-actions button{
    border-color:#dce4ef!important;
    background:#fff!important;
    color:#213047!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    border-radius:12px!important;
    font-size:11px!important;
    font-weight:600!important;
    transition:all .18s ease!important;
  }

  .icon-swipe-fixed-dock .icon-swipe-actions a:hover,
  .icon-swipe-fixed-dock .icon-swipe-actions button:hover{
    border-color:#0A2A66!important;
    box-shadow:0 5px 14px rgba(10,42,102,.10)!important;
    transform:translateY(-1px);
  }
}

@media (min-width:901px) and (max-width:1199px){
  .icon-swipe-reader{padding:14px 14px 24px!important;}
  .icon-swipe-card-surface{grid-template-columns:minmax(0,56%) minmax(330px,44%)!important;min-height:clamp(460px,calc(100vh - 170px),700px)!important;border-radius:18px!important;}
  .icon-swipe-image-wrap{min-height:460px!important;}
  .icon-swipe-content{padding:32px 32px 28px!important;}
  .icon-swipe-title{font-size:clamp(25px,2.55vw,34px)!important;line-height:1.2!important;}
  .icon-swipe-excerpt{font-size:16px!important;line-height:1.6!important;}
}

@media (min-width:1441px){
  .icon-swipe-reader{padding-left:0!important;padding-right:0!important;}
}


/* ================================================================
   V1.9.6 — Desktop Visual Refinement
   Based on desktop QA screenshot: separate the discovery controls from
   the media artwork, align both columns to a common top edge, and size
   the reader from the available viewport without excessive cropping.
   Mobile/tablet behavior remains unchanged.
   ================================================================ */
@media (min-width:901px){
  .icon-swipe-reader{
    width:min(100%,1440px)!important;
    max-width:1440px!important;
    margin:0 auto!important;
    padding:12px 16px 24px!important;
    background:#f5f7fb!important;
  }

  .icon-swipe-discovery{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    max-width:none!important;
    height:48px!important;
    margin:0 0 10px!important;
    padding:0 4px!important;
    display:flex!important;
    justify-content:flex-end!important;
    gap:8px!important;
  }

  .icon-swipe-discovery-search{
    width:40px!important;
    height:40px!important;
    flex-basis:40px!important;
    background:#fff!important;
    color:#0A2A66!important;
    border:1px solid #dce4ef!important;
    box-shadow:0 4px 14px rgba(10,42,102,.08)!important;
    text-shadow:none!important;
  }

  .icon-swipe-category-select,
  .icon-swipe-search-box{
    background:#fff!important;
    color:#26364d!important;
    border:1px solid #dce4ef!important;
    box-shadow:0 4px 14px rgba(10,42,102,.08)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .icon-swipe-category-select{height:40px!important;border-radius:20px!important;}
  .icon-swipe-search-box{height:40px!important;border-radius:20px!important;}
  .icon-swipe-search-input{height:38px!important;color:#26364d!important;}
  .icon-swipe-search-input::placeholder{color:#7b8797!important;}
  .icon-swipe-search-clear{color:#526173!important;}

  .icon-swipe-card-surface{
    grid-template-columns:minmax(0,56%) minmax(0,44%)!important;
    min-height:clamp(500px,calc(100vh - 205px),760px)!important;
    border-radius:20px!important;
    border:1px solid #e1e7ef!important;
    box-shadow:0 10px 34px rgba(15,35,70,.10)!important;
  }

  .icon-swipe-image-wrap{
    min-height:500px!important;
    height:100%!important;
  }

  .icon-swipe-content{
    min-height:100%!important;
    padding:clamp(30px,3vw,48px) clamp(30px,3.2vw,52px) 34px!important;
    overflow:auto!important;
    scrollbar-width:thin;
    scrollbar-color:#cbd5e1 transparent;
  }

  .icon-swipe-content:before{
    width:46px!important;
    height:4px!important;
    margin-bottom:20px!important;
  }

  .icon-swipe-title{
    font-size:clamp(27px,2.05vw,39px)!important;
    line-height:1.2!important;
    margin-bottom:18px!important;
  }

  .icon-swipe-excerpt{
    font-size:clamp(16px,1.03vw,19px)!important;
    line-height:1.72!important;
  }

  .icon-swipe-image-topbar{
    padding:18px 20px 0!important;
  }

  .icon-swipe-image-topbar > span:first-child{
    padding:6px 11px!important;
    border-radius:999px!important;
    background:rgba(7,18,34,.50)!important;
    border:1px solid rgba(255,255,255,.20)!important;
    backdrop-filter:blur(7px)!important;
  }

  .icon-swipe-fixed-dock{
    width:min(calc(100% - 32px),1408px)!important;
    max-width:1408px!important;
  }
}

@media (min-width:1200px){
  .icon-swipe-card-surface{grid-template-columns:minmax(0,57%) minmax(0,43%)!important;}
}

@media (min-width:901px) and (max-width:1199px){
  .icon-swipe-reader{padding:10px 12px 20px!important;}
  .icon-swipe-discovery{height:44px!important;margin-bottom:8px!important;}
  .icon-swipe-discovery-search{width:36px!important;height:36px!important;flex-basis:36px!important;}
  .icon-swipe-category-select,.icon-swipe-search-box{height:36px!important;}
  .icon-swipe-card-surface{min-height:clamp(450px,calc(100vh - 180px),650px)!important;}
  .icon-swipe-image-wrap{min-height:450px!important;}
  .icon-swipe-content{padding:28px 30px 30px!important;}
  .icon-swipe-title{font-size:clamp(24px,2.45vw,32px)!important;}
  .icon-swipe-excerpt{font-size:15.5px!important;line-height:1.62!important;}
}


/* ICON Swipe News 1.9.8 — Production desktop/laptop viewport-fit mode.
 * Desktop keeps one complete reader item inside the visible viewport: image on
 * the left, article on the right, with no page-level vertical scrollbar.
 * Mobile/tablet behavior remains the existing natural-flow layout.
 */
@media (min-width:601px){
  html.icon-swipe-desktop-lock,
  html.icon-swipe-desktop-lock body{overflow:hidden!important;}

  .icon-swipe-reader.icon-swipe-desktop-fit{
    width:var(--icon-reader-width,100%)!important;
    height:var(--icon-reader-available,calc(100vh - 0px))!important;
    min-height:0!important;
    max-height:var(--icon-reader-available,calc(100vh - 0px))!important;
    overflow:hidden!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-feed{
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    overflow:hidden!important;
    padding:0!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    overflow:hidden!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card-surface{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,58fr) minmax(360px,42fr)!important;
    align-items:stretch!important;
    overflow:hidden!important;
    border-radius:14px!important;
    box-shadow:0 8px 28px rgba(0,0,0,.08)!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-image-wrap{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
    background:#111!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-image{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:#111!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-content{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    max-height:100%!important;
    padding:clamp(22px,3vw,42px)!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    overflow:hidden!important;
    background:var(--icon-content-bg,#fff)!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-content>.icon-swipe-category{
    flex:0 0 auto!important;
    align-self:flex-start!important;
    margin:0 0 12px!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-title{
    flex:0 0 auto!important;
    max-height:40%!important;
    margin:0 0 12px!important;
    overflow:hidden!important;
    text-wrap:balance!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-excerpt{
    flex:0 1 auto!important;
    min-height:0!important;
    max-height:48%!important;
    overflow:hidden!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-page-cue{
    flex:0 0 18px!important;
    margin-top:12px!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-image-topbar{font-size:15px!important;}
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-fixed-dock{
    left:calc(50% + var(--icon-desktop-dock-shift,0px))!important;
    width:min(520px,42%)!important;
    padding:5px 10px 7px!important;
    border-radius:12px 12px 0 0!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-side-actions{display:none!important;}
}

@media (min-width:601px) and (max-width:1200px){
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card-surface{
    grid-template-columns:minmax(0,55fr) minmax(320px,45fr)!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-content{padding:24px!important;}
}
@media (min-width:601px) and (max-width:850px){
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card-surface{
    grid-template-columns:minmax(0,52fr) minmax(290px,48fr)!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-content{padding:18px!important;}
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-title{margin-bottom:8px!important;}
}


/* ICON Swipe News 1.9.9 — final desktop viewport accounting.
 * The reader height includes the discovery toolbar, so the feed/card must
 * consume only the remaining space. This prevents the card from extending
 * below the viewport and eliminates the bottom cut-off seen in QA.
 */
@media (min-width:601px){
  .icon-swipe-reader.icon-swipe-desktop-fit{
    box-sizing:border-box!important;
    height:var(--icon-reader-available,calc(100vh - 0px))!important;
    min-height:0!important;
    max-height:var(--icon-reader-available,calc(100vh - 0px))!important;
    overflow:hidden!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-discovery{
    flex:0 0 auto!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-feed{
    height:calc(100% - var(--icon-discovery-space,0px))!important;
    min-height:0!important;
    max-height:calc(100% - var(--icon-discovery-space,0px))!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card,
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card-surface{
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    box-sizing:border-box!important;
  }
}

/* ================================================================
   V1.10.0 — Desktop viewport-fit correction
   The reader is a real flex column: discovery consumes only its measured
   height and the feed consumes the exact remaining viewport height. This
   removes the conflicting historical min-height rules and prevents both
   bottom cut-off and excess blank space.
   ================================================================ */
@media (min-width:601px){
  html.icon-swipe-desktop-lock,
  body.icon-swipe-desktop-lock{overflow:hidden!important;}

  .icon-swipe-reader.icon-swipe-desktop-fit{
    display:flex!important;
    flex-direction:column!important;
    width:var(--icon-reader-width,100%)!important;
    height:var(--icon-reader-available,calc(100vh - 100px))!important;
    min-height:0!important;
    max-height:var(--icon-reader-available,calc(100vh - 100px))!important;
    padding:12px 16px 18px!important;
    margin:0 auto!important;
    overflow:hidden!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-discovery{
    flex:0 0 auto!important;
    height:48px!important;
    min-height:0!important;
    margin:0 0 10px!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-feed{
    flex:1 1 auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card,
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card-surface{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    overflow:hidden!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card-surface{
    display:grid!important;
    grid-template-columns:minmax(0,57%) minmax(0,43%)!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-image-wrap{
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:auto!important;
    overflow:hidden!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-image{
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:#111!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-content{
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding:clamp(22px,3vw,44px)!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-title{
    flex:0 0 auto!important;
    max-height:38%!important;
    overflow:hidden!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-excerpt{
    flex:0 1 auto!important;
    min-height:0!important;
    max-height:50%!important;
    overflow:hidden!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-page-cue{
    flex:0 0 32px!important;
    height:32px!important;
    min-height:32px!important;
    margin-top:10px!important;
  }

  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-fixed-dock{
    bottom:var(--icon-bottom-nav-height,0px)!important;
  }
}

@media (min-width:601px) and (max-width:1200px){
  .icon-swipe-reader.icon-swipe-desktop-fit{
    padding:10px 12px 14px!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-discovery{
    height:42px!important;
    margin-bottom:8px!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card-surface{
    grid-template-columns:minmax(0,55%) minmax(0,45%)!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-content{
    padding:20px!important;
  }
}

@media (min-width:601px) and (max-width:850px){
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-card-surface{
    grid-template-columns:minmax(0,52%) minmax(0,48%)!important;
  }
  .icon-swipe-reader.icon-swipe-desktop-fit .icon-swipe-content{
    padding:16px!important;
  }
}
