:root{--brand: #4B3FE3;--brand-soft: #F2F7FF;--brand-text: #1A1759;--surface: #F7F7F8;--surface-muted: #EFEFF2;--text: #171717;--text-muted: #52525B;--border: rgba(23, 23, 23, .12);--success: #1DC981;--warning: #EFAA17;--danger: #E8463A;--radius: 8px;--radius-card: 12px;--radius-full: 999px;--spacer: 16px;--font: "SF Pro Text", "PingFang SC", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;font-family:var(--font);font-size:14px;line-height:1.5;color:var(--text);background:var(--surface);-webkit-font-smoothing:antialiased}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button{font-family:var(--font);font-size:14px;cursor:pointer;border:none;outline:none}input,textarea{font-family:var(--font);font-size:14px}.app-layout{max-width:720px;margin:0 auto;padding:0 var(--spacer);min-height:100%;display:flex;flex-direction:column}.app-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacer) 0;border-bottom:1px solid var(--border);margin-bottom:var(--spacer)}.app-header h1{font-size:18px;font-weight:600;color:var(--brand)}.app-header nav{display:flex;gap:12px}.app-header nav a{font-size:13px;color:var(--text-muted);padding:4px 8px;border-radius:var(--radius)}.app-header nav a.active,.app-header nav a:hover{color:var(--brand);background:var(--brand-soft);text-decoration:none}.app-content{flex:1;padding-bottom:32px}.page-title{font-size:20px;font-weight:600;margin-bottom:4px}.page-subtitle{font-size:13px;color:var(--text-muted);margin-bottom:20px}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-card);padding:20px;margin-bottom:16px}.card-title{font-size:16px;font-weight:600;margin-bottom:4px}.card-meta{font-size:12px;color:var(--text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:var(--radius);font-weight:500;font-size:14px;transition:background .15s,opacity .15s}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{opacity:.9}.btn-secondary{background:var(--surface-muted);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--border)}.btn-danger{background:var(--danger);color:#fff}.btn-sm{padding:4px 10px;font-size:12px}.btn-block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:16px}.form-label{display:block;font-size:13px;font-weight:500;color:var(--text-muted);margin-bottom:6px}.form-input,.form-textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius);font-size:14px;color:var(--text);background:#fff;outline:none}.form-input:focus,.form-textarea:focus{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}.form-textarea{min-height:80px;resize:vertical}.tag{display:inline-block;padding:2px 8px;border-radius:var(--radius-full);font-size:12px;font-weight:500}.tag-brand{background:var(--brand-soft);color:var(--brand-text)}.tag-success{background:#1dc9811f;color:#0d7a4b}.tag-warning{background:#efaa171f;color:#9a6b00}.tag-danger{background:#e8463a1f;color:#b31b10}.tag-muted{background:var(--surface-muted);color:var(--text-muted)}.fields-list{display:grid;gap:12px}.field-item{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:14px}.field-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.field-item-type{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--brand);background:var(--brand-soft);padding:2px 6px;border-radius:var(--radius)}.field-item-label{font-size:13px;font-weight:500}.field-item-content{font-size:14px;color:var(--text-muted);line-height:1.6}.review-area{min-height:120px;border:2px dashed var(--border);border-radius:var(--radius);padding:16px;margin:16px 0;color:var(--text-muted);font-size:14px}.review-area:focus-within{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}.review-area textarea{width:100%;border:none;outline:none;resize:vertical;min-height:80px;font-size:15px;color:var(--text);background:transparent}.feedback-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:20px;margin-top:16px}.feedback-summary{font-size:16px;font-weight:600;margin-bottom:12px}.field-feedback-item{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--border)}.field-feedback-item:last-child{border-bottom:none}.field-feedback-icon{width:6px;height:6px;border-radius:50%;flex-shrink:0}.field-feedback-icon.hit{background:var(--success)}.field-feedback-icon.miss{background:var(--danger)}.field-feedback-icon.confused{background:var(--warning)}.field-feedback-label{font-size:13px;font-weight:500;flex-shrink:0;min-width:60px}.field-feedback-content{font-size:13px;color:var(--text-muted)}.confidence-picker{display:flex;gap:8px;margin:16px 0}.confidence-btn{flex:1;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;text-align:center;font-size:13px;color:var(--text-muted);transition:all .15s}.confidence-btn:hover{border-color:var(--brand);color:var(--brand)}.confidence-btn.selected{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-text);font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:20px}.stat-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:16px;text-align:center}.stat-value{font-size:28px;font-weight:700;color:var(--brand);font-variant-numeric:tabular-nums}.stat-label{font-size:12px;color:var(--text-muted);margin-top:4px}.empty-state{text-align:center;padding:48px 20px;color:var(--text-muted)}.empty-state h3{font-size:16px;color:var(--text);margin-bottom:8px}.empty-state p{font-size:13px;margin-bottom:16px}.loading{text-align:center;padding:32px;color:var(--text-muted);font-size:13px}.error-msg{background:#e8463a14;color:var(--danger);padding:12px 16px;border-radius:var(--radius);font-size:13px;margin-bottom:16px}.success-msg{background:#1dc98114;color:#0d7a4b;padding:12px 16px;border-radius:var(--radius);font-size:13px;margin-bottom:16px}
