/* Featured project cards. Chart geometry and figures come from each public analysis page. */
.project-featured { min-height: 40rem; }
.project-featured h3 a { color: inherit; text-decoration: none; }
.project-featured h3 a:hover { text-decoration: underline; text-underline-offset: .2em; }
.project-progress { display: flex; flex-direction: column; margin-top: auto; padding-top: 1.5rem; }
.project-progress-link { display: block; border-radius: .8rem; padding: .9rem; color: #f3e9d6; background: #3a3020; border: 1px solid #6f5d3e; text-decoration: none; }
.project-ancient .project-progress-link { background: #0e0f21; border-color: #686044; color: #ece7d9; }
.project-progress-heading { display: block; font-size: .7rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #f7d98a; }
.project-ancient .project-progress-heading { color: #ecc56e; }
.project-progress-chart { display: grid; place-items: center; width: 100%; aspect-ratio: 1; }
.project-progress-chart svg { display: block; width: 100%; height: auto; overflow: visible; }
.project-progress-chart p { font-size: .85rem; text-align: center; }
.project-progress-key { display: block; min-height: 2.3rem; font-size: .7rem; line-height: 1.6; color: #ded1b4; }
.project-ancient .project-progress-key { color: #c1bcd9; }
.project-progress-cta { display: block; margin-top: .65rem; font-size: .8rem; font-weight: 800; text-decoration: underline; text-underline-offset: .2em; }
.project-featured a:focus-visible { outline: 3px solid var(--project-accent); outline-offset: 5px; }
.project-progress-link:focus-visible { outline-color: #d4a94c; }
.project-progress-chart { --ring-story:#8a6a3e; --ring-tagging:#e08a52; --ring-quotes:#c46a3a; --ring-review:#c08a45; --ring-structure:#f2b84b; --ring-enrich:#d49a3b; --ring-draft:#b08a4e; --ring-track:rgba(242,184,75,.12); --pg-clean-1:#c0708e; --pg-clean-2:#d48da6; --pg-clean-3:#e3adbf; --pg-infra:#6f5d3e; --pg-stat-v:#f3e9d6; --ink-soft:#c1b18c; --font-headline:Georgia,serif; --am-gold:#d4a94c; --am-ink-light:#ece7d9; --am-lav:#aaa4cc; --an-held:#b0544f; --serif:Georgia,serif; font-family:Arial,sans-serif; }
.project-progress-chart .pg-track{fill:none;stroke:var(--ring-track)}
.project-progress-chart .pg-val{fill:none;stroke-linecap:round}
.project-progress-chart .pg-ring:hover .pg-val,.project-progress-chart .pg-ring:hover .pg-track{filter:brightness(.88)}
.project-progress-chart .pg-radial-big{font-family:var(--font-headline);font-size:26px;font-weight:700;fill:var(--pg-stat-v,#202122);text-anchor:middle}
.project-progress-chart .pg-radial-small{font-size:9.5px;fill:var(--ink-soft);text-anchor:middle;letter-spacing:.06em;text-transform:uppercase}
.project-progress-chart .r-structure .pg-val,.project-progress-chart .pg-key.r-structure{stroke:var(--ring-structure);background:var(--ring-structure)}
.project-progress-chart .r-enrich .pg-val,.project-progress-chart .pg-key.r-enrich{stroke:var(--ring-enrich);background:var(--ring-enrich)}
.project-progress-chart .r-review .pg-val,.project-progress-chart .pg-key.r-review{stroke:var(--ring-review);background:var(--ring-review)}
.project-progress-chart .r-quotes .pg-val,.project-progress-chart .pg-key.r-quotes{stroke:var(--ring-quotes);background:var(--ring-quotes)}
.project-progress-chart .r-tagging .pg-val,.project-progress-chart .pg-key.r-tagging{stroke:var(--ring-tagging);background:var(--ring-tagging)}
.project-progress-chart .r-story .pg-val,.project-progress-chart .pg-key.r-story{stroke:var(--ring-story);background:var(--ring-story)}
.project-progress-chart .g-clean .pg-val,.project-progress-chart .pg-key.g-clean{stroke:var(--pg-clean-2,#9a8090);background:var(--pg-clean-2,#9a8090)}
.project-progress-chart .r-releases .pg-val,.project-progress-chart .pg-key.r-releases{stroke:var(--pg-clean-1,#8a6a7a);background:var(--pg-clean-1,#8a6a7a)}
.project-progress-chart .r-equip .pg-val,.project-progress-chart .pg-key.r-equip{stroke:var(--pg-clean-3,#b0a0a8);background:var(--pg-clean-3,#b0a0a8)}
.project-progress-chart .g-infra .pg-val,.project-progress-chart .pg-key.g-infra{stroke:var(--pg-infra,#b0a890);background:var(--pg-infra,#b0a890)}
.project-ancient .project-progress-chart text { font-family: monospace; font-size:7px; letter-spacing:.12em; }
.project-ancient .kit-ring { fill:none; stroke:rgba(212,169,76,.18); }
.project-ancient .kit-ticks { fill:none; stroke:rgba(212,169,76,.35); }
.project-ancient .kit-inner-ring { fill:none; stroke:rgba(163,158,196,.2); stroke-dasharray:2 6; }
.project-ancient .dial-track { fill:none; stroke:rgba(163,158,196,.18); stroke-dasharray:2 4; }
.project-ancient text.am-ring-label,.project-ancient text.am-scale { fill:var(--am-lav); font-size:7.4px; }
.project-ancient text.am-dial-num { fill:var(--am-ink-light); font-family:Georgia,serif; font-size:30px; letter-spacing:0; }
.project-ancient .lane-arc { fill:none; stroke-width:6; }
.project-ancient .lane-arc.done { stroke:var(--am-gold); }
.project-ancient .lane-arc.doing { stroke:var(--am-gold); stroke-width:2; stroke-dasharray:3 2; }
.project-ancient .lane-arc.open { stroke:rgba(163,158,196,.24); }
.project-ancient .lane-arc.held { stroke:var(--an-held); stroke-dasharray:1.5 1.5; }
@media(max-width:767px) { .project-featured { min-height:0; } .project-progress { margin-top:0; } .project-progress-chart { max-width:26rem; margin-inline:auto; } }
