:root{
  --bg:#faf9f5; --primary:#ffffff; --secondary:#f4f2ec; --tertiary:#efece4;
  --info-bg:#E6F1FB; --info:#185FA5; --success:#3B6D11; --danger:#A32D2D;
  --text:#1f1e1c; --muted:#6c6a64; --hint:#9a988f;
  --bd:rgba(0,0,0,0.14); --bd2:rgba(0,0,0,0.28);
  --rmd:8px; --rlg:12px;
  --font:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
body{font-family:var(--font);color:var(--text);background:var(--bg);margin:0;font-size:15px}
a{color:inherit;text-decoration:none}
.wrap{max-width:1000px;margin:0 auto;padding:18px}
.topnav{display:flex;align-items:center;gap:6px;padding:10px 18px;border-bottom:0.5px solid var(--bd);background:var(--primary);position:sticky;top:0;z-index:5;flex-wrap:wrap}
.logo{width:26px;height:26px;border-radius:7px;background:var(--info-bg);color:var(--info);display:flex;align-items:center;justify-content:center;font-size:15px}
.brand{font-weight:500;margin-right:8px}
.nav-a{font-size:13px;color:var(--muted);padding:6px 12px;border-radius:var(--rmd)}
.nav-a.active{background:var(--secondary);color:var(--text);font-weight:500}
.badge{font-size:10px;background:var(--danger);color:#fff;border-radius:10px;padding:0 6px;margin-left:4px}
.spacer{margin-left:auto}
.btn{font-family:inherit;background:transparent;border:0.5px solid var(--bd2);border-radius:var(--rmd);padding:6px 12px;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--text)}
.btn:hover{background:var(--secondary)}
.btn-primary{background:var(--info-bg);color:var(--info);border-color:#85B7EB}
.btn-sm{padding:4px 10px;font-size:12px}
input,select,textarea{font-family:inherit;border:0.5px solid var(--bd);border-radius:var(--rmd);padding:8px 10px;font-size:14px;background:var(--primary);color:var(--text);width:100%}
.panel{background:var(--primary);border:0.5px solid var(--bd);border-radius:var(--rlg);overflow:hidden;margin-top:14px}
.bar{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:0.5px solid var(--bd)}
.av{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:500;flex:0 0 auto}
.tag{font-size:11px;padding:2px 8px;border-radius:var(--rmd);display:inline-block}
.t-CORE{background:#F1EFE8;color:#444441}.t-DEV{background:#E1F5EE;color:#085041}
.t-CLIENT{background:#EEEDFE;color:#3C3489}.t-RnD{background:#FAECE7;color:#712B13}
.st{font-size:11px;padding:3px 9px;border-radius:var(--rmd);font-weight:500;white-space:nowrap;display:inline-block}
.s-draft{background:#F1EFE8;color:#444441}.s-todo{background:#E6F1FB;color:#185FA5}
.s-prog{background:#FAEEDA;color:#854F0B}.s-review{background:#EEEDFE;color:#3C3489}
.s-done{background:#EAF3DE;color:#3B6D11}.s-defer{background:#D3D1C7;color:#2C2C2A}
.over{background:#FCEBEB;color:#A32D2D;font-weight:500}
.row{display:grid;align-items:center;gap:10px;padding:11px 14px;border-bottom:0.5px solid var(--bd);grid-template-columns:26px 1fr 110px 78px 80px 100px}
.row:last-child{border-bottom:none}
.hd{font-size:11px;color:var(--hint);font-weight:500}
.tt{font-size:14px;font-weight:500}
.ns{font-size:12px;color:var(--muted);margin-top:2px}
.gl{font-size:13px;color:var(--muted)}
.filters{display:flex;gap:8px;padding:9px 14px;border-bottom:0.5px solid var(--bd);flex-wrap:wrap;align-items:center}
.chip{font-size:12px;color:var(--muted);padding:5px 10px;border-radius:var(--rmd);border:0.5px solid var(--bd)}
.chip.on{background:var(--secondary);border-color:transparent;color:var(--text);font-weight:500}
.board{display:flex;gap:10px;overflow-x:auto;padding:12px}
.kcol{flex:0 0 180px;background:var(--secondary);border-radius:var(--rmd);padding:8px}
.kcap{font-size:11px;font-weight:500;border-radius:var(--rmd);padding:4px 8px}
.kcard{background:var(--primary);border:0.5px solid var(--bd);border-radius:var(--rmd);padding:9px 10px;margin-top:8px}
.fld{font-size:12px;color:var(--muted);margin:0 0 5px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
.formwrap{padding:18px}
.mb{margin-bottom:14px}
.right{display:flex;gap:10px;justify-content:flex-end}
.cal{display:grid;grid-template-columns:repeat(7,1fr)}
.cal .day{border-right:0.5px solid var(--bd);min-height:90px;padding:5px}
.cal .day:last-child{border-right:none}
.dh{font-size:11px;color:var(--hint);text-align:center;padding:6px 0;border-right:0.5px solid var(--bd)}
@media(max-width:720px){
  .row{grid-template-columns:1fr auto;gap:6px}
  .row .hd{display:none}
  .row .col-hide{display:none}
  .grid2,.grid3{grid-template-columns:1fr}
  .cal,.dh{font-size:11px}
}
.mcard{padding:12px 14px;border-bottom:0.5px solid var(--bd)}
.login-box{max-width:320px;margin:8vh auto;text-align:center}
