Initial commit: 교육 프로젝트 배포

This commit is contained in:
송대일
2026-07-01 18:32:42 +09:00
commit be6dccd120
1483 changed files with 5082202 additions and 0 deletions
+132
View File
@@ -0,0 +1,132 @@
<!-- 목표 상세 팝업 레이어 (myclass, myclass_04 공용) -->
<div class="goal-layer hidden" id="goalLayer" aria-hidden="true" role="dialog" aria-modal="true" aria-label="학습목표 상세">
<div class="goal-layer-content">
<div class="goal-layer-header">
<button class="btn-close-layer" type="button" id="btnCloseLayer" aria-label="닫기">
<span class="blind">닫기</span>
</button>
</div>
<div class="goal-layer-main">
<div class="goal-popup" role="document">
<div class="goal-main-slider">
<div class="swiper goal-popup-swiper">
<div class="swiper-wrapper" id="goalSlideWrapper">
<!-- 슬라이드 1 (템플릿, JS에서 2~8 복제) -->
<div class="swiper-slide goal-slide" data-goal-id="1">
<!-- 미니 카드: 비활성일 때만 표시 -->
<div class="slide-mini-card">
<div class="goal-slide-icon-mini" aria-hidden="true"></div>
<strong class="goal-slide-title-mini"></strong>
<div class="slide-mini-divider" aria-hidden="true"></div>
<p class="goal-slide-desc-mini"></p>
</div>
<!-- 콘텐츠: 활성일 때만 표시 -->
<div class="popup-scroll">
<div class="popup-body">
<div class="popup-top">
<div class="title-box">
<div class="title-icon goal-slide-icon" aria-hidden="true"></div>
<div class="title-area">
<p class="popup-quarter" aria-hidden="true"><?php echo htmlspecialchars($modalQuarterLabel ?? '26년 3분기)', ENT_QUOTES, 'UTF-8'); ?></p>
<strong class="popup-title goal-slide-title"></strong>
<p class="popup-desc goal-slide-desc"></p>
</div>
</div>
<div class="recs-list goal-slide-recs">
<div class="rec-item">
<span class="rec-label">추천.01</span>
<div class="rec-content">
<strong class="rec-target"><?php echo htmlspecialchars($modalRecItems[0]['title'] ?? '', ENT_QUOTES, 'UTF-8'); ?></strong>
<p class="rec-text"><?php echo htmlspecialchars($modalRecItems[0]['description'] ?? '', ENT_QUOTES, 'UTF-8'); ?></p>
</div>
</div>
<div class="rec-item">
<span class="rec-label">추천.02</span>
<div class="rec-content">
<strong class="rec-target"><?php echo htmlspecialchars($modalRecItems[1]['title'] ?? '', ENT_QUOTES, 'UTF-8'); ?></strong>
<p class="rec-text"><?php echo htmlspecialchars($modalRecItems[1]['description'] ?? '', ENT_QUOTES, 'UTF-8'); ?></p>
</div>
</div>
<div class="rec-item">
<span class="rec-label">추천.03</span>
<div class="rec-content">
<strong class="rec-target"><?php echo htmlspecialchars($modalRecItems[2]['title'] ?? '', ENT_QUOTES, 'UTF-8'); ?></strong>
<p class="rec-text"><?php echo htmlspecialchars($modalRecItems[2]['description'] ?? '', ENT_QUOTES, 'UTF-8'); ?></p>
</div>
</div>
</div>
</div>
<section class="bookshelf-section goal-slide-bookshelf" aria-label="추천 도서 책장">
<div class="bookshelf">
<div class="books-list books-list--same-height">
<?php foreach (($modalBooks ?? []) as $book) : ?>
<?php
$subText = str_replace('\\n', "\n", (string)($book['sub'] ?? ''));
$mainText = str_replace('\\n', "\n", (string)($book['main'] ?? ''));
$bookId = (int)($book['id'] ?? 0);
$bookTitle = (string)($book['title'] ?? '');
$bookImg = (string)($book['img'] ?? 'img_book_01');
$bookYoutube = (string)($book['youtube'] ?? '');
?>
<div class="books-item" data-video-id="<?php echo $bookId; ?>">
<div class="book-img-wrap" style="--book-img: url('/img/myclass/<?php echo htmlspecialchars($bookImg, ENT_QUOTES, 'UTF-8'); ?>.png'); --book-img-m: url('/img/myclass/<?php echo htmlspecialchars($bookImg, ENT_QUOTES, 'UTF-8'); ?>_m.png')">
<picture class="book-img-picture">
<source media="(max-width: 767px)" srcset="/img/myclass/<?php echo htmlspecialchars($bookImg, ENT_QUOTES, 'UTF-8'); ?>_m.png">
<img src="/img/myclass/<?php echo htmlspecialchars($bookImg, ENT_QUOTES, 'UTF-8'); ?>.png" alt="추천 도서 이미지" class="book-img">
</picture>
</div>
<button type="button" class="book-info-btn" data-video-id="<?php echo $bookId; ?>" aria-label="영상 상세 보기 - <?php echo htmlspecialchars($bookTitle, ENT_QUOTES, 'UTF-8'); ?>">
<span class="book-info-wrap">
<div class="book-video-area">
<span class="book-video-thumb-wrap">
<img src="https://img.youtube.com/vi/<?php echo htmlspecialchars($bookYoutube, ENT_QUOTES, 'UTF-8'); ?>/sddefault.jpg" alt="" class="book-video-thumb">
</span>
<label class="bookmark" for="like_book_goal_<?php echo $bookId; ?>" onclick="event.stopPropagation();"><input type="checkbox" id="like_book_goal_<?php echo $bookId; ?>" title="저장"></label>
</div>
<strong class="book-title"><?php echo htmlspecialchars($bookTitle, ENT_QUOTES, 'UTF-8'); ?></strong>
<div class="book-desc">
<p class="book-desc-sub"><?php echo nl2br(htmlspecialchars($subText, ENT_QUOTES, 'UTF-8')); ?></p>
<p class="book-desc-main"><?php echo nl2br(htmlspecialchars($mainText, ENT_QUOTES, 'UTF-8')); ?></p>
</div>
</span>
</button>
</div>
<?php endforeach; ?>
</div>
<div class="shelf-plank">
<div class="shelf-tags">
<span>1Q</span>
<ul>
<li>IT 테크</li>
<li>웰니스</li>
<li>마인드셋</li>
<li>리더십</li>
</ul>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
<!-- // 슬라이드 1 -->
</div>
<!-- 하단: 목표 페이지네이션 (동그라미) -->
<div class="popup-pagination swiper-pagination" id="popupPagination"></div>
</div>
</div>
</div>
</div>
<!-- // goal-layer-main -->
<!-- 팝업 외부 하단 버튼 -->
<div class="goal-layer-foot">
<a href="/skin/myclass_list.php" class="btn-set-goal" id="btnSetGoal">이 목표로 설정하기</a>
</div>
</div>
<!-- // goal-layer-content -->
</div>
<!-- // 목표 상세 팝업 레이어 -->
+50
View File
@@ -0,0 +1,50 @@
<!-- keyword modal -->
<!--
파일은 skin/index.php 에서 include 된다.
bbs/index.php 설정한 $allKeywords, $myKeywords, $adminKeywords 변수를 사용한다.
-->
<div class="modal keyword" id="keywordModal" aria-hidden="true" aria-modal="true" role="dialog" aria-label="나의 키워드 설정">
<div class="modal-content">
<div class="modal-header">
<button class="btn-close">
나의 키워드 수정<i class="ico-check"></i>
</button>
</div>
<div class="modal-body" id="modalBody">
<ul class="keyword-tag">
<?php
// 현재 사용자가 선택한 키워드명 배열 (checked 상태 결정에 사용)
$myKwNames = array_column($myKeywords ?? [], 'keyword_name');
// 회사 추천 키워드명 배열 (disabled 처리용)
$adminKwNames = array_column($adminKeywords ?? [], 'keyword_name');
foreach ($allKeywords as $idx => $kw):
$kwName = $kw['keyword_name'];
$isAdmin = in_array($kwName, $adminKwNames, true);
$isChecked = !$isAdmin && in_array($kwName, $myKwNames, true);
$itemId = 'kwtag_' . ($idx + 1);
?>
<li class="kw-box">
<label
for="<?= htmlspecialchars($itemId) ?>"
<?= $isAdmin ? 'style="opacity:0.45;cursor:not-allowed;" title="회사 추천 키워드는 나의 키워드로 선택할 수 없습니다."' : '' ?>
>
<input
type="checkbox"
id="<?= htmlspecialchars($itemId) ?>"
<?= $isChecked ? 'checked' : '' ?>
<?= $isAdmin ? 'disabled' : '' ?>
/>
#<?= htmlspecialchars($kwName) ?>
</label>
</li>
<?php endforeach; ?>
</ul>
</div>
<p class="keyword-limit-txt">
<span class="pc-txt"><strong>최대 3개</strong> 선택 가능</span>
<span class="mo-txt">키워드는&nbsp;<strong>최대 3개</strong>까지 선택 가능합니다.</span>
</p>
</div>
</div>
<!-- // keyword modal -->
+184
View File
@@ -0,0 +1,184 @@
<!-- 학습 가이드 PDF 팝업 ( 페이지 공통) -->
<?php
$learningGuideDefaultTab = $learningGuideDefaultTab ?? 'player';
$allowedLearningGuideKeys = [
'player',
'main',
'myclass',
'onboarding',
'legal',
'leadership',
'insight',
'biztrend',
'mypage',
];
if (!in_array($learningGuideDefaultTab, $allowedLearningGuideKeys, true)) {
$learningGuideDefaultTab = 'player';
}
$learningGuideTabAttr = static function (string $tabKey) use ($learningGuideDefaultTab): array {
$isActive = $tabKey === $learningGuideDefaultTab;
return [
'class' => $isActive ? 'learning-guide-tab is-active' : 'learning-guide-tab',
'selected' => $isActive ? 'true' : 'false',
];
};
?>
<div
class="learning-guide-layer hidden"
id="learningGuideLayer"
data-default-guide-key="<?= htmlspecialchars($learningGuideDefaultTab, ENT_QUOTES, 'UTF-8') ?>"
aria-hidden="true"
role="dialog"
aria-modal="true"
aria-label="학습 가이드"
>
<div class="learning-guide-content">
<div class="learning-guide-header">
<button
type="button"
class="btn-close-layer"
id="btnCloseLearningGuide"
aria-label="닫기"
>
<span class="blind">닫기</span>
</button>
</div>
<div class="learning-guide-body">
<div class="learning-guide-tabs">
<div class="swiper learning-guide-tab-swiper">
<div class="swiper-wrapper" role="tablist" aria-label="학습 가이드 메뉴">
<div class="swiper-slide">
<button
type="button"
class="<?= $learningGuideTabAttr('player')['class'] ?>"
role="tab"
data-guide-key="player"
data-pdf="/guide/배움터 학습가이드_학습 플레이어.pdf"
aria-selected="<?= $learningGuideTabAttr('player')['selected'] ?>"
aria-disabled="false"
>
학습 플레이어
</button>
</div>
<div class="swiper-slide">
<button
type="button"
class="<?= $learningGuideTabAttr('main')['class'] ?>"
role="tab"
data-guide-key="main"
data-pdf="/guide/배움터 학습가이드_메인페이지.pdf"
aria-selected="<?= $learningGuideTabAttr('main')['selected'] ?>"
aria-disabled="false"
>
메인
</button>
</div>
<div class="swiper-slide">
<button
type="button"
class="<?= $learningGuideTabAttr('myclass')['class'] ?>"
role="tab"
data-guide-key="myclass"
data-pdf="/guide/배움터 학습가이드_마이클래스.pdf"
aria-selected="<?= $learningGuideTabAttr('myclass')['selected'] ?>"
aria-disabled="false"
>
마이클래스
</button>
</div>
<div class="swiper-slide">
<button
type="button"
class="<?= $learningGuideTabAttr('onboarding')['class'] ?>"
role="tab"
data-guide-key="onboarding"
data-pdf="/guide/배움터 학습가이드_온보딩.pdf"
aria-selected="<?= $learningGuideTabAttr('onboarding')['selected'] ?>"
aria-disabled="false"
>
온보딩
</button>
</div>
<div class="swiper-slide">
<button
type="button"
class="<?= $learningGuideTabAttr('legal')['class'] ?>"
role="tab"
data-guide-key="legal"
data-pdf="/guide/배움터 학습가이드_법정교육.pdf"
aria-selected="<?= $learningGuideTabAttr('legal')['selected'] ?>"
aria-disabled="false"
>
법정교육
</button>
</div>
<div class="swiper-slide">
<button
type="button"
class="<?= $learningGuideTabAttr('leadership')['class'] ?>"
role="tab"
data-guide-key="leadership"
data-pdf="/guide/배움터 학습가이드_리더십.pdf"
aria-selected="<?= $learningGuideTabAttr('leadership')['selected'] ?>"
aria-disabled="false"
>
리더십
</button>
</div>
<div class="swiper-slide">
<button
type="button"
class="<?= $learningGuideTabAttr('insight')['class'] ?>"
role="tab"
data-guide-key="insight"
data-pdf="/guide/배움터 학습가이드_인사이트.pdf"
aria-selected="<?= $learningGuideTabAttr('insight')['selected'] ?>"
aria-disabled="false"
>
인사이트
</button>
</div>
<div class="swiper-slide">
<button
type="button"
class="<?= $learningGuideTabAttr('biztrend')['class'] ?>"
role="tab"
data-guide-key="biztrend"
data-pdf="/guide/배움터 학습가이드_비즈트렌드.pdf"
aria-selected="<?= $learningGuideTabAttr('biztrend')['selected'] ?>"
aria-disabled="false"
>
비즈트렌드
</button>
</div>
<div class="swiper-slide">
<button
type="button"
class="<?= $learningGuideTabAttr('mypage')['class'] ?>"
role="tab"
data-guide-key="mypage"
data-pdf="/guide/배움터 학습가이드_마이페이지.pdf"
aria-selected="<?= $learningGuideTabAttr('mypage')['selected'] ?>"
aria-disabled="false"
>
마이페이지
</button>
</div>
</div>
</div>
</div>
<div class="learning-guide-viewer">
<iframe
id="learningGuideViewer"
title="학습 가이드 PDF"
src=""
></iframe>
</div>
</div>
</div>
</div>
+50
View File
@@ -0,0 +1,50 @@
<!-- 비디오 모달 템플릿 -->
<div class="modal video">
<div class="modal-content">
<div class="modal-body">
<div class="video-contents">
<div class="video-box">
<iframe
id="videoFrame"
width="100%"
height="100%"
src=""
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
>
</iframe>
</div>
<div class="video-info">
<div class="tit-box">
<div class="meta">
<span>인사이트</span>
<em>경제와사회</em>
</div>
<h3>회계를 조금이라도 이해하면 인생이 달라지는 이유</h3>
</div>
<div class="desc">
메타버스 시대가 열리며 우리의 삶과 정체성이 디지털 중심으로 재편되고
있습니다.<br />
변화는 새로운 기회와 동시에 사회적·윤리적 과제도 함께 가져옵니다.
</div>
</div>
</div>
<div class="video-list">
<div class="list-header">
<span class="close">&times;</span>
</div>
<div></div>
<div class="comment-wrap">
<div class="comment-box">
<textarea placeholder="댓글을 작성해주세요"></textarea>
<div class="btn-area">
<button class="btn-cancel">취소</button>
<button class="btn-save">작성</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
+14
View File
@@ -0,0 +1,14 @@
<?php
// 학습완료/학습중/미진행 상태를 legal_learning_data.php에서 가져와서 표시하는 헬퍼
require_once __DIR__ . '/../../bbs/legal_learning_data.php';
// content_id => 상태 매핑
$lessonStatusMap = [];
foreach ($chapters as $chapter) {
foreach ($chapter['lessons'] as $lesson) {
$lessonStatusMap[$lesson['content_id']] = [
'status' => $lesson['status'],
'completed' => $lesson['completed'],
];
}
}
+2
View File
@@ -0,0 +1,2 @@
<?php
require __DIR__ . '/video.php';
+169
View File
@@ -0,0 +1,169 @@
<!-- 비디오 모달 템플릿 -->
<div class="modal video">
<div class="modal-content">
<div class="modal-body">
<div class="video-contents">
<div class="video-area">
<div class="video-box">
<iframe
id="videoFrame"
width="100%"
height="100%"
src=""
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
>
</iframe>
</div>
</div>
<div class="video-info">
<div class="tit-box">
<div class="meta no-arrow">
<span>법정교육</span>
<em></em>
</div>
<h3>개인정보보호</h3>
</div>
<div class="desc"></div>
</div>
</div>
<div class="video-side step">
<!-- 제목 -->
<div class="video-header">
<div class="tit-box">
<h5 class="tit">현재강의</h5>
<p class="sub-txt">
아동학대 신고의무자 공공부문 종사자 아동학대 예방교육(공통편)
</p>
</div>
<div class="gauge-container">
<div class="gauge-bar">
<div class="gauge-fill" id="gaugeFill" style="width: 50%"></div>
<img
class="gauge-ticks"
src="/img/video/img_gauge_ticks.svg"
/>
</div>
<div class="gauge-labels">
<span class="label"> <em>3</em> /6 </span>
<span class="label current" id="currentValue"
>진도율 <em>50</em>%</span
>
</div>
</div>
<span class="close">&times;</span>
</div>
<!-- // 제목 -->
<div class="video-list">
<h5 class="tit">학습목차</h5>
<ul class="learning-list">
<li class="complet">
<a href="#" class="list" data-video-id="">
<span class="seq">1차시</span>
<div class="learning-box">
<div class="thumb">
<img
src="/img/video/img_learning_thumb_01.png"
/>
</div>
<div class="txt-box">
<div class="title">직무스트레스의 예방과 관리</div>
<spna class="state">학습완료</spna>
</div>
</div>
</a>
</li>
<li class="complet">
<a href="#" class="list" data-video-id="${video.id}">
<span class="seq">2차시</span>
<div class="learning-box">
<div class="thumb">
<img
src="/img/video/img_learning_thumb_02.png"
/>
</div>
<div class="txt-box">
<div class="title">직무스트레스의 예방과 관리</div>
<spna class="state">학습완료</spna>
</div>
</div>
</a>
</li>
<li class="active">
<a href="#" class="list" data-video-id="${video.id}">
<span class="seq">3차시</span>
<div class="learning-box">
<div class="thumb">
<img
src="/img/video/img_learning_thumb_03.png"
/>
</div>
<div class="txt-box">
<div class="title">직무스트레스의 예방과 관리</div>
<spna class="state">학습중</spna>
</div>
</div>
</a>
</li>
<li>
<a href="#" class="list" data-video-id="${video.id}">
<span class="seq">4차시</span>
<div class="learning-box">
<div class="thumb">
<img
src="/img/video/img_learning_thumb_04.png"
/>
</div>
<div class="txt-box">
<div class="title">하절기 질병예방 안전</div>
<spna class="state">미진행</spna>
</div>
</div>
</a>
</li>
<li>
<a href="#" class="list" data-video-id="${video.id}">
<span class="seq">5차시</span>
<div class="learning-box">
<div class="thumb">
<img
src="/img/video/img_learning_thumb_05.png"
/>
</div>
<div class="txt-box">
<div class="title">직무스트레스의 예방과 관리</div>
<spna class="state">미진행</spna>
</div>
</div>
</a>
</li>
<li>
<a href="#" class="list" data-video-id="${video.id}">
<span class="seq">6차시</span>
<div class="learning-box">
<div class="thumb">
<img
src="/img/video/img_learning_thumb_06.png"
/>
</div>
<div class="txt-box">
<div class="title">온도습도 미세먼지 안정</div>
<spna class="state">미진행</spna>
</div>
</div>
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
+169
View File
@@ -0,0 +1,169 @@
<!-- 비디오 모달 템플릿 -->
<div class="modal video">
<div class="modal-content">
<div class="modal-body">
<div class="video-contents">
<div class="video-area">
<div class="video-box">
<iframe
id="videoFrame"
width="100%"
height="100%"
src=""
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
>
</iframe>
</div>
</div>
<div class="video-info">
<div class="tit-box">
<div class="meta no-arrow">
<span>온보딩</span>
<em></em>
</div>
<h3>회계를 조금이라도 이해하면 인생이 달라지는 이유</h3>
<div class="tit-right">
<button class="btn-comment"><i class="ico-comment"></i>0</button>
<label class="bookmark" for="chk">
<input id="chk" type="checkbox" value="" />
<span>북마크</span>
</label>
</div>
</div>
<div class="desc">
메타버스 시대가 열리며 우리의 삶과 정체성이 디지털 중심으로 재편되고
있습니다.<br />
변화는 새로운 기회와 동시에 사회적·윤리적 과제도 함께 가져옵니다.
</div>
</div>
</div>
<div class="video-side step">
<!-- 제목 -->
<div class="video-header">
<div class="tit-box">
<h5 class="tit">현재강의</h5>
<p class="sub-txt">
아동학대 신고의무자 공공부문 종사자 아동학대 예방교육(공통편)
</p>
</div>
<div class="gauge-container">
<div class="gauge-bar">
<div class="gauge-fill" id="gaugeFill" style="width: 20%"></div>
<img
class="gauge-ticks"
src="/img/video/img_gauge_ticks.svg"
/>
</div>
<div class="gauge-labels">
<span class="label"> <em>1</em> /4 </span>
<span class="label current" id="currentValue"
>진도율 <em>20</em>%</span
>
</div>
</div>
<span class="close">&times;</span>
</div>
<!-- // 제목 -->
<div class="video-list">
<h5 class="tit">학습목차</h5>
<ul class="learning-list">
<li class="active">
<a href="#" class="list" data-video-id="">
<span class="seq">1차시</span>
<div class="learning-box">
<div class="thumb">
<img
src="/img/video/img_essential_thumb_01.png"
/>
</div>
<div class="txt-box">
<div class="title">산업재해예방 안전수칙</div>
<spna class="state">학습중</spna>
</div>
</div>
</a>
</li>
<li class="">
<a href="#" class="list" data-video-id="${video.id}">
<span class="seq">2차시</span>
<div class="learning-box">
<div class="thumb">
<img
src="/img/video/img_essential_thumb_02.png"
/>
</div>
<div class="txt-box">
<div class="title">축적에서 길을 찾다</div>
<spna class="state">미진행</spna>
</div>
</div>
</a>
</li>
<li class="">
<a href="#" class="list" data-video-id="${video.id}">
<span class="seq">3차시</span>
<div class="learning-box">
<div class="thumb">
<img
src="/img/video/img_essential_thumb_03.png"
/>
</div>
<div class="txt-box">
<div class="title">천재는 잊어라</div>
<spna class="state">학습중</spna>
</div>
</div>
</a>
</li>
<li>
<a href="#" class="list" data-video-id="${video.id}">
<span class="seq">4차시</span>
<div class="learning-box">
<div class="thumb">
<img
src="/img/video/img_essential_thumb_03.png"
/>
</div>
<div class="txt-box">
<div class="title">유령이 리더들</div>
<spna class="state">미진행</spna>
</div>
</div>
</a>
</li>
</ul>
</div>
<div class="comment-wrap">
<!-- 🔥 드래그 리사이저 추가 -->
<div class="comment-resizer">
<div class="resizer-handle"></div>
</div>
<!-- 댓글 목록 -->
<div class="comment-list-wrap">
<ul class="comment-list">
<li class="empty">등록된 댓글이 없습니다.</li>
</ul>
</div>
<!-- // 댓글 목록 -->
<!-- 댓글 입력 -->
<div class="comment-box">
<textarea placeholder="댓글을 작성해주세요"></textarea>
<div class="btn-area">
<button class="btn-cancel" disabled>취소</button>
<button class="btn-save" disabled>작성</button>
</div>
</div>
<!-- // 댓글 입력 -->
</div>
</div>
</div>
</div>
</div>
+76
View File
@@ -0,0 +1,76 @@
<!-- 비디오 모달 템플릿 -->
<div class="modal video">
<div class="modal-content">
<div class="modal-body">
<div class="video-contents">
<div class="video-area">
<div class="video-box">
<iframe
id="videoFrame"
width="100%"
height="100%"
src=""
frameborder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
allowfullscreen
>
</iframe>
</div>
</div>
<div class="video-info">
<div class="tit-box">
<div class="meta">
<span>인사이트</span>
<em>경제와사회</em>
</div>
<h3>회계를 조금이라도 이해하면 인생이 달라지는 이유</h3>
<div class="tit-right">
<button class="btn-comment"><i class="ico-comment"></i>0</button>
<label class="bookmark" for="video-bookmark-chk">
<input id="video-bookmark-chk" type="checkbox" value="" />
<span>북마크</span>
</label>
</div>
</div>
<div class="desc"></div>
</div>
</div>
<div class="video-side">
<div class="video-header">
<h5 class="tit">관련영상</h5>
<span class="badge">소통</span>
<span class="close">&times;</span>
</div>
<div class="video-list">
<ul>
<!-- JS(loadRecommendedVideos) 동적 렌더링 -->
</ul>
</div>
<div class="comment-wrap">
<!-- 🔥 드래그 리사이저 추가 -->
<div class="comment-resizer">
<div class="resizer-handle"></div>
</div>
<!-- 댓글 목록 -->
<div class="comment-list-wrap">
<ul class="comment-list">
<!-- JS(get_comments.php) 동적 렌더링 -->
</ul>
</div>
<!-- // 댓글 목록 -->
<!-- 댓글 입력 -->
<div class="comment-box">
<textarea placeholder="댓글을 작성해주세요"></textarea>
<div class="btn-area">
<button class="btn-cancel" disabled>취소</button>
<button class="btn-save" disabled>작성</button>
</div>
</div>
<!-- // 댓글 입력 -->
</div>
</div>
</div>
</div>
</div>