:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#0f172a;background-color:#f8fafc}*{box-sizing:border-box}body{margin:0}.app-shell{min-height:100vh}.top-bar{height:72px;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 2rem;border-bottom:1px solid #e2e8f0;background:#fff}.top-bar-leading{display:flex;align-items:center;gap:1.5rem;min-width:0;flex:1}.top-bar-nav{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}.top-bar-link{color:#334155;font-size:.95rem;font-weight:600;text-decoration:none;padding:.25rem 0;border-bottom:2px solid transparent}.top-bar-link:hover{color:#0f172a}.top-bar-link.active{color:#0f172a;border-bottom-color:#0f172a}.top-bar-logo{height:36px;object-fit:contain}.page-shell{max-width:1180px;margin:0 auto;padding:2rem}.page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.page-title{margin:0;font-size:1.65rem}.page-header-filters{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.25rem}.page-muted{color:#64748b}.page-error{color:#991b1b;font-weight:500}.filter-label{display:flex;align-items:center;gap:.5rem;font-size:.95rem;color:#334155}.filter-select{padding:.35rem .5rem;border-radius:.375rem;border:1px solid #cbd5e1;background:#fff;font-size:.95rem}.filter-datetime{padding:.35rem .5rem;border-radius:.375rem;border:1px solid #cbd5e1;background:#fff;font-size:.85rem}.text-input-filter-compact{min-width:0;width:11rem;max-width:100%}.table-wrap{overflow-x:auto;border:1px solid #e2e8f0;border-radius:.5rem;background:#fff}.model-invocations-table-wrap{max-height:28.35rem;overflow:auto}.model-invocations-table-wrap thead th{position:sticky;top:0;z-index:2;box-shadow:0 1px #e2e8f0}.data-table th.col-case-id,.data-table td.col-case-id{max-width:6.5rem;width:6.5rem;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:normal}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th,.data-table td{text-align:left;padding:.65rem .85rem;border-bottom:1px solid #e2e8f0;vertical-align:top}.data-table th{background:#f1f5f9;font-weight:600;color:#475569}.data-row-selected{background:#eef2ff}.data-row-focused{background:#dbeafe}.data-table tbody tr.invocation-row{cursor:pointer}.detail-pre-block{margin:0 0 1rem;padding:.75rem;max-height:240px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.82rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.375rem}.invocation-detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem;align-items:start;margin-top:.25rem}.invocation-detail-column{min-width:0;display:flex;flex-direction:column}.invocation-detail-column-title{margin-bottom:.5rem;font-size:.95rem;color:#334155}.invocation-detail-column .detail-pre-block{margin-bottom:0;flex:1 1 auto;min-height:12rem;max-height:min(52vh,480px)}.invocation-detail-column .prompt-message-stack{margin-bottom:0;flex:1 1 auto;min-height:12rem}.invocation-detail-column .prompt-message-body{max-height:min(48vh,440px)}@media(max-width:900px){.invocation-detail-columns{grid-template-columns:1fr}.invocation-detail-column .detail-pre-block,.invocation-detail-column .prompt-message-body{max-height:280px;min-height:unset}.invocation-detail-column .prompt-message-stack{min-height:unset}}.prompt-message-stack{display:flex;flex-direction:column;gap:.75rem;margin:0 0 1rem}.prompt-message-card{border:1px solid #e2e8f0;border-radius:.375rem;overflow:hidden;background:#fff}.prompt-message-role{padding:.35rem .75rem;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#475569;background:#f1f5f9;border-bottom:1px solid #e2e8f0}.prompt-message-body{margin:0;padding:.75rem;max-height:280px;overflow:auto;white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.82rem;line-height:1.45;color:#0f172a;background:#f8fafc}.cell-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.82rem;word-break:break-all}.cell-actions{display:flex;flex-wrap:wrap;gap:.5rem}.page-actions{margin-top:1rem;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.btn-primary,.btn-secondary,.btn-danger{border-radius:.375rem;padding:.45rem .85rem;font-size:.9rem;font-weight:600;cursor:pointer;border:1px solid transparent}.btn-primary{background:#0f172a;color:#fff;border-color:#0f172a}.btn-primary:hover{background:#1e293b}.btn-secondary{background:#fff;color:#0f172a;border-color:#cbd5e1}.btn-secondary:hover{background:#f8fafc}.btn-secondary:disabled{opacity:.55;cursor:not-allowed}.btn-danger{background:#fef2f2;color:#991b1b;border-color:#fecaca}.btn-danger:hover{background:#fee2e2}.card-section{margin-bottom:1.5rem;padding:1rem 1.25rem;border:1px solid #e2e8f0;border-radius:.5rem;background:#fff}.section-title{margin:0 0 .75rem;font-size:1.05rem}.inline-form{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.text-input{padding:.45rem .65rem;border:1px solid #cbd5e1;border-radius:.375rem;font-size:.95rem;min-width:200px}.text-input-table{min-width:140px;width:100%;max-width:280px}.auth-button{border:1px solid #0f172a;border-radius:999px;background:#0f172a;color:#fff;padding:.5rem 1.1rem;font-size:.95rem;font-weight:600;cursor:pointer}.auth-button:hover{background:#1e293b}.landing-main{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center;max-width:1180px;margin:0 auto;padding:4rem 2rem}.landing-copy{max-width:480px}.landing-kicker{margin:0 0 .75rem;color:#475569;letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;font-weight:700}.landing-title{margin:0;font-size:clamp(2rem,4vw,3rem);color:#0f172a}.landing-subtitle{margin-top:1rem;line-height:1.6;color:#334155;font-size:1.05rem}.landing-hero-wrap{display:flex;justify-content:flex-end}.landing-hero{width:min(100%,540px);border-radius:1rem;box-shadow:0 18px 44px #0f172a33}.callback-status{padding:3rem 2rem;text-align:center;font-size:1.05rem}.callback-error{color:#991b1b}@media(max-width:900px){.landing-main{grid-template-columns:1fr;padding-top:2rem}.landing-hero-wrap{justify-content:flex-start}}
