.ticketbox-wrap {padding: 60px 23px 45px; animation: fade_in 3s;}
.ticketbox_success-wrap {padding: 60px 23px 60px; animation: fade_in 3s;}

.main-wrapper {padding-bottom: 0px;} /*120px*/
.subtitle {color: #5D67CF; margin-top: 16px;}
.subtitle span {font-size: 16px; color: #87929C;}
.subtitle.need_waiting {margin-bottom: 30px; line-height: 1.5;}

.subtitle.check_cnt {
    display: flex; justify-content: center; column-gap: 10px; width: fit-content; margin: 25px auto 0; background: linear-gradient(135deg, #E8EAFF 0%, #F0F2FF 50%, #E8EAFF 100%);
    padding: 8px 16px; border-radius: 12px; box-shadow: 0 2px 8px rgba(93, 103, 207, 0.15);
 }
.subtitle.check_cnt * { color: #111111; }
.check_cnt .check_wrap { display: flex; gap: 1px; }
.check_cnt .check_wrap div:first-of-type , .check_cnt .check_wrap div:first-of-type > * { color: #5D67CF; }
.today_current { font-weight: 900; }

.ticket-status-wrap {display: flex; justify-content: center; gap: 5px; margin-bottom: 15px;}
.ticket_status { overflow: hidden; font-weight: 600; font-size: 18px; }
.ticket_status img { width: 113px; }

.ticket_btn {display: none; border-radius: 16px; font-size: 18px; margin: 32px auto 20px; font-weight: 600; min-height: 56px; min-width: 200px; background: #1A3A6D; color: #fff; line-height: 26px; padding-left: 24px; padding-right: 24px;}
a.ticket_btn {height: 56px; width: 150px; line-height: 56px; margin-top: 45px;}
.ticket_btn.-done { background: #888; }
.ticket_btn.countdown-active { animation: countdown-pulse 1s ease-in-out forwards; }
.ticket_btn.countdown-base { color : #1A3A6D !important; }
.success_btn {height: 56px; width: 150px; margin-top: 45px; display: flex; align-items: center; justify-content: center;}

/* 카운트다운 버튼에 약한 그라데이션 효과 */
@keyframes countdown-pulse {
    0% {
        background: #C8D4F5;
    }
    50% {
        background: #D2DCFA;
    }
    100% {
        background: #C8D4F5;
    }
}

.remain_time {display: none; background: #FFF9BF; color: #3D3D3D; border-radius: 20px; margin: 32px auto 47px; padding: 37.5px;}
.remain_time b {font-size: 20px; color: #000000;}
.ticket_status img {margin-top: 10px;}
.box-img {margin-bottom: 25px;}

.every_hr {display: none; font-weight: 600;}
.every_hr span {font-size: 16px; color: #797979;}
.anker {background: #00000060; position: absolute; bottom: 0; left: 0; z-index: 1; width: 100%; aspect-ratio: auto 1;}

.point-banner {display: none; position: fixed; top: -30px; left: 0; right: 0; background-color: #3A43BB; padding: 4px 12px; height: 36px; transition: all 0.5s ease-out; z-index: 5; box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08); font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, Roboto, sans-serif; cursor: pointer;}
.banner-content {display: flex; justify-content: center; align-items: center; max-width: 768px; height: 100%; margin: 0 auto; gap: 12px;}
.banner-text {color: #FFFFFF; font-size: 14px; font-weight: 700; text-align: right; white-space: nowrap; display: flex; align-items: center;}
.banner-button {background: #FFFFFF; color: #3A43BB; padding: 8px 16px; border-radius: 20px; border: none; font-size: 14px; font-weight: 700; cursor: pointer; box-shadow: 0 2px 4px rgba(139, 127, 249, 0.2); transition: all 0.2s ease; white-space: nowrap; min-width: 80px; height: fit-content; font-family: inherit; display: flex; align-items: center; justify-content: center;}
.banner-button:hover {transform: scale(1.02);}
.point-banner.after-bonus {height: 30px;}
.point-banner.after-bonus .banner-content {padding: 4px 12px;}
.point-banner.after-bonus .banner-text {font-size: 14px; font-weight: normal;}
.point-banner.after-bonus .banner-close {position: absolute; right: 12px; top: 50%; transform: translateY(-50%); width: 16px; height: 16px; background: none; border: none; cursor: pointer; padding: 0; display: flex; align-items: center; justify-content: center; color: #666; font-size: 16px;}
.point-banner.after-bonus .banner-close:hover {color: #333;}

.alert-layer {position: fixed; top: 75%; left: 50%; transform: translate(-50%, -50%); background-color: #FFE8E8; border: 1px solid #FFB6B6; border-radius: 8px; padding: 8px; width: 90%; max-width: 280px; box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1); z-index: 8;}
.alert-message {color: #D32F2F; font-size: 12px; text-align: center;}
.close-button {position: absolute; top: 4px; right: 4px; background: none; border: none; color: #888; cursor: pointer; font-size: 16px;}
.inquiry-btn {width: 160px; padding: 8px 0; background: #888; color: #fff; border: none; border-radius: 8px; font-size: 12px; font-weight: 400; cursor: pointer; margin-top: 16px; text-align: center; transition: background-color 0.2s ease;}
.inquiry-btn:hover {background: #555;}
.bottom-btn-base { display: flex; gap: 10px; }

.share-buttons { display: flex; flex-direction: column; align-items: center; margin-bottom: 60px; }
.share-buttons h1 { color: #000; background: transparent; margin: 0 0 20px 0; padding: 0; font-size: 20px; font-weight: 700; line-height: 1.2; text-align: center; }
.share-buttons-container { display: flex; justify-content: center; align-items: center; gap: 20px; }
.share-btn { background: none; border: none; padding: 0; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.share-btn img { width: 60px; height: 60px; max-width: 100%; display: block; }
.share-btn:hover { opacity: 0.8; transform: scale(1.05); transition: all 0.2s ease; }

/* 광고 도움말 팝업 */
.ad-help-popup { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.6); z-index: 9999; cursor: pointer; }
.ad-help-popup-content { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); cursor: default; }
.ad-help-popup-content img { display: block; width: calc(100vw - 30px); max-width: 570px; height: auto; max-height: calc(100vh - 30px); object-fit: contain; }

/* 프로모션 */
.winner-ticker-banner {display:flex;align-items:center;gap:6px;width:calc(100% - 32px);max-width:400px;height:35px;margin:3px auto 14px;padding:0 11px;border-radius:10px;background:#f0f2f5;box-sizing:border-box;overflow:hidden;transform:translateY(-16px);user-select:none;}
.winner-ticker-icon {flex-shrink:0;font-size:15px;line-height:1;}
.winner-ticker-viewport {position:relative;flex:1;height:16px;overflow:hidden;text-align:left;}
.winner-ticker-list {list-style:none;margin:0;padding:0;transition:transform 0.45s ease;}
.winner-ticker-item {height:16px;line-height:16px;font-size:14px;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.winner-ticker-item .winner-name {font-weight:400;}
.winner-ticker-item .winner-message {font-weight:700;}

/* 프로모션 안내 팝업 */
.promo-modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;justify-content:center;align-items:center;z-index:9999;padding:16px;box-sizing:border-box;opacity:0;transition:opacity .25s ease}
.promo-modal-overlay.is-active{display:flex;opacity:1}
.promo-modal-box{position:relative;width:100%;max-width:250px;max-height:500px;background:#fff;border-radius:18px;box-shadow:0 16px 40px rgba(15,23,42,.25);text-align:center;transform:translateY(12px) scale(.98);transition:transform .28s ease;display:flex;flex-direction:column;overflow:hidden}
.promo-modal-overlay.is-active .promo-modal-box{transform:translateY(0) scale(1)}
.promo-modal-header{position:relative;background:linear-gradient(180deg,#DCEAF8 0%,#EAF2FA 55%,#F4F8FC 100%);padding:22px 18px 0;height:200px;box-sizing:border-box;flex-shrink:0;display:flex;justify-content:center;align-items:flex-start}
.promo-modal-close{position:absolute;top:8px;right:8px;width:28px;height:28px;border:none;background:transparent;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s ease;z-index:2}
.promo-modal-close:hover,.promo-modal-close:focus{outline:none}
.promo-modal-close img{width:18px;height:18px;opacity:.6}
.promo-modal-image{width:90px;height:90px;object-fit:contain;margin-top:14px;position:relative;z-index:0}
.promo-modal-title{position:absolute;left:0;right:0;bottom:14px;margin:0;font-family:'Pretendard Variable','Pretendard',-apple-system,BlinkMacSystemFont,system-ui,sans-serif;font-size:22px;font-weight:900;color:#1A3A6D;line-height:1.2;letter-spacing:-.6px;word-break:keep-all;text-align:center;text-shadow:0 1px 0 rgba(255,255,255,.6);z-index:1}
.promo-modal-body{background:#fff;padding:18px 18px 20px;text-align:left;flex:1;display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden}
.promo-modal-lead{margin:0 0 10px;font-size:13.5px;font-weight:700;color:#1A3A6D;line-height:1.45;letter-spacing:-.2px;word-break:keep-all}
.promo-modal-lead .accent{color:#f5b400}
.pencil-underline{position:relative;display:inline-block;white-space:nowrap;color:inherit;padding:0 2px}
.pencil-underline__deco{position:absolute;left:-4px;right:-4px;bottom:-5px;width:calc(100% + 8px);height:12px;pointer-events:none;overflow:visible}
.pencil-underline__path{stroke:#FF7A6B;stroke-linecap:round;stroke-linejoin:round;fill:none}
.pencil-underline__path--main{stroke-width:2.4;opacity:.95}
.promo-modal-desc{margin:0;padding:0;list-style:none;font-size:11.5px;line-height:1.55;color:#475569;word-break:keep-all}
.promo-modal-desc li{position:relative;padding-left:9px}
.promo-modal-desc li+li{margin-top:5px}
.promo-modal-desc li::before{content:'';position:absolute;left:0;top:8px;width:3px;height:3px;border-radius:50%;background:#94a3b8}
