:root{
  --navy:#24365d;
  --muted:#7b8498;
  --violet:#7c5cf1;
  --violet-soft:#eee9ff;
  --search:#f7f5fc;
  --green:#24b86d;
  --line:#ececf3;
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif;color:var(--navy);background:#fff}
button,input{font:inherit}
button{border:0}

.nifHeader{
  width:100%;
  min-height:118px;
  height:auto;
  background:#fff;
  border-bottom:1px solid #f1f1f5;
}
.nifHeaderInner{
  width:min(1760px,calc(100% - 44px));
  height:118px;
  margin:0 auto;
  display:grid;
  grid-template-columns:auto minmax(690px,1fr) auto;
  align-items:center;
  column-gap:38px;
}
.nifBrand{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:inherit;
  white-space:nowrap;
}
.nifBrandLogo{
  width:190px;
  height:82px;
  object-fit:contain;
  object-position:left center;
  user-select:none;
  pointer-events:none;
}
.nifBrandTagline{
  display:none;
}

.nifPrimaryNav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-width:0;
}
.nifNavItem{
  height:54px;
  margin:0;
  padding:0 15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border-radius:17px;
  background:transparent;
  color:#26385d;
  font-size:15px;
  font-weight:800;
  letter-spacing:-.03em;
  cursor:pointer;
  white-space:nowrap;
  transition:background .16s ease,color .16s ease,transform .16s ease;
}
.nifNavItem:hover{background:#f8f7fc}
.nifNavItem:active{transform:translateY(1px)}
.nifNavItem.isActive{
  padding:0 21px;
  background:var(--violet-soft);
  color:#6646dc;
}
.nifNavIcon{
  width:21px;
  height:21px;
  display:inline-grid;
  place-items:center;
  flex:0 0 21px;
}
.nifNavIcon svg{width:21px;height:21px;fill:currentColor}
.nifNavIcon.projectIcon{color:var(--green)}

.nifHeaderTools{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:16px;
  min-width:430px;
}
.nifSearch{
  position:relative;
  width:310px;
  height:50px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:0 18px;
  border-radius:26px;
  background:var(--search);
  color:#8f96a8;
}
.nifSearch svg{width:21px;height:21px;flex:0 0 21px}
.nifSearch input{
  width:100%;
  padding:0;
  border:0;
  outline:0;
  background:transparent;
  color:#42506e;
  font-size:14px;
  font-weight:600;
}
.nifSearch input::placeholder{color:#969cad;opacity:1}
.nifIconButton{
  position:relative;
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#faf9fd;
  color:#283a60;
  cursor:pointer;
}
.nifIconButton svg{width:25px;height:25px}
.notificationDot{
  position:absolute;
  top:5px;
  right:7px;
  width:11px;
  height:11px;
  border-radius:50%;
  background:#ff4d7d;
  box-shadow:0 0 0 3px #fff;
}
.nifProfileButton{
  height:58px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:0;
  background:transparent;
  color:#283a60;
  cursor:pointer;
}
.nifAvatar{
  width:54px;
  height:54px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 38% 30%,rgba(255,255,255,.95) 0 13%,transparent 14%),
    linear-gradient(145deg,#ffd8ed 0%,#e8ddff 48%,#c9e8ff 100%);
  border:3px solid #f4effa;
  box-shadow:0 3px 10px rgba(86,77,122,.10);
}
.nifAvatar span{
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:50%;
  background:rgba(255,255,255,.68);
  color:#9b6cdb;
  font-size:18px;
  font-weight:900;
}
.profileChevron{width:20px;height:20px}

.nifRebuildCanvas{min-height:calc(100vh - 118px);background:#fff7fb url('./assets/hero-bg-clean.png') center bottom/cover no-repeat;overflow:hidden}

@media (max-width:1420px){
  .nifHeaderInner{width:calc(100% - 28px);column-gap:18px;grid-template-columns:auto minmax(590px,1fr) auto}
  .nifBrandTagline{display:none}
  .nifNavItem{padding:0 10px;font-size:14px;gap:7px}
  .nifNavItem.isActive{padding:0 15px}
  .nifHeaderTools{min-width:350px;gap:9px}
  .nifSearch{width:250px}
}
@media (max-width:1120px){
  .nifBrandLogo{width:158px;height:70px}
}
@media (max-width:1120px){
 .nifHeader{height:auto;min-height:96px}
  .nifHeaderInner{grid-template-columns:auto 1fr auto;padding:18px 0;row-gap:12px}
  .nifPrimaryNav{grid-column:1/-1;grid-row:2;justify-content:flex-start;overflow-x:auto;padding-bottom:2px}
  .nifHeaderTools{min-width:0}
  .nifSearch{display:none}
  .nifRebuildCanvas{min-height:calc(100vh - 156px)}
}
@media (max-width:620px){
  .nifHeaderInner{width:calc(100% - 24px)}
  .nifBrandLogo{width:90px;height:41px}
  .nifHeaderTools{gap:6px}
  .nifIconButton{width:44px;height:44px}
  .nifAvatar{width:46px;height:46px}
  .nifNavItem{height:48px;border-radius:15px}
}


/* -------------------------------------------------
   STEP 2 · CENTRAL HERO ONLY
   기능 연결 전, 디자인만 구성한 새 메인 중앙부
-------------------------------------------------- */
.nifHero{
  position:relative;
  width:100%;
  min-height:620px;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 22% 26%,rgba(255,255,255,.98) 0 8%,rgba(255,247,244,.90) 26%,transparent 43%),
    linear-gradient(110deg,#ffdce8 0%,#f8e9ee 22%,#dfe8ff 56%,#8ec7ff 100%);
}
.nifHeroScene{position:absolute;inset:0;z-index:-2;overflow:hidden;pointer-events:none}
.nifHeroScene::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 52% 36%,rgba(255,255,255,.55),transparent 22%),
    radial-gradient(circle at 80% 30%,rgba(251,219,255,.44),transparent 25%),
    linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,239,245,.18) 62%,rgba(254,205,226,.52));
}
.nifHeroSun{
  position:absolute;
  left:53%;
  top:45%;
  width:210px;
  height:210px;
  border-radius:50%;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle,#fffef1 0 16%,#ffe9bd 34%,rgba(255,215,172,.40) 56%,rgba(255,255,255,0) 72%);
  filter:blur(.2px);
  box-shadow:0 0 90px rgba(255,234,196,.72);
}
.nifHeroPlanet{
  position:absolute;
  right:5%;
  top:10%;
  width:min(42vw,560px);
  aspect-ratio:1;
  border-radius:50%;
  opacity:.83;
  background:
    radial-gradient(circle at 36% 28%,rgba(255,255,255,.88) 0 6%,rgba(255,255,255,.12) 7% 18%,transparent 19%),
    radial-gradient(circle at 72% 62%,rgba(255,192,232,.32),transparent 34%),
    linear-gradient(145deg,#d8d9ff 0%,#b9c8ff 34%,#dfb7ef 64%,#f5d5ef 100%);
  box-shadow:
    inset -60px -80px 110px rgba(110,120,209,.18),
    inset 40px 20px 70px rgba(255,255,255,.55),
    0 0 34px rgba(255,206,238,.62),
    0 0 105px rgba(255,207,234,.42);
}
.nifHeroPlanet::after{
  content:"";
  position:absolute;
  inset:-12px;
  border-radius:50%;
  border:2px solid rgba(255,229,243,.75);
  box-shadow:0 0 28px rgba(255,198,232,.9);
}
.nifMountain{
  position:absolute;
  left:-4%;
  width:108%;
  clip-path:polygon(0 100%,0 67%,7% 54%,14% 68%,21% 45%,29% 67%,38% 51%,45% 69%,54% 42%,62% 67%,71% 50%,80% 69%,90% 46%,100% 63%,100% 100%);
}
.nifMountainBack{
  bottom:128px;
  height:230px;
  background:linear-gradient(180deg,rgba(141,157,212,.23),rgba(101,125,187,.48));
  filter:blur(1px);
}
.nifMountainFront{
  bottom:78px;
  height:180px;
  background:linear-gradient(180deg,rgba(111,135,185,.48),rgba(61,101,146,.74));
  opacity:.65;
}
.nifHeroLake{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:190px;
  background:
    linear-gradient(180deg,rgba(216,229,249,.35),rgba(178,210,238,.53) 34%,rgba(246,198,220,.72)),
    repeating-linear-gradient(180deg,rgba(255,255,255,.34) 0 2px,transparent 2px 13px);
  box-shadow:inset 0 20px 30px rgba(255,255,255,.22);
}
.nifHeroLake::after{
  content:"";
  position:absolute;
  left:48%;
  top:-26px;
  width:250px;
  height:190px;
  background:radial-gradient(ellipse at top,rgba(255,246,205,.72),rgba(255,222,187,.22) 45%,transparent 72%);
  transform:translateX(-50%);
  filter:blur(5px);
}
.nifPetal{position:absolute;width:18px;height:10px;border-radius:90% 15% 90% 15%;background:linear-gradient(135deg,#ffd9ea,#ff9fc8);box-shadow:0 4px 10px rgba(240,118,166,.2);opacity:.8}
.petal1{left:11%;top:22%;transform:rotate(28deg)}
.petal2{left:42%;top:15%;transform:rotate(-25deg) scale(.8)}
.petal3{right:12%;top:16%;transform:rotate(48deg) scale(1.15)}
.petal4{right:20%;bottom:19%;transform:rotate(12deg) scale(.72)}

.nifHeroInner{
  width:min(1280px,calc(100% - 72px));
  min-height:620px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.58fr);
  align-items:center;
  gap:70px;
  padding:68px 0 84px;
}
.nifHeroCopy{padding-left:18px}
.nifHeroKicker{display:flex;align-items:center;gap:13px;margin-bottom:24px;font-size:13px;letter-spacing:.24em;color:#536385}
.nifHeroKicker strong{font-size:13px;color:#24365d;letter-spacing:.06em}
.nifHeroKicker span{width:1px;height:15px;background:#9aa4ba}
.nifHeroKicker em{font-style:normal;font-weight:700}
.nifHeroCopy h1{margin:0;font-size:64px;line-height:1.12;letter-spacing:-.065em;color:#172d55;font-weight:900;text-wrap:balance}
.nifHeroCopy h1 b{color:#f43d78;font-weight:900}
.nifHeroCopy p{margin:24px 0 0;font-size:20px;line-height:1.68;letter-spacing:-.035em;color:#344b73;font-weight:600}
.nifHeroActions{display:flex;align-items:center;gap:16px;margin-top:34px}
.nifHeroButton{height:66px;margin:0;padding:0 29px;border-radius:33px;display:inline-flex;align-items:center;justify-content:center;gap:13px;font-size:18px;font-weight:850;letter-spacing:-.035em;cursor:pointer;box-shadow:0 10px 25px rgba(48,50,104,.13)}
.nifHeroButton span:first-child{font-size:28px;line-height:1}
.nifHeroButton span:last-child{font-size:25px;line-height:1}
.nifHeroButtonLove{min-width:300px;background:linear-gradient(135deg,#ff3e76,#f12666);color:#fff}
.nifHeroButtonDiscovery{min-width:260px;background:rgba(255,255,255,.90);color:#5c3ed8;border:1px solid rgba(118,91,220,.18);backdrop-filter:blur(8px)}

.nifDailyQuote{position:relative;justify-self:end;width:min(100%,365px);padding:54px 32px 34px;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.60),rgba(255,238,247,.50));border:1px solid rgba(255,255,255,.68);box-shadow:0 24px 50px rgba(76,73,132,.13);backdrop-filter:blur(15px);text-align:center}
.nifDailyQuoteBadge{position:absolute;left:50%;top:-27px;transform:translateX(-50%);height:56px;padding:0 24px;border-radius:28px;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;gap:10px;color:#6551ca;font-size:16px;font-weight:900;white-space:nowrap;box-shadow:0 8px 22px rgba(69,65,112,.10)}
.nifDailyQuote blockquote{margin:0;color:#152a50;font-size:24px;line-height:1.55;font-weight:900;letter-spacing:-.04em}
.nifDailyQuote blockquote::before{content:'“';margin-right:8px;color:#20365e;font-size:33px;vertical-align:-4px}
.nifDailyQuote blockquote::after{content:'”';margin-left:6px;color:#20365e;font-size:33px;vertical-align:-4px}
.nifDailyQuote p{margin:20px 0 0;color:#526384;font-size:16px;font-weight:650}

@media (max-width:1120px){
  .nifHeroInner{width:calc(100% - 40px);grid-template-columns:1fr;gap:60px;padding:58px 0 84px}
  .nifHeroCopy{padding:0}
  .nifHeroCopy h1{font-size:54px}
  .nifDailyQuote{justify-self:start;margin-left:12px}
  .nifHeroPlanet{right:-5%;width:520px;opacity:.62}
}
@media (max-width:720px){
  .nifHero{min-height:auto}
  .nifHeroInner{min-height:0;width:calc(100% - 28px);padding:44px 0 60px;gap:52px}
  .nifHeroCopy h1{font-size:42px}
  .nifHeroCopy p{font-size:17px}
  .desktopBreak{display:none}
  .nifHeroActions{flex-direction:column;align-items:stretch}
  .nifHeroButton,.nifHeroButtonLove,.nifHeroButtonDiscovery{width:100%;min-width:0}
  .nifDailyQuote{width:100%;margin:0;padding:48px 22px 28px}
  .nifDailyQuote blockquote{font-size:21px}
  .nifHeroPlanet{width:410px;right:-26%;top:9%;opacity:.46}
  .nifMountainBack{bottom:110px}.nifMountainFront{bottom:72px}.nifHeroLake{height:160px}
}


/* STEP 2.1 · 상단 더보기 메뉴 */


.nifMoreWrap{position:relative;display:flex;align-items:center}
.nifMoreButton{
  width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;
  border:0;border-radius:14px;background:#efe9ff;color:#7457e8;cursor:pointer;
  box-shadow:0 10px 20px rgba(110,92,190,.12);
  transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.nifMoreButton:hover,.nifMoreButton[aria-expanded="true"]{background:#e6ddff;color:#6242dd}
.nifMoreButton:active{transform:translateY(1px)}
.nifMoreDots{display:flex;align-items:center;justify-content:center;gap:4px}
.nifMoreDots i{width:5px;height:5px;border-radius:50%;background:currentColor}
.nifMoreMenuBar{
  border-top:1px solid #f0edf6;
  border-bottom:1px solid #f1eef7;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(12px);
}
.nifMoreMenuBarInner{
  width:min(1760px,calc(100% - 44px));
  margin:0 auto;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding:14px 0 16px;
  --more-menu-start: 0px;
}
.nifMoreMenuLinks{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  width:max-content;
  max-width:100%;
  margin-left:var(--more-menu-start);
}
.nifMoreMenuBarInner::-webkit-scrollbar{display:none}
.nifMoreMenuBarInner button{
  min-height:52px;
  padding:0 24px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #ebe7f5;
  border-radius:999px;
  background:#fff;
  color:#314261;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(52,60,96,.06);
  white-space:nowrap;
  transition:transform .16s ease, background .16s ease, box-shadow .16s ease;
}
.nifMoreMenuBarInner button:hover{background:#faf7ff;transform:translateY(-1px);box-shadow:0 10px 22px rgba(82,74,130,.09)}
.nifMoreMenuBarInner button strong{font-size:18px;letter-spacing:-.03em;font-weight:800;line-height:1}
@media (max-width:1120px){
  .nifMoreMenuBarInner{width:calc(100% - 24px);padding:10px 0 12px;justify-content:flex-start;overflow-x:auto;scrollbar-width:none;--more-menu-start:0px !important}
  .nifMoreMenuLinks{margin-left:0;gap:10px}
  .nifMoreMenuBarInner button{min-height:46px;padding:0 18px}
  .nifMoreMenuBarInner button strong{font-size:16px}
}

/* v5: pure-CSS more-menu toggle, no JS required */
.nifMoreToggleInput{
  position:fixed;
  inline-size:1px;
  block-size:1px;
  opacity:0;
  pointer-events:none;
}
.nifMoreMenuBar{display:none}
.nifMoreToggleInput:checked + .nifHeader .nifMoreMenuBar{display:block}
.nifMoreToggleInput:checked + .nifHeader .nifMoreButton{
  background:#e6ddff;
  color:#6242dd;
}
.nifMoreButton{user-select:none;-webkit-user-select:none}


/* -------------------------------------------------
   V7 · clean image background + real hero elements
   Background only is an image. Text/buttons/quote are real web elements.
-------------------------------------------------- */
.heroV7{
  position:relative;
  width:100%;
  min-height:max(760px,calc(100vh - 118px));
  overflow:hidden;
  isolation:isolate;
  background-image:
    linear-gradient(90deg, rgba(255,252,250,.24) 0%, rgba(255,252,250,.09) 42%, rgba(255,255,255,.02) 70%),
    url('./assets/hero-bg-clean.png');
  background-size:cover;
  background-position:center bottom;
  background-repeat:no-repeat;
}
.heroV7::before{
  content:'';
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,241,248,.06) 68%,rgba(255,232,241,.10));
  pointer-events:none;
}
.heroV7Overlay{
  width:min(1500px,calc(100% - 48px));
  min-height:max(760px,calc(100vh - 118px));
  margin:0 auto;
  padding:82px 0 196px;
  display:grid;
  grid-template-columns:minmax(0,1.12fr) minmax(360px,.60fr);
  gap:96px;
  align-items:center;
}
.heroV7Copy{
  max-width:760px;
  padding:28px 34px 32px;
  border-radius:34px;
  background:linear-gradient(90deg,rgba(255,255,255,.84),rgba(255,255,255,.58) 60%,rgba(255,255,255,.18));
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}
.heroV7Kicker{display:flex;align-items:center;gap:13px;margin-bottom:22px;color:#536385;font-size:13px;letter-spacing:.22em}
.heroV7Kicker strong{color:#152f59;font-weight:950;letter-spacing:.03em}
.heroV7Kicker span{width:1px;height:15px;background:#9aa4ba}
.heroV7Kicker em{font-style:normal;font-weight:750}
.heroV7Copy h1{margin:0;color:#31456a;font-family:"Noto Serif KR","Nanum Myeongjo","AppleMyungjo","Batang",serif;font-size:clamp(42px,4.35vw,66px);line-height:1.24;letter-spacing:-.025em;font-weight:500;text-shadow:0 1px 7px rgba(255,255,255,.20)}
.heroV7Copy h1 b{color:#ef4779;font-family:inherit;font-weight:600}
.heroV7Copy>p:not(.heroV7Feedback){margin:22px 0 0;color:#445773;font-family:"Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(17px,1.35vw,21px);line-height:1.72;font-weight:400;letter-spacing:-.02em}
.heroV7Actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:32px}
.heroV7Button{
  font-family:"Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  min-height:68px;
  padding:0 28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  border:0;
  border-radius:999px;
  font-size:18px;
  cursor:pointer;
  box-shadow:0 16px 34px rgba(38,51,92,.15);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.heroV7Button:hover{transform:translateY(-2px);box-shadow:0 17px 34px rgba(38,51,92,.18)}
.heroV7Button:active{transform:translateY(0)}
.heroV7Button span{font-size:27px;line-height:1}
.heroV7Button strong{font-family:"Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:18px;font-weight:800;letter-spacing:-.025em}
.heroV7Love{min-width:328px;background:linear-gradient(135deg,#ff477d,#ee2264);color:#fff}
.heroV7Discovery{min-width:292px;background:rgba(255,255,255,.94);color:#563de0;border:1px solid rgba(96,67,220,.18)}
.heroV7Feedback{min-height:22px!important;margin:12px 0 0!important;color:#51617f!important;font-size:13px!important;line-height:1.5!important;font-weight:750!important}
.heroV7Quote{
  position:relative;
  justify-self:end;
  width:min(100%,440px);
  padding:72px 42px 40px;
  border-radius:34px;
  background:linear-gradient(145deg,rgba(255,255,255,.76),rgba(255,236,247,.58));
  border:1px solid rgba(255,255,255,.82);
  box-shadow:0 28px 65px rgba(73,71,132,.18);
  backdrop-filter:blur(15px);
  -webkit-backdrop-filter:blur(15px);
  text-align:center;
}
.heroV7QuoteBadge{
  position:absolute;
  top:-28px;
  left:50%;
  transform:translateX(-50%);
  min-height:56px;
  padding:0 24px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border-radius:999px;
  background:rgba(255,255,255,.95);
  color:#634bd4;
  box-shadow:0 10px 26px rgba(66,63,116,.12);
  white-space:nowrap;
}
.heroV7QuoteBadge span{font-size:20px}
.heroV7QuoteBadge strong{font-size:16px;font-weight:900}
.heroV7Clock{
  position:absolute;
  top:18px;
  right:22px;
  width:64px;
  height:64px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.9);
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(244,238,255,.72));
  box-shadow:0 9px 22px rgba(64,62,112,.13),inset 0 0 0 1px rgba(98,75,212,.06);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.clockMark{position:absolute;left:50%;top:50%;width:2px;height:5px;margin-left:-1px;margin-top:-2.5px;border-radius:2px;background:#7a67d7;opacity:.62;transform-origin:1px 2.5px}
.clockMark12{transform:translateY(-25px)}
.clockMark3{transform:translateX(25px) rotate(90deg)}
.clockMark6{transform:translateY(25px)}
.clockMark9{transform:translateX(-25px) rotate(90deg)}
.clockHand{position:absolute;left:50%;bottom:50%;border-radius:999px;transform-origin:50% 100%;transform:translateX(-50%) rotate(0deg);will-change:transform}
.clockHour{width:3px;height:16px;background:#253c66}
.clockMinute{width:2px;height:22px;background:#5b4ac2}
.clockSecond{width:1px;height:24px;background:#ed5d91}
.clockCenter{position:absolute;left:50%;top:50%;width:7px;height:7px;transform:translate(-50%,-50%);border-radius:50%;background:#5f4cc9;box-shadow:0 0 0 2px rgba(255,255,255,.82)}
.heroV7Quote blockquote{margin:0;color:#142e59;font-size:clamp(22px,2.1vw,30px);line-height:1.65;font-weight:900;letter-spacing:-.04em}
.heroV7QuoteDate{display:inline-flex;align-items:center;justify-content:center;min-height:38px;margin:18px auto 0;padding:8px 16px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(111,97,184,.10);box-shadow:0 8px 22px rgba(68,65,118,.08);color:#6a5ca9;font-size:13px;line-height:1.35;font-weight:800;letter-spacing:-.01em}
.heroV7Quote p{margin:14px 0 0;color:#576b8c;font-size:16px;line-height:1.6;font-weight:700}

/* V11 · hero summary bar */
.heroSummaryBar{
  position:absolute;
  left:50%;
  bottom:34px;
  transform:translateX(-50%);
  width:min(1500px,calc(100% - 48px));
  min-height:106px;
  padding:16px 20px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  border:1px solid rgba(255,255,255,.82);
  border-radius:28px;
  background:linear-gradient(120deg,rgba(255,255,255,.88),rgba(251,246,255,.78));
  box-shadow:0 22px 58px rgba(70,63,120,.16);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  overflow:hidden;
}
.heroSummaryItem{
  position:relative;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  padding:12px 16px;
}
.heroSummaryItem:not(:last-child)::after{
  content:'';
  position:absolute;
  top:18%;
  right:0;
  width:1px;
  height:64%;
  background:linear-gradient(180deg,transparent,rgba(110,105,150,.18),transparent);
}
.heroSummaryIcon{
  flex:0 0 auto;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:15px;
  font-size:24px;
  font-weight:800;
  background:rgba(255,255,255,.82);
  box-shadow:0 8px 20px rgba(60,59,102,.09);
}
.heroSummaryItem>div{min-width:0;display:flex;flex-direction:column;gap:3px}
.heroSummaryItem strong{
  color:#243a62;
  font-family:"Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(20px,1.8vw,28px);
  line-height:1.05;
  font-weight:900;
  letter-spacing:-.035em;
}
.heroSummaryItem small{
  color:#66738d;
  font-family:"Noto Sans KR",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:13.5px;
  line-height:1.35;
  font-weight:750;
  white-space:nowrap;
}
.heroSummaryItem.love .heroSummaryIcon{color:#ee3d72;background:#fff0f5}
.heroSummaryItem.discovery .heroSummaryIcon{color:#6556dd;background:#f0efff}
.heroSummaryItem.art .heroSummaryIcon{color:#d76c9d;background:#fff1f8}
@media(max-width:1120px){
  .heroV7{min-height:900px}
  .heroV7Overlay{width:min(100% - 32px,1120px);min-height:900px;grid-template-columns:1fr;gap:60px;padding:62px 0 206px}
  .heroSummaryBar{width:min(100% - 32px,1120px);grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 10px}
  .heroSummaryItem{gap:9px;padding:10px 7px}
  .heroSummaryIcon{width:38px;height:38px;border-radius:13px;font-size:20px}
  .heroSummaryItem small{font-size:11px}
  .heroV7Copy{max-width:760px}
  .heroV7Quote{justify-self:start;margin-left:30px}
}
@media(max-width:680px){
  .heroV7{background-position:62% center;min-height:auto}
  .heroV7Overlay{width:calc(100% - 20px);min-height:0;padding:42px 0 282px}
  .heroSummaryBar{bottom:18px;width:calc(100% - 24px);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:8px;border-radius:22px}
  .heroSummaryItem{justify-content:flex-start;padding:10px 10px}
  .heroSummaryItem:not(:last-child)::after{display:none}
  .heroSummaryIcon{width:38px;height:38px}
  .heroSummaryItem strong{font-size:20px}
  .heroSummaryItem small{font-size:11px}
  .heroV7Copy{padding:22px 20px;border-radius:24px;background:rgba(255,255,255,.78)}
  .heroV7Copy h1{margin:0;color:#31456a;font-family:"Noto Serif KR","Nanum Myeongjo","AppleMyungjo","Batang",serif;font-size:clamp(34px,9vw,48px);line-height:1.24;letter-spacing:-.025em;font-weight:500;text-shadow:0 1px 7px rgba(255,255,255,.20)}
  .desktopBreak{display:none}
  .heroV7Actions{display:grid;grid-template-columns:1fr}
  .heroV7Button,.heroV7Love,.heroV7Discovery{width:100%;min-width:0}
  .heroV7Quote{width:100%;margin:22px 0 0;padding:60px 24px 28px;border-radius:26px}
  .heroV7QuoteDate{min-height:34px;padding:7px 14px;font-size:12px}
  .heroV7Clock{top:14px;right:16px;width:56px;height:56px}
  .clockMark12{transform:translateY(-21px)}
  .clockMark3{transform:translateX(21px) rotate(90deg)}
  .clockMark6{transform:translateY(21px)}
  .clockMark9{transform:translateX(-21px) rotate(90deg)}
  .clockHour{height:14px}.clockMinute{height:19px}.clockSecond{height:21px}
}


/* v38 · global notification center */
.notificationButton.isOpen{
  background:#f2edff;
  color:#7254d5;
}
.notificationDot[hidden]{display:none}
.nifNotificationPanel{
  position:absolute;
  top:66px;
  right:68px;
  z-index:120;
  width:min(390px,calc(100vw - 28px));
  max-height:min(560px,calc(100vh - 130px));
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #e9e3f4;
  border-radius:22px;
  background:rgba(255,255,255,.97);
  box-shadow:0 22px 60px rgba(41,43,75,.18);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.nifNotificationPanel[hidden]{display:none}
.nifNotificationHeader{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:17px 18px 14px;
  border-bottom:1px solid #f0edf5;
}
.nifNotificationHeader h2{
  margin:0;
  color:#26395f;
  font-size:17px;
  letter-spacing:-.035em;
}
.nifNotificationHeader button{
  border:0;
  background:transparent;
  color:#785cd1;
  font-size:11px;
  font-weight:850;
  cursor:pointer;
}
.nifNotificationList{
  overflow:auto;
  padding:8px;
}
.nifNotificationItem{
  width:100%;
  display:grid;
  grid-template-columns:42px 1fr auto;
  gap:11px;
  align-items:start;
  padding:12px;
  border:0;
  border-radius:16px;
  background:transparent;
  text-align:left;
  cursor:pointer;
  transition:background .16s ease,transform .16s ease;
}
.nifNotificationItem:hover{background:#f8f5ff}
.nifNotificationItem.isUnread{background:#f6f1ff}
.nifNotificationItem.isUnread:hover{background:#f1ebff}
.nifNotificationIcon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  font-size:18px;
  font-weight:900;
}
.nifNotificationIcon.record{background:#ffedf5;color:#d6508d}
.nifNotificationIcon.feeling{background:#eee9ff;color:#7257d2}
.nifNotificationBody strong{
  display:block;
  color:#304160;
  font-size:12px;
  line-height:1.45;
  letter-spacing:-.02em;
}
.nifNotificationBody p{
  margin:4px 0 0;
  color:#818ba0;
  font-size:10px;
  line-height:1.5;
  font-weight:650;
}
.nifNotificationMeta{
  display:flex;
  align-items:center;
  gap:6px;
  margin-top:5px;
  color:#9aa1b2;
  font-size:9px;
  font-weight:700;
}
.nifNotificationUnreadMark{
  width:8px;
  height:8px;
  margin-top:5px;
  border-radius:50%;
  background:#ff4d7d;
}
.nifNotificationEmpty{
  padding:46px 18px 50px;
  text-align:center;
  color:#8b93a6;
}
.nifNotificationEmpty span{
  display:block;
  margin-bottom:8px;
  color:#ad96e7;
  font-size:29px;
}
.nifNotificationEmpty strong{
  display:block;
  color:#4e5b75;
  font-size:14px;
}
.nifNotificationEmpty p{
  margin:6px 0 0;
  font-size:10px;
  line-height:1.5;
}
.nifNotificationFooter{
  padding:11px 12px 12px;
  border-top:1px solid #f0edf5;
}
.nifNotificationFooter button{
  width:100%;
  height:40px;
  border:0;
  border-radius:13px;
  background:#f2edff;
  color:#6b4dc9;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
}
@media(max-width:620px){
  .nifNotificationPanel{
    position:fixed;
    top:74px;
    right:12px;
    left:12px;
    width:auto;
    max-height:calc(100vh - 92px);
  }
}


/* v39 · global search */
.nifSearch.isSearchOpen{
  background:#f4f0ff;
  box-shadow:0 0 0 2px rgba(122,91,210,.10);
}
.nifGlobalSearchPanel{
  position:absolute;
  top:58px;
  right:0;
  z-index:125;
  width:min(430px,calc(100vw - 28px));
  max-height:min(520px,calc(100vh - 135px));
  overflow:auto;
  padding:8px;
  border:1px solid #e9e3f4;
  border-radius:20px;
  background:rgba(255,255,255,.98);
  box-shadow:0 22px 60px rgba(41,43,75,.18);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.nifGlobalSearchPanel[hidden]{display:none}
.nifSearchSectionLabel{
  padding:8px 10px 5px;
  color:#8d95a7;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
}
.nifSearchResult{
  width:100%;
  display:grid;
  grid-template-columns:42px 1fr auto;
  gap:11px;
  align-items:center;
  padding:11px;
  border:0;
  border-radius:15px;
  background:transparent;
  text-align:left;
  cursor:pointer;
  transition:background .14s ease,transform .14s ease;
}
.nifSearchResult:hover,.nifSearchResult.isKeyboardActive{background:#f7f3ff}
.nifSearchResultIcon{
  width:42px;height:42px;border-radius:14px;
  display:grid;place-items:center;
  font-size:15px;font-weight:900;
  color:#6b52cf;background:linear-gradient(145deg,#eee8ff,#f8edff);
}
.nifSearchResultIcon.art{color:#bd568b;background:linear-gradient(145deg,#ffe9f3,#f3ecff)}
.nifSearchResultMain strong{
  display:block;
  color:#304160;
  font-size:12px;
  line-height:1.35;
  letter-spacing:-.02em;
}
.nifSearchResultMain p{
  margin:4px 0 0;
  color:#8991a4;
  font-size:10px;
  line-height:1.4;
  font-weight:650;
}
.nifSearchResultMeta{
  color:#7458cf;
  font-size:9px;
  font-weight:850;
  white-space:nowrap;
}
.nifSearchEmpty{
  padding:35px 18px 38px;
  text-align:center;
  color:#8b93a4;
}
.nifSearchEmpty span{display:block;margin-bottom:6px;color:#ad96e6;font-size:27px}
.nifSearchEmpty strong{display:block;color:#526079;font-size:13px}
.nifSearchEmpty p{margin:6px 0 0;font-size:10px;line-height:1.5}
.nifSearchHint{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 10px 5px;
  color:#9aa1b1;
  font-size:9px;
  font-weight:700;
}
.nifSearchExactBadge{
  padding:4px 7px;border-radius:999px;
  background:#eee8ff;color:#7356ce;
  font-size:8px;font-weight:900
}
.personalCard.isSearchTarget{
  animation:nifSearchTargetPulse 1.4s ease 2;
  box-shadow:0 0 0 3px rgba(127,93,218,.26),0 16px 36px rgba(64,54,115,.16)!important;
}
.artRecordCard.isSearchTarget{
  animation:nifSearchTargetPulse 1.4s ease 2;
  box-shadow:0 0 0 3px rgba(203,91,147,.24),0 16px 36px rgba(64,54,115,.16)!important;
}
@keyframes nifSearchTargetPulse{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-3px)}
}
@media(max-width:1120px){
  .nifGlobalSearchPanel{display:none}
}


/* v45 · profile picture in header */
.nifAvatar{
  position:relative;
  overflow:hidden;
}
.nifHeaderAvatarImage{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center;
  border-radius:50%;
}
.nifAvatar.hasProfileImage{
  background:#eee9f8;
  border-color:#f0e9ff;
  box-shadow:0 4px 14px rgba(104,78,177,.18);
}
.nifAvatar.hasProfileImage span{
  display:none!important;
}






/* -------------------------------------------------
   v79 · 카드 전부 제거 + 배경 우선 메인
   - 왼쪽 반투명 카드 제거
   - 오늘의 한마디 카드 제거
   - 하단 3개 요약 카드 제거
-------------------------------------------------- */
.heroV7{
  min-height:calc(100vh - 86px);
  background-image:
    linear-gradient(90deg,rgba(255,252,250,.10) 0%,rgba(255,252,250,.03) 44%,rgba(255,255,255,0) 72%),
    url('./assets/hero-bg-clean.png');
  background-size:cover;
  background-position:center bottom;
  background-repeat:no-repeat;
}
.heroV7::before{
  background:
    linear-gradient(90deg,rgba(255,248,246,.10) 0%,rgba(255,255,255,0) 48%),
    linear-gradient(180deg,rgba(255,255,255,.01),rgba(255,235,245,.05));
}
.heroV7Overlay{
  width:min(1500px,calc(100% - 64px));
  min-height:calc(100vh - 86px);
  margin:0 auto;
  padding:clamp(72px,9vh,120px) 0 clamp(64px,8vh,110px);
  display:flex;
  align-items:center;
  justify-content:flex-start;
}
.heroV7Copy{
  width:min(760px,58vw);
  max-width:none;
  padding:0;
  border-radius:0;
  background:transparent;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  box-shadow:none;
}
.heroV7Kicker{
  text-shadow:0 2px 16px rgba(255,255,255,.88);
}
.heroV7Copy h1{
  text-shadow:
    0 2px 3px rgba(255,255,255,.72),
    0 9px 30px rgba(255,255,255,.56);
}
.heroV7Copy>p:not(.heroV7Feedback){
  color:#3f5271;
  text-shadow:0 2px 13px rgba(255,255,255,.88);
}
.heroV7Actions{
  margin-top:32px;
}
.heroV7Button{
  box-shadow:0 12px 28px rgba(37,46,85,.13);
}
.heroV7Quote,
.heroSummaryBar{
  display:none!important;
}

@media(max-width:1120px){
  .heroV7{
    min-height:calc(100vh - 82px);
    background-position:58% bottom;
  }
  .heroV7Overlay{
    width:min(100% - 42px,1120px);
    min-height:calc(100vh - 82px);
    padding:72px 0 84px;
    display:flex;
  }
  .heroV7Copy{
    width:min(720px,72vw);
    max-width:none;
    padding:0;
    background:transparent;
  }
}
@media(max-width:680px){
  .heroV7{
    min-height:calc(100vh - 72px);
    background-position:62% center;
  }
  .heroV7Overlay{
    width:calc(100% - 32px);
    min-height:calc(100vh - 72px);
    padding:54px 0 72px;
    display:flex;
    align-items:flex-start;
  }
  .heroV7Copy{
    width:100%;
    padding:0;
    border-radius:0;
    background:transparent;
  }
  .heroV7Copy h1{
    font-size:clamp(38px,11vw,54px);
    line-height:1.2;
  }
  .heroV7Copy>p:not(.heroV7Feedback){
    font-size:16px;
    max-width:92%;
  }
  .heroV7Actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
    max-width:420px;
  }
  .heroV7Button,.heroV7Love,.heroV7Discovery{
    width:100%;
    min-width:0;
  }
}


/* -------------------------------------------------
   v80 · 첫 화면 아래 흰 배경 카드 섹션
-------------------------------------------------- */
.nifHomeCardsStage{
  position:relative;
  margin-top:-28px;
  padding:0 0 88px;
  background:#f8f8fc;
  border-top-left-radius:34px;
  border-top-right-radius:34px;
  box-shadow:0 -10px 30px rgba(255,255,255,.55);
}
.nifHomeSectionInner{
  width:min(1360px,calc(100% - 64px));
  margin:0 auto;
  padding-top:34px;
}
.nifQuickCardsGrid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.nifQuickCard{
  display:flex;
  gap:16px;
  align-items:flex-start;
  min-height:150px;
  padding:24px 22px;
  border-radius:24px;
  border:1px solid rgba(103,117,157,.08);
  background:#fff;
  box-shadow:0 14px 34px rgba(65,62,101,.06);
}
.nifQuickCardIcon{
  width:56px;height:56px;flex:0 0 56px;
  display:grid;place-items:center;
  border-radius:18px;
  font-size:24px;font-weight:900;
  color:#f0547f;
  background:linear-gradient(135deg,#fff6fa,#fff);
  box-shadow:0 8px 18px rgba(235,70,120,.10);
}
.nifQuickCard.isDiscovery .nifQuickCardIcon{color:#7355ff;background:linear-gradient(135deg,#f4f1ff,#fff)}
.nifQuickCard.isProject .nifQuickCardIcon{color:#3ca25d;background:linear-gradient(135deg,#f2fff6,#fff)}
.nifQuickCard.isArt .nifQuickCardIcon{color:#ea9229;background:linear-gradient(135deg,#fff8f0,#fff)}
.nifQuickCardBody{flex:1;min-width:0}
.nifQuickCardTop{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.nifQuickCardTop h3{margin:2px 0 0;color:#1f3562;font-size:18px;line-height:1.25;font-weight:850;letter-spacing:-.03em}
.nifMiniArrow{
  border:none;background:transparent;color:#667;border-radius:999px;cursor:pointer;
  font-size:22px;line-height:1;padding:2px 2px 0;flex:0 0 auto;
}
.nifQuickCard p{margin:10px 0 0;color:#67748d;font-size:15px;line-height:1.65;font-weight:650;letter-spacing:-.02em}
.nifLove1000Metric{display:flex;align-items:baseline;gap:6px;margin-top:6px}
.nifLove1000Metric strong{font-size:28px;line-height:1;color:#1f3562;font-weight:900;letter-spacing:-.04em}
.nifLove1000Metric span{color:#70809d;font-size:14px;font-weight:800}
.nifMiniProgress{height:9px;border-radius:999px;background:#eef0f6;overflow:hidden;margin-top:14px}
.nifMiniProgress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff5b88,#ff87a4)}

.nifFeedSection,.nifImpactSection{margin-top:30px}
.nifSectionHeadingRow{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px}
.nifSectionHeadingRow.noButton{align-items:flex-start}
.nifSectionHeadingRow h2{margin:0;color:#1f3562;font-size:24px;line-height:1.25;font-weight:900;letter-spacing:-.04em}
.nifSectionHeadingRow p{margin:8px 0 0;color:#7a8396;font-size:15px;line-height:1.65;font-weight:650}
.nifGhostPill{
  min-height:46px;padding:0 18px;border-radius:999px;border:1px solid rgba(120,130,160,.16);background:#fff;color:#5a64a2;cursor:pointer;
  font-size:14px;font-weight:850;box-shadow:0 10px 24px rgba(67,77,113,.04);
}
.nifFeedGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.nifFeedCard{overflow:hidden;border-radius:22px;border:1px solid rgba(103,117,157,.08);background:#fff;box-shadow:0 14px 34px rgba(65,62,101,.06)}
.nifFeedThumb{position:relative;height:158px}
.nifFeedThumb.isWarm{background:linear-gradient(135deg,#ffd69f,#fff2da 42%,#f8b7a3 100%)}
.nifFeedThumb.isGalaxy{background:linear-gradient(135deg,#08132d,#4b2f78 45%,#f1a9ff 110%)}
.nifFeedThumb.isGreen{background:linear-gradient(135deg,#d9f7bf,#89d16b 48%,#4a8d38 110%)}
.nifFeedThumb.isPurple{background:linear-gradient(135deg,#f4cdf8,#bca6ff 52%,#7d67ef 110%)}
.nifFeedThumb::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.0),rgba(16,23,52,.12))}
.nifFeedBadge{position:absolute;top:14px;left:14px;z-index:1;display:inline-flex;align-items:center;min-height:29px;padding:0 10px;border-radius:999px;background:rgba(255,247,238,.95);color:#e27d29;font-size:12px;font-weight:850}
.nifFeedBadge.blue{background:rgba(240,241,255,.95);color:#5e60e7}
.nifFeedBadge.green{background:rgba(241,255,242,.95);color:#4f9d41}
.nifFeedBadge.peach{background:rgba(255,244,236,.95);color:#dc8650}
.nifFeedCardBody{padding:16px 16px 18px}
.nifFeedCardBody h3{margin:0;color:#213865;font-size:18px;line-height:1.45;font-weight:850;letter-spacing:-.03em}
.nifFeedMeta{display:flex;justify-content:space-between;gap:10px;margin-top:14px;color:#8791a5;font-size:13px;font-weight:700}

.nifImpactGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.nifImpactCard{padding:24px 24px;border-radius:22px;border:1px solid rgba(103,117,157,.08);background:#fff;box-shadow:0 14px 34px rgba(65,62,101,.06)}
.nifImpactCard span{display:block;color:#7f899e;font-size:14px;font-weight:800}
.nifImpactCard strong{display:block;margin-top:8px;color:#1f3562;font-size:38px;line-height:1.05;font-weight:950;letter-spacing:-.04em}

@media(max-width:1200px){
  .nifQuickCardsGrid,.nifFeedGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:860px){
  .nifHomeSectionInner{width:calc(100% - 32px);padding-top:26px}
  .nifQuickCardsGrid,.nifFeedGrid,.nifImpactGrid{grid-template-columns:1fr}
  .nifSectionHeadingRow{flex-direction:column;align-items:flex-start}
  .nifHomeCardsStage{margin-top:-18px;padding-bottom:64px}
}


/* -------------------------------------------------
   v81 · 히어로 경계 블러 + 상단 한마디
-------------------------------------------------- */
.heroV7{
  overflow:hidden;
}
.heroV7::after{
  content:'';
  position:absolute;
  inset:auto 0 0 0;
  height:140px;
  background:linear-gradient(180deg,rgba(255,255,255,0),rgba(248,248,252,.68) 62%,#f8f8fc 100%);
  pointer-events:none;
}
.heroV7Overlay{
  position:relative;
}
.heroV7Copy{
  position:relative;
  z-index:1;
}
.heroV7Copy::after{
  content:'';
  position:absolute;
  top:-52px;
  right:-140px;
  width:320px;
  height:calc(100% + 104px);
  background:linear-gradient(90deg,rgba(255,251,250,.72) 0%,rgba(255,251,250,.42) 42%,rgba(255,251,250,.12) 72%,rgba(255,251,250,0) 100%);
  filter:blur(24px);
  pointer-events:none;
  z-index:-1;
}
.heroV7Whisper{
  position:absolute;
  top:56px;
  right:4px;
  width:min(340px,28vw);
  text-align:right;
  color:#384b70;
  z-index:1;
}
.heroV7WhisperDash{
  display:block;
  margin-bottom:12px;
  color:#6b7593;
  font-size:18px;
  font-weight:700;
  line-height:1;
}
.heroV7Whisper p{
  margin:0;
  color:#3b5078;
  font-size:16px;
  line-height:1.8;
  font-weight:800;
  letter-spacing:-.03em;
  text-shadow:0 2px 14px rgba(255,255,255,.72);
}
.heroV7Whisper small{
  display:block;
  margin-top:10px;
  color:#5d6f8d;
  font-size:13px;
  line-height:1.6;
  font-weight:700;
  text-shadow:0 2px 12px rgba(255,255,255,.72);
}
@media(max-width:1120px){
  .heroV7Whisper{top:34px;right:0;width:min(300px,34vw)}
  .heroV7Whisper p{font-size:15px}
}
@media(max-width:820px){
  .heroV7Whisper{display:none}
  .heroV7Copy::after{right:-90px;width:220px;filter:blur(20px)}
}


/* -------------------------------------------------
   v82 · 히어로 높이 축소 + 카드섹션 상단 이동
-------------------------------------------------- */
.heroV7{
  min-height:clamp(430px, 67vh, 700px);
  background-size:cover;
  background-position:center 52%;
}
.heroV7::after{
  height:100px;
}
.heroV7Overlay{
  width:min(1460px,calc(100% - 64px));
  min-height:clamp(430px, 67vh, 700px);
  padding:clamp(48px,6vh,76px) 0 clamp(58px,7vh,82px);
  align-items:center;
}
.heroV7Copy{
  width:min(730px,56vw);
}
.heroV7Copy h1{
  font-size:clamp(40px,4vw,62px);
}
.heroV7Copy>p:not(.heroV7Feedback){
  margin-top:18px;
  font-size:clamp(16px,1.25vw,19px);
}
.heroV7Actions{margin-top:26px}
.heroV7Whisper{
  top:20px;
  right:6px;
}
.nifHomeCardsStage{
  margin-top:-62px;
  padding:0 0 88px;
}
.nifHomeSectionInner{
  padding-top:18px;
}
@media(max-width:1120px){
  .heroV7{
    min-height:clamp(420px, 61vh, 620px);
    background-position:58% 48%;
  }
  .heroV7Overlay{
    min-height:clamp(420px, 61vh, 620px);
    padding:44px 0 72px;
  }
  .heroV7Whisper{top:16px;right:0;width:min(280px,32vw)}
  .nifHomeCardsStage{margin-top:-50px}
}
@media(max-width:860px){
  .nifHomeCardsStage{margin-top:-36px}
  .nifHomeSectionInner{padding-top:14px}
}
@media(max-width:680px){
  .heroV7{
    min-height:clamp(390px, 56vh, 520px);
    background-position:63% center;
  }
  .heroV7Overlay{
    width:calc(100% - 26px);
    min-height:clamp(390px, 56vh, 520px);
    padding:40px 0 58px;
    align-items:center;
  }
  .heroV7Copy{
    width:100%;
  }
  .heroV7Copy h1{
    font-size:clamp(34px,8.7vw,46px);
  }
  .heroV7Copy>p:not(.heroV7Feedback){
    font-size:15px;
    max-width:92%;
  }
  .heroV7Actions{margin-top:22px}
  .nifHomeCardsStage{margin-top:-24px}
}


/* v83 · 실측 데이터 표시 */
.nifMeasuredCount{
  display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:24px;margin-left:6px;padding:0 7px;
  border-radius:999px;background:#f5f6fa;color:#6d7890;font-size:11px;font-weight:900;vertical-align:2px;
}
.nifFeedLoading{grid-column:1/-1;min-height:120px;display:flex;align-items:center}
.nifFeedThumb.hasImage{background-size:cover;background-position:center}
.nifFeedEmpty{grid-column:1/-1;padding:28px;border:1px dashed rgba(103,117,157,.16);border-radius:22px;background:#fff;color:#7d879a;text-align:center;font-weight:750}


/* -------------------------------------------------
   v84 · 승인 시안 기반 1000명의 사랑 대표 카드
-------------------------------------------------- */
.nifQuickCardsGrid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.nifQuickCard.isExpandedLove1000{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:240px minmax(290px,1.05fr) minmax(330px,.95fr) minmax(300px,.9fr);
  gap:0;
  align-items:stretch;
  min-height:320px;
  padding:16px;
  overflow:hidden;
  border-radius:28px;
  border:1px solid rgba(237,91,134,.12);
  background:linear-gradient(135deg,#fff 0%,#fff9fb 48%,#fffdf7 100%);
  box-shadow:0 18px 44px rgba(70,64,101,.08);
}
.nifLove1000Visual{
  overflow:hidden;
  min-height:285px;
  border-radius:22px;
  background:linear-gradient(145deg,#fff3f7,#fffaf0);
}
.nifLove1000Visual img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.nifLove1000Core,.nifLove1000StatusPane,.nifLove1000BenefitsPane{padding:22px 26px}
.nifLove1000Core{border-right:1px solid rgba(103,117,157,.10)}
.nifLove1000StatusPane{border-right:1px solid rgba(103,117,157,.10)}
.nifLove1000Eyebrow{display:inline-flex;align-items:center;min-height:27px;padding:0 10px;border-radius:999px;background:#fff0f4;color:#ed567f;font-size:11px;font-weight:900}
.nifLove1000CoreTitle{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:10px}
.nifLove1000CoreTitle h3{margin:0;color:#17315e;font-size:34px;line-height:1.08;font-weight:950;letter-spacing:-.05em}
.nifLove1000Intro{margin:12px 0 0!important;color:#203b6a!important;font-size:18px!important;line-height:1.55!important;font-weight:900!important}
.nifLove1000Sub{margin:6px 0 0!important;color:#768199!important;font-size:13px!important;line-height:1.65!important;font-weight:700!important}
.nifLove1000PeopleLabel{margin-top:18px;color:#344c76;font-size:12px;font-weight:900}
.nifLove1000Metric{margin-top:3px}
.nifLove1000Metric strong{font-size:38px!important;color:#ec4f7d!important}
.nifLove1000Metric span{font-size:17px!important}
.nifMiniProgress.isLarge{height:11px;margin-top:11px}
.nifLove1000ProgressText{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:7px;color:#8a94a8}
.nifLove1000ProgressText span{color:#5f6d8b;font-size:12px;font-weight:900}
.nifLove1000ProgressText small{font-size:10px;font-weight:700;text-align:right}
.nifLove1000StatusTop{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.nifLove1000StatusTop span{display:block;color:#7f89a0;font-size:11px;font-weight:850}
.nifLove1000StatusTop strong{display:block;margin-top:4px;color:#152f59;font-size:29px;line-height:1;font-weight:950}
.nifTextLink{border:0;background:#f7f3ff;color:#745ce4;min-height:34px;padding:0 12px;border-radius:999px;font-size:10px;font-weight:900;cursor:pointer}
.nifLove1000Remain{display:grid;grid-template-columns:auto auto 1fr;gap:6px;align-items:baseline;margin-top:18px;color:#75819a}
.nifLove1000Remain span{font-size:11px;font-weight:850}
.nifLove1000Remain strong{color:#e84f7a;font-size:18px;font-weight:950}
.nifLove1000Remain small{justify-self:end;font-size:10px;font-weight:800}
.nifLove1000MyProgress{height:9px;margin-top:10px;border-radius:999px;background:#eceef5;overflow:hidden}
.nifLove1000MyProgress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff5c88,#ff89a6)}
.nifLove1000StatusPane h4,.nifLove1000BenefitsPane h4{margin:20px 0 12px;color:#20365f;font-size:14px;font-weight:950}
.nifLove1000RewardGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.nifLove1000RewardGrid>div{padding:11px 5px 9px;border-radius:16px;background:#faf9fd;text-align:center;border:1px solid rgba(109,118,154,.06)}
.nifLove1000RewardGrid b{display:block;font-size:23px;line-height:1}
.nifLove1000RewardGrid strong{display:block;margin-top:7px;color:#425371;font-size:10px;line-height:1.25;font-weight:900}
.nifLove1000RewardGrid span{display:block;margin-top:4px;color:#9299aa;font-size:8px;font-weight:700}
.nifLove1000BenefitsPane ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.nifLove1000BenefitsPane li{display:grid;grid-template-columns:20px 1fr;gap:8px;align-items:start;color:#61718d;font-size:12px;line-height:1.55;font-weight:750}
.nifLove1000BenefitsPane li>span{color:#dda529;font-size:14px;text-align:center}
.nifLove1000BenefitsPane li b{color:#ed4e79}
.nifLove1000ActionRow{display:grid;gap:9px;margin-top:18px}
.nifPrimaryAction,.nifSecondaryAction{width:100%;height:44px;border-radius:13px;font-size:11px;font-weight:900;cursor:pointer}
.nifPrimaryAction{border:0;background:linear-gradient(135deg,#ff5c8c,#ef3974);color:#fff;box-shadow:0 9px 20px rgba(239,57,116,.18)}
.nifSecondaryAction{border:1.5px solid #7256ef;background:#fff;color:#6852d7}
.nifLove1000FinePrint{margin:10px 0 0!important;color:#a0a6b4!important;font-size:8px!important;line-height:1.5!important;font-weight:650!important}
.nifMeasuredCount{display:inline-block;margin-left:6px;color:#7b89a4;font-size:11px;font-weight:800}
.nifFeedThumb.hasImage{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
.nifFeedEmpty{grid-column:1/-1;padding:38px;border-radius:22px;background:#fff;border:1px solid rgba(103,117,157,.08);text-align:center;color:#8490a8;font-weight:750}
@media(max-width:1320px){
  .nifQuickCard.isExpandedLove1000{grid-template-columns:210px 1fr 1fr}
  .nifLove1000BenefitsPane{grid-column:2 / -1;border-top:1px solid rgba(103,117,157,.10);display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
  .nifLove1000BenefitsPane h4{grid-column:1/-1}
  .nifLove1000ActionRow{margin-top:0}
}
@media(max-width:980px){
  .nifQuickCardsGrid{grid-template-columns:1fr}
  .nifQuickCard.isExpandedLove1000{grid-template-columns:1fr 1fr}
  .nifLove1000Visual{min-height:240px}
  .nifLove1000Core{border-right:0}
  .nifLove1000StatusPane{border-right:0;border-top:1px solid rgba(103,117,157,.10)}
  .nifLove1000BenefitsPane{grid-column:1/-1}
}
@media(max-width:680px){
  .nifQuickCard.isExpandedLove1000{display:block;padding:12px}
  .nifLove1000Visual{height:220px;min-height:0}
  .nifLove1000Core,.nifLove1000StatusPane,.nifLove1000BenefitsPane{padding:20px 16px;border-right:0}
  .nifLove1000CoreTitle h3{font-size:29px}
  .nifLove1000BenefitsPane{display:block;border-top:1px solid rgba(103,117,157,.10)}
  .nifLove1000RewardGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nifLove1000ProgressText small{display:none}
}


/* -------------------------------------------------
   v85 · 1000명의 사랑 단순화 + 후원 분야 투표
-------------------------------------------------- */
.nifLove1000HowBox{margin-top:18px;padding:16px 16px 15px;border-radius:20px;background:linear-gradient(180deg,#ffffff 0%,#fff7fa 100%);border:1px solid rgba(237,79,121,.09)}
.nifLove1000HowBox h4{margin:0 0 8px!important;color:#20365f;font-size:14px;font-weight:950}
.nifLove1000HowBox p{margin:0!important;color:#69758d!important;font-size:12px!important;line-height:1.7!important;font-weight:750!important}
.nifLove1000SimpleSteps{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.nifLove1000SimpleSteps span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#fff;color:#ef4c79;border:1px solid rgba(239,76,121,.12);font-size:11px;font-weight:850}

.nifLove1000BenefitsPane h4{margin:0 0 10px!important;color:#17315e;font-size:20px!important;line-height:1.35!important;font-weight:950!important}
.nifLove1000DonationLead{margin:0!important;color:#243b69!important;font-size:14px!important;line-height:1.7!important;font-weight:850!important}
.nifLove1000DonationSub{margin:6px 0 0!important;color:#74819a!important;font-size:12px!important;line-height:1.7!important;font-weight:760!important}
.nifLove1000VoteTabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.nifLoveVoteTab{min-height:38px;padding:0 14px;border-radius:999px;border:1px solid rgba(108,120,155,.14);background:#fff;color:#596885;font-size:12px;font-weight:850;cursor:pointer;transition:.18s ease}
.nifLoveVoteTab.isActive{background:linear-gradient(135deg,#ff5f8e,#ef4e7c);border-color:transparent;color:#fff;box-shadow:0 10px 24px rgba(239,78,124,.18)}
.nifLove1000VotePanel{margin-top:16px;padding:18px;border-radius:20px;background:linear-gradient(180deg,#ffffff 0%,#fbfbfe 100%);border:1px solid rgba(109,118,154,.08)}
.nifLove1000VoteTop{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.nifVoteEyebrow{display:block;color:#8791a7;font-size:10px;font-weight:850}
#love1000VoteTitle{display:block;margin-top:4px;color:#1f3562;font-size:20px;line-height:1.2;font-weight:950}
#love1000VotePercent{color:#ef4f7c;font-size:22px;line-height:1;font-weight:950}
#love1000VoteDesc{margin:10px 0 0!important;color:#6c7890!important;font-size:13px!important;line-height:1.72!important;font-weight:760!important}
.nifMiniProgress.isVote{margin-top:12px}
#love1000VoteMeta{display:block;margin-top:8px;color:#95a0b3;font-size:10px;line-height:1.6;font-weight:780}
.nifLove1000FinePrint{margin-top:12px!important;font-size:10px!important;line-height:1.7!important}
@media(max-width:1180px){
  .nifLove1000BenefitsPane{display:block!important}
}
@media(max-width:760px){
  .nifLove1000BenefitsPane h4{font-size:18px!important}
  #love1000VoteTitle{font-size:18px}
  .nifLove1000VoteTop{align-items:flex-start;flex-direction:column}
}


/* -------------------------------------------------
   v86 · 실제 투표/참여 측정 상태
-------------------------------------------------- */
.nifLoveVoteTab small{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;margin-left:5px;padding:0 6px;border-radius:999px;background:#f3f4f9;color:#73809a;font-size:9px;font-weight:900}
.nifLoveVoteTab.isActive small{background:rgba(255,255,255,.22);color:#fff}
.nifPrimaryAction.isJoined{background:#e8edf5!important;color:#65738b!important;box-shadow:none!important;cursor:default!important}
.nifLove1000StatusPane.isEligible .nifLove1000HowBox{border-color:rgba(239,76,121,.18);background:linear-gradient(180deg,#fff 0%,#fff2f7 100%)}

/* v88 — 사랑홈 상단 진입 버튼 */
.nifLoveHomeNav{
  text-decoration:none;
  border:0;
  font-family:inherit;
}
.nifLoveHomeNav:visited{color:#26385d}
.nifLoveHomeNav.isActive,.nifLoveHomeNav.isActive:visited{color:#6646dc}
