/* MODEL: project source and recorded training telemetry. */
#cellblock.cc .model-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(380px,1fr);gap:12px;align-items:stretch}
#cellblock.cc .model-source,#cellblock.cc .model-spec{display:flex;flex-direction:column;min-width:0}
#cellblock.cc .model-tabs{display:flex;border-bottom:1px solid var(--line-2);overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}
#cellblock.cc .model-tabs button{all:unset;cursor:pointer;padding:10px 12px;font-size:11.5px;color:#8d857e;border-right:1px solid var(--line-2);white-space:nowrap}
#cellblock.cc .model-tabs button[aria-selected=true]{color:#f1ebe3;background:#1c1817;box-shadow:inset 0 -2px #e5484d}
#cellblock.cc .model-tabs button:focus-visible{outline:1px solid #e5484d;outline-offset:-1px}
#cellblock.cc .model-source-location{display:flex;justify-content:space-between;gap:12px;padding:9px 16px 3px;font-size:11px;color:#c3b8ab;background:#100d0d}
#cellblock.cc #model-source-range{white-space:nowrap;color:var(--dim);font-size:10px}
#cellblock.cc .model-source-description{padding:0 16px 9px;color:var(--dim);font-size:10.5px;line-height:1.6;background:#100d0d;border-bottom:1px solid #241e1d}
#cellblock.cc .model-code{flex:1 1 560px;height:560px;min-height:440px;max-height:640px;margin:0;padding:14px 0;overflow:auto;background:#0b0909;color:#d7d0c6;font-size:12px;line-height:1.75;tab-size:4;scrollbar-width:thin;scrollbar-color:#43322e #0b0909}
#cellblock.cc .model-code[hidden]{display:none}
#cellblock.cc .model-code code{font:inherit;white-space:pre;display:block;min-width:max-content}
#cellblock.cc .model-code-line{display:block;padding-right:22px;min-height:1.75em}
#cellblock.cc .model-code-line::before{content:attr(data-line);display:inline-block;position:sticky;left:0;width:6ch;margin-right:20px;padding-right:10px;color:#59514b;background:#0b0909;text-align:right;border-right:1px solid #211b19;font-size:10.5px;user-select:none}
#cellblock.cc .model-code-line:hover{background:#ffffff04}
#cellblock.cc .tk-k{color:#d96a66}
#cellblock.cc .tk-s{color:#c9b779}
#cellblock.cc .tk-n{color:#8fc7a2}
#cellblock.cc .tk-c{color:#85776b;font-style:italic}
#cellblock.cc .model-source-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;border-top:1px solid var(--line-2);font-size:10px;color:var(--dim)}
#cellblock.cc #model-copy-source{color:var(--ink);font-size:11px;padding:2px 4px}
#cellblock.cc #model-copy-source:hover{color:var(--red-ink)}
#cellblock.cc .model-formula{display:flex;gap:12px 24px;align-items:center;flex-wrap:wrap;padding:14px 16px;border-top:1px solid var(--line-2);background:#141110}
#cellblock.cc .model-formula>span{color:var(--dim);font-size:10px;text-transform:uppercase;letter-spacing:.06em}
#cellblock.cc .model-formula code{color:#e2d9cc;font-size:12px;line-height:1.9;overflow-wrap:anywhere}
#cellblock.cc .model-formula sub{font-size:.7em;color:#b9b0a6}
#cellblock.cc .model-facts{margin:0;padding:6px 14px 10px}
#cellblock.cc .model-facts div{display:grid;grid-template-columns:122px minmax(0,1fr);gap:10px;padding:4px 0;border-bottom:1px dashed #241f1e;font-size:11px}
#cellblock.cc .model-facts dt{color:#8d857e}
#cellblock.cc .model-facts dd{margin:0;color:#e7e0d7;overflow-wrap:anywhere}
#cellblock.cc .training-observatory{border-block:1px solid var(--line-2);background:#0c0b0a}
#cellblock.cc .training-observatory .training-complete{font-size:10px;color:#99b78b}
#cellblock.cc .training-run-header{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;color:#b3ab9e;font-size:11px}
#cellblock.cc .training-separator{color:var(--faint);margin:0 6px}
#cellblock.cc .training-run-header>span:last-child{color:var(--dim)}
#cellblock.cc .training-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 14px}
#cellblock.cc .training-metrics>div{border-right:1px solid var(--line);padding:1px 8px 5px 12px}
#cellblock.cc .training-metrics>div:first-child{padding-left:0}
#cellblock.cc .training-metrics>div:last-child{border:0;padding-right:0}
#cellblock.cc .training-metrics>div>span{display:block;color:var(--dim);font-size:9px;white-space:nowrap}
#cellblock.cc .training-metrics strong{display:block;margin-top:3px;font-size:20px;font-weight:400;line-height:1.4;color:#e8e1d5;font-variant-numeric:tabular-nums}
#cellblock.cc .training-metrics small{font-size:11px;color:var(--dim)}
#cellblock.cc .training-progress{display:flex;align-items:center;gap:12px;margin:8px 14px 10px}
#cellblock.cc .training-progress>span{flex:1;height:4px;opacity:.75;background:repeating-linear-gradient(90deg,#90a982 0 4px,transparent 4px 6px)}
#cellblock.cc .training-progress>code{font-size:10px;color:#99b78b}
#cellblock.cc .training-views{display:flex;align-items:center;border-block:1px solid var(--line);background:#110e0d}
#cellblock.cc .training-views button{padding:6px 14px;border-right:1px solid var(--line);font-size:11px;color:var(--dim)}
#cellblock.cc .training-views button[aria-selected=true]{color:var(--ink);background:#1c1714}
#cellblock.cc .training-views button span{margin-left:8px;color:var(--faint);font-size:9px}
#cellblock.cc .training-views>a{margin-left:auto;padding:6px 12px;font-size:10px;color:var(--dim);text-decoration:none}
#cellblock.cc .training-views>a:hover{color:var(--ink-hi)}
#cellblock.cc .training-view{height:222px;padding:10px 14px 7px;overflow:auto}
#cellblock.cc .training-view[hidden]{display:none}
#cellblock.cc .training-legend{display:flex;gap:16px;font-size:9px;color:var(--dim)}
#cellblock.cc .training-legend>span:last-child{margin-left:auto}
#cellblock.cc .loss-train-key::before,#cellblock.cc .loss-validation-key::before{content:'';display:inline-block;vertical-align:middle;width:12px;height:2px;margin-right:6px;background:#c88967}
#cellblock.cc .loss-validation-key::before{background:#99b78b}
#cellblock.cc .training-loss-plot{display:block;width:100%;height:166px;overflow:visible}
#cellblock.cc .loss-grid{stroke:#2b2420;stroke-width:1;stroke-dasharray:3 4}
#cellblock.cc .loss-axis{font:10px var(--mono);fill:#84776a}
#cellblock.cc .loss-curve{fill:none;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
#cellblock.cc .loss-train{stroke:#c88967}
#cellblock.cc .loss-validation{stroke:#99b78b}
#cellblock.cc .loss-point{fill:#0c0b0a;stroke-width:1.3;cursor:crosshair;outline:none}
#cellblock.cc .loss-point:is(:hover,:focus,.is-selected){fill:#e5d5bd;stroke:#e5d5bd;stroke-width:2.5}
#cellblock.cc .training-point-detail{min-height:16px;font-size:10px;color:#b4a694}
#cellblock.cc .training-log{list-style:none;font-size:11px;font-variant-numeric:tabular-nums}
#cellblock.cc .training-log li{display:grid;grid-template-columns:70px 68px minmax(65px,1fr) 65px;gap:6px;padding:4px 0;border-bottom:1px dashed #231d1a}
#cellblock.cc .training-log time{color:#807365}
#cellblock.cc .training-log span{color:#bcaf9f}
#cellblock.cc .training-log b{font-weight:400;color:#a4b496}
#cellblock.cc .training-log code{text-align:right;font:inherit;color:#dfd5c6}
#cellblock.cc .training-checkpoint{display:flex;justify-content:space-between;gap:12px;margin:0 14px;padding:7px 0;border-block:1px dashed var(--line-2);font-size:10px;color:var(--dim)}
#cellblock.cc .training-checkpoint code{font:inherit;color:#cabeaa}
#cellblock.cc .training-checkpoint a{color:#b4c6a7;text-underline-offset:3px}
#cellblock.cc .training-record-note a{color:#b4a694;text-underline-offset:3px}
#cellblock.cc .training-record-note{padding:6px 14px 9px;font-size:9.5px;line-height:1.65;color:#8d8071}
#cellblock.cc .model-findings{margin:0;padding:8px 14px 4px 30px;color:#cbbfae;font-size:10.5px;line-height:1.7}
#cellblock.cc .model-findings li{margin-bottom:5px}
#cellblock.cc .model-findings li::marker{color:#e5484d;content:'> '}
#cellblock.cc .model-link{margin:8px 14px 14px;align-self:flex-start;text-decoration:none}
@media(max-width:1100px){
  #cellblock.cc .model-layout{grid-template-columns:minmax(0,1fr)}
  #cellblock.cc .model-code{flex:auto;height:440px;min-height:0}
  #cellblock.cc .training-metrics strong{font-size:22px}
}
@media(max-width:640px){
  #cellblock.cc .model-source>.instrument-bar>span{display:none}
  #cellblock.cc .model-source-location{flex-wrap:wrap;font-size:10px;gap:2px}
  #cellblock.cc .model-code{font-size:10.5px;height:400px}
  #cellblock.cc .model-code-line::before{width:4ch;margin-right:10px;font-size:9px}
  #cellblock.cc .model-facts div{grid-template-columns:100px minmax(0,1fr);font-size:10px}
  #cellblock.cc .training-metrics{grid-template-columns:1fr 1fr;gap:10px 0}
  #cellblock.cc .training-metrics>div:nth-child(odd){padding-left:0}
  #cellblock.cc .training-metrics>div:nth-child(even){border-right:0}
  #cellblock.cc .training-views button{padding-inline:10px}
  #cellblock.cc .training-view{height:214px}
  #cellblock.cc .training-loss-plot{height:156px}
  #cellblock.cc .training-legend{gap:10px;font-size:8px}
  #cellblock.cc .training-log{font-size:10px}
  #cellblock.cc .training-log li{grid-template-columns:60px 58px minmax(50px,1fr) 54px}
}
