.f-section{margin-top:42px;scroll-margin-top:28px}.f-section:first-of-type{margin-top:10px}.f-section-head{align-items:center;gap:13px;display:flex}.f-snum{border:1px solid var(--border-default);width:30px;height:30px;font-family:var(--font-mono);color:var(--text-tertiary);transition:var(--transition-control);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex;position:relative}.f-snum .chk{opacity:0;color:#fff;transition:opacity .14s var(--ease-standard);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.f-section.is-done .f-snum{background:var(--emerald-500)!important;border-color:var(--emerald-500)!important}.f-section.is-done .f-snum .num{opacity:0}.f-section.is-done .f-snum .chk{opacity:1}.f-section-title{font-family:var(--font-display);font-weight:var(--fw-bold);letter-spacing:-.014em;color:var(--text-primary);margin:0;font-size:1.3125rem}.f-section-rule{background:var(--border-subtle);border:0;height:1px;margin:16px 0 24px}.f-field{margin-bottom:16px}.f-field:last-child{margin-bottom:0}.f-row{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}.f-float{position:relative}.f-float>.f-input{box-sizing:border-box;background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-sm);width:100%;height:58px;font-family:var(--font-sans);font-size:var(--text-body);color:var(--text-primary);transition:var(--transition-control);padding:23px 15px 7px}textarea.f-input{resize:vertical;height:auto;min-height:104px;padding-top:26px;line-height:1.55}.f-float>.f-input::placeholder{color:#0000}.f-float>.f-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--field-focus-ring);outline:none}.f-float>.f-input.invalid{border-color:var(--red-500)}.f-float>.f-input.invalid:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--red-500) 22%, transparent)}.f-err{font-size:var(--text-caption);color:var(--text-danger);letter-spacing:.01em;font-weight:var(--fw-medium);margin:7px 2px 0}.f-float>.f-input.has-toggle{padding-right:52px}.f-eye{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--icon-secondary);cursor:pointer;transition:var(--transition-control);background:0 0;border:0;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.f-eye:hover{color:var(--text-primary);background:var(--surface-sunken)}.f-eye:focus-visible{box-shadow:0 0 0 3px var(--field-focus-ring);color:var(--text-primary);outline:none}.f-flabel{font-size:var(--text-body);color:var(--text-tertiary);pointer-events:none;transition:all .14s var(--ease-standard);position:absolute;top:50%;left:15px;transform:translateY(-50%)}.f-float>textarea.f-input~.f-flabel{top:19px;transform:none}.f-float>.f-input:focus~.f-flabel,.f-float>.f-input:not(:placeholder-shown)~.f-flabel{font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.02em;color:var(--text-tertiary);top:9px;transform:none}.f-float>.f-input:focus~.f-flabel{color:var(--text-accent)}.f-req{color:var(--text-accent);margin-left:1px}.f-hint{font-size:var(--text-caption);color:var(--text-tertiary);letter-spacing:.01em;margin:7px 2px 0}.f-help{font-size:var(--text-body-sm);color:var(--text-secondary);margin:-4px 0 18px;line-height:1.6}.f-help a{color:var(--text-accent);font-weight:var(--fw-semibold);transition:var(--transition-control);border-bottom:1px solid;text-decoration:none}.f-help a:hover{color:var(--emerald-700)}.f-uplabel{font-size:var(--text-body-sm);font-weight:var(--fw-semibold);color:var(--text-primary);margin-bottom:8px;display:block}.f-up{border:1px dashed var(--border-default);border-radius:var(--radius-md);background:var(--surface-upload);cursor:pointer;transition:var(--transition-control);position:relative}.f-up:hover{border-color:var(--border-strong);background:var(--surface-upload-hover)}.f-up.dragover{border-color:var(--border-accent);background:var(--surface-accent-subtle)}.f-up.filled{border-style:solid;border-color:var(--emerald-300);background:var(--surface-accent-subtle)}.f-up input[type=file]{display:none}.f-up-empty{text-align:center;flex-direction:column;align-items:center;gap:9px;padding:26px 18px;display:flex}.f-up.filled .f-up-empty{display:none}.f-up-ic{background:var(--surface-card);border:1px solid var(--border-subtle);width:44px;height:44px;color:var(--icon-secondary);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.f-up-text{font-size:var(--text-body-sm);color:var(--text-secondary)}.f-up-text strong{color:var(--text-primary);font-weight:var(--fw-semibold)}.f-up-browse{color:var(--text-accent);font-weight:var(--fw-semibold)}.f-up-types{font-size:var(--text-caption);color:var(--text-tertiary);letter-spacing:.02em}.f-up-filled{align-items:center;gap:13px;padding:12px;display:none}.f-up.filled .f-up-filled{display:flex}.f-up-thumb{border-radius:var(--radius-sm);background-position:50%;background-size:cover;background-color:var(--surface-card);border:1px solid var(--border-subtle);width:52px;height:52px;color:var(--icon-accent);flex:none;justify-content:center;align-items:center;display:flex}.f-up-meta{flex:1;min-width:0}.f-up-name{font-size:var(--text-body-sm);font-weight:var(--fw-semibold);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.f-up-status{font-size:var(--text-caption);color:var(--text-accent);font-weight:var(--fw-semibold);align-items:center;gap:6px;margin-top:3px;display:flex}.f-up-status .sz{color:var(--text-tertiary);font-weight:var(--fw-medium)}.f-up-remove{border:1px solid var(--border-default);background:var(--surface-card);width:44px;height:44px;color:var(--icon-secondary);cursor:pointer;transition:var(--transition-control);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.f-up-remove:hover{border-color:var(--border-strong);color:var(--text-primary)}.f-actions{margin-top:38px}.f-submit{height:var(--control-lg);width:100%;font-family:var(--font-sans);font-size:var(--text-body-lg);font-weight:var(--fw-semibold);letter-spacing:-.006em;border-radius:var(--radius-pill);cursor:pointer;transition:var(--transition-control);justify-content:center;align-items:center;gap:9px;padding:0 28px;display:inline-flex}.f-submit:active{transform:scale(.99)}.f-submit.primary{background:var(--action-primary-bg);color:var(--action-primary-fg);border:1px solid var(--action-primary-bg)}.f-submit.primary:hover{background:var(--action-primary-bg-hover);border-color:var(--action-primary-bg-hover)}.f-submit.accent{background:var(--action-accent-bg);color:var(--action-accent-fg);border:1px solid var(--action-accent-bg)}.f-submit.accent:hover{background:var(--action-accent-bg-hover);border-color:var(--action-accent-bg-hover)}.f-submit:disabled{cursor:default;opacity:.72}.f-submit:disabled:active{transform:none}.f-spin{animation:.7s linear infinite f-spin}@keyframes f-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.f-spin{animation-duration:1.4s}}.f-error{text-align:center;font-size:var(--text-body-sm);color:var(--text-danger);margin-top:12px}.f-reassure{font-size:var(--text-body-sm);color:var(--text-tertiary);justify-content:center;align-items:center;gap:8px;margin-top:16px;display:flex}.f-reassure svg{color:var(--icon-accent)}.f-done{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:32px 8px;display:none}.f-done.show{display:flex}.f-done-ic{background:var(--surface-accent-subtle);width:64px;height:64px;color:var(--icon-accent);border-radius:50%;justify-content:center;align-items:center;display:flex}.f-done h3{font-family:var(--font-display);font-weight:var(--fw-bold);letter-spacing:-.018em;color:var(--text-primary);margin:0;font-size:1.5rem}.f-done p{font-size:var(--text-body);color:var(--text-secondary);max-width:36ch;margin:0;line-height:1.6}.f-done-partial{max-width:560px;margin-inline:auto;padding-top:24px}.f-done-partial p{max-width:44ch}.f-done-ic-warn{color:#d97706;background:#f59e0b38}:root[data-theme=dark] .f-done-ic-warn{color:#fbbf24;background:#f59e0b47}.f-retry-list{text-align:left;flex-direction:column;gap:12px;width:100%;margin-top:18px;display:flex}.f-retry-submit{max-width:360px;margin-top:18px}@media (max-width:480px){.f-row{grid-template-columns:1fr;gap:16px;margin-bottom:16px}}
