.arife-plan-modal{position:fixed;z-index:3000;inset:0;display:grid;place-items:center;padding:24px}.arife-plan-modal[hidden]{display:none!important}.arife-plan-backdrop{position:absolute;inset:0;border:0;background:rgba(3,6,11,.82);backdrop-filter:blur(16px) saturate(.75)}.arife-plan-dialog{position:relative;width:min(520px,100%);overflow:hidden;border:1px solid rgba(145,171,238,.3);border-radius:24px;background:radial-gradient(circle at 78% 0,rgba(107,128,235,.16),transparent 30%),linear-gradient(150deg,#192231,#090e16 72%);box-shadow:inset 0 1px rgba(255,255,255,.1),0 30px 90px rgba(0,0,0,.68);color:#f4f7ff}.arife-plan-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 21px;border-bottom:1px solid rgba(137,163,226,.14)}.arife-plan-dialog>header small{display:block;color:#88b8ff;font:800 11px/1 ui-monospace,Consolas,monospace;letter-spacing:.16em}.arife-plan-dialog>header h2{margin:7px 0 0;font-size:20px;letter-spacing:-.035em}.arife-plan-dialog>header>button{position:relative;width:37px;height:37px;flex:0 0 37px;border:1px solid rgba(137,165,231,.3);border-radius:10px;background:linear-gradient(145deg,#243148,#0d141f);cursor:pointer}.arife-plan-dialog>header>button span,.arife-plan-dialog>header>button span:after{position:absolute;left:50%;top:50%;width:14px;height:1.5px;border-radius:99px;background:#cad8ec;content:"";transform:translate(-50%,-50%) rotate(45deg)}.arife-plan-dialog>header>button span:after{transform:translate(-50%,-50%) rotate(90deg)}.arife-plan-dialog-body{padding:25px 22px 23px}.arife-plan-lock-visual{position:relative;width:76px;height:70px;display:grid;place-items:center;margin:0 auto 19px;border:1px solid rgba(132,164,244,.3);border-radius:22px;background:linear-gradient(145deg,#263653,#0e1624);box-shadow:inset 0 1px rgba(255,255,255,.1),0 14px 30px rgba(0,0,0,.3)}.arife-plan-lock-visual i{width:24px;height:19px;margin-top:10px;border:2px solid #a7c4ff;border-radius:6px}.arife-plan-lock-visual b{position:absolute;top:16px;width:21px;height:22px;border:2px solid #a7c4ff;border-bottom:0;border-radius:12px 12px 0 0}.arife-plan-dialog-body>p{max-width:400px;margin:0 auto;color:#a8b5c9;font-size:12px;line-height:1.7;text-align:center}.arife-plan-current{display:grid;grid-template-columns:auto 1fr auto auto 1fr;gap:8px;align-items:center;margin-top:20px;padding:13px;border:1px solid rgba(132,159,225,.18);border-radius:14px;background:rgba(8,13,21,.58)}.arife-plan-current span{color:#73839d;font-size:11px}.arife-plan-current strong{color:#dce8ff;font-size:12px}.arife-plan-current i{color:#a8dcff;font-style:normal}.arife-plan-dialog>footer{display:flex;gap:8px;padding:16px 20px 20px;border-top:1px solid rgba(137,163,226,.13)}.arife-plan-dialog>footer button,.arife-plan-dialog>footer a{min-height:44px;display:flex;align-items:center;justify-content:center;padding:0 15px;border:1px solid rgba(139,165,230,.24);border-radius:12px;background:linear-gradient(145deg,#202a3a,#0c121c);color:#b8c7dc;font-size:12px;font-weight:850;text-decoration:none;cursor:pointer}.arife-plan-dialog>footer a{flex:1;border-color:rgba(177,199,255,.55);background:linear-gradient(135deg,#638df1,#7768dc);color:#fff}.arife-plan-dialog>footer a span{width:25px;height:25px;display:grid;place-items:center;margin-left:9px;border-radius:8px;background:#3cc9e2;color:#142004;font-size:12px}.arife-plan-modal-open{overflow:hidden}.is-plan-locked{position:relative!important}.is-plan-locked:not(.film-control-section){filter:saturate(.55)}.is-plan-locked:after{content:"";position:absolute;z-index:5;inset:0;border:1px solid rgba(137,165,234,.18);border-radius:inherit;background:linear-gradient(135deg,rgba(10,15,24,.1),rgba(10,15,24,.48));pointer-events:none}.arife-plan-badge{position:absolute!important;z-index:7!important;right:7px!important;top:7px!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;margin:0!important;padding:5px 7px!important;border:1px solid rgba(160,184,243,.36)!important;border-radius:999px!important;background:rgba(8,13,21,.86)!important;box-shadow:0 5px 12px rgba(0,0,0,.22)!important;color:#a9c5ff!important;font:850 11px/1 ui-monospace,Consolas,monospace!important;letter-spacing:.08em!important;pointer-events:none!important}.film-control-section.is-plan-locked{opacity:.68}.film-control-section.is-plan-locked:before{content:"플랜 업그레이드";position:absolute;z-index:8;right:8px;top:8px;padding:5px 7px;border:1px solid rgba(151,177,239,.3);border-radius:999px;background:rgba(8,13,21,.88);color:#a9c5ff;font:800 11px/1 ui-monospace,Consolas,monospace}.film-control-section.is-plan-locked{position:relative}@media(max-width:560px){.arife-plan-dialog>footer{flex-direction:column}.arife-plan-dialog>footer>*{width:100%}.arife-plan-current{grid-template-columns:1fr auto 1fr}.arife-plan-current span{display:none}}


/* ============================================================
   플랜 안내 창 — 밝은 물방울 v1120

   위 규칙들은 어두운 판(#192231)으로 짜여 있는데, 이 창은 각 페이지 위에
   얹혀서 열린다. 페이지의 밝은 글자색 규칙이 어두운 판 위로 내려앉아
   제목("플랜 업그레이드가 필요합니다")과 플랜 이름(무료·프로)이
   거의 안 보였다(실측). 로그인 창과 같은 결로 맞춘다.

   겹친 시트를 확실히 이기려고 `:not(#nope):not(#_):not(#_)`(아이디 세 개 값)
   을 쓴다. 아이디를 실제로 쓰지 않으므로 아무 요소도 놓치지 않는다.
   ============================================================ */
html body:not(#nope):not(#_):not(#_) .arife-plan-backdrop{
  background:radial-gradient(120% 100% at 50% 34%,
    rgba(233,241,250,.96),rgba(201,216,236,.976) 68%,rgba(186,203,228,.984))!important;
  backdrop-filter:blur(18px) saturate(1.06)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.06)!important;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog{
  width:min(520px,100%);
  border:1px solid rgba(255,255,255,.85)!important;
  border-radius:26px!important;
  background:linear-gradient(160deg,#fbfdff,#e9f0fa 62%,#dee8f7)!important;
  box-shadow:
    inset 0 1.5px 1px -1px #fff,
    inset 0 0 0 1px rgba(163,197,240,.45),
    0 30px 62px -26px rgba(18,45,88,.5)!important;
  color:#16324f!important;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>header{
  padding:20px 22px!important;
  border-bottom:1px solid rgba(150,185,230,.4)!important;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>header h2{
  margin:0!important;color:#16324f!important;
  font-size:20px!important;font-weight:800;letter-spacing:-.035em;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>header small{color:#4d76ad!important}

/* 닫기 — 물방울 동그라미 */
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>header>button{
  width:38px!important;height:38px!important;flex:0 0 38px!important;
  border:0!important;border-radius:50%!important;
  background:radial-gradient(92% 58% at 50% 4%,#fff,rgba(255,255,255,.82) 40%,rgba(255,255,255,.68))!important;
  box-shadow:
    inset 0 1.5px 1px -1px #fff,
    inset 0 0 0 1px rgba(160,196,244,.6),
    0 10px 18px -12px rgba(20,40,80,.5)!important;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>header>button span,
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>header>button span:after{
  background:#244d8a!important;height:1.8px!important;
}

/* 자물쇠 그림 */
html body:not(#nope):not(#_):not(#_) .arife-plan-lock-visual{
  width:74px!important;height:70px!important;
  border:0!important;border-radius:22px!important;
  background:radial-gradient(94% 60% at 50% 2%,#fff,rgba(255,255,255,.84) 44%,rgba(240,246,255,.76))!important;
  box-shadow:
    inset 0 1.5px 1px -1px #fff,
    inset 0 0 0 1px rgba(160,196,244,.6),
    0 14px 24px -14px rgba(20,45,90,.55)!important;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-lock-visual i,
html body:not(#nope):not(#_):not(#_) .arife-plan-lock-visual b{border-color:#3f7fd6!important}

html body:not(#nope):not(#_):not(#_) .arife-plan-dialog-body>p{
  color:#4a6380!important;font-size:13px!important;line-height:1.7;
}

/* 현재 플랜 → 필요 플랜 */
html body:not(#nope):not(#_):not(#_) .arife-plan-current{
  margin-top:20px!important;padding:14px!important;
  border:0!important;border-radius:16px!important;
  background:rgba(255,255,255,.66)!important;
  box-shadow:inset 0 0 0 1px rgba(160,196,244,.55),inset 0 2px 5px rgba(30,60,110,.06)!important;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-current span{color:#6f89a6!important;font-size:11px!important}
html body:not(#nope):not(#_):not(#_) .arife-plan-current strong{color:#1d4b8c!important;font-size:13px!important;font-weight:800}
html body:not(#nope):not(#_):not(#_) .arife-plan-current i{color:#3f7fd6!important;font-style:normal}

/* 아래 단추 두 개 */
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>footer{
  gap:9px;padding:16px 20px 20px!important;
  border-top:1px solid rgba(150,185,230,.4)!important;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>footer button{
  min-height:46px!important;border:0!important;border-radius:16px!important;
  background:radial-gradient(96% 60% at 50% 2%,#fff,rgba(255,255,255,.86) 44%,rgba(246,250,255,.78))!important;
  box-shadow:
    inset 0 1.5px 1px -1px #fff,
    inset 0 0 0 1px rgba(160,196,244,.6),
    0 10px 18px -14px rgba(20,45,90,.55)!important;
  color:#1b3e6b!important;font-size:13px!important;font-weight:800;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>footer a{
  min-height:46px!important;flex:1;border:0!important;border-radius:16px!important;
  background:linear-gradient(180deg,#5b9bec,#2f6ec9)!important;
  box-shadow:inset 0 1.5px 1px -1px rgba(255,255,255,.8),0 14px 24px -14px rgba(30,80,160,.85)!important;
  color:#fff!important;font-size:13px!important;font-weight:800;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>footer a span{
  width:26px;height:26px;margin-left:9px;border-radius:9px;
  background:rgba(255,255,255,.24)!important;color:#fff!important;font-size:12px;
}

/* 잠긴 칸 표시도 밝은 결로 */
html body:not(#nope):not(#_):not(#_) .is-plan-locked:after{
  border:1px solid rgba(150,185,230,.5)!important;
  background:linear-gradient(135deg,rgba(230,240,252,.18),rgba(206,222,244,.42))!important;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-badge{
  border:0!important;
  background:rgba(255,255,255,.9)!important;
  box-shadow:inset 0 0 0 1px rgba(160,196,244,.7),0 6px 12px -8px rgba(20,45,90,.6)!important;
  color:#1d4b8c!important;
}
html body:not(#nope):not(#_):not(#_) .film-control-section.is-plan-locked:before{
  border:0!important;
  background:rgba(255,255,255,.9)!important;
  box-shadow:inset 0 0 0 1px rgba(160,196,244,.7)!important;
  color:#1d4b8c!important;
}

/* 판은 밝아졌는데 머리칸·본문칸이 각자 어두운 배경을 또 깔고 있었다
   (arife-unified-v400 의 `body :is(...) > header`, arife-glass-theme 의 유리판 규칙).
   판 하나로 보이게 둘 다 비운다. */
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>header,
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog-body,
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog>footer{
  background:transparent!important;background-color:transparent!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
}
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog{
  background-color:transparent!important;
  max-width:520px!important;
}
/* 유리판 규칙이 본문칸에 안쪽 그림자와 테두리를 또 얹어 층이 져 보였다 */
html body:not(#nope):not(#_):not(#_) .arife-plan-dialog-body{
  box-shadow:none!important;border:0!important;padding:26px 22px 24px!important;
}


/* ============================================================
   2026-08-27 — 「구독이 필요합니다」 창에서 아래 칸이 안 숨겨졌다.

   showUpgrade({paid:true}) 는 `row.hidden = true` 로 감춘다고 되어 있는데,
   위 규칙이 이 칸에 display:grid 를 걸어 둬서 브라우저 기본값
   ([hidden]{display:none}) 을 이겨 버렸다. 결과: 「지금 플랜 무료 → 필요 플랜 프로」가
   그대로 남아, 바로 위 문장(구독 중인 계정에서 쓸 수 있습니다)과 어긋났다(실측).
   ============================================================ */
html body:not(#nope):not(#_):not(#_) .arife-plan-current[hidden]{
  display:none!important;
}
