:root{--bg:#0d0d14;--surface:#13131e;--card:#1a1a2a;--border:#2a2a3e;--accent:#e94560;--accent2:#ff6b35;--text:#eeeef5;--muted:#99b;--success:#3fd68f}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:DM Sans,sans-serif;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(80% 50% at 20% -10%,#e945601f 0%,#0000 60%),radial-gradient(60% 40% at 80% 110%,#ff6b3514 0%,#0000 60%);position:fixed;inset:0}.container{z-index:1;contain:layout style;max-width:780px;margin:0 auto;padding:0 24px 80px;position:relative}header{text-align:center;border-bottom:1px solid var(--border);margin-bottom:48px;padding:60px 0 48px}.logo-badge{letter-spacing:2px;text-transform:uppercase;color:var(--accent);background:#e945601f;border:1px solid #e945604d;border-radius:100px;align-items:center;gap:8px;margin-bottom:24px;padding:6px 18px;font-size:12px;font-weight:600;transition:all .3s;display:inline-flex}.logo-badge:hover{background:#e9456033;transform:scale(1.02)}.logo-badge:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent);border-radius:50%;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}h1{letter-spacing:3px;font-family:Bebas Neue,sans-serif;font-size:clamp(42px,8vw,68px);line-height:.95;transition:transform .3s}h1:hover{transform:scale(1.02)}h1 span{color:var(--accent)}.subtitle{color:var(--muted);max-width:500px;margin-top:16px;margin-left:auto;margin-right:auto;font-size:15px;font-weight:300;line-height:1.6}.progress-wrap{z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);background:#0d0d14f2;margin:0 -24px 40px;padding:14px 24px;transition:box-shadow .3s;position:sticky;top:0}.progress-wrap.scrolled{box-shadow:0 4px 20px #0000004d}.progress-info{color:var(--muted);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;display:flex}.progress-label{color:var(--text);font-weight:600;transition:color .3s}.progress-bar{background:var(--border);border-radius:2px;height:4px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,var(--accent),var(--accent2));border-radius:2px;width:0%;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1)}.progress-pct{color:var(--success);font-weight:600;transition:color .3s}.section{opacity:0;contain:layout style;margin-bottom:48px;transition:opacity .5s,transform .5s;transform:translateY(20px)}.section.visible{opacity:1;transform:translateY(0)}.section-header{align-items:center;gap:14px;margin-bottom:24px;display:flex}.section-num{letter-spacing:2px;color:var(--accent);background:#e945601a;border:1px solid #e9456040;border-radius:6px;flex-shrink:0;padding:4px 10px;font-family:Bebas Neue,sans-serif;font-size:13px}.section-title{letter-spacing:2px;font-family:Bebas Neue,sans-serif;font-size:26px}.section-desc{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.5}.field-grid{gap:16px;display:grid}.field-grid.two-col{grid-template-columns:1fr 1fr}@media (max-width:560px){.field-grid.two-col{grid-template-columns:1fr}}.field{flex-direction:column;gap:6px;display:flex;position:relative}.field.full{grid-column:1/-1}.field:hover label{color:var(--text)}label{letter-spacing:1px;text-transform:uppercase;color:var(--muted);cursor:pointer;font-size:12px;font-weight:600;transition:color .2s}.field:focus-within label{color:var(--accent)}.required-indicator{color:var(--accent);margin-left:2px;font-weight:700}input,textarea,select{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:10px;outline:none;width:100%;padding:12px 16px;font-family:DM Sans,sans-serif;font-size:14px;transition:all .2s}input::placeholder,textarea::placeholder{color:#55556a}input:hover,textarea:hover,select:hover{background:#1a1a2acc;border-color:#3a3a4e}input:focus,textarea:focus,select:focus{border-color:var(--accent);background:var(--card);box-shadow:0 0 0 3px #e9456026}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input.filled,textarea.filled,select.filled{border-color:#3fd68f80}input.valid,textarea.valid,select.valid{border-color:var(--success)}input.invalid,textarea.invalid,select.invalid{border-color:var(--accent);animation:.3s shake}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}textarea{resize:vertical;min-height:90px;line-height:1.6}select option{background:var(--card);color:var(--text);padding:8px}select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%239999BB' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.hint{color:var(--muted);margin-top:4px;font-size:11px;font-style:italic;transition:color .2s}.hint.error{color:var(--accent)}.hint.success{color:var(--success)}.array-wrap{flex-direction:column;gap:10px;display:flex}.array-item{border:1px solid var(--border);background:#ffffff05;border-radius:10px;align-items:flex-start;gap:8px;padding:12px;display:flex}.array-item-fields{flex:1;gap:8px;display:grid}.array-item-fields.two{grid-template-columns:1fr 1fr}.array-item input,.array-item select{border-radius:6px;padding:8px 12px;font-size:13px}.btn-remove{color:var(--accent);cursor:pointer;background:#e945601a;border:1px solid #e9456033;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-top:2px;font-size:16px;transition:background .2s;display:flex}.btn-remove:hover{background:#e9456040}.btn-remove:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-add{border:1px dashed var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:6px;width:100%;margin-top:10px;padding:10px;font-family:DM Sans,sans-serif;font-size:13px;transition:all .2s;display:flex}.btn-add:hover{border-color:var(--accent);color:var(--accent);background:#e945600d}.btn-add:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.upload-zone{border:2px dashed var(--border);text-align:center;cursor:pointer;contain:layout style;background:#ffffff04;border-radius:12px;padding:26px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.upload-zone:hover{border-color:var(--accent);background:#e945600d;transform:translateY(-2px)}.upload-zone.drag-over{border-color:var(--success);background:#3fd68f1a;transform:scale(1.02);box-shadow:0 8px 30px #3fd68f33}.upload-zone input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.upload-icon{margin-bottom:8px;font-size:32px;transition:transform .3s}.upload-zone:hover .upload-icon{transform:scale(1.1)}.upload-title{color:var(--text);margin-bottom:4px;font-size:15px;font-weight:600}.upload-sub{color:var(--muted);font-size:13px}.upload-sub strong{color:var(--accent);transition:color .2s}.upload-zone:hover .upload-sub strong{color:var(--text)}.file-preview-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px;margin-top:16px;display:grid}.file-thumb{aspect-ratio:1;background:var(--card);border:2px solid var(--border);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:3px;transition:all .2s;display:flex;position:relative;overflow:hidden}.file-thumb:hover{border-color:var(--accent);transform:scale(1.05)}.file-thumb img{object-fit:cover;width:100%;height:100%}.file-thumb .fname{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;text-align:center;width:100%;padding:3px 5px;font-size:9px;overflow:hidden}.file-thumb .ficon{font-size:24px}.file-thumb .rm{color:#fff;cursor:pointer;background:#e94560e6;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:12px;transition:all .2s;display:none;position:absolute;top:4px;right:4px}.file-thumb:hover .rm{display:flex}.file-thumb .rm:hover{background:var(--accent);transform:scale(1.1)}.file-badge{color:var(--success);background:#3fd68f1a;border:1px solid #3fd68f4d;border-radius:100px;align-items:center;gap:6px;margin-top:10px;padding:4px 12px;font-size:12px;font-weight:600;animation:.3s fadeIn;display:inline-flex}.file-badge:before{content:"✓"}.upload-note{color:var(--muted);opacity:.8;margin-top:8px;font-size:11px;font-style:italic}.divider{background:linear-gradient(90deg,var(--accent)0%,transparent 60%);opacity:.25;height:1px;margin:48px 0}.submit-area{text-align:center;padding:48px 0 0}.btn-submit{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;cursor:pointer;letter-spacing:3px;border:none;border-radius:12px;min-width:200px;padding:18px 64px;font-family:Bebas Neue,sans-serif;font-size:20px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 8px 30px #e945604d}.btn-submit:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 14px 40px #e9456080}.btn-submit:active:not(:disabled){transform:translateY(-1px)}.btn-submit:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-submit:before{content:"";background:linear-gradient(90deg,#0000,#ffffff40,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn-submit:hover:not(:disabled):before{left:100%}.btn-submit.loading{color:#0000;pointer-events:none}.btn-submit.loading:after{content:"";border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:24px;height:24px;margin:-12px 0 0 -12px;animation:.8s linear infinite spin;position:absolute;top:50%;left:50%}@keyframes spin{to{transform:rotate(360deg)}}.submit-note{color:var(--muted);margin-top:14px;font-size:12px;line-height:1.5}.success-screen{text-align:center;padding:80px 24px;animation:.5s fadeIn;display:none}.success-icon{margin-bottom:24px;font-size:64px;animation:.5s cubic-bezier(.36,.07,.19,.97) pop}@keyframes pop{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.success-screen h2{letter-spacing:3px;color:var(--success);margin-bottom:12px;font-family:Bebas Neue,sans-serif;font-size:42px}.success-screen p{color:var(--muted);line-height:1.7}.json-output{background:var(--card);border:1px solid var(--border);text-align:left;color:var(--muted);white-space:pre-wrap;word-break:break-all;border-radius:10px;max-height:280px;margin-top:28px;padding:18px;font-family:Courier New,monospace;font-size:11px;overflow-y:auto}.btn-copy{color:var(--success);cursor:pointer;background:#3fd68f1a;border:1px solid #3fd68f4d;border-radius:8px;margin-top:12px;padding:10px 24px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:600;transition:all .2s}.btn-copy:hover{background:#3fd68f33;transform:translateY(-2px)}.btn-copy:active{transform:translateY(0)}.error-message{color:var(--text);background:#e945601a;border:1px solid #e945604d;border-radius:10px;margin-bottom:16px;padding:16px;font-size:14px;line-height:1.6;animation:.3s slideIn}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.error-message strong{color:var(--accent)}.scroll-top{background:var(--accent);color:#fff;cursor:pointer;opacity:0;visibility:hidden;z-index:1000;border:none;border-radius:50%;width:44px;height:44px;font-size:20px;transition:all .3s;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 16px #e9456066}.scroll-top.visible{opacity:1;visibility:visible}.scroll-top:hover{transform:translateY(-3px);box-shadow:0 6px 20px #e9456080}.scroll-top:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.section-nav{z-index:99;flex-direction:column;gap:8px;display:flex;position:fixed;top:50%;left:24px;transform:translateY(-50%)}.section-nav-dot{background:var(--border);cursor:pointer;border-radius:50%;width:10px;height:10px;transition:all .2s;position:relative}.section-nav-dot:hover,.section-nav-dot.active{background:var(--accent);transform:scale(1.3)}.section-nav-dot:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.section-nav-dot:after{content:attr(data-label);background:var(--card);white-space:nowrap;opacity:0;pointer-events:none;border:1px solid var(--border);border-radius:6px;padding:6px 12px;font-size:11px;transition:opacity .2s;position:absolute;top:50%;left:20px;transform:translateY(-50%)}.section-nav-dot:hover:after{opacity:1}.sublabel{letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin:20px 0 10px;font-size:12px;font-weight:600;display:block}footer{text-align:center;color:var(--muted);letter-spacing:1px;border-top:1px solid var(--border);margin-top:40px;padding:40px 0 20px;font-size:13px}footer span{color:var(--accent);font-weight:600}@media (max-width:768px){.section-nav{display:none}.container{padding:0 16px 60px}header{margin-bottom:32px;padding:40px 0 32px}.section{margin-bottom:32px}h1{font-size:clamp(32px,6vw,48px)}.btn-submit{width:100%;padding:16px 32px}.progress-wrap{padding:12px 16px}input,textarea,select{padding:14px 16px;font-size:16px}.btn-remove{width:36px;height:36px}.btn-add{padding:12px;font-size:14px}.scroll-top{width:48px;height:48px;bottom:16px;right:16px}}@media (max-width:480px){.field-grid.two-col,.array-item-fields.two{grid-template-columns:1fr}.logo-badge{padding:5px 12px;font-size:10px}.section-title{font-size:22px}}@media (hover:none) and (pointer:coarse){.btn-submit:hover{transform:none}.btn-submit:active{transform:scale(.98)}.btn-add:hover{border-color:var(--border);color:var(--muted);background:0 0}.btn-add:active{border-color:var(--accent);color:var(--accent)}.btn-remove:hover{background:#e945601a}.btn-remove:active{background:#e9456040}}@media (prefers-contrast:high){:root{--border:#55a;--muted:#aac}input,textarea,select{border-width:2px}.btn-submit{border:2px solid #fff}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}}@media (prefers-color-scheme:light){:root{--bg:#f5f5fa;--surface:#fff;--card:#fff;--border:#e0e0e8;--text:#1a1a2a;--muted:#668}body:before{background:radial-gradient(80% 50% at 20% -10%,#e9456014 0%,#0000 60%),radial-gradient(60% 40% at 80% 110%,#ff6b350f 0%,#0000 60%)}.upload-zone,.array-item{background:#00000005}input::placeholder,textarea::placeholder{color:#88a}}
