:root{
  --bg:oklch(0.984 0.002 250);--surface:#fff;--ink:oklch(0.23 0.012 264);
  --ink-2:oklch(0.44 0.012 264);--ink-3:oklch(0.58 0.010 264);--line:oklch(0.90 0.004 264);
  --acc:#ec5b16;--display:'Archivo',sans-serif;--body:'Hanken Grotesk',sans-serif;
}
*{box-sizing:border-box;margin:0}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px}
input,select,textarea{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:6px;font:inherit;background:var(--surface);color:var(--ink)}
.btn{background:var(--acc);color:#15110e;border:none;border-radius:6px;padding:11px 18px;font-family:var(--display);font-weight:700;cursor:pointer}
.err{color:#d2452f;font-size:13px;margin-top:8px}

.login{max-width:340px;margin:14vh auto;padding:28px;border:1px solid var(--line);background:var(--surface);border-radius:8px;display:flex;flex-direction:column;gap:12px}
.login h1{font-family:var(--display);font-size:22px}
.login h1 .o{color:var(--acc)}

.topbar{display:flex;justify-content:space-between;align-items:center;padding:14px 22px;border-bottom:1px solid var(--line);background:var(--surface)}
.topbar .brand{font-family:var(--display);font-weight:800}.topbar .brand .o{color:var(--acc)}
.topbar .out{font-size:13px;color:var(--ink-3);cursor:pointer;background:none;border:none}

.stats{display:flex;gap:26px;padding:14px 22px;border-bottom:1px solid var(--line);flex-wrap:wrap;font-family:var(--display)}
.stats .s b{font-size:22px}.stats .s span{display:block;font-family:var(--body);font-size:12px;color:var(--ink-3)}

.filters{display:flex;gap:10px;padding:14px 22px 0;flex-wrap:wrap;align-items:center}
.filters input{max-width:260px}
.filters .f{font-size:12px;border:1px solid var(--line);border-radius:100px;padding:5px 12px;cursor:pointer;background:var(--surface)}
.filters .f.on{background:var(--acc);color:#15110e;border-color:var(--acc)}

.board{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:18px 22px;align-items:start}
.col{background:var(--surface);border:1px solid var(--line);border-radius:8px;min-height:120px}
.col h3{font-family:var(--display);font-size:13px;padding:12px 14px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}
.col h3 span{color:var(--ink-3)}
.col .drop{padding:10px;display:flex;flex-direction:column;gap:9px;min-height:60px}
.card{border:1px solid var(--line);border-radius:6px;padding:11px;background:var(--bg);cursor:pointer}
.card b{font-family:var(--display);font-size:14px}
.card .m{font-size:12px;color:var(--ink-2);margin-top:3px}
.card .chip{font-size:10.5px;color:var(--ink-3);border:1px solid var(--line);border-radius:3px;padding:1px 6px}
.card.drag{opacity:.5}
.col.over .drop{outline:2px dashed var(--acc);outline-offset:-6px;border-radius:6px}

.backdrop{position:fixed;inset:0;background:rgba(20,17,14,.25);z-index:40}
.drawer{position:fixed;top:0;right:0;width:min(440px,92vw);height:100%;background:var(--surface);border-left:1px solid var(--line);box-shadow:-20px 0 50px -25px rgba(0,0,0,.4);padding:22px;overflow-y:auto;z-index:50}
.drawer h2{font-family:var(--display);font-size:20px}
.drawer .row{margin-top:14px}
.drawer label{font-size:12px;color:var(--ink-3);display:block;margin-bottom:5px}
.log{margin-top:18px;border-top:1px solid var(--line);padding-top:12px;display:flex;flex-direction:column;gap:9px}
.log .e{font-size:13px;color:var(--ink-2)}
.log .e time{color:var(--ink-3);font-size:11px;display:block}

.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 18px;border-radius:6px;font-size:13px;z-index:60}

@media(max-width:900px){.board{grid-template-columns:1fr 1fr}}
