body{
background:#17575E;
margin:0;
font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans KR",sans-serif;
overflow-x:hidden;
}
.kb-profile-platform-item {
  display: inline-block;
  margin-right: 16px; /* 글자(항목) 뒤 간격 */
}
.kb-profile-design{
max-width:1180px;
margin:40px auto;
padding:0 20px;
color:#ffffff;
a { color: #95DAC3; }
/* a:hover { color: #ff8cb2; } */
font-size:calc(15px - 2pt);
line-height:1.8;
box-sizing:border-box;
width:100%;
overflow-x:hidden;
}

.kb-profile-panel-article{
width:100%;
}

.kb-profile-hero{
display:grid;
grid-template-columns:minmax(0,1fr) clamp(220px,28vw,360px);
gap:24px;
align-items:start;
margin-bottom:24px;
}

.kb-profile-hero-left{
min-width:0;
}

.kb-profile-hero-right{
min-width:0;
display:flex;
justify-content:flex-end;
align-self:start;
}

.kb-profile-panel-title{
margin:0 0 22px;
font-size:34px;
font-weight:800;
letter-spacing:-0.03em;
color:#62d8cc; /* 네온 기본 컬러 */
animation: kb-profile-neon-flicker 2.8s infinite;
}

@keyframes kb-profile-neon-flicker{
  0%{
    opacity:1;
    text-shadow:none; /* 또렷한 상태 */
  }
  20%{
    opacity:1;
    text-shadow:
      0 0 1px rgba(51,175,162,0.7),
      0 0 3px rgba(51,175,162,0.6),
      0 0 6px rgba(0,255,213,0.6);
  }
  30%{
    opacity:0.8;
    text-shadow:
      0 0 1px rgba(51,175,162,0.6),
      0 0 3px rgba(51,175,162,0.5),
      0 0 5px rgba(0,255,213,0.5);
  }
  45%{
    opacity:1;
    text-shadow:
      0 0 1px rgba(51,175,162,0.8),
      0 0 3px rgba(51,175,162,0.7),
      0 0 6px rgba(0,255,213,0.6);
  }
  70%{
    opacity:0.9;
    text-shadow:
      0 0 1px rgba(51,175,162,0.6),
      0 0 2px rgba(51,175,162,0.5),
      0 0 4px rgba(0,255,213,0.4);
  }
  100%{
    opacity:1;
    text-shadow:none; /* 다시 또렷한 상태로 */
  }
}

.kb-profile-hero-card,
.kb-profile-panel-section{
margin:0 0 18px;
padding:20px 22px;
border-radius:8px;
border:1px solid #159489; 
background:#ffffff00;
overflow:hidden;
/* box-shadow:0 4px 18px rgba(0,0,0,0.05); */
}

/* 첫 번째 섹션도 공통 테두리 사용 (별도 override 없음) */

.kb-profile-hero-card h2,
.kb-profile-panel-section h3{
margin:0 0 14px;
font-size:calc(20px - 2pt);
font-weight:800;
color:#4CC3BA;
}

.kb-profile-image-card{
width:100%;
max-width:360px;
border-radius:24px;
overflow:hidden;
background:#fff;
box-shadow:none;
}

.kb-profile-main-image{
display:block;
width:100%;
height:auto;
object-fit:cover;
border-radius:24px;
}

.kb-profile-h4{
margin:18px 0 10px;
font-size:calc(16px - 2pt);
font-weight:700;
color:#fff;
}

.kb-profile-dl{
display:grid;
grid-template-columns:150px 1fr;
gap:10px 16px;
margin:0;
}

.kb-profile-dl dt{
margin:0;
font-weight:700;
color:#fff;
}

.kb-profile-dl dd{
margin:0;
color:#fff;
}

.kb-profile-platform-list,
.kb-profile-list{
margin:0;
padding-left:20px;
}

.kb-profile-platform-list li,
.kb-profile-list li{
margin:6px 0;
}

.kb-profile-platform-name{
display:inline-flex;
align-items:center;
justify-content:center;
min-width:76px;
padding:3px 10px;
margin-right:8px;
border-radius:999px;
background:transparent; /* 주변 바탕색 그대로 사용 */
border:1px solid #59DFD1;
color:#6FD6CB;
font-size:calc(12px - 2pt);
font-weight:700;
}

.kb-profile-platform-date{
grid-column:1 / -1;
color:#ffffff;
text-align:left;
margin:6px 0 0;
padding:0;
list-style:none;
}

.kb-profile-table{
width:100%;
margin-top:12px;
border-collapse:collapse;
border-radius:10px;
overflow:hidden;
}

.kb-profile-caption{
caption-side:top;
text-align:left;
margin-bottom:8px;
color:#39E2A7;
font-size:calc(15px - 2pt);
}

.kb-profile-table th,
.kb-profile-table td{
padding:12px 14px;
border-bottom:1px solid #159489;
text-align:left;
}

.kb-profile-table th{
background:transparent;
color:#fff;
font-weight:700;
}

.kb-profile-table td{
color:#fff;
}

.kb-profile-table tr:last-child td{
border-bottom:none;
}

.kb-profile-muted{
color:#ffffff;
}

.kb-profile-tags{
color:#ffffff;
}

.kb-profile-panel-section p,
.kb-profile-hero-card p{
margin:0;
}

.kb-profile-panel-section p + p,
.kb-profile-hero-card p + p{
margin-top:10px;
}

.kb-profile-top-image{
  float:right;
  width:180px;
  max-width:180px;
  height:auto;
  margin:0 24px 16px 0;
  border-radius:20px;
  display:block;
  cursor:pointer;
}

/* profile2 전용 라이트박스 (index 라이트박스와 분리) */
.kb-profile2-lightbox{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.7);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:9999;
}
.kb-profile2-lightbox.is-open{
  display:flex;
}
.kb-profile2-lightbox-img{
  max-width:unset;
  max-height:unset;
  border-radius:0;
}

@media (max-width:768px){
  .kb-profile2-lightbox-img{
    max-width:90vw;
    max-height:80vh;
  }
}

@media (max-width:900px){
.kb-profile-hero{
grid-template-columns:1fr;
gap:18px;
}

.kb-profile-hero-right{
justify-content:flex-end;
}

.kb-profile-image-card{
max-width:260px;
}
}

@media (max-width:768px){
.kb-profile-design{
margin:16px auto;
padding:12px 14px;
padding-top:max(12px, env(safe-area-inset-top));
}

.kb-profile-panel-title{
font-size:22px;
line-height:1.3;
word-break:keep-all;
margin-bottom:16px;
}

.kb-profile-hero-card,
.kb-profile-panel-section{
padding:16px;
}

/* 모바일: 기본 정보 상단 이미지 위로 배치, 플로트 해제 */
.kb-profile-panel-section:first-of-type{
display:flex;
flex-direction:column;
}
.kb-profile-panel-section:first-of-type .kb-profile-top-image{
order:-1;
float:none;
width:100%;
max-width:160px;
height:auto;
margin:0 auto 14px;
display:block;
}
.kb-profile-panel-section:first-of-type .kb-profile-dl{
flex:1;
min-width:0;
}

.kb-profile-dl{
grid-template-columns:auto 1fr;
gap:6px 10px;
}

.kb-profile-table th,
.kb-profile-table td{
padding:10px 10px;
font-size:calc(13px - 2pt);
}

.kb-profile-image-card{
max-width:220px;
}
.kb-profile-top-image{
  float:none;
  width:100%;
  max-width:160px;
  height:auto;
  margin:0 auto 14px;
  border-radius:20px;
  display:block;
  cursor:pointer;
}
}
