.spof__progress li.is-complete{color:var(--spof-brand)}.spof__progress li.is-complete .spof__progress-mark{border-color:var(--spof-brand);background:var(--spof-brand);color:#fff}.spof__progress li.is-complete .spof__progress-mark i{opacity:0}.spof__progress li.is-complete .spof__progress-tick{opacity:1;transform:scale(1)}.spof .spof__card{position:relative;display:flex;flex-direction:column;min-width:0;margin:0;padding:12px;overflow:hidden;border:1.5px solid var(--spof-line);border-radius:14px;background:var(--spof-surface);color:var(--spof-ink);font-weight:400;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}.spof .spof__card:hover{border-color:var(--spof-line-strong);box-shadow:0 8px 20px rgba(16,60,54,.09);transform:translateY(-2px)}.spof .spof__card.is-selected{border-color:var(--spof-brand);background:var(--spof-brand-soft);box-shadow:0 0 0 1px var(--spof-brand)}.spof .spof__card:focus-within{outline:3px solid rgba(15,112,97,.32);outline-offset:2px}.spof__card input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;clip:rect(0 0 0 0)}.spof__card-visual{display:grid;aspect-ratio:3/2;margin:0 0 12px;overflow:hidden;place-items:center;border-radius:9px;background:linear-gradient(145deg,#124f66,#0a2e50)}.spof__card-visual img{width:100%;height:100%;object-fit:contain}.spof__card-mark{color:#fff;font-size:15px;font-weight:800;letter-spacing:.09em}.spof__card-name{display:block;margin:0;padding-right:28px;color:var(--spof-navy);font-size:13.5px;font-weight:700;line-height:1.3}.spof__card-unit{display:block;margin:4px 0 0;color:var(--spof-muted);font-size:11.5px}.spof__check{position:absolute;top:12px;right:12px;display:grid;width:24px;height:24px;place-items:center;border:2px solid var(--spof-surface);border-radius:50%;background:var(--spof-brand);color:#fff;opacity:0;transform:scale(.6);transition:opacity .16s ease,transform .16s ease}.spof__check .spof__icon{width:15px;height:15px}.spof .spof__card.is-selected .spof__check{opacity:1;transform:scale(1)}.spof__file{display:grid;grid-template-columns:42px minmax(0,1fr) 36px;gap:12px;align-items:center;padding:12px;border:1px solid var(--spof-line);border-radius:11px;background:var(--spof-surface);animation:spof-file-in .22s ease-out both}.spof__file-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:9px;background:var(--spof-brand-soft);color:var(--spof-brand);font-size:9px;font-weight:850;letter-spacing:.04em}.spof__file-body{min-width:0}.spof__file-body strong,.spof__file-body small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spof__file-body strong{color:var(--spof-ink);font-size:13.5px;font-weight:650}.spof__file-body small{margin-top:2px;color:var(--spof-muted);font-size:11.5px}.spof__file-progress{display:block;height:4px;margin-top:6px;overflow:hidden;border-radius:4px;background:#e6eeec}.spof__file-progress b{display:block;width:6%;height:100%;border-radius:4px;background:var(--spof-brand);transition:width .18s ease}.spof .spof__file-remove{display:grid;width:34px;height:34px;padding:0;place-items:center;border:1px solid transparent;border-radius:9px;background:0 0;box-shadow:none;color:var(--spof-muted);cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease}.spof .spof__file-remove .spof__icon{width:17px;height:17px}.spof .spof__file-remove:hover{border-color:#f2ccc7;background:var(--spof-danger-soft);color:var(--spof-danger);transform:rotate(90deg)}.spof .spof__file-remove:active{transform:rotate(90deg) scale(.92)}.spof .spof__file-remove:focus-visible{outline:2px solid var(--spof-danger);outline-offset:2px}.spof .spof__file-remove:disabled{opacity:.4;cursor:not-allowed;transform:none}.spof input.has-error,.spof select.has-error,.spof textarea.has-error{border-color:var(--spof-danger)!important;box-shadow:0 0 0 3px rgba(180,35,24,.11)!important}.spof .spof__file-remove{background:0 0!important;background-image:none!important;box-shadow:none!important;text-transform:none!important}.spof .spof__file-remove:hover{background:var(--spof-danger-soft)!important;color:var(--spof-danger)!important}.spof .spof__button.is-busy{pointer-events:none}.spof .spof__button.is-busy .spof__icon{animation:spof-spin .7s linear infinite}.spof__summary dd.is-changing,.spof__total strong.is-changing{animation:spof-value .22s ease-out}@media (max-width:640px){.spof .spof__card{display:grid;grid-template-columns:68px minmax(0,1fr);gap:0 12px;align-items:center;padding:10px}.spof__card-visual{grid-row:1/3;margin:0;aspect-ratio:1}.spof__card-name{align-self:end;margin:0;padding-right:34px}.spof__card-unit{align-self:start;margin:2px 0 0;padding-right:34px}.spof__check{top:50%;right:10px;margin-top:-12px}}@media (prefers-reduced-motion:reduce){.spof .spof__file-remove:hover{transform:none}}