:root {
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#202d28;
  background:#f6f8f6;
  font-size:14px;
  font-synthesis:none;
  --green:#285d47;
  --muted:#758078;
  --line:#e3e8e2;
  --red:#ae473d;
  --amber:#9b7627
}
* {
  box-sizing:border-box
}
body {
  margin:0
}
button,input,select,textarea {
  font:inherit
}
button,a,input,textarea,select {
  outline-offset:4px
}
button,a {
  -webkit-tap-highlight-color:transparent
}
button {
  cursor:pointer
}
a {
  color:var(--green);
  text-decoration:none
}
button:disabled {
  opacity:.5;
  cursor:wait
}
h1,h2,h3,p {
  margin:0
}
h1 {
  font-size:29px;
  letter-spacing:-1.1px;
  font-weight:600;
  line-height:1.3
}
h2 {
  font-size:16px;
  font-weight:600;
  letter-spacing:-.3px
}
h3 {
  font-size:14px;
  font-weight:600
}
p {
  line-height:1.6
}
.icon {
  width:18px;
  height:18px;
  flex:none;
  vertical-align:middle;
  stroke:currentColor;
  fill:none;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round
}
.layout {
  display:grid;
  grid-template-columns:226px minmax(0,1fr);
  min-height:100vh
}
.sidebar {
  background:#fff;
  border-right:1px solid var(--line);
  display:flex;
  flex-direction:column;
  position:fixed;
  width:226px;
  height:100vh;
  padding:30px 18px 18px;
  z-index:10
}
.brand {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:19px;
  font-weight:650;
  letter-spacing:-.7px;
  padding:0 9px;
  color:#23382c
}
.brand-mark {
  background:#2b5c46;
  color:#fff;
  display:grid;
  place-items:center;
  width:33px;
  height:35px;
  border-radius:10px 10px 13px 13px
}
.brand-mark .icon {
  width:21px;
  height:21px
}
.brand-sub {
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:1.8px;
  color:#819086;
  margin:12px 9px 34px
}
.workspace {
  border:1px solid var(--line);
  border-radius:8px;
  padding:12px 10px;
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:26px
}
.avatar {
  width:32px;
  height:32px;
  border-radius:8px;
  display:grid;
  place-items:center;
  background:#edf1e9;
  color:#557052;
  font-weight:600;
  font-size:12px;
  flex:none
}
.workspace strong {
  font-size:12px;
  font-weight:600
}
.small {
  font-size:11px;
  color:var(--muted);
  line-height:1.6
}
.nav-label {
  font-size:10px;
  color:#929a92;
  letter-spacing:1.25px;
  padding:0 12px;
  margin:10px 0
}
.nav {
  display:flex;
  flex-direction:column;
  gap:5px
}
.nav a {
  display:flex;
  align-items:center;
  gap:12px;
  padding:11px 13px;
  border-radius:7px;
  color:#6d786f;
  font-size:12px;
  font-weight:500
}
.nav a.active {
  background:#eaf1e8;
  color:#2d5b3d
}
.nav a:hover {
  background:#f2f5ef
}
.nav .count {
  margin-left:auto;
  font-size:10px;
  background:#dce8d8;
  color:#3c6238;
  border-radius:4px;
  padding:2px 6px
}
.sidebar-bottom {
  margin-top:auto
}
.trust-note {
  border:1px solid #e7ece4;
  border-radius:8px;
  background:#f8faf5;
  padding:14px;
  margin:30px 0 18px
}
.trust-note .icon {
  color:#6c805a;
  margin-bottom:8px
}
.trust-note p {
  font-size:11px;
  color:#7a8475;
  margin-top:5px
}
.user {
  border-top:1px solid var(--line);
  padding-top:17px;
  display:flex;
  align-items:center;
  gap:10px
}
.user button {
  margin-left:auto
}
.main {
  grid-column:2;
  min-width:0
}
.topbar {
  height:70px;
  border-bottom:1px solid var(--line);
  padding:0 37px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#fff;
  font-size:12px;
  color:#859086
}
.topbar .crumb {
  display:flex;
  gap:12px;
  align-items:center
}
.topbar .crumb strong {
  color:#435448;
  font-weight:500
}
.top-actions {
  display:flex;
  gap:17px;
  align-items:center
}
.pill {
  border:1px solid #e1e7dd;
  border-radius:20px;
  padding:5px 9px;
  font-size:10px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
  background:#fff
}
.dot {
  height:6px;
  width:6px;
  border-radius:50%;
  background:#729967
}
.content {
  max-width:1500px;
  margin:0 auto;
  padding:34px 37px 40px
}
.page-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-bottom:27px
}
.eyebrow {
  font-size:10px;
  letter-spacing:1.7px;
  color:#879176;
  font-weight:600;
  text-transform:uppercase;
  margin-bottom:9px
}
.subtitle {
  font-size:12px;
  color:#7c857c;
  margin-top:8px
}
.btn {
  border:1px solid #dce2d9;
  border-radius:6px;
  background:white;
  color:#435347;
  padding:9px 13px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-size:12px;
  font-weight:500;
  min-height:36px;
  white-space:nowrap
}
.btn:hover {
  background:#f1f5ee
}
.btn.primary {
  background:#2e5c44;
  border-color:#2e5c44;
  color:white
}
.btn.primary:hover {
  background:#244c37
}
.btn.danger {
  color:#a7443a
}
.btn.sm {
  padding:5px 9px;
  font-size:11px;
  min-height:29px
}
.icon-btn {
  border:0;
  background:transparent;
  color:#869082;
  padding:5px;
  display:inline-flex;
  align-items:center
}
.icon-btn:hover {
  color:#244c37;
  background:#f2f6ef;
  border-radius:5px
}
.actions {
  display:flex;
  align-items:center;
  gap:9px
}
.banner {
  background:#eff3e9;
  border:1px solid #dfe7d6;
  border-radius:7px;
  padding:12px 15px;
  display:flex;
  align-items:center;
  gap:11px;
  color:#69765a;
  font-size:11px;
  margin-bottom:23px;
  line-height:1.5
}
.banner .icon {
  color:#6d8256
}
.banner strong {
  color:#4e6444;
  font-weight:600
}
.banner .right {
  margin-left:auto;
  white-space:nowrap
}
.banner.warning {
  background:#faf3e5;
  border-color:#ebdfc7;
  color:#8a6d36
}
.metrics {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:15px;
  margin-bottom:22px
}
.metric {
  border:1px solid var(--line);
  background:white;
  border-radius:8px;
  padding:19px 19px 16px;
  min-width:0
}
.metric-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  color:#7a8479;
  font-size:11px
}
.metric-icon {
  display:grid;
  place-items:center;
  width:29px;
  height:29px;
  background:#f4f6f1;
  border-radius:7px;
  color:#809170
}
.metric-value {
  font-size:32px;
  letter-spacing:-1px;
  line-height:1.2;
  margin-top:11px;
  font-weight:550
}
.metric-value span {
  font-size:18px;
  color:#8a9586
}
.metric-foot {
  margin-top:8px;
  font-size:10px;
  color:#90988c
}
.metric-foot .good {
  color:#65805a
}
.metric-foot .bad {
  color:#b16a55
}
.grid-overview {
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(320px,1fr);
  gap:20px;
  margin-bottom:22px
}
.card {
  background:white;
  border:1px solid var(--line);
  border-radius:8px;
  min-width:0;
  overflow:hidden
}
.card-head {
  padding:20px 21px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px
}
.card-head p {
  font-size:11px;
  color:#93998d;
  margin-top:6px
}
.card-body {
  padding:0 21px 21px
}
.text-link {
  font-size:11px;
  color:#69815d;
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap
}
.outcome-layout {
  display:flex;
  gap:24px;
  align-items:center;
  min-height:171px;
  padding:3px 0
}
.donut-wrap {
  position:relative;
  width:165px;
  height:165px;
  flex:none
}
.donut {
  width:165px;
  height:165px;
  transform:rotate(-90deg)
}
.donut-base {
  fill:none;
  stroke:#eef1e9;
  stroke-width:14
}
.donut circle.segment {
  fill:none;
  stroke-width:14
}
.stroke-verified {
  stroke:#7a9864
}
.stroke-failed {
  stroke:#cb8a74
}
.stroke-unverifiable {
  stroke:#d6c698
}
.stroke-awaiting_evidence {
  stroke:#c8cfbf
}
.donut-label {
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center
}
.donut-label strong {
  font-size:29px;
  font-weight:550;
  letter-spacing:-1px
}
.donut-label small {
  font-size:10px;
  color:#8e9888;
  margin-top:5px
}
.legend {
  flex:1;
  display:flex;
  flex-direction:column;
  gap:15px
}
.legend-row {
  display:flex;
  align-items:center;
  gap:8px;
  font-size:11px
}
.legend-row strong {
  margin-left:auto;
  font-weight:550
}
.legend-row .percentage {
  color:#91998a;
  min-width:32px;
  text-align:right
}
.swatch {
  width:7px;
  height:7px;
  border-radius:2px;
  background:#7a9864
}
.swatch.failed {
  background:#cb8a74
}
.swatch.unverifiable {
  background:#d6c698
}
.swatch.awaiting_evidence {
  background:#c8cfbf
}
.card-note {
  font-size:10px;
  color:#8a9580;
  border-top:1px solid #edf0e8;
  padding-top:12px;
  line-height:1.6
}
.provider-row {
  display:flex;
  gap:10px;
  align-items:center;
  padding:10px 0 16px
}
.provider-logo {
  width:34px;
  height:34px;
  border:1px solid #e6ebe0;
  border-radius:7px;
  display:grid;
  place-items:center;
  color:#6f805d;
  background:#f8faf5;
  font-size:17px
}
.provider-row strong {
  font-size:12px
}
.provider-numbers {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  padding:7px 0 20px
}
.provider-numbers strong {
  font-size:22px;
  font-weight:500;
  display:block;
  margin-bottom:5px
}
.provider-numbers span {
  font-size:10px;
  color:#8d9684
}
.provider-numbers .failed strong {
  color:#b47a65
}
.provider-numbers .verified strong {
  color:#668354
}
.provider-numbers .unknown strong {
  color:#9d8c60
}
.table-wrap {
  overflow-x:auto
}
table {
  width:100%;
  border-collapse:collapse;
  font-size:11px;
  text-align:left
}
th {
  background:#f8faf6;
  color:#919987;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.5px;
  font-weight:500;
  padding:12px 20px;
  border-top:1px solid #edf0e8;
  border-bottom:1px solid #edf0e8;
  white-space:nowrap
}
td {
  padding:15px 20px;
  border-bottom:1px solid #edf0e8;
  vertical-align:middle
}
tr:last-child td {
  border-bottom:0
}
tbody tr[data-open] {
  cursor:pointer
}
tbody tr[data-open]:hover {
  background:#fafcf7
}
.person {
  display:flex;
  gap:10px;
  align-items:center
}
.person .avatar {
  background:#f1f3ed;
  color:#869377;
  width:30px;
  height:30px;
  font-size:10px
}
.person strong {
  display:block;
  font-size:11px;
  font-weight:550;
  margin-bottom:4px
}
.person small {
  font-size:10px;
  color:#98a08f
}
.badge {
  font-size:10px;
  padding:4px 7px;
  border-radius:4px;
  display:inline-flex;
  gap:5px;
  align-items:center;
  white-space:nowrap
}
.badge .icon {
  width:12px;
  height:12px
}
.badge.failed {
  background:#faede7;
  color:#af735f
}
.badge.verified {
  background:#edf4e7;
  color:#648257
}
.badge.unverifiable {
  background:#f7f2e5;
  color:#a28a52
}
.badge.awaiting_evidence {
  background:#f0f2eb;
  color:#899580
}
.badge.open {
  background:#eef2f8;
  color:#70859e
}
.badge.resolved {
  background:#edf4e7;
  color:#648257
}
.badge.dismissed {
  background:#f2f1ef;
  color:#95908a
}
.reason {
  color:#5b6a54;
  max-width:230px
}
.cell-muted {
  color:#87917f;
  font-size:10px
}
.table-footer {
  display:flex;
  justify-content:space-between;
  padding:13px 20px;
  border-top:1px solid #edf0e8;
  color:#98a08e;
  font-size:10px
}
.overview-bottom {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:15px;
  font-size:10px;
  color:#9aa28f;
  margin-top:22px
}
.filterbar {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding:17px 20px;
  border-top:1px solid var(--line)
}
input,select,textarea {
  border:1px solid #dfe5da;
  border-radius:5px;
  background:white;
  color:#45543e;
  padding:9px 11px;
  font-size:12px;
  max-width:100%
}
select {
  padding-right:25px
}
input[type=search] {
  min-width:200px;
  flex:1
}
.filters {
  display:flex;
  gap:10px
}
.empty {
  padding:48px 24px;
  text-align:center;
  color:#87937c;
  font-size:13px
}
.empty .icon {
  width:32px;
  height:32px;
  margin-bottom:12px
}
.empty p {
  margin:8px auto 16px;
  max-width:430px;
  font-size:12px
}
.detail-grid {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(310px,1fr);
  gap:21px
}
.stack {
  display:flex;
  flex-direction:column;
  gap:20px
}
.finding {
  padding:21px;
  border-top:1px solid #edf0e8
}
.finding:first-of-type {
  border-top:0
}
.finding-title {
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  margin-bottom:16px
}
.triplet {
  display:grid;
  grid-template-columns:100px 1fr;
  gap:8px 15px;
  font-size:11px;
  line-height:1.6
}
.triplet dt {
  color:#8b9680
}
.triplet dd {
  margin:0;
  color:#526148
}
.recommendation {
  background:#f6f8f1;
  border:1px solid #e8eddc;
  border-radius:5px;
  padding:11px 13px;
  margin-top:16px;
  font-size:11px;
  color:#7b8566;
  line-height:1.7
}
.evidence-links {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  margin-top:14px
}
.evidence-chip {
  border:1px solid #e3e8db;
  background:#fff;
  border-radius:4px;
  color:#768466;
  font-size:10px;
  padding:5px 8px
}
.diff-table {
  margin-top:15px
}
.diff-table th,.diff-table td {
  padding:10px 12px
}
.diff-expected {
  color:#638152
}
.diff-actual {
  color:#b47561
}
.conversation {
  max-height:440px;
  overflow:auto;
  padding:0 20px 20px
}
.utterance {
  padding:13px 0;
  border-bottom:1px solid #eef0e8
}
.utterance:last-child {
  border:0
}
.utterance.highlight {
  background:#f1f5e9;
  border-radius:6px;
  padding:13px 10px
}
.utterance-head {
  display:flex;
  justify-content:space-between;
  margin-bottom:7px;
  color:#a0a891;
  font-size:10px;
  text-transform:capitalize
}
.utterance-head strong {
  font-weight:500;
  color:#768666
}
.utterance p {
  font-size:12px;
  color:#596b4e;
  line-height:1.7
}
.time-btn {
  border:0;
  background:none;
  color:#8d9e7c;
  font-size:10px;
  padding:0
}
.audio-area {
  padding:0 20px 18px
}
.audio-area audio {
  width:100%;
  height:36px;
  margin-bottom:9px
}
.no-audio {
  font-size:11px;
  color:#919c84;
  padding:9px 0
}
.case-controls {
  padding:0 20px 20px
}
.case-controls label {
  display:block;
  margin:13px 0 6px;
  font-size:11px;
  color:#89987a
}
.case-controls textarea,.case-controls select {
  width:100%
}
.case-controls textarea {
  resize:vertical;
  min-height:75px
}
.case-controls .btn {
  margin-top:11px
}
.comment {
  font-size:11px;
  border-top:1px solid #edf0e8;
  padding:12px 0
}
.comment strong {
  font-size:10px;
  font-weight:550
}
.comment p {
  margin-top:5px;
  color:#7d8c6c;
  white-space:pre-wrap
}
.timeline {
  padding:0 21px 21px
}
.timeline-item {
  padding:11px 0 11px 16px;
  border-left:2px solid #dce5d1;
  font-size:11px
}
.timeline-item p {
  font-size:10px;
  color:#8e9b7d;
  margin-top:4px
}
.call-meta {
  display:flex;
  gap:14px;
  font-size:11px;
  color:#919b85;
  margin-top:8px
}
.back {
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#879773;
  font-size:11px;
  margin-bottom:19px
}
.upload-area {
  border:1px dashed #bfcdb1;
  background:#f9fbf5;
  border-radius:7px;
  text-align:center;
  padding:24px;
  margin:18px 0;
  color:#788c65
}
.upload-area p {
  font-size:11px;
  margin:9px 0 14px
}
.upload-area input {
  font-size:11px;
  max-width:100%
}
.import-summary {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px
}
.source-card {
  border:1px solid #e4e9db;
  border-radius:6px;
  padding:15px
}
.source-card h3 {
  margin-bottom:7px
}
.source-card p {
  font-size:11px;
  color:#8a967b
}
.source-card .btn {
  margin-top:12px
}
.form-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px
}
.field label {
  display:block;
  font-size:11px;
  color:#7d8b6d;
  margin-bottom:7px
}
.field input,.field select,.field textarea {
  width:100%
}
.field.full {
  grid-column:1/-1
}
.code {
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:11px;
  line-height:1.6;
  white-space:pre-wrap;
  word-break:break-word;
  background:#f7f9f3;
  color:#61734f;
  padding:15px;
  border-radius:6px;
  max-height:480px;
  overflow:auto
}
.code-editor {
  width:100%;
  min-height:340px;
  resize:vertical;
  font:11px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;
  color:#53674a
}
.checkbox {
  display:flex;
  gap:8px;
  align-items:center;
  font-size:11px;
  color:#7c8e66;
  margin:16px 0
}
.checkbox input {
  accent-color:#466840
}
.validation-error {
  font-size:12px;
  color:#a85546;
  background:#fcf0e9;
  border:1px solid #f0dcd2;
  padding:11px;
  border-radius:5px;
  margin:12px 0;
  white-space:pre-wrap
}
.inline-note {
  font-size:11px;
  line-height:1.7;
  color:#889577;
  margin:12px 0
}
.settings-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:21px
}
.history-row {
  padding:13px 0;
  border-bottom:1px solid #ecf0e3;
  font-size:11px
}
.history-row p {
  color:#91a17e;
  font-size:10px;
  margin-top:5px
}
dialog {
  border:1px solid #dce4d4;
  border-radius:12px;
  padding:0;
  width:min(760px,calc(100vw - 36px));
  max-height:90vh;
  color:#34462f;
  box-shadow:0 30px 100px #142b2030;
  background:#fff
}
dialog::backdrop {
  background:#20312755;
  backdrop-filter:blur(3px)
}
.modal-head {
  padding:21px 24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  border-bottom:1px solid var(--line)
}
.modal-body {
  padding:22px 24px
}
.modal-footer {
  padding:16px 24px;
  border-top:1px solid var(--line);
  display:flex;
  justify-content:flex-end;
  gap:10px;
  background:#fafcf6
}
#toast {
  position:fixed;
  right:26px;
  bottom:23px;
  max-width:440px;
  border-radius:8px;
  background:#294b37;
  color:white;
  padding:13px 18px;
  font-size:12px;
  box-shadow:0 4px 18px #12312420;
  z-index:100;
  display:none;
  line-height:1.6
}
#toast.visible {
  display:block
}
.login {
  min-height:100vh;
  display:grid;
  grid-template-columns:1fr 1fr
}
.login-story {
  background:#edf2e7;
  padding:12vh 10%;
  display:flex;
  flex-direction:column;
  justify-content:center
}
.login-story .brand {
  padding:0;
  margin-bottom:60px
}
.login-story h1 {
  font-size:47px;
  font-weight:500;
  line-height:1.13;
  letter-spacing:-2px;
  max-width:460px
}
.login-story>p {
  font-size:14px;
  color:#869277;
  max-width:390px;
  margin-top:24px;
  line-height:1.9
}
.login-proof {
  border-top:1px solid #d6e0cc;
  margin-top:50px;
  padding-top:25px;
  display:flex;
  gap:20px;
  font-size:11px;
  color:#7e906c
}
.login-form-wrap {
  display:grid;
  place-items:center;
  padding:40px;
  background:#fff
}
.login-form {
  width:100%;
  max-width:350px
}
.login-form h2 {
  font-size:24px;
  letter-spacing:-.7px
}
.login-form>p {
  margin:11px 0 28px;
  color:#8d9981;
  font-size:12px
}
.login-form .field {
  margin-top:18px
}
.login-form .btn {
  width:100%;
  margin-top:22px
}
.login-form .divider {
  text-align:center;
  color:#a4ad99;
  font-size:10px;
  margin:23px 0 0
}
.initial {
  display:grid;
  place-items:center;
  height:100vh;
  color:#6a805b
}
.muted {
  color:#929d85
}
.spacer {
  margin-top:20px
}
.hide {
  display:none!important
}
.nowrap {
  white-space:nowrap
}
.detail-intro {
  background:#eff4e7;
  border:1px solid #e2ead8;
  padding:13px 18px;
  font-size:11px;
  color:#7e906a;
  line-height:1.7;
  border-radius:7px;
  margin-bottom:21px
}
.metric-value.danger {
  color:#b57863
}
.privacy-foot {
  font-size:10px;
  color:#9ca88e;
  line-height:1.8;
  margin-top:20px
}
.mapping-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px
}
.mapping-grid label {
  font-size:11px;
  color:#829371;
  align-self:center
}
.mapping-grid select {
  min-width:0
}
.loading-line {
  font-size:12px;
  color:#889b76;
  padding:40px
}
.error-page {
  padding:50px
}
.error-page p {
  margin:15px 0
}
.field-error {
  font-size:11px;
  color:#b46c59
}
.schema-note {
  border-left:2px solid #b9cba7;
  padding-left:14px;
  margin-top:20px;
  font-size:11px;
  color:#899777;
  line-height:1.8
}
.stat-line {
  display:flex;
  justify-content:space-between;
  padding:12px 0;
  border-bottom:1px solid #edf1e6;
  font-size:11px;
  color:#879676
}
.stat-line strong {
  color:#536d43;
  font-weight:500
}
.check-row {
  display:flex;
  align-items:center;
  gap:8px
}
.reviewer-foot {
  font-size:10px;
  color:#96a286;
  margin-top:12px
}
tbody tr:focus {
  outline:2px solid #517846;
  outline-offset:-2px
}
.status-caption {
  font-size:10px;
  color:#a1aa97;
  margin:9px 0 0
}
.table-title {
  display:flex;
  gap:9px;
  align-items:center
}
.mini-count {
  border:1px solid #e1e7d8;
  padding:2px 6px;
  border-radius:4px;
  color:#8b9b78;
  font-size:10px
}
.key-number {
  font-size:27px;
  letter-spacing:-.8px;
  color:#3b5432;
  margin:10px 0
}
.report-band {
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:center;
  padding:20px
}
.report-band p {
  font-size:11px;
  color:#8e9e7d;
  margin-top:5px
}
.coverage-list {
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:8px
}
.coverage-label {
  font-size:9px;
  background:#f2f5ec;
  color:#859774;
  border-radius:4px;
  padding:3px 6px
}
.evidence-table td {
  font-size:11px
}
.truncate {
  max-width:260px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.review-toolbar {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:0 20px 18px;
  gap:8px
}
.text-button {
  border:0;
  background:none;
  color:#6d8758;
  padding:0;
  font-size:11px;
  text-align:left
}
.rule-confirm {
  margin-top:17px
}
.demo-tag {
  font-size:9px;
  letter-spacing:.6px;
  color:#9c8d69;
  background:#f5f0e4;
  border:1px solid #e9e0cc;
  border-radius:4px;
  padding:3px 6px;
  text-transform:uppercase
}
.busy {
  pointer-events:none;
  opacity:.65
}
@media(min-width:1500px) {
  .content {
    padding-top:42px
  }
  .grid-overview {
    grid-template-columns:1.35fr 1fr
  }
  .outcome-layout {
    justify-content:center;
    gap:45px
  }
  .legend {
    max-width:310px
  }
}
@media(max-width:1150px) {
  .layout {
    grid-template-columns:190px minmax(0,1fr)
  }
  .sidebar {
    width:190px;
    padding-left:12px;
    padding-right:12px
  }
  .brand {
    font-size:17px;
    gap:7px
  }
  .content {
    padding:28px 24px
  }
  .topbar {
    padding:0 24px
  }
  .grid-overview {
    grid-template-columns:1fr 1fr
  }
  .donut-wrap,.donut {
    width:130px;
    height:130px
  }
  .outcome-layout {
    gap:16px
  }
  .metrics {
    gap:10px
  }
  .metric {
    padding:15px
  }
  .detail-grid {
    grid-template-columns:minmax(0,1.15fr) minmax(290px,1fr)
  }
  th,td {
    padding:12px 13px
  }
  .settings-grid {
    grid-template-columns:1fr
  }
}
@media(max-width:900px) {
  .grid-overview,.detail-grid {
    grid-template-columns:1fr
  }
  .metrics {
    grid-template-columns:repeat(2,1fr)
  }
  .outcome-layout {
    justify-content:center
  }
  .legend {
    max-width:330px
  }
  .donut-wrap,.donut {
    width:165px;
    height:165px
  }
  .top-actions .pill {
    display:none
  }
  .page-head {
    align-items:flex-start
  }
  .page-head>.actions {
    flex-direction:column;
    align-items:stretch
  }
  .overview-bottom {
    align-items:flex-start;
    flex-direction:column
  }
  .login-story {
    padding:8vh 10%
  }
  .login-story h1 {
    font-size:36px
  }
}
@media(max-width:640px) {
  .layout {
    display:block
  }
  .sidebar {
    position:relative;
    width:100%;
    height:auto;
    padding:15px 18px;
    border-right:0;
    border-bottom:1px solid var(--line)
  }
  .brand-sub,.workspace,.nav-label,.sidebar-bottom {
    display:none
  }
  .nav {
    flex-direction:row;
    margin-top:16px;
    gap:4px;
    overflow-x:auto
  }
  .nav a {
    padding:8px 10px;
    font-size:11px;
    white-space:nowrap
  }
  .nav a .icon {
    width:15px
  }
  .nav .count {
    display:none
  }
  .topbar {
    height:48px;
    padding:0 18px
  }
  .topbar .top-actions {
    gap:8px
  }
  .content {
    padding:25px 17px
  }
  .page-head {
    gap:10px
  }
  h1 {
    font-size:25px
  }
  .page-head>.actions .btn {
    padding:7px 9px;
    font-size:10px
  }
  .metric-value {
    font-size:28px
  }
  .metric-top {
    font-size:10px
  }
  .metric-foot {
    font-size:9px
  }
  .banner {
    font-size:10px;
    align-items:flex-start
  }
  .banner .right {
    display:none
  }
  .card-head {
    padding:17px
  }
  .card-body {
    padding:0 17px 17px
  }
  .grid-overview {
    gap:15px
  }
  .filterbar {
    padding:14px;
    gap:8px
  }
  .filterbar input,.filterbar select {
    width:calc(50% - 5px);
    min-width:0;
    flex:auto
  }
  .login {
    display:block
  }
  .login-story {
    padding:30px 26px
  }
  .login-story .brand {
    margin-bottom:25px
  }
  .login-story h1 {
    font-size:34px
  }
  .login-story>p {
    font-size:12px;
    margin-top:17px
  }
  .login-proof {
    display:none
  }
  .login-form-wrap {
    padding:30px 26px
  }
  .form-grid,.import-summary {
    grid-template-columns:1fr
  }
  .field.full {
    grid-column:auto
  }
  .triplet {
    grid-template-columns:80px 1fr
  }
  .call-meta {
    flex-wrap:wrap;
    gap:8px
  }
  .report-band {
    flex-direction:column;
    align-items:flex-start
  }
  .modal-body {
    padding:18px
  }
  .modal-head {
    padding:18px
  }
  .overview-bottom {
    font-size:9px
  }
  .brand {
    font-size:19px
  }
}
