:root{color:#24231f;background:#f8f6f0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;background:linear-gradient(#e9e1d5 1px,transparent 1px),linear-gradient(90deg,#e9e1d5 1px,transparent 1px),#f8f6f0;background-size:28px 28px}button,a{font:inherit}a{color:#116466;text-decoration:none}a:hover{color:#0b4c4e}svg{width:18px;height:18px;flex:0 0 auto}.app-shell{display:grid;grid-template-columns:minmax(230px,260px) minmax(0,1fr) minmax(320px,390px);gap:24px;min-height:100vh;padding:20px}.phase-rail,.right-rail,.workspace{min-width:0}.phase-rail{position:sticky;top:20px;align-self:start;border:1px solid #d8d0c3;border-radius:8px;background:#fffdf8eb;padding:16px}.brand-lockup{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid #e2dbcf}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border:1px solid #bfd8d2;border-radius:8px;color:#116466;background:#eef8f5}.brand-lockup h2,.phase-header h1,.section-heading h2,.task-column h3,.task-card h4,.paper-card h3,.run-card h3{margin:0;letter-spacing:0}.brand-lockup h2{font-size:1.05rem}.eyebrow{margin:0 0 4px;color:#6f675c;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0}.phase-list{display:grid;gap:6px;margin-top:16px}.phase-nav{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center;width:100%;border:1px solid transparent;border-radius:8px;background:transparent;color:#2d2b27;cursor:pointer;padding:9px;text-align:left}.phase-nav:hover,.phase-nav.is-active{border-color:#bfd8d2;background:#f0f8f5}.phase-number{display:grid;height:32px;place-items:center;border-radius:7px;background:#ece6dc;color:#5d574f;font-size:.78rem;font-weight:800}.phase-current{background:#d9f0eb;color:#0d6263}.phase-complete{background:#dbe7f8;color:#29588a}.phase-nav strong,.phase-nav small{display:block}.phase-nav strong{overflow-wrap:anywhere;font-size:.86rem}.phase-nav small{margin-top:2px;color:#7d746a;font-size:.72rem}.workspace{display:grid;align-content:start;gap:18px}.phase-header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #d8d0c3;padding:10px 0 18px}.phase-header h1{max-width:980px;color:#191814;font-size:clamp(1.8rem,4vw,3.2rem);line-height:1.02}.goal{max-width:780px;margin:12px 0 0;color:#4d4942;font-size:1rem;line-height:1.55}.phase-badge{display:inline-flex;align-items:center;align-self:start;gap:8px;min-width:max-content;border:1px solid #cddbd7;border-radius:8px;background:#f4fbf9;color:#116466;padding:9px 11px;font-weight:700}.progress-band,.task-board,.rail-section{border:1px solid #d8d0c3;border-radius:8px;background:#fffdf8f0}.progress-band{display:grid;grid-template-columns:minmax(220px,1fr) minmax(320px,.8fr);gap:18px;padding:16px}.progress-copy p{max-width:760px;margin:0;color:#4d4942;line-height:1.58}.progress-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.metric-tile{min-height:78px;border:1px solid #ded8cd;border-radius:8px;padding:12px;background:#fbfaf6}.metric-tile strong,.metric-tile span{display:block}.metric-tile strong{font-size:1.35rem}.metric-tile span{margin-top:6px;color:#6f675c;font-size:.78rem}.tone-teal{border-color:#b9d8d1;background:#eef8f5}.tone-amber{border-color:#ead6a6;background:#fff7df}.tone-blue{border-color:#c5d7ee;background:#eff6ff}.timeline{display:grid;grid-column:1 / -1;grid-template-columns:repeat(auto-fit,minmax(38px,1fr));gap:6px}.timeline-step{height:8px;border-radius:999px;background:#dcd5ca}.timeline-step.is-done{background:#2f6f73}.timeline-step.is-active{background:#d59d29}.timeline-step.is-blocked{background:#a34b42}.task-board{padding:16px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.section-heading h2{font-size:1.15rem}.section-heading>span,.section-heading>svg{color:#6f675c;font-weight:700}.section-heading.compact{margin-bottom:12px}.task-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.task-column{min-width:0}.task-column h3{margin-bottom:8px;color:#6f675c;font-size:.8rem;text-transform:uppercase}.task-card{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;margin-bottom:8px;border:1px solid #ded8cd;border-radius:8px;background:#fbfaf6;padding:12px}.task-status{color:#8a8175}.task-card.is-active{border-color:#e5c47a;background:#fff8e7}.task-card.is-done{border-color:#b9d8d1;background:#f2faf7}.task-card h4{color:#24231f;font-size:.92rem}.task-card p,.paper-card p,.empty-results p,.study-block p{margin:7px 0 0;color:#5d574f;font-size:.88rem;line-height:1.48}.inline-links,.paper-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.inline-links a,.paper-actions a,.artifact-link{display:inline-flex;align-items:center;gap:5px;min-height:30px;border:1px solid #d8d0c3;border-radius:8px;background:#fff;padding:5px 8px;font-size:.78rem;font-weight:700}.inline-links svg,.paper-actions svg,.artifact-link svg{width:14px;height:14px}.right-rail{display:grid;align-content:start;gap:16px}.rail-section{padding:14px}.paper-list,.run-list{display:grid;gap:10px}.paper-card,.run-card{border:1px solid #ded8cd;border-radius:8px;background:#fbfaf6;padding:12px}.paper-meta{display:flex;justify-content:space-between;gap:10px;color:#7d746a;font-size:.72rem;font-weight:800;text-transform:uppercase}.paper-card h3,.run-card h3{margin-top:8px;font-size:.95rem;line-height:1.28}.authors{color:#7d746a}.synopsis-lede{color:#3d3932;font-weight:650}.study-notes{display:grid;gap:10px;margin-top:10px}.study-block{margin-top:10px;border-left:3px solid #b9d8d1;padding-left:10px}.study-block strong{color:#2f6f73;font-size:.78rem}.study-list{display:grid;gap:5px;margin:7px 0 0;padding-left:18px;color:#4d4942;font-size:.82rem;line-height:1.42}.results-section{background:#f7fbff}.empty-results{border:1px dashed #b8c9dd;border-radius:8px;background:#fff;padding:14px}.empty-results strong{color:#29588a}.run-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:8px;margin-top:10px}.run-metrics span{border:1px solid #d5e2f0;border-radius:8px;background:#fff;padding:8px;color:#64758b;font-size:.72rem}.run-metrics strong{display:block;color:#29588a;font-size:1rem}.artifact-link{margin-top:10px}.center-state{display:grid;min-height:100vh;place-content:center;justify-items:center;gap:10px;padding:24px;text-align:center}.center-state svg{width:34px;height:34px;color:#116466}.center-state h1{margin:0;font-size:1.4rem}.center-state p{margin:0;color:#5d574f}.document-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;padding:24px;background:#24231f6b}.document-shell{display:grid;grid-template-rows:auto minmax(0,1fr);width:min(980px,100%);max-height:calc(100vh - 48px);justify-self:center;border:1px solid #d8d0c3;border-radius:8px;background:#fffdf8;box-shadow:0 18px 50px #24231f38;overflow:hidden}.document-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid #e2dbcf;background:#fbfaf6;padding:16px 18px}.document-title{margin:0;font-size:1.1rem;font-weight:800;letter-spacing:0}.document-toolbar span{display:block;margin-top:5px;color:#746d63;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;overflow-wrap:anywhere}.document-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.document-actions a,.document-actions button{display:inline-flex;align-items:center;gap:6px;min-height:34px;border:1px solid #d8d0c3;border-radius:8px;background:#fff;color:#116466;cursor:pointer;padding:7px 10px;font-size:.82rem;font-weight:800}.document-actions button{width:34px;justify-content:center;padding:0}.document-error{border:1px solid #e3b5ae;border-radius:8px;background:#fff1ef;color:#7d2f28;padding:14px}.markdown-document{overflow:auto;padding:26px clamp(18px,4vw,48px) 44px;color:#2c2924;font-size:1rem;line-height:1.68}.markdown-document>*{max-width:780px}.markdown-document h1,.markdown-document h2,.markdown-document h3,.markdown-document h4{color:#191814;letter-spacing:0;line-height:1.18}.markdown-document h1{margin:0 0 18px;font-size:clamp(1.9rem,5vw,3rem)}.markdown-document h2{margin:32px 0 10px;padding-top:18px;border-top:1px solid #e2dbcf;font-size:1.45rem}.markdown-document h3{margin:24px 0 8px;font-size:1.13rem}.markdown-document p,.markdown-document ul,.markdown-document ol,.markdown-document blockquote,.markdown-document pre,.markdown-document table{margin:0 0 16px}.markdown-document ul,.markdown-document ol{padding-left:1.45rem}.markdown-document li+li{margin-top:5px}.markdown-document code{border:1px solid #e0d8ca;border-radius:5px;background:#f5efe5;padding:.1rem .28rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.markdown-document pre{max-width:100%;overflow-x:auto;border:1px solid #d8d0c3;border-radius:8px;background:#25231f;color:#f8f3e8;padding:14px}.markdown-document pre code{border:0;background:transparent;color:inherit;padding:0}.markdown-document blockquote{border-left:4px solid #b9d8d1;color:#4d4942;padding-left:14px}.markdown-document table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.markdown-document th,.markdown-document td{border:1px solid #ded8cd;padding:8px 10px;text-align:left;vertical-align:top}.markdown-document th{background:#f4efe6}@media(max-width:1180px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.right-rail{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.app-shell{grid-template-columns:1fr;gap:14px;padding:12px}.phase-rail{position:static}.phase-list{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.phase-header{display:grid}.phase-header h1{font-size:2rem}.progress-band,.task-columns,.right-rail,.progress-metrics{grid-template-columns:1fr}.document-overlay{padding:10px}.document-shell{max-height:calc(100vh - 20px)}.document-toolbar{display:grid}}@media(max-width:520px){.phase-list{grid-template-columns:1fr}.phase-nav{grid-template-columns:32px minmax(0,1fr)}.task-card{grid-template-columns:1fr}}
