:root{--bg: #0f1419;--card: #1a2332;--card-done: #1a2e22;--card-done-border: #3d6b4f;--border: #2d3a4f;--text: #e6edf3;--muted: #8b9cb3;--accent: #3b82f6;--ok: #4ade80;--ok-bg: rgba(74, 222, 128, .12);--err: #ef4444}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}#root{min-height:100vh}.muted{color:var(--muted)}.error{color:var(--err)}.header{padding:1rem 1.5rem;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}.header h1{margin:0;font-size:1.25rem}.sub{color:var(--muted);font-size:.9rem;margin-top:.25rem}.header-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.main{padding:1.5rem;max-width:1600px;margin:0 auto}button,select,input,textarea{font:inherit}button{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:.45rem .85rem;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button.btn-secondary{background:#475569}button.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--text)}button.btn-danger{background:#7f1d1d}button.btn-ok{background:#15803d}select,input,textarea{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:.45rem .65rem;width:100%}textarea{resize:vertical;min-height:4rem}label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.login-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:2rem;width:min(100%,360px);display:flex;flex-direction:column;gap:.75rem}.login-card h1{margin:0}.banner{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem}.banner.error{background:#ef444426;border:1px solid rgba(239,68,68,.4)}.board-head{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.75rem}.col-title{font-weight:600;color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}.board-rows{display:flex;flex-direction:column;gap:.75rem}.board-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:stretch}.board-row.completed .task-card,.board-row.completed .exec-card{background:var(--card-done);border-color:var(--card-done-border);box-shadow:inset 0 0 0 1px var(--ok-bg)}.board-divider{grid-column:1 / -1;text-align:center;color:var(--ok);font-size:.85rem;padding:.5rem 0;border-top:1px dashed var(--card-done-border);margin-top:.5rem}.card{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.5rem;min-height:120px}.card-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.8rem;color:var(--muted);justify-content:space-between}.badge-done{color:var(--ok)}.card-text{margin:0;white-space:pre-wrap;flex:1}.card-people{display:flex;flex-direction:column;gap:.2rem;font-size:.85rem;color:var(--muted)}.card-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:auto;padding-top:.5rem}.exec-empty{flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.5rem}.exec-card.readonly .card-text{color:#b8e6c8}.empty-hint{color:var(--muted);text-align:center;padding:2rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:100}.modal{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.25rem;width:min(100%,480px);display:flex;flex-direction:column;gap:.75rem}.modal h2{margin:0}.modal-hint{margin:0;font-size:.9rem}.modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.25rem}@media(max-width:900px){.board-head,.board-row{grid-template-columns:1fr}}
