*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;background:#ecf1f9;color:#0f172a}.hidden{display:none !important}
.login-wrap{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#dce7fb,#eef4ff)}
.login-card{width:min(460px,92vw);background:white;border:1px solid #d7dfec;border-radius:16px;padding:18px;box-shadow:0 10px 30px rgba(15,23,42,.08)}
input,select,textarea{width:100%;background:#f8fafc;color:#0f172a;border:1px solid #d2dbe8;border-radius:10px;padding:10px}
button{background:#3b82f6;border:none;color:white;padding:9px 12px;border-radius:10px;cursor:pointer;font-weight:600}
button.ghost{background:#e2e8f0;color:#334155}
button.danger{background:#ef4444}
.app{min-height:100vh}
.topbar{height:58px;display:flex;justify-content:space-between;align-items:center;padding:8px 14px;background:#f8fbff;border-bottom:1px solid #d8e2f1;gap:12px}
.topbar .left,.topbar .right{display:flex;align-items:center;gap:10px}
.topbar input{height:36px}
main{padding:14px}
.board{display:flex;gap:12px;overflow:auto;align-items:flex-start}
.lane{width:320px;background:#f3f6fb;border-radius:12px;padding:10px;color:#0f172a;border:1px solid #d3dbe8}
.lane-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.lane h3{font-size:18px;margin:0;outline:none}
.lane-cards{display:flex;flex-direction:column;gap:8px;min-height:24px}
.card-item{background:white;border:1px solid #dbe2ec;border-radius:10px;padding:10px;box-shadow:0 1px 1px rgba(15,23,42,.04)}
.card-id{font-size:11px;color:#64748b;display:flex;justify-content:space-between;align-items:center}
.prio{background:#ffe4e6;color:#9f1239;border-radius:999px;padding:2px 7px;font-weight:700;font-size:10px}
.card-title{font-weight:700;margin-top:4px}
.card-epic{font-size:12px;color:#475569;margin-top:4px}
.card-desc{font-size:13px;color:#1f2937;margin-top:4px;white-space:pre-wrap}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.chip{background:#e0f2fe;color:#075985;border-radius:999px;padding:2px 8px;font-size:11px}
.card-meta{font-size:12px;color:#334155;margin-top:6px}
.card-actions{display:flex;gap:6px;margin-top:8px}.mini{font-size:11px;padding:5px 8px;background:#e2e8f0;color:#334155}.mini.danger{background:#fecaca;color:#7f1d1d}
.add-card{width:100%;margin-top:8px;background:#e2e8f0;color:#334155;text-align:left}
.add-lane{background:#e9effa;color:#334155;border:1px dashed #95aacb;height:48px}
.modal{position:fixed;inset:0;background:rgba(15,23,42,.35);display:grid;place-items:center;padding:20px;z-index:50}
.modal-card{width:min(720px,96vw);max-height:90vh;overflow:auto;background:white;border:1px solid #dbe2ec;border-radius:16px;padding:16px;box-shadow:0 20px 50px rgba(15,23,42,.2)}
.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
label{display:block;font-size:12px;color:#475569;margin:8px 0 4px}
.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}
