/* Jobs, ideas, issues. */
.quick-item{display:flex;align-items:center;gap:.8rem;padding:.8rem .6rem;color:var(--text);text-decoration:none;border-radius:12px;min-height:3.2rem}
.quick-item:hover{background:var(--surface2)}
.toolbar{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem}
.toolbar .grow{flex:1}
.cards{display:flex;flex-direction:column;gap:.6rem}
.job{display:flex;gap:.8rem;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.8rem 1rem;box-shadow:var(--shadow)}
.job.done{opacity:.75}
.job .tick{flex:none;width:2.1rem;height:2.1rem;border-radius:50%;border:2px solid var(--border-strong);background:var(--surface);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:transparent;margin-top:.1rem}
.job .tick:hover{border-color:var(--ok);color:var(--ok)}
.job.done .tick{background:var(--ok);border-color:var(--ok);color:#fff}
.job .main-col{flex:1;min-width:0}
.job .ttl{font-weight:700;color:var(--text);text-decoration:none;font-size:1.02rem;overflow-wrap:anywhere}
.job .ttl:hover{text-decoration:underline}
.job.done .ttl{text-decoration:line-through;text-decoration-color:var(--text3)}
.job .chips{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.35rem;align-items:center}
.job .side-col{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem}
.progress{height:.4rem;background:var(--surface2);border-radius:999px;overflow:hidden;min-width:5rem}
.progress i{display:block;height:100%;background:var(--accent)}
.checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}
.checklist label{display:flex;gap:.6rem;align-items:flex-start;padding:.35rem .2rem;cursor:pointer;border-radius:8px}
.checklist label:hover{background:var(--surface2)}
.checklist input{width:1.2rem;height:1.2rem;margin-top:.2rem;accent-color:var(--ok);flex:none}
.checklist .done span{text-decoration:line-through;color:var(--text3)}
.statusbtns{display:flex;gap:.4rem;flex-wrap:wrap}
.thread-list{display:flex;flex-direction:column;gap:.6rem;margin:.6rem 0}
.cmt{display:flex;gap:.6rem}.cmt .bubble{background:var(--surface2);border-radius:12px;padding:.45rem .8rem;flex:1;min-width:0}
.cmt .bubble b{font-size:.9rem}.cmt .bubble time{font-size:.74rem;color:var(--text3);margin-left:.4rem}
.cmt .bubble p{margin:.1rem 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.cmt.event{font-size:.86rem;color:var(--text3);align-items:center}.cmt.event .bubble{background:transparent;padding:0}
.cmt.internal .bubble{background:var(--warn-soft);border:1px dashed var(--warn)}
.picker{display:flex;flex-wrap:wrap;gap:.4rem}
.picker label{display:inline-flex;gap:.4rem;align-items:center;border:2px solid var(--border-strong);border-radius:999px;padding:.2rem .8rem .2rem .4rem;cursor:pointer;min-height:2.3rem;font-weight:700;font-size:.9rem}
.picker input{position:absolute;opacity:0;pointer-events:none}
.picker label:has(input:checked){border-color:var(--brand);background:var(--brand-soft)}
.picker label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}@media (max-width:520px){.row2{grid-template-columns:1fr}}

/* ideas */
.idea{display:flex;gap:.9rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem;box-shadow:var(--shadow)}
.idea .vote{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;min-width:3.2rem;border:2px solid var(--border-strong);background:var(--surface);border-radius:14px;cursor:pointer;padding:.4rem;font-weight:700;color:var(--text2)}
.idea .vote:hover{border-color:var(--brand)}
.idea .vote[aria-pressed=true]{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-text)}
.idea h3{font-size:1.05rem;margin:0 0 .15rem;font-family:var(--font);font-weight:700}
.idea h3 a{color:var(--text);text-decoration:none}.idea h3 a:hover{text-decoration:underline}
.idea p{margin:.2rem 0 .4rem;color:var(--text2)}
.stagebar{display:flex;gap:.3rem;flex-wrap:wrap}
.stagebar button{border:2px solid var(--border);background:var(--surface);border-radius:999px;padding:.25rem .8rem;cursor:pointer;font-weight:700;color:var(--text2);min-height:2.1rem;font-size:.86rem}
.stagebar button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#04201C}
.stagebar button[disabled]{cursor:default}
.dev-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.8rem}
.dev-fields .box{background:var(--surface2);border-radius:12px;padding:.6rem .8rem}
.dev-fields .box b{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text3);margin-bottom:.2rem}
.dev-fields .box p{margin:0;white-space:pre-wrap}

/* issues */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.5rem}
.cat-grid label{display:flex;flex-direction:column;gap:.1rem;border:2px solid var(--border-strong);border-radius:14px;padding:.55rem .8rem;cursor:pointer}
.cat-grid input{position:absolute;opacity:0;pointer-events:none}
.cat-grid label:has(input:checked){border-color:var(--brand);background:var(--brand-soft)}
.cat-grid label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}
.cat-grid b{font-size:.95rem}.cat-grid span{font-size:.8rem;color:var(--text3)}
.issue{display:flex;gap:.8rem;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.8rem 1rem;box-shadow:var(--shadow);text-decoration:none;color:var(--text)}
.issue:hover{border-color:var(--brand)}
.issue .grow b{display:block}
.privacy-note{display:flex;gap:.6rem;align-items:flex-start;background:var(--brand-soft);border-radius:12px;padding:.6rem .8rem;font-size:.9rem;margin-bottom:1rem}
