/* Chronicle (project report) pages. Builds on subpage.css */
.ch-back{display:inline-flex;align-items:center;gap:8px;color:#cdbfca;font:500 13px Inter,system-ui,sans-serif;letter-spacing:.04em;margin-bottom:26px;transition:color .2s}.ch-back:hover{color:#fff}
.ch-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center;padding:140px 0 60px}
.ch-hero h1{font:400 clamp(46px,6.6vw,92px)/.95 Georgia,'Times New Roman',serif;letter-spacing:-.035em;margin:16px 0 22px}
.ch-hero .lede{max-width:600px;color:#cfc1cb;font-size:19px;line-height:1.7;margin:0 0 30px}
.ch-badges{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}.ch-badge{padding:8px 14px;border-radius:999px;border:1px solid #ffffff26;background:#ffffff0a;font:500 12px/1 Inter,system-ui,sans-serif;color:#e6d8df;letter-spacing:.04em}
.ch-badge.ok{border-color:#ffb58a66;color:#ffcfae}
.ch-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#ffffff1a;border:1px solid #ffffff1a;border-radius:18px;overflow:hidden;max-width:560px}
.ch-facts div{background:#0f0a15;padding:16px 18px}.ch-facts dt{font:500 10.5px/1 ui-monospace,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase;color:#a8909e;margin:0 0 8px}.ch-facts dd{margin:0;font:500 15px/1.35 Inter,system-ui,sans-serif;color:#f2e8dc}
.ch-hero figure{margin:0;position:relative}.ch-hero figure:before{content:"";position:absolute;inset:-8% -4%;background:radial-gradient(closest-side,#3a7bd566,#7a3bd533 55%,transparent);filter:blur(30px);z-index:-1}
.ch-hero img{width:100%;height:auto;display:block;border-radius:22px;border:1px solid #ffffff26;box-shadow:0 30px 80px #000a;cursor:zoom-in}
.ch-hero figcaption,.ch-fig figcaption{font:400 13px/1.5 Inter,system-ui,sans-serif;color:#a8909e;margin-top:10px}
.ch-body{display:grid;grid-template-columns:220px minmax(0,1fr);gap:70px;align-items:start;padding-bottom:20px}
.ch-toc{position:sticky;top:96px;font:500 13px Inter,system-ui,sans-serif}.ch-toc h2{font:500 11px/1 ui-monospace,Menlo,monospace;letter-spacing:.18em;text-transform:uppercase;color:#a8909e;margin:0 0 16px}
.ch-toc ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--line)}.ch-toc a{display:flex;gap:10px;padding:8px 0 8px 14px;margin-left:-1px;border-left:2px solid transparent;color:#bfb0ba;transition:color .2s,border-color .2s}.ch-toc a b{font:500 10.5px ui-monospace,Menlo,monospace;color:#7d6a80;padding-top:2px}.ch-toc a:hover{color:#fff}.ch-toc a.on{color:#fff;border-left-color:var(--orange)}.ch-toc a.on b{color:var(--orange)}
.ch-sec{padding:54px 0 10px;border-top:1px solid var(--line);scroll-margin-top:90px}.ch-sec:first-child{border-top:0;padding-top:10px}
.ch-sec>.no{font:500 12px ui-monospace,Menlo,monospace;letter-spacing:.2em;color:var(--ember)}
.ch-sec h2{font:400 clamp(32px,4vw,50px)/1.05 Georgia,'Times New Roman',serif;letter-spacing:-.02em;margin:12px 0 22px}
.ch-sec h3{font:400 26px/1.2 Georgia,'Times New Roman',serif;margin:40px 0 12px;display:flex;gap:14px;align-items:baseline}.ch-sec h3 span{font:500 12px ui-monospace,Menlo,monospace;letter-spacing:.16em;color:var(--orange)}
.ch-sec p{color:#d6c8d0;font-size:17.5px;line-height:1.8;margin:0 0 18px;max-width:700px}.ch-sec p strong{color:#fff3e6}
.ch-sec .mat{max-width:700px;color:#d6c8d0;line-height:1.8;font-size:17px;margin:0 0 18px}.mat b{color:#ffcfae;font-weight:600}
.ch-list{margin:0 0 20px;padding:0;list-style:none;max-width:700px}.ch-list li{padding:16px 0;border-bottom:1px solid var(--line);color:#d6c8d0;line-height:1.7;font-size:17px}.ch-list li:first-child{border-top:1px solid var(--line)}.ch-list b{display:block;font:400 21px/1.3 Georgia,'Times New Roman',serif;color:#fff3e6;margin-bottom:4px}
.ch-fig{margin:28px 0 30px}.ch-fig img{width:100%;height:auto;display:block;border-radius:16px;border:1px solid #ffffff22;cursor:zoom-in;background:#120d18}
.ch-grid{display:grid;gap:14px;margin:28px 0 30px}.ch-grid.c2{grid-template-columns:repeat(2,minmax(0,1fr))}.ch-grid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.ch-grid figure{margin:0}.ch-grid img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;border-radius:14px;border:1px solid #ffffff22;cursor:zoom-in;background:#120d18}.ch-grid img.wide{aspect-ratio:4/3}
.ch-grid figcaption{font:400 12.5px/1.45 Inter,system-ui,sans-serif;color:#a8909e;margin-top:8px}
.ch-fig.narrow{max-width:420px}
.ch-table{width:100%;max-width:820px;border-collapse:collapse;margin:8px 0 26px;font:400 15.5px/1.6 Inter,system-ui,sans-serif}.ch-table th{text-align:left;font:500 11px/1 ui-monospace,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase;color:#a8909e;padding:0 16px 14px 0;border-bottom:1px solid var(--line)}.ch-table td{padding:18px 16px 18px 0;border-bottom:1px solid var(--line);vertical-align:top;color:#d6c8d0}.ch-table td:first-child{font:400 19px/1.3 Georgia,'Times New Roman',serif;color:#fff3e6;width:22%}
.ch-callout{margin:26px 0;padding:24px 28px;border-left:3px solid var(--orange);background:linear-gradient(90deg,#ffffff0d,transparent);border-radius:0 16px 16px 0;max-width:720px;font:400 clamp(20px,2.4vw,26px)/1.45 Georgia,'Times New Roman',serif;color:#fff3e6}
.ch-lessons{max-width:760px;display:grid;gap:0}
.ch-archive{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#ffffff1a;border:1px solid #ffffff1a;border-radius:16px;overflow:hidden;max-width:620px;margin:0 0 24px}.ch-archive div{background:#0f0a15;padding:16px 18px}.ch-archive dt{font:500 10.5px/1 ui-monospace,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase;color:#a8909e;margin:0 0 8px}.ch-archive dd{margin:0;font:500 15px/1.35 Inter,system-ui,sans-serif}
.ch-next{margin:70px 0 0;padding:40px;border:1px dashed #ffffff3a;border-radius:24px;display:flex;gap:30px;align-items:center;justify-content:space-between;flex-wrap:wrap}.ch-next h2{font:400 clamp(28px,3.4vw,40px)/1.1 Georgia,'Times New Roman',serif;margin:10px 0 8px}.ch-next p{margin:0;color:#b6a9ad;max-width:520px;line-height:1.65}
/* lightbox */
.lb{position:fixed;inset:0;z-index:90;background:#07040bf2;display:none;align-items:center;justify-content:center;padding:30px}.lb.open{display:flex}.lb img{max-width:min(92vw,900px);max-height:84vh;border-radius:14px;box-shadow:0 30px 90px #000}.lb p{position:absolute;left:0;right:0;bottom:18px;text-align:center;color:#cdbfca;font:400 14px Inter,system-ui,sans-serif;padding:0 70px}
.lb button{all:unset;cursor:pointer;position:absolute;width:46px;height:46px;border-radius:50%;background:#ffffff14;border:1px solid #ffffff33;color:#fff;display:grid;place-items:center;font:400 22px/1 Inter,system-ui,sans-serif}.lb button:hover{background:#ffffff2a}.lb button:focus-visible{outline:2px solid #ffb58a;outline-offset:2px}.lb .x{top:18px;right:18px}.lb .pv{left:18px;top:50%}.lb .nx{right:18px;top:50%}
@media(max-width:1000px){.ch-hero{grid-template-columns:1fr;gap:40px;padding-top:120px}.ch-hero figure{max-width:420px}.ch-body{grid-template-columns:1fr;gap:0}.ch-toc{display:none}}
@media(max-width:700px){.ch-grid.c3{grid-template-columns:repeat(2,minmax(0,1fr))}.ch-table thead{display:none}.ch-table,.ch-table tbody,.ch-table tr,.ch-table td{display:block;width:100%}.ch-table tr{padding:18px 0;border-bottom:1px solid var(--line)}.ch-table td{border:0;padding:4px 0 8px;width:100%!important}.ch-table td:before{content:attr(data-l);display:block;font:500 10.5px/1 ui-monospace,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase;color:#a8909e;margin-bottom:6px}.ch-table td:first-child:before{display:none}.ch-facts,.ch-archive{grid-template-columns:1fr 1fr}.ch-next{padding:28px}.lb .pv,.lb .nx{top:auto;bottom:70px}.lb p{padding:0 20px;bottom:130px}}
main{overflow-x:clip}
.ch-hero.solo{grid-template-columns:1fr}.ch-hero.solo .lede{max-width:720px}
.ch-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#ffffff1a;border:1px solid #ffffff1a;border-radius:18px;overflow:hidden;max-width:760px;margin:0 0 18px}
.ch-stats div{background:#0f0a15;padding:20px 18px;display:flex;flex-direction:column-reverse;gap:8px}.ch-stats dd{margin:0;font:400 clamp(30px,4vw,44px)/1 Georgia,serif;color:#f0a07f}.ch-stats dt{font:500 10.5px/1.3 ui-monospace,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase;color:#a8909e}
.ch-ph{margin:28px 0 30px;border:1px dashed #ffffff3d;border-radius:16px;padding:44px 24px;text-align:center;background:repeating-linear-gradient(135deg,#ffffff06 0 12px,transparent 12px 24px);max-width:760px}.ch-ph span{display:inline-block;font:500 10.5px/1 ui-monospace,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--peach);border:1px solid #f0a07f55;border-radius:999px;padding:7px 11px}.ch-ph p{margin:14px auto 0;color:#a8909e;font-size:14px;max-width:520px}
.ch-sec h4{font:500 12px/1.3 ui-monospace,Menlo,monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--peach);margin:30px 0 10px}.ch-sec h4 span{margin-right:10px;color:var(--orange)}.ch-sec h4.plain{text-transform:none;font:400 20px/1.3 Georgia,serif;letter-spacing:0;color:#f2e8dc;margin-top:34px}
.ch-callout.sm{font:500 15px/1.6 Inter,system-ui,sans-serif;color:#e8d8cc}.ch-note{font-size:13.5px!important;color:#a8909e!important;max-width:640px}.ch-sec p.lead b{color:#fff3e6}
@media(max-width:700px){.ch-stats{grid-template-columns:1fr 1fr}}
