.ai-photo-editor-page{background:#000;min-height:100vh}.ape-upload-zone{text-align:center;cursor:pointer;background:#ffffff08;border:2px dashed #ffffff26;border-radius:1.5rem;padding:3rem 2rem;transition:all .3s;position:relative;overflow:hidden}.ape-upload-zone:before{content:"";pointer-events:none;background:radial-gradient(at 50% 0,#ff007a0a 0%,#0000 70%);position:absolute;inset:0}.ape-upload-zone:hover,.ape-upload-zone.drag-over{background:#ff007a0a;border-color:#ff007a80;box-shadow:0 0 40px #ff007a0f}.ape-upload-zone .upload-icon-ring{background:#ff007a14;border:1.5px solid #ff007a33;border-radius:50%;justify-content:center;align-items:center;width:68px;height:68px;margin:0 auto 1.25rem;transition:transform .3s,box-shadow .3s;display:flex}.ape-upload-zone:hover .upload-icon-ring{transform:scale(1.08);box-shadow:0 0 20px #ff007a26}.ape-thumb-strip{flex-wrap:wrap;gap:.625rem;display:flex}.ape-thumb{cursor:pointer;border:2px solid #0000;border-radius:.75rem;flex-shrink:0;width:72px;height:72px;transition:border-color .2s,transform .2s;position:relative;overflow:hidden}.ape-thumb img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.ape-thumb:hover{border-color:#ff007a80;transform:scale(1.04)}.ape-thumb.active{border-color:#ff007a;box-shadow:0 0 12px #ff007a59}.ape-thumb-remove{cursor:pointer;opacity:0;background:#000000bf;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;transition:opacity .2s;display:flex;position:absolute;top:3px;right:3px}.ape-thumb:hover .ape-thumb-remove{opacity:1}.ape-select{appearance:none;color:#fff;cursor:pointer;background:#ffffff0a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.4)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") right .875rem center no-repeat;border:1px solid #ffffff1a;border-radius:.75rem;width:100%;padding:.65rem 2.5rem .65rem 1rem;font-size:.875rem;transition:border-color .2s,background .2s}.ape-select:focus{background-color:#ff007a0a;border-color:#ff007a80;outline:none}.ape-suggestion-chip{color:#fff9;cursor:pointer;white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff17;border-radius:9999px;align-items:center;padding:.28rem .65rem;font-size:.72rem;font-weight:500;transition:all .18s;display:inline-flex}.ape-suggestion-chip:hover{color:#ffffffe6;background:#ff007a1a;border-color:#ff007a59;transform:translateY(-1px)}.ape-suggestion-chip:active{transform:scale(.97)}.ape-ratio-grid{flex-wrap:wrap;gap:.5rem;display:flex}.ape-ratio-pill{color:#ffffff8c;cursor:pointer;letter-spacing:.01em;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:9999px;padding:.3rem .75rem;font-size:.75rem;font-weight:600;transition:all .18s}.ape-ratio-pill:hover{color:#ffffffd9;background:#ffffff14;border-color:#fff3}.ape-ratio-pill.active{color:#ff5c9f;background:#ff007a26;border-color:#ff007a80;box-shadow:0 0 10px #ff007a26}.ape-result-toolbar{flex-direction:column;gap:.5rem;display:flex}.ape-toolbar-label{text-transform:uppercase;letter-spacing:.06em;color:#ffffff4d;font-size:.7rem;font-weight:600}.ape-toolbar-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.ape-tool-btn{cursor:pointer;color:#ffffffbf;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:.5rem;align-items:center;gap:.375rem;padding:.35rem .75rem;font-size:.75rem;font-weight:600;transition:all .18s;display:inline-flex}.ape-tool-btn:hover{color:#fff;background:#ffffff1a;border-color:#fff3;transform:translateY(-1px)}.ape-tool-btn--ghost{color:#ffffff73;background:0 0;border-color:#ffffff12}.ape-tool-btn--ghost:hover{color:#fffc;background:#ffffff0d;border-color:#ffffff26}.ape-tool-btn--accent{color:#2dd4bf;background:#14b8a626;border-color:#14b8a659}.ape-tool-btn--accent:hover{color:#5eead4;background:#14b8a640;border-color:#14b8a68c;box-shadow:0 0 12px #14b8a633}.ape-generate-btn{letter-spacing:.01em;color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff007a 0%,#c800ff 100%);border:none;border-radius:.875rem;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.9rem 1.5rem;font-size:.95rem;font-weight:700;transition:all .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 24px #ff007a4d}.ape-generate-btn:after{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff1f 0%,#0000 60%);position:absolute;inset:0}.ape-generate-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 32px #ff007a73}.ape-generate-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.ape-policy-tooltip-wrap{cursor:default;-webkit-user-select:none;user-select:none;align-items:center;gap:.375rem;margin-top:.75rem;display:inline-flex;position:relative}.ape-policy-tooltip{color:#ffffff8c;z-index:50;pointer-events:none;background:#0a0a0ef7;border:1px solid #ffffff1a;border-radius:.75rem;width:280px;padding:.75rem 1rem;font-size:.72rem;line-height:1.65;display:none;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 8px 32px #0009}.ape-policy-tooltip-wrap:hover .ape-policy-tooltip{display:block}.ape-preview-area{background:#0006;border:1px solid #ffffff0f;border-radius:1.25rem;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:420px;display:flex;position:relative;overflow:hidden}.ape-preview-area img{-o-object-fit:contain;object-fit:contain;border-radius:.75rem;max-width:100%;max-height:100%}.ape-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;height:100%;padding:3rem;display:flex}.ape-generating-overlay{z-index:10;border-radius:inherit;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex;position:absolute;inset:0}.ape-spinner-ring{border:3px solid #ff007a33;border-top-color:#ff007a;border-radius:50%;width:56px;height:56px;animation:.9s linear infinite ape-spin}@keyframes ape-spin{to{transform:rotate(360deg)}}.ape-result-bar{background:#ffffff06;border-top:1px solid #ffffff0f;justify-content:space-between;align-items:center;width:100%;padding:.875rem 1.25rem;display:flex}.ape-feature-card{background:#ffffff06;border:1px solid #ffffff0f;border-radius:1.25rem;padding:1.5rem;transition:all .3s}.ape-feature-card:hover{background:#ffffff0a;border-color:#ff007a33;transform:translateY(-3px);box-shadow:0 12px 40px #0006}.ape-feature-icon{border-radius:.875rem;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:1rem;display:flex}.ape-step-card{text-align:center;position:relative}.ape-step-num{color:#ff5c9f;background:#ff007a1f;border:1px solid #ff007a40;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;margin:0 auto 1.25rem;font-size:.8rem;font-weight:700;display:flex}.ape-faq-item{background:#ffffff06;border:1px solid #ffffff12;border-radius:1rem;transition:border-color .2s;overflow:hidden}.ape-faq-item.open{border-color:#ff007a33}.ape-faq-trigger{color:#fff;cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1.25rem 1.5rem;transition:background .2s;display:flex}.ape-faq-trigger:hover{background:#ffffff08}.ape-faq-body{color:#ffffff8c;border-top:1px solid #ffffff0d;padding:1rem 1.5rem 1.25rem;font-size:.9rem;line-height:1.75}.ape-model-badge{color:#ffffffb3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);letter-spacing:.02em;background:#000000a6;border:1px solid #ffffff1a;border-radius:9999px;padding:.2rem .6rem;font-size:.68rem;font-weight:600;position:absolute;top:.75rem;left:.75rem}@keyframes ape-pulse-glow{0%,to{box-shadow:0 0 #ff007a26}50%{box-shadow:0 0 16px 4px #ff007a40}}.ape-badge-pulse{animation:3s ease-in-out infinite ape-pulse-glow}.ape-textarea{color:#fff;resize:none;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:.875rem;width:100%;padding:.875rem 1rem;font-family:Inter,system-ui,sans-serif;font-size:.875rem;line-height:1.6;transition:border-color .2s,background .2s}.ape-textarea::placeholder{color:#ffffff40}.ape-textarea:focus{background:#ff007a08;border-color:#ff007a73;outline:none}@media (max-width:1024px){.ape-preview-area{min-height:320px}}@media (max-width:640px){.ape-suggestion-chip{padding:.3rem .6rem;font-size:.68rem}.ape-preview-area{min-height:260px}}
