:root{
  --bg:#f6f1e7;
  --bg-soft:#fbf8f2;
  --bg-accent:#efe3cf;
  --panel:#fffdf9;
  --panel-2:#fff9f0;
  --line:#dcccb7;
  --line-soft:#eadfd0;
  --shadow:0 12px 34px rgba(83,60,31,.08), 0 2px 8px rgba(83,60,31,.04);
  --text:#2d241c;
  --text-strong:#1f1812;
  --muted:#7a6755;
  --accent:#c88b2e;
  --accent-strong:#9f6a18;
  --good:#227a45;
  --good-bg:#edf8f1;
  --bad:#b64937;
  --bad-bg:#fff0ed;
  --neutral:#775a33;
  --neutral-bg:#fbf4e8;
  --benchmark:#3f8e8a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  min-height:100vh;
  background:
    radial-gradient(circle at 0% 0%, rgba(214,154,61,.12), transparent 28%),
    radial-gradient(circle at 100% 8%, rgba(203,125,72,.10), transparent 30%),
    linear-gradient(180deg, #fbf8f3 0%, #f6f1e7 42%, #f3ede2 100%);
}
.wrap{width:min(1560px,95%);margin:0 auto;padding:34px 0 60px}
.narrow{max-width:980px}
header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:26px}
h1{font-size:clamp(2.2rem,6vw,4rem);line-height:1;margin:4px 0 10px;letter-spacing:-.05em;color:var(--text-strong)}
h1 span{color:var(--accent-strong)}
h2{font-size:1.07rem;margin:0;color:var(--text-strong)}
p{color:var(--muted)}
.subtitle{margin:5px 0 0;font-size:.83rem;max-width:760px}
.eyebrow{color:var(--accent-strong);font-size:.74rem;font-weight:850;letter-spacing:.18em}
.header-status{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.grid{display:grid;gap:14px}
.cards{grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:14px}
.two{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}
.card,.panel{
  background:linear-gradient(180deg,var(--panel),var(--panel-2));
  border:1px solid var(--line);
  border-radius:18px;
  box-shadow:var(--shadow);
}
.card{padding:17px;position:relative;overflow:hidden;min-height:118px}
.card:before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--accent),rgba(200,139,46,.15))}
.card.positive:before{background:linear-gradient(90deg,var(--good),rgba(34,122,69,.12))}
.card.negative:before{background:linear-gradient(90deg,var(--bad),rgba(182,73,55,.12))}
.card label,.metrics-grid label{display:block;color:var(--muted);font-size:.76rem;margin-bottom:7px}
.card strong{display:block;font-size:1.35rem;letter-spacing:-.03em;color:var(--text-strong)}
.card .status-text{font-size:1rem;line-height:1.2}
.card small{display:block;color:var(--muted);margin-top:7px;font-size:.73rem}
.panel{padding:19px;margin-bottom:14px}
.panel-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.panel-title>span:not(.badge),.panel-title .legend{color:var(--muted);font-size:.8rem}
.badge{
  display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.66rem;font-weight:850;letter-spacing:.06em;
  border:1px solid currentColor;background:#fff;
}
.badge.good{color:var(--good);background:var(--good-bg)}
.badge.bad{color:var(--bad);background:var(--bad-bg)}
.badge.neutral{color:var(--neutral);background:var(--neutral-bg);border-color:#cfb58f}
dl{margin:0}
dl>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--line-soft)}
dl>div:last-child{border-bottom:0}
dt{color:var(--muted)}
dd{margin:0;font-weight:760;text-align:right;color:var(--text-strong)}
.metrics-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.metrics-grid>div{background:linear-gradient(180deg,#fffefb,#fff8ed);padding:14px;border:1px solid var(--line);border-radius:14px;box-shadow:0 4px 14px rgba(83,60,31,.04)}
.metrics-grid strong{font-size:.98rem;color:var(--text-strong)}
.criteria{display:grid;gap:9px}
.criterion{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line-soft)}
.criterion:last-child{border-bottom:0}
.criterion small{display:block;color:var(--muted);margin-top:3px}
.check{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:900;border:1px solid;flex:0 0 auto}
.check.pass{color:var(--good);background:var(--good-bg)}
.check.pending{color:var(--neutral);background:var(--neutral-bg);border-color:#d5b78a}
.chart-wrap{width:100%;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:linear-gradient(180deg,#fffefb,#fbf6ed)}
.chart{display:block;width:100%;height:auto;min-height:280px}
.grid-line{stroke:#e5d9c7;stroke-width:1}
.zero-grid-line{stroke:#d0b287;stroke-width:1.2}
.line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.line.strategy{stroke:var(--accent)}
.line.benchmark{stroke:var(--benchmark);stroke-width:2.4}
.axis-label{fill:var(--muted);font-size:12px}
.y-axis-label{paint-order:stroke fill;stroke:#fbf6ed;stroke-width:5px;stroke-linejoin:round}
.legend{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.legend-line{width:22px;height:3px;border-radius:3px;display:inline-block;margin-left:8px}
.legend-line.strategy{background:var(--accent)}
.legend-line.benchmark{background:var(--benchmark)}
.table-wrap{overflow-x:auto}
table{border-collapse:collapse;width:100%;min-width:920px;background:rgba(255,255,255,.18);border-radius:12px;overflow:hidden}
th,td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--line-soft);font-size:.81rem;white-space:nowrap}
th{color:var(--accent-strong);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;background:rgba(240,228,205,.42)}
tbody tr:nth-child(even){background:rgba(255,251,244,.55)}
tbody tr:hover{background:rgba(248,239,225,.75)}
.reason{white-space:normal;min-width:250px}
.empty{color:var(--muted);text-align:center;padding:24px}
.alert,.note{border-radius:12px;padding:13px 15px;margin-bottom:14px}
.alert.bad,.note.bad{background:var(--bad-bg);border:1px solid rgba(182,73,55,.28);color:#8d3426}
.note.neutral{background:var(--neutral-bg);border:1px solid rgba(207,181,143,.55);color:var(--muted);margin-top:14px;margin-bottom:0}
footer{text-align:center;color:var(--muted);font-size:.78rem;padding-top:16px}
@media(max-width:1380px){.cards{grid-template-columns:repeat(4,1fr)}.metrics-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:950px){.cards{grid-template-columns:repeat(2,1fr)}.two{grid-template-columns:1fr}.metrics-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.wrap{width:94%;padding-top:22px}header{display:block}.header-status{justify-content:flex-start;margin-top:16px}.panel-title{align-items:flex-start;flex-direction:column}.metrics-grid{grid-template-columns:repeat(2,1fr)}.chart{min-height:220px}}
@media(max-width:440px){.cards,.metrics-grid{grid-template-columns:1fr}dl>div{display:block}dd{text-align:left;margin-top:5px}}

/* Vending Trading Machine 8.0.0 */
.cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.line.matched{stroke:#718096;stroke-width:2.4}
.legend-line.matched{background:#718096}
@media(max-width:1380px){.cards{grid-template-columns:repeat(4,1fr)}}
@media(max-width:950px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:440px){.cards{grid-template-columns:1fr}}
