:root{--fhcp-accent:#e05c2c;--fhcp-accent-h:#c94e22;--fhcp-green:#3ab446;--fhcp-red:#d93025;--fhcp-blue:#1a73e8;--fhcp-bg:#fff;--fhcp-surface:#f8f9fa;--fhcp-border:#e0e0e0;--fhcp-text:#333;--fhcp-muted:#666;--fhcp-radius:10px;--fhcp-shadow:0 4px 24px rgba(0,0,0,.12)}.fhcp-uploader-intro{display:flex;align-items:flex-start;gap:12px;background:#f0f4ff;border:1px solid #d0daf8;border-radius:var(--fhcp-radius);padding:14px 16px;margin-bottom:10px}.fhcp-uploader-intro-icon{width:32px;height:32px;border-radius:50%;background:#1c2b4b;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.fhcp-uploader-intro-icon svg{width:16px;height:16px;stroke:#fff;color:#fff}.fhcp-uploader-intro-body{display:flex;flex-direction:column;gap:3px}.fhcp-uploader-intro-body strong{font-size:.875rem;font-weight:700;color:#1c2b4b;line-height:1.3}.fhcp-uploader-intro-body span{font-size:.8rem;color:#4a5568;line-height:1.55}.fhcp-uploader{background:var(--fhcp-surface);border:2px dashed var(--fhcp-border);border-radius:var(--fhcp-radius);padding:20px 24px;margin-bottom:28px;transition:border-color .2s,background .2s}.fhcp-uploader.fhcp-dragging,.fhcp-uploader:hover{border-color:var(--fhcp-accent);background:#fff8f5}.fhcp-uploader-inner{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.fhcp-upload-icon{width:36px;height:36px;color:var(--fhcp-accent);flex-shrink:0}.fhcp-uploader-text{flex:1;min-width:120px}.fhcp-filename{display:block;font-weight:600;color:var(--fhcp-text);font-size:.9rem}.fhcp-filesize{font-size:.8rem;color:var(--fhcp-muted)}.fhcp-hint{margin:8px 0 0;font-size:.78rem;color:var(--fhcp-muted)}.fhcp-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s,transform .1s;white-space:nowrap}.fhcp-btn:active{transform:scale(.97)}.fhcp-btn:disabled{opacity:.5;cursor:not-allowed}.fhcp-btn-select{background:var(--fhcp-surface);border:1.5px solid var(--fhcp-border);color:var(--fhcp-text)}.fhcp-btn-select:hover:not(:disabled){border-color:var(--fhcp-accent);color:var(--fhcp-accent)}.fhcp-btn-parse{background:#1c2b4b;color:#fff}.fhcp-btn-parse:hover:not(:disabled){background:#0f1c33}.fhcp-modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.72);z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.fhcp-modal-box{background:#fff;border-radius:20px;box-shadow:0 24px 72px rgba(0,0,0,.22),0 0 0 1px rgba(0,0,0,.06);width:100%;max-width:456px;overflow:hidden;animation:fhcpModalIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes fhcpModalIn{from{transform:translateY(36px) scale(.94);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.fhcp-modal-track{height:4px;background:#efefef}.fhcp-modal-fill{height:4px;width:0%;background:linear-gradient(90deg,var(--fhcp-accent) 0%,#f5a623 100%);transition:width .55s cubic-bezier(.4,0,.2,1)}.fhcp-modal-header{padding:30px 32px 18px;text-align:center}.fhcp-modal-icon{position:relative;width:82px;height:82px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center}.fhcp-icon-ring{position:absolute;border-radius:50%;border:2px solid transparent}.fhcp-icon-ring-1{inset:-10px;border-top-color:var(--fhcp-accent);border-right-color:rgba(224,92,44,.25);animation:fhcpRingSpin 1.9s linear infinite}.fhcp-icon-ring-2{inset:-19px;border-top-color:rgba(224,92,44,.2);border-left-color:rgba(224,92,44,.1);animation:fhcpRingSpin 3.2s linear infinite reverse}@keyframes fhcpRingSpin{to{transform:rotate(360deg)}}.fhcp-icon-core{position:relative;z-index:2;width:60px;height:60px;border-radius:50%;background:linear-gradient(145deg,var(--fhcp-accent) 0%,#f07b3f 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px rgba(224,92,44,.38)}.fhcp-icon-core svg{width:27px;height:27px;stroke:#fff;color:#fff}#fhcp-modal-title{margin:0 0 6px;font-size:1.2rem;font-weight:700;color:var(--fhcp-text);letter-spacing:-.01em}.fhcp-modal-subtitle{margin:0;font-size:.875rem;color:var(--fhcp-muted)}.fhcp-steps{padding:4px 24px 22px}.fhcp-step{display:flex;align-items:center;gap:14px;padding:10px 12px;border-radius:10px;margin-bottom:2px;transition:background .25s,opacity .3s;opacity:.38;position:relative}.fhcp-step+.fhcp-step::before{content:"";position:absolute;left:28px;top:-7px;height:7px;width:2px;background:var(--fhcp-border);border-radius:2px}.fhcp-step-num{width:34px;height:34px;border-radius:50%;border:2px solid var(--fhcp-border);background:0 0;color:var(--fhcp-muted);display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:700;flex-shrink:0;position:relative;transition:background .35s,border-color .35s,box-shadow .35s,color .2s;overflow:hidden}@keyframes fhcpNumPulse{0%,100%{box-shadow:0 0 0 0 rgba(224,92,44,.5)}50%{box-shadow:0 0 0 8px rgba(224,92,44,0)}}.fhcp-num-text{line-height:1}.fhcp-num-spin,.fhcp-num-check{display:none;position:absolute;inset:0;align-items:center;justify-content:center}.fhcp-num-spin svg,.fhcp-num-check svg{width:16px;height:16px}.fhcp-num-spin circle{transform-box:fill-box;transform-origin:center;animation:fhcpArcSpin .75s linear infinite;stroke:currentColor}@keyframes fhcpArcSpin{to{transform:rotate(360deg)}}.fhcp-check-tick{stroke-dasharray:22;stroke-dashoffset:22;stroke:currentColor;transition:stroke-dashoffset .38s ease .05s}.fhcp-step.fhcp-step-done .fhcp-check-tick{stroke-dashoffset:0}.fhcp-step-label{flex:1;font-size:.875rem;color:var(--fhcp-text);font-weight:500;line-height:1.3;display:flex;align-items:center;flex-wrap:wrap;gap:4px;transition:font-weight .2s}.fhcp-ai-dots{display:none;align-items:center;gap:3px}.fhcp-ai-dots span{display:block;width:4px;height:4px;border-radius:50%;background:var(--fhcp-accent);animation:fhcpDotBounce 1.2s infinite ease-in-out}.fhcp-ai-dots span:nth-child(2){animation-delay:.2s}.fhcp-ai-dots span:nth-child(3){animation-delay:.4s}@keyframes fhcpDotBounce{0%,80%,100%{transform:scale(.55);opacity:.4}40%{transform:scale(1);opacity:1}}.fhcp-step-eta{font-size:.75rem;color:var(--fhcp-muted);flex-shrink:0}.fhcp-modal-result{padding:4px 28px 32px;text-align:center}@keyframes fhcpResultPop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.fhcp-result-disclaimer svg{width:13px;height:13px;flex-shrink:0;margin-top:1px;stroke:#c0702a}#fhcp-banner{display:flex;align-items:center;gap:10px;background:#e8f5e9;border:1.5px solid #a5d6a7;border-radius:8px;padding:12px 16px;margin-top:20px;margin-bottom:20px;font-size:.875rem;color:#2e7d32}@media (max-width:600px){.fhcp-uploader-inner{flex-direction:column;align-items:flex-start}.fhcp-modal-box{border-radius:12px}.fhcp-steps,.fhcp-modal-header,.fhcp-modal-result{padding-left:20px;padding-right:20px}}#fhcp-guard-title{margin:0 0 6px;font-size:1.2rem;font-weight:700;color:var(--fhcp-text);letter-spacing:-.01em}