.matting-hero{background:linear-gradient(to bottom,var(--bg-white) 0%,var(--bg-gray) 100%);border-bottom:1px solid var(--border);padding:60px 20px 48px;text-align:center}.matting-hero .hero-title{font-size:2.2rem;font-weight:800;color:var(--dark);margin:0 0 12px;line-height:1.3}.matting-hero .hero-title span{color:var(--primary)}.matting-hero .hero-desc{font-size:1.15rem;color:var(--text-main);margin:0 0 8px}.matting-hero .hero-desc strong{color:var(--dark)}.matting-hero .hero-sub{font-size:.95rem;color:var(--text-muted);margin:0 0 40px}.matting-app{display:flex;gap:24px;max-width:1200px;margin:0 auto;padding:24px 20px 60px;align-items:stretch}.settings-panel{width:360px;min-width:320px;flex-shrink:0;display:flex;flex-direction:column;gap:20px;position:sticky;top:100px}.panel-section{background:var(--card-bg);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow);border:1px solid var(--border);display:flex;flex-direction:column}.panel-title{display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:700;color:var(--dark);margin:0 0 20px}.panel-title svg{color:var(--text-muted)}.field-group{margin-bottom:20px}.field-label{display:flex;align-items:center;gap:6px;font-size:.88rem;font-weight:600;color:var(--dark);margin-bottom:10px}.format-select{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--bg-white);color:var(--dark);font-size:.9rem;font-weight:500;outline:none;cursor:pointer;transition:border-color .2s;font-family:inherit}.format-select:focus{border-color:var(--primary)}.gpu-hint{font-size:.75rem;color:var(--text-muted);margin-top:6px}.gpu-hint.ok{color:#16a34a}.gpu-hint.bad{color:#dc2626}@media(max-width:1024px){.matting-app{max-width:100%;gap:16px;padding:20px 16px 48px}.settings-panel{width:300px;min-width:260px}}@media(max-width:860px){.matting-app{flex-direction:column;padding:16px 12px 48px;align-items:stretch}.settings-panel{width:100%;min-width:0;position:static;order:2}.main-area{order:1;min-height:220px}.upload-zone{order:1;min-height:200px}.settings-panel .panel-section{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-panel .panel-title,.settings-panel .field-group:first-of-type,.settings-panel .btn-convert,.settings-panel .btn-change-image{grid-column:1 / -1}}@media(max-width:640px){.matting-app{padding:12px 10px 40px;gap:12px}.panel-section{padding:16px;border-radius:var(--radius-md)}.settings-panel .panel-section{grid-template-columns:1fr}}.bg-seg{display:flex;gap:6px}.bg-seg button{flex:1;padding:9px 4px;border:1px solid var(--border);background:var(--bg-white);color:var(--text-main);border-radius:10px;font-size:.82rem;cursor:pointer;transition:var(--transition);font-family:inherit}.bg-seg button:hover{border-color:var(--primary);color:var(--primary)}.bg-seg button.active{background:var(--primary);border-color:var(--primary);color:#fff}.btn-convert{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;border:none;border-radius:var(--radius-md);background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:var(--transition);margin:8px 0 20px;font-family:inherit}.btn-convert:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #10b98166}.btn-convert:active:not(:disabled){transform:translateY(0)}.btn-convert:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.action-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:8px}.btn-action{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-white);color:var(--text-muted);font-size:.88rem;font-weight:600;cursor:pointer;transition:var(--transition);font-family:inherit}.btn-action:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.btn-action:active:not(:disabled){transform:scale(.97)}.btn-action:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-change-image{width:100%;margin-bottom:0;margin-top:16px}.heavy-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center}.heavy-modal.show{display:flex}.heavy-modal-mask{position:absolute;inset:0;background:#00000073}.heavy-modal-box{position:relative;background:var(--card-bg);color:var(--text-main);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px;max-width:420px;width:calc(100% - 40px);box-shadow:var(--shadow-hover)}.heavy-modal-title{font-size:1.05rem;font-weight:700;margin-bottom:12px}.heavy-modal-text{font-size:.9rem;line-height:1.7;color:var(--text-muted);margin:0 0 20px}.heavy-modal-note{display:inline-block;margin-top:6px;font-size:.82rem;color:var(--primary);font-weight:600}.heavy-modal-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.heavy-modal-btn{border:none;border-radius:99px;padding:10px 18px;font-size:.9rem;cursor:pointer;transition:opacity .2s ease}.heavy-modal-btn:active{opacity:.8}.heavy-modal-cancel{background:var(--bg-gray);color:var(--text-muted)}.heavy-modal-ok{background:var(--primary);color:#fff}.progress-wrap{position:fixed;top:0;left:0;right:0;height:4px;background:#009eff1f;border-radius:0;overflow:hidden;display:none;z-index:99999;pointer-events:none;box-shadow:0 1px 3px #00000026}.progress-wrap.visible{display:block}.progress-bar{height:100%;width:0;background:linear-gradient(90deg,var(--primary),#00a2ff);border-radius:0;transition:width .2s ease}.main-area{flex:1;min-width:0;display:flex;flex-direction:column;gap:20px}.upload-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);background:var(--card-bg);padding:48px 24px;text-align:center;cursor:pointer;transition:var(--transition)}.upload-zone:hover,.upload-zone.dragover{border-color:var(--primary);background:var(--primary-light)}.upload-zone .upload-icon{color:var(--text-muted);margin-bottom:16px}.upload-zone .upload-title{font-size:1.05rem;font-weight:600;color:var(--dark);margin:0 0 6px}.upload-zone .upload-sub{font-size:.85rem;color:var(--text-muted);margin:0;line-height:1.6}.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:620px){.preview-grid{grid-template-columns:1fr}}.preview-card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow)}.preview-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.preview-label{font-size:.85rem;font-weight:700;color:var(--text-main)}.preview-meta{font-size:.75rem;color:var(--text-muted)}.preview-body{position:relative;display:flex;align-items:center;justify-content:center;min-height:260px;background:var(--bg-gray);padding:12px}.preview-body canvas{max-width:100%;max-height:460px;border-radius:8px;box-shadow:0 4px 16px #00000014}.preview-body.checker{background-color:#fff;background-image:conic-gradient(#e5e7eb 25%,#fff 0 50%,#e5e7eb 0 75%,#fff 0);background-size:20px 20px}.preview-body.white{background:#fff}.preview-body.black{background:#111}.preview-placeholder{color:var(--text-muted);font-size:.85rem}.status-log{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 16px;max-height:200px;overflow-y:auto;font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:.8rem;line-height:1.6}.log-line{color:var(--text-muted);word-break:break-all}.log-line .t{color:var(--text-muted);opacity:.7}.log-line.ok{color:#16a34a}.log-line.warn{color:#d97706}.log-line.error{color:#dc2626}.log-line.info{color:var(--text-main)}.mode-time-hint{font-size:.8rem;line-height:1.6;color:var(--text-muted);margin:0 0 10px}.env-banner{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:12px;border:1px solid var(--border);background:var(--card-bg, #fff);font-size:.82rem;line-height:1.5;color:var(--text-main)}.env-status{display:flex;align-items:center;gap:8px}.env-dot{flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:#9ca3af}.env-banner[data-state=loading] .env-dot{background:#f59e0b;animation:env-pulse 1s ease-in-out infinite}.env-banner[data-state=ready] .env-dot{background:#16a34a}.env-banner[data-state=error] .env-dot{background:#dc2626}@keyframes env-pulse{0%,to{opacity:1}50%{opacity:.35}}.env-text{flex:1;word-break:break-all}.env-modes{display:flex;gap:6px}.env-mode{flex:1;padding:8px 10px;font-size:.82rem;border-radius:8px;cursor:pointer;border:1px solid var(--border);background:var(--card-bg, #fff);color:var(--text-main);font-family:inherit;transition:all .2s}.env-mode.active{background:var(--primary);border-color:var(--primary);color:#fff}.matting-info{background:var(--bg-gray);border-top:1px solid var(--border);padding:60px 20px 80px}.matting-info .container{max-width:1200px;margin:0 auto}.faq-section{max-width:800px;margin:0 auto}.faq-title{font-size:1.5rem;font-weight:800;color:var(--dark);text-align:center;margin:0 0 32px}.faq-item{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:12px;overflow:hidden;transition:border-color .2s}.faq-item:hover{border-color:var(--primary)}.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;border:none;background:transparent;cursor:pointer;text-align:left;font-size:.95rem;font-weight:600;color:var(--dark);line-height:1.5;transition:color .2s;font-family:inherit}.faq-question:hover{color:var(--primary)}.faq-arrow{flex-shrink:0;color:var(--text-muted);transition:transform .3s ease}.faq-item.open .faq-arrow{transform:rotate(180deg);color:var(--primary)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease,padding .35s ease}.faq-item.open .faq-answer{max-height:300px}.faq-answer p{padding:0 20px 18px;font-size:.9rem;color:var(--text-muted);line-height:1.7;margin:0}@media(max-width:640px){.matting-info{padding:40px 14px 60px}.faq-title{font-size:1.25rem;margin-bottom:24px}}
