:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.deepfake-report{margin-top:30px;padding:25px;background:linear-gradient(135deg,#1e3c72,#2a5298);border-radius:15px;box-shadow:0 8px 32px #0000004d;color:#fff}.deepfake-report h3{margin-top:0;margin-bottom:25px;font-size:24px;text-align:center;color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.report-section{margin-bottom:25px;padding:20px;background:#ffffff1a;border-radius:10px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.report-section h4{margin-top:0;margin-bottom:15px;font-size:18px;color:gold}.report-section h5{margin:10px 0;font-size:16px;color:#87ceeb}.deepfake-score{margin-top:15px}.score-bar{width:100%;height:40px;background:#fff3;border-radius:20px;overflow:hidden;margin-bottom:10px}.score-fill{height:100%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;transition:width .5s ease;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.5)}.score-fill.low-risk{background:linear-gradient(90deg,#28a745,#20c997)}.score-fill.medium-risk{background:linear-gradient(90deg,#ffc107,#ff9800)}.score-fill.high-risk{background:linear-gradient(90deg,#dc3545,#c82333)}.score-label{text-align:center;font-size:16px;font-weight:700;margin:10px 0}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-top:15px}.metric-item{display:flex;justify-content:space-between;padding:12px 15px;background:#ffffff26;border-radius:8px;border-left:4px solid #ffd700}.metric-label{font-weight:500;color:#e0e0e0}.metric-value{font-weight:700;color:#fff;font-family:Courier New,monospace}.embedding-comparison{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:15px}@media(max-width:768px){.embedding-comparison{grid-template-columns:1fr}}.embedding-col{padding:15px;background:#ffffff14;border-radius:8px}.stats-list{margin-top:10px}.stat-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:14px}.stat-item:last-child{border-bottom:none}.stat-item span:first-child{color:#b0b0b0}.stat-item span:last-child{font-family:Courier New,monospace;color:#fff;font-weight:700}.embedding-vectors{margin-top:15px}.vector-preview{margin-bottom:15px;padding:12px;background:#0000004d;border-radius:8px;border-left:3px solid #4CAF50}.vector-preview strong{display:block;margin-bottom:8px;color:gold;font-size:14px}.vector-preview code{display:block;font-family:Courier New,monospace;font-size:12px;color:#e0e0e0;white-space:nowrap;overflow-x:auto;padding:8px;background:#0003;border-radius:4px}.report-section.conclusion{background:linear-gradient(135deg,#ffd70033,#ff8c0033);border:2px solid rgba(255,215,0,.5)}.report-section.conclusion p{line-height:1.8;font-size:15px;color:#fff;text-align:justify;margin:0}.model-result{margin-bottom:20px;padding:18px;background:#ffffff14;border-radius:10px;border-left:5px solid;transition:transform .2s,box-shadow .2s}.model-result:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0000004d}.model-result.aasist-result{border-left-color:#ff6b6b}.model-result.rawnet-result{border-left-color:#4ecdc4}.model-result.sec-result{border-left-color:#ffd93d}.model-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:12px;border-bottom:2px solid rgba(255,255,255,.1)}.model-header h5{margin:0;font-size:18px;color:gold}.badge{padding:6px 16px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.badge-success{background:linear-gradient(135deg,#28a745,#20c997);color:#fff}.badge-danger{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff}.badge-warning{background:linear-gradient(135deg,#ffc107,#ff9800);color:#333}.model-details{margin-top:12px}.model-description{font-size:14px;color:#e0e0e0;margin-bottom:15px;font-style:italic}.model-scores{margin:15px 0}.score-item{margin-bottom:12px}.score-bar-mini{width:100%;height:24px;background:#ffffff26;border-radius:12px;overflow:hidden;margin-top:5px}.score-fill-success,.score-fill-danger,.score-fill-info{height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;transition:width .5s ease}.score-fill-success{background:linear-gradient(90deg,#28a745,#20c997)}.score-fill-danger{background:linear-gradient(90deg,#dc3545,#c82333)}.score-fill-info{background:linear-gradient(90deg,#17a2b8,#138496)}.model-capabilities{margin-top:18px;padding:15px;background:#0003;border-radius:8px;border:1px solid rgba(255,215,0,.3)}.model-capabilities h6{margin:0 0 12px;color:gold;font-size:15px}.capabilities-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.capabilities-list li{padding:8px 12px;background:#28a74533;border-radius:6px;border-left:3px solid #28a745;font-size:13px;color:#e0f7e0;transition:background .2s}.capabilities-list li:hover{background:#28a7454d}.model-warning{margin-top:12px;padding:10px 15px;background:#ffc10726;border-left:4px solid #ffc107;border-radius:6px;font-size:14px;color:#ffeaa7}.fusion-info{margin-top:20px;padding:15px;background:#8a2be226;border-radius:8px;border:2px dashed rgba(138,43,226,.4)}.fusion-info h6{margin:0 0 10px;color:#da9ff9;font-size:16px}.fusion-info p{margin:5px 0;font-size:14px;color:#e0e0e0}.models-list{margin-top:8px;font-size:13px}.models-list strong{color:gold}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.app{min-height:100vh;padding:20px}.container{max-width:1400px;margin:0 auto}.header{text-align:center;color:#fff;margin-bottom:40px}.header h1{font-size:2.5em;margin-bottom:10px;text-shadow:2px 2px 4px rgba(0,0,0,.2)}.header p{font-size:1.1em;opacity:.95}.main-content{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:30px}@media(max-width:968px){.main-content{grid-template-columns:1fr}}.status-info{background:#fff;padding:15px 25px;border-radius:15px;text-align:center;color:#333;font-weight:500;box-shadow:0 5px 20px #0000001a}.reference-voice-card,.verification-card{background:#fff;border-radius:20px;padding:30px;box-shadow:0 10px 40px #0003}.reference-voice-card h2,.verification-card h2{color:#333;margin-bottom:20px;font-size:1.5em;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.step-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:5px 15px;border-radius:20px;font-size:.8em}.info-box{background:#e7f3ff;border-left:4px solid #2196F3;padding:15px;border-radius:5px;margin-bottom:20px;color:#0c5460}.upload-area{border:3px dashed #667eea;border-radius:15px;padding:40px;text-align:center;cursor:pointer;transition:all .3s;margin-bottom:20px}.upload-area:hover:not(.disabled){border-color:#764ba2;background:#f8f9ff}.upload-area.active{border-color:#28a745;background:#e8f5e9}.upload-area.disabled{opacity:.5;cursor:not-allowed;border-color:#ccc}.upload-icon{font-size:3em;margin-bottom:10px}.upload-hint{font-size:.9em;color:#666;margin-top:10px}.recording-controls{display:flex;gap:10px;margin-bottom:20px}.recording-controls button{flex:1}.btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:15px 30px;border-radius:25px;font-size:1em;cursor:pointer;transition:all .3s;width:100%;font-weight:700;margin-top:10px}.btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #667eea66}.btn:disabled{background:#ccc;cursor:not-allowed;transform:none;opacity:.6}.btn-success{background:linear-gradient(135deg,#28a745,#20c997)}.btn-danger{background:linear-gradient(135deg,#dc3545,#c82333)}.btn-secondary{background:linear-gradient(135deg,#6c757d,#5a6268)}.file-info{background:#f8f9fa;padding:15px;border-radius:8px;margin:15px 0;font-size:.9em;color:#333}.audio-player{width:100%;margin:15px 0;border-radius:10px}.status{padding:15px;border-radius:10px;margin:15px 0}.status.error{background:#f8d7da;color:#721c24;border-left:4px solid #dc3545}.status.success{background:#d4edda;color:#155724;border-left:4px solid #28a745}.status.info{background:#d1ecf1;color:#0c5460;border-left:4px solid #17a2b8}.progress-bar{height:10px;background:#e9ecef;border-radius:5px;overflow:hidden;margin:15px 0}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease}.result-card{background:#f8f9fa;border-radius:15px;padding:20px;margin-top:20px}.result-card h3{color:#333;margin-bottom:15px}.result-content{margin-bottom:15px}.result-item{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #dee2e6}.result-item:last-child{border-bottom:none}.result-label{font-weight:700;color:#666}.result-value{color:#333}.success-message{background:#d4edda;color:#155724;padding:15px;border-radius:8px;margin-top:15px;text-align:center;font-weight:500}.authentication-result{text-align:center;padding:30px;border-radius:15px;margin:20px 0}.authentication-result.authentic{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #28a745}.authentication-result.fake{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:2px solid #dc3545}.auth-icon{font-size:4em;margin-bottom:10px}.authentication-result h3{font-size:2em;margin-bottom:10px;color:#333}.similarity-meter{margin:20px 0}.similarity-meter h4{color:#333;margin-bottom:10px}.similarity-bar{height:30px;background:#e9ecef;border-radius:15px;overflow:hidden;position:relative}.similarity-fill{height:100%;transition:width .5s ease,background .5s ease;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.9em}.similarity-fill.high{background:linear-gradient(90deg,#28a745,#20c997)}.similarity-fill.medium{background:linear-gradient(90deg,#ffc107,#fd7e14)}.similarity-fill.low{background:linear-gradient(90deg,#dc3545,#c82333)}.interpretation{padding:15px;border-radius:10px;margin-top:15px}.interpretation.success{background:#d4edda;color:#155724}.interpretation.danger{background:#f8d7da;color:#721c24}.documentation-container{display:flex;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#2d3748!important}.documentation-container *{color:inherit}.doc-sidebar{width:280px;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:4px 0 20px #0000001a;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:100;transition:transform .3s ease}.doc-sidebar::-webkit-scrollbar{width:6px}.doc-sidebar::-webkit-scrollbar-track{background:#f1f1f1}.doc-sidebar::-webkit-scrollbar-thumb{background:#667eea;border-radius:3px}.sidebar-header{padding:30px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:sticky;top:0;z-index:10}.sidebar-title{font-size:22px;font-weight:700;margin:0 0 5px}.sidebar-subtitle{font-size:13px;opacity:.9;margin:0}.nav-menu{list-style:none;padding:15px 0;margin:0}.nav-item{margin:0}.nav-link{display:flex;align-items:center;padding:12px 20px;color:#4a5568;text-decoration:none;transition:all .2s ease;font-size:14px;font-weight:500;border-left:3px solid transparent}.nav-link:hover{background:#667eea1a;color:#667eea;border-left-color:#667eea}.nav-link.active{background:#667eea26;color:#667eea;border-left-color:#667eea;font-weight:600}.nav-icon{margin-right:12px;font-size:18px}.doc-content{flex:1;padding:40px 60px;max-width:1200px;margin:0 auto}.doc-section{background:#fff!important;border-radius:16px;padding:50px;box-shadow:0 10px 40px #0000001a;animation:fadeIn .5s ease;color:#2d3748!important}.doc-section *{color:#2d3748}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.doc-section h1{font-size:42px;font-weight:800;color:#2d3748!important;margin:0 0 30px;padding-bottom:20px;border-bottom:3px solid #667eea}.doc-section h2{font-size:28px;font-weight:700;color:#2d3748!important;margin:40px 0 20px}.doc-section h3{font-size:20px;font-weight:600;color:#4a5568!important;margin:25px 0 15px}.doc-section h4{font-size:16px;font-weight:600;color:#718096!important;margin:20px 0 10px}.doc-section p{font-size:16px;line-height:1.8;color:#4a5568!important;margin:15px 0}.doc-section ul,.doc-section ol{margin:15px 0;padding-left:25px}.doc-section li{margin:8px 0;line-height:1.7;color:#4a5568!important}.doc-section strong{color:#2d3748!important;font-weight:600}.doc-section a{color:#667eea;text-decoration:none;font-weight:500;transition:color .2s ease}.doc-section a:hover{color:#764ba2;text-decoration:underline}.intro-card,.content-card{background:#f7fafc;border-radius:12px;padding:25px;margin:25px 0;border-left:4px solid #667eea;color:#2d3748!important}.intro-card *,.content-card *{color:#2d3748!important}.big-text{font-size:18px;line-height:1.8;color:#2d3748!important}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin:25px 0}.feature-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .3s ease;color:#2d3748!important}.feature-card *{color:#2d3748!important}.feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #667eea33;border-color:#667eea}.feature-icon{font-size:32px;margin-bottom:12px}.feature-card h3{margin:10px 0;font-size:18px;color:#2d3748!important}.feature-card p{margin:8px 0 0;font-size:14px;color:#718096!important}table{width:100%;border-collapse:collapse;margin:25px 0;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000000d}thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}th{padding:15px;text-align:left;font-weight:600;font-size:14px;color:#fff!important}td{padding:12px 15px;border-bottom:1px solid #e2e8f0;font-size:14px;color:#2d3748!important}tr:last-child td{border-bottom:none}tbody tr:hover{background:#f7fafc}.confusion-matrix td{text-align:center;font-weight:600}.true-positive,.true-negative{background:#c6f6d5;color:#22543d}.false-positive,.false-negative{background:#fed7d7;color:#742a2a}.threshold-table .active-threshold{background:#fef5e7;font-weight:600}.info-box{background:#e6fffa;border-left:4px solid #38b2ac;padding:15px 20px;margin:20px 0;border-radius:8px;color:#2d3748!important}.info-box *{color:#2d3748!important}.warning-box-large{background:#fffbeb;border:2px solid #f59e0b;border-radius:12px;padding:25px;margin:25px 0;color:#78350f!important}.warning-box-large *{color:#78350f!important}.warning-box-large h2{color:#92400e!important;margin-top:0;font-size:22px}.warning-box-large p{color:#78350f!important;margin:10px 0 0}.example-box{background:#f0f4ff;border-radius:12px;padding:20px;margin:20px 0;color:#2d3748!important}.example-box *{color:#2d3748!important}.result-box{padding:20px;border-radius:8px;margin:20px 0;font-family:Monaco,Courier New,monospace}.result-box *{color:#2d3748!important}.result-box.success{background:#c6f6d5;border:2px solid #38a169;color:#22543d!important}.result-box.error{background:#fed7d7;border:2px solid #e53e3e;color:#742a2a!important}.code-block{background:#1a202c!important;border-radius:8px;padding:20px;margin:20px 0;overflow-x:auto;box-shadow:0 4px 12px #00000026}.code-block *{color:#e2e8f0!important}.code-block pre{margin:0;font-family:Monaco,Courier New,monospace;font-size:13px;line-height:1.6;color:#e2e8f0!important}.pipeline-step{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:25px;margin:20px 0;position:relative;transition:all .3s ease}.pipeline-step:hover{border-color:#667eea;box-shadow:0 8px 20px #667eea26}.step-header{display:flex;align-items:center;margin-bottom:15px}.step-number{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff!important;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;margin-right:15px;font-size:18px}.step-title{font-size:20px;font-weight:600;color:#2d3748!important;margin:0}.step-timing{font-size:13px;color:#718096!important;font-weight:500;margin-left:auto}.step-description{margin:10px 0;color:#4a5568!important;line-height:1.7}.step-details{margin-top:15px;padding-top:15px;border-top:1px solid #e2e8f0;color:#2d3748!important}.step-details *{color:#2d3748!important}.step-details ul{margin:10px 0}.metrics-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin:25px 0}.metric-item{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff!important;padding:20px;border-radius:10px;text-align:center;font-size:16px}.metric-item *{color:#fff!important}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin:25px 0}.metric-box{background:#f7fafc;padding:20px;border-radius:10px;border-left:4px solid #667eea;color:#2d3748!important}.metric-box *{color:#2d3748!important}.metric-label{font-size:14px;color:#718096!important;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.metric-value{font-size:28px;font-weight:700;color:#2d3748!important}.scenarios-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin:25px 0}.scenario-card{border-radius:12px;padding:25px;border:2px solid;transition:all .3s ease;color:#2d3748!important}.scenario-card *{color:#2d3748!important}.scenario-card.success{background:#f0fff4;border-color:#38a169}.scenario-card.warning{background:#fffbeb;border-color:#f59e0b}.scenario-card.danger{background:#fff5f5;border-color:#e53e3e}.scenario-card h3{margin:0 0 15px;font-size:18px}.scenario-data{font-size:20px;font-weight:600;margin:10px 0}.scenario-decision{font-size:18px;font-weight:700;margin:10px 0}.scenario-card p{font-size:14px;line-height:1.6;margin:10px 0}.recommendation{background:#fff9;padding:12px;border-radius:8px;margin-top:15px;font-size:13px;color:#2d3748!important}.recommendation *{color:#2d3748!important}.endpoint-card{background:#f7fafc;border-radius:12px;padding:30px;margin:30px 0;border:1px solid #e2e8f0;color:#2d3748!important}.endpoint-card *{color:#2d3748!important}.endpoint-header{display:flex;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:2px solid #e2e8f0}.method{padding:6px 12px;border-radius:6px;font-weight:700;font-size:13px;margin-right:12px;text-transform:uppercase;color:#fff!important}.method.post{background:#48bb78;color:#fff!important}.method.get{background:#4299e1;color:#fff!important}.method.put{background:#ed8936;color:#fff!important}.method.delete{background:#f56565;color:#fff!important}.path{font-family:Monaco,Courier New,monospace;font-size:16px;font-weight:600;color:#2d3748}.example-card{background:#f7fafc;border-radius:12px;padding:30px;margin:30px 0;border-left:5px solid #667eea;color:#2d3748!important}.example-card *{color:#2d3748!important}.example-card h3{color:#2d3748!important;margin-top:0}@media(max-width:1024px){.doc-content{padding:30px 40px}.doc-section{padding:35px}}@media(max-width:768px){.documentation-container{flex-direction:column}.doc-sidebar{width:100%;height:auto;position:relative}.doc-content{padding:20px}.doc-section{padding:25px}.doc-section h1{font-size:32px}.doc-section h2{font-size:24px}.features-grid,.scenarios-grid,.metrics-grid{grid-template-columns:1fr}}@media(max-width:480px){.doc-section h1{font-size:28px}.doc-section{padding:20px}.code-block{padding:15px}.code-block pre{font-size:11px}}.text-center{text-align:center}.mt-20{margin-top:20px}.mb-20{margin-bottom:20px}.highlight{background:#fef5e7;padding:2px 6px;border-radius:4px;font-weight:600}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;margin:0 5px}.badge.success{background:#c6f6d5;color:#22543d}.badge.warning{background:#feebc8;color:#7c2d12}.badge.info{background:#bee3f8;color:#2c5282}@media print{.doc-sidebar{display:none}.doc-content{max-width:100%;padding:0}.doc-section{box-shadow:none;page-break-inside:avoid}.pipeline-step,.example-card{page-break-inside:avoid}}
