:root{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.4;color:#101828}*{box-sizing:border-box}body{margin:0;background:#f6f7fb}.page{padding:24px}.shell{max-width:1100px;margin:0 auto}.hero{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:16px}.cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid;gap:12px}.card{background:#fff;border-radius:8px;padding:12px;border:1px solid #e3e8ef}.metric{display:flex;align-items:center;justify-content:flex-start;gap:12px}.metric-label{margin:0}.metric-value{font-size:28px}.panel{margin-top:16px;background:#fff;border-radius:8px;border:1px solid #e3e8ef;padding:16px}.inline-form,.stack-form{display:grid;gap:12px}label{display:grid;gap:6px;font-size:14px;font-weight:500}input,select,textarea,button{padding:10px;border:1px solid #d7deea;border-radius:6px;font:inherit}button{width:max-content;cursor:pointer;background:#1d4ed8;color:#fff;border-color:#1d4ed8}button:disabled{opacity:.55;cursor:default}.project-grid,.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.actions{display:flex;gap:12px;flex-wrap:wrap}.error{color:#b42318}.success{color:#18794e}.image-panel{position:relative;overflow:hidden;border-radius:8px;border:1px solid #d4deef}.review-image{width:100%;display:block}.pin{position:absolute;transform:translate(-50%,-50%);width:24px;height:24px;border-radius:999px;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:700;background:#4338ca}.pin.open{background:#0ea5e9}.pin.in-progress{background:#f59e0b}.pin.resolved{background:#16a34a}.pin.active-draft{background:#ef4444}.filter-row,.comment-actions{display:flex;gap:12px;flex-wrap:wrap}.comment-card{margin-top:8px;border:1px solid #d4deef;border-radius:8px;padding:12px}.comment-header{display:flex;gap:10px;align-items:center}.muted{color:#667085}.back-link{text-decoration:none}.hint{margin-top:8px;color:#667085}.attachment-list{display:grid;gap:6px}.attachment-list a{color:#1d4ed8;text-decoration:none}.attachment-list a:hover{text-decoration:underline}@media(max-width:720px){.page{padding:12px}.hero{flex-direction:column}}
