:root{--key-color:#2C5BF6; --txt:#333; --muted:#777; --line:#E5E7EB; --cardLine:#E6E9EF; --bgSoft:#F3F5F8;}

/* =========================
BASE / LAYOUT
========================= */
#wrapper{overflow: hidden;}
.event-wrap{color:var(--txt);}
.inner{max-width:1200px; margin:0 auto;}
.lecture-wrap .inner{padding:0 0 60px;}

.blind{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}

.mo-sub-header{display:flex; align-items:center; gap:10px; padding:14px 16px; border-bottom:1px solid var(--line); background:#fff;}
.mo-sub-header-back{width:36px; height:36px; border:0; background:transparent; padding:0; display:flex; align-items:center; justify-content:center; cursor:pointer;}
.mo-sub-header-back img{width:20px; height:auto;}
.mo-sub-header-title{font-size:16px; font-weight:600; margin:0;}

/* =========================
VISUAL
========================= */
.visual-wrap .visual{width:100%; max-width:1200px; margin:0 auto; text-align:center;}
.visual-wrap .visual h1{font-size:clamp(18px, calc(18px + (30 - 18) * ((100vw - 360px) / 840)), 30px); padding:56px 0;}

/* =========================
TABS
========================= */
.tab-contents{padding:0;}
.tab.tab-e{margin-bottom:24px;}
.tab.tab-e .tab-list{max-width:1200px; margin:0 auto; display:flex; border-bottom:1px solid var(--line);}
.tab.tab-e .tab-btn{
	flex:1; padding:16px 0; background:transparent; border:0; font-size:clamp(14px, calc(14px + (16 - 14) * ((100vw - 360px) / 840)), 16px); color:#555; cursor:pointer; 
	position:relative;
}
.tab.tab-e .tab-btn.is-on{color:var(--key-color); font-weight:600;}
.tab.tab-e .tab-btn.is-on:after{content:""; position:absolute; left:0; right:0; bottom:-1px; height:3px; background:var(--key-color);}
.tab-panel{display:none;}
.tab-panel.is-on{display:block;}

/* =========================
FILTER / CHIP
========================= */
.filter-box{background:#F7F7F7; border-radius:8px; padding:20px; margin:0 0 30px;}

.filter-row{display:flex; align-items:center; gap:0; position:relative;}
.filter-row + .filter-row{margin-top:10px;}
.filter-label{width:50px; flex:0 0 auto;font-size: 14px;color:#333;}

/* wrap: ¼¨µµ¿ì/Å¬¸®ÇÎ¿ë */
.filter-controls-wrap{flex:1; min-width:0; overflow:hidden; position:relative;}

/* scroll list */
.filter-controls.scroll_menu{display:flex; overflow-x:auto; overflow-y:hidden; cursor:grab; user-select:none; -ms-overflow-style:none; scrollbar-width:none; -webkit-overflow-scrolling:touch;}
.filter-controls.scroll_menu::-webkit-scrollbar{display:none;}
.filter-controls.scroll_menu .item{flex:0 0 auto; margin-left:8px;}
.filter-controls.scroll_menu .item:first-child{margin-left:0;}
.filter-controls.scroll_menu .chip{white-space:nowrap;}

/* shadow (overflow ÀÖÀ» ¶§¸¸) */
.filter-shadow{position:absolute; right:0; top:0; bottom:0; width:18px; display:none; background:linear-gradient(to left, #F7F7F7 30%, rgba(247,247,247,0)); pointer-events:none;}
/* .filter-row.has-overflow .filter-shadow{display:block;} */

/* chip */
.chip{height:26px; padding:0 8px; border-radius:4px; border:1px solid #777; background:#fff; color:#555; font-size:14px; font-weight:400; cursor:pointer;}
.chip.is-on{border-color:var(--key-color); color:var(--key-color);}

/* =========================
FILTER SELECT (34px)
========================= */
.filter-controls .custom-select .select-btn{height:34px; min-width:200px; padding:0 10px; font-size:14px;}
.filter-controls .custom-select .select-arrow{width:8px; height:8px;}
.filter-controls .custom-select .option{padding:8px 12px; font-size:14px;}

/* basic select */
.sel{width:100%; height:32px; padding:0 12px; border:1px solid #D6DAE2; border-radius:6px; background:#fff; font-size:13px;}

/* =========================
INPUT
========================= */
.input-basic{width:100%; min-height:42px; padding:0 12px; border:1px solid #DBDEE5; border-radius:6px; font-size:14px; background:#fff;}
.input-basic::placeholder{color:#7E7E7E; opacity:1;}
.input-basic:-ms-input-placeholder{color:#7E7E7E;}
.input-basic::-ms-input-placeholder{color:#7E7E7E;}
.input-basic:disabled{background:#F5F5F5; color:#7E7E7E;}
.input-basic:focus{outline:none;}
.is-active .input-basic,.input-basic:focus{border-color:var(--key-color);}

/* =========================
CUSTOM SELECT
========================= */
.custom-select{position:relative; display:inline-block; width:auto;}
.custom-select.select-wrap::after{content:none;}
.custom-select .select-btn{
	width:100%; min-width:150px; height:42px; padding:0 12px; border-radius:6px; border:1px solid #DBDEE5; 
	background:#fff; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:14px;
	
}
.custom-select .select-text{flex:1; min-width:0; text-align:left; white-space:nowrap;}
.custom-select .select-arrow{width:10px; height:10px; border-right:1px solid #222; border-bottom:1px solid #222; transform:rotate(45deg); flex:0 0 auto;}

.custom-select .select-list{position:absolute; left:0; top:calc(100% - 1px); width:100%; max-height:200px; overflow-y:auto; background:#fff; 
	border:1px solid var(--key-color); border-radius:6px; padding:6px 0; margin:0; list-style:none; display:none; z-index:9999;
	/* ? ÀÌ µÎ °³°¡ ÇÙ½É */
	background-clip:padding-box;
	scrollbar-gutter:stable;
}
.custom-select.open .select-list{display:block;}
.custom-select .option{padding:10px 14px; font-size:14px; color:#222; cursor:pointer;}
.custom-select .option:hover{background:#F1F3F8;}

/* .custom-select.open .select-btn,.custom-select.is-selected .select-btn{border-color:var(--key-color);} */
.custom-select.open .select-arrow,.custom-select.is-selected .select-arrow{transform:rotate(-135deg); margin-top:5px;}

.custom-select.is-disabled .select-btn,.custom-select.is-disabled-row .select-btn{background:#F5F5F5; color:#888; cursor:default; pointer-events:none;}
.custom-select.is-disabled .select-arrow,.custom-select.is-disabled-row .select-arrow{border-color:#888;}
.custom-select.is-scroll .select-list{max-height:190px; overflow:auto;}

.custom-select .select-list::-webkit-scrollbar{
	width:10px;
}

.custom-select .select-list::-webkit-scrollbar-track{
	background:transparent;
	border-radius:6px;
}

.custom-select .select-list::-webkit-scrollbar-thumb{
	background:#888;
	border-radius:999px;
	border:2px solid #fff;
}


input.is-disabled{background:#F5F5F5; color:#888; cursor:default; pointer-events:none; border:1px solid #DBDEE5;}
input:disabled{font-size:14px;}



/* =========================
EMPTY
========================= */
.empty-box{border:1px solid #DBDEE5; border-radius:8px; background:#fff; min-height:200px; display:flex; align-items:center; justify-content:center; text-align:center;}
.empty-box p{font-size:15px; color:#555; font-weight:400; line-height:140%; letter-spacing:-0.3px;}

/* =========================
COMMON TITLES
========================= */
.reserve-bg__title{background:#F1F3F8; padding:8px 24px; font-size:18px; font-weight:600; letter-spacing:-0.36px; margin-bottom:20px;border-radius: 8px;}
.reserve-bg__subtitle{padding:8px 24px; font-size:14px; font-weight:500;}
.alarm-sub{font-size:14px; font-weight:400; color:#ED2024; margin-left:4px; line-height:140%; letter-spacing:-0.28px;}

/* =========================
LIST PAGE
========================= */
.lecture-list{display:flex; flex-direction:column; gap:20px;}

.lecture-card{
	position:relative; display:grid; grid-template-columns:1fr; grid-template-areas:"head head" "body side"; gap:0; 
	border:1px solid #DBDEE5; border-radius:8px; background:#fff; overflow:hidden; text-decoration:none; color:inherit; padding:24px; 
	transition:border-color .2s ease, box-shadow .2s ease;
}
@media (min-width:768px){
	.lecture-card:hover{border:1px solid var(--key-color); box-shadow:4px 4px 4px 0 rgba(0,0,0,0.10);}
}
@media (max-width:767px){
	.lecture-card:active{border:1px solid var(--key-color); box-shadow:4px 4px 4px 0 rgba(0,0,0,0.10);}
}

.card-head{grid-area:head; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:8px 24px; background:#F2F4F7; border-radius:8px;}
.tab-panel-aca .card-head{position:absolute; top:0; right:0; background:none;padding:0;}

.card-campus{flex:1 1 auto; min-width:0; font-size:18px; font-weight:600; color:#2A2F3A; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.lecture-card.is-closed .card-campus{color:#7E7E7E;}

.card-head + .card-body{ margin-top: 16px;}
.tab-panel-aca .card-head + .card-body{ margin-top: 0;}

.card-body{grid-area:body; min-width:0; padding:0 16px 0 16px;}
.card-tags{display:flex; gap:6px; margin:0 0 10px;flex-wrap: wrap;}
.tag{display:inline-flex; align-items:center; height:24px; padding:0 9px; border-radius:4px; border:1px solid #C9CED9; background:#fff; color:#555; font-size:14px; font-weight:500; line-height:100%; letter-spacing:-0.28px;}

.card-title{font-size:18px; font-weight:600; line-height:140%; letter-spacing:-0.36px; margin:0 0 16px;}


/* .card-meta{display:flex; flex-wrap:wrap; gap:100px;}
.meta-row{display:flex; align-items:flex-start; gap:25px; font-size:15px; color:#333; line-height:140%; letter-spacing:-0.3px;}
.meta-key{position:relative; padding-left:10px; font-weight:600;}
.meta-key:before{content:"¡¤"; position:absolute; left:0; top:0;}
.meta-val{color:#444; font-weight:500;}

@media (min-width:1200px){
	.card-meta{
		display:grid; grid-template-columns:290px minmax(0, 1fr); column-gap:40px; row-gap:8px;
	}
	.meta-row{min-width:0; gap:20px;}
} */

.card-meta{display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); column-gap:40px; row-gap:8px;}
.meta-row{display:grid; grid-template-columns:52px minmax(0, 1fr); align-items:start; gap:0; min-width:0; font-size:15px; color:#333; line-height:140%; letter-spacing:-0.3px;}
.meta-key{position:relative; padding-left:10px; font-weight:600;}
.meta-key:before{content:"¡¤"; position:absolute; left:0; top:0;}
.meta-val{color:#444; font-weight:500; min-width:0; word-break:break-word;}

@media (min-width:1200px){
	.card-meta{grid-template-columns:290px minmax(0, 1fr); column-gap:40px; row-gap:8px;}
}

@media (max-width:1199px) and (min-width:768px){
	.card-meta{grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); column-gap:24px; row-gap:8px;}
	.meta-row{grid-template-columns:52px minmax(0, 1fr);}
}

@media (max-width:767px){
	.card-meta{display:flex; flex-direction:column; gap:8px;}
	.meta-row{display:grid; grid-template-columns:46px minmax(0, 1fr); font-size:14px;}
}


.card-side{grid-area:side; display:flex; align-items:center; justify-content:center; padding:0 16px 0 0;}
.status-circle{float:right; margin-top:23px; display:flex; align-items:center; justify-content:center; width:80px; height:80px; border-radius:999px; font-size:15px; font-weight:600; line-height:140%; letter-spacing:-0.3px;}
.status-circle--open{border:1px solid var(--key-color); color:var(--key-color); background:#fff;}
.status-circle--closed{border:1px solid #7E7E7E; color:#7E7E7E; background:#fff;}

.status-pill{min-width:58px; text-align:center; padding:6.5px 0; border-radius:999px; font-size:13px; font-weight:700; line-height:100%; letter-spacing:-0.26px;}
.status-pill--open{border:1px solid var(--key-color); color:var(--key-color); background:#fff;}
.status-pill--closed{border:1px solid #7E7E7E; color:#7E7E7E; background:#fff;}

.more-wrap{display:flex; justify-content:center; margin:40px 0 0;}
.btn-more{display:inline-flex; align-items:center; justify-content:center; gap:8px; width:160px; height:40px; border:1px solid #777; border-radius:4px; background:#fff; font-size:14px; font-weight:500; line-height:150%; letter-spacing:-0.28px; cursor:pointer;}
.ico-down{display:inline-block; width:8px; height:8px; border-right:1.5px solid #333; border-bottom:1.5px solid #333; transform:rotate(45deg); margin-top:-3px;}

/* =========================
VIEW PAGE
========================= */
/* .lecture-view{padding:0 0 80px;} */
.view-title{margin:0 auto 14px; max-width:1200px; font-size:clamp(16px, calc(16px + (18 - 16) * ((100vw - 360px) / 840)), 18px); font-weight:600;}
.view-card{border:1px solid #E6E9EF; border-radius:10px; background:#fff; padding:32px;}

.view-info{background:#F7F7F7; border-radius:10px; padding:30px; display:flex; justify-content:space-between; align-items:center;}
.info-list{margin:0; padding:0; list-style:none;}
.info-item{display:flex; gap:14px; font-size:15px; line-height:1.6;}
.info-item + .info-item{margin-top:8px;}
.info-key{min-width:60px; font-weight:600;}
.info-val{font-weight:400;}

.view-note{margin:16px 0 0; font-size:13px; color:#7E7E7E; font-weight:400; line-height:140%; letter-spacing:-0.52px;}
.view-cta{display:flex; justify-content:center;}
.btn-reserve{display:inline-flex; align-items:center; justify-content:center; width:90px; height:90px; border-radius:999px; font-size:16px; font-weight:600; line-height:140%; letter-spacing:-0.32px; text-decoration:none; background:var(--key-color); color:#fff;}
.btn-reserve .btn-arrow{display:inline-block; width:7px; height:7px; border-right:2px solid #fff; border-bottom:2px solid #fff; transform:rotate(-45deg); margin-left:7px; margin-top:1px;}
.btn-reserve.is-disabled{background:#E9E9E9; color:#7E7E7E; pointer-events:none;}
.btn-reserve.is-done{background:#9AA3B2; color:#fff; pointer-events:none;}
.btn-reserve.is-disabled .btn-arrow,.btn-reserve.is-done .btn-arrow{display:none;}

.view-speakers{padding:32px 0 0;}
.speaker-list{display:flex; justify-content:center; gap:8px; margin:0; padding:0; list-style:none;}
.speaker-item{width:230px; text-align:center;}
.speaker-thumb{width:100%; aspect-ratio:1/1; overflow:hidden; background:#fff;}
.speaker-thumb img{width:100%; height:100%; object-fit:cover; display:block;}
.speaker-name{margin-top:10px; font-size:15px; font-weight:400; line-height:140%; letter-spacing:-0.3px;}

.view-img{padding:32px 0 0; text-align:center;}
.view-img img{width:100%; max-width:900px;}

.view-bottom{display:flex; justify-content:center; margin:16px 0 0;}
.btn-list{display:inline-flex; align-items:center; justify-content:center; width:160px; height:40px; border:1px solid #C9CDD6; border-radius:4px; background:#fff; font-size:15px; font-weight:600; line-height:140%; letter-spacing:-0.3px; text-decoration:none;}

/* =========================
LAYER (reserve-layer)
========================= */
.reserve-layer{display:none; position:fixed; inset:0; z-index:20000;}
.reserve-layer.is-open{display:block;}
.reserve-layer__dim{position:absolute; inset:0; background:rgba(0,0,0,0.6);}
.reserve-layer__dialog{
	position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:648px; max-height:calc(100vh - 24px);
	background:#fff; border-radius:18px; overflow:hidden; 
	box-shadow:0 20px 60px rgba(0,0,0,0.18); display:flex; flex-direction:column; 
}
.reserve-layer__head{flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; padding:22px 24px 0;}
.reserve-layer__title{margin:0; font-size:18px; font-weight:600; color:#333; line-height:140%; letter-spacing:-0.36px;}
.reserve-layer__close{width:40px; height:40px; border:0; background:transparent; cursor:pointer; position:relative;}
.reserve-layer__close:before,.reserve-layer__close:after{content:""; position:absolute; left:50%; top:50%; width:28px; height:2px; background:#333; transform-origin:center;}
.reserve-layer__close:before{transform:translate(-50%,-50%) rotate(45deg);}
.reserve-layer__close:after{transform:translate(-50%,-50%) rotate(-45deg);}
.reserve-layer__body{flex:1 1 auto; min-height:0; padding:20px 0 32px; overflow:auto; -webkit-overflow-scrolling:touch;}
html.is-layer-open,body.is-layer-open{overflow:hidden;}


@media (max-width:767px){
	.reserve-layer__dialog{
		width:100% !important;
		height:100% !important;
		border-radius: 0 !important;
		max-height:100vh !important;
	}
}

/* ÆË¾÷ ³»ºÎ ½ºÅ©·Ñ¹Ù ¾ã°Ô (reserve layer body) */
.reserve-layer__body{scrollbar-width:thin; scrollbar-color:rgba(0,0,0,.25) transparent;} /* Firefox */
.reserve-layer__body::-webkit-scrollbar{width:6px; height:6px;} /* Chrome/Edge/Safari */
.reserve-layer__body::-webkit-scrollbar-track{background:transparent;}
.reserve-layer__body::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25); border-radius:999px;}
.reserve-layer__body::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.35);}
/* ÆË¾÷ ³»ºÎ ½ºÅ©·Ñ¹Ù ¾ã°Ô (reserve layer body) */
.school-result__list{scrollbar-width:thin; scrollbar-color:rgba(0,0,0,.25) transparent;} /* Firefox */
.school-result__list::-webkit-scrollbar{width:6px; height:6px;} /* Chrome/Edge/Safari */
.school-result__list::-webkit-scrollbar-track{background:transparent;}
.school-result__list::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25); border-radius:999px;}
.school-result__list::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.35);}

/* summary */
.reserve-summary{padding:0 24px;}
.reserve-summary .summary-inner{border:1px solid var(--key-color); border-radius:6px; padding:20px;}
.reserve-summary__tit{margin:0 0 14px; font-size:18px; font-weight:600;}
.reserve-summary__list{margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:10px;}
.reserve-summary__list li{display:flex; gap:10px; font-size:15px; font-weight:400; line-height:140%; letter-spacing:-0.3px;}
.reserve-summary__list .k{flex:0 0 60px; font-weight:600;}
.reserve-summary__list .v{flex:1; font-weight:500;}

/* guide */
.reserve-guide{margin:20px 0 24px;}
.guide-inner{padding:0 24px;}
.reserve-guide p{position:relative; padding-left:10px; font-size:13px; color:#7E7E7E; font-weight:400; line-height:140%; letter-spacing:-0.26px;}
.reserve-guide p:before{content:"\00B7"; position:absolute; left:0; top:0;}

.line{border:0; height:8px; opacity:0.3; background:var(--line, #DBDEE5);}
.undline{text-decoration:underline;}

/* fields */
.reserve-form{margin:0;}
.reserve-field{padding:10px 24px;}
.reserve-field:first-of-type{padding:24px 24px 10px;}
.reserve-field__label{font-size:15px; font-weight:600; letter-spacing:-0.3px; margin:0 0 6px;}
.req{color:#ED2024; font-weight:600;}
.reserve-inline{display:flex; flex-wrap:wrap; gap:32px;}

.reserve-phone{display:grid; grid-template-columns:1fr 1fr 1fr; gap:8px;}
.reserve-school{display:grid; grid-template-columns:1fr 120px; gap:12px;}
.btn-school{height:42px; border:0; border-radius:6px; background:#9AA3B2; color:#fff; font-size:14px; font-weight:600; cursor:pointer;}

.reserve-layer .custom-select{display:block; width:100%;}
.reserve-layer .custom-select .select-btn{min-width:0; width:100%;}

/* privacy */
.reserve-privacy{margin-top:14px; overflow:hidden;}
.reserve-privacy__row{display:flex; align-items:center; justify-content:space-between; gap:12px; padding:6px 24px;}
.reserve-privacy__row .lnk{font-size:15px; font-weight:600; text-decoration:underline; background:transparent; border:0; cursor:pointer; padding:0;}

/* submit */
.reserve-submit{padding-top:24px; text-align:center;}
.btn-submit{width:100%; max-width:206px; height:42px; border:0; border-radius:10px; background:#2F2F2F; color:#fff; cursor:pointer; margin:0 auto; font-size:15px; font-weight:600; line-height:140%; letter-spacing:-0.28px;}

/* checkbox */
/* checkbox */
.chk-row{position:relative; display:flex; align-items:center; gap:10px; cursor:pointer; user-select:none;}
.chk-row input{position:absolute; opacity:0; pointer-events:none;}
.chk-ui{flex:0 0 22px; width:22px; height:22px; border:1px solid #CFD5DC; border-radius:4px; background:#fff; display:inline-block; position:relative; box-sizing:border-box;}

/* Ã¼Å© »óÅÂ */
.chk-row input:checked + .chk-ui{background:var(--key-color); border-color:var(--key-color);}
.chk-row input:checked + .chk-ui::after{content:""; position:absolute; left:50%; top:50%; width:7px; height:12px; border:2px solid #fff; border-top:0; border-left:0; transform:translate(-50%,-55%) rotate(45deg); box-sizing:border-box;}

.chk-txt{font-size:14px; font-weight:500; line-height:150%; white-space:nowrap;}

/* radio */
.rdo-row{position:relative; display:flex; align-items:center; gap:10px; cursor:pointer; user-select:none;}
.rdo-row input{position:absolute; opacity:0; pointer-events:none;}
.rdo-ui{width:22px; height:22px; border-radius:50%; background:#CFD5DC; display:inline-block; position:relative; box-sizing:border-box; flex:0 0 auto;}
.rdo-ui:after{content:""; position:absolute; left:50%; top:50%; width:10px; height:10px; border-radius:50%; background:#fff; transform:translate(-50%,-50%);}
.rdo-row input:checked + .rdo-ui{background:var(--key-color);}
.rdo-txt{font-size:15px; font-weight:500; line-height:150%; letter-spacing:-0.3px;}
.rdo-row input:focus-visible + .rdo-ui{box-shadow:0 0 0 3px rgba(44,91,246,0.18);}
.rdo-row.is-disabled{cursor:default;}
.rdo-row.is-disabled .rdo-ui{background:#D7D7D7;}
.rdo-row.is-disabled .rdo-txt{color:#9A9A9A;}
.rdo-row.is-disabled input:checked + .rdo-ui{background:#C9D3FF;}

/* =========================
ALARM LAYER
========================= */

.alarm-layer .reserve-layer__title{font-size:18px;}
.alarm-summary{padding:0 24px;}
.alarm-summary .alarm-inner{border:1px solid var(--key-color); border-radius:6px; padding:20px;}
.alarm-summary__tit{margin:0 0 10px; font-size:18px; font-weight:600; color:var(--key-color);}
.alarm-summary__desc{margin:0; font-size:15px; color:#333; line-height:1.55;}

.alarm-address{display:flex; flex-direction:column; gap:10px;}
.alarm-zip{display:grid; grid-template-columns:1fr 120px; gap:10px;}

.alarm-campus{margin-top:14px; overflow:hidden;}
.alarm-campus__group{padding:0 24px; margin-bottom:10px;}
.alarm-campus__group + .alarm-campus__group{margin-top:20px;}
.alarm-campus__label{font-size:13px; font-weight:600; margin:0 0 10px;}

.alarm-campus__grid{display:grid; gap:10px 14px;}
.alarm-campus__grid--wide{display:grid; gap:10px 14px;}

.alarm-campus .chk-row{gap:8px; min-width:0;}
.alarm-campus .chk-txt{font-size:13px; font-weight:600; word-break:keep-all; }


.alarm-campus__grid{grid-template-columns:repeat(7, minmax(0, 1fr));}
.alarm-campus__grid--wide{grid-template-columns:repeat(4, minmax(0, 1fr));}
/* TA */
@media (min-width:768px) and (max-width:1199px){
	.alarm-campus__grid{grid-template-columns:repeat(auto-fit, minmax(110px, 1fr));}
	.alarm-campus__grid--wide{grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));}
}
/* MO */
@media (max-width:767px){
	.alarm-campus__group{padding:0 16px;}
	.alarm-campus__grid{grid-template-columns:repeat(auto-fit, minmax(96px, 1fr)); gap:10px 12px;}
	.alarm-campus__grid--wide{grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));}
}

@media (max-width:420px){
	.alarm-campus__grid--wide{
		grid-template-columns:1fr;
	}
}
/* =========================
CHECK LAYER
========================= */
.check-layer .reserve-layer__title{font-size:18px;}
.check-layer .auth-section{padding:0 24px 28px;}
.check-layer .check-section{padding:28px 24px 0;}

.check-notice{margin-bottom:28px;}
.check-notice .notice-inner{background:#F1F6FF; border-radius:8px; padding:14px 16px;}
.check-notice__txt{margin:0; font-size:15px; font-weight:600; display:flex; align-items:flex-start; gap:16px; line-height:1.4; letter-spacing:-0.3px;}
.check-notice__ico{display:inline-flex; width:20px; height:20px; align-items:center; justify-content:center;}

.check-auth + .check-auth{margin-top:12px;}
.check-auth__label{font-size:14px; font-weight:600; color:#333; margin:0 0 10px;}
.check-auth__row{display:grid; grid-template-columns:1fr 120px; gap:10px; align-items:center;}
.check-msg{color:#7E7E7E; font-size:13px; font-weight:400; line-height:140%; letter-spacing:-0.52px; margin-top:6px;}
.check-msg.time{color:var(--blue, #2C5BF6);}


.check-auth__btn{height:42px; border:0; border-radius:6px; background:#9AA3B2; color:#fff; font-size:14px; font-weight:600; cursor:pointer; white-space:nowrap;}
.check-auth__btn.is-active{background:var(--key-color);}

.check-auth__row .status{font-size:14px; font-weight:600; line-height:140%; letter-spacing:-0.28px;color:#7E7E7E;}
.check-auth__row .status.link{text-decoration:underline; color:var(--blue, #2C5BF6);}
.check-auth__row .status.check{color:#333;}

.check-section__head{margin:0 0 12px;}
.check-section__tit{font-size:15px; font-weight:600; margin-bottom:2px;}
.check-section__sub{margin:0; font-size:14px; font-weight:400; line-height:140%; letter-spacing:-0.28px;}

.check-list{display:flex; flex-direction:column; gap:12px; margin-top:12px;}
.check-card{border:1px solid #DBDEE5; border-radius:6px; background:#fff; padding:16px;}
.check-card__title{font-size:15px; font-weight:600; margin:0 0 12px;}

.check-info{margin:0; padding:0; list-style:none;}
.check-info__row{display:flex; gap:10px; font-size:15px; line-height:1.6; color:#444;}
.check-info__row + .check-info__row{margin-top:6px;}
.check-info__row .k{flex:0 0 60px; font-weight:600;}
.check-info__row .v{flex:1; font-weight:500; color:#444; min-width:0;}

.check-divider{height:1px; background:#7E7E7E; margin:16px 0 0;}
.check-table{margin:0; padding:0; list-style:none;}
.check-table__row{display:flex; gap:10px; padding:10px 0; border-bottom:1px solid #DBDEE5; font-size:14px; color:#444;}
.check-table__row .k{flex:0 0 90px; font-weight:600;}
.check-table__row .v{font-weight:500; color:#444; text-align:right; min-width:0;}

.check-card__cta{display:flex; justify-content:center; padding:16px 0 0;}
.btn-cancel{min-width:206px; max-width:100%; height:42px; border:0; border-radius:6px; background:#9AA3B2; color:#fff; font-size:14px; font-weight:600; cursor:pointer;}

.no-list p{display:flex; height:160px; justify-content:center; align-items:center; background:#F5F5F5; color:rgba(126,126,126,0.3); font-size:15px; font-weight:600; line-height:140%; letter-spacing:-0.3px;}

/* =========================
POPOVER (pop-layer)
========================= */
.pop-layer{display:none; position:fixed; inset:0; z-index:30000; --pop-top:50%; --pop-left:50%; --pop-tx:-50%; --pop-ty:-50%; --pop-w:min(640px, calc(100vw - 24px)); --pop-max-h:calc(100vh - 24px);}
.pop-layer.is-open{display:block;}
.pop-layer__dialog{
	position:absolute; top:var(--pop-top); left:var(--pop-left); transform:translate(var(--pop-tx), var(--pop-ty)); 
	width:var(--pop-w); max-height:var(--pop-max-h); 
	background:#fff; border-radius:8px; border:1px solid #333; box-shadow:4px 4px 4px 0 rgba(0,0,0,0.10); overflow:hidden; 
	display:flex; flex-direction:column;
}
.pop-layer__head{display:flex; align-items:center; justify-content:space-between; padding:16px 16px 8px 16px;}
.pop-layer__title{margin:0; font-size:18px; font-weight:600; line-height:140%; letter-spacing:-0.36px; color:#333;}
.pop-layer__close{width:24px; height:24px; border:0; background:transparent; cursor:pointer; position:relative;}
.pop-layer__close:before,.pop-layer__close:after{content:""; position:absolute; left:50%; top:50%; width:28px; height:2px; background:#333; transform-origin:center;}
.pop-layer__close:before{transform:translate(-50%,-50%) rotate(45deg);}
.pop-layer__close:after{transform:translate(-50%,-50%) rotate(-45deg);}
.pop-layer__body{flex:1 1 auto; min-height:0; overflow:auto; padding:16px; -webkit-overflow-scrolling:touch;}

#schoolLayer{--pop-w:min(500px, calc(100vw - 24px));}
#privacyLayer{--pop-w:min(400px, calc(100vw - 24px));}

@media (max-width:767px){
	.pop-layer__dialog{
		max-width:498px;
	}
	#schoolLayer{
		--pop-w:calc(100vw - 24px); --pop-max-h:calc(100vh - 24px);
	}
	#privacyLayer{--pop-w:calc(100vw - 24px); --pop-max-h:calc(100vh - 24px);}
}

/* =========================
	PRIVACY POPOVER (PC only, anchor to row)
	°³ÀÎÁ¤º¸ ·¹ÀÌ¾î(#privacyLayer, #privacyLayerOpt)´Â ±âº»ÀûÀ¸·Î fixed Áß¾Ó ¸ð´Þ ±¸Á¶ÀÎµ¥ 
	PC¿¡¼­´Â Ã¼Å©¹Ú½º Çà(.reserve-privacy__row)À» ±âÁØÀ¸·Î ¶ß´Â popover ÇüÅÂ·Î »ç¿ëÇÏ±â À§ÇØ 
	positionÀ» absolute·Î ÀçÁ¤ÀÇÇÏ°í Áß¾ÓÁ¤·Ä ½ºÅ¸ÀÏ(top/left/transform)À» Á¦°ÅÇÔ
	¸ð¹ÙÀÏÀº ±âÁ¸ ¸ð´Þ ±¸Á¶ À¯Áö
========================= */

@media (min-width:768px){
	/* anchor ±âÁØ: °³ÀÎÁ¤º¸ ÇàÀ» ±âÁØÀ¸·Î ·¹ÀÌ¾î À§Ä¡ °è»ê */
	.reserve-privacy__row{position:relative;}
	/* popover°¡ ºÎ¸ð ¿µ¿ª¿¡¼­ Àß¸®Áö ¾Êµµ·Ï overflow ÇØÁ¦ */
	.reserve-privacy{overflow:visible;}

	/* ÇÊ¼ö °³ÀÎÁ¤º¸ ·¹ÀÌ¾î popover Ã³¸® */
	.reserve-privacy__row #privacyLayer{position:absolute !important; inset:auto !important;}
	.reserve-privacy__row #privacyLayer.is-open{display:block;}
	.reserve-privacy__row #privacyLayer .pop-layer__dialog{max-width:400px; position:static !important; top:auto !important; left:auto !important; transform:none;}
	/* Ã¼Å©¹Ú½º Çà ±âÁØ ¿ìÃø Á¤·Ä + »ó´Ü Ç¥½Ã */
	.reserve-privacy__row.pop-anchor--right #privacyLayer{right:24px !important; bottom:calc(100% + 0px) !important;}

	/* ¼±ÅÃ °³ÀÎÁ¤º¸ ·¹ÀÌ¾î popover Ã³¸® (ÇÊ¼ö¿Í µ¿ÀÏ ±¸Á¶) */
	.reserve-privacy__row #privacyLayerOpt{position:absolute !important; inset:auto !important;}
	.reserve-privacy__row #privacyLayerOpt.is-open{display:block;}
	.reserve-privacy__row #privacyLayerOpt .pop-layer__dialog{max-width:400px; position:static !important; top:auto !important; left:auto !important; transform:none;}
	.reserve-privacy__row.pop-anchor--right #privacyLayerOpt{right:24px !important; bottom:calc(100% + 0px) !important;}
}


/* school pop */
.pop-school .pop-layer__body{padding:0;}
.pop-school .school-box{padding:24px 30px; background:#F1F3F8;}
.pop-school .school-form{margin:0;}
.pop-school .school-type{display:flex; align-items:center; justify-content:center; gap:18px; margin:0 0 10px; padding:0; border:0;}
.pop-school .school-type .rdo-row{margin:0;}
.pop-school .school-search{display:grid; grid-template-columns:1fr 120px; gap:10px; align-items:center;}
.pop-school .school-inp{width:100%; height:40px; border:1px solid #DBDEE5; border-radius:6px; padding:0 14px; font-size:13px; background:#fff; color:#333; box-sizing:border-box;}
.pop-school .school-inp::placeholder{color:#9AA3B2; opacity:1;}
.pop-school .school-btn{height:40px; border:0; border-radius:6px; background:#9AA3B2; color:#fff; font-size:13px; font-weight:600; cursor:pointer; white-space:nowrap;}
.pop-school .school-btn:disabled{background:#D7DBE2; cursor:default;}
.pop-school .school-result{padding:20px 16px 16px;}
.pop-school .school-result__tit{margin:0 0 10px; font-size:15px; font-weight:600; color:#333;}
.pop-school .school-result__line{height:1px; background:#DBDEE5;}
.pop-school .school-result__msg{margin:30px 0; font-size:14px; color:#7E7E7E; text-align:center;}
.pop-school .school-result__list{margin:10px 0; padding:0; list-style:none; max-height:140px; overflow:auto; -webkit-overflow-scrolling:touch;}
.pop-school .school-result__item + .school-result__item{margin-top:14px;}
.pop-school .school-result__btn{width:100%; text-align:left; padding:0; border:0; background:transparent; cursor:pointer; font-size:15px; line-height:1.4; color:#333;}
.pop-school .school-result__btn .school-result__addr{color:#333; font-weight:500;}
.pop-school .school-result__btn .school-result__name{font-weight:600;}
.pop-school .school-result__btn.is-on,.pop-school .school-result__btn.is-on .school-result__addr,.pop-school .school-result__btn.is-on .school-result__name{color:var(--key-color);}

/* privacy pop */
.pop-privacy .pop-layer__body{padding:14px 16px 18px;}
.pop-privacy .privacy-doc{color:#333;}
.pop-privacy .privacy-lead{margin:0 0 14px; font-size:14px; line-height:1.6; color:#555; word-break:keep-all;}
.pop-privacy .privacy-dl{margin:0; padding:0;}
.pop-privacy .privacy-dt{margin:14px 0 6px; font-size:14px; font-weight:600; color:#333;}
.pop-privacy .privacy-dt:nth-child(1){ margin-top:0;}
.pop-privacy .privacy-dd{margin:0; font-size:13px; line-height:1.6; color:#555; word-break:keep-all;}

/* =========================
SYSTEM POPUP (ÆäÀÌÁöÇü)
========================= */
.system-layer.reserve-layer{display:block !important; position:static !important;}
.system-layer .reserve-layer__dialog{position:relative; left:auto; top:auto; transform:none; width:100%; margin:0 auto; max-height:100%;}


/* =========================
RESPONSIVE
========================= */
@media (max-width:1199px){
	.filter-box{border-radius: 0;}
	.lecture-wrap .filter-box{
		width:100vw;
		margin-left:calc(50% - 50vw);
		margin-right:calc(50% - 50vw);
		border-radius:0;
	}
	.btn-reserve{width:100%; height:42px; border-radius:6px; font-size:15px;}
	.view-cta{margin-top:12px; flex-direction:column;}
	.view-bottom{margin:40px 0 0;}
}
@media (max-width:1199px) and (min-width:768px){
	.lecture-wrap .inner{
		padding:0 16px 60px;
	}
	.tab.tab-e{
		margin-bottom: 0;
	}
	.tab.tab-e .tab-list{max-width:100%;}

	.lecture-card{grid-template-columns:1fr 100px;}
	.status-circle{width:68px; height:68px;}
	.card-title{font-size:17px;}

	.view-card{padding:18px;}
	.speaker-list{gap:22px;}
}
@media (max-width:767px){
	.lecture-wrap .inner{padding:0 0 60px;}
	.lecture-list{padding:0 16px;}
	.empty-list{padding:0 0;}
	.tab.tab-e{margin-bottom:0;}
	.filter-box{margin-top:0;}
	.lecture-card{padding:16px;}
	.card-head{padding:6px 16px; /*margin:0 0 8px;*/}
	.card-tags{margin:0 0 8px;}
	.tag{padding:0 8px;font-size: 13px;}
	.card-body{padding:0;}
	.card-title{margin:0 0 10px;font-size: 16px;}

	.meta-row{font-size: 14px;}
	.card-campus{font-size: 16px;}
	.meta-key{min-width:46px;}
	.card-side{display:none;}
	.empty-box{min-height:180px;}

	.view-title{margin:24px 16px 16px;}
	.view-card{margin:0 16px; padding:16px;}
	.view-info{ padding:16px;}

	.reserve-layer__head{padding:18px 16px 0;}
	.reserve-summary{padding:0 16px;}
	.guide-inner{padding:0 16px;}
	.reserve-field{padding:10px 16px;}
	.reserve-field:first-of-type{padding:16px 16px 10px;}
	.check-layer .auth-section {
		padding: 0 16px 28px;
	}
	.alarm-summary{padding:0 16px}
	.check-layer .check-section {
		padding: 28px 16px 0;
	}
}


.reserve-school .input-basic[readonly]{background:#F5F5F5; color:#888; cursor:default;}
.reserve-school .input-basic[readonly]:focus{outline:none; border-color:#DBDEE5;}

/* =========================
ETC
========================= */
.btn-ex-wrap{ margin:30px 0;gap:10px;}
.btn-ex{display:inline-flex; align-items:center; justify-content:center; height:40px; padding:0 8px; border-radius:6px; font-size:13px; background:var(--key-color); color:#fff;}



figure.image{
	text-align: center;
	padding: 32px 0 0;
}
figure.image img{
	width:100%; 
}


/* ÁÖ¼Ò°Ë»ö·¹ÀÌ¾î */
#wrap{
	display:none;
	box-sizing:border-box;
	width:calc(100% - 48px);
	margin:-104px 24px 0;
	height:444px;
	position:relative;
	border:1px solid #ddd;
	z-index:1000;
}

@media (max-width:767px){
	#wrap{
		width:calc(100% - 32px);
		margin:-104px 16px 0;
	}
}
/* // ÁÖ¼Ò°Ë»ö·¹ÀÌ¾î */