/* COASE frame; exported calculation engine and component styles are unchanged. */
:root {
  --bs-accent:#8a4b32; --bs-dot:#a45a40;
  --bh-radius:2px;
  --bh-font-sans:Arial,Helvetica,sans-serif; --bh-font-serif:Arial,Helvetica,sans-serif;
}
:root[data-theme="light"] {
  --bh-bg:#f7f8f6; --bh-panel:#ffffff; --bh-fg:#24343b; --bh-fg-muted:#52636b;
  --bh-line:#d9e0e1; --bh-border:#8b9da4; --bh-popover:#ffffff;
  --bh-popover-shadow:0 4px 16px rgba(25,45,52,.12);
  --bh-ok:#217353; --bh-bad:#b3352e; --bh-warn:#916500;
  --bh-c1:#9d6249; --bh-c2:#337a92; --bh-c3:#327c61; --bh-c4:#7b62a0;
  --bh-c5:#b55135; --bh-c6:#207c85; --bh-c7:#607e32; --bh-c8:#a84973;
  --bh-chart-muted:#73878f; --bh-chart-critical:#b3352e;
  --bh-chart-grid:#e2e7e8; --bh-chart-axis:#9babb1; --bh-chart-reference:#24343b;
  color-scheme:light;
}
:root[data-theme="dark"] {
  --bs-accent:#d6af9b; --bs-dot:#d58972;
  --bh-bg:#0b1418; --bh-panel:#132127; --bh-fg:#bfcbd0; --bh-fg-muted:#94a6af;
  --bh-line:#2a3a42; --bh-border:#40545e; --bh-popover:#182a32;
  --bh-c1:#d6af9b; --bh-c2:#79b6c8; --bh-c3:#74b89e; --bh-c4:#b6a2cf;
  --bh-c5:#d58972; --bh-c6:#73c5cb; --bh-c7:#b3c885; --bh-c8:#d39bab;
  --bh-chart-muted:#94a6af; --bh-chart-grid:#24363f; --bh-chart-axis:#40545e;
  --bh-chart-reference:#bfcbd0; --bh-radius:2px;
  --bh-font-sans:Arial,Helvetica,sans-serif; --bh-font-serif:Arial,Helvetica,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bh-bg);color:var(--bh-fg)}
a{color:var(--bs-accent);text-underline-offset:4px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--bs-accent);outline-offset:4px}
.bh-page,.bs-frame{max-width:1500px;margin:auto;padding:0 40px}
.bs-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:86px;border-bottom:1px solid var(--bh-line)}
.bs-brand{font-size:20px;letter-spacing:-1px;color:var(--bh-fg);text-decoration:none}
.bs-brand span{color:var(--bs-dot)}
.bs-links{display:flex;flex-wrap:wrap;gap:4px 22px;font-size:12px}
.bs-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;color:var(--bh-fg)}
.bs-links a:hover{text-decoration:underline}
.bs-intro{padding:26px 0 24px}
.bs-eyebrow{font:11px/1.5 Consolas,monospace;letter-spacing:1.4px;color:var(--bs-accent);margin:0}
.bs-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px 24px;margin-bottom:16px}
.bs-theme{display:flex;align-items:center;gap:0;font:12px/1.5 Arial,Helvetica,sans-serif}
.bs-theme span{color:var(--bh-fg-muted);margin-right:12px}
.bs-theme button{min-height:36px;padding:7px 14px;border:1px solid var(--bh-border);background:var(--bh-panel);color:var(--bh-fg);font:inherit;cursor:pointer}
.bs-theme button+button{border-left:0}
.bs-theme button[aria-pressed="true"]{color:var(--bh-bg);background:var(--bh-fg);border-color:var(--bh-fg)}
.bs-theme button:hover{box-shadow:inset 0 0 0 1px var(--bh-fg)}
.bs-intro p:last-child{max-width:78ch;font-size:14px;line-height:1.6;color:var(--bh-fg-muted);margin:0}
.bs-skip{position:absolute;left:20px;top:-100px;padding:12px;background:var(--bh-panel);z-index:60}
.bs-skip:focus{top:10px}
.bs-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;border-top:1px solid var(--bh-line);margin-top:28px;padding:22px 0;font-size:12px;color:var(--bh-fg-muted)}
.bh-title{letter-spacing:-1px}
@media(max-width:760px){
  .bh-page,.bs-frame{padding-left:18px;padding-right:18px}
  .bs-nav{align-items:flex-start;flex-direction:column;gap:4px;padding:18px 0 10px}
  .bs-links{gap:2px 16px}
  .bs-intro{padding:22px 0}
}
