*{-webkit-tap-highlight-color:transparent;box-sizing:border-box}body,html{background:#0b0b0d;color:#f2f2f2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100%;margin:0;overscroll-behavior:none;padding:0}body{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}body.hcup-hide-navbar .hyundai-cup-navbar,body.hcup-stage-2 .hyundai-cup-navbar{display:none}.hyundai-cup-navbar{background:#101013;border-bottom:1px solid #1e1e24;flex:0 0 auto;padding:12px 16px;z-index:1000}.hyundai-cup-navbar .navbar-container{align-items:center;display:flex;margin:0 auto;max-width:480px;min-height:36px;position:relative}.hyundai-cup-navbar .navbar-campaign-link{align-items:center;border-radius:6px;color:#f2f2f2;display:inline-flex;font-size:14px;font-weight:600;gap:6px;padding:8px 12px;position:relative;text-decoration:none;transition:color .2s ease,background .2s ease;z-index:2}.hyundai-cup-navbar .navbar-campaign-link:focus-visible,.hyundai-cup-navbar .navbar-campaign-link:hover{background:#1e1e24;color:#fd0;text-decoration:none}.hyundai-cup-navbar .navbar-campaign-link:focus-visible{outline:2px solid #fd0;outline-offset:2px}.hyundai-cup-navbar #logoutForm,.hyundai-cup-navbar #navbarLoginBtn{margin-left:auto;position:relative;z-index:2}.hyundai-cup-navbar .navbar-brand{left:0;pointer-events:none;position:absolute;right:0;text-align:center}.hyundai-cup-navbar .navbar-brand h1{color:#f2f2f2;font-size:18px;font-weight:700;letter-spacing:.5px;margin:0}.hyundai-cup-navbar .navbar-logout-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid #1e1e24;border-radius:6px;color:#f2f2f2;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.hyundai-cup-navbar .navbar-logout-btn:hover{background:#1e1e24;border-color:#9a9aa2}.hyundai-cup-navbar .navbar-logout-btn:active{transform:scale(.98)}.hyundai-cup-navbar .navbar-logout-btn span{align-items:center;display:flex;gap:6px}.app{background:#101013;display:flex;flex:1 1 auto;flex-direction:column;margin:0 auto;max-width:480px;min-height:0;overflow:hidden;position:relative;width:100%}.upload-stage{align-items:center;display:flex;flex:1;flex-direction:column;gap:20px;justify-content:center;padding:24px;text-align:center}.upload-stage h1,.upload-stage h2{font-size:22px;font-weight:600;letter-spacing:.2px;margin:0}.upload-stage p{color:#9a9aa2;font-size:14px;line-height:1.4;margin:0;max-width:280px}.upload-stage__actions{align-items:stretch;display:flex;flex-direction:column;gap:12px;max-width:280px;width:100%}.upload-stage__actions .btn{width:100%}.upload-stage__divider{align-items:center;color:#9a9aa2;display:flex;font-size:12px;font-weight:600;gap:12px;letter-spacing:1px;text-transform:uppercase}.upload-stage__divider:after,.upload-stage__divider:before{background:rgba(0,0,0,.12);content:"";flex:1;height:1px}.upload-stage__divider span{line-height:1}.upload-stage__page-links{display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:center;margin-top:-5px}.upload-stage__page-link{align-items:center;color:#9a9aa2;display:inline-flex;font-size:14px;font-weight:600;gap:7px;text-decoration:none;transition:color .2s ease}.upload-stage__page-link:focus-visible,.upload-stage__page-link:hover{color:#fd0;text-decoration:none}.upload-stage__page-link:focus-visible{outline:2px solid #fd0;outline-offset:4px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(135deg,#ffe94d,#fd0 55%,#e6b800);border:none;border-radius:999px;box-shadow:0 6px 18px rgba(255,221,0,.35);color:#111;cursor:pointer;font-size:16px;font-weight:700;padding:14px 28px;text-align:center;text-decoration:none;transition:transform .08s ease}.btn:active{transform:scale(.97)}.btn.btn-secondary{background:transparent;border:2px solid #f2f2f2;box-shadow:none;color:#f2f2f2;padding:12px 26px}.btn.btn-secondary:hover{border-color:#e1306c;color:#e1306c}.btn.btn-secondary:active{transform:scale(.97)}input[type=file]{display:none}.frame-stage{display:none;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden}.frame-scroll{-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#fd0 rgba(255,221,0,.12);scrollbar-width:thin}.frame-scroll::-webkit-scrollbar{width:8px}.frame-scroll::-webkit-scrollbar-track{background:rgba(255,221,0,.12)}.frame-scroll::-webkit-scrollbar-thumb{background:#fd0;border-radius:999px}.frame-scroll::-webkit-scrollbar-thumb:hover{background:#ffe94d}.topbar{align-items:center;border-bottom:1px solid #1e1e24;box-sizing:border-box;display:flex;flex:0 0 60px;height:60px;justify-content:space-between;padding:8px 14px;position:relative}.topbar .title{color:#f2f2f2;font-size:18px;font-weight:700;left:0;letter-spacing:.3px;pointer-events:none;position:absolute;right:0;text-align:center}.topbar .icon-btn,.topbar .spacer,.topbar .topbar-action{position:relative;z-index:2}.icon-btn{background:transparent;border:none;border-radius:6px;color:#f2f2f2;cursor:pointer;font-size:22px;line-height:1;padding:8px 12px}.icon-btn:active{background:#1e1e24}.spacer{width:32px}.topbar-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1.5px solid #fd0;border-radius:999px;color:#fd0;cursor:pointer;font-size:15px;font-weight:700;letter-spacing:.3px;padding:8px 18px;text-transform:none;transition:background .15s ease,color .15s ease,transform .08s ease}.topbar-action:hover{background:#fd0;color:#111}.topbar-action:active{transform:scale(.97)}.topbar-action[hidden]{display:inline-block;pointer-events:none;visibility:hidden}.topbar-action[disabled]{cursor:not-allowed;opacity:.5}.square-wrap{aspect-ratio:1/1;background:#000;flex:0 0 auto;overflow:hidden;position:relative;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.square-wrap img#photo{left:0;max-width:none;top:0;transform-origin:0 0;will-change:transform}.square-wrap .overlay,.square-wrap img#photo{-webkit-user-drag:none;pointer-events:none;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.square-wrap .overlay{height:100%;inset:0;width:100%}.hint{color:#8a8a92;font-size:13px;padding:12px 16px 8px;text-align:center}.country-strip,.date-strip,.template-strip{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;padding:10px 14px 14px;scrollbar-color:#fd0 rgba(255,221,0,.12);scrollbar-width:thin}.country-strip::-webkit-scrollbar,.date-strip::-webkit-scrollbar,.template-strip::-webkit-scrollbar{height:6px}.country-strip::-webkit-scrollbar-track,.date-strip::-webkit-scrollbar-track,.template-strip::-webkit-scrollbar-track{background:rgba(255,221,0,.12);border-radius:999px}.country-strip::-webkit-scrollbar-thumb,.date-strip::-webkit-scrollbar-thumb,.template-strip::-webkit-scrollbar-thumb{background:#fd0;border-radius:999px}.country-strip::-webkit-scrollbar-thumb:hover,.date-strip::-webkit-scrollbar-thumb:hover,.template-strip::-webkit-scrollbar-thumb:hover{background:#ffe94d}.country-strip .tpl,.date-strip .tpl,.template-strip .tpl{align-items:stretch;cursor:pointer;display:flex;flex:0 0 auto;flex-direction:column;gap:4px;transition:transform .08s ease;width:64px}.country-strip .tpl:active,.date-strip .tpl:active,.template-strip .tpl:active{transform:scale(.96)}.country-strip .tpl .tpl-thumb,.date-strip .tpl .tpl-thumb,.template-strip .tpl .tpl-thumb{background:#000 50%/cover no-repeat;border:2px solid transparent;border-radius:12px;height:64px;overflow:hidden;position:relative;transition:border-color .15s ease;width:64px}.country-strip .tpl .tpl-label,.date-strip .tpl .tpl-label,.template-strip .tpl .tpl-label{color:#f2f2f2;font-size:10px;font-weight:500;line-height:1.2;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.country-strip .tpl.selected .tpl-thumb,.date-strip .tpl.selected .tpl-thumb,.template-strip .tpl.selected .tpl-thumb{border-color:#e1306c;box-shadow:0 0 0 2px rgba(225,48,108,.25)}.country-strip .tpl.selected .tpl-label,.date-strip .tpl.selected .tpl-label,.template-strip .tpl.selected .tpl-label{color:#e1306c}.country-strip .tpl.none .tpl-thumb,.date-strip .tpl.none .tpl-thumb,.template-strip .tpl.none .tpl-thumb{align-items:center;background:#1a1a20;color:#9a9aa2;display:flex;font-size:11px;font-weight:600;justify-content:center;letter-spacing:.3px}.country-strip .tpl.none .tpl-thumb:before,.date-strip .tpl.none .tpl-thumb:before,.template-strip .tpl.none .tpl-thumb:before{background:#3a3a44;content:"";height:2px;left:6px;position:absolute;right:6px;top:50%;transform:rotate(-45deg)}.selector-block{margin-top:4px}.selector-block[hidden]{display:none}.selector-block .selector-title{color:#9a9aa2;display:block;font-size:11px;font-weight:600;letter-spacing:.6px;padding:6px 14px 2px;text-transform:uppercase}.selector-block p.sub-info{color:#9a9aa2;font-size:11px;letter-spacing:.6px;margin-top:0;padding:0 14px 2px}.date-strip .tpl{width:72px}.date-strip .date-thumb{align-items:center;background:#16161c;color:#f2f2f2;display:flex;flex-direction:column;height:72px;justify-content:center;line-height:1;padding:4px 2px;text-align:center;width:72px}.date-strip .date-thumb .d-day{font-size:22px;font-weight:800;line-height:1}.date-strip .date-thumb .d-month{color:#f2f2f2;font-size:11px;font-weight:600;margin-top:3px;text-transform:capitalize}.date-strip .date-thumb .d-year{color:#9a9aa2;font-size:10px;font-weight:500;margin-top:3px}.date-strip .stadium-label{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;color:#9a9aa2;display:-webkit-box;font-size:11px;line-height:1.15;min-height:37.95px;overflow:hidden;text-overflow:clip;white-space:normal}.date-strip .stadium-label.size-lg{font-size:11px}.date-strip .stadium-label.size-md{font-size:10px}.date-strip .stadium-label.size-sm{font-size:9px}.date-strip .stadium-label.size-xs{font-size:8px;letter-spacing:-.1px}.date-strip .tpl.selected .date-thumb{background:#1e1e26}.date-strip .tpl.selected .stadium-label{color:#f2f2f2}.country-strip .country-chip{background:#16161c;border:1px solid #1e1e24;border-radius:999px;color:#9a9aa2;cursor:pointer;flex:0 0 auto;font-size:12px;font-weight:600;letter-spacing:.3px;padding:6px 12px;transition:background .15s ease,color .15s ease,border-color .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.country-strip .country-chip:hover{border-color:#9a9aa2;color:#f2f2f2}.country-strip .country-chip.selected{background:#e1306c;border-color:#e1306c;color:#fff}.country-strip .country-chip.none{color:#9a9aa2;font-style:italic}.country-strip .country-chip.none.selected{background:#2a2a32;border-color:#9a9aa2;color:#f2f2f2;font-style:normal}.footer-overlay{color:#111;display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:0;justify-content:flex-start;left:0;pointer-events:none;position:absolute;right:0}.footer-overlay[hidden]{display:none}.footer-overlay .fo-col{align-items:flex-start;display:flex;gap:4px;min-width:0}.footer-overlay .fo-icon{color:#c81f2b;flex:0 0 auto;line-height:0;margin-top:1px}.footer-overlay .fo-text{display:flex;flex-direction:column;line-height:1.1;min-width:0}.footer-overlay .fo-label{color:#111;font-weight:400;letter-spacing:.4px}.footer-overlay .fo-value{color:#111;font-weight:400;word-break:break-word}.square-wrap.preset-default .footer-overlay{bottom:0;padding:6px 0 20px 18%}.square-wrap.preset-default .footer-overlay .fo-col{flex:0 0 25%}.square-wrap.preset-default .footer-overlay .fo-date{flex:0 0 19%}.square-wrap.preset-default .footer-overlay .fo-stadium{flex:0 0 29%}.square-wrap.preset-default .footer-overlay .fo-label{font-size:6px}.square-wrap.preset-default .footer-overlay .fo-value,.square-wrap.preset-default .footer-overlay .fo-value.fo-value-lg{font-size:7px}.submission-stage{-webkit-overflow-scrolling:touch;display:flex;flex:1;flex-direction:column;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#fd0 rgba(255,221,0,.12);scrollbar-width:thin}.submission-stage::-webkit-scrollbar{width:8px}.submission-stage::-webkit-scrollbar-track{background:rgba(255,221,0,.12)}.submission-stage::-webkit-scrollbar-thumb{background:#fd0;border-radius:999px}.submission-stage::-webkit-scrollbar-thumb:hover{background:#ffe94d}.submission-stage .topbar{flex:0 0 auto}.submission-stage .square-wrap{flex:0 0 auto;touch-action:auto}.submission-stage .action-bar,.submission-stage .hint{flex:0 0 auto}.action-bar{display:flex;justify-content:center;padding:8px 16px 20px}.action-bar .btn[disabled]{box-shadow:none;cursor:not-allowed;opacity:.5}.progress-overlay{align-items:center;backdrop-filter:blur(4px);background:rgba(0,0,0,.65);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:9999}.progress-overlay[hidden]{display:none}.progress-overlay .progress-card{background:#101013;border:1px solid #1e1e24;border-radius:14px;box-shadow:0 20px 40px rgba(0,0,0,.5);max-width:320px;padding:20px 22px;text-align:center;width:100%}.progress-overlay .progress-label{color:#f2f2f2;font-size:15px;font-weight:600;margin-bottom:14px}.progress-overlay .progress-track{background:#1e1e24;border-radius:999px;height:8px;overflow:hidden;position:relative;width:100%}.progress-overlay .progress-fill{background:linear-gradient(135deg,#ffe94d,#fd0 55%,#e6b800);border-radius:999px;height:100%;transition:width .2s ease;width:0}.progress-overlay.indeterminate .progress-fill{animation:hcup-indeterminate 1.2s ease-in-out infinite;width:40%!important}.progress-overlay .progress-percent{color:#9a9aa2;font-size:12px;font-variant-numeric:tabular-nums;margin-top:10px}@keyframes hcup-indeterminate{0%{transform:translateX(-100%)}to{transform:translateX(250%)}}body.hcup-auth-open{overflow:hidden}.hcup-auth-modal{align-items:center;display:flex;inset:0;justify-content:center;opacity:0;padding:24px 16px;position:fixed;transition:opacity .18s ease;z-index:10000}.hcup-auth-modal[hidden]{display:none}.hcup-auth-modal.is-open{opacity:1}.hcup-auth-modal__backdrop{backdrop-filter:blur(4px);background:rgba(0,0,0,.7);inset:0;position:absolute}.hcup-auth-modal__dialog{background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.35);color:#111827;max-height:calc(100vh - 48px);max-width:460px;outline:none;overflow-y:auto;padding:28px 24px 24px;position:relative;width:100%}.hcup-auth-modal__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:8px;color:#6b7280;cursor:pointer;font-size:26px;line-height:1;padding:6px 10px;position:absolute;right:10px;top:8px}.hcup-auth-modal__close:hover{background:rgba(0,0,0,.05);color:#111827}.hcup-auth-modal__header{margin-bottom:18px;text-align:center}.hcup-auth-modal__header h2{color:#111827;font-size:20px;font-weight:700;margin:0 0 6px}.hcup-auth-modal__subtitle{color:#6b7280;font-size:13px;line-height:1.45;margin:0}.hcup-auth-modal__alert{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:13px;margin:0 0 14px;padding:10px 12px}.hcup-auth-modal__alert[hidden]{display:none}.hcup-auth-modal__alert[data-type=success]{background:#ecfdf5;border-color:#bbf7d0;color:#047857}.hcup-google-block{margin-bottom:16px}.hcup-google-btn-wrap{display:flex;justify-content:center;min-height:40px}.hcup-google-btn-wrap>div{max-width:100%}.hcup-auth-divider{align-items:center;color:#9ca3af;display:flex;font-size:12px;gap:10px;letter-spacing:.06em;margin:14px 0 4px;text-transform:uppercase}.hcup-auth-divider:after,.hcup-auth-divider:before{background:#e5e7eb;content:"";flex:1;height:1px}.hcup-auth-divider span{padding:0 4px}.hcup-auth-tabs{background:#f3f4f6;border-radius:10px;display:flex;gap:4px;margin-bottom:18px;padding:4px}.hcup-auth-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;border-radius:8px;color:#6b7280;cursor:pointer;flex:1;font-size:14px;font-weight:600;padding:9px 10px;transition:background .15s ease,color .15s ease}.hcup-auth-tab.is-active{background:#111827;color:#fff}.hcup-auth-tab:not(.is-active):hover{color:#111827}.hcup-auth-form{display:none;flex-direction:column;gap:14px}.hcup-auth-form.is-active,.hcup-field{display:flex}.hcup-field{flex-direction:column;gap:6px}.hcup-field label{color:#374151;font-size:12px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.hcup-field label .required{color:#dc2626}.hcup-field input[type=email],.hcup-field input[type=password],.hcup-field input[type=text],.hcup-field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#111827;font-size:14px;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.hcup-field input[type=email]:focus,.hcup-field input[type=password]:focus,.hcup-field input[type=text]:focus,.hcup-field select:focus{border-color:#6b7280;box-shadow:0 0 0 3px hsla(220,9%,46%,.15);outline:none}.hcup-field input[type=email]::-moz-placeholder,.hcup-field input[type=password]::-moz-placeholder,.hcup-field input[type=text]::-moz-placeholder,.hcup-field select::-moz-placeholder{color:#9ca3af}.hcup-field input[type=email]::placeholder,.hcup-field input[type=password]::placeholder,.hcup-field input[type=text]::placeholder,.hcup-field select::placeholder{color:#9ca3af}.hcup-field select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='%236b7280' d='M6 8L0 0h12z'/></svg>");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.hcup-field--row{display:grid;gap:12px;grid-template-columns:1fr 1fr}.hcup-field--row>div{display:flex;flex-direction:column;gap:6px}.hcup-field--checkbox label{align-items:flex-start;color:#111827;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:8px;letter-spacing:0;text-transform:none}.hcup-field--checkbox input[type=checkbox]{accent-color:#dc2626;height:16px;margin-top:2px;width:16px}.hcup-field-error{color:#b91c1c;font-size:12px;margin-top:-2px}.hcup-field-error[hidden]{display:none}.hcup-auth-submit{margin-top:6px;width:100%}.hcup-auth-switch{color:#6b7280;font-size:13px;margin:8px 0 0;text-align:center}.hcup-auth-switch a{color:#111827;font-weight:600;text-decoration:underline;text-underline-offset:2px}.hcup-auth-switch a:hover{color:#000}
