/* 기존 게시판·회원 폼의 계약을 유지하는 터치 테마 연결 스타일 */
.touch-premium .touch-mypage-content{width:100%;max-width:680px;margin:0 auto 24px;padding:28px;background:#0a2433;color:#f5f7f8;border:1px solid #35515f;border-radius:20px;min-height:55vh}
.touch-premium .touch-mypage .dialog-title{color:inherit;overflow-wrap:anywhere}
.touch-premium .touch-mypage-profile{margin:20px 0;color:#bdcbd3;font-size:14px}
.touch-premium .touch-mypage-profile>div{display:flex;gap:20px;margin:8px 0}
.touch-premium .touch-mypage-profile dt{flex:0 0 48px;font-weight:400}
.touch-premium .touch-mypage-profile dd{margin:0;color:#f5f7f8;overflow-wrap:anywhere;min-width:0}
.touch-premium .touch-mypage .dialog-panel h2{margin:0 0 7px;font-size:16px;color:var(--gold)}
.touch-premium .touch-mypage .dialog-panel p{margin:0}
.touch-premium .touch-mypage .dialog-list a,.touch-premium .touch-mypage .dialog-list button{color:inherit;text-decoration:none;font:inherit;text-align:left;width:100%;cursor:pointer}
.touch-premium .touch-mypage .dialog-list button:hover{border-color:#b69155;background:#173543}
.touch-premium .touch-mypage .dialog-list :is(a,button):focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.touch-premium .touch-member-leave{display:flex;width:max-content;min-height:44px;align-items:center;justify-content:center;margin:14px auto 0;padding:8px 10px;color:#9fb0b9;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.touch-premium .touch-member-leave:hover{color:#f0b9ae}
.touch-premium .touch-member-leave:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:8px}
.touch-premium #touch-dialog .member-leave-warning{margin:0;color:#c5d1d6;font-size:14px;line-height:1.75;word-break:keep-all}
.touch-premium #touch-dialog .member-leave-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-top:22px}
.touch-premium #touch-dialog .member-leave-actions :is(button,a){display:flex;align-items:center;justify-content:center;min-height:50px;padding:11px 16px;border:1px solid #496574;border-radius:10px;background:#102d3b;color:#edf2f5;font:inherit;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}
.touch-premium #touch-dialog .member-leave-actions .member-leave-confirm{border-color:#a9655c;background:#7d3835;color:#fff1ed}
@media(max-width:600px){.touch-premium .touch-mypage-content{padding:22px 18px}.touch-premium .touch-mypage .dialog-title{font-size:22px}}
body.touch-premium{font-family:Arial,"Pretendard",sans-serif;background:#041723;color:#f5f7f8;line-height:1.6}
.touch-premium #hd_login_msg{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.touch-premium .brand,.touch-premium .brand:hover,.touch-premium .nav-item:hover{color:#f5f7f8;text-decoration:none}
.touch-premium .header .icon-button{display:flex;align-items:center;justify-content:center}
.touch-premium .brand-name{white-space:nowrap}
.touch-premium .touch-main h1,.touch-premium .touch-main h2,.touch-premium .touch-main h3{color:inherit}
.touch-premium .touch-main button,.touch-premium #touch-dialog button,.touch-premium .bottom-nav button{font-family:inherit}
.touch-premium .touch-main .button-gold,.touch-premium #touch-dialog .button-gold{color:#202725}
.touch-premium .touch-content{padding:28px;background:#fff;color:#171c29;border:1px solid #294958;border-radius:20px;min-height:55vh;margin-bottom:24px}
.touch-premium .touch-content a{color:inherit}
.touch-premium .touch-content .eyoom-form{color:#171c29}
.touch-premium .touch-content button{color:inherit}
.touch-premium .touch-support{display:flex;min-height:45vh;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 8px;gap:12px}
.touch-premium .touch-support-icon{object-fit:contain;margin-bottom:8px}
.touch-premium .touch-content.touch-support-content{background:#0a2433;color:#f5f7f8;border-color:#35515f}
.touch-premium .touch-support-label{margin:0;color:var(--gold);font-size:12px;letter-spacing:2px}
.touch-premium .touch-support h2{margin:0;color:#f5f7f8;font-size:clamp(20px,4.5vw,28px);line-height:1.5;word-break:keep-all}
.touch-premium .touch-support-description{margin:0;color:#bdcbd3;font-size:14px;word-break:keep-all}
.touch-premium .touch-content .touch-support-chat{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:360px;min-height:56px;box-sizing:border-box;margin-top:16px;padding:14px 12px;border-radius:12px;background:#fee500;color:#191919;font-size:16px;font-weight:700;line-height:1.5;text-decoration:none;word-break:keep-all}
.touch-premium .touch-support-chat img{flex-shrink:0;object-fit:contain}
.touch-premium .touch-content .touch-support-chat:hover{background:#f5db00;color:#191919}
.touch-premium .touch-support-chat:focus-visible{outline:3px solid #fff;outline-offset:4px}
.touch-premium .touch-support-guide{width:100%;max-width:420px;box-sizing:border-box;margin-top:16px;padding:22px 8px 0;border-top:1px solid #35515f}
.touch-premium .touch-support-guide h3{margin:0 0 8px;color:var(--gold);font-size:14px;font-weight:700}
.touch-premium .touch-support-guide p{margin:0;color:#bdcbd3;font-size:13px;line-height:1.8;word-break:keep-all}
@media(max-width:600px){.touch-premium .touch-content.touch-support-content{padding:24px 16px}.touch-premium .touch-support{padding:20px 0}.touch-premium .touch-content .touch-support-chat{font-size:15px}}
.touch-premium .touch-footer{display:none}
.touch-premium .touch-footer-links{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}
.touch-premium .touch-footer-links a{display:inline-flex;min-height:44px;align-items:center;color:#b5c4cc}
.touch-premium .bottom-nav a{display:flex;text-decoration:none}
.touch-premium #touch-dialog{color:#f5f7f8}
.touch-premium #touch-dialog h2{color:#f5f7f8}
.touch-premium #touch-dialog .touch-submenu{padding-left:32px;font-size:13px}
.touch-premium .touch-splash{padding:0;border:0;border-radius:0;width:100vw;max-width:none;height:100dvh;max-height:none;inset:0;margin:0;color:#f4f0e7;background:#041723}
.touch-premium .touch-splash:not([open]){display:none}
.touch-premium .touch-splash .splash{min-height:100dvh;height:100%;padding-bottom:calc(26px + env(safe-area-inset-bottom,0px))}
.touch-premium .touch-splash .continue{width:100%;border:0;background:transparent}
.touch-premium .touch-splash::backdrop{background:#041723}
.touch-premium.touch-auth-page .touch-auth-shell{max-width:none;padding:0}
.touch-premium.touch-auth-page .auth-header{max-width:1180px;padding:0}
.touch-premium.touch-auth-page .auth-layout{padding-bottom:0}
.touch-premium.touch-auth-page .auth-card{min-width:0}
.touch-premium.touch-auth-page .auth-card .eyoom-form{color:#dce4e7;background:transparent;box-shadow:none}
.touch-premium.touch-auth-page .login-box{position:static!important;padding:0!important;width:100%!important;left:auto!important;top:auto!important}
.touch-premium.touch-auth-page .login-box .login-box-in{width:100%;margin:0}
.touch-premium.touch-auth-page .login-box .login-form{padding:0;color:#dce4e7}
.touch-premium.touch-auth-page .login-form>h1{display:none}
.touch-premium.touch-auth-page .auth-card .label{color:#dce4e7;font-size:13px;margin-bottom:8px}
.touch-premium.touch-auth-page .auth-card .eyoom-form .input input,.touch-premium.touch-auth-page .auth-card .eyoom-form .textarea textarea,.touch-premium.touch-auth-page .auth-card .eyoom-form .select select{min-height:50px;background:#041a27;color:#fff;border:1px solid #3a5866;border-radius:11px;font-size:16px}
.touch-premium.touch-auth-page .auth-card .eyoom-form .input input:focus,.touch-premium.touch-auth-page .auth-card textarea:focus{border-color:#edc789;outline:2px solid #edc789;outline-offset:2px}
.touch-premium.touch-auth-page .auth-card .eyoom-form .input input::placeholder{color:#8ca2ad}
.touch-premium.touch-auth-page .auth-card .eyoom-form .icon-append,.touch-premium.touch-auth-page .auth-card .eyoom-form .icon-prepend{top:12px;color:#b3c4cb}
.touch-premium.touch-auth-page .auth-card .login-form .eyoom-form .input .icon-append{top:50%;transform:translateY(-50%)}
.touch-premium.touch-auth-page .login-form .pv-icon{color:#edc789;min-height:44px}
.touch-premium.touch-auth-page .auth-card .eyoom-form .checkbox,.touch-premium.touch-auth-page .auth-card .eyoom-form .radio{color:#bdcbd3;min-height:44px;padding-top:9px;font-size:12px;line-height:1.6}
.touch-premium.touch-auth-page .auth-card .eyoom-form .checkbox i,.touch-premium.touch-auth-page .auth-card .eyoom-form .radio i{top:11px}
.touch-premium.touch-auth-page .login-link a,.touch-premium.touch-auth-page .auth-card a{color:#edc789}
.touch-premium.touch-auth-page .login-link a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
.touch-premium.touch-auth-page .auth-card .btn-e{border:1px solid #876c46;border-radius:10px!important;min-height:44px;background:#123241;color:#f5e5c4;display:inline-flex;align-items:center;justify-content:center;white-space:normal}
.touch-premium.touch-auth-page .auth-card button[type=submit],.touch-premium.touch-auth-page .login-btn .btn-e-lg{min-height:52px;border:0;border-radius:11px!important;background:linear-gradient(115deg,#fff0c7,#e3b46e);color:#1f282b;font-size:15px;font-weight:700;padding:12px 18px}
.touch-premium.touch-auth-page .auth-card .login-btn button{width:100%}
.touch-premium.touch-auth-page .login-box .login-box-in .login-form #sns_login h5{color:#bdcbd3}
.touch-premium.touch-auth-page .auth-card .member-box,.touch-premium.touch-auth-page .auth-card .register-box,.touch-premium.touch-auth-page .auth-card .content-box{background:transparent;border:1px solid #294958;border-radius:12px;overflow:hidden}
.touch-premium.touch-auth-page .auth-card .eyoom-form header,.touch-premium.touch-auth-page .auth-card .eyoom-form footer,.touch-premium.touch-auth-page .auth-card .content-box-header,.touch-premium.touch-auth-page .auth-card .content-box-footer{background:#0b2a38;color:#e4ebef;border-color:#294958}
.touch-premium.touch-auth-page .auth-card h3,.touch-premium.touch-auth-page .auth-card h4,.touch-premium.touch-auth-page .auth-card h5{color:#f5f7f8}
.touch-premium.touch-auth-page .auth-card .note{color:#a8bac4;line-height:1.7}
.touch-premium.touch-auth-page .auth-card .border-top{border-color:#294958!important}
.touch-premium.touch-auth-page .auth-card .contents-box-inner{padding:0}
.touch-premium.touch-auth-page .auth-card .member-agree .panel-body{padding:14px;background:#fff;color:#171c29;border-radius:8px;font-size:13px}
.touch-premium.touch-auth-page .auth-card .col-lg-6{width:100%}
.touch-premium.touch-auth-page .auth-card .input-button .button{background:#123241;border-radius:0 10px 10px 0;color:#f5e5c4;min-height:44px;top:3px}
.touch-premium.touch-auth-page .auth-card .input-button .button input{min-height:0}
.touch-premium.touch-auth-page .auth-card .register-form .eyoom-form fieldset{padding:16px}
.touch-premium.touch-auth-page .auth-card .register-form .privacy-option{border-color:#3a5866;background:#041a27}
.touch-premium.touch-auth-page .auth-card .register-form .privacy-copy,.touch-premium.touch-auth-page .auth-card .register-form .privacy-copy strong{color:#dce4e7;-webkit-text-fill-color:#dce4e7}
.touch-premium.touch-auth-page .auth-card .register-form .privacy-copy small,.touch-premium.touch-auth-page .auth-card .register-form .privacy-note{color:#a8bac4}
.touch-premium.touch-auth-page .auth-card .register-form .privacy-state{border:1px solid #876c46;background:#123241;color:#f5e5c4}
.touch-premium.touch-auth-page .auth-card .register-form .privacy-option input[type=checkbox]{accent-color:#d9ab66}
.touch-premium.touch-auth-page .auth-card .register-form .signup-captcha{border-color:#3a5866;background:#041a27}
.touch-premium.touch-auth-page .auth-card .register-form .signup-captcha #captcha #captcha_key{border-color:#3a5866;background:#061f2d;color:#f5f7f8;-webkit-text-fill-color:#f5f7f8;caret-color:#edc789}
.touch-premium.touch-auth-page .auth-card .register-form .signup-captcha #captcha #captcha_key::placeholder{color:#8ca2ad;-webkit-text-fill-color:#8ca2ad}
.touch-premium.touch-auth-page .auth-card .register-form .signup-captcha #captcha #captcha_mp3,.touch-premium.touch-auth-page .auth-card .register-form .signup-captcha #captcha #captcha_reload{border-color:#876c46;background:#123241;color:#f5e5c4}
.touch-premium.touch-auth-page .auth-card .register-form .signup-captcha #captcha #captcha_info{color:#a8bac4}
.touch-premium.touch-auth-page .auth-card .register-btn-box{margin-top:24px}
.touch-premium.touch-auth-page .auth-card .register-btn-box button{width:100%}
.touch-premium.touch-auth-page .auth-card .text-black{color:#dce4e7!important}
.touch-premium.touch-auth-page .auth-card .text-gray{color:#a8bac4!important}
.touch-premium.touch-auth-page .auth-card .non-members,.touch-premium.touch-auth-page .auth-card .non-member-order{padding:24px 0;color:#dce4e7}
.touch-premium.touch-auth-page .auth-card .register-result{color:#dce4e7}
@media(max-width:900px){.touch-premium.touch-auth-page .auth-header{width:calc(100% - 40px)}.touch-premium.touch-auth-page .auth-visual{min-height:260px}}
@media(max-width:600px){.touch-premium .touch-content{padding:18px 12px;border-radius:14px}.touch-premium.touch-auth-page .auth-header{width:100%;padding:0 20px}.touch-premium.touch-auth-page .auth-card{min-height:0}.touch-premium.touch-auth-page .auth-layout{margin-bottom:0}.touch-premium.touch-auth-page .auth-card .eyoom-form fieldset{padding:12px}.touch-premium.touch-auth-page .auth-card .login-link{display:flex;justify-content:flex-end;gap:4px}}
@media(max-width:360px){.touch-premium.touch-auth-page .auth-header{padding:0 16px}.touch-premium.touch-auth-page .brand-name{font-size:13px}}
.touch-premium.touch-auth-page .auth-card .eyoom-form .icon-append,.touch-premium.touch-auth-page .auth-card .eyoom-form .icon-prepend{background:transparent;border:0}
.touch-premium.touch-auth-page .auth-card button[type=submit]{color:#1f282b!important}
.touch-premium.touch-auth-page .auth-card .eyoom-form fieldset{background:transparent}
.touch-premium.touch-auth-page .auth-card .eyoom-form .input input[readonly]{background:#102b39;color:#becdd4}
.touch-premium.touch-auth-page .auth-card .eyoom-form .input input[type=file]{height:auto;padding:10px}
.touch-premium .touch-business-info{display:flex;gap:4px 16px;flex-wrap:wrap;width:100%;font-size:11px;color:#93a8b3}
@media(max-width:600px){.touch-premium .touch-business-info{justify-content:center}}
/* 본문을 열기 전 위치에 고정하여 모바일 배경 스크롤과 포커스 점프를 막는다. */
html.touch-dialog-scroll-locked{overflow:hidden}
html.touch-dialog-scroll-locked body.touch-premium{position:fixed;height:auto;overflow:hidden}
body.touch-premium:has(#touch-splash[open]){overflow:hidden}

.touch-premium .membership-summary { padding:18px; border:1px solid #35515f; border-radius:12px; background:#102e3d; margin:20px 0; }
.touch-premium .membership-summary h3 { margin:0 0 16px; font-size:16px; color:#f5f7f8; }
.touch-premium .membership-summary .membership-progress { margin:0; font-size:14px; grid-template-columns:76px minmax(0,1fr); align-items:center; }
.touch-premium .membership-progress dt { color:#bdcbd3; }
.touch-premium .membership-status { display:inline-block; padding:4px 10px; border-radius:20px; background:#f6efdf; color:#57421d; font-weight:700; }
.touch-premium .membership-bank-actions { padding:0 20px 16px; }
.touch-premium .membership-copy { width:100%; min-height:44px; padding:10px 14px; border:1px solid #8e753f; border-radius:8px; background:#f6efdf; color:#172b36; font:inherit; font-size:15px; font-weight:700; cursor:pointer; }
.touch-premium .membership-copy:hover { background:#ede0c2; }
.touch-premium .membership-copy:focus-visible { outline:3px solid #172b36; outline-offset:3px; }
.touch-premium .membership-copy:disabled { opacity:.65; cursor:wait; }
.touch-premium .membership-copy-status { margin:8px 0 0; font-size:14px; line-height:1.5; color:#42535c; overflow-wrap:anywhere; }
.touch-premium .membership-copy-status:empty { margin:0; }
.touch-premium .membership-deposit-note { margin-top:0; }
.touch-premium .activate { max-width:100%; white-space:normal; }
.touch-premium #touch-dialog-title { word-break:keep-all; overflow-wrap:anywhere; }
.membership-progress { display:grid; grid-template-columns:90px 1fr; gap:10px; margin:20px 0; }
.membership-progress dd { margin:0; overflow-wrap:anywhere; }
.touch-premium .membership-bank { border:1px solid #b99a58; border-radius:12px; margin:20px 0; background:#fff; color:#172b36; font-size:18px; line-height:1.6; overflow:hidden; }
.touch-premium .membership-bank dl { margin:0; }
.touch-premium .membership-bank dt { color:#42535c; font-size:18px; font-weight:600; }
.touch-premium .membership-bank dd { margin:0; min-width:0; font-weight:700; overflow-wrap:anywhere; }
.touch-premium .membership-bank-amount { padding:20px; background:#f6efdf; }
.touch-premium .membership-bank-amount dd { margin-top:4px; font-size:26px; }
.touch-premium .membership-bank-details { padding:0 20px; }
.touch-premium .membership-bank-details > div { display:grid; grid-template-columns:80px minmax(0,1fr); align-items:center; gap:12px; padding:16px 0; }
.touch-premium .membership-bank-details > div + div { border-top:1px solid #d4dce0; }
.touch-premium .membership-bank-account dd { font-size:24px; font-variant-numeric:tabular-nums; }
@media(max-width:480px){
    .touch-premium .membership-bank-details > .membership-bank-account { grid-template-columns:minmax(0,1fr); gap:4px; }
}
@media(max-width:360px){
    .touch-premium .membership-bank-details > div { grid-template-columns:minmax(0,1fr); gap:4px; }
    .touch-premium .membership-bank-account dd { font-size:20px; }
}
.membership-form label { display:block; font-weight:600; }
.membership-form input[type=text] { display:block; width:100%; padding:12px; margin-top:8px; border:1px solid #aaa; border-radius:8px; background:#fff; color:#222; }

/* 모바일 하위 페이지의 탐색과 제목을 공통 헤더로 모은다. */
.touch-premium .mobile-page-header{display:none}
@media(max-width:600px){
    .touch-premium .touch-auth-shell .home-link{display:none}
    .touch-premium .touch-subpage-shell>.header{display:none}
    .touch-premium .mobile-page-header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;min-height:72px;padding:10px 0}
    .touch-premium .mobile-page-title{margin:0;color:#f5f7f8;font-size:19px;line-height:1.4;text-align:center;overflow-wrap:anywhere;min-width:0}
    .touch-premium .mobile-back,.touch-premium .mobile-notification{display:flex;align-items:center;justify-content:center;width:44px;min-height:44px;color:#f5f7f8;text-decoration:none}
    .touch-premium .mobile-page-header a:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:8px}
    .touch-premium .touch-auth-shell .mobile-page-header{margin:0 20px}
    .touch-premium .touch-subpage-shell .tp-page>.tp-nav,
    .touch-premium .touch-subpage-shell .tp-heading>.tp-eyebrow,
    .touch-premium .touch-subpage-shell .touch-mypage>.eyebrow{display:none}
    .touch-premium .touch-subpage-shell .touch-push-settings>h1,
    .touch-premium .touch-subpage-shell .tp-heading>h1{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
    .touch-premium .touch-subpage-shell .tp-heading{margin:0 0 18px}
    .touch-premium .touch-subpage-shell .touch-point-content{padding-top:0}
    .touch-premium .touch-subpage-shell .auth-heading>h2{display:none}
}

/* 알림함 미확인 개수 */
.notification.icon-button,.mobile-notification{position:relative}
.touch-notification-badge{position:absolute;right:-5px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:10px;background:#a53932;color:#fff;font-size:10px;line-height:18px;text-align:center;font-weight:700}

.touch-premium .mov-view-all{display:inline-flex;align-items:center;gap:8px;min-height:44px;flex-shrink:0;color:var(--gold);font-size:14px}
@media(max-width:600px){.touch-premium .stories .section-heading{flex-wrap:wrap}.touch-premium .stories .swipe-hint{width:100%;margin-top:-12px}}
