:root{--bg-primary:#f8fafc;--bg-card:#fff;--bg-subtle:#f0f7ff;--bg-subtle-hover:#e0f2fe;--border-light:#e2e8f0;--border-blue:#bae6fd;--border-blue-active:#38bdf8;--text-main:#0f172a;--text-muted:#64748b;--text-light:#94a3b8;--primary-50:#f0f9ff;--primary-100:#e0f2fe;--primary-200:#bae6fd;--primary-300:#7dd3fc;--primary-400:#38bdf8;--primary-500:#0ea5e9;--primary-600:#0284c7;--primary-700:#0369a1;--success-bg:#f0fdf4;--success-border:#bbf7d0;--success-text:#166534;--warning-bg:#fffbebf;--warning-border:#fde68a;--warning-text:#92400e;--danger-bg:#fef2f2;--danger-border:#fecaca;--danger-text:#991b1b;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0ea5e90f, 0 2px 4px -2px #0ea5e90a;--shadow-lg:0 10px 25px -5px #0ea5e91f, 0 8px 10px -6px #0ea5e914}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-main);-webkit-font-smoothing:antialiased;padding-bottom:60px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5}.app-container{max-width:1400px;margin:0 auto;padding:32px 24px}.app-header{text-align:center;margin-bottom:32px}.header-badge{background:var(--primary-100);color:var(--primary-700);border:1px solid var(--primary-200);border-radius:9999px;align-items:center;gap:6px;margin-bottom:12px;padding:4px 12px;font-size:13px;font-weight:600;display:inline-flex}.app-title{color:var(--text-main);letter-spacing:-.02em;background:linear-gradient(135deg, var(--text-main) 30%, var(--primary-700) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:32px;font-weight:800}.app-subtitle{color:var(--text-muted);font-size:16px}.card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-md);margin-bottom:24px;padding:24px;transition:border-color .2s,box-shadow .2s}.card-title{color:var(--text-main);align-items:center;gap:8px;margin-bottom:16px;font-size:18px;font-weight:700;display:flex}.card-title-icon{color:var(--primary-500)}.form-grid{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;display:grid}@media (width<=900px){.form-grid{grid-template-columns:1fr}}.models-list{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.model-card{border-radius:var(--radius-md);border:2px solid var(--border-light);background:var(--bg-card);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:12px;padding:16px;transition:all .2s;display:flex}.model-card:hover{border-color:var(--primary-300);background:var(--bg-subtle)}.model-card.selected{border-color:var(--primary-500);background:var(--primary-50);box-shadow:var(--shadow-sm)}.model-checkbox{width:18px;height:18px;accent-color:var(--primary-600);cursor:pointer;margin-top:2px}.model-info{flex-direction:column;display:flex}.model-name{color:var(--text-main);font-size:15px;font-weight:700}.model-id{color:var(--text-muted);word-break:break-all;font-family:monospace;font-size:12px}.dropzone{border:2px dashed var(--primary-300);border-radius:var(--radius-md);background:var(--primary-50);text-align:center;cursor:pointer;padding:32px 20px;transition:all .2s}.dropzone:hover,.dropzone.active{border-color:var(--primary-500);background:var(--primary-100)}.dropzone-icon{color:var(--primary-500);margin-bottom:8px;font-size:36px}.dropzone-text{color:var(--primary-700);margin-bottom:4px;font-size:14px;font-weight:600}.dropzone-subtext{color:var(--text-muted);font-size:12px}.file-input{display:none}.file-list{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.file-chip{background:var(--bg-card);border:1px solid var(--border-blue);border-radius:var(--radius-sm);color:var(--text-main);box-shadow:var(--shadow-sm);align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:500;display:inline-flex}.file-chip-icon{color:var(--primary-500)}.file-chip-remove{color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:16px;line-height:1;transition:color .15s,background .15s;display:flex}.file-chip-remove:hover{color:var(--danger-text);background:var(--danger-bg)}.action-bar{justify-content:center;margin-top:12px;display:flex}.btn-submit{background:linear-gradient(135deg, var(--primary-600) 0%, var(--primary-500) 100%);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;align-items:center;gap:10px;padding:14px 36px;font-size:16px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 14px #0ea5e959}.btn-submit:hover:not(:disabled){background:linear-gradient(135deg, var(--primary-700) 0%, var(--primary-600) 100%);transform:translateY(-1px);box-shadow:0 6px 20px #0ea5e973}.btn-submit:active:not(:disabled){transform:translateY(0)}.btn-submit:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.loading-card{text-align:center;padding:48px 24px}.spinner-wrapper{width:72px;height:72px;margin:0 auto 24px;position:relative}.spinner-outer{border:4px solid var(--primary-100);border-top-color:var(--primary-500);border-radius:50%;width:100%;height:100%;animation:1s linear infinite spin;position:absolute}.spinner-inner{border:4px solid #0000;border-bottom-color:var(--primary-300);border-radius:50%;width:48px;height:48px;animation:1.5s linear infinite spin-reverse;position:absolute;top:12px;left:12px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin-reverse{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.loading-title{color:var(--text-main);margin-bottom:8px;font-size:20px;font-weight:700}.loading-desc{color:var(--text-muted);max-width:500px;margin:0 auto;font-size:14px}.loading-dots span{animation:blink 1.4s infinite fill-mode: both}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes blink{0%{opacity:.2}20%{opacity:1}to{opacity:.2}}.results-card{padding:0;overflow-x:auto}.results-header{background:var(--primary-50);border-bottom:1px solid var(--border-blue);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.results-title{color:var(--primary-700);font-size:18px;font-weight:700}.table-wrapper{width:100%;overflow-x:auto}.assessment-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.assessment-table th,.assessment-table td{border-bottom:1px solid var(--border-light);vertical-align:top;padding:16px 20px}.assessment-table th{color:var(--text-main);z-index:10;border-bottom:2px solid var(--border-light);background:#f1f5f9;font-weight:700;position:sticky;top:0}.assessment-table th.criterion-col{background:var(--primary-100);width:260px;min-width:240px;color:var(--primary-700);border-right:2px solid var(--border-blue)}.assessment-table th.model-col{text-align:center;min-width:320px}.model-header-badge{background:var(--primary-600);color:#fff;border-radius:var(--radius-sm);text-transform:uppercase;margin-bottom:4px;padding:4px 10px;font-size:13px;font-weight:700;display:inline-block}.model-header-id{color:var(--text-muted);font-family:monospace;font-size:11px;font-weight:400}.criterion-title{color:var(--text-main);font-size:15px;font-weight:700}.criterion-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.cell-content{flex-direction:column;gap:8px;display:flex}.badge{border-radius:var(--radius-sm);align-items:center;gap:4px;width:fit-content;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.badge-score-3,.badge-low,.badge-strong,.badge-sufficient{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border)}.badge-score-2,.badge-medium,.badge-partially{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.badge-score-1,.badge-high,.badge-weak,.badge-insufficient{background:var(--danger-bg);color:var(--danger-text);border:1px solid var(--danger-border)}.badge-info{background:var(--primary-100);color:var(--primary-700);border:1px solid var(--primary-200)}.justification-text{color:var(--text-main);font-size:13px;line-height:1.5}.sub-block{margin-bottom:6px}.sub-block-label{color:var(--primary-700);margin-bottom:2px;font-size:12px;font-weight:600}.risk-item{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:#f8fafc;margin-bottom:8px;padding:10px}.risk-item:last-child{margin-bottom:0}.risk-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.risk-desc{color:var(--text-main);font-size:13px;font-weight:600}.risk-mitigation{color:var(--text-muted);border-top:1px dashed var(--border-light);margin-top:4px;padding-top:4px;font-size:12px}.error-box{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);border-radius:var(--radius-sm);padding:12px;font-size:13px}.error-box-title{margin-bottom:4px;font-weight:700}.alert-error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text);border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin-bottom:24px;padding:14px 20px;font-weight:500;display:flex}.results-header-left{flex-direction:column;gap:6px;display:flex}.results-badges{align-items:center;gap:8px;display:flex}.results-export-actions{align-items:center;gap:12px;display:flex}.btn-export{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.btn-export-selected{background:var(--primary-600);color:#fff;box-shadow:0 2px 6px #0284c740}.btn-export-selected:hover:not(:disabled){background:var(--primary-700);transform:translateY(-1px)}.btn-export-selected:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-export-all{background:var(--bg-card);color:var(--primary-700);border-color:var(--primary-300)}.btn-export-all:hover{background:var(--primary-100);border-color:var(--primary-500)}.model-header-select{justify-content:center;align-items:center;gap:8px;display:flex}.table-cell-selectable{transition:all .2s;position:relative}.cell-selected{background:#fff}.cell-deselected{opacity:.55;background:#f8fafc}.cell-deselected .cell-body{filter:grayscale(80%)}.cell-checkbox-wrapper{border-bottom:1px dashed #e2e8f0;justify-content:flex-end;margin-bottom:6px;padding-bottom:4px;display:flex}.cell-checkbox-label{color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:11px;font-weight:600;display:inline-flex}.cell-checkbox-text{transition:color .15s}.cell-selected .cell-checkbox-text{color:var(--primary-700)}.cell-deselected .cell-checkbox-text{color:var(--text-light)}.model-card-top{cursor:pointer;align-items:flex-start;gap:12px;width:100%;display:flex}.model-card{flex-direction:column}.model-card.debate-selected{box-shadow:0 0 0 1px #f59e0b, var(--shadow-sm);background:#fffbeb;border-color:#f59e0b}.debate-toggle{border-radius:var(--radius-sm);cursor:pointer;background:#f59e0b14;border:1px solid #f59e0b33;align-items:center;gap:8px;width:100%;margin-top:8px;padding:6px 10px;transition:all .2s;display:flex}.debate-toggle:hover{background:#f59e0b26;border-color:#f59e0b66}.debate-checkbox{accent-color:#f59e0b;cursor:pointer;width:16px;height:16px}.debate-checkbox:disabled{cursor:not-allowed;opacity:.4}.debate-label{color:#92400e;-webkit-user-select:none;user-select:none;font-size:13px;font-weight:600}.verdict-col-header{background:linear-gradient(135deg,#fef3c7,#fde68a)!important;border-left:3px solid #f59e0b!important}.verdict-badge{font-size:13px;font-weight:700;color:#fff!important;background:linear-gradient(135deg,#f59e0b,#d97706)!important}.verdict-cell{background:#fffdf5!important;border-left:3px solid #f59e0b!important}.debate-log-section{border-radius:var(--radius-md);border:1px solid var(--border-light);margin-top:24px;overflow:hidden}.debate-log-toggle{cursor:pointer;color:#713f12;background:linear-gradient(135deg,#fefce8,#fef9c3);border:none;align-items:center;gap:12px;width:100%;padding:16px 20px;font-size:15px;font-weight:700;transition:background .2s;display:flex}.debate-log-toggle:hover{background:linear-gradient(135deg,#fef9c3,#fef08a)}.debate-status-badges{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.debate-log-arrow{color:#92400e;margin-left:8px;font-size:12px}.debate-log-messages{background:var(--bg-card);flex-direction:column;gap:12px;padding:16px 20px;display:flex}.debate-log-empty{text-align:center;color:var(--text-muted);padding:24px;font-style:italic}.debate-message{border-radius:var(--radius-md);border:1px solid var(--border-light);padding:14px 18px;transition:transform .15s}.debate-message:hover{transform:translate(2px)}.debate-message-model_a{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-left:4px solid #3b82f6}.debate-message-model_b{background:linear-gradient(135deg,#faf5ff,#f3e8ff);border-left:4px solid #a855f7}.debate-message-header{align-items:center;gap:12px;margin-bottom:8px;display:flex}.debate-message-role{color:var(--text-main);font-size:14px;font-weight:700}.debate-message-step{color:var(--text-muted);background:#0000000f;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.debate-message-body{color:var(--text-main);white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.6}
