| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- // 제목 영역
- .titleSection {
- padding: 16px;
- background: white;
- border-bottom: 1px solid #f3f4f6;
- .streamTitle {
- font-size: 1.1rem;
- font-weight: 600;
- color: #111827;
- line-height: 1.4;
- margin: 0;
- // 긴 제목 말줄임 (최대 2줄)
- overflow: hidden;
- text-overflow: ellipsis;
- display: -webkit-box;
- -webkit-line-clamp: 2;
- -webkit-box-orient: vertical;
- // 모바일에서는 약간 작게
- @media (max-width: 768px) {
- font-size: 1rem;
- -webkit-line-clamp: 2;
- }
- }
- }
- // 스트리머 정보 + 액션 버튼 컨테이너
- .infoActionsContainer {
- display: flex;
- justify-content: space-between;
- align-items: center;
- padding: 16px;
- background: white;
- border-bottom: 1px solid #f3f4f6;
- }
- // 스트리머 정보
- .streamerInfo {
- display: flex;
- align-items: center;
- gap: 12px;
- .streamerAvatar {
- width: 40px;
- height: 40px;
- border-radius: 50%;
- overflow: hidden;
- background: #f3f4f6;
- flex-shrink: 0;
- img {
- width: 100%;
- height: 100%;
- object-fit: cover;
- }
- .avatarPlaceholder {
- width: 100%;
- height: 100%;
- background: linear-gradient(135deg, #3b82f6, #1e40af);
- display: flex;
- align-items: center;
- justify-content: center;
- color: white;
- font-weight: bold;
- font-size: 0.875rem;
- }
- }
- .streamerDetails {
- flex: 1;
- min-width: 0;
- .streamerName {
- font-size: 0.9rem;
- font-weight: 500;
- color: #111827;
- margin-bottom: 4px;
- }
- .viewerCount {
- font-size: 0.8rem;
- color: #6b7280;
- }
- }
- }
- // 액션 버튼 영역
- .videoActions {
- display: flex;
- justify-content: flex-start;
- .actionButtons {
- display: flex;
- gap: 12px;
- }
- .bookmarkBtn,
- .shareBtn {
- background: none;
- border: none;
- color: #6b7280;
- cursor: pointer;
- padding: 8px;
- border-radius: 4px;
- transition: all 0.2s;
- &:hover {
- background-color: #f3f4f6;
- color: #374151;
- }
- }
- }
- // 모바일 최적화
- @media (max-width: 480px) {
- .infoActionsContainer {
- padding: 12px;
- }
- .streamerInfo {
- .streamerAvatar {
- width: 36px;
- height: 36px;
- }
- .streamerDetails {
- .streamerName {
- font-size: 0.8rem;
- }
- .viewerCount {
- font-size: 0.75rem;
- }
- }
- }
- }
|