:root{--deep-blue:#112639;--sage:#b4e1df;--ivory:#f7f5ef;--grey:#5f6b73;--white:#f6f8fc;--sage-dark:#8fc9c6;--deep-blue-light:#1a3a52;--border:rgba(17,38,57,0.12);--shadow:0 4px 24px rgba(17,38,57,0.08);--radius:12px;--radius-sm:8px}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100vh;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--ivory);color:var(--deep-blue);line-height:1.5}button{cursor:pointer}button,input,select,textarea{font-family:inherit}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{background:var(--deep-blue);color:var(--white);padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:3px solid var(--sage)}.app-header h1{margin:0;font-size:1.25rem;font-weight:600;letter-spacing:-.02em}.app-header .subtitle{margin:.15rem 0 0;font-size:.8rem;color:var(--sage);opacity:.9}.step-indicator{display:flex;gap:.5rem;align-items:center}.step-pill{padding:.35rem .85rem;border-radius:999px;font-size:.75rem;font-weight:500;background:rgba(180,225,223,.15);color:var(--sage);border:1px solid transparent;transition:all .2s}.step-pill.active{background:var(--sage);color:var(--deep-blue);border-color:var(--sage)}.step-pill.done{background:rgba(180,225,223,.3);color:var(--white)}.app-main{flex:1 1;padding:2rem;max-width:1400px;margin:0 auto;width:100%}.card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);padding:1.75rem}.card-title{margin:0 0 .35rem;font-size:1.5rem;font-weight:600;letter-spacing:-.02em}.card-subtitle{margin:0 0 1.5rem;color:var(--grey);font-size:.95rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1.25rem;gap:1.25rem}.form-field{display:flex;flex-direction:column;gap:.4rem}.form-field.full-width{grid-column:1/-1}.form-field label{font-size:.8rem;font-weight:600;color:var(--deep-blue);text-transform:uppercase;letter-spacing:.04em}.form-field input,.form-field textarea{padding:.65rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--ivory);color:var(--deep-blue);font-size:.95rem;transition:border-color .15s,box-shadow .15s}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:var(--sage-dark);box-shadow:0 0 0 3px rgba(180,225,223,.4)}.form-field textarea{min-height:80px;resize:vertical}.btn-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}.btn{padding:.65rem 1.25rem;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;border:none;transition:all .15s;display:inline-flex;align-items:center;gap:.4rem}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--deep-blue);color:var(--white)}.btn-primary:hover:not(:disabled){background:var(--deep-blue-light)}.btn-secondary{background:transparent;color:var(--deep-blue);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--ivory);border-color:var(--sage-dark)}.btn-sage{background:var(--sage);color:var(--deep-blue)}.btn-sage:hover:not(:disabled){background:var(--sage-dark)}.error-banner{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:.85rem 1rem;border-radius:var(--radius-sm);margin-bottom:1rem;font-size:.9rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.relay-layout{display:grid;grid-template-columns:260px 1fr;grid-gap:1.5rem;gap:1.5rem;align-items:start}.pipeline-sidebar{background:var(--deep-blue);color:var(--white);border-radius:var(--radius);padding:1.25rem;position:-webkit-sticky;position:sticky;top:1rem}.pipeline-sidebar h3{margin:0 0 1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--sage)}.pipeline-step{display:flex;align-items:flex-start;gap:.65rem;padding:.6rem 0;border-bottom:1px solid rgba(180,225,223,.15);font-size:.85rem}.pipeline-step:last-child{border-bottom:none}.pipeline-dot{width:10px;height:10px;border-radius:50%;margin-top:.35rem;flex-shrink:0;background:rgba(180,225,223,.3);border:2px solid var(--sage)}.pipeline-step.active .pipeline-dot{background:var(--sage);box-shadow:0 0 8px var(--sage)}.pipeline-step.done .pipeline-dot{background:var(--sage)}.pipeline-step-name{font-weight:500}.pipeline-step-status{font-size:.7rem;color:var(--sage);opacity:.8}.context-flow{background:linear-gradient(135deg,var(--ivory) 0,rgba(180,225,223,.2) 100%);border:1px dashed var(--sage-dark);border-radius:var(--radius-sm);padding:1rem 1.25rem;margin-bottom:1.25rem}.context-flow h4{margin:0 0 .5rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--grey)}.context-chips{display:flex;flex-wrap:wrap;gap:.4rem}.context-chip{background:var(--white);border:1px solid var(--border);padding:.25rem .6rem;border-radius:999px;font-size:.75rem;color:var(--deep-blue)}.context-chip.scenario{border-color:var(--sage-dark);background:rgba(180,225,223,.25)}.agent-header{margin-bottom:1.25rem}.agent-badge{display:inline-block;background:var(--sage);color:var(--deep-blue);padding:.25rem .65rem;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.agent-purpose{color:var(--grey);font-size:.95rem;margin:0}.section-block{margin-bottom:1.25rem}.section-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--grey);margin:0 0 .5rem}.input-preview{background:var(--ivory);font-size:.85rem;color:var(--grey);max-height:200px;overflow-y:auto}.input-preview,.output-box{border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem;white-space:pre-wrap}.output-box{background:var(--white);font-size:.9rem;min-height:120px}.output-box.empty{color:var(--grey);font-style:italic}.checklist,.flag-list{list-style:none;margin:0;padding:0}.flag-list li{background:#fff7ed;border-left:3px solid #f59e0b;padding:.5rem .75rem;margin-bottom:.4rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.85rem}.checklist li{display:flex;align-items:flex-start;gap:.5rem;padding:.4rem 0;font-size:.85rem;color:var(--deep-blue)}.checklist input[type=checkbox]{margin-top:.2rem;accent-color:var(--deep-blue)}.approved-textarea{width:100%;min-height:160px;padding:.85rem;border:2px solid var(--sage);border-radius:var(--radius-sm);background:var(--white);font-size:.9rem;resize:vertical;line-height:1.6}.approved-textarea:focus{outline:none;box-shadow:0 0 0 3px rgba(180,225,223,.5)}.handoff-note{background:rgba(17,38,57,.05);border-left:3px solid var(--deep-blue);padding:.75rem 1rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.85rem;color:var(--grey)}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid var(--white);border-radius:50%;animation:spin .7s linear infinite}.loading-spinner.dark{border-color:rgba(17,38,57,.2);border-top-color:var(--deep-blue)}@keyframes spin{to{transform:rotate(1turn)}}.package-grid{display:grid;grid-gap:1.25rem;gap:1.25rem}.package-section{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.package-section-header{background:var(--deep-blue);color:var(--white);padding:.85rem 1.25rem;display:flex;align-items:center;justify-content:space-between}.package-section-header h3{margin:0;font-size:1rem;font-weight:600}.package-section-body{padding:1.25rem;white-space:pre-wrap;font-size:.9rem;line-height:1.65}.guardrail-summary{background:#fff7ed;border:1px solid #fed7aa;border-radius:var(--radius-sm);padding:1rem;margin-top:1.5rem}.guardrail-summary h4{margin:0 0 .75rem;font-size:.85rem;color:#9a3412}.guardrail-summary ul{margin:0;padding-left:1.25rem;font-size:.85rem;color:#7c2d12}@media (max-width:900px){.form-grid,.relay-layout{grid-template-columns:1fr}.pipeline-sidebar{position:static}.app-header{flex-direction:column;align-items:flex-start}.app-main{padding:1rem}}