:root { --bs-primary: #165dcc; --bs-primary-rgb: 22,93,204; --bs-body-color: #20334f; --bs-body-bg: #f4f7fc; --bs-border-color: #e2e9f3; }
html, body { font-family: 'Segoe UI', system-ui, sans-serif; font-size: 14px; background: var(--bs-body-bg); color: var(--bs-body-color); }
.btn-primary { --bs-btn-bg: #165dcc; --bs-btn-border-color: #165dcc; --bs-btn-hover-bg: #104ba8; --bs-btn-hover-border-color: #104ba8; }
.btn-outline-primary { --bs-btn-color: #165dcc; --bs-btn-border-color: #bfd3f3; --bs-btn-hover-bg: #165dcc; --bs-btn-hover-border-color: #165dcc; }
.btn { font-weight: 600; border-radius: .5rem; }.btn-sm { min-height: 33px; }
.workbench-header { min-height: 86px; }.brand-mark { width: 44px; height: 44px; } h1 { font-size: 1.25rem; font-weight: 700; letter-spacing: -.03em; } h2 { font-size: .95rem; font-weight: 650; margin: 0; }
.workbench { display: grid; grid-template-columns: 250px minmax(0,1fr); min-height: calc(100vh - 86px); }.case-sidebar { padding: 1.5rem 1.1rem; }.sidebar-title,.eyebrow { font-size: .68rem; letter-spacing: .12em; font-weight: 700; }.sidebar-footer { border-top: 1px solid var(--bs-border-color); margin-top: 2rem !important; }
.case-button { border: 1px solid transparent !important; padding: .8rem; overflow-wrap: anywhere; font-size: .85rem; }.case-button.active { background: #eef5ff; color: #165dcc; border-color: #c5dafa !important; box-shadow: inset 3px 0 #165dcc; }.case-date { color: #7486a0; font-size: .7rem; }.empty-library { background: #f8faff; font-size: .85rem; }
.workspace { min-width: 0; padding: 1.5rem 1.75rem; }.workspace-title { font-size: 1.6rem; letter-spacing: -.035em; }.method-tabs { gap: .2rem; }.method-tabs .nav-link { font-weight: 600; font-size: .8rem; color: #60738e; padding: .6rem .8rem; border-radius: .45rem; }.method-tabs .nav-link.active { background: #165dcc; color: white; box-shadow: 0 2px 5px #165dcc20; }.method-tabs .nav-link:hover:not(.active) { background: #eef5ff; color: #165dcc; }
.card { border-color: var(--bs-border-color); border-radius: .8rem; overflow: hidden; }.card-header { border-bottom-color: #eaf0f7; }.step-number { display: grid; place-items: center; height: 34px; width: 34px; font-weight: 700; font-size: .8rem; flex-shrink: 0; }.panel-body { max-height: 43vh; overflow: auto; padding: 1.25rem; }.input-panel .panel-body { min-height: 29vh; }.results-panel .panel-body { min-height: 28vh; }.form-label { width: 100%; margin-bottom: .35rem; font-size: .76rem; font-weight: 600; color: #526683; }.form-control,.form-select { border-color: #dce5f1; border-radius: .45rem; min-height: 33px; }.form-control:focus,.form-select:focus { border-color: #7ca7ea; box-shadow: 0 0 0 .2rem #165dcc12; }.form-check-input { min-height: 0; }
details { border: 1px solid #e5edf7; border-radius: .5rem; background: #fbfdff; padding: .65rem .8rem; margin-top: .3rem; } details[open] > summary { margin-bottom: .7rem; } summary { cursor: pointer; font-weight: 600; color: #526b8f; font-size: .8rem; }.collection-row { border: 1px solid #e2e9f3; background: white; padding: .75rem; border-radius: .5rem; margin-bottom: .6rem; }.collection-row > button { margin-bottom: .5rem; }
.result-metrics { display: grid; grid-template-columns: repeat(auto-fit,minmax(155px,1fr)); gap: .75rem; margin-bottom: 1rem; }.metric { overflow-wrap: anywhere; min-width: 0; background: white; border: 1px solid #dce8f9; border-top: 3px solid #165dcc; border-radius: .6rem; padding: .85rem 1rem; }.metric span { display: block; font-size: .72rem; color: #687e9a; margin-bottom: .4rem; }.metric strong { color: #165dcc; font-size: 1.25rem; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }.empty-result-symbol { display: grid; place-items: center; width: 48px; height: 48px; font-size: 1.6rem; }.empty-results { min-height: 23vh; }
.table { --bs-table-striped-bg: #f4f8ff; --bs-table-hover-bg: #eaf2ff; --bs-table-color: #344964; margin: 0; } th { white-space: nowrap; font-size: .7rem; background: #edf4ff !important; color: #45658f !important; padding: .65rem .6rem !important; } td { white-space: nowrap; font-size: .8rem; padding: .5rem .6rem !important; font-variant-numeric: tabular-nums; }.table-responsive { border: 1px solid #e2e9f3; border-radius: .5rem; } pre { font-size: .75rem; } #blazor-error-ui { display: none; } button:focus-visible,summary:focus-visible { outline: 3px solid #7ca7ea; outline-offset: 2px; }
@media(min-width:1600px) { .workspace { padding-left: 2.25rem; padding-right: 2.25rem; } }
@media(max-width:991px) { .workbench { grid-template-columns: 210px minmax(0,1fr); }.workspace { padding: 1rem; }.case-sidebar { padding: 1rem; }.panel-body { max-height: 50vh; } }
@media(max-width:767px) { .workbench { grid-template-columns: 1fr; }.case-sidebar { max-height: 250px; overflow: auto; }.sidebar-footer { display: none; }.case-sidebar > button { margin-bottom: .75rem !important; }.panel-body { max-height: none; }.workspace-title { font-size: 1.3rem; }.result-metrics { grid-template-columns: repeat(auto-fit,minmax(135px,1fr)); } }
.calling-code { max-height: 360px; overflow: auto; font-size: .8rem; line-height: 1.7; color: #264976; }
