:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033;background:#f5f7fb}*{box-sizing:border-box}body{margin:0}.topbar{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:28px 36px;background:#101827;color:white}.topbar h1{margin:0 0 4px;font-size:28px}.topbar p{margin:0;color:#b7c1d6}.tenant-badge{padding:8px 12px;border:1px solid #334155;border-radius:999px;background:#182234;color:#dbeafe}.layout{max-width:1280px;margin:0 auto;padding:28px}.card{background:white;border:1px solid #e3e8f3;border-radius:18px;padding:24px;box-shadow:0 10px 28px rgba(16,24,39,.06);margin-bottom:24px}.hidden{display:none}.hint{color:#667085;margin-top:0}label{display:block;margin:12px 0 6px;font-weight:600}input,select{width:100%;padding:10px 12px;border:1px solid #cfd7e6;border-radius:10px;background:white}button{border:none;background:#1f5eff;color:white;padding:10px 14px;border-radius:10px;cursor:pointer;font-weight:700;margin-top:12px}button:hover{filter:brightness(.95)}button.danger{background:#c93535}.workspace-head,.section-head{display:flex;justify-content:space-between;gap:18px;align-items:start}.actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.grid{display:grid;gap:18px;margin:18px 0}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.form-grid.small{grid-template-columns:1fr auto;align-items:center}.metric{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:18px}.metric span{display:block;font-size:30px;font-weight:800}.metric small{color:#667085}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #e5e7eb;padding:10px;vertical-align:top}th{background:#f8fafc;font-size:13px;color:#475467}pre{background:#101827;color:#dbeafe;border-radius:14px;padding:14px;overflow:auto;min-height:56px}.graph-canvas{min-height:400px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden}.node{fill:white;stroke:#1f5eff;stroke-width:2}.edge{stroke:#64748b;stroke-width:1.5;marker-end:url(#arrow)}.node-label{font-size:11px;fill:#111827;font-weight:700;text-anchor:middle}.edge-label{font-size:10px;fill:#475467;text-anchor:middle}.badge{display:inline-block;border-radius:999px;padding:2px 8px;font-size:12px;background:#eef2ff;color:#3730a3}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}.tabs button{background:#334155}@media(max-width:860px){.grid.two,.grid.three,.form-grid{grid-template-columns:1fr}.workspace-head,.section-head{flex-direction:column}}
.callout { border-left: 5px solid #1f5eff; background: #eef4ff; padding: 14px 16px; border-radius: 12px; margin: 12px 0 18px; }
.panel { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 16px; padding: 16px; }
.panel h4 { margin-top: 0; }
.button-link { display: inline-block; background: #1f5eff; color: white; text-decoration: none; padding: 10px 14px; border-radius: 10px; font-weight: 700; margin-top: 12px; }
.button-link.disabled { pointer-events: none; opacity: 0.5; }
.exercise-list { display: grid; gap: 10px; max-height: 680px; overflow: auto; padding-right: 8px; }
.exercise-card { border: 1px solid #e2e8f0; background: #f8fafc; border-radius: 14px; padding: 12px; cursor: pointer; }
.exercise-card:hover { border-color: #1f5eff; background: #eef4ff; }
.exercise-card span { color: #667085; font-size: 13px; }
.exercise-detail { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 14px; padding: 16px; min-height: 220px; }
.exercise-detail h5 { margin: 14px 0 6px; }
.tabs { display: flex; gap: 8px; flex-wrap: wrap; margin: 20px 0; }
.tabs button { margin-top: 0; }
