/* Main area layout, project cards of the Projects page, and the pager shared by all pages. */

/* main */
main{flex:1;min-height:0}
main>.wrap{height:100%;padding-block:14px}
.view{height:100%;display:flex;flex-direction:column;gap:10px;min-height:0}
.grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-content:start}
.pc{position:relative;background:var(--panel);border:1px solid var(--line);padding:16px 18px;display:flex;flex-direction:column;gap:8px;min-height:0;min-width:0;overflow:hidden;transition:background .14s ease,border-color .14s ease}
.pc:hover{background:var(--panel-hi);border-color:var(--line2)}
.pc-top{display:flex;align-items:flex-start;gap:12px}
.pc h2{margin:0;flex:1;min-width:0;font-family:var(--cond);font-weight:600;font-size:23px;line-height:1.06;letter-spacing:.005em}
.pc-open{all:unset;cursor:pointer;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}
.pc-open::after{content:"";position:absolute;inset:0}
.pc-open:focus-visible::after{outline:2px solid var(--accent);outline-offset:-2px}
.pc-edit{position:relative;z-index:1;flex:none;background:transparent;border:1px solid var(--line2);padding:3px 8px;font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink2);cursor:pointer}
.pc-edit:hover{color:var(--ink);border-color:var(--ink3);background:var(--panel)}
.pc-desc{margin:0;font-size:13px;line-height:1.4;color:var(--ink2);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.pc-body{margin-top:auto;display:flex;flex-direction:column;gap:12px}
.pc-figs{display:flex;gap:28px}
.pc-figs b{display:block;font-family:var(--cond);font-weight:700;font-size:32px;line-height:.9}
.pc-figs span{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);margin-top:6px;white-space:nowrap}
.pc-dates{display:flex;flex-direction:column;gap:3px;border-top:1px solid var(--line);padding-top:9px;font-family:var(--mono);font-size:10.5px;color:var(--ink)}
.pc-dates span{white-space:nowrap}
.pc-dates em{font-style:normal;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);display:inline-block;min-width:92px}
.pc.empty{background:transparent;border-style:dashed;border-color:var(--none)}
.pc.empty:hover{background:var(--panel)}
.pc-none{font-size:13px;color:var(--ink2);border-top:1px dashed var(--none);padding-top:9px}
.pager{flex:none;display:flex;align-items:center;justify-content:center;gap:14px;font-family:var(--mono);font-size:11px;color:var(--ink2)}
.pager button{width:30px;height:30px;border:1px solid var(--line2);background:transparent;color:var(--ink);cursor:pointer;font-size:16px;line-height:1}
.pager button:hover{background:var(--panel-hi)}
.pager button:disabled{opacity:.3;cursor:default}
