.projects{padding:0;border:0;font-size:18px}
.project-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:36px 0 18px;margin:0;flex-wrap:wrap}
.project-heading h2{margin:0;font-size:clamp(34px,4.5vw,50px);font-weight:400;line-height:1.05}
.project-kicker{margin:0 0 4px;color:var(--mute);font-size:16px;font-weight:400;font-style:italic;letter-spacing:0;text-transform:none}
.project-actions,.project-filters{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.project-actions{justify-content:flex-end}
.project-filters{margin:0 0 18px;padding:0 0 16px;border-bottom:2px solid var(--ink)}
.project-button,.project-filters select{display:inline-block;padding:7px 11px;border:1px solid var(--brass);border-radius:0;color:var(--ink);background:transparent;font:inherit;font-size:16px;line-height:1.3;text-decoration:none;cursor:pointer}
.project-button:hover{border-color:var(--ink);background:var(--paper-deep)}
.project-button[aria-pressed=true],.project-primary{border-color:var(--ink);background:var(--ink);color:var(--paper);font-weight:400}
.project-message{margin:0 0 14px;color:var(--mute);font-style:italic}
.project-grid{display:block;border-top:0}
.imprint-group{display:grid;grid-template-columns:200px minmax(0,1fr);gap:clamp(18px,4vw,56px);padding:26px 0;border-bottom:1px solid var(--brass)}
.imprint-who{display:flex;align-items:flex-start;gap:12px}
.imprint-mark{width:34px;height:41px;flex:none;margin-top:1px}
.imprint-name{margin:0;font-size:24px;font-weight:500;line-height:1.1}
.imprint-description{display:block;margin-top:4px;color:var(--mute);font-size:16px;font-style:italic;line-height:1.35}
.imprint-deepwell .imprint-mark{color:var(--oxblood)}
.imprint-historic .imprint-mark{color:var(--ochre)}
.imprint-modernism .imprint-mark{color:var(--slate)}
.imprint-preservation .imprint-mark{color:var(--green)}
.imprint-jeffery .imprint-mark{color:var(--ink)}
.project-ledger{min-width:0}
.ledger-head,.project-row{display:grid;grid-template-columns:minmax(150px,1.05fr) minmax(105px,.58fr) minmax(210px,1.5fr) minmax(205px,.9fr);gap:12px}
.ledger-head{padding:0 0 8px;border-bottom:1px solid var(--paper-deep);color:var(--mute);font-size:16px;font-style:italic}
.ledger-head span:last-child{text-align:right}
.project-card{border:0!important;border-bottom:1px solid var(--paper-deep)!important;background:transparent!important}
.project-card:last-child{border-bottom:0!important}
.project-layer-row{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(105px,.62fr) minmax(220px,1.8fr) minmax(82px,.55fr);gap:12px;align-items:start;padding:9px 0 9px 18px;border:0;border-bottom:1px solid var(--paper-deep);color:var(--ink);font-size:16px}
.project-layer-row:hover{background:rgba(221,227,214,.34)}
.project-layer-name{border-bottom:1px solid rgba(27,37,54,.2);font-style:italic}
.project-card>summary{list-style:none;cursor:pointer}
.project-card>summary::-webkit-details-marker{display:none}
.project-row{align-items:start;padding:10px 0}
.project-row:hover .project-name{border-bottom-color:var(--ink)}
.project-name{width:max-content;max-width:100%;border-bottom:1px solid rgba(27,37,54,.2);font-weight:500;color:var(--ink)}
.project-status{color:var(--mute);white-space:nowrap}
.dot{display:inline-block;width:9px;height:9px;margin-right:8px;border:1.5px solid currentColor;border-radius:50%;vertical-align:0}
.dot.on{background:currentColor}
.imprint-deepwell .dot{color:var(--oxblood)}.imprint-historic .dot{color:var(--ochre)}.imprint-modernism .dot{color:var(--slate)}.imprint-preservation .dot{color:var(--green)}.imprint-jeffery .dot{color:var(--ink)}
.project-next{color:var(--ink);line-height:1.35}
.project-due{display:grid;grid-template-columns:minmax(142px,1fr) 116px;align-items:center;gap:8px;text-align:right;color:var(--mute);white-space:nowrap;font-variant-numeric:tabular-nums}
.eta-date{font-size:15px;text-align:right}
.eta-counter{display:block;width:100%;box-sizing:border-box;padding:2px 6px;border:1px solid currentColor;background:rgba(255,255,255,.24);font-size:14px;font-weight:500;letter-spacing:.035em;line-height:1.2;text-align:center}
.eta-unscheduled{grid-column:1/-1;text-align:right}
.project-due.eta-urgent{color:var(--oxblood);background:rgba(123,48,42,.055)}
.project-due.eta-week{color:var(--ochre);background:rgba(157,119,43,.065)}
.project-due.eta-later{color:var(--green);background:rgba(31,122,112,.055)}
.project-panel{padding:16px 18px 20px;margin:0 0 10px;border:1px solid var(--brass);background:rgba(221,227,214,.28)}
.project-panel h4{margin:18px 0 6px;color:var(--ink);font-size:18px;font-weight:500;letter-spacing:0;text-transform:none}
.project-panel h4:first-child{margin-top:0}
.project-panel p{white-space:pre-wrap;margin:0 0 12px}
.project-panel dl{margin:0}.project-panel dt{margin-top:10px;font-weight:500}.project-panel dd{margin:2px 0 0;white-space:pre-wrap}
.project-section+.project-section{margin-top:16px;padding-top:14px;border-top:1px solid var(--paper-deep)}
.project-meta{color:var(--mute);font-size:15px}.project-history{max-height:320px;overflow:auto;padding-left:20px;font-size:15px}
.project-dialog{width:min(720px,calc(100% - 24px));max-height:90vh;padding:26px;border:1px solid var(--brass);border-radius:0;color:var(--ink);background:var(--paper)}
.project-dialog form{display:grid;gap:15px}.project-dialog h2{margin:0}.project-dialog label{display:grid;gap:6px;font-size:16px;font-weight:400;text-transform:none}
.project-dialog input,.project-dialog textarea,.project-dialog select{width:100%;padding:10px;border:1px solid var(--brass);border-radius:0;color:var(--ink);background:var(--paper);font:inherit}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.eta-section{margin:26px 0}.eta-section h3{margin:0 0 10px;font-size:24px;font-weight:500;text-transform:none}
.eta-row{display:grid;grid-template-columns:minmax(210px,1.2fr) minmax(180px,1fr);gap:16px;align-items:center;padding:15px 0;border:0;border-top:1px solid var(--paper-deep);background:transparent}
.eta-row h4{margin:0;font-size:19px}.eta-row p{margin:3px 0 0;color:var(--mute);font-size:15px}
.eta-row progress{accent-color:var(--ink)}
@media(max-width:820px){.imprint-group{grid-template-columns:1fr;gap:12px}.ledger-head{display:none}.project-row{grid-template-columns:minmax(130px,1fr) minmax(90px,.7fr);gap:6px 14px}.project-next{grid-column:1/-1}.project-due{grid-template-columns:minmax(142px,auto) 116px;justify-content:start;text-align:left}.eta-unscheduled{text-align:left}}
@media(max-width:820px){.project-layer-row{grid-template-columns:minmax(130px,1fr) minmax(90px,.7fr);gap:6px 14px}.project-layer-row .project-next{grid-column:1/-1}.project-layer-row .project-due{text-align:left}}
@media(max-width:560px){.project-heading{align-items:flex-start;flex-direction:column}.project-actions{justify-content:flex-start}.project-row{grid-template-columns:1fr}.project-next{grid-column:auto}.project-due{grid-template-columns:minmax(142px,auto) 116px;justify-content:start;text-align:left}.eta-unscheduled{text-align:left}.project-dialog{padding:20px}.form-row,.eta-row{grid-template-columns:1fr}}

/* Projects usability pass */
.workshop-menu{position:relative;margin:0 0 18px;border-bottom:1px solid var(--brass)}
.workshop-menu>summary{width:max-content;padding:10px 0;cursor:pointer;font-weight:500;list-style:none}
.workshop-menu>summary::-webkit-details-marker{display:none}
.workshop-menu>summary::after{content:' +';font-weight:400}
.workshop-menu[open]>summary::after{content:' −'}
.workshop-menu .workshop-index{padding:0 0 14px;border:0}
.project-filters label{display:flex;align-items:center;gap:8px;color:var(--mute);font-size:15px;font-style:italic}
.project-filters select{min-width:150px;color:var(--ink);font-style:normal}
.project-utility{position:relative}
.project-utility>summary,.project-output>summary{cursor:pointer;list-style:none}
.project-utility>summary::-webkit-details-marker,.project-output>summary::-webkit-details-marker{display:none}
.project-utility>summary{padding:7px 11px;border:1px solid var(--brass);font-size:16px}
.project-utility>summary::after{content:' +'}
.project-utility[open]>summary::after{content:' −'}
.project-utility>.project-actions{position:absolute;right:0;z-index:4;width:max-content;margin-top:6px;padding:8px;border:1px solid var(--brass);background:var(--paper)}
.project-status{white-space:normal;line-height:1.3}
.project-output>summary{width:max-content;border-bottom:1px solid rgba(27,37,54,.28);font-weight:500}
.project-output>summary::after{content:' +';font-weight:400}
.project-output[open]>summary::after{content:' −'}
.project-output>.project-actions{justify-content:flex-start;margin-top:10px}
.project-dialog{padding-bottom:0}
.project-save-bar{position:sticky;bottom:0;z-index:3;margin:4px -26px 0;padding:14px 26px;border-top:1px solid var(--brass);background:var(--paper)}
.project-save-bar .project-message{margin:0 0 8px}
.project-save-actions{justify-content:flex-start}
@media(max-width:560px){
 .workshop-menu .workshop-index{display:grid;grid-template-columns:1fr 1fr}
 .project-filters{align-items:stretch}
 .project-filters label{width:100%;justify-content:space-between}
 .project-filters select{min-width:0;width:68%}
 .project-utility>.project-actions{left:0;right:auto}
 .project-save-bar{margin-left:-20px;margin-right:-20px;padding:12px 20px}
}
