@font-face{font-family:Archivo;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/archivo-700-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #000000;--fg: #ffffff;--fg-muted: rgba(255, 255, 255, .78);--line: rgba(255, 255, 255, .24);--line-strong: rgba(255, 255, 255, .5);--field-bg: rgba(255, 255, 255, .05);--space-1: 8px;--space-2: 12px;--space-3: 16px;--space-4: 24px;--space-5: 32px;--space-6: 48px;--measure: 640px;--radius: 2px;--font-body: "Pretendard Variable", "Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", system-ui, sans-serif;--font-display: "Archivo", var(--font-body)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg)}body{font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-text-size-adjust:100%}:focus-visible{outline:2px solid var(--fg);outline-offset:2px}.page{min-height:100dvh;padding:var(--space-6) var(--space-3);padding-bottom:max(var(--space-6),env(safe-area-inset-bottom))}.shell{width:100%;max-width:var(--measure);margin:0 auto;text-align:center}.brand{font-family:var(--font-display);font-weight:700;font-size:16px;letter-spacing:.08em;color:var(--fg);margin:0 0 var(--space-5)}.hero{font-family:var(--font-display);font-weight:700;font-size:clamp(48px,13vw,88px);line-height:1;letter-spacing:-.01em;margin:0 0 var(--space-4);overflow-wrap:break-word}.lead{font-size:clamp(16px,2.2vw,18px);margin:0 0 var(--space-3)}.intro p{margin:0 0 var(--space-3);color:var(--fg-muted);font-size:15px}.intro p:last-child{margin-bottom:0}section{margin-top:var(--space-6)}h2{font-size:16px;line-height:1.45;font-weight:600;margin:0 0 var(--space-3)}.rule-list,.notice-list{list-style:none;margin:0;padding:0;text-align:left;font-size:13px;line-height:1.75}.rule-list{color:var(--fg)}.rule-list li,.notice-list li{position:relative;padding-left:var(--space-2);margin-bottom:var(--space-1);overflow-wrap:break-word;white-space:pre-line}.rule-list li:before,.notice-list li:before{content:"";position:absolute;left:0;top:.75em;width:3px;height:3px;border-radius:50%;background:var(--line-strong)}.rule-list li:before{background:var(--fg)}.notice-list{color:var(--fg-muted)}.field{margin-bottom:var(--space-4);text-align:left}.field:last-child{margin-bottom:0}label.field-label{display:block;font-size:14px;font-weight:600;margin-bottom:var(--space-1)}.helper{font-size:13px;color:var(--fg-muted)}.counter-row{display:flex;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-1);font-size:13px;color:var(--fg-muted)}.counter.over{color:var(--fg);font-weight:700}textarea,input[type=text],input[type=tel],input[type=email]{width:100%;font:inherit;font-size:16px;color:var(--fg);background:var(--field-bg);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-2) var(--space-3);min-height:48px}textarea{min-height:88px;resize:vertical;line-height:1.5}textarea:hover,input:hover{border-color:var(--line-strong)}.field-error-text{display:block;margin-top:var(--space-1);font-size:13px;font-weight:700;color:var(--fg)}.has-error textarea,.has-error input{border-color:var(--fg);border-width:2px}.consent{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-top:1px solid var(--line);text-align:left}.consent:last-of-type{border-bottom:1px solid var(--line)}.consent input[type=checkbox]{width:20px;height:20px;margin:0;flex:none;accent-color:#ffffff;position:relative}.consent input[type=checkbox]:after{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px}.consent-label{flex:1;font-size:14px;line-height:1.5;min-height:44px;display:flex;align-items:center}.link-button{font:inherit;font-size:13px;color:var(--fg-muted);background:none;border:none;border-bottom:1px solid var(--line-strong);padding:0 0 2px;margin:0;cursor:pointer;min-height:44px;flex:none}.link-button:hover{color:var(--fg);border-color:var(--fg)}.submit{width:100%;min-height:52px;font:inherit;font-size:16px;font-weight:600;color:#000;background:#fff;border:1px solid #ffffff;border-radius:var(--radius);cursor:pointer;margin-top:var(--space-5)}.submit:disabled{opacity:.4;cursor:not-allowed}.quiet-button{font:inherit;font-size:14px;color:var(--fg-muted);background:none;border:none;border-bottom:1px solid var(--line-strong);padding:0 0 3px;min-height:44px;cursor:pointer}.quiet-button:hover{color:var(--fg);border-color:var(--fg)}.form-status{margin-top:var(--space-3);font-size:13px;font-weight:600;color:var(--fg)}.footer{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--line);display:flex;justify-content:center;gap:var(--space-4);font-size:13px;color:var(--fg-muted);flex-wrap:wrap}.footer a{color:inherit;display:inline-flex;align-items:center;min-height:44px}.dev-banner{border:1px dashed var(--line-strong);border-radius:var(--radius);padding:var(--space-2) var(--space-3);font-size:12px;color:var(--fg-muted);margin-bottom:var(--space-5);text-align:left}.state-screen{padding:var(--space-5) 0 var(--space-6)}.state-screen p{color:var(--fg-muted);margin:0 0 var(--space-3);font-size:15px}.state-headline{color:var(--fg)!important;font-size:clamp(18px,4.5vw,22px);font-weight:600;line-height:1.4;margin-bottom:var(--space-2)!important}.state-schedule{margin-top:var(--space-4)!important;padding-top:var(--space-3);border-top:1px solid var(--line);font-size:14px}.done{padding:var(--space-6) 0}.done h1{font-size:clamp(26px,6.5vw,36px);line-height:1.25;margin:0 0 var(--space-3);font-weight:600}.done p{color:var(--fg-muted);margin:0 0 var(--space-6);font-size:15px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:flex-end;justify-content:center;z-index:10}.modal{background:#000;border:1px solid var(--line-strong);border-radius:8px 8px 0 0;width:100%;max-width:640px;max-height:85dvh;display:flex;flex-direction:column;text-align:left}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-2);border-bottom:1px solid var(--line)}.modal-header h2{margin:0;font-size:15px}.modal-close{min-width:44px;min-height:44px;font:inherit;font-size:14px;color:var(--fg-muted);background:none;border:1px solid var(--line);border-radius:var(--radius);cursor:pointer}.modal-body{padding:var(--space-3);overflow-y:auto;white-space:pre-line;font-size:14px;line-height:1.7;color:var(--fg-muted);overflow-wrap:break-word}.skeleton{height:13px;border-radius:var(--radius);background:#ffffff14;margin:0 auto var(--space-2)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(min-width:360px){.page{padding-left:var(--space-4);padding-right:var(--space-4)}}@media(min-width:768px){.modal-backdrop{align-items:center;padding:var(--space-4)}.modal{border-radius:8px;max-height:78dvh}}@media(min-width:1024px){.page{padding-top:96px}.shell{max-width:680px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.candidate-list{list-style:none;margin:0;padding:0;text-align:left}.candidate-list li{margin-bottom:var(--space-2)}.candidate{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;min-height:56px}.candidate:hover{border-color:var(--line-strong)}.candidate.selected{border-color:var(--fg);border-width:2px;padding:calc(var(--space-3) - 1px)}.candidate input[type=radio]{width:20px;height:20px;margin:0;flex:none;accent-color:#ffffff}.candidate-number{font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--fg-muted);flex:none;min-width:24px}.candidate-message{flex:1;font-size:15px;line-height:1.5;overflow-wrap:break-word}.winner{margin:0 0 var(--space-4);padding:var(--space-5) var(--space-3);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:clamp(20px,5vw,28px);line-height:1.45;font-weight:600;overflow-wrap:break-word}.result-media{margin:0 0 var(--space-4)}.result-media img{width:100%;height:auto;display:block}.result-media figcaption{margin-top:var(--space-1);font-size:13px;color:var(--fg-muted)}.modal-error{border:1px solid var(--fg);border-radius:var(--radius);padding:var(--space-2);font-weight:700;color:var(--fg);margin:var(--space-3) 0 0}
