.loopi-form{--lf-accent: #421dcc;--lf-accent-press: #3819b8;--lf-border: #d4d4d8;--lf-radius: 8px;display:flex;flex-direction:column;gap:1.1rem;max-width:40rem;margin:0 auto;background:#fff;border:1px solid #e4e4e7;border-radius:12px;padding:clamp(1.25rem,3vw,1.75rem);box-shadow:0 1px 3px #0000000f,0 6px 16px #0000000d}.loopi-form .loopi-field{display:flex;flex-direction:column;gap:.35rem}.loopi-form .loopi-field>span{font-family:Open Sans,sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.02em;color:#444}.loopi-form .loopi-field:has(input:required)>span:after,.loopi-form .loopi-field:has(textarea:required)>span:after,.loopi-form .loopi-field:has(select:required)>span:after{content:" *";color:#dc2626;font-weight:700}.loopi-form input,.loopi-form textarea,.loopi-form select{font:inherit;width:100%;padding:.65rem .8rem;border:1px solid var(--lf-border);border-radius:var(--lf-radius);background:#fafafa;color:#18181b;transition:border-color .15s,box-shadow .15s,background .15s}.loopi-form input:focus,.loopi-form textarea:focus,.loopi-form select:focus{outline:none;background:#fff;border-color:var(--lf-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--lf-accent) 22%,transparent)}.loopi-form textarea{resize:vertical;min-height:6rem}.loopi-form select:has(option[value=""]:checked){color:#71717a}.loopi-form .loopi-submit{font-family:Nanum Myeongjo,serif;font-weight:700;font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;background:var(--lf-accent);border:none;border-radius:9999px;padding:.85rem 1.9rem;cursor:pointer;align-self:flex-start;transition:background .15s,transform .05s}.loopi-form .loopi-submit:hover{background:var(--lf-accent-press)}.loopi-form .loopi-submit:active{transform:translateY(1px)}.loopi-form .loopi-submit:disabled{opacity:.6;cursor:default}.loopi-form .loopi-check{flex-direction:row;align-items:flex-start;gap:.55rem}.loopi-form .loopi-check input[type=checkbox]{width:auto;flex:none;margin:.15em 0 0;padding:0;box-shadow:none;accent-color:var(--lf-accent)}.loopi-form .loopi-check>span{font-size:.85rem;font-weight:400;line-height:1.5;color:#444}.loopi-form .loopi-check a{color:var(--lf-accent);text-decoration:underline}.loopi-form .loopi-msg{margin:0;font-size:.9rem;font-weight:600}.loopi-form .loopi-msg[data-ok]{color:#15803d}.loopi-form .loopi-msg[data-err]{color:#b91c1c}
