* { margin: 0; padding: 0; box-sizing: border-box; }

#wrap { max-width: 480px; margin: 0 auto; padding: 20px; font-family: -apple-system, sans-serif; }



/* 6. 타이틀 */

.header { text-align: center; padding: 20px 0; }

.home-link { font-size: 1.3rem; font-weight: 800; text-decoration: none; color: #000; }



/* 프로필 위 텍스트 */

.text-top-profile { margin: 10px 0; font-weight: bold; font-size: 1.1rem; }



/* 1 & 2. 프로필 박스 */

.profile-section { display: flex; align-items: center; gap: 15px; margin-bottom: 25px; }

.profile-circle { width: 60px; height: 60px; border-radius: 50%; overflow: hidden; background: #eee; }

.profile-circle img { width: 100%; height: 100%; object-fit: cover; }

.profile-side-text { font-size: 0.95rem; color: #333; border-bottom: 1px solid #ddd; flex-grow: 1; padding-bottom: 5px; }



/* 3. 상단 2구 클리핑 박스 */

.dual-box-container { display: flex; gap: 10px; margin-bottom: 25px; }

.link-item { flex: 1; aspect-ratio: 1/1; border-radius: 15px; background: #f0f0f0; border: 1px solid #eee; }



/* 4 & 5. 메인 영역 */

.main-visual-section { position: relative; }

.main-img-wrapper { position: relative; border-radius: 20px; overflow: hidden; }

.main-bg-image { width: 100%; aspect-ratio: 1/1.2; background-size: cover; background-position: center; background-color: #fafafa; display: flex; align-items: center; justify-content: center; color: #ccc; }



/* 폴라로이드 카테고리 박스 디자인 */

.polaroid-box {

    position: absolute; bottom: 20px; left: 20px;

    width: 105px; cursor: pointer;

}

.polaroid-white-bg {

    background: #fff; padding: 7px 7px 15px 7px; /* 이 패딩이 흰색 여백입니다 */

    border-radius: 10px; box-shadow: 0 5px 15px rgba(0,0,0,0.2);

}

.polaroid-photo-area { width: 100%; aspect-ratio: 1/1; border-radius: 5px; overflow: hidden; }

.polaroid-photo-area img { width: 100%; height: 100%; object-fit: cover; }

.polaroid-label { margin-top: 10px; text-align: center; font-size: 11px; font-weight: bold; color: #222; }



/* 카테고리 레이어 */

.category-layer { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255,255,255,0.98); z-index: 10; padding: 20px; }

.layer-header { display: flex; justify-content: space-between; font-weight: bold; margin-bottom: 20px; }

.category-layer ul { list-style: none; }

.category-layer li { padding: 10px 0; border-bottom: 1px solid #f0f0f0; }

.link-item { overflow: hidden; display: block; }
.link-item img { width: 100%; height: 100%; object-fit: cover; }