body{margin:0;padding:0}#app{width:100%;min-height:100vh}@media (max-width: 768px){.home-container{padding:2rem 1rem}.home-container h1{font-size:2.5rem}.home-description{font-size:1.1rem}.navigation{grid-template-columns:1fr;gap:1.5rem}.nav-link{padding:1.5rem}.nav-icon{font-size:2.5rem;margin-right:1rem;min-width:50px}.nav-text h3{font-size:1.3rem}.nav-text p{font-size:.9rem}}@media (max-width: 480px){.home-container{padding:1.5rem .5rem}.home-container h1{font-size:2rem}.home-description{font-size:1rem;margin-bottom:3rem}.nav-link{padding:1rem;flex-direction:column;text-align:center}.nav-icon{margin-right:0;margin-bottom:1rem}.nav-text{text-align:center}}*{box-sizing:border-box}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}::selection{background-color:#ffe6bd;color:#453819}button{cursor:pointer;border:none;background:none;font-family:inherit}button:disabled{cursor:not-allowed;opacity:.6}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}input,textarea,select{font-family:inherit;font-size:inherit}ul,ol{list-style:none;padding:0;margin:0}h1,h2,h3,h4,h5,h6{margin:0;font-weight:inherit;font-size:inherit}p{margin:0}table{border-collapse:collapse;border-spacing:0}code{font-family:Courier New,Courier,monospace;background-color:#f5f5f5;padding:2px 4px;border-radius:3px;font-size:.9em}pre{font-family:Courier New,Courier,monospace;background-color:#f5f5f5;padding:1rem;border-radius:5px;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word}blockquote{margin:0;padding:1rem;border-left:4px solid #FFE6BD;background-color:#f9f9f9;font-style:italic}hr{border:none;border-top:1px solid #e5e5e5;margin:2rem 0}.loading{display:inline-block;width:20px;height:20px;border:3px solid #f3f3f3;border-top:3px solid #FFE6BD;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .5s ease-in}.slide-in{animation:slideIn .5s ease-out}@keyframes slideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.scale-in{animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.hover-lift{transition:transform .2s ease}.hover-lift:hover{transform:translateY(-2px)}.shadow-sm{box-shadow:0 1px 2px #0000000d}.shadow{box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.rounded-sm{border-radius:.125rem}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.space-y-1>*+*{margin-top:.25rem}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-5>*+*{margin-top:1.25rem}.space-y-6>*+*{margin-top:1.5rem}.space-x-1>*+*{margin-left:.25rem}.space-x-2>*+*{margin-left:.5rem}.space-x-3>*+*{margin-left:.75rem}.space-x-4>*+*{margin-left:1rem}.space-x-5>*+*{margin-left:1.25rem}.space-x-6>*+*{margin-left:1.5rem}.image-label{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.7);color:#fff;padding:8px;text-align:center;font-size:14px;font-weight:500}.preview-placeholder{text-align:center;color:#666}.placeholder-icon{font-size:4rem;margin-bottom:1rem}.placeholder-text{font-size:1.1rem;font-weight:550;font-family:HanYiZhongSongJian,STSong,Times New Roman,Times,serif}.placeholder-hint{font-size:1rem;color:#666;margin-bottom:1rem}.preview-image{width:100%;height:100%;object-fit:cover}.button-container{position:absolute;bottom:0;left:0;right:0;background:transparent;padding:20px;text-align:center;z-index:1;height:20vh;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;row-gap:.3rem;align-content:center}@media (max-width: 768px){.button-container{padding:15px;height:30vh;gap:.4rem;row-gap:.25rem}}@media (max-width: 480px){.button-container{padding:10px;height:30vh;gap:.3rem;row-gap:.2rem}}.preview-overlay{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.6);color:#fff;padding:30px;text-align:center;z-index:1;height:120px;display:flex;flex-direction:column;justify-content:center;align-items:center}.preview-label{font-size:1.1rem;font-weight:600;margin-bottom:10px}.info-display-container{margin-top:2rem;text-align:center}.selected-target-info{background:#E8F5E8;color:#2e7d32;padding:1rem;border-radius:8px;margin-bottom:1rem;border:1px solid #C8E6C9}.result-info{background:#F3E5F5;color:#6a1b9a;padding:1rem;border-radius:8px;margin-bottom:1rem;border:1px solid #E1BEE7}.success-message{color:#2e7d32}.error-message{color:#c62828}.task-note{font-style:italic;color:#666;font-family:HanYiZhongSongJian,STSong,Times New Roman,Times,serif;margin-top:.5rem}.user-note{font-size:.9rem;color:#666;margin-top:.5rem}.comfy-upload-info{background:#E3F2FD;color:#1565c0;padding:.5rem;border-radius:5px;margin-top:.5rem;border:1px solid #BBDEFB}.comfy-upload-error{background:#FFEBEE;color:#c62828;padding:.5rem;border-radius:5px;margin-top:.5rem;border:1px solid #FFCDD2}.progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-top:1rem}.progress-fill{height:100%;background:linear-gradient(90deg,#8B4513 0%,#A0522D 100%);border-radius:4px;transition:width .3s ease}.result-image{position:relative}.tang-gradient-btn{background:linear-gradient(90deg,rgba(90,49,6,0) 0%,rgba(90,49,6,.15) 15%,rgba(90,49,6,.4) 25%,rgba(90,49,6,.6) 35%,rgba(90,49,6,.6) 65%,rgba(90,49,6,.4) 75%,rgba(90,49,6,.15) 85%,rgba(90,49,6,0) 100%);color:#fff1d4;border:none;padding:.5rem 3rem;border-radius:0;font-family:HanYiZhongSongJian,STSong,Times New Roman,Times,serif;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:none;margin:0;position:relative;z-index:1;min-width:200px;height:40px;display:flex;align-items:center;justify-content:center}.tang-gradient-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:none;background:linear-gradient(90deg,rgba(110,69,16,0) 0%,rgba(110,69,16,.2) 15%,rgba(110,69,16,.5) 25%,rgba(110,69,16,.7) 35%,rgba(110,69,16,.7) 65%,rgba(110,69,16,.5) 75%,rgba(110,69,16,.2) 85%,rgba(110,69,16,0) 100%);color:#fff1d4}.tang-gradient-btn:disabled{background:linear-gradient(90deg,rgba(204,204,204,0) 0%,rgba(204,204,204,.3) 15%,rgba(204,204,204,.8) 25%,rgba(204,204,204,1) 35%,rgba(204,204,204,1) 65%,rgba(204,204,204,.8) 75%,rgba(204,204,204,.3) 85%,rgba(204,204,204,0) 100%);color:#999;border:none;cursor:not-allowed;transform:none;box-shadow:none}.tang-gradient-btn.enabled{background:linear-gradient(90deg,rgba(90,49,6,0) 0%,rgba(90,49,6,.15) 15%,rgba(90,49,6,.4) 25%,rgba(90,49,6,.6) 35%,rgba(90,49,6,.6) 65%,rgba(90,49,6,.4) 75%,rgba(90,49,6,.15) 85%,rgba(90,49,6,0) 100%);border:none;color:#fff1d4;box-shadow:none}.tang-gradient-btn.enabled:hover{background:linear-gradient(90deg,rgba(110,69,16,0) 0%,rgba(110,69,16,.2) 15%,rgba(110,69,16,.5) 25%,rgba(110,69,16,.7) 35%,rgba(110,69,16,.7) 65%,rgba(110,69,16,.5) 75%,rgba(110,69,16,.2) 85%,rgba(110,69,16,0) 100%);border:none;transform:translateY(-3px);box-shadow:none}.tang-gradient-btn.small{padding:.3rem 2rem;min-width:150px;height:32px;font-size:.9rem}.tang-gradient-btn.large{padding:.7rem 4rem;min-width:250px;height:48px;font-size:1.1rem}.tang-gradient-btn.full-width{width:100%;min-width:auto}.navigation-bar{position:fixed;top:0;left:0;right:0;height:70px;background:transparent;border-bottom:none;box-shadow:none;z-index:1000}.navigation-bar.scrolled{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}.nav-container{max-width:none;margin:0;height:100%;display:flex;align-items:center;justify-content:flex-start;padding:0 0 0 1.5rem}.nav-left{display:flex;align-items:center;margin-left:0}.nav-logo{display:flex;align-items:center;margin-right:1.5rem;margin-left:0;padding:0}.logo-image{height:50px;width:auto;object-fit:contain}.nav-back-btn,.nav-btn{display:flex;align-items:center;gap:.4rem;padding:.5rem 3rem;background:linear-gradient(90deg,rgba(96,89,49,.2),rgba(56,53,22,.3) 47.6%,rgba(95,86,47,.15));border:0px;color:#c8bfa8cc;font-weight:600;font-size:1.1rem;letter-spacing:.2em;text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:1px;cursor:pointer;box-shadow:0 2px 8px #7d765b0d;margin-right:1rem}.nav-back-btn:hover,.nav-btn:hover{background:linear-gradient(90deg,rgba(96,89,49,.4),rgba(56,53,22,.5) 47.6%,rgba(95,86,47,.3));color:#e8dcc0e6;box-shadow:0 4px 16px #7d765b33;border-color:#7d765b66;text-decoration-thickness:1px}.nav-back-btn:active,.nav-btn:active{box-shadow:0 1px 4px #7d765b66}.nav-back-btn.current-page,.nav-btn.current-page{background:linear-gradient(90deg,rgba(96,89,49,.6),rgba(56,53,22,.8) 47.6%,rgba(95,86,47,.5));color:#f5e6d3f2;box-shadow:0 4px 16px #7d765b66;text-decoration-thickness:1px}.nav-back-btn.current-page:hover,.nav-btn.current-page:hover{background:linear-gradient(90deg,rgba(96,89,49,.5),rgba(56,53,22,.7) 47.6%,rgba(95,86,47,.4));text-decoration-thickness:1px;box-shadow:0 6px 20px #7d765b80}.nav-icon{width:18px;height:18px;flex-shrink:0}.nav-text{font-family:HanYiZhongSongJian,STSong,Times New Roman,Times,serif;white-space:nowrap}@media (max-width: 768px){.navigation-bar{height:60px}.nav-container{padding:0 0 0 1rem}.nav-back-btn,.nav-btn{padding:.4rem .8rem;font-size:.9rem;letter-spacing:.08em;margin-right:.5rem}.nav-back-btn .nav-text,.nav-btn .nav-text{display:block}.nav-back-btn .nav-icon,.nav-btn .nav-icon{width:20px;height:20px}}@media (max-width: 480px){.nav-container{padding:0 0 0 .75rem}.nav-back-btn,.nav-btn{padding:.35rem .6rem;font-size:.85rem;letter-spacing:.06em;margin-right:.3rem}}.navigation-bar:after{content:"";position:absolute;bottom:0;left:0;width:0;height:3px;background:linear-gradient(90deg,#797152,#7D765B,#797152)}.navigation-bar.scrolled:after{width:100%}.tang-face-swap-page html,.tang-face-swap-page body{overflow-y:hidden;height:100vh;width:100%;min-width:100vw;margin:0;padding:0;background-image:url(/images/background_face_swap.jpg);background-size:cover;background-position:top center;background-attachment:fixed;background-repeat:no-repeat;font-family:Microsoft YaHei,PingFang SC,Helvetica Neue,Arial,sans-serif;color:#333}.tang-face-swap-page #app{height:100vh;width:100%;min-width:100vw;overflow-y:hidden}.page-header{text-align:center;margin-bottom:1rem;position:relative;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:1rem}.page-header h1{margin:0;font-size:2.5rem;font-weight:700;color:#8b4513;text-shadow:2px 2px 4px rgba(139,69,19,.1);font-family:Microsoft YaHei,PingFang SC,KaiTi,serif;letter-spacing:3px}.upload-section{display:flex;justify-content:flex-start;align-items:center;margin-bottom:1rem;padding:0}.upload-section .upload-area{width:21vh;height:21vh;margin:0;border:none;border-radius:50%;background-image:url(/images/upload_button.png);background-size:183.15%;background-position:center 48%;background-repeat:no-repeat;box-shadow:0 0 20px #ffe6bd99,0 0 35px #ffe6bd4d,0 0 50px #ffe6bd26;transition:all .3s ease;display:flex;justify-content:center;align-items:center;cursor:pointer}.upload-section .upload-area:hover{border-color:#8b4513;transform:scale(1.05);box-shadow:0 0 25px #ffe6bdb3,0 0 45px #ffe6bd80,0 0 70px #ffe6bd4d,0 0 90px #ffe6bd26}.upload-section .upload-content{display:flex;justify-content:center;align-items:center;width:100%;height:100%;text-align:center}.upload-section .upload-content p{font-size:1.1rem;color:#562b00;margin:0;font-weight:600;text-align:center;text-decoration:underline;letter-spacing:.2em;font-family:HanYiZhongSongJian,STSong,Times New Roman,Times,serif}.upload-section-inline{position:absolute;top:-20vh;left:-15vh;z-index:10;display:flex;justify-content:center;align-items:center;margin:0;padding:0;width:400px;height:180px}.upload-section-inline .upload-area{width:21vh;height:21vh;margin:0;border:none;border-radius:50%;background-image:url(/images/upload_button.png);background-size:183.15%;background-position:center 48%;background-repeat:no-repeat;box-shadow:0 0 20px #ffe6bd99,0 0 35px #ffe6bd4d,0 0 50px #ffe6bd26;transition:all .3s ease;display:flex;justify-content:center;align-items:center;cursor:pointer}.upload-section-inline .upload-area:hover{border-color:#8b4513;transform:scale(1.05);box-shadow:0 0 25px #ffe6bdb3,0 0 45px #ffe6bd80,0 0 70px #ffe6bd4d,0 0 90px #ffe6bd26}.upload-section-inline .upload-content{display:flex;justify-content:center;align-items:center;width:100%;height:100%;text-align:center}.upload-section-inline .upload-content p{font-size:1.1rem;color:#562b00;margin:0;font-weight:600;text-align:center;text-decoration:underline;letter-spacing:.05em;text-underline-offset:.2em;font-family:HanYiZhongSongJian,STSong,Times New Roman,Times,serif}.upload-area.has-image .upload-content{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.upload-area.has-image .upload-content img.upload-preview{width:100%;height:100%;object-fit:cover;border-radius:50%}.tang-face-swap-container{margin:0 auto;padding:20px;padding-top:6rem;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;overflow:hidden;box-sizing:border-box}.content-sections{display:flex;gap:11vw;margin-bottom:30px;margin-left:80px;margin-right:80px;margin-top:6vh;justify-content:center;align-items:stretch;animation:fadeInUp .8s ease-out .6s both}.left-images{position:relative;display:flex;flex-direction:row;gap:3.75px;align-items:flex-start;justify-content:flex-start;padding:0;height:auto;margin-top:6vh;width:40vh;flex-shrink:1;order:1;animation:fadeInUp .8s ease-out .2s both}.right-images{display:flex;flex-direction:row;gap:3.75px;align-items:flex-start;justify-content:flex-start;padding:0;height:auto;margin-top:6vh;width:40vh;flex-shrink:1;order:3;animation:fadeInUp .8s ease-out .6s both}.target-image-item{width:20vh;height:45vh;border:2px solid #ddd;border-radius:0;overflow:visible;cursor:pointer;transition:all .3s ease;position:relative;flex-shrink:0;object-fit:cover;box-shadow:0 2px 8px #00000026,0 4px 16px #0000001a,0 8px 24px #00000014}.left-images .target-images-row,.right-images .target-images-row{display:flex;flex-direction:row;gap:8vh;align-items:flex-start;justify-content:center;width:100%}.left-images .target-images-row .target-image-item:first-child{margin-top:3rem}.right-images .target-images-row .target-image-item:nth-child(2){margin-top:3rem}.target-image-item:hover{border-color:#8b4513;transform:translateY(-2px);box-shadow:0 4px 15px #8b45134d,0 8px 25px #8b451333,0 12px 35px #8b451326}.target-image-item.selected{border-color:#c1965d;box-shadow:0 0 0 3px #deb88766,0 2px 8px #deb8874d,0 4px 16px #deb88733}.target-image-item:not(.selected){opacity:.6;filter:grayscale(20%);transition:all .3s ease}.target-image-item img{width:100%;height:100%;object-fit:cover;position:relative;z-index:1;object-position:top center}.target-image-item:before{content:"";position:absolute;top:-5px;left:-5px;right:-5px;bottom:-5px;background-image:url(/images/source_image_frame.png);background-size:100% 100%;background-repeat:no-repeat;background-position:center;pointer-events:none;z-index:5;border-radius:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4)) drop-shadow(0 4px 8px rgba(0,0,0,.3)) drop-shadow(0 8px 16px rgba(0,0,0,.2)) drop-shadow(0 12px 24px rgba(0,0,0,.15))}.center-section{display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;order:2;animation:fadeInUp .8s ease-out .8s both}.preview-generate-area{width:30vh;height:55vh;margin:0;border:none;border-radius:0;background:#F3E9D6;transition:all .3s ease;overflow:visible;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0;margin-bottom:2vh}.preview-image{width:100%;height:100%;object-fit:cover;border-radius:0;position:absolute;top:0;left:0;z-index:1;object-position:top center}.preview-generate-area:before{content:"";position:absolute;top:-20vh;left:-18vh;right:-18vh;bottom:-22vh;background-image:url(/images/face_swap_result_frame.png);background-size:100% 100%;background-repeat:no-repeat;background-position:center;pointer-events:none;z-index:2;border-radius:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4)) drop-shadow(0 4px 8px rgba(0,0,0,.3)) drop-shadow(0 8px 16px rgba(0,0,0,.2)) drop-shadow(0 12px 24px rgba(0,0,0,.15))}.face-swap-btn-container{position:absolute;text-align:center;bottom:0;left:0;right:0;padding:1vh 0;z-index:15;width:100%;background:transparent;flex-shrink:0;min-height:6vh;display:flex;align-items:center;justify-content:center}.face-swap-section-center{position:relative;text-align:center}.info-display-container{position:fixed;top:20px;right:20px;width:350px;max-width:400px;margin:0;padding:20px;background:rgba(255,255,255,.95);border-radius:12px;box-shadow:0 4px 20px #00000026;z-index:1000;border:1px solid rgba(0,0,0,.1);transition:all .3s ease;opacity:0;visibility:hidden;pointer-events:none;animation:fadeInUp .8s ease-out .8s both}.info-display-container .selected-target-info{margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:8px;border-left:4px solid #28a745}.info-display-container .selected-target-info p{margin:0;font-weight:500;color:#333}.info-display-container .result-info{margin:1rem 0;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.info-display-container .result-info h4{margin:0 0 .8rem;font-size:1rem;color:#495057;font-weight:600}.info-display-container .result-info .success-message,.info-display-container .result-info .error-message{margin:0}.info-display-container .result-info .success-message p,.info-display-container .result-info .error-message p{margin:.4rem 0;font-size:.85rem;line-height:1.4}.info-display-container .result-info .task-note,.info-display-container .result-info .user-note{margin:.6rem 0;padding:.5rem;border-radius:4px;font-size:.8rem}.info-display-container .result-info .task-note{background:#e3f2fd;color:#1976d2;border-left:3px solid #2196f3}.info-display-container .result-info .user-note{background:#f3e5f5;color:#7b1fa2;border-left:3px solid #9c27b0}@media (max-width: 768px){.tang-face-swap-container{padding:15px;padding-top:5rem;height:100vh;justify-content:flex-start;overflow-y:auto;overflow-x:hidden}.content-sections{flex-direction:column;gap:3rem;margin:0 20px 30px;margin-top:3rem;align-items:center}.tang-face-swap-page .left-images{animation-delay:.05s}.tang-face-swap-page .center-section{animation-delay:.1s}.tang-face-swap-page .right-images{animation-delay:.15s}.tang-face-swap-page .info-display-container{animation-delay:.2s}.left-images,.right-images{justify-content:center;padding:0;flex-direction:row;align-items:center;order:1;width:100%;min-width:unset;max-width:100%;gap:.5rem;margin-top:0}.left-images .target-images-row,.right-images .target-images-row{flex-direction:row!important;gap:.5rem!important;justify-content:center;align-items:center;width:100%;flex-wrap:nowrap}.left-images .target-images-row .target-image-item:first-child,.right-images .target-images-row .target-image-item:nth-child(2){margin-top:0}.center-section{order:2;width:100%;max-width:280px;gap:1rem;margin-top:3rem}.preview-generate-area{justify-self:center;width:100%;max-width:min(90vw,400px);height:calc(min(90vw,400px) * 55/30);max-height:500px;min-height:300px}.face-swap-section-center{padding:1rem}.upload-section{order:3;justify-content:center;width:100%;max-width:280px;margin-top:1rem}.upload-section .upload-area{width:120px;height:120px}.upload-section .upload-content p{font-size:.9rem}.upload-section-inline{position:static;top:auto;left:auto;width:100%;height:auto;justify-content:center;margin-top:1rem;max-width:280px}.upload-section-inline .upload-area{width:120px;height:120px}.upload-section-inline .upload-content p{font-size:.9rem}.target-image-item{width:100px;height:225px;max-width:100%;flex-shrink:0}.info-display-container{width:90%;right:5%;left:5%}}.comfy-upload-info,.comfy-upload-error,.comfy-result-success,.comfy-result-error{margin-top:1rem;padding:1rem;border-radius:8px;border-left:4px solid}.comfy-upload-info{background-color:#d4edda;border-color:#28a745;color:#155724}.comfy-upload-error{background-color:#f8d7da;border-color:#dc3545;color:#721c24}.comfy-result-success{background-color:#d1ecf1;border-color:#17a2b8;color:#0c5460}.comfy-result-error{background-color:#f8d7da;border-color:#dc3545;color:#721c24}.error-modal-close{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.error-modal-body p{margin:0;font-size:1rem;color:#333;line-height:1.5;font-family:Microsoft YaHei,PingFang SC,sans-serif}@media (max-width: 768px){.error-modal-content{width:95%;margin:0 10px}.error-modal-header{padding:.75rem 1rem;background:linear-gradient(135deg,#8B4513 0%,#A0522D 100%)}.error-modal-title{font-size:1.1rem;color:#fff8dc}.error-modal-body{padding:1rem}.error-modal-footer{padding:.75rem 1rem}.error-modal-btn{padding:.6rem 1.5rem;font-size:.9rem;background:linear-gradient(135deg,#8B4513 0%,#A0522D 100%);color:#fff8dc}.page-header h1{font-size:2rem;letter-spacing:2px}.image-label{font-size:1rem;bottom:-2.5rem;letter-spacing:.05em}.preview-generate-area:before{top:-15vh;left:-12vh;right:-12vh;bottom:-15vh}@media (max-width: 768px){.face-swap-task-info{padding:4.5rem 4rem;gap:1.8rem}.face-swap-task-info .task-note{font-size:1rem}.face-swap-task-info .progress-container{max-width:250px;margin:.8rem auto}.face-swap-task-info .progress-text{font-size:.85rem}}@media (max-width: 480px){.face-swap-task-info{padding:4rem 3.5rem;gap:1.6rem}.face-swap-task-info .task-note{font-size:.9rem}.face-swap-task-info .progress-container{max-width:200px;margin:.6rem auto}.face-swap-task-info .progress-text{font-size:.8rem}.preview-generate-area:before{top:-12vh;left:-10vh;right:-10vh;bottom:-12vh}.preview-generate-area{width:100%;max-width:min(85vw,350px);height:calc(min(85vw,350px) * 55/30);max-height:450px;min-height:280px}.upload-section .upload-content p,.upload-section-inline .upload-content p{font-size:.8rem}.preview-placeholder{width:100%;padding:2rem 1.5rem}}.image-label{display:none}}.image-label{position:absolute;bottom:-3.2rem;left:0;right:0;color:#452e24;font-size:1.3rem;font-weight:500;font-family:HanYiZhongSongJian,STSong,Times New Roman,Times,serif;text-align:center;white-space:nowrap;z-index:10;letter-spacing:.1em;width:100%;padding:.25rem 0;background:transparent}.button-container{gap:1.5rem;display:flex;justify-content:center;align-items:center}@media (max-width: 768px){.button-container{gap:1rem}}@media (max-width: 480px){.button-container{gap:.8rem}}.preview-placeholder{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;padding:3rem 2.5rem;z-index:1;position:relative}.placeholder-icon{font-size:4rem;margin-bottom:0rem}@media (max-width: 480px){.tang-face-swap-page .left-images{animation-delay:.05s}.tang-face-swap-page .center-section{animation-delay:.1s}.tang-face-swap-page .right-images{animation-delay:.15s}.tang-face-swap-page .info-display-container{animation-delay:.2s}.face-swap-btn-container{padding:.5vh 0}.face-swap-btn-container button,.tang-gradient-btn{padding:.7rem 1.2rem;font-size:.9rem;border-radius:0;border:none}.progress-bar{margin-top:.5rem}}@media (max-width: 360px){.tang-face-swap-page .left-images{animation-delay:.05s}.tang-face-swap-page .center-section{animation-delay:.1s}.tang-face-swap-page .right-images{animation-delay:.15s}.tang-face-swap-page .info-display-container{animation-delay:.2s}.face-swap-btn-container{padding:.3vh 0}.face-swap-btn-container button,.tang-gradient-btn{padding:.6rem 1rem;font-size:.85rem;min-height:36px;border-radius:0;border:none}.preview-generate-area{width:100%;max-width:min(80vw,300px);height:calc(min(80vw,300px) * 55/30);max-height:400px;min-height:250px}.preview-placeholder{width:100%;padding:1.5rem 1rem}.preview-generate-area:before{top:-12vh;left:-10vh;right:-10vh;bottom:-12vh}}@media (max-height: 500px) and (orientation: landscape){.tang-face-swap-page .left-images{animation-delay:.05s}.tang-face-swap-page .center-section{animation-delay:.1s}.tang-face-swap-page .right-images{animation-delay:.15s}.tang-face-swap-page .info-display-container{animation-delay:.2s}.face-swap-btn-container{padding:.5vh 0}.face-swap-btn-container button,.tang-gradient-btn{padding:.8rem 1.5rem;font-size:1rem;border-radius:0;border:none}.preview-generate-area{height:45vh;min-height:300px}.preview-placeholder{width:100%;padding:1.5rem 1rem}}.face-swap-task-info{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;width:100%;height:100%;padding:3rem 2.5rem;text-align:center}.face-swap-task-info .task-note{color:#8b4513;font-size:1.1rem;margin:0;font-weight:500;font-family:HanYiZhongSongJian,STSong,Times New Roman,Times,serif}.face-swap-task-info .progress-container{width:100%;max-width:300px;margin:1rem auto}.face-swap-task-info .progress-bar{width:100%;height:8px;background:rgba(222,184,135,.3);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.face-swap-task-info .progress-fill{height:100%;background:linear-gradient(90deg,#DEB887,#CD853F);border-radius:4px;transition:width .3s ease;width:0%}.face-swap-task-info .progress-text{color:#8b4513;font-size:.9rem;margin:0;font-weight:500;font-family:HanYiZhongSongJian,STSong,Times New Roman,Times,serif}.error-placeholder{width:100%;height:400px;background:linear-gradient(135deg,rgba(139,69,19,.1) 0%,rgba(160,82,45,.1) 100%);border:2px dashed rgba(139,69,19,.3);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.face-swap-btn-container button,.tang-gradient-btn{border:none}}@media (prefers-reduced-motion: reduce){.tang-face-swap-page .left-images,.tang-face-swap-page .center-section,.tang-face-swap-page .right-images,.tang-face-swap-page .info-display-container{animation:none}.face-swap-btn-container button,.tang-gradient-btn{transition:none}}.toast{position:fixed;top:calc(20px + 6rem);right:20px;z-index:10000;min-width:300px;max-width:400px;padding:16px 20px;border-radius:3px;font-family:Microsoft YaHei,PingFang SC,KaiTi,serif;font-size:14px;line-height:1.4;opacity:0;transform:translate(100%);transition:all .3s cubic-bezier(.4,0,.2,1);border:none}.toast-show{opacity:1;transform:translate(0)}.toast-content{display:flex;align-items:center}.toast-message{flex:1;font-weight:500}.toast-info{background:linear-gradient(to right,rgba(139,69,19,.9),rgba(139,69,19,0));color:#fff8dc}.toast-success{background:linear-gradient(to right,rgba(107,142,35,.9),rgba(107,142,35,0));color:#fff8dc}.toast-error{background:linear-gradient(to right,rgba(139,69,19,.9),rgba(139,69,19,0));color:#fff8dc}@media (max-width: 768px){.toast{top:calc(10px + 4rem);right:10px;left:10px;min-width:auto;max-width:none;padding:14px 16px;font-size:13px}}@media (max-width: 480px){.toast{top:calc(8px + 4rem);right:8px;left:8px;padding:12px 14px;font-size:12px}.toast-icon{font-size:16px}}.tang-text-to-image-page{background-image:url(/images/background_face_swap.jpg);background-size:cover;background-position:top center;background-attachment:fixed;background-repeat:no-repeat;min-height:100vh;overflow:hidden;height:100vh;width:100vw}.tang-text-to-image-page .text-to-image-container{margin:0 auto;padding:20px;padding-top:6rem;font-family:HanYiZhongSongJian,STSong,Times New Roman,Times,serif;height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;max-width:1400px}.tang-text-to-image-page{width:100%;height:100vh;overflow:hidden}.tang-text-to-image-page .page-header{text-align:center;margin-bottom:2rem;position:relative;animation:fadeInUp .8s ease-out .2s both}@media (max-width: 768px){.tang-text-to-image-page .page-header{margin-bottom:3rem}}@media (max-width: 480px){.tang-text-to-image-page .page-header{margin-bottom:2.5rem}}@media (max-width: 360px){.tang-text-to-image-page .page-header{margin-bottom:2rem}}.tang-text-to-image-page .page-header h1{margin:0;font-size:2.5rem;font-weight:700;color:#8b4513;text-shadow:2px 2px 4px rgba(139,69,19,.1);font-family:Microsoft YaHei,PingFang SC,KaiTi,serif;letter-spacing:3px}.tang-text-to-image-page .page-description{text-align:center;color:#666;margin-bottom:30px;font-size:1.1em;animation:fadeInUp .8s ease-out .4s both}.tang-text-to-image-page .clothing-item{display:flex;flex-direction:column;gap:8px;align-items:stretch;position:relative}.tang-text-to-image-page .clothing-item .prompt-item{margin-bottom:0}.tang-text-to-image-page .pattern-selector{display:none;align-items:center;gap:8px;padding:8px;background:rgba(255,255,255,.95);border-radius:6px;border:1px solid #DEB887;transition:all .2s ease;position:absolute;top:100%;left:0;right:0;z-index:1000;box-shadow:0 4px 12px #8b451333;opacity:0;transform:translateY(-5px)}.tang-text-to-image-page .pattern-selector[style*="display: flex"]{opacity:1;transform:translateY(0)}.tang-text-to-image-page .pattern-dropdown{flex:1;padding:6px 8px;border:1px solid #DEB887;border-radius:4px;background:white;color:#666;font-size:.85em;cursor:pointer;transition:all .2s ease}.tang-text-to-image-page .pattern-dropdown:hover{border-color:peru}.tang-text-to-image-page .pattern-dropdown:focus{outline:none;border-color:#8b4513;box-shadow:0 0 0 2px #8b451333}.tang-text-to-image-page .clothing-item:has(input:checked) .pattern-selector{background:rgba(255,248,220,.95);border-color:#8b4513}.tang-text-to-image-page .clothing-item:has(input:checked) .pattern-dropdown{border-color:#8b4513;background:#FFF8DC}.tang-text-to-image-page .prompt-sections{display:flex;gap:12vh;margin-bottom:30px;margin-left:80px;margin-right:80px;margin-top:6vh;justify-content:center;align-items:stretch;animation:fadeInUp .8s ease-out .6s both}.tang-text-to-image-page .prompt-sections .left-column{flex:0 0 40vh;display:flex;flex-direction:column;gap:14vh;height:fit-content;align-items:stretch;margin-top:3vh}.tang-text-to-image-page .prompt-sections .center-column{flex:0 0 50vh;display:flex;flex-direction:column;gap:25px;height:fit-content;align-items:center;margin-top:6vh}.tang-text-to-image-page .prompt-sections .right-column{flex:0 0 40vh;display:flex;flex-direction:column;gap:14vh;height:fit-content;align-items:stretch;margin-top:3vh}.tang-text-to-image-page .prompt-section{background:url(/images/prompt_background.png) center center / 150% no-repeat;padding:1rem;height:25vh;box-sizing:border-box;display:flex;flex-direction:column;overflow:hidden;margin-bottom:1vh}.tang-text-to-image-page .left-column .prompt-section:first-child,.tang-text-to-image-page .left-column .prompt-section:nth-child(2),.tang-text-to-image-page .right-column .prompt-section:first-child,.tang-text-to-image-page .right-column .prompt-section:nth-child(2){position:relative;overflow:visible}.tang-text-to-image-page .left-column .prompt-section:first-child:before,.tang-text-to-image-page .left-column .prompt-section:nth-child(2):before,.tang-text-to-image-page .right-column .prompt-section:first-child:before,.tang-text-to-image-page .right-column .prompt-section:nth-child(2):before{content:"";position:absolute;top:-8vh;left:-1vh;right:-1vh;bottom:-2vh;background-size:100% 100%;background-repeat:no-repeat;background-position:center;pointer-events:none;z-index:10;border-radius:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2)) drop-shadow(0 2px 4px rgba(0,0,0,.15)) drop-shadow(0 4px 8px rgba(0,0,0,.1))}.tang-text-to-image-page .left-column .prompt-section:first-child:before{background-image:url(/images/prompt_frame_1.png)}.tang-text-to-image-page .left-column .prompt-section:nth-child(2):before{background-image:url(/images/prompt_frame_2.png)}.tang-text-to-image-page .right-column .prompt-section:first-child:before{background-image:url(/images/prompt_frame_3.png)}.tang-text-to-image-page .right-column .prompt-section:nth-child(2):before{background-image:url(/images/prompt_frame_4.png)}.tang-text-to-image-page .generate-section{background:#F3E9D6;border:none;border-radius:0;padding:0;text-align:center;box-shadow:0 8px 25px #8b451326;transition:all .3s ease;width:30vh;height:55vh;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:visible;position:relative;margin-bottom:2vh;animation:fadeInUp .8s ease-out .8s both}.tang-text-to-image-page .generate-section:before{content:"";position:absolute;top:-20vh;left:-18vh;right:-18vh;bottom:-22vh;background-image:url(/images/text_to_image_result_frame.png);background-size:100% 100%;background-repeat:no-repeat;background-position:center;pointer-events:none;z-index:5;border-radius:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4)) drop-shadow(0 4px 8px rgba(0,0,0,.3)) drop-shadow(0 8px 16px rgba(0,0,0,.2)) drop-shadow(0 12px 24px rgba(0,0,0,.15))}.tang-text-to-image-page .generate-section h3{color:#8b4513;margin-bottom:1rem;font-size:1.5rem;font-weight:600}.tang-text-to-image-page .generate-initial{display:flex;flex-direction:column;align-items:center;gap:1rem}.tang-text-to-image-page .generate-icon{font-size:3rem;margin-bottom:1rem;animation:sparkle 2s ease-in-out infinite}.tang-text-to-image-page .generate-initial p{color:#666;font-size:1.1rem;margin:0;line-height:1.5}.tang-text-to-image-page .generate-task-info{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;padding:2rem}.tang-text-to-image-page .generate-task-info p{color:#8b4513;font-size:1.1rem;margin:0;font-weight:500}.tang-text-to-image-page .generate-task-info .task-note{color:#666;font-style:italic;font-size:1rem}.tang-text-to-image-page .generate-success{display:flex;flex-direction:column;align-items:stretch;gap:0;width:100%;height:100%;flex:1}.tang-text-to-image-page .generate-error{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%}.tang-text-to-image-page .generate-error p{color:#d2691e;font-size:1.1rem;margin:0;font-weight:500}.tang-text-to-image-page .generate-error .task-note{color:#666;font-style:italic;font-size:1rem}.tang-text-to-image-page .prompt-display{background:rgba(255,255,255,.8);border:1px solid #DEB887;border-radius:8px;padding:1rem;margin:.5rem 0;max-width:100%;word-wrap:break-word;font-family:STSong,KaiTi,serif;color:#8b4513;font-size:.95rem;line-height:1.4}.tang-text-to-image-page .progress-container{width:100%;max-width:300px;margin:1rem auto}.tang-text-to-image-page .progress-bar{width:100%;height:8px;background:rgba(222,184,135,.3);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.tang-text-to-image-page .progress-fill{height:100%;background:linear-gradient(90deg,#DEB887,#CD853F);border-radius:4px;transition:width .3s ease;width:0%}.tang-text-to-image-page .progress-text{color:#8b4513;font-size:.9rem;margin:0;font-weight:500}.tang-text-to-image-page .generate-section img,.tang-text-to-image-page .generated-image img{width:100%;height:100%;object-fit:cover;box-shadow:0 4px 15px #8b45134d;display:block;border-radius:0!important}.tang-text-to-image-page .generated-image{width:100%;height:100%;position:relative;display:flex;align-items:stretch;justify-content:stretch;flex:1}.tang-text-to-image-page .error-placeholder{width:100%;height:100%;background:linear-gradient(135deg,rgba(139,69,19,.1) 0%,rgba(160,82,45,.1) 100%);border:2px dashed rgba(139,69,19,.3);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.tang-text-to-image-page .error-placeholder .error-icon{font-size:4rem;margin-bottom:1rem;opacity:.7}.tang-text-to-image-page .error-placeholder p{font-size:1.2rem;color:#8b4513;margin:0;font-weight:500;opacity:.8}.tang-text-to-image-page .image-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin:1rem 0}.tang-text-to-image-page .generate-btn{background:linear-gradient(90deg,rgba(90,49,6,0) 0%,rgba(90,49,6,.15) 15%,rgba(90,49,6,.4) 25%,rgba(90,49,6,.6) 35%,rgba(90,49,6,.6) 65%,rgba(90,49,6,.4) 75%,rgba(90,49,6,.15) 85%,rgba(90,49,6,0) 100%);color:#fff1d4;border:none;padding:.5rem 3rem;border-radius:0;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:none;margin:0;position:relative;z-index:1;min-width:200px;height:40px;display:flex;align-items:center;justify-content:center}.tang-text-to-image-page .generate-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:none;background:linear-gradient(90deg,rgba(110,69,16,0) 0%,rgba(110,69,16,.2) 15%,rgba(110,69,16,.5) 25%,rgba(110,69,16,.7) 35%,rgba(110,69,16,.7) 65%,rgba(110,69,16,.5) 75%,rgba(110,69,16,.2) 85%,rgba(110,69,16,0) 100%);color:#fff1d4}.tang-text-to-image-page .generate-btn:disabled{background:linear-gradient(90deg,rgba(204,204,204,0) 0%,rgba(204,204,204,.3) 15%,rgba(204,204,204,.8) 25%,rgba(204,204,204,1) 35%,rgba(204,204,204,1) 65%,rgba(204,204,204,.8) 75%,rgba(204,204,204,.3) 85%,rgba(204,204,204,0) 100%);color:#999;border:none;cursor:not-allowed;transform:none;box-shadow:none}.tang-text-to-image-page .generate-btn.enabled{background:linear-gradient(90deg,rgba(90,49,6,0) 0%,rgba(90,49,6,.15) 15%,rgba(90,49,6,.4) 25%,rgba(90,49,6,.6) 35%,rgba(90,49,6,.6) 65%,rgba(90,49,6,.4) 75%,rgba(90,49,6,.15) 85%,rgba(90,49,6,0) 100%);border:none;color:#fff1d4;box-shadow:none}.tang-text-to-image-page .generate-btn.enabled:hover{background:linear-gradient(90deg,rgba(110,69,16,0) 0%,rgba(110,69,16,.2) 15%,rgba(110,69,16,.5) 25%,rgba(110,69,16,.7) 35%,rgba(110,69,16,.7) 65%,rgba(110,69,16,.5) 75%,rgba(110,69,16,.2) 85%,rgba(110,69,16,0) 100%);border:none;transform:translateY(-3px);box-shadow:none}.tang-text-to-image-page .result-section{background:linear-gradient(135deg,#FFF8DC 0%,#F5F5DC 100%);border-radius:15px;padding:25px;box-shadow:0 4px 15px #8b45131a;border:2px solid #DEB887}.tang-text-to-image-page .result-section h3{color:#8b4513;margin-bottom:20px;font-size:1.4em;text-align:center}.tang-text-to-image-page .success-message{background:white;border-radius:10px;padding:20px;border:2px solid #90EE90;max-width:100%;overflow:hidden;box-sizing:border-box}.tang-text-to-image-page .success-message p{margin:10px 0;color:#333}.tang-text-to-image-page .success-message strong{color:#8b4513}.tang-text-to-image-page .task-note,.tang-text-to-image-page .user-note{background:#FFF8DC;padding:10px 15px;border-radius:8px;border-left:4px solid #FFD700;margin:15px 0;font-size:.95em;max-width:100%;overflow:hidden;word-wrap:break-word}.tang-text-to-image-page .error-message{background:white;border-radius:10px;padding:20px;border:2px solid #FFB6C1;color:#d63384;max-width:100%;overflow:hidden;box-sizing:border-box}.tang-text-to-image-page .selection-limit{font-size:.8em;color:#d2691e;font-weight:400;background:rgba(255,193,7,.2);padding:2px 8px;border-radius:12px;margin-left:8px;border:1px solid #FFC107}.tang-text-to-image-page .prompt-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;flex:1;align-content:flex-start;height:calc(100% - 50px);max-height:calc(25vh - 50px);min-height:150px;width:100%;box-sizing:border-box;overflow-y:auto;flex-shrink:0;margin-top:0;padding:0 10px}.tang-text-to-image-page .prompt-item{display:flex;align-items:center;cursor:pointer;padding:6px 12px;border-radius:3px;background:#E4DCB1;border:0;transition:all .3s ease;position:relative;overflow:hidden;box-sizing:border-box;min-height:30px}.tang-text-to-image-page .prompt-item:hover{background:#FFFDDC;border:1.5px solid #7D6D4B;padding:4.5px 10.5px;box-sizing:border-box}.tang-text-to-image-page .prompt-item input[type=checkbox]{margin-right:6px;transform:scale(1.1);appearance:none;-webkit-appearance:none;-moz-appearance:none;width:16px;height:16px;border:1.5px solid #7D6D4B;background:transparent;position:relative;cursor:pointer;border-radius:0}.tang-text-to-image-page .prompt-item input[type=checkbox]:checked{background:transparent;border-color:#7d6d4b}.tang-text-to-image-page .prompt-item input[type=checkbox]:checked:after{content:"";position:absolute;left:2px;top:1px;width:10px;height:6px;border:2.5px solid #7D6D4B;border-top:none;border-right:none;transform:rotate(-45deg);transform-origin:center}.tang-text-to-image-page .prompt-item:has(input[type=checkbox]:checked){background:#FFFDDC;border:1.5px solid #7D6D4B;padding:4.5px 10.5px;box-sizing:border-box}.tang-text-to-image-page .prompt-text{color:#63460a;font-size:1em;transition:all .3s ease}.tang-text-to-image-page .prompt-preview-section{display:none;background:linear-gradient(135deg,#F5F5DC 0%,#FFF8DC 100%);border-radius:15px;padding:25px;margin-bottom:30px;box-shadow:0 4px 15px #8b45131a;border:2px solid #DEB887}.tang-text-to-image-page .prompt-preview-section h3{color:#8b4513;margin-bottom:20px;font-size:1.4em;text-align:center}.tang-text-to-image-page .prompt-preview{background:white;border-radius:10px;padding:20px;margin-bottom:20px;border:2px solid #DEB887;min-height:80px}.tang-text-to-image-page .placeholder-text{color:#999;text-align:center;margin:0}.tang-text-to-image-page .generated-prompt{color:#333}.tang-text-to-image-page .generated-prompt p{margin:8px 0}.tang-text-to-image-page .prompt-content{background:#FFF8DC;padding:12px;border-radius:8px;border-left:4px solid #8B4513;font-family:Courier New,monospace;font-size:.95em;line-height:1.5;word-break:break-word}.tang-text-to-image-page .prompt-count{color:#8b4513;font-weight:700;text-align:right;font-size:.9em}.tang-text-to-image-page .prompt-actions{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.tang-text-to-image-page .clear-btn{padding:12px 24px;border:2px solid #DEB887;border-radius:25px;font-size:1em;font-weight:700;cursor:pointer;transition:all .3s ease;min-width:140px;background:linear-gradient(135deg,#F5F5DC 0%,#DEB887 100%);color:#8b4513}.tang-text-to-image-page .clear-btn:hover{background:linear-gradient(135deg,#DEB887 0%,#CD853F 100%);transform:translateY(-2px);box-shadow:0 4px 12px #8b45134d}@keyframes sparkle{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.1) rotate(5deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.tang-text-to-image-page .generate-success p:first-child,.tang-text-to-image-page .generate-success .task-note{display:none!important}@media (max-width: 768px){.tang-text-to-image-page .text-to-image-container{padding:15px;padding-top:5rem;height:100vh;justify-content:flex-start;overflow-y:auto;overflow-x:hidden}.tang-text-to-image-page .page-header{animation-delay:.1s}.tang-text-to-image-page .page-description{animation-delay:.2s}.tang-text-to-image-page .prompt-sections{animation-delay:.3s}.tang-text-to-image-page .generate-section{animation-delay:.4s}.tang-text-to-image-page .page-header h1{font-size:2rem;letter-spacing:2px;margin-bottom:1rem}.tang-text-to-image-page .page-description{font-size:1em;margin-bottom:20px}.tang-text-to-image-page .prompt-sections{flex-direction:column;gap:3rem;margin:0 20px 30px;margin-top:3rem;align-items:center}.tang-text-to-image-page .prompt-sections .left-column,.tang-text-to-image-page .prompt-sections .center-column,.tang-text-to-image-page .prompt-sections .right-column{flex:none;width:100%;max-width:320px;gap:2rem;margin-top:0}.tang-text-to-image-page .prompt-section{height:200px;padding:1rem;min-height:200px}.tang-text-to-image-page .generate-section{width:100%;max-width:min(90vw,400px);height:calc(min(90vw,400px) * 55/30);max-height:500px;min-height:300px;margin:2rem auto}.tang-text-to-image-page .left-column .prompt-section:first-child:before,.tang-text-to-image-page .left-column .prompt-section:nth-child(2):before,.tang-text-to-image-page .right-column .prompt-section:first-child:before,.tang-text-to-image-page .right-column .prompt-section:nth-child(2):before{top:-4vh;left:-.5vh;right:-.5vh;bottom:-1vh}.tang-text-to-image-page .generate-section:before{top:-15vh;left:-12vh;right:-12vh;bottom:-15vh}.tang-text-to-image-page .prompt-grid{height:168px;max-height:168px;min-height:120px;gap:6px;padding:12px}.tang-text-to-image-page .prompt-item{padding:8px 10px;margin-bottom:1px}.tang-text-to-image-page .prompt-text{font-size:.9em}.tang-text-to-image-page .generate-btn{padding:.6rem 2.5rem;font-size:1rem;margin-top:.8rem;border-radius:0;border:none;min-width:180px;height:36px}.tang-text-to-image-page .progress-container{max-width:250px;margin:.8rem auto}.tang-text-to-image-page .prompt-display{padding:.8rem;font-size:.9rem;margin:.4rem 0}}@media (max-width: 480px){.tang-text-to-image-page .text-to-image-container{padding:10px;padding-top:4.5rem}.tang-text-to-image-page .page-header{animation-delay:.05s}.tang-text-to-image-page .page-description{animation-delay:.1s}.tang-text-to-image-page .prompt-sections{animation-delay:.15s}.tang-text-to-image-page .generate-section{animation-delay:.2s}.tang-text-to-image-page .page-header h1{font-size:1.8rem;letter-spacing:1px}.tang-text-to-image-page .prompt-sections{margin:0 15px 25px;margin-top:2.5rem;gap:2.5rem}.tang-text-to-image-page .prompt-sections .left-column,.tang-text-to-image-page .prompt-sections .center-column,.tang-text-to-image-page .prompt-sections .right-column{max-width:280px;gap:1.8rem}.tang-text-to-image-page .prompt-section{height:180px;min-height:180px;padding:.8rem}.tang-text-to-image-page .generate-section{width:100%;max-width:min(85vw,350px);height:calc(min(85vw,350px) * 55/30);max-height:450px;min-height:280px;margin:1.5rem auto}.tang-text-to-image-page .left-column .prompt-section:first-child:before,.tang-text-to-image-page .left-column .prompt-section:nth-child(2):before,.tang-text-to-image-page .right-column .prompt-section:first-child:before,.tang-text-to-image-page .right-column .prompt-section:nth-child(2):before{top:-3vh;left:-.3vh;right:-.3vh;bottom:-.8vh}.tang-text-to-image-page .generate-section:before{top:-12vh;left:-10vh;right:-10vh;bottom:-12vh}.tang-text-to-image-page .prompt-grid{height:152px;max-height:152px;min-height:100px;gap:4px;padding:10px}.tang-text-to-image-page .pattern-dropdown{padding:3px 5px;font-size:.75em}.tang-text-to-image-page .prompt-item{padding:6px 8px;margin-bottom:1px}.tang-text-to-image-page .prompt-text{font-size:.85em}.tang-text-to-image-page .generate-btn{padding:.5rem 2rem;font-size:.9rem;border-radius:0;border:none;min-width:160px;height:32px}.tang-text-to-image-page .progress-container{max-width:220px;margin:.6rem auto}.tang-text-to-image-page .prompt-display{padding:.6rem;font-size:.85rem;margin:.3rem 0}}@media (max-width: 360px){.tang-text-to-image-page .text-to-image-container{padding:8px;padding-top:4rem}.tang-text-to-image-page .page-header{animation-delay:.05s}.tang-text-to-image-page .page-description{animation-delay:.1s}.tang-text-to-image-page .prompt-sections{animation-delay:.15s}.tang-text-to-image-page .generate-section{animation-delay:.2s}.tang-text-to-image-page .page-header h1{font-size:1.6rem;letter-spacing:.5px}.tang-text-to-image-page .prompt-sections{margin:0 10px 20px;margin-top:2rem;gap:2rem}.tang-text-to-image-page .prompt-sections .left-column,.tang-text-to-image-page .prompt-sections .center-column,.tang-text-to-image-page .prompt-sections .right-column{max-width:260px;gap:1.5rem}.tang-text-to-image-page .prompt-section{height:160px;min-height:160px;padding:.6rem}.tang-text-to-image-page .generate-section{width:100%;max-width:min(80vw,300px);height:calc(min(80vw,300px) * 55/30);max-height:400px;min-height:250px;margin:1.2rem auto}.tang-text-to-image-page .prompt-grid{height:136px;max-height:136px;min-height:90px;gap:3px;padding:8px}.tang-text-to-image-page .prompt-item{padding:5px 6px;margin-bottom:1px;min-height:36px}.tang-text-to-image-page .prompt-text{font-size:.8em}.tang-text-to-image-page .generate-btn{padding:.4rem 1.8rem;font-size:.85rem;min-height:32px;border-radius:0;border:none;min-width:140px;height:28px}.tang-text-to-image-page .progress-container{max-width:200px;margin:.5rem auto}.tang-text-to-image-page .prompt-display{padding:.6rem;font-size:.85rem;margin:.3rem 0}.tang-text-to-image-page .pattern-selector label{font-size:12px;margin-right:6px}}@media (max-height: 500px) and (orientation: landscape){.tang-text-to-image-page .text-to-image-container{padding-top:3rem;height:calc(100vh - 3rem);justify-content:flex-start;overflow-y:auto}.tang-text-to-image-page .page-header{animation-delay:.05s}.tang-text-to-image-page .page-description{animation-delay:.1s}.tang-text-to-image-page .prompt-sections{animation-delay:.15s}.tang-text-to-image-page .generate-section{animation-delay:.2s}.tang-text-to-image-page .page-header{margin-bottom:1rem}.tang-text-to-image-page .page-header h1{font-size:1.8rem;margin-bottom:.5rem}.tang-text-to-image-page .page-description{margin-bottom:15px;font-size:.9em}.tang-text-to-image-page .prompt-sections{gap:1rem;margin-bottom:15px;margin-top:1.5rem}.tang-text-to-image-page .prompt-sections .left-column,.tang-text-to-image-page .prompt-sections .center-column,.tang-text-to-image-page .prompt-sections .right-column{gap:.8rem}.tang-text-to-image-page .prompt-section{height:18vh;min-height:120px}.tang-text-to-image-page .generate-section{height:45vh;min-height:300px;margin-bottom:1rem}.tang-text-to-image-page .prompt-grid{height:calc(18vh - 32px);max-height:calc(18vh - 32px);min-height:80px;padding:10px}.tang-text-to-image-page .clothing-item{gap:2px}.tang-text-to-image-page .pattern-selector{padding:3px;top:100%;left:-1px;right:-1px}.tang-text-to-image-page .pattern-dropdown{padding:2px 4px;font-size:.7em}}@media (max-width: 768px){.tang-text-to-image-page .generate-btn{min-height:44px;min-width:200px;padding:.6rem 3rem;font-size:16px;height:44px}.tang-text-to-image-page .prompt-item input[type=checkbox]{min-width:20px;min-height:20px;transform:scale(1.2)}.tang-text-to-image-page .prompt-item{min-height:44px;padding:10px 12px}.tang-text-to-image-page .clothing-item{min-height:44px;position:relative;transition:all .2s ease}.tang-text-to-image-page .pattern-dropdown:focus{outline:none;border-color:#8b4513;box-shadow:0 0 0 3px #8b451333;background-color:#fff8dc}.tang-text-to-image-page .prompt-grid{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:rgba(139,69,19,.3) transparent}.tang-text-to-image-page .prompt-grid::-webkit-scrollbar{width:6px}.tang-text-to-image-page .prompt-grid::-webkit-scrollbar-track{background:transparent}.tang-text-to-image-page .prompt-grid::-webkit-scrollbar-thumb{background:rgba(139,69,19,.3);border-radius:3px}.tang-text-to-image-page .progress-fill{border-radius:5px}.tang-text-to-image-page .error-placeholder .error-icon{font-size:3rem;margin-bottom:.8rem}.tang-text-to-image-page .error-placeholder p{font-size:1rem;text-align:center}@keyframes patternSelectedPulse{0%{transform:scale(1);color:#333}50%{transform:scale(1.05);color:#8b4513;font-weight:600}to{transform:scale(1);color:#333}}}@media (max-width: 480px){.tang-text-to-image-page .prompt-item{min-height:40px;padding:8px 10px}.tang-text-to-image-page .prompt-item input[type=checkbox]{min-width:18px;min-height:18px;transform:scale(1.1)}.tang-text-to-image-page .error-placeholder .error-icon{font-size:2.5rem;margin-bottom:.6rem}.tang-text-to-image-page .error-placeholder p{font-size:.9rem}}@media (max-width: 360px){.tang-text-to-image-page .prompt-sections{margin:0 8px 18px;gap:1.8rem}.tang-text-to-image-page .prompt-sections .left-column,.tang-text-to-image-page .prompt-sections .center-column,.tang-text-to-image-page .prompt-sections .right-column{gap:1.3rem}.tang-text-to-image-page .prompt-item{min-height:36px;padding:6px 8px}.tang-text-to-image-page .pattern-selector{min-height:36px;padding:6px}.tang-text-to-image-page .pattern-dropdown{min-height:36px;padding:6px 8px;font-size:13px}.tang-text-to-image-page .prompt-item input[type=checkbox]{min-width:16px;min-height:16px;transform:scale(1)}.tang-text-to-image-page .error-placeholder .error-icon{font-size:2rem;margin-bottom:.5rem}.tang-text-to-image-page .error-placeholder p{font-size:.8rem}}@media (max-height: 500px) and (orientation: landscape){.tang-text-to-image-page .prompt-item{min-height:36px;padding:6px 10px}.tang-text-to-image-page .clothing-item{min-height:36px}.tang-text-to-image-page .pattern-selector{min-height:36px;padding:6px}.tang-text-to-image-page .pattern-dropdown{min-height:36px;padding:6px 10px;font-size:14px}.tang-text-to-image-page .prompt-item input[type=checkbox]{min-width:16px;min-height:16px;transform:scale(1)}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.tang-text-to-image-page .prompt-section,.tang-text-to-image-page .prompt-item{border-width:.5px}.tang-text-to-image-page .generate-btn{border-width:0px;border-color:transparent}.tang-text-to-image-page .pattern-selector,.tang-text-to-image-page .pattern-dropdown{border-width:.5px}}@media (prefers-color-scheme: dark){.tang-text-to-image-page .prompt-display{background:rgba(0,0,0,.8);color:#e0e0e0;border-color:#666}.tang-text-to-image-page .task-note,.tang-text-to-image-page .user-note{background:rgba(0,0,0,.8);color:#e0e0e0;border-left-color:gold}.tang-text-to-image-page .pattern-selector{background:rgba(0,0,0,.9);border-color:#666;color:#e0e0e0}.tang-text-to-image-page .pattern-dropdown{background:rgba(0,0,0,.8);color:#e0e0e0;border-color:#666}}@media (prefers-reduced-motion: reduce){.tang-text-to-image-page .generate-btn,.tang-text-to-image-page .prompt-item,.tang-text-to-image-page .progress-fill{transition:none}.tang-text-to-image-page .generate-icon{animation:none}.tang-text-to-image-page .pattern-selector{transition:none;transform:none}.tang-text-to-image-page .page-header,.tang-text-to-image-page .page-description,.tang-text-to-image-page .prompt-sections,.tang-text-to-image-page .generate-section{animation:none}}.error-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .3s ease}.error-modal-content{background:white;border-radius:12px;box-shadow:0 10px 30px #0000004d;width:90%;max-width:500px;max-height:80vh;overflow:hidden;animation:slideIn .3s ease}.error-modal-header{background:linear-gradient(135deg,#8B4513 0%,#A0522D 100%);color:#fff8dc;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #DEB887}.error-modal-title{font-size:1.2rem;font-weight:600;font-family:Microsoft YaHei,PingFang SC,sans-serif}.error-modal-close{background:none;border:none;color:#fff8dc;font-size:1.5rem;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.error-modal-close:hover{background-color:#fff8dc4d}.error-modal-body{padding:1.5rem;text-align:center}.error-modal-body p{margin:0;font-size:1rem;color:#333;line-height:1.5;font-family:Microsoft YaHei,PingFang SC,sans-serif;white-space:pre-line}.error-modal-footer{padding:1rem 1.5rem;text-align:center;border-top:1px solid #e0e0e0}.error-modal-btn{background:linear-gradient(135deg,#8B4513 0%,#A0522D 100%);color:#fff8dc;border:none;padding:.75rem 2rem;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:Microsoft YaHei,PingFang SC,sans-serif}.error-modal-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b451366}.error-modal-btn:active{transform:translateY(0)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}@font-face{font-family:HanYiZhongSongJian;src:url(/api/proxy/font?url=https%3A%2F%2Ftangfeng-resources.oss-cn-beijing.aliyuncs.com%2Ffonts%2FHanYiZhongSongJian-1.ttf) format("truetype"),local("STSong"),local("SimSun"),local("Microsoft YaHei"),local("PingFang SC"),local("Hiragino Sans GB"),local("SimHei");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:HanYiZhongSongJian-Fallback;src:local("SimSun"),local("Microsoft YaHei"),local("PingFang SC"),local("Hiragino Sans GB");font-weight:400;font-style:normal;font-display:swap}body{overflow-x:hidden;margin:0;padding:0}:root{--font-primary: "HanYiZhongSongJian", "Ma Shan Zheng", "STSong", "SimSun", "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", sans-serif;--font-fallback: "STSong", "SimSun", "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", sans-serif}#home{width:100vw;height:100vh;overflow:hidden;margin:0;padding:0;background:transparent}.feature-section{width:100vw;height:100vh;overflow:hidden;margin:0;padding:0}.main-title{filter:drop-shadow(0 12px 24px rgba(0,0,0,.6)) drop-shadow(0 6px 12px rgba(0,0,0,.5)) drop-shadow(0 3px 6px rgba(0,0,0,.4)) drop-shadow(0 1px 3px rgba(0,0,0,.3)) drop-shadow(0 0 20px rgba(255,255,255,.1)) drop-shadow(0 0 30px rgba(64,224,208,.05))}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.group:hover .fa-icon{animation:float 2s ease-in-out infinite}@media (max-width: 1024px){#home,.feature-section{height:100vh;width:100vw;overflow:hidden}#home img.main-title{width:80vw!important}#home img.slogan-title{width:70vw!important}.feature-section .relative.z-10{padding-top:2rem;padding-bottom:2rem}.feature-section .absolute.right-4{right:1rem;top:1rem}.feature-section .absolute.left-20{left:1rem;top:1rem}.feature-section .relative.overflow-hidden{margin-top:0}.feature-section .relative.w-full{height:auto;min-height:80vh}}@media (max-width: 768px){#home img.main-title{width:90vw!important}#home img.slogan-title{width:80vw!important}.feature-section .relative.z-10{padding-left:1rem;padding-right:1rem}.text-shadow-enhanced{font-size:14px!important;padding:8px 12px!important}}@media (max-width: 480px){#home img.main-title{width:95vw!important}#home img.slogan-title{width:85vw!important}.text-shadow-enhanced{font-size:12px!important;padding:6px 10px!important}}.text-shadow-enhanced{text-shadow:3px 3px 6px rgba(0,0,0,.7),1px 1px 2px rgba(0,0,0,.5)!important;font-weight:700!important;color:#ffe6bd!important}input[type=text]{font-family:HanYiZhongSongJian,STSong,SimSun,serif;text-shadow:3px 3px 6px rgba(0,0,0,.7),1px 1px 2px rgba(0,0,0,.5)!important;font-weight:700!important;color:#ffe6bd!important;background:linear-gradient(to right,rgba(206,179,135,.8) 0%,rgba(69,56,25,.8) 5%,rgba(69,56,25,.8) 95%,rgba(206,179,135,.8) 100%)}.home-container{background-image:url(https://tangfeng-resources.oss-cn-beijing.aliyuncs.com/images/index_background.jpg);background-size:cover;background-position:center center;background-repeat:no-repeat;min-height:100vh;width:100vw;overflow-x:hidden;position:relative}.scroll-down-btn{border:2px solid rgba(255,255,255,.3);box-shadow:0 4px 12px #0003;transition:all .3s ease;animation:float 2s ease-in-out infinite}.scroll-down-btn:hover{transform:scale(1.1);background-color:#ffffff4d;animation-play-state:paused}@keyframes float{0%,to{transform:translateY(0);box-shadow:0 4px 12px #0003}50%{transform:translateY(-8px);box-shadow:0 8px 20px #0000004d}}.feature-section{position:relative;z-index:20;margin-top:0;padding-top:0;background:transparent}.feature-indicator{background-color:#453819;color:#ffe6bd;transition:all .3s ease;border:none;cursor:pointer;outline:none;border-radius:.5rem;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;transition-property:all;transition-duration:.3s}.feature-indicator.inactive{background-color:#b1a182;color:#ffe6bd}.feature-indicator:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0003}.feature-indicator:not(.inactive){box-shadow:0 2px 4px #0000004d}@media (min-width: 640px){.feature-indicator{padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem}}@media (min-width: 768px){.feature-indicator{padding:.5rem 1rem}}.feature-indicator-container{position:absolute;right:1rem;top:4rem;z-index:10;display:flex;gap:.5rem}@media (min-width: 640px){.feature-indicator-container{left:2rem;right:auto;top:6rem}}@media (min-width: 768px){.feature-indicator-container{right:5rem}}@media (min-width: 1024px){.feature-indicator-container{right:10rem}}.decoration-image{transition:opacity .5s ease-in-out}.feature-content{transition:opacity .7s ease-in-out}.feature-input{background:linear-gradient(90deg,rgba(69,56,25,0) 0%,rgba(69,56,25,.3) 15%,rgba(69,56,25,.6) 25%,rgba(69,56,25,1) 35%,rgba(69,56,25,1) 65%,rgba(69,56,25,.6) 75%,rgba(69,56,25,.3) 85%,rgba(69,56,25,0) 100%);color:#fff1d4;font-family:HanYiZhongSongJian,STSong,SimSun,serif;font-weight:700;font-size:.9rem;text-shadow:1px 1px 2px#453819;text-align:center;border:none;border-radius:0;transition:all .3s ease}.hover-image{transition:opacity .3s ease;cursor:pointer}.hover-image:hover{opacity:.8}.feature-image{max-width:100%;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 4px 12px #00000026}.feature-left-image{max-height:500px;width:auto;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(0,0,0,.2))}.feature-middle-image{max-width:600px;max-height:500px;width:100%;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 8px 24px #00000040}.feature-right-image{max-width:250px;max-height:300px;width:100%;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 4px 16px #0003}.feature-top-title{max-width:400px;max-height:100px;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.feature-decoration-image{max-width:200px;max-height:100px;width:100%;height:auto;object-fit:contain;border-radius:6px;filter:drop-shadow(0 2px 6px rgba(0,0,0,.2))}.feature-image-loading{opacity:.6;filter:grayscale(20%)}.feature-image-loaded{opacity:1;filter:none}@media (max-width: 768px){.feature-middle-image{max-width:100%;max-height:400px}.feature-left-image{max-height:400px}.feature-right-image{max-width:200px;max-height:250px}.feature-top-title{max-width:300px;max-height:80px}}@media (max-width: 640px){.feature-middle-image,.feature-left-image{max-height:300px}.feature-right-image{max-width:150px;max-height:200px}.feature-top-title{max-width:250px;max-height:60px}}@media (max-width: 768px){.home-container{background-attachment:scroll;background-position:center;background-size:cover}}@media (max-width: 480px){.home-container{background-size:cover;background-position:center}#home,.feature-section{background:transparent}}
