/* Scoped notice UI. No existing Elementor modal or page styles are changed. */
.cn-overlay,.cn-overlay *{box-sizing:border-box}
.cn-overlay{position:fixed;inset:0;z-index:999990;background:rgba(13,13,18,.68);overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column;align-items:center;padding:28px 24px;font-family:var(--e-global-typography-7377e41-font-family,Pretendard),sans-serif;color:#0F172A;line-height:1.6;-webkit-overflow-scrolling:touch}
.cn-stage{flex-shrink:0;max-width:100%;margin:auto 0}
.cn-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:36px;padding-bottom:12px;color:#F1F5F9;font-size:14px}
.cn-overlay button{font:inherit;cursor:pointer;letter-spacing:normal;text-transform:none;box-shadow:none}
.cn-overlay .cn-heading:focus,.cn-overlay .cn-card:focus{outline:none}
.cn-overlay button:focus-visible,.cn-overlay a:focus-visible,.cn-overlay input:focus-visible,.cn-content:focus-visible{outline:3px solid #60A5FA;outline-offset:3px}
.cn-overlay .cn-close-all{background:transparent;color:#F1F5F9;border:1px solid #94A3B8;border-radius:6px;padding:4px 14px;min-height:36px}
.cn-overlay [hidden]{display:none!important}
.cn-rows{max-width:100%;display:flex;flex-direction:column;gap:24px}
.cn-row{display:flex;align-items:flex-start;justify-content:center;gap:24px;width:100%}
.cn-card{position:relative;display:flex;flex-direction:column;flex-shrink:0;max-width:100%;height:auto;min-height:var(--cn-height,600px);background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 16px 48px rgba(0,0,0,.18);text-align:left}
.cn-content{overflow:visible;flex:1 0 auto;min-height:0}
.cn-text{padding:40px 32px 24px}
.cn-heading{font-family:inherit!important;font-size:28px!important;font-weight:700!important;line-height:1.35!important;color:#2563EB!important;word-break:keep-all;overflow-wrap:anywhere;margin:0 0 24px!important;padding:0!important;letter-spacing:-.02em!important;text-align:center}
.cn-prose{font-size:16px;font-weight:400;color:#64748B;line-height:1.75;overflow-wrap:anywhere}
.cn-prose p{margin:0 0 16px}.cn-prose p:last-child{margin-bottom:0}.cn-prose ul,.cn-prose ol{padding-left:22px;margin:0 0 16px}.cn-prose a{color:#2563EB;text-decoration:underline}.cn-prose img{max-width:100%;height:auto}
.cn-image,.cn-image-link{display:block;width:100%;height:auto;margin:0;border:0}
.cn-image{object-fit:contain}
.cn-action{padding:0 32px 28px}.cn-image-link+.cn-action,.cn-image+.cn-action{padding-top:24px}
.cn-link{display:block;padding:12px 20px;background:#2563EB;color:#fff!important;font-size:16px;font-weight:500;text-decoration:none!important;text-align:center;border-radius:6px;line-height:1.5}
.cn-link:hover{background:#1A1A28}
.cn-overlay .cn-card-close{position:absolute;right:8px;top:8px;z-index:2;width:36px;height:36px;min-width:36px;border:0;border-radius:0;background:transparent!important;color:#64748B;font-size:28px;line-height:1;padding:0;display:flex;align-items:center;justify-content:center}
.cn-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-shrink:0;min-height:56px;padding:10px 16px;background:#F1F5F9;color:#64748B;font-size:14px}
.cn-today{display:flex;align-items:center;gap:8px;cursor:pointer;margin:0;margin-right:auto;font-size:14px;font-weight:400;line-height:1.4}
.cn-today input{appearance:auto!important;position:static!important;opacity:1!important;display:inline-block!important;width:16px;height:16px;margin:0;accent-color:#2563EB}
.cn-overlay .cn-footer-close{border:0;background:transparent;color:#64748B;min-height:32px;padding:4px 8px;border-radius:4px;font-size:14px}
@media(max-width:767px){.cn-overlay{padding:16px}.cn-rows,.cn-row{gap:16px}.cn-text{padding:42px 24px 24px}.cn-heading{font-size:24px!important}.cn-action{padding-left:24px;padding-right:24px}.cn-today{font-size:13px}}
@media(prefers-reduced-motion:no-preference){.cn-stage{animation:cn-notice-in .22s ease-out}@keyframes cn-notice-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}

/* Mobile presentation is class-based so admin previews use the same rules. */
.cn-mobile{padding:16px}
.cn-mobile .cn-rows,.cn-mobile .cn-row{gap:16px}
.cn-mobile .cn-text{padding:38px 24px 22px}
.cn-mobile .cn-heading{font-size:24px!important}
.cn-mobile .cn-action{padding-left:24px;padding-right:24px}
.cn-mobile .cn-today{font-size:13px}
.cn-mobile.cn-compact .cn-card{min-height:0}
.cn-mobile.cn-compact .cn-content{flex:0 0 auto}
.cn-navigation{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding:4px 0;position:sticky;top:0;z-index:5;background:#141820;border-radius:6px;color:#F1F5F9}
.cn-overlay .cn-nav-button{flex:none;min-height:44px;padding:8px 14px;background:transparent;border:0;border-radius:4px;color:#F1F5F9;font-size:14px;white-space:nowrap}
.cn-swipe-tip{font-size:12px;text-align:center;line-height:1.4}
.cn-sliding .cn-rows{touch-action:pan-y pinch-zoom}
.cn-sliding .cn-stage{max-width:100%}
.cn-sliding{overflow-x:hidden}
