: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;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}}.app{width:100%;max-width:1400px;margin:0 auto;padding:1rem 1.5rem}header{margin-bottom:1rem}header h1{font-size:1.6rem;margin:0}.subtitle{margin:.25rem 0 0;color:#888;font-size:.95rem}.step-bar{display:flex;gap:.25rem;margin-bottom:1.25rem;overflow-x:auto;padding-bottom:.25rem}.step-item{display:flex;align-items:center;gap:.35rem;padding:.3rem .6rem;border-radius:6px;background:#2a2a2a;font-size:.75rem;white-space:nowrap;color:#666;transition:all .2s}.step-item.active{background:#3b3bff22;color:#88f;border:1px solid #5555ff44}.step-item.done{background:#1a3a1a;color:#6c6}.step-dot{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#333;font-size:.7rem;font-weight:700}.step-item.active .step-dot{background:#55f4}.step-item.done .step-dot{background:#2a5a2a}.step-label{font-weight:500}.panels{display:flex;gap:1.25rem;align-items:flex-start}.panel{flex:1;min-width:0}.panel.left{flex:1.1}.panel.right{flex:.9}.job-list h3,.form-section h3,.debug-actions h3,.log-console h3{font-size:.95rem;margin:0 0 .6rem;color:#aaa;text-transform:uppercase;letter-spacing:.04em}.job-card{padding:.7rem .85rem;border:1px solid #333;border-radius:8px;margin-bottom:.5rem;cursor:pointer;transition:all .15s}.job-card:hover{border-color:#555;background:#2a2a2a}.job-card.selected{border-color:#646cff;background:#646cff11}.job-title{font-weight:600;font-size:.95rem;margin-bottom:.3rem}.job-meta{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.job-sync{font-size:.75rem;color:#666;margin-top:.25rem}.badge{display:inline-block;padding:.1rem .45rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.badge.open{background:#1a3a1a;color:#6c6}.badge.archived{background:#3a2a1a;color:#c96}.badge.success{background:#1a3a1a;color:#6c6}.mono{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.8rem}.buggy-id{color:#f77;background:#3a1a1a;padding:.1rem .35rem;border-radius:3px}.fixed-id{color:#6c6;background:#1a3a1a;padding:.1rem .35rem;border-radius:3px}.form-section{margin-top:1rem;padding:.85rem;border:1px solid #333;border-radius:8px}.form-fields{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.form-fields label{font-size:.85rem;color:#aaa;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.btn{padding:.5rem 1rem;border-radius:6px;border:1px solid #444;background:#2a2a2a;color:#ccc;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s}.btn:hover:not(:disabled){border-color:#666;background:#353535}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.primary{background:#4040cc;border-color:#55f;color:#fff}.btn.primary:hover:not(:disabled){background:#4a4aee}.btn.success{background:#1a5a1a;border-color:#2a7a2a;color:#8f8}.btn.success:hover:not(:disabled){background:#226a22}.response-box{margin-top:1rem;padding:.75rem;border-radius:8px;border:1px solid #333}.response-box.error{border-color:#633;background:#1a0a0a}.response-box.success{border-color:#363;background:#0a1a0a}.response-box h4{margin:0 0 .4rem;font-size:.85rem;color:#888}.response-box pre{margin:0;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.8rem;white-space:pre-wrap;word-break:break-word}.log-console{margin-top:1rem;background:#111;border:1px solid #2a2a2a;border-radius:8px;padding:.75rem}.log-entries{max-height:300px;overflow-y:auto;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.78rem;line-height:1.6}.log-empty{color:#555;font-style:italic}.log-entry{padding:.15rem 0;border-bottom:1px solid #1a1a1a;display:flex;flex-wrap:wrap;gap:.4rem;align-items:baseline}.log-ts{color:#555}.log-level{font-weight:700;min-width:60px}.log-level.info{color:#68f}.log-level.warn{color:#fb3}.log-level.error{color:#f66}.log-level.success{color:#6c6}.log-msg{color:#ccc}.log-detail{width:100%;padding-left:1rem;color:#888;font-size:.75rem}.debug-actions{min-height:80px}.inspect-panel{margin-top:.5rem}.inspect-panel h4{margin:0 0 .5rem;font-size:.9rem}.payload-highlight{background:#1a1a2a;border:1px solid #333;border-radius:6px;padding:.6rem;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.8rem;white-space:pre-wrap;margin:0 0 .6rem}.mapping-table{width:100%;border-collapse:collapse;margin-bottom:.75rem;font-size:.85rem}.mapping-table td{padding:.4rem .6rem;border-bottom:1px solid #2a2a2a}.mapping-table td:first-child{color:#888;white-space:nowrap;width:40%}.hint{padding:.6rem .75rem;border-radius:6px;font-size:.82rem;line-height:1.5;margin:.5rem 0}.hint code{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.78rem;padding:.1rem .3rem;border-radius:3px;background:#ffffff14}.hint.warn{background:#2a2200;border-left:3px solid #fb3;color:#dda}.hint.info{background:#0a1a2a;border-left:3px solid #68f;color:#abd}.hint.success{background:#0a2a0a;border-left:3px solid #6c6;color:#adb}.resolution-panel{margin-top:.5rem}.resolution-panel h4{margin:0 0 .6rem;font-size:1rem}.lesson{padding:.65rem .8rem;border-radius:6px;background:#1a1a2a;border:1px solid #333;margin-bottom:.5rem;font-size:.85rem;line-height:1.55}.lesson code{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.8rem;padding:.1rem .3rem;border-radius:3px;background:#ffffff14}@media(max-width:800px){.panels{flex-direction:column}.step-bar{flex-wrap:wrap}}
