body[data-module="shakespeare-project"] .module-main {max-width:980px}
.project-code,.project-sample pre {white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;font-size:.93rem;background:#101e32;color:#f0f4ff;padding:1.2rem;border-radius:12px}
.project-sample {margin:1.5rem 0 2rem}
.project-flow {list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;padding:0;margin:1.5rem 0}
.project-flow li {border:1px solid #cdd8e6;border-top:4px solid #3156b8;border-radius:10px;padding:1rem;background:#f4f7fd;min-width:0}
.project-flow strong,.project-flow span {display:block}
.project-flow span {font-size:.9rem;line-height:1.5;margin-top:.65rem}
.training-flow {grid-template-columns:repeat(3,minmax(0,1fr))}
.project-details {border:1px solid #cdd8e6;border-radius:10px;padding:1rem 1.2rem;margin:1.25rem 0}
.project-details summary {cursor:pointer;font-weight:650;line-height:1.5}
.project-details[open] summary {margin-bottom:1rem}
.project-note {border-left:4px solid #3156b8;background:#eef3fe;padding:.3rem 1.2rem;margin:1.5rem 0}
.project-recorded {font-size:.87rem;color:#45536b;border-bottom:1px solid #d7e0eb;padding-bottom:1rem}
.project-controls {display:flex;flex-wrap:wrap;gap:1rem;margin:1.25rem 0}
.project-controls .control {flex:1;min-width:170px}
.project-controls label,.workbench>.control {display:grid;gap:.45rem;font-weight:600}
.project-controls select,.workbench>.control select {max-width:100%;min-height:44px;padding:.6rem;background:white;color:#14263b;border:1px solid #8e9db2;border-radius:6px;font:inherit}
.project-metrics {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}
.project-metrics>div {padding:1rem;background:#edf5f0;border-radius:10px}
.project-metrics span,.project-metrics strong {display:block}
.project-metrics strong {font-size:2rem;color:#216747;margin-top:.4rem}
.project-chart {margin:1.5rem 0}.project-chart svg {display:block;width:100%;height:auto}.project-chart text {fill:#344054;font:13px system-ui}.project-chart figcaption {font-size:.9rem;line-height:1.6}.chart-train {color:#3156b8}.chart-validation {color:#216747}
.dataset-split {display:grid;grid-template-columns:1fr 1fr;border-radius:9px;overflow:hidden;margin:1.25rem 0}
.dataset-split::before {content:"";grid-column:1/-1;height:16px;background:linear-gradient(to right,#3156b8 0 90%,#216747 90% 100%)}
.dataset-split>div {padding:1rem;background:#e9eefc;color:#233f85;font-weight:600}.dataset-split>div+div {background:#e4f0e8;color:#21593f;font-size:.85rem;text-align:right}
.table-wrap {overflow-x:auto;max-width:100%;margin:1.2rem 0}.table-wrap table {border-collapse:collapse;width:100%;font-size:.9rem}.table-wrap caption {text-align:left;font-weight:600;line-height:1.5;margin-bottom:.7rem}.table-wrap th,.table-wrap td {padding:.7rem;border-bottom:1px solid #d5dfeb;text-align:left}.table-wrap thead th {background:#f1f4f8;color:#14263b}
.project-attention {min-width:720px;table-layout:fixed}.project-attention th,.project-attention td {font-size:.72rem;text-align:center;padding:.6rem .2rem;border:2px solid white;overflow-wrap:anywhere}.project-attention th:first-child {width:90px}.project-attention td.project-masked {background:#edf0f4;color:#5b6779}
.project-attention-wrap:focus-visible,summary:focus-visible,select:focus-visible {outline:3px solid #3156b8;outline-offset:3px}
.project-download {border-top:1px solid #d5dfeb;padding-top:1.5rem;margin-top:2rem}.project-download p {font-size:.9rem}
@media(max-width:650px){.project-flow,.training-flow{grid-template-columns:1fr}.project-flow li{display:grid;grid-template-columns:1fr 2fr;gap:.8rem}.project-flow span{margin:0}.project-metrics{gap:.6rem}.project-metrics strong{font-size:1.7rem}.table-wrap th,.table-wrap td{padding:.6rem}.project-attention th,.project-attention td{padding:.6rem .2rem}}
