.fdu-follow[hidden],.fdu-launch [hidden],.fdu-dialog [hidden]{display:none!important}
.fdu-follow{margin:10px 0;position:relative;z-index:1;font-size:11px}
.fdu-follow button,.fdu-launch{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:39px;height:auto;padding:10px 15px;border:1px solid var(--bdc,#dfe5ec);border-radius:11px;background:var(--bg,#fff);color:var(--tt,#253044);font-family:inherit;font-weight:600;font-size:12px;line-height:1.4;cursor:pointer;box-shadow:var(--bsh-item,none)}
.fdu-follow button i,.fdu-launch i{color:#14a4a7}
.fdu-follow button[aria-pressed=true]{background:linear-gradient(120deg,#2669b3,#14a4a7);border-color:transparent;color:#fff}
.fdu-follow button[aria-pressed=true] i{color:#fff}
.fdu-follow [role=status]{display:block;color:var(--tt-fade,#667085);margin-top:5px;max-width:290px;line-height:1.5}
.fdu-launch{width:100%;justify-content:flex-start;margin:12px 0 18px;padding:13px 16px;border-radius:13px;text-align:left}
.fdu-launch [data-fdu-count]{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:23px;padding:0 6px;margin-left:auto;border-radius:8px;background:#e44965;color:white;font-size:11px;font-weight:800}
.fdu-dialog{box-sizing:border-box;position:fixed;width:min(680px,calc(100vw - 28px));max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--bdc,#dfe5ec);border-radius:22px;background:var(--bg,#fff);color:var(--tt,#253044);box-shadow:0 24px 90px #001c3340;overflow:auto;margin:auto;font-family:inherit}
.fdu-dialog::backdrop{background:rgba(9,23,44,.6);backdrop-filter:blur(4px)}
.fdu-dialog *{box-sizing:border-box}
.fdu-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:27px;background:linear-gradient(125deg,#2669b3,#14a4a7);color:#fff}
.fdu-eyebrow{font-size:9px;font-weight:800;letter-spacing:1.6px;color:#e1ffff}
.fdu-head h2{margin:7px 0;color:#fff;font-size:25px;line-height:1.25}
.fdu-head p{margin:0;color:#efffff;font-size:12px;line-height:1.6}
.fdu-dialog button{height:auto;min-width:0;min-height:34px;padding:8px 12px;font-family:inherit;font-size:12px;line-height:1.4;border:1px solid var(--bdc,#dfe5ec);border-radius:9px;background:var(--bg,#fff);color:var(--tt,#253044);cursor:pointer;box-shadow:none}
.fdu-dialog .fdu-close{flex-shrink:0;width:33px;padding:0;background:#ffffff24;border-color:#ffffff40;color:#fff;font:26px/1.2 sans-serif}
.fdu-tabs{display:flex;gap:7px;flex-wrap:wrap;padding:16px 22px;border-bottom:1px solid var(--bdc,#dfe5ec)}
.fdu-tabs button[aria-pressed=true]{background:#2669b3;border-color:#2669b3;color:#fff}
.fdu-tabs .fdu-read-all{margin-left:auto;font-size:11px}
.fdu-message{margin:0;padding:0 22px;color:var(--tt,#253044);font-size:12px;line-height:1.6}
.fdu-message:not(:empty){padding-top:15px;padding-bottom:15px;background:rgba(228,73,101,.08)}
.fdu-list{min-height:160px;padding:0 22px;font-size:13px}
.fdu-list[aria-busy=true]{padding-top:20px}
.fdu-row{display:flex;gap:13px;align-items:center;padding:18px 0;border-bottom:1px solid var(--bdc,#dfe5ec)}
.fdu-row:last-child{border-bottom:0}
.fdu-row-icon{display:grid;place-items:center;width:41px;height:41px;flex-shrink:0;border-radius:12px;color:#2669b3;background:rgba(38,105,179,.10);font-size:18px}
.fdu-row.is-unread .fdu-row-icon{background:linear-gradient(135deg,#2669b3,#14a4a7);color:#fff}
.fdu-row-copy{flex:1;min-width:0}
.fdu-row-label{display:block;color:var(--tt-fade,#667085);font-size:9px;letter-spacing:.7px;font-weight:700;margin-bottom:5px}
.fdu-row.is-unread .fdu-row-label{color:#14a4a7}
.fdu-row a{display:block;color:var(--tt,#253044);font-size:13px;font-weight:700;line-height:1.6;text-decoration:none;overflow-wrap:anywhere}
.fdu-row a:hover{text-decoration:underline}
.fdu-row time{display:block;color:var(--tt-fade,#667085);font-size:10px;margin-top:5px}
.fdu-dialog .fdu-unfollow{font-size:10px;padding:6px 9px}
.fdu-empty{padding:40px 12px;text-align:center}
.fdu-empty>i{display:block;color:#14a4a7;font-size:30px;margin-bottom:16px}
.fdu-empty strong{font-size:17px}
.fdu-empty p{max-width:340px;margin:9px auto 0;color:var(--tt-fade,#667085);font-size:12px;line-height:1.8}
.fdu-pager{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px 22px;border-top:1px solid var(--bdc,#dfe5ec)}
.fdu-pager span{color:var(--tt-fade,#667085);font-size:10px;text-align:center}
.fdu-dialog button:disabled,.fdu-follow button:disabled{opacity:.55;cursor:wait}
.fdu-dialog :focus-visible,.fdu-follow button:focus-visible,.fdu-launch:focus-visible{outline:2px solid #14a4a7;outline-offset:3px}
@media(max-width:480px){.fdu-head{padding:22px 18px}.fdu-head h2{font-size:22px}.fdu-tabs{padding:12px}.fdu-list{padding:0 14px}.fdu-row{gap:9px}.fdu-row-icon{width:33px;height:33px;font-size:15px}.fdu-pager{padding:13px}.fdu-dialog .fdu-unfollow{padding:5px;font-size:9px}}

/* FD SOFTWARE UPDATES — POSTER & MINI DASHBOARD V1.1 */
.page__header-left .fdu-poster-image{
    margin-bottom:0!important;
}
.page__header-left .fdu-follow{
    margin:0;
    max-width:100%;
}
.page__header-left .fdu-follow button{
    position:relative;
    width:100%;
    min-height:40px;
    margin:0;
    padding:11px 8px;
    border:0;
    border-radius:0 0 12px 12px;
    background:linear-gradient(120deg,#2669b3,#14a4a7);
    color:#fff;
    font-family:inherit;
    font-size:11px;
    font-weight:700;
    line-height:1.4;
    text-transform:none;
    box-shadow:0 7px 16px rgba(38,105,179,.18);
    transition:background .2s,box-shadow .2s,filter .2s;
}
.page__header-left .fdu-follow button i{
    color:#fff;
}
.page__header-left .fdu-follow button:hover{
    background:linear-gradient(120deg,#6941c6,#d946a0);
    color:#fff;
    box-shadow:0 8px 20px rgba(145,65,198,.30);
}
.page__header-left .fdu-follow button[aria-pressed=true]{
    background:linear-gradient(120deg,#087f73,#14a4a7);
}
.page__header-left .fdu-follow button[aria-pressed=true]:hover{
    background:linear-gradient(120deg,#6941c6,#d946a0);
}
.fdu-follow [role=status]:empty{
    display:none;
}
.member-menu-inner .fdu-launch,
.vip-links .fdu-launch{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:12px;
    width:100%;
    min-height:42px;
    height:auto;
    margin:0 0 6px;
    padding:12px 14px;
    border:0;
    border-radius:12px;
    background:transparent;
    color:var(--tt);
    font-family:inherit;
    font-size:inherit;
    font-weight:inherit;
    line-height:1.5;
    text-transform:none;
    letter-spacing:normal;
    text-align:left;
    box-shadow:none;
    cursor:pointer;
    transition:background .2s,color .2s,transform .2s;
}
.vip-links .fdu-launch{
    padding:12px;
    gap:10px;
    border-radius:10px;
}
.member-menu-inner .fdu-launch>i,
.vip-links .fdu-launch>i{
    width:18px;
    text-align:center;
    color:#14a4a7;
}
.vip-links .fdu-launch>i{
    color:var(--green,#14a4a7);
}
.member-menu-inner .fdu-launch:hover,
.vip-links .fdu-launch:hover{
    background:rgba(20,164,167,.08);
    color:#14a4a7;
    transform:translateX(3px);
}
@media(prefers-reduced-motion:reduce){
    .fdu-follow button,
    .member-menu-inner .fdu-launch,
    .vip-links .fdu-launch{
        transition:none;
    }
}


/* ==================================================
   FD_FOLLOW_REPUTATION_V2
   Premium Follow Updates — Above Reputation
   ================================================== */

.page__header-info {
    position:relative;
}

.page__header-info .fdu-follow {
    position:absolute;
    top:-40px;
    right:0;
    z-index:5;
    width:120px;
    height:40px;
    margin:0;
    max-width:none;
}

.page__header-info .fdu-follow button {
    box-sizing:border-box;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    width:100%;
    height:40px;
    min-height:40px;
    margin:0;
    padding:5px;
    border:0;
    border-radius:10px 10px 0 0;
    background:linear-gradient(
        180deg,
        #59b8f3,
        #288ed7 58%,
        #1668b3
    );
    color:#fff!important;
    font-family:inherit;
    font-size:10px;
    font-weight:700;
    line-height:1;
    cursor:pointer;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.35),
        inset 0 -2px 0 rgba(0,50,110,.28),
        0 6px 16px rgba(31,125,210,.16);
    transition:filter .2s,box-shadow .2s;
}

.page__header-info .fdu-follow button i {
    color:#fff!important;
    font-size:12px;
}

.page__header-info .fdu-follow button:hover {
    filter:brightness(1.09);
    color:#fff!important;
    box-shadow:0 8px 20px rgba(31,125,210,.25);
}

.page__header-info .fdu-follow button[aria-pressed=true] {
    background:linear-gradient(
        180deg,
        #36c9c5,
        #159c9f 58%,
        #08767d
    );
}

.page__header-info .fdu-follow [role=status] {
    position:absolute;
    top:100%;
    right:0;
    width:220px;
    max-width:80vw;
    margin:0;
    padding:0;
    font-size:11px;
    text-align:right;
}

.page__header-info .fdu-follow [role=status]:not(:empty) {
    padding:7px 9px;
    border-radius:7px;
    background:var(--bg,#fff);
    box-shadow:0 5px 15px rgba(0,0,0,.12);
}

@media(max-width:600px) {
    .page__header-info .fdu-follow {
        top:-190px;
        width:calc(100vw - 190px);
    }
}


/* FD_FOLLOW_UPDATES_V21_WIB */
@media screen and (min-width: 761px) {
  .page__header-info .fdu-follow.fdu-rating-follow,
  .page__header-info .fdu-follow.fdu-follow-guest {
    top: var(--fdu-poster-offset, 0px);
  }

  .page__header-info .page__rating-score {
    top: calc(var(--fdu-poster-offset, 0px) + 40px);
  }

  .page__header-info .page__fav a {
    top: calc(var(--fdu-poster-offset, 0px) + 160px);
  }
}

.page__header-info .fdu-follow button[aria-pressed="true"] {
  background: #139b9b;
  border-color: #139b9b;
  color: #fff;
}


/* FD_FOLLOW_UPDATES_V22_UI — Premium unfollow confirmation */

.fdu-unfollow-overlay {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(9, 17, 32, .65);
  backdrop-filter: blur(5px);
}

.fdu-unfollow-modal {
  width: min(100%, 390px);
  padding: 30px;
  border-radius: 18px;
  background: var(--bg, #fff);
  color: var(--tt, #202938);
  box-shadow: 0 24px 80px rgba(0,0,0,.25);
  text-align: center;
}

.fdu-unfollow-icon {
  width: 58px;
  height: 58px;
  margin: 0 auto 18px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  background: rgba(230, 75, 90, .10);
  color: #e64b5a;
  font-size: 24px;
}

.fdu-unfollow-modal h3 {
  margin: 0 0 10px;
  font-size: 21px;
  font-weight: 750;
}

.fdu-unfollow-modal p {
  margin: 0 0 25px;
  font-size: 14px;
  line-height: 1.65;
  color: var(--tt-fade, #778295);
}

.fdu-unfollow-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.fdu-unfollow-actions button {
  height: 44px;
  border-radius: 10px;
  border: 0;
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
}

.fdu-unfollow-actions [data-choice="cancel"] {
  background: var(--bg-darker, #f0f2f5);
  color: var(--tt, #202938);
}

.fdu-unfollow-actions [data-choice="confirm"] {
  background: #e64b5a;
  color: #fff;
}

.fdu-unfollow-actions button:focus-visible {
  outline: 3px solid #278fd7;
  outline-offset: 3px;
}

@media (max-width: 480px) {
  .fdu-unfollow-modal {
    padding: 24px 20px;
  }
}


/* FD_FOLLOW_UPDATES_V23_GUEST */

/* Compact typography matching Add to Library */
.fdu-follow button,
.fdu-follow-guest button {
  font-size: 11px !important;
  font-weight: 600;
  letter-spacing: 0;
  white-space: nowrap;
}

/* Guest and member: same position above Reputation */
@media screen and (min-width: 761px) {
  .page__header-info .fdu-follow,
  .page__header-info .fdu-follow-guest {
    position: absolute !important;
    right: 0 !important;
    top: var(--fdu-poster-offset, 0px) !important;
    width: 120px !important;
    height: 40px !important;
    margin: 0 !important;
    z-index: 5;
  }
}

/* Ensure the button fills its container */
.page__header-info .fdu-follow button,
.page__header-info .fdu-follow-guest button {
  width: 100%;
  height: 100%;
}


/* FD_FOLLOW_UPDATES_V24_GUEST */
.page__header-info .fdu-follow button {
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
}

@media screen and (min-width: 761px) {
  .page__header-info .fdu-follow-guest.fdu-rating-follow {
    right: 0 !important;
    top: var(--fdu-poster-offset, 0px) !important;
    width: 120px !important;
  }
}


/* FD_FOLLOW_UPDATES_V26_FONT */
/* Match Add to Library typography */
.page__header-info .fdu-follow button,
.page__header-info .fdu-follow button span,
.page__header-info .fdu-follow-guest button,
.page__header-info .fdu-follow-guest button span {
    font-family: inherit !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}


/* FD_FOLLOW_UPDATES_V27_POSTER_ALIGN */
/* Align the complete right-side stack to the 180px poster */

@media screen and (min-width: 761px) {

  .page__header-info .fdu-follow.fdu-rating-follow,
  .page__header-info .fdu-follow.fdu-follow-guest {
    top: var(--fdu-poster-offset, 0px) !important;
    height: 36px !important;
    width: 120px !important;
  }

  .page__header-info .fdu-follow button {
    height: 36px !important;
  }

  .page__header-info .page__rating-score {
    top: calc(var(--fdu-poster-offset, 0px) + 36px) !important;
    height: 108px !important;
    width: 120px !important;
  }

  .page__header-info .page__fav a {
    top: calc(var(--fdu-poster-offset, 0px) + 144px) !important;
    height: 36px !important;
    width: 120px !important;
  }

}


/* FD_FOLLOW_UPDATES_V29_RATING_CIRCLE */
/* Move only the circular reputation indicator upward */
@media screen and (min-width: 761px) {
  .page__header-info .page__rating-score .rating-circle,
  .page__header-info .page__rating-score .circle {
    transform: translateY(-6px);
  }
}


/* FD_FOLLOW_UPDATES_V30_REPUTATION_VALUE */
/* Move only the green reputation circle and number upward */
@media screen and (min-width: 761px) {
  .page__header-info .page__rating-score .page__rating-score-value {
    transform: translateY(-6px) !important;
  }
}


/* FD_FOLLOW_UPDATES_V31_MOBILE */
/* Mobile layout only — desktop remains untouched */

@media screen and (max-width: 760px) {

  .page__header {
    grid-template-columns: 130px minmax(0, 1fr);
    grid-template-areas:
      "ptitle ptitle"
      "pleft pinfo"
      "pctrl pctrl";
    column-gap: 0;
    row-gap: 20px;
  }

  .page__header-left {
    grid-area: pleft;
    width: 130px;
    height: 130px;
    align-self: start;
  }

  .page__header-left .page__img {
    width: 130px;
    height: 130px;
    margin: 0;
  }

  .page__header-info {
    grid-area: pinfo;
    position: relative;
    min-width: 0;
    min-height: 130px;
    align-self: start;
  }

  /* Reserve poster-height space for the action stack */
  .page__header-info::before {
    content: "";
    display: block;
    height: 130px;
  }

  /* Article information begins below the poster */
  .page__header-info .page__list {
    position: relative;
    width: calc(100% + 130px);
    margin-left: -130px;
    margin-top: 20px;
  }

  .page__header-info .page__list li {
    padding-left: 130px;
    text-align: right;
  }

  /* Follow Updates — top */
  .page__header-info .fdu-follow,
  .page__header-info .fdu-follow.fdu-rating-follow,
  .page__header-info .fdu-follow.fdu-follow-guest {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 30px !important;
    margin: 0 !important;
    z-index: 5;
  }

  .page__header-info .fdu-follow button {
    width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 6px !important;
    font-size: 10px !important;
  }

  /* Reputation — middle */
  .page__header-info .page__rating-score {
    position: absolute !important;
    top: 30px !important;
    right: 0 !important;
    width: 100% !important;
    height: 70px !important;
    padding: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .page__header-info .page__rating-score-caption {
    display: none !important;
  }

  .page__header-info .page__rating-score-value {
    margin: 0 !important;
    transform: none !important;
    width: 50px;
    height: 50px;
    font-size: 21px;
  }

  /* Add to Library — bottom */
  .page__header-info .page__fav a {
    position: absolute !important;
    top: 100px !important;
    right: 0 !important;
    width: 100% !important;
    height: 30px !important;
    margin: 0 !important;
    padding: 0 5px !important;
    font-size: 10px !important;
  }

  .page__header-ctrl {
    grid-area: pctrl;
  }

}
