:root{--primary-color: #4f46e5;--primary-hover: #4338ca;--primary-light: #e0e7ff;--bg-app: #f1f5f9;--bg-card: #ffffff;--bg-input: #ffffff;--bg-panel: #f8fafc;--text-main: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--border-color: #e2e8f0;--border-focus: #6366f1;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--success-bg: #dcfce7;--success-text: #15803d;--error-bg: #fee2e2;--error-text: #b91c1c;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--transition: all .2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-app);color:var(--text-main);margin:0;display:flex;justify-content:center;padding:40px 20px;min-height:100vh;-webkit-font-smoothing:antialiased}#root{width:100%;max-width:850px;transition:max-width .5s cubic-bezier(.25,.8,.25,1)}.review-mode-active #root{max-width:1600px}main{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);padding:40px;width:100%;position:relative;overflow:hidden}h1{text-align:center;font-weight:800;font-size:2rem;letter-spacing:-.03em;margin-bottom:32px;color:var(--text-main);background:linear-gradient(135deg,var(--text-main) 0%,#475569 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.control-panel{background:var(--bg-panel);padding:24px;border-radius:var(--radius-md);margin-bottom:32px;display:flex;flex-direction:column;gap:20px;border:1px solid var(--border-color)}.selector-row{display:flex;align-items:center;justify-content:space-between}.selector-row label{font-weight:700;color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.btn-group{display:flex;background:#e2e8f0;padding:4px;border-radius:10px;gap:2px}.btn-toggle{padding:8px 20px;border:none;background:transparent;cursor:pointer;font-weight:600;border-radius:8px;transition:var(--transition);font-size:.85rem;display:flex;align-items:center;gap:8px;color:var(--text-secondary)}.btn-toggle:hover:not(.active){color:var(--text-main);background:#ffffff80}.btn-toggle.active{background:var(--bg-card);color:var(--primary-color);box-shadow:var(--shadow-sm)}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}input[type=text]{padding:12px 16px;border-radius:var(--radius-sm);border:1px solid var(--border-color);font-size:.95rem;background:var(--bg-input);color:var(--text-main);outline:none;transition:var(--transition);width:100%}input[type=text]:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #4f46e526}.file-upload-box{border:2px dashed var(--border-color);border-radius:var(--radius-md);padding:48px;text-align:center;margin-bottom:32px;cursor:pointer;transition:var(--transition);background:linear-gradient(to bottom,#fff,#fafafa);position:relative;overflow:hidden}.file-upload-box:hover{border-color:var(--primary-color);background:var(--primary-light);transform:translateY(-2px)}.file-upload-box:active{transform:translateY(0)}.split-view{display:flex;gap:24px;margin-top:32px;height:75vh;animation:fadeIn .5s ease-out}.json-editor,.verification-pane{flex:1;display:flex;flex-direction:column;overflow:hidden;border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}textarea{flex:1;background:#1e1e2e;color:#a6accd;padding:24px;font-family:JetBrains Mono,Fira Code,monospace;font-size:.85rem;border:none;resize:none;line-height:1.6;outline:none}.verification-pane{background:#f8fafc;padding:24px;overflow-y:auto;position:relative}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}textarea::-webkit-scrollbar-thumb{background:#475569}textarea::-webkit-scrollbar-thumb:hover{background:#64748b}.preview-card{background:#fff;padding:24px;border-radius:var(--radius-md);border:1px solid var(--border-color);margin-bottom:24px;position:relative;box-shadow:var(--shadow-sm);transition:var(--transition)}.preview-card:hover{border-color:var(--primary-color);box-shadow:var(--shadow-md)}.preview-input-bold{display:block;font-family:Inter,sans-serif;font-weight:800;font-size:1.25rem;border:none;border-bottom:2px solid transparent;width:100%;margin-bottom:16px;padding-bottom:4px;color:var(--text-main);background:transparent;outline:none;transition:border-color .2s}.preview-input-bold:focus{border-bottom-color:var(--primary-color)}.scenario-box{background:#f0f9ff;padding:16px;border-left:4px solid #0ea5e9;border-radius:4px;margin:20px 0}.scenario-box textarea{background:transparent;color:#0c4a6e;font-family:Georgia,serif;font-size:1rem;font-style:italic;padding:0;height:auto;min-height:80px;width:100%;border:none;resize:vertical}.question-edit-field{width:100%;margin-bottom:12px;padding:12px 16px;border-radius:var(--radius-sm);border:1px solid var(--border-color);font-size:.9rem;color:var(--text-secondary);background:#fff;transition:var(--transition)}.question-edit-field:focus{border-color:var(--primary-color);color:var(--text-main);box-shadow:0 0 0 3px #4f46e51a}.status-badge{position:absolute;top:24px;right:24px;padding:6px 12px;border-radius:20px;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;display:inline-flex;align-items:center}.status-badge:before{content:"";display:block;width:6px;height:6px;border-radius:50%;margin-right:6px;background-color:currentColor}.status-badge.active{background:var(--success-bg);color:var(--success-text)}.status-badge.inactive{background:#f1f5f9;color:var(--text-muted)}.tags-container{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.exam-tag{background:#eff6ff;color:#3b82f6;font-size:.75rem;padding:4px 12px;border-radius:100px;font-weight:600;border:1px solid #dbeafe}.action-bar{position:sticky;bottom:0;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:24px 0 0;display:flex;gap:16px;justify-content:flex-end;border-top:1px solid var(--border-color);margin-top:32px;z-index:10}.btn-main{background:var(--primary-color);color:#fff;padding:14px 28px;border-radius:var(--radius-sm);border:none;font-weight:600;font-size:.95rem;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 4px 6px #4f46e533}.btn-main:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 8px 12px #4f46e54d}.btn-main:active{transform:translateY(0)}.btn-main:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none;background:#94a3b8}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loader-small{border:2px solid rgba(255,255,255,.3);border-top:2px solid #ffffff;border-radius:50%;width:18px;height:18px;animation:spin .8s linear infinite}.subtle{color:var(--text-muted);font-size:.85rem;margin-top:8px}progress{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;height:12px;border-radius:20px;overflow:hidden;border:none;background-color:var(--bg-panel)}progress::-webkit-progress-bar{background-color:var(--bg-panel);border-radius:20px}progress::-webkit-progress-value{background:linear-gradient(90deg,var(--primary-color),#818cf8);border-radius:20px;transition:width .4s cubic-bezier(.4,0,.2,1)}progress::-moz-progress-bar{background:var(--primary-color);border-radius:20px}.model-answer-box{background:#fdf2f8;border-left:4px solid #ec4899;padding:12px;border-radius:4px;margin-top:8px}.model-answer-box textarea{background:transparent;color:#831843;font-family:Inter,sans-serif;font-size:.9rem;line-height:1.4;min-height:50px}.image-label-input{width:45px;text-align:center;font-weight:800;color:var(--primary-color);border:1px solid var(--primary-light);background:var(--primary-light);border-radius:4px;padding:2px}.error-box{background:var(--error-bg);color:var(--error-text);padding:20px;border-radius:var(--radius-md);border:1px solid rgba(185,28,28,.2);margin-top:20px;animation:shake .4s cubic-bezier(.36,.07,.19,.97) both}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.loader-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#fffc;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}select.status-badge{border:1px solid var(--border-color);background:#fff;cursor:pointer;outline:none;font-family:inherit}.action-bar{display:flex;justify-content:space-between;align-items:center;padding-top:20px;background:#fff}
