.p2p-page{max-width:560px;margin:0 auto;padding:0 1rem 3rem}.p2p-header{align-items:center;gap:1.25rem;margin-bottom:1.75rem;animation:.4s cubic-bezier(.25,0,0,1) both p2p-enter;display:flex}.p2p-header-icon{background:color-mix(in srgb, var(--ap-colour-primary) 12%, transparent);border-radius:20px;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:2rem;transition:transform .3s cubic-bezier(.34,1.56,.64,1);display:flex}.p2p-header-icon:hover{transform:rotate(-6deg)scale(1.08)}.p2p-header h1{color:var(--ap-colour-text);margin:0 0 .25rem;font-size:1.5rem;font-weight:700}.p2p-header p{color:color-mix(in srgb, var(--ap-colour-text) 65%, transparent);margin:0;font-size:.875rem;line-height:1.5}.p2p-card{background:var(--ap-colour-card);border:1px solid color-mix(in srgb, var(--ap-colour-primary) 12%, transparent);border-radius:20px;padding:1.75rem;transition:box-shadow .3s,border-color .3s;box-shadow:0 4px 24px #00000014}.p2p-card[data-active=true]{border-color:color-mix(in srgb, var(--ap-colour-primary) 25%, transparent);box-shadow:0 4px 24px #00000014, 0 0 0 1px color-mix(in srgb, var(--ap-colour-primary) 12%, transparent), 0 0 40px color-mix(in srgb, var(--ap-colour-primary) 7%, transparent)}.p2p-state-enter{animation:.3s cubic-bezier(.25,0,0,1) both p2p-enter}.p2p-mode-enter{animation:.22s cubic-bezier(.25,0,0,1) both p2p-enter}.p2p-tabs{background:color-mix(in srgb, var(--ap-colour-text) 6%, transparent);border-radius:14px;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:1.25rem;padding:.35rem;animation:.35s cubic-bezier(.25,0,0,1) 50ms both p2p-enter;display:grid}.p2p-tab{color:color-mix(in srgb, var(--ap-colour-text) 60%, transparent);cursor:pointer;background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;gap:.45rem;padding:.65rem 1rem;font-size:.9rem;font-weight:600;transition:color .18s,background .18s,transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s;display:flex}.p2p-tab:hover{color:var(--ap-colour-text);background:color-mix(in srgb, var(--ap-colour-text) 8%, transparent)}.p2p-tab:active{transform:scale(.96)}.p2p-tab.is-active{background:var(--ap-colour-primary);color:#fff;box-shadow:0 2px 10px color-mix(in srgb, var(--ap-colour-primary) 40%, transparent);animation:.25s cubic-bezier(.34,1.56,.64,1) both p2p-tab-pop}.p2p-section{flex-direction:column;gap:1rem;display:flex}.p2p-section-label{text-transform:uppercase;letter-spacing:.06em;color:color-mix(in srgb, var(--ap-colour-text) 50%, transparent);margin:0 0 .5rem;font-size:.8rem;font-weight:600}.p2p-content-type-toggle{gap:.5rem;margin-bottom:.25rem;display:flex}.p2p-content-type-btn{cursor:pointer;color:color-mix(in srgb, var(--ap-colour-text) 55%, transparent);background:0 0;border:1px solid #0000;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.5rem .75rem;font-size:.85rem;font-weight:600;transition:all .18s cubic-bezier(.25,0,0,1);display:flex}.p2p-content-type-btn:hover{background:color-mix(in srgb, var(--ap-colour-text) 7%, transparent);color:var(--ap-colour-text)}.p2p-content-type-btn:active{transform:scale(.96)}.p2p-content-type-btn.is-active{background:color-mix(in srgb, var(--ap-colour-primary) 14%, transparent);color:var(--ap-colour-primary);border-color:color-mix(in srgb, var(--ap-colour-primary) 28%, transparent)}.p2p-dropzone{border:2px dashed color-mix(in srgb, var(--ap-colour-primary) 30%, transparent);text-align:center;cursor:pointer;background:color-mix(in srgb, var(--ap-colour-primary) 4%, transparent);border-radius:14px;padding:2rem 1.5rem;transition:all .22s cubic-bezier(.34,1.56,.64,1)}.p2p-dropzone:hover{border-color:color-mix(in srgb, var(--ap-colour-primary) 60%, transparent);background:color-mix(in srgb, var(--ap-colour-primary) 6%, transparent);transform:scale(1.01)}.p2p-dropzone.is-active{border-color:var(--ap-colour-primary);background:color-mix(in srgb, var(--ap-colour-primary) 10%, transparent);box-shadow:0 0 0 4px color-mix(in srgb, var(--ap-colour-primary) 12%, transparent);transform:scale(1.02)}.p2p-dropzone-icon{justify-content:center;margin-bottom:.65rem;transition:transform .22s cubic-bezier(.34,1.56,.64,1);display:flex}.p2p-dropzone:hover .p2p-dropzone-icon,.p2p-dropzone.is-active .p2p-dropzone-icon{transform:translateY(-4px)scale(1.1)}.p2p-dropzone-text{color:color-mix(in srgb, var(--ap-colour-text) 70%, transparent);margin:0 0 .5rem;font-size:.9rem}.p2p-dropzone-sub{color:color-mix(in srgb, var(--ap-colour-text) 40%, transparent);margin:0;font-size:.78rem}.p2p-file-list{flex-direction:column;gap:.5rem;display:flex}.p2p-file-item{background:color-mix(in srgb, var(--ap-colour-text) 5%, transparent);border-radius:10px;align-items:center;gap:.75rem;padding:.65rem .85rem;font-size:.875rem;transition:background .15s;animation:.25s cubic-bezier(.34,1.56,.64,1) both p2p-item-in;display:flex}.p2p-file-item:hover{background:color-mix(in srgb, var(--ap-colour-text) 8%, transparent)}.p2p-file-item-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ap-colour-text);flex:1;overflow:hidden}.p2p-file-item-size{color:color-mix(in srgb, var(--ap-colour-text) 45%, transparent);flex-shrink:0;font-size:.78rem}.p2p-file-item-icon{flex-shrink:0;align-items:center;display:flex}.p2p-file-item-remove{cursor:pointer;color:color-mix(in srgb, var(--ap-colour-text) 35%, transparent);background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:.15rem;line-height:1;transition:color .12s,transform .15s cubic-bezier(.34,1.56,.64,1)}.p2p-file-item-remove:hover{color:var(--ap-colour-error,#ef4444);transform:scale(1.2)rotate(5deg)}.p2p-textarea{border:1px solid color-mix(in srgb, var(--ap-colour-text) 14%, transparent);background:color-mix(in srgb, var(--ap-colour-text) 4%, transparent);width:100%;min-height:120px;color:var(--ap-colour-text);resize:vertical;box-sizing:border-box;border-radius:12px;padding:.85rem;font-family:inherit;font-size:.9rem;transition:border-color .15s,box-shadow .15s}.p2p-textarea:focus{border-color:var(--ap-colour-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--ap-colour-primary) 12%, transparent);outline:none}.p2p-textarea::placeholder{color:color-mix(in srgb, var(--ap-colour-text) 35%, transparent)}.p2p-btn{cursor:pointer;white-space:nowrap;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.925rem;font-weight:600;transition:transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s,filter .15s,background .15s;display:inline-flex}.p2p-btn:disabled{opacity:.45;cursor:not-allowed}.p2p-btn:active:not(:disabled){transition-duration:80ms;transform:scale(.96)!important}.p2p-btn-primary{background:var(--ap-colour-primary);color:#fff;width:100%;box-shadow:0 2px 10px color-mix(in srgb, var(--ap-colour-primary) 30%, transparent)}.p2p-btn-primary:not(:disabled):hover{filter:brightness(1.08);box-shadow:0 6px 20px color-mix(in srgb, var(--ap-colour-primary) 45%, transparent);transform:translateY(-2px)}.p2p-btn-secondary{background:color-mix(in srgb, var(--ap-colour-text) 8%, transparent);color:var(--ap-colour-text);width:100%}.p2p-btn-secondary:not(:disabled):hover{background:color-mix(in srgb, var(--ap-colour-text) 13%, transparent);transform:translateY(-1px)}.p2p-code-block{background:color-mix(in srgb, var(--ap-colour-primary) 6%, transparent);border:1px solid color-mix(in srgb, var(--ap-colour-primary) 18%, transparent);text-align:center;border-radius:16px;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;animation:.4s cubic-bezier(.25,0,0,1) both p2p-code-block-in;display:flex}.p2p-code-label{text-transform:uppercase;letter-spacing:.08em;color:color-mix(in srgb, var(--ap-colour-text) 55%, transparent);margin:0;font-size:.8rem;font-weight:600}.p2p-code-value{letter-spacing:.35em;color:var(--ap-colour-primary);-webkit-user-select:all;user-select:all;gap:.05em;padding-right:.35em;font-family:Courier New,monospace;font-size:2.5rem;font-weight:800;line-height:1;display:flex}.p2p-code-char{animation:.45s cubic-bezier(.34,1.56,.64,1) both p2p-char-pop;display:inline-block}.p2p-code-actions{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.p2p-code-copy-btn{border:1px solid color-mix(in srgb, var(--ap-colour-primary) 30%, transparent);background:color-mix(in srgb, var(--ap-colour-primary) 10%, transparent);color:var(--ap-colour-primary);cursor:pointer;border-radius:8px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.8rem;font-weight:600;transition:all .18s cubic-bezier(.25,0,0,1);display:inline-flex}.p2p-code-copy-btn:hover{background:color-mix(in srgb, var(--ap-colour-primary) 18%, transparent);transform:translateY(-1px)}.p2p-code-copy-btn:active{transform:scale(.95)}.p2p-code-input{border:2px solid color-mix(in srgb, var(--ap-colour-text) 14%, transparent);background:color-mix(in srgb, var(--ap-colour-text) 4%, transparent);width:100%;color:var(--ap-colour-text);letter-spacing:.25em;text-align:center;text-transform:uppercase;box-sizing:border-box;border-radius:12px;padding:.85rem 1rem;font-family:Courier New,monospace;font-size:1.5rem;font-weight:700;transition:border-color .15s,box-shadow .2s,transform .15s cubic-bezier(.34,1.56,.64,1)}.p2p-code-input:focus{border-color:var(--ap-colour-primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--ap-colour-primary) 12%, transparent);outline:none;transform:scale(1.01)}.p2p-code-input::placeholder{color:color-mix(in srgb, var(--ap-colour-text) 25%, transparent);letter-spacing:.1em;font-size:1.25rem;font-weight:400}.p2p-status{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 1.5rem;display:flex}.p2p-status-icon{font-size:3rem;line-height:1}.p2p-status-title{color:var(--ap-colour-text);margin:0;font-size:1.1rem;font-weight:700}.p2p-status-desc{color:color-mix(in srgb, var(--ap-colour-text) 60%, transparent);margin:0;font-size:.875rem;line-height:1.5}.p2p-radar-container{justify-content:center;align-items:center;width:56px;height:56px;display:inline-flex;position:relative}.p2p-radar-ring{border:2px solid var(--ap-colour-primary);opacity:0;z-index:-1;pointer-events:none;border-radius:50%;animation:2.2s ease-out infinite p2p-radar;position:absolute;inset:-4px}.p2p-radar-ring:nth-child(2){animation-delay:1.1s}.p2p-success-icon{animation:.55s cubic-bezier(.34,1.56,.64,1) both p2p-success;display:inline-flex}.p2p-progress-wrap{flex-direction:column;gap:.5rem;display:flex}.p2p-progress-bar{background:color-mix(in srgb, var(--ap-colour-text) 10%, transparent);border-radius:99px;height:10px;overflow:hidden}.p2p-progress-fill{background:linear-gradient(90deg, var(--ap-colour-primary) 0%, color-mix(in srgb, var(--ap-colour-primary) 65%, white) 50%, var(--ap-colour-primary) 100%);height:100%;box-shadow:0 0 10px color-mix(in srgb, var(--ap-colour-primary) 45%, transparent);background-size:200%;border-radius:99px;transition:width .35s cubic-bezier(.25,0,0,1);animation:1.8s linear infinite p2p-shimmer}.p2p-progress-detail{color:color-mix(in srgb, var(--ap-colour-text) 55%, transparent);justify-content:space-between;align-items:center;gap:.5rem;font-size:.78rem;display:flex}.p2p-progress-right{text-align:right;white-space:nowrap}.p2p-file-size-badge{background:color-mix(in srgb, var(--ap-colour-primary) 15%, transparent);color:var(--ap-colour-primary);vertical-align:middle;letter-spacing:.02em;border-radius:4px;margin-left:5px;padding:1px 5px;font-size:.65rem;font-weight:600;display:inline-block}.p2p-file-item.is-warn .p2p-file-size-badge{color:#b45309;background:#f59e0b2e}.p2p-large-file-note{color:color-mix(in srgb, var(--ap-colour-text) 55%, transparent);background:color-mix(in srgb, var(--ap-colour-primary) 7%, transparent);border-radius:8px;align-items:center;gap:6px;margin:6px 0 0;padding:6px 10px;font-size:.78rem;animation:.3s cubic-bezier(.25,0,0,1) both p2p-item-in;display:flex}.p2p-received-list{flex-direction:column;gap:.65rem;display:flex}.p2p-received-item-icon{flex-shrink:0;align-items:center;display:flex}.p2p-received-item{background:color-mix(in srgb, var(--ap-colour-success,#22c55e) 8%, transparent);border:1px solid color-mix(in srgb, var(--ap-colour-success,#22c55e) 20%, transparent);border-radius:12px;align-items:center;gap:.75rem;padding:.85rem 1rem;transition:transform .2s cubic-bezier(.25,0,0,1);animation:.4s cubic-bezier(.34,1.56,.64,1) both p2p-item-in;display:flex}.p2p-received-item:hover{transform:translateY(-1px)}.p2p-received-item-info{flex:1;min-width:0}.p2p-received-item-name{color:var(--ap-colour-text);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.p2p-received-item-size{color:color-mix(in srgb, var(--ap-colour-text) 45%, transparent);margin-top:.15rem;font-size:.775rem}.p2p-download-btn{background:var(--ap-colour-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:.4rem;padding:.45rem .9rem;font-size:.8rem;font-weight:600;text-decoration:none;transition:filter .15s,transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .15s;display:inline-flex}.p2p-download-btn:hover{filter:brightness(1.1);box-shadow:0 4px 12px color-mix(in srgb, var(--ap-colour-primary) 40%, transparent);transform:translateY(-2px)}.p2p-download-btn:active{transform:scale(.95)}.p2p-privacy-note{background:color-mix(in srgb, var(--ap-colour-text) 5%, transparent);border-left:3px solid color-mix(in srgb, var(--ap-colour-primary) 30%, transparent);color:color-mix(in srgb, var(--ap-colour-text) 55%, transparent);border-radius:12px;align-items:flex-start;gap:.6rem;margin-top:.5rem;padding:.75rem 1rem;font-size:.8rem;line-height:1.5;display:flex}.p2p-privacy-icon{flex-shrink:0;margin-top:.05rem}.p2p-divider{color:color-mix(in srgb, var(--ap-colour-text) 30%, transparent);align-items:center;gap:.75rem;font-size:.78rem;display:flex}.p2p-divider:before,.p2p-divider:after{content:"";background:color-mix(in srgb, var(--ap-colour-text) 12%, transparent);flex:1;height:1px}.p2p-error-box{background:color-mix(in srgb, var(--ap-colour-error,#ef4444) 8%, transparent);border:1px solid color-mix(in srgb, var(--ap-colour-error,#ef4444) 20%, transparent);color:var(--ap-colour-error,#ef4444);text-align:center;border-radius:12px;padding:.85rem 1rem;font-size:.875rem;animation:.4s cubic-bezier(.36,.07,.19,.97) both p2p-shake}@keyframes p2p-spin{to{transform:rotate(360deg)}}.p2p-spinner{border:2.5px solid color-mix(in srgb, var(--ap-colour-text) 12%, transparent);border-top-color:var(--ap-colour-primary);border-radius:50%;flex-shrink:0;width:22px;height:22px;animation:.75s cubic-bezier(.5,.1,.5,.9) infinite p2p-spin;display:inline-block}@keyframes p2p-enter{0%{opacity:0;transform:translateY(10px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes p2p-tab-pop{0%{transform:scale(.94)}to{transform:scale(1)}}@keyframes p2p-char-pop{0%{opacity:0;transform:translateY(10px)scale(.6)}65%{transform:translateY(-3px)scale(1.08)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes p2p-code-block-in{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes p2p-shimmer{0%{background-position:-100%}to{background-position:200%}}@keyframes p2p-success{0%{opacity:0;transform:scale(.3)rotate(-10deg)}55%{transform:scale(1.15)rotate(3deg)}75%{transform:scale(.95)rotate(-1deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes p2p-radar{0%{opacity:.8;transform:scale(.7)}to{opacity:0;transform:scale(2.8)}}@keyframes p2p-item-in{0%{opacity:0;transform:scale(.94)translateY(-6px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes p2p-pulse{0%,to{opacity:1}50%{opacity:.45}}.p2p-pulse{animation:2.2s ease-in-out infinite p2p-pulse}@keyframes p2p-float{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.p2p-float{animation:3s ease-in-out infinite p2p-float}@keyframes p2p-shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-5px)}40%,60%{transform:translate(5px)}}.p2p-marketing{max-width:560px;margin:2.5rem auto 0;padding:0 1rem}.p2p-marketing-heading{color:var(--ap-colour-text);margin:0 0 1.25rem;font-size:1.15rem;font-weight:700}.p2p-features-grid{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}@media (max-width:480px){.p2p-features-grid{grid-template-columns:1fr}}.p2p-feature-card{border:1px solid color-mix(in srgb, var(--ap-colour-text) 10%, transparent);background:var(--ap-colour-card);border-radius:16px;flex-direction:column;gap:.6rem;padding:1.25rem;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .22s,border-color .2s;display:flex}.p2p-feature-card:hover{border-color:color-mix(in srgb, var(--ap-colour-primary) 30%, transparent);transform:translateY(-4px);box-shadow:0 12px 32px #0000001a}.p2p-feature-icon{background:color-mix(in srgb, var(--ap-colour-primary) 10%, transparent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:transform .22s cubic-bezier(.34,1.56,.64,1),background .2s;display:flex}.p2p-feature-card:hover .p2p-feature-icon{background:color-mix(in srgb, var(--ap-colour-primary) 16%, transparent);transform:scale(1.12)rotate(-4deg)}.p2p-feature-title{color:var(--ap-colour-text);margin:0;font-size:.9rem;font-weight:700}.p2p-feature-desc{color:color-mix(in srgb, var(--ap-colour-text) 58%, transparent);margin:0;font-size:.81rem;line-height:1.55}.p2p-how-it-works{background:color-mix(in srgb, var(--ap-colour-primary) 5%, transparent);border:1px solid color-mix(in srgb, var(--ap-colour-primary) 14%, transparent);border-radius:18px;margin-top:2rem;padding:1.5rem}.p2p-how-it-works-title{color:var(--ap-colour-text);margin:0 0 1.1rem;font-size:1rem;font-weight:700}.p2p-steps{flex-direction:column;gap:.85rem;display:flex}.p2p-step{align-items:flex-start;gap:.85rem;transition:transform .2s cubic-bezier(.25,0,0,1);display:flex}.p2p-step:hover{transform:translate(4px)}.p2p-step-number{background:var(--ap-colour-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;margin-top:.1rem;font-size:.75rem;font-weight:700;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;display:flex}.p2p-step:hover .p2p-step-number{box-shadow:0 4px 12px color-mix(in srgb, var(--ap-colour-primary) 40%, transparent);transform:scale(1.15)}.p2p-step-content{flex:1}.p2p-step-title{color:var(--ap-colour-text);margin:0 0 .15rem;font-size:.875rem;font-weight:600}.p2p-step-desc{color:color-mix(in srgb, var(--ap-colour-text) 55%, transparent);margin:0;font-size:.8rem;line-height:1.5}
