<style>
@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700;800&family=Barlow+Condensed:wght@600;700;800&display=swap');
*{box-sizing:border-box;margin:0;padding:0;}
:root{
  --bg:#ede3d4;--s1:#f2e8d9;--s2:#e8d8c4;--s3:#deccb4;
  --brd:rgba(61,26,26,.13);--brd2:rgba(61,26,26,.22);
  --terra:#c1513a;--terra2:#a83e2a;--vino:#3d1a1a;
  --cobalt:#3b6fd4;--cobalt2:#2d58b0;
  --green:#3a6a2a;--amber:#c8820a;
  --txt:#3d1a1a;--txt2:#6b3a2a;--txt3:#9a7060;
  --r:10px;--r2:6px;
}
body{font-family:Barlow,sans-serif;background:var(--bg);color:var(--txt);height:100vh;overflow:hidden;}

/* AUTH */
#auth{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--vino);}
.acard{background:#4a1f1f;border:1px solid rgba(193,81,58,.35);border-radius:18px;padding:44px 48px;width:420px;box-shadow:0 20px 60px rgba(0,0,0,.5);}
.abrand{text-align:center;margin-bottom:32px;}
.aplogo{width:52px;height:52px;background:var(--terra);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;box-shadow:0 4px 16px rgba(193,81,58,.4);}
.aplogo span{font-family:"Barlow Condensed",sans-serif;font-size:26px;font-weight:800;color:#f2e8d9;}
.awordmark{font-family:"Barlow Condensed",sans-serif;font-size:24px;font-weight:800;letter-spacing:3px;color:#f2e8d9;}
.atagline{font-size:11px;letter-spacing:2px;color:#c1513a;text-transform:uppercase;margin-top:3px;}
.alabel{font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#c8a898;margin-bottom:6px;display:block;}
.ainput{width:100%;background:#3d1a1a;border:1px solid rgba(193,81,58,.35);border-radius:var(--r2);padding:12px 16px;color:#f2e8d9;font-size:14px;font-family:Barlow,sans-serif;outline:none;margin-bottom:14px;}
.ainput:focus{border-color:var(--terra);}
.ainput::placeholder{color:#7a5040;}
.aerr{background:rgba(193,81,58,.2);border:1px solid rgba(193,81,58,.4);border-radius:var(--r2);padding:10px 14px;color:#f87171;font-size:13px;margin-bottom:14px;display:none;}
.aerr.show{display:block;}
.abtn{width:100%;padding:13px;background:var(--terra);color:#f2e8d9;border:none;border-radius:var(--r2);font-size:14px;font-weight:700;letter-spacing:.5px;cursor:pointer;font-family:Barlow,sans-serif;}
.abtn:hover{background:var(--terra2);}
.afooter{text-align:center;font-size:12px;color:#7a5040;margin-top:20px;padding-top:16px;border-top:1px solid rgba(193,81,58,.2);}

/* APP */
#app{display:none;height:100vh;flex-direction:row;}
.sidebar{width:240px;min-width:240px;background:var(--s1);border-right:1px solid var(--brd);display:flex;flex-direction:column;height:100vh;overflow:hidden;}
.slogo{padding:18px 16px 14px;border-bottom:1px solid var(--brd);display:flex;align-items:center;gap:10px;}
.slogo-p{width:32px;height:32px;background:var(--terra);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.slogo-p span{font-family:"Barlow Condensed",sans-serif;font-size:17px;font-weight:800;color:#f2e8d9;}
.slogo-txt .wm{font-family:"Barlow Condensed",sans-serif;font-size:16px;font-weight:800;letter-spacing:2px;color:var(--txt);}
.slogo-txt .tg{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--txt3);}
.suser{display:flex;align-items:center;gap:9px;padding:10px 12px;border-bottom:1px solid var(--brd);cursor:pointer;}
.suser:hover{background:var(--s2);}
.savatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;font-family:"Barlow Condensed",sans-serif;}
.suser-info{flex:1;overflow:hidden;}
.suser-name{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.suser-pos{font-size:10.5px;color:var(--txt3);}
.slogout{background:none;border:none;cursor:pointer;color:var(--txt3);font-size:13px;padding:4px;border-radius:4px;}
.slogout:hover{color:var(--terra);}
.snav{padding:10px 8px 4px;}
.snav-lbl{font-size:9.5px;text-transform:uppercase;letter-spacing:1.5px;color:var(--txt3);padding:0 8px;margin-bottom:3px;font-weight:700;}
.nitem{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:var(--r2);cursor:pointer;color:var(--txt2);font-size:13px;font-weight:500;border-left:3px solid transparent;transition:all .12s;}
.nitem:hover{background:var(--s2);}
.nitem.active{background:rgba(193,81,58,.1);color:var(--terra2);border-left-color:var(--terra);}
.sproj{flex:1;overflow-y:auto;padding:8px 8px 4px;}
.pitem{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:var(--r2);cursor:pointer;color:var(--txt2);font-size:11px;transition:all .12s;text-transform:none;font-family:Barlow,sans-serif;}
.pitem:hover{background:var(--s2);}
.pitem.active{background:rgba(193,81,58,.1);color:var(--terra2);}
.pdot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.pname{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.3;text-transform:none;font-weight:500;font-family:Barlow,sans-serif;letter-spacing:0;}
.ppct{font-size:10px;color:var(--txt3);font-family:Barlow,sans-serif;font-weight:500;}
.sbot{padding:10px 8px;border-top:1px solid var(--brd);}
.addpbtn{width:100%;display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:var(--r2);background:none;border:1px dashed var(--brd2);color:var(--txt3);cursor:pointer;font-size:12.5px;font-family:Barlow,sans-serif;transition:all .12s;}
.addpbtn:hover{border-color:var(--terra);color:var(--terra2);background:rgba(193,81,58,.07);}

/* MAIN */
.main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;}
.topbar{padding:14px 24px;border-bottom:1px solid var(--brd);display:flex;align-items:center;gap:14px;background:var(--s1);flex-shrink:0;}
.tb-title{font-family:"Barlow Condensed",sans-serif;font-size:20px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;}
.tb-sub{font-size:11.5px;color:var(--txt3);margin-top:1px;}
.tb-right{margin-left:auto;display:flex;align-items:center;gap:8px;}
.vtabs{display:flex;gap:2px;background:var(--s2);border-radius:var(--r2);padding:3px;}
.vtab{padding:5px 14px;border-radius:4px;cursor:pointer;font-size:11.5px;font-weight:700;color:var(--txt3);border:none;background:none;font-family:Barlow,sans-serif;text-transform:uppercase;letter-spacing:.5px;transition:all .12s;}
.vtab.active{background:var(--s3);color:var(--txt);}
.content{flex:1;overflow-y:auto;padding:24px;}
.content::-webkit-scrollbar{width:5px;}
.content::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:3px;}

/* BUTTONS */
.btn{padding:8px 16px;border-radius:var(--r2);font-size:12px;font-weight:700;cursor:pointer;border:none;font-family:Barlow,sans-serif;text-transform:uppercase;letter-spacing:.4px;transition:all .12s;}
.btn-p{background:var(--terra);color:#f2e8d9;}
.btn-p:hover{background:var(--terra2);}
.btn-g{background:none;border:1px solid var(--brd2);color:var(--txt2);}
.btn-g:hover{border-color:var(--terra);color:var(--terra2);background:rgba(193,81,58,.07);}

/* CARDS / STATS */
.sgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px;}
.scard{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:18px 20px;border-top:3px solid transparent;}
.scard-lbl{font-size:10.5px;text-transform:uppercase;letter-spacing:1px;color:var(--txt3);margin-bottom:8px;font-weight:700;}
.scard-val{font-size:26px;font-weight:800;font-family:"Barlow Condensed",sans-serif;letter-spacing:-1px;}
.scard-sub{font-size:11px;color:var(--txt3);margin-top:4px;}
.sec-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.sec-ttl{font-family:"Barlow Condensed",sans-serif;font-size:16px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-bottom:24px;}
.pcard{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:20px;cursor:pointer;transition:all .15s;border-left:4px solid transparent;}
.pcard:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(61,26,26,.1);}
.pcard-ttl{font-family:"Barlow Condensed",sans-serif;font-size:15px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;margin-bottom:4px;}
.pcard-desc{font-size:12px;color:var(--txt2);margin-bottom:12px;line-height:1.4;}
.pcard-hdr{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px;}
.pbar{height:4px;background:var(--s3);border-radius:2px;overflow:hidden;margin:10px 0 12px;}
.pbar-fill{height:100%;border-radius:2px;}
.pcard-ftr{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--brd);}
.mavs{display:flex;}
.mav{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;border:2px solid var(--s1);margin-left:-5px;font-family:"Barlow Condensed",sans-serif;}
.mav:first-child{margin-left:0;}

/* BADGES */
.badge{font-size:10.5px;padding:2px 8px;border-radius:20px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;}
.b-terra{background:rgba(193,81,58,.12);color:#a83e2a;}
.b-cobalt{background:rgba(59,111,212,.12);color:#2d58b0;}
.b-amber{background:rgba(200,130,10,.12);color:#a06010;}
.b-green{background:rgba(58,106,42,.12);color:#3a6a2a;}
.b-gray{background:rgba(61,26,26,.08);color:#6b3a2a;}
.pri-alta{background:rgba(193,81,58,.12);color:#a83e2a;}
.pri-media{background:rgba(200,130,10,.12);color:#a06010;}
.pri-baja{background:rgba(59,111,212,.12);color:#2d58b0;}

/* TASKS */
.tsec{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);overflow:hidden;margin-bottom:14px;}
.tsec-hdr{padding:14px 20px;border-bottom:1px solid var(--brd);display:flex;align-items:center;justify-content:space-between;background:var(--s2);}
.tsec-ttl{font-family:"Barlow Condensed",sans-serif;font-size:14px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;display:flex;align-items:center;gap:8px;}
.tcnt{background:var(--s3);color:var(--txt2);font-size:11px;padding:2px 8px;border-radius:20px;font-family:"Barlow Condensed",sans-serif;font-weight:700;}
.trow{padding:11px 20px;border-bottom:1px solid var(--brd);display:flex;align-items:center;gap:10px;cursor:pointer;transition:background .1s;}
.trow:last-child{border-bottom:none;}
.trow:hover{background:var(--s2);}
.tchk{width:16px;height:16px;border-radius:50%;border:2px solid var(--brd2);flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .12s;}
.tchk.done{background:var(--green);border-color:var(--green);}
.tchk.done::after{content:"✓";color:#fff;font-size:9px;font-weight:700;}
.tname{flex:1;font-size:13px;}
.tname.done{text-decoration:line-through;color:var(--txt3);}
.tassign{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--txt2);min-width:100px;}
.adot{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;font-family:"Barlow Condensed",sans-serif;}
.tdate{font-size:11.5px;min-width:88px;text-align:right;font-family:"Barlow Condensed",sans-serif;font-weight:600;}
.tdate.overdue{color:#a83e2a;}
.tdate.ok{color:var(--txt3);}
.subtrow{padding:8px 20px 8px 52px;border-bottom:1px solid var(--brd);display:flex;align-items:center;gap:10px;background:rgba(61,26,26,.03);font-size:12.5px;}
.stog{font-size:11px;color:var(--txt3);min-width:74px;}
.detail-hdr{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:22px;margin-bottom:18px;border-left:5px solid var(--terra);}
.dtitle{font-family:"Barlow Condensed",sans-serif;font-size:24px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;}
.dmeta{display:flex;gap:20px;flex-wrap:wrap;margin-top:10px;}
.dmi{font-size:12.5px;color:var(--txt2);}
.bigbar{height:6px;background:var(--s3);border-radius:3px;overflow:hidden;margin-top:14px;}
.bigbar-fill{height:100%;border-radius:3px;}
.bc{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--txt3);margin-bottom:18px;}
.bc a{color:var(--txt2);cursor:pointer;font-weight:500;}
.bc a:hover{color:var(--terra2);}

/* TEAM */
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:14px;}
.tcard{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:20px;text-align:center;}
.tavatar{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;margin:0 auto 10px;font-family:"Barlow Condensed",sans-serif;position:relative;}
.tav-dot{position:absolute;bottom:1px;right:1px;width:11px;height:11px;border-radius:50%;border:2px solid var(--s1);}
.tname2{font-family:"Barlow Condensed",sans-serif;font-size:14px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;margin-bottom:2px;}
.trole{font-size:11px;color:var(--txt3);margin-bottom:8px;line-height:1.3;}
.tls{font-size:11px;margin-bottom:10px;font-weight:600;font-family:"Barlow Condensed",sans-serif;}
.tstats{display:flex;gap:6px;}
.tstat{background:var(--s2);border-radius:var(--r2);padding:7px 10px;flex:1;}
.tstat-v{font-size:16px;font-weight:800;font-family:"Barlow Condensed",sans-serif;}
.tstat-l{font-size:9.5px;color:var(--txt3);text-transform:uppercase;letter-spacing:.5px;}

/* MODAL */
.moverlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;pointer-events:none;transition:opacity .18s;}
.moverlay.open{opacity:1;pointer-events:all;}
.modal{background:var(--s1);border:1px solid var(--brd2);border-radius:16px;padding:28px;width:480px;max-height:88vh;overflow-y:auto;transform:translateY(8px);transition:transform .18s;box-shadow:0 16px 50px rgba(61,26,26,.18);}
.moverlay.open .modal{transform:translateY(0);}
.mttl{font-family:"Barlow Condensed",sans-serif;font-size:18px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;margin-bottom:20px;}
.fg{margin-bottom:14px;}
.flbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--txt2);margin-bottom:5px;display:block;}
.finput{width:100%;background:var(--s2);border:1px solid var(--brd2);border-radius:var(--r2);padding:10px 14px;color:var(--txt);font-size:13.5px;font-family:Barlow,sans-serif;outline:none;}
.finput:focus{border-color:var(--terra);}
.finput::placeholder{color:var(--txt3);}
.frow{display:flex;gap:10px;}
.frow .fg{flex:1;}
.mact{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;}
.copts{display:flex;gap:8px;}
.copt{width:24px;height:24px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .12s;}
.copt.sel{border-color:var(--vino);transform:scale(1.2);}

/* ADMIN */
.atabs{display:flex;gap:2px;background:var(--s2);border-radius:var(--r2);padding:3px;margin-bottom:18px;width:fit-content;}
.atab{padding:6px 18px;border-radius:4px;cursor:pointer;font-size:12px;font-weight:700;color:var(--txt3);border:none;background:none;font-family:Barlow,sans-serif;text-transform:uppercase;letter-spacing:.5px;}
.atab.active{background:var(--s3);color:var(--txt);}
.utable{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);overflow:hidden;}
.uth{display:grid;grid-template-columns:2fr 1.5fr .8fr .8fr .8fr 110px;padding:11px 20px;background:var(--s2);border-bottom:1px solid var(--brd);font-size:9.5px;text-transform:uppercase;letter-spacing:1px;color:var(--txt3);font-weight:700;}
.urow{display:grid;grid-template-columns:2fr 1.5fr .8fr .8fr .8fr 110px;padding:13px 20px;border-bottom:1px solid var(--brd);align-items:center;}
.urow:last-child{border-bottom:none;}
.urow:hover{background:var(--s2);}
.uacts{display:flex;gap:5px;}
.ibtn{background:none;border:1px solid var(--brd2);border-radius:4px;color:var(--txt3);cursor:pointer;padding:3px 8px;font-size:11.5px;}
.ibtn:hover{border-color:var(--terra);color:var(--terra2);}

/* GANTT */
.gmctrls{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap;}
.gmzoom{display:flex;gap:2px;background:var(--s2);border-radius:var(--r2);padding:3px;}
.gmzbtn{padding:5px 12px;border-radius:4px;cursor:pointer;font-size:11px;font-weight:700;color:var(--txt3);border:none;background:none;font-family:Barlow,sans-serif;text-transform:uppercase;letter-spacing:.4px;}
.gmzbtn.active{background:var(--s3);color:var(--txt);}
.gmboard{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;}
.gmhdr{display:flex;border-bottom:2px solid var(--brd2);background:var(--s2);min-height:48px;}
.gmlcol{width:210px;min-width:210px;padding:0 14px;display:flex;align-items:flex-end;padding-bottom:8px;border-right:1px solid var(--brd2);flex-shrink:0;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--txt3);font-weight:700;}
.gmtlhdr{flex:1;overflow:hidden;}
.gmcells{display:flex;height:100%;}
.gmch{flex-shrink:0;border-left:1px solid var(--brd);display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:8px;padding-left:8px;}
.gmch-lbl{font-size:10.5px;color:var(--txt3);font-weight:700;}
.gmch-sub{font-size:9.5px;color:var(--txt3);opacity:.6;margin-top:1px;}
.gmbody{overflow-y:auto;overflow-x:auto;max-height:460px;}
.gmbody::-webkit-scrollbar{width:4px;height:4px;}
.gmbody::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:2px;}
.gmrow{display:flex;border-bottom:1px solid var(--brd);min-height:44px;}
.gmrow.grp{background:var(--s2);min-height:32px;}
.gmrlbl{width:210px;min-width:210px;padding:0 12px;display:flex;align-items:center;gap:7px;border-right:1px solid var(--brd);flex-shrink:0;}
.gmrname{font-size:12.5px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.gmrname.grp{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--txt3);}
.gmtlrow{flex:1;position:relative;overflow:hidden;}
.gmcbg{position:absolute;top:0;bottom:0;border-left:1px solid var(--brd);pointer-events:none;}
.gmcbg.today{background:rgba(193,81,58,.05);border-left-color:var(--terra);border-left-width:2px;}
.gmbar{position:absolute;top:50%;transform:translateY(-50%);height:22px;border-radius:4px;cursor:grab;display:flex;align-items:center;overflow:hidden;user-select:none;}
.gmbar:hover{filter:brightness(1.1);}
.gmbar.done{opacity:.5;}
.gmbarprog{position:absolute;left:0;top:0;bottom:0;background:rgba(255,255,255,.2);pointer-events:none;}
.gmbarlbl{position:relative;z-index:1;padding:0 8px;font-size:10px;font-weight:700;color:rgba(255,255,255,.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gmdrag{position:absolute;top:0;bottom:0;width:7px;cursor:ew-resize;z-index:2;}
.gmdrag:hover{background:rgba(255,255,255,.2);}
.gmtoday{position:absolute;top:0;bottom:0;width:2px;background:var(--terra);pointer-events:none;z-index:5;}
.gmaddrow{display:flex;align-items:center;gap:7px;padding:9px 12px;color:var(--txt3);cursor:pointer;font-size:12px;border-top:1px solid var(--brd);}
.gmaddrow:hover{color:var(--terra2);background:rgba(193,81,58,.05);}
.gmtt{position:fixed;z-index:999;background:var(--vino);color:#f2e8d9;border-radius:8px;padding:10px 14px;font-size:12px;pointer-events:none;display:none;box-shadow:0 4px 20px rgba(0,0,0,.4);}
.gmtt.show{display:block;}
.gmtt-t{font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:13px;margin-bottom:5px;}
.gmtt-r{color:#c8a898;margin-bottom:2px;}

/* INDICATORS */
.igrid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}

/* CHAT */
.chatlay{display:flex;height:100%;margin:-24px;}
.chatcols{width:215px;min-width:215px;border-right:1px solid var(--brd);display:flex;flex-direction:column;background:var(--s1);}
.chatcol-hdr{padding:12px 14px;border-bottom:1px solid var(--brd);font-family:"Barlow Condensed",sans-serif;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--txt3);}
.chatbtns{padding:6px 8px;display:flex;gap:5px;border-bottom:1px solid var(--brd);}
.chatchi{display:flex;align-items:center;gap:7px;padding:8px 12px;cursor:pointer;color:var(--txt2);font-size:12.5px;border-left:3px solid transparent;}
.chatchi:hover{background:var(--s2);}
.chatchi.active{background:rgba(193,81,58,.08);color:var(--terra2);border-left-color:var(--terra);}
.chatcdot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.chatmain{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.chatmhdr{padding:13px 20px;border-bottom:1px solid var(--brd);background:var(--s2);display:flex;align-items:center;gap:10px;}
.chatmhdr-name{font-family:"Barlow Condensed",sans-serif;font-size:15px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;}
.chatmsgs{flex:1;overflow-y:auto;padding:18px 20px;display:flex;flex-direction:column;gap:14px;}
.chatmsgs::-webkit-scrollbar{width:4px;}
.chatmsgs::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:2px;}
.chatmsg{display:flex;gap:10px;align-items:flex-start;}
.chatmsg.mine{flex-direction:row-reverse;}
.cmav{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;font-family:"Barlow Condensed",sans-serif;}
.cmbody{max-width:65%;}
.chatmsg.mine .cmbody{align-items:flex-end;display:flex;flex-direction:column;}
.cmmeta{display:flex;align-items:center;gap:6px;margin-bottom:4px;}
.chatmsg.mine .cmmeta{flex-direction:row-reverse;}
.cmname{font-size:11.5px;font-weight:600;color:var(--txt2);}
.cmtime{font-size:10.5px;color:var(--txt3);}
.cmbubble{background:var(--s2);border:1px solid var(--brd);border-radius:10px;border-top-left-radius:2px;padding:9px 13px;font-size:13px;line-height:1.5;word-break:break-word;}
.chatmsg.mine .cmbubble{background:var(--terra);color:#f2e8d9;border:none;border-radius:10px;border-top-right-radius:2px;}
.chatinp{padding:12px 18px;border-top:1px solid var(--brd);display:flex;gap:8px;align-items:flex-end;}
.chatinput{flex:1;background:var(--s2);border:1px solid var(--brd2);border-radius:10px;padding:10px 14px;color:var(--txt);font-size:13px;font-family:Barlow,sans-serif;outline:none;resize:none;min-height:40px;max-height:100px;}
.chatinput:focus{border-color:var(--terra);}
.chatinput::placeholder{color:var(--txt3);}
.chatsend{width:40px;height:40px;background:var(--terra);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:15px;color:#f2e8d9;}
.chatsend:hover{background:var(--terra2);}

/* PROFILE */
.phdr{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:26px;margin-bottom:16px;display:flex;align-items:center;gap:22px;border-left:5px solid var(--terra);}
.pav{width:68px;height:68px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;flex-shrink:0;font-family:"Barlow Condensed",sans-serif;}
.pname{font-family:"Barlow Condensed",sans-serif;font-size:22px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;margin-bottom:3px;}
.psec{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:22px;margin-bottom:14px;}
.psec-t{font-family:"Barlow Condensed",sans-serif;font-size:13px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--brd);}
.pfield{display:grid;grid-template-columns:150px 1fr;align-items:center;padding:9px 0;border-bottom:1px solid var(--brd);}
.pfield:last-child{border-bottom:none;}
.pflbl{font-size:10.5px;color:var(--txt3);font-weight:700;text-transform:uppercase;letter-spacing:.4px;}
.pwdform{display:flex;flex-direction:column;gap:8px;}
.pwdrow{display:flex;gap:8px;}
.empty{text-align:center;padding:50px 20px;color:var(--txt3);}

/* MODULE SELECTOR */
#module-sel{display:none;min-height:100vh;background:var(--vino);align-items:center;justify-content:center;flex-direction:column;gap:20px;padding:24px 16px;overflow-y:auto;}
.mod-welcome{text-align:center;color:#f2e8d9;margin-bottom:4px;}
.mod-welcome .pw{font-family:"Barlow Condensed",sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#c8a898;margin-bottom:4px;}
.mod-welcome .pn{font-family:"Barlow Condensed",sans-serif;font-size:22px;font-weight:800;letter-spacing:1px;}
.mod-welcome .pp{font-size:12px;color:#c8a898;margin-top:2px;}
.mod-grid{display:grid;grid-template-columns:repeat(3,200px);gap:14px;justify-content:center;max-width:660px;}
.mod-card{background:#4a1f1f;border:1px solid rgba(193,81,58,.3);border-radius:14px;padding:18px 20px;cursor:pointer;text-align:center;transition:all .18s;position:relative;overflow:hidden;}
.mod-card:hover{background:#5a2a2a;border-color:var(--terra);transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,0,0,.4);}
.mod-card .mc-icon{font-size:22px;margin-bottom:6px;}
.mod-card .mc-name{font-family:"Barlow Condensed",sans-serif;font-size:15px;font-weight:800;letter-spacing:1px;color:#f2e8d9;text-transform:uppercase;margin-bottom:3px;}
.mod-card .mc-desc{font-size:10.5px;color:#c8a898;line-height:1.3;}
.mod-badge{position:absolute;top:10px;right:10px;background:var(--terra);color:#f2e8d9;font-size:9px;font-weight:700;padding:2px 7px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;}
.mod-logout{color:#7a5040;font-size:12px;cursor:pointer;text-decoration:underline;}
.mod-logout:hover{color:#c8a898;}

/* MODULE INDICATOR IN TOPBAR */
.mod-pill{display:flex;align-items:center;gap:6px;background:var(--s2);border:1px solid var(--brd);border-radius:20px;padding:4px 12px;font-size:11.5px;font-weight:700;cursor:pointer;color:var(--txt2);}
.mod-pill:hover{border-color:var(--terra);color:var(--terra2);}
.mod-pill-dot{width:7px;height:7px;border-radius:50%;}

/* TASK DETAIL */
.task-detail{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);overflow:hidden;margin-bottom:14px;}
.td-hdr{padding:16px 20px;background:var(--s2);border-bottom:1px solid var(--brd);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.td-title{font-family:"Barlow Condensed",sans-serif;font-size:18px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;flex:1;}
.td-done-btn{display:flex;align-items:center;gap:7px;padding:7px 14px;border-radius:var(--r2);border:2px solid var(--brd2);background:none;cursor:pointer;font-size:12px;font-weight:700;font-family:Barlow,sans-serif;color:var(--txt2);transition:all .15s;white-space:nowrap;}
.td-done-btn.done{background:var(--green);border-color:var(--green);color:#fff;}
.td-done-btn:hover:not(.done){border-color:var(--green);color:var(--green);}
.td-body{padding:20px;}
.td-meta{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--brd);}
.td-mi{font-size:12.5px;color:var(--txt2);}
.td-mi span{color:var(--txt3);font-size:11px;display:block;margin-bottom:2px;text-transform:uppercase;letter-spacing:.5px;font-weight:700;}
.td-desc{font-size:13.5px;line-height:1.6;color:var(--txt);margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--brd);}
.td-desc-empty{color:var(--txt3);font-size:13px;font-style:italic;}
.td-section{margin-bottom:18px;}
.td-sec-lbl{font-family:"Barlow Condensed",sans-serif;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--txt3);margin-bottom:10px;}
.file-area{border:2px dashed var(--brd2);border-radius:var(--r2);padding:20px;text-align:center;cursor:pointer;transition:all .15s;background:var(--s2);}
.file-area:hover{border-color:var(--terra);background:rgba(193,81,58,.05);}
.file-area-txt{font-size:13px;color:var(--txt3);}
.file-area-txt strong{color:var(--terra);cursor:pointer;}
.file-previews{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
.file-chip{display:flex;align-items:center;gap:6px;background:var(--s2);border:1px solid var(--brd2);border-radius:6px;padding:6px 10px;font-size:12px;}
.file-chip-icon{font-size:14px;}
.file-chip-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--txt2);}
.file-chip-rm{color:var(--txt3);cursor:pointer;font-size:12px;margin-left:2px;}
.file-chip-rm:hover{color:var(--terra);}
.file-img-preview{width:60px;height:60px;object-fit:cover;border-radius:6px;border:1px solid var(--brd);}
.comment-box{display:flex;gap:10px;margin-bottom:14px;}
.comment-input{flex:1;background:var(--s2);border:1px solid var(--brd2);border-radius:var(--r2);padding:10px 14px;font-size:13px;font-family:Barlow,sans-serif;color:var(--txt);outline:none;resize:none;min-height:38px;}
.comment-input:focus{border-color:var(--terra);}
.comment-send{padding:8px 16px;background:var(--terra);color:#f2e8d9;border:none;border-radius:var(--r2);font-size:12px;font-weight:700;cursor:pointer;font-family:Barlow,sans-serif;align-self:flex-end;}
.comment-send:hover{background:var(--terra2);}
.comment-item{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--brd);}
.comment-item:last-child{border-bottom:none;}
.comment-body{flex:1;}
.comment-meta{display:flex;align-items:center;gap:8px;margin-bottom:5px;}
.comment-name{font-size:12.5px;font-weight:600;}
.comment-date{font-size:11px;color:var(--txt3);}
.comment-txt{font-size:13px;line-height:1.5;color:var(--txt2);}

/* LOCKED MODULE CARD */
.mod-card-locked{opacity:.5;cursor:not-allowed!important;}
.mod-card-locked:hover{transform:none!important;box-shadow:none!important;background:#4a1f1f!important;border-color:rgba(193,81,58,.3)!important;}


/* old pac-tab */
.pac-tab{padding:6px 14px;border-radius:4px 4px 0 0;cursor:pointer;font-size:11.5px;font-weight:700;color:var(--txt3);border:none;border-bottom:3px solid transparent;background:none;font-family:Barlow,sans-serif;text-transform:uppercase;letter-spacing:.3px;transition:all .12s;white-space:nowrap;}
.pac-tab:hover{color:var(--terra2);background:rgba(193,81,58,.07);}
.pac-tab.active{color:var(--terra2);background:rgba(193,81,58,.08);}


/* ═══ BOARD / KANBAN SYSTEM ═══ */
.proj-view-toggle{display:flex;gap:2px;background:var(--s2);border-radius:var(--r2);padding:3px;}
.pvt-btn{padding:5px 12px;border-radius:4px;cursor:pointer;font-size:11.5px;font-weight:700;color:var(--txt3);border:none;background:none;font-family:Barlow,sans-serif;transition:all .12s;}
.pvt-btn.active{background:var(--s3);color:var(--txt);}

/* Board layout */
.board-wrap{display:flex;gap:14px;padding:4px 0 24px;overflow-x:auto;align-items:flex-start;min-height:400px;}
.board-wrap::-webkit-scrollbar{height:5px;}
.board-wrap::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:3px;}

/* Column */
.board-col{background:var(--s2);border-radius:var(--r);border:1px solid var(--brd);min-width:270px;max-width:270px;display:flex;flex-direction:column;max-height:calc(100vh - 220px);}
.board-col-hdr{padding:12px 14px 10px;border-bottom:1px solid var(--brd);flex-shrink:0;}
.board-col-title{display:flex;align-items:center;gap:8px;}
.semaforo{width:11px;height:11px;border-radius:50%;flex-shrink:0;transition:background .3s;}
.semaforo.red{background:#ef5350;}
.semaforo.yellow{background:#ffb300;}
.semaforo.green{background:#43a047;}
.col-name{font-family:"Barlow Condensed",sans-serif;font-size:14px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.col-count{font-size:11px;color:var(--txt3);font-weight:600;font-family:"Barlow Condensed",sans-serif;}
.col-type-badge{font-size:9px;padding:2px 7px;border-radius:20px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;}
.col-type-d{background:rgba(59,111,212,.12);color:#2d58b0;}
.col-type-r{background:rgba(139,74,138,.12);color:#6a1b9a;}
.col-type-b{background:rgba(193,81,58,.12);color:#a83e2a;}
.col-actions{display:flex;gap:4px;margin-top:6px;}
.col-act-btn{background:none;border:1px solid var(--brd);border-radius:4px;padding:3px 8px;font-size:10px;color:var(--txt3);cursor:pointer;font-family:Barlow,sans-serif;}
.col-act-btn:hover{border-color:var(--terra);color:var(--terra2);}

/* Cards */
.board-cards{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:8px;}
.board-cards::-webkit-scrollbar{width:3px;}
.board-cards::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:2px;}
.board-card{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r2);padding:12px 14px;cursor:pointer;transition:all .15s;position:relative;}
.board-card:hover{box-shadow:0 3px 12px rgba(61,26,26,.1);transform:translateY(-1px);border-color:var(--brd2);}
.board-card.done{opacity:.6;}
.board-card.done .bc-name{text-decoration:line-through;color:var(--txt3);}
.bc-name{font-size:13px;font-weight:600;color:var(--txt);margin-bottom:8px;line-height:1.3;}
.bc-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.bc-avatar{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;font-family:"Barlow Condensed",sans-serif;flex-shrink:0;}
.bc-date{font-size:11px;color:var(--txt3);font-family:"Barlow Condensed",sans-serif;font-weight:600;}
.bc-date.overdue{color:#a83e2a;font-weight:700;}
.bc-check{position:absolute;top:10px;right:10px;width:16px;height:16px;border-radius:50%;border:2px solid var(--brd2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s;flex-shrink:0;}
.bc-check.done{background:var(--green);border-color:var(--green);}
.bc-check.done::after{content:"✓";color:#fff;font-size:9px;font-weight:700;}
.bc-checklist-bar{margin-top:8px;}
.bc-cl-track{height:3px;background:var(--s3);border-radius:2px;overflow:hidden;}
.bc-cl-fill{height:100%;border-radius:2px;background:var(--green);transition:width .3s;}
.bc-cl-label{font-size:10px;color:var(--txt3);margin-top:2px;}
.bc-add-btn{display:flex;align-items:center;gap:6px;padding:8px;color:var(--txt3);cursor:pointer;font-size:12px;border-radius:var(--r2);transition:all .12s;margin:0 8px 8px;}
.bc-add-btn:hover{background:rgba(193,81,58,.08);color:var(--terra2);}

/* Add column button */
.board-add-col{min-width:220px;background:rgba(193,81,58,.06);border:2px dashed var(--brd2);border-radius:var(--r);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:20px;transition:all .15s;align-self:flex-start;margin-top:0;}
.board-add-col:hover{border-color:var(--terra);background:rgba(193,81,58,.1);color:var(--terra2);}

/* LIST VIEW */
.list-view{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);overflow:hidden;}
.list-col-section{border-bottom:2px solid var(--brd);}
.list-col-hdr{display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--s2);cursor:pointer;border-bottom:1px solid var(--brd);}
.list-col-hdr:hover{background:var(--s3);}
.list-row{display:flex;align-items:center;gap:10px;padding:9px 16px 9px 36px;border-bottom:1px solid var(--brd);cursor:pointer;transition:background .1s;}
.list-row:hover{background:var(--s2);}
.list-row.done .lr-name{text-decoration:line-through;color:var(--txt3);}
.lr-name{flex:1;font-size:13px;color:var(--txt);}
.lr-assign{display:flex;align-items:center;gap:5px;min-width:110px;font-size:12px;color:var(--txt2);}
.lr-date{font-size:11.5px;min-width:90px;font-family:"Barlow Condensed",sans-serif;font-weight:600;color:var(--txt3);}
.lr-date.overdue{color:#a83e2a;}

/* TASK DETAIL MODAL (full panel) */
.td-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:500;display:flex;align-items:stretch;justify-content:flex-end;}
.td-panel{background:var(--s1);width:560px;max-width:95vw;height:100vh;overflow-y:auto;display:flex;flex-direction:column;box-shadow:-8px 0 32px rgba(61,26,26,.18);}
.td-panel::-webkit-scrollbar{width:4px;}
.td-panel::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:2px;}
.td-panel-hdr{padding:18px 20px 14px;border-bottom:1px solid var(--brd);display:flex;align-items:flex-start;gap:12px;flex-shrink:0;position:sticky;top:0;background:var(--s1);z-index:5;}
.td-panel-title{flex:1;font-family:"Barlow Condensed",sans-serif;font-size:20px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;line-height:1.2;outline:none;border:none;background:transparent;color:var(--txt);font-family:"Barlow Condensed",sans-serif;}
.td-panel-title:focus{border-bottom:2px solid var(--terra);}
.td-close{width:32px;height:32px;border-radius:50%;border:none;background:none;cursor:pointer;color:var(--txt3);font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.td-close:hover{background:var(--s2);color:var(--txt);}
.td-done-toggle{padding:7px 16px;border-radius:var(--r2);border:2px solid var(--brd2);background:none;cursor:pointer;font-size:12px;font-weight:700;font-family:Barlow,sans-serif;color:var(--txt2);transition:all .15s;white-space:nowrap;flex-shrink:0;}
.td-done-toggle.done{background:var(--green);border-color:var(--green);color:#fff;}
.td-done-toggle:hover:not(.done){border-color:var(--green);color:var(--green);}
.td-panel-body{padding:20px;flex:1;}
.td-field{display:grid;grid-template-columns:130px 1fr;align-items:start;padding:10px 0;border-bottom:1px solid var(--brd);}
.td-field:last-of-type{border-bottom:none;}
.td-flbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--txt3);padding-top:2px;}
.td-fval{font-size:13.5px;color:var(--txt);}
.td-finput{background:var(--s2);border:1px solid var(--brd2);border-radius:var(--r2);padding:8px 12px;font-size:13px;font-family:Barlow,sans-serif;color:var(--txt);outline:none;width:100%;}
.td-finput:focus{border-color:var(--terra);}
.td-finput::placeholder{color:var(--txt3);}
.td-section-lbl{font-family:"Barlow Condensed",sans-serif;font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--txt3);margin:18px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--brd);}
/* Checklist */
.cl-item{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid rgba(61,26,26,.06);}
.cl-cb{width:16px;height:16px;border-radius:3px;border:2px solid var(--brd2);cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .12s;}
.cl-cb.checked{background:var(--green);border-color:var(--green);}
.cl-cb.checked::after{content:"✓";color:#fff;font-size:9px;font-weight:700;}
.cl-text{flex:1;font-size:13px;color:var(--txt);}
.cl-text.checked{text-decoration:line-through;color:var(--txt3);}
.cl-add{display:flex;gap:8px;margin-top:8px;}
.cl-add-inp{flex:1;background:var(--s2);border:1px solid var(--brd2);border-radius:var(--r2);padding:7px 10px;font-size:12.5px;font-family:Barlow,sans-serif;color:var(--txt);outline:none;}
.cl-add-inp:focus{border-color:var(--terra);}
/* Comments */
.comment-thread{display:flex;flex-direction:column;gap:10px;margin-bottom:14px;}
.ct-item{display:flex;gap:10px;}
.ct-body{flex:1;background:var(--s2);border-radius:0 var(--r2) var(--r2) var(--r2);padding:10px 12px;}
.ct-meta{display:flex;align-items:center;gap:8px;margin-bottom:4px;}
.ct-name{font-size:12px;font-weight:700;color:var(--txt2);}
.ct-time{font-size:10.5px;color:var(--txt3);}
.ct-txt{font-size:13px;color:var(--txt);line-height:1.5;}
.ct-inp-wrap{display:flex;gap:8px;align-items:flex-end;}
.ct-inp{flex:1;background:var(--s2);border:1px solid var(--brd2);border-radius:var(--r2);padding:9px 12px;font-size:13px;font-family:Barlow,sans-serif;color:var(--txt);outline:none;resize:none;min-height:36px;}
.ct-inp:focus{border-color:var(--terra);}
.ct-send{padding:8px 14px;background:var(--terra);color:#f2e8d9;border:none;border-radius:var(--r2);font-size:12px;font-weight:700;cursor:pointer;font-family:Barlow,sans-serif;white-space:nowrap;}
.ct-send:hover{background:var(--terra2);}
/* File chips */
.td-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.td-file-chip{display:flex;align-items:center;gap:6px;background:var(--s2);border:1px solid var(--brd2);border-radius:6px;padding:6px 10px;font-size:12px;cursor:pointer;}
.td-file-chip:hover{border-color:var(--terra);}
.td-fc-img{width:36px;height:36px;object-fit:cover;border-radius:4px;}
.td-fc-rm{color:var(--txt3);cursor:pointer;margin-left:4px;font-size:11px;}
.td-fc-rm:hover{color:#a83e2a;}
.td-file-drop{border:2px dashed var(--brd2);border-radius:var(--r2);padding:16px;text-align:center;cursor:pointer;transition:all .15s;margin-top:8px;}
.td-file-drop:hover{border-color:var(--terra);background:rgba(193,81,58,.04);}
.td-file-drop-txt{font-size:12.5px;color:var(--txt3);}
.td-file-drop-txt strong{color:var(--terra);}

/* PAC sticky left column */
.pac-left-cell{border-left:none;}
#pac-left{box-shadow:2px 0 8px rgba(61,26,26,.1);}

/* PAC state selects */
.pac-sel{font-family:Barlow,sans-serif;cursor:pointer;outline:none;padding:2px 4px;border-radius:4px;}
.pac-sel:focus{outline:none;box-shadow:0 0 0 2px rgba(193,81,58,.3);}

@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700;800&family=Barlow+Condensed:wght@600;700;800&display=swap');
*{box-sizing:border-box;margin:0;padding:0;}
:root{
  --bg:#ede3d4;--s1:#f2e8d9;--s2:#e8d8c4;--s3:#deccb4;
  --brd:rgba(61,26,26,.13);--brd2:rgba(61,26,26,.22);
  --terra:#c1513a;--terra2:#a83e2a;--vino:#3d1a1a;
  --cobalt:#3b6fd4;--cobalt2:#2d58b0;
  --green:#3a6a2a;--amber:#c8820a;
  --txt:#3d1a1a;--txt2:#6b3a2a;--txt3:#9a7060;
  --r:10px;--r2:6px;
}
body{font-family:Barlow,sans-serif;background:var(--bg);color:var(--txt);height:100vh;overflow:hidden;}

/* AUTH */
#auth{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--vino);}
.acard{background:#4a1f1f;border:1px solid rgba(193,81,58,.35);border-radius:18px;padding:44px 48px;width:420px;box-shadow:0 20px 60px rgba(0,0,0,.5);}
.abrand{text-align:center;margin-bottom:32px;}
.aplogo{width:52px;height:52px;background:var(--terra);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;box-shadow:0 4px 16px rgba(193,81,58,.4);}
.aplogo span{font-family:"Barlow Condensed",sans-serif;font-size:26px;font-weight:800;color:#f2e8d9;}
.awordmark{font-family:"Barlow Condensed",sans-serif;font-size:24px;font-weight:800;letter-spacing:3px;color:#f2e8d9;}
.atagline{font-size:11px;letter-spacing:2px;color:#c1513a;text-transform:uppercase;margin-top:3px;}
.alabel{font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#c8a898;margin-bottom:6px;display:block;}
.ainput{width:100%;background:#3d1a1a;border:1px solid rgba(193,81,58,.35);border-radius:var(--r2);padding:12px 16px;color:#f2e8d9;font-size:14px;font-family:Barlow,sans-serif;outline:none;margin-bottom:14px;}
.ainput:focus{border-color:var(--terra);}
.ainput::placeholder{color:#7a5040;}
.aerr{background:rgba(193,81,58,.2);border:1px solid rgba(193,81,58,.4);border-radius:var(--r2);padding:10px 14px;color:#f87171;font-size:13px;margin-bottom:14px;display:none;}
.aerr.show{display:block;}
.abtn{width:100%;padding:13px;background:var(--terra);color:#f2e8d9;border:none;border-radius:var(--r2);font-size:14px;font-weight:700;letter-spacing:.5px;cursor:pointer;font-family:Barlow,sans-serif;}
.abtn:hover{background:var(--terra2);}
.afooter{text-align:center;font-size:12px;color:#7a5040;margin-top:20px;padding-top:16px;border-top:1px solid rgba(193,81,58,.2);}

/* APP */
#app{display:none;height:100vh;flex-direction:row;}
.sidebar{width:240px;min-width:240px;background:var(--s1);border-right:1px solid var(--brd);display:flex;flex-direction:column;height:100vh;overflow:hidden;}
.slogo{padding:18px 16px 14px;border-bottom:1px solid var(--brd);display:flex;align-items:center;gap:10px;}
.slogo-p{width:32px;height:32px;background:var(--terra);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.slogo-p span{font-family:"Barlow Condensed",sans-serif;font-size:17px;font-weight:800;color:#f2e8d9;}
.slogo-txt .wm{font-family:"Barlow Condensed",sans-serif;font-size:16px;font-weight:800;letter-spacing:2px;color:var(--txt);}
.slogo-txt .tg{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--txt3);}
.suser{display:flex;align-items:center;gap:9px;padding:10px 12px;border-bottom:1px solid var(--brd);cursor:pointer;}
.suser:hover{background:var(--s2);}
.savatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;font-family:"Barlow Condensed",sans-serif;}
.suser-info{flex:1;overflow:hidden;}
.suser-name{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.suser-pos{font-size:10.5px;color:var(--txt3);}
.slogout{background:none;border:none;cursor:pointer;color:var(--txt3);font-size:13px;padding:4px;border-radius:4px;}
.slogout:hover{color:var(--terra);}
.snav{padding:10px 8px 4px;}
.snav-lbl{font-size:9.5px;text-transform:uppercase;letter-spacing:1.5px;color:var(--txt3);padding:0 8px;margin-bottom:3px;font-weight:700;}
.nitem{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:var(--r2);cursor:pointer;color:var(--txt2);font-size:13px;font-weight:500;border-left:3px solid transparent;transition:all .12s;}
.nitem:hover{background:var(--s2);}
.nitem.active{background:rgba(193,81,58,.1);color:var(--terra2);border-left-color:var(--terra);}
.sproj{flex:1;overflow-y:auto;padding:8px 8px 4px;}
.pitem{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:var(--r2);cursor:pointer;color:var(--txt2);font-size:11px;transition:all .12s;text-transform:none;font-family:Barlow,sans-serif;}
.pitem:hover{background:var(--s2);}
.pitem.active{background:rgba(193,81,58,.1);color:var(--terra2);}
.pdot{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
.pname{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.3;text-transform:none;font-weight:500;font-family:Barlow,sans-serif;letter-spacing:0;}
.ppct{font-size:10px;color:var(--txt3);font-family:Barlow,sans-serif;font-weight:500;}
.sbot{padding:10px 8px;border-top:1px solid var(--brd);}
.addpbtn{width:100%;display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:var(--r2);background:none;border:1px dashed var(--brd2);color:var(--txt3);cursor:pointer;font-size:12.5px;font-family:Barlow,sans-serif;transition:all .12s;}
.addpbtn:hover{border-color:var(--terra);color:var(--terra2);background:rgba(193,81,58,.07);}

/* MAIN */
.main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;}
.topbar{padding:14px 24px;border-bottom:1px solid var(--brd);display:flex;align-items:center;gap:14px;background:var(--s1);flex-shrink:0;}
.tb-title{font-family:"Barlow Condensed",sans-serif;font-size:20px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;}
.tb-sub{font-size:11.5px;color:var(--txt3);margin-top:1px;}
.tb-right{margin-left:auto;display:flex;align-items:center;gap:8px;}
.vtabs{display:flex;gap:2px;background:var(--s2);border-radius:var(--r2);padding:3px;}
.vtab{padding:5px 14px;border-radius:4px;cursor:pointer;font-size:11.5px;font-weight:700;color:var(--txt3);border:none;background:none;font-family:Barlow,sans-serif;text-transform:uppercase;letter-spacing:.5px;transition:all .12s;}
.vtab.active{background:var(--s3);color:var(--txt);}
.content{flex:1;overflow-y:auto;padding:24px;}
.content::-webkit-scrollbar{width:5px;}
.content::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:3px;}

/* BUTTONS */
.btn{padding:8px 16px;border-radius:var(--r2);font-size:12px;font-weight:700;cursor:pointer;border:none;font-family:Barlow,sans-serif;text-transform:uppercase;letter-spacing:.4px;transition:all .12s;}
.btn-p{background:var(--terra);color:#f2e8d9;}
.btn-p:hover{background:var(--terra2);}
.btn-g{background:none;border:1px solid var(--brd2);color:var(--txt2);}
.btn-g:hover{border-color:var(--terra);color:var(--terra2);background:rgba(193,81,58,.07);}

/* CARDS / STATS */
.sgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px;}
.scard{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:18px 20px;border-top:3px solid transparent;}
.scard-lbl{font-size:10.5px;text-transform:uppercase;letter-spacing:1px;color:var(--txt3);margin-bottom:8px;font-weight:700;}
.scard-val{font-size:26px;font-weight:800;font-family:"Barlow Condensed",sans-serif;letter-spacing:-1px;}
.scard-sub{font-size:11px;color:var(--txt3);margin-top:4px;}
.sec-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.sec-ttl{font-family:"Barlow Condensed",sans-serif;font-size:16px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-bottom:24px;}
.pcard{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:20px;cursor:pointer;transition:all .15s;border-left:4px solid transparent;}
.pcard:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(61,26,26,.1);}
.pcard-ttl{font-family:"Barlow Condensed",sans-serif;font-size:15px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;margin-bottom:4px;}
.pcard-desc{font-size:12px;color:var(--txt2);margin-bottom:12px;line-height:1.4;}
.pcard-hdr{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px;}
.pbar{height:4px;background:var(--s3);border-radius:2px;overflow:hidden;margin:10px 0 12px;}
.pbar-fill{height:100%;border-radius:2px;}
.pcard-ftr{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid var(--brd);}
.mavs{display:flex;}
.mav{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;border:2px solid var(--s1);margin-left:-5px;font-family:"Barlow Condensed",sans-serif;}
.mav:first-child{margin-left:0;}

/* BADGES */
.badge{font-size:10.5px;padding:2px 8px;border-radius:20px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;}
.b-terra{background:rgba(193,81,58,.12);color:#a83e2a;}
.b-cobalt{background:rgba(59,111,212,.12);color:#2d58b0;}
.b-amber{background:rgba(200,130,10,.12);color:#a06010;}
.b-green{background:rgba(58,106,42,.12);color:#3a6a2a;}
.b-gray{background:rgba(61,26,26,.08);color:#6b3a2a;}
.pri-alta{background:rgba(193,81,58,.12);color:#a83e2a;}
.pri-media{background:rgba(200,130,10,.12);color:#a06010;}
.pri-baja{background:rgba(59,111,212,.12);color:#2d58b0;}

/* TASKS */
.tsec{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);overflow:hidden;margin-bottom:14px;}
.tsec-hdr{padding:14px 20px;border-bottom:1px solid var(--brd);display:flex;align-items:center;justify-content:space-between;background:var(--s2);}
.tsec-ttl{font-family:"Barlow Condensed",sans-serif;font-size:14px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;display:flex;align-items:center;gap:8px;}
.tcnt{background:var(--s3);color:var(--txt2);font-size:11px;padding:2px 8px;border-radius:20px;font-family:"Barlow Condensed",sans-serif;font-weight:700;}
.trow{padding:11px 20px;border-bottom:1px solid var(--brd);display:flex;align-items:center;gap:10px;cursor:pointer;transition:background .1s;}
.trow:last-child{border-bottom:none;}
.trow:hover{background:var(--s2);}
.tchk{width:16px;height:16px;border-radius:50%;border:2px solid var(--brd2);flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .12s;}
.tchk.done{background:var(--green);border-color:var(--green);}
.tchk.done::after{content:"✓";color:#fff;font-size:9px;font-weight:700;}
.tname{flex:1;font-size:13px;}
.tname.done{text-decoration:line-through;color:var(--txt3);}
.tassign{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--txt2);min-width:100px;}
.adot{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;font-family:"Barlow Condensed",sans-serif;}
.tdate{font-size:11.5px;min-width:88px;text-align:right;font-family:"Barlow Condensed",sans-serif;font-weight:600;}
.tdate.overdue{color:#a83e2a;}
.tdate.ok{color:var(--txt3);}
.subtrow{padding:8px 20px 8px 52px;border-bottom:1px solid var(--brd);display:flex;align-items:center;gap:10px;background:rgba(61,26,26,.03);font-size:12.5px;}
.stog{font-size:11px;color:var(--txt3);min-width:74px;}
.detail-hdr{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:22px;margin-bottom:18px;border-left:5px solid var(--terra);}
.dtitle{font-family:"Barlow Condensed",sans-serif;font-size:24px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;}
.dmeta{display:flex;gap:20px;flex-wrap:wrap;margin-top:10px;}
.dmi{font-size:12.5px;color:var(--txt2);}
.bigbar{height:6px;background:var(--s3);border-radius:3px;overflow:hidden;margin-top:14px;}
.bigbar-fill{height:100%;border-radius:3px;}
.bc{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--txt3);margin-bottom:18px;}
.bc a{color:var(--txt2);cursor:pointer;font-weight:500;}
.bc a:hover{color:var(--terra2);}

/* TEAM */
.tgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:14px;}
.tcard{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:20px;text-align:center;}
.tavatar{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;margin:0 auto 10px;font-family:"Barlow Condensed",sans-serif;position:relative;}
.tav-dot{position:absolute;bottom:1px;right:1px;width:11px;height:11px;border-radius:50%;border:2px solid var(--s1);}
.tname2{font-family:"Barlow Condensed",sans-serif;font-size:14px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;margin-bottom:2px;}
.trole{font-size:11px;color:var(--txt3);margin-bottom:8px;line-height:1.3;}
.tls{font-size:11px;margin-bottom:10px;font-weight:600;font-family:"Barlow Condensed",sans-serif;}
.tstats{display:flex;gap:6px;}
.tstat{background:var(--s2);border-radius:var(--r2);padding:7px 10px;flex:1;}
.tstat-v{font-size:16px;font-weight:800;font-family:"Barlow Condensed",sans-serif;}
.tstat-l{font-size:9.5px;color:var(--txt3);text-transform:uppercase;letter-spacing:.5px;}

/* MODAL */
.moverlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;pointer-events:none;transition:opacity .18s;}
.moverlay.open{opacity:1;pointer-events:all;}
.modal{background:var(--s1);border:1px solid var(--brd2);border-radius:16px;padding:28px;width:480px;max-height:88vh;overflow-y:auto;transform:translateY(8px);transition:transform .18s;box-shadow:0 16px 50px rgba(61,26,26,.18);}
.moverlay.open .modal{transform:translateY(0);}
.mttl{font-family:"Barlow Condensed",sans-serif;font-size:18px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;margin-bottom:20px;}
.fg{margin-bottom:14px;}
.flbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--txt2);margin-bottom:5px;display:block;}
.finput{width:100%;background:var(--s2);border:1px solid var(--brd2);border-radius:var(--r2);padding:10px 14px;color:var(--txt);font-size:13.5px;font-family:Barlow,sans-serif;outline:none;}
.finput:focus{border-color:var(--terra);}
.finput::placeholder{color:var(--txt3);}
.frow{display:flex;gap:10px;}
.frow .fg{flex:1;}
.mact{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;}
.copts{display:flex;gap:8px;}
.copt{width:24px;height:24px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .12s;}
.copt.sel{border-color:var(--vino);transform:scale(1.2);}

/* ADMIN */
.atabs{display:flex;gap:2px;background:var(--s2);border-radius:var(--r2);padding:3px;margin-bottom:18px;width:fit-content;}
.atab{padding:6px 18px;border-radius:4px;cursor:pointer;font-size:12px;font-weight:700;color:var(--txt3);border:none;background:none;font-family:Barlow,sans-serif;text-transform:uppercase;letter-spacing:.5px;}
.atab.active{background:var(--s3);color:var(--txt);}
.utable{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);overflow:hidden;}
.uth{display:grid;grid-template-columns:2fr 1.5fr .8fr .8fr .8fr 110px;padding:11px 20px;background:var(--s2);border-bottom:1px solid var(--brd);font-size:9.5px;text-transform:uppercase;letter-spacing:1px;color:var(--txt3);font-weight:700;}
.urow{display:grid;grid-template-columns:2fr 1.5fr .8fr .8fr .8fr 110px;padding:13px 20px;border-bottom:1px solid var(--brd);align-items:center;}
.urow:last-child{border-bottom:none;}
.urow:hover{background:var(--s2);}
.uacts{display:flex;gap:5px;}
.ibtn{background:none;border:1px solid var(--brd2);border-radius:4px;color:var(--txt3);cursor:pointer;padding:3px 8px;font-size:11.5px;}
.ibtn:hover{border-color:var(--terra);color:var(--terra2);}

/* GANTT */
.gmctrls{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap;}
.gmzoom{display:flex;gap:2px;background:var(--s2);border-radius:var(--r2);padding:3px;}
.gmzbtn{padding:5px 12px;border-radius:4px;cursor:pointer;font-size:11px;font-weight:700;color:var(--txt3);border:none;background:none;font-family:Barlow,sans-serif;text-transform:uppercase;letter-spacing:.4px;}
.gmzbtn.active{background:var(--s3);color:var(--txt);}
.gmboard{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;}
.gmhdr{display:flex;border-bottom:2px solid var(--brd2);background:var(--s2);min-height:48px;}
.gmlcol{width:210px;min-width:210px;padding:0 14px;display:flex;align-items:flex-end;padding-bottom:8px;border-right:1px solid var(--brd2);flex-shrink:0;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--txt3);font-weight:700;}
.gmtlhdr{flex:1;overflow:hidden;}
.gmcells{display:flex;height:100%;}
.gmch{flex-shrink:0;border-left:1px solid var(--brd);display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:8px;padding-left:8px;}
.gmch-lbl{font-size:10.5px;color:var(--txt3);font-weight:700;}
.gmch-sub{font-size:9.5px;color:var(--txt3);opacity:.6;margin-top:1px;}
.gmbody{overflow-y:auto;overflow-x:auto;max-height:460px;}
.gmbody::-webkit-scrollbar{width:4px;height:4px;}
.gmbody::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:2px;}
.gmrow{display:flex;border-bottom:1px solid var(--brd);min-height:44px;}
.gmrow.grp{background:var(--s2);min-height:32px;}
.gmrlbl{width:210px;min-width:210px;padding:0 12px;display:flex;align-items:center;gap:7px;border-right:1px solid var(--brd);flex-shrink:0;}
.gmrname{font-size:12.5px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.gmrname.grp{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--txt3);}
.gmtlrow{flex:1;position:relative;overflow:hidden;}
.gmcbg{position:absolute;top:0;bottom:0;border-left:1px solid var(--brd);pointer-events:none;}
.gmcbg.today{background:rgba(193,81,58,.05);border-left-color:var(--terra);border-left-width:2px;}
.gmbar{position:absolute;top:50%;transform:translateY(-50%);height:22px;border-radius:4px;cursor:grab;display:flex;align-items:center;overflow:hidden;user-select:none;}
.gmbar:hover{filter:brightness(1.1);}
.gmbar.done{opacity:.5;}
.gmbarprog{position:absolute;left:0;top:0;bottom:0;background:rgba(255,255,255,.2);pointer-events:none;}
.gmbarlbl{position:relative;z-index:1;padding:0 8px;font-size:10px;font-weight:700;color:rgba(255,255,255,.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.gmdrag{position:absolute;top:0;bottom:0;width:7px;cursor:ew-resize;z-index:2;}
.gmdrag:hover{background:rgba(255,255,255,.2);}
.gmtoday{position:absolute;top:0;bottom:0;width:2px;background:var(--terra);pointer-events:none;z-index:5;}
.gmaddrow{display:flex;align-items:center;gap:7px;padding:9px 12px;color:var(--txt3);cursor:pointer;font-size:12px;border-top:1px solid var(--brd);}
.gmaddrow:hover{color:var(--terra2);background:rgba(193,81,58,.05);}
.gmtt{position:fixed;z-index:999;background:var(--vino);color:#f2e8d9;border-radius:8px;padding:10px 14px;font-size:12px;pointer-events:none;display:none;box-shadow:0 4px 20px rgba(0,0,0,.4);}
.gmtt.show{display:block;}
.gmtt-t{font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:13px;margin-bottom:5px;}
.gmtt-r{color:#c8a898;margin-bottom:2px;}

/* INDICATORS */
.igrid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}

/* CHAT */
.chatlay{display:flex;height:100%;margin:-24px;}
.chatcols{width:215px;min-width:215px;border-right:1px solid var(--brd);display:flex;flex-direction:column;background:var(--s1);}
.chatcol-hdr{padding:12px 14px;border-bottom:1px solid var(--brd);font-family:"Barlow Condensed",sans-serif;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--txt3);}
.chatbtns{padding:6px 8px;display:flex;gap:5px;border-bottom:1px solid var(--brd);}
.chatchi{display:flex;align-items:center;gap:7px;padding:8px 12px;cursor:pointer;color:var(--txt2);font-size:12.5px;border-left:3px solid transparent;}
.chatchi:hover{background:var(--s2);}
.chatchi.active{background:rgba(193,81,58,.08);color:var(--terra2);border-left-color:var(--terra);}
.chatcdot{width:7px;height:7px;border-radius:50%;flex-shrink:0;}
.chatmain{flex:1;display:flex;flex-direction:column;overflow:hidden;}
.chatmhdr{padding:13px 20px;border-bottom:1px solid var(--brd);background:var(--s2);display:flex;align-items:center;gap:10px;}
.chatmhdr-name{font-family:"Barlow Condensed",sans-serif;font-size:15px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;}
.chatmsgs{flex:1;overflow-y:auto;padding:18px 20px;display:flex;flex-direction:column;gap:14px;}
.chatmsgs::-webkit-scrollbar{width:4px;}
.chatmsgs::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:2px;}
.chatmsg{display:flex;gap:10px;align-items:flex-start;}
.chatmsg.mine{flex-direction:row-reverse;}
.cmav{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;font-family:"Barlow Condensed",sans-serif;}
.cmbody{max-width:65%;}
.chatmsg.mine .cmbody{align-items:flex-end;display:flex;flex-direction:column;}
.cmmeta{display:flex;align-items:center;gap:6px;margin-bottom:4px;}
.chatmsg.mine .cmmeta{flex-direction:row-reverse;}
.cmname{font-size:11.5px;font-weight:600;color:var(--txt2);}
.cmtime{font-size:10.5px;color:var(--txt3);}
.cmbubble{background:var(--s2);border:1px solid var(--brd);border-radius:10px;border-top-left-radius:2px;padding:9px 13px;font-size:13px;line-height:1.5;word-break:break-word;}
.chatmsg.mine .cmbubble{background:var(--terra);color:#f2e8d9;border:none;border-radius:10px;border-top-right-radius:2px;}
.chatinp{padding:12px 18px;border-top:1px solid var(--brd);display:flex;gap:8px;align-items:flex-end;}
.chatinput{flex:1;background:var(--s2);border:1px solid var(--brd2);border-radius:10px;padding:10px 14px;color:var(--txt);font-size:13px;font-family:Barlow,sans-serif;outline:none;resize:none;min-height:40px;max-height:100px;}
.chatinput:focus{border-color:var(--terra);}
.chatinput::placeholder{color:var(--txt3);}
.chatsend{width:40px;height:40px;background:var(--terra);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:15px;color:#f2e8d9;}
.chatsend:hover{background:var(--terra2);}

/* PROFILE */
.phdr{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:26px;margin-bottom:16px;display:flex;align-items:center;gap:22px;border-left:5px solid var(--terra);}
.pav{width:68px;height:68px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;flex-shrink:0;font-family:"Barlow Condensed",sans-serif;}
.pname{font-family:"Barlow Condensed",sans-serif;font-size:22px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;margin-bottom:3px;}
.psec{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);padding:22px;margin-bottom:14px;}
.psec-t{font-family:"Barlow Condensed",sans-serif;font-size:13px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--brd);}
.pfield{display:grid;grid-template-columns:150px 1fr;align-items:center;padding:9px 0;border-bottom:1px solid var(--brd);}
.pfield:last-child{border-bottom:none;}
.pflbl{font-size:10.5px;color:var(--txt3);font-weight:700;text-transform:uppercase;letter-spacing:.4px;}
.pwdform{display:flex;flex-direction:column;gap:8px;}
.pwdrow{display:flex;gap:8px;}
.empty{text-align:center;padding:50px 20px;color:var(--txt3);}

/* MODULE SELECTOR */
#module-sel{display:none;min-height:100vh;background:var(--vino);align-items:center;justify-content:center;flex-direction:column;gap:20px;padding:24px 16px;overflow-y:auto;}
.mod-welcome{text-align:center;color:#f2e8d9;margin-bottom:4px;}
.mod-welcome .pw{font-family:"Barlow Condensed",sans-serif;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#c8a898;margin-bottom:4px;}
.mod-welcome .pn{font-family:"Barlow Condensed",sans-serif;font-size:22px;font-weight:800;letter-spacing:1px;}
.mod-welcome .pp{font-size:12px;color:#c8a898;margin-top:2px;}
.mod-grid{display:grid;grid-template-columns:repeat(3,200px);gap:14px;justify-content:center;max-width:660px;}
.mod-card{background:#4a1f1f;border:1px solid rgba(193,81,58,.3);border-radius:14px;padding:18px 20px;cursor:pointer;text-align:center;transition:all .18s;position:relative;overflow:hidden;}
.mod-card:hover{background:#5a2a2a;border-color:var(--terra);transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,0,0,.4);}
.mod-card .mc-icon{font-size:22px;margin-bottom:6px;}
.mod-card .mc-name{font-family:"Barlow Condensed",sans-serif;font-size:15px;font-weight:800;letter-spacing:1px;color:#f2e8d9;text-transform:uppercase;margin-bottom:3px;}
.mod-card .mc-desc{font-size:10.5px;color:#c8a898;line-height:1.3;}
.mod-badge{position:absolute;top:10px;right:10px;background:var(--terra);color:#f2e8d9;font-size:9px;font-weight:700;padding:2px 7px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;}
.mod-logout{color:#7a5040;font-size:12px;cursor:pointer;text-decoration:underline;}
.mod-logout:hover{color:#c8a898;}

/* MODULE INDICATOR IN TOPBAR */
.mod-pill{display:flex;align-items:center;gap:6px;background:var(--s2);border:1px solid var(--brd);border-radius:20px;padding:4px 12px;font-size:11.5px;font-weight:700;cursor:pointer;color:var(--txt2);}
.mod-pill:hover{border-color:var(--terra);color:var(--terra2);}
.mod-pill-dot{width:7px;height:7px;border-radius:50%;}

/* TASK DETAIL */
.task-detail{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);overflow:hidden;margin-bottom:14px;}
.td-hdr{padding:16px 20px;background:var(--s2);border-bottom:1px solid var(--brd);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.td-title{font-family:"Barlow Condensed",sans-serif;font-size:18px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;flex:1;}
.td-done-btn{display:flex;align-items:center;gap:7px;padding:7px 14px;border-radius:var(--r2);border:2px solid var(--brd2);background:none;cursor:pointer;font-size:12px;font-weight:700;font-family:Barlow,sans-serif;color:var(--txt2);transition:all .15s;white-space:nowrap;}
.td-done-btn.done{background:var(--green);border-color:var(--green);color:#fff;}
.td-done-btn:hover:not(.done){border-color:var(--green);color:var(--green);}
.td-body{padding:20px;}
.td-meta{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--brd);}
.td-mi{font-size:12.5px;color:var(--txt2);}
.td-mi span{color:var(--txt3);font-size:11px;display:block;margin-bottom:2px;text-transform:uppercase;letter-spacing:.5px;font-weight:700;}
.td-desc{font-size:13.5px;line-height:1.6;color:var(--txt);margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--brd);}
.td-desc-empty{color:var(--txt3);font-size:13px;font-style:italic;}
.td-section{margin-bottom:18px;}
.td-sec-lbl{font-family:"Barlow Condensed",sans-serif;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--txt3);margin-bottom:10px;}
.file-area{border:2px dashed var(--brd2);border-radius:var(--r2);padding:20px;text-align:center;cursor:pointer;transition:all .15s;background:var(--s2);}
.file-area:hover{border-color:var(--terra);background:rgba(193,81,58,.05);}
.file-area-txt{font-size:13px;color:var(--txt3);}
.file-area-txt strong{color:var(--terra);cursor:pointer;}
.file-previews{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;}
.file-chip{display:flex;align-items:center;gap:6px;background:var(--s2);border:1px solid var(--brd2);border-radius:6px;padding:6px 10px;font-size:12px;}
.file-chip-icon{font-size:14px;}
.file-chip-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--txt2);}
.file-chip-rm{color:var(--txt3);cursor:pointer;font-size:12px;margin-left:2px;}
.file-chip-rm:hover{color:var(--terra);}
.file-img-preview{width:60px;height:60px;object-fit:cover;border-radius:6px;border:1px solid var(--brd);}
.comment-box{display:flex;gap:10px;margin-bottom:14px;}
.comment-input{flex:1;background:var(--s2);border:1px solid var(--brd2);border-radius:var(--r2);padding:10px 14px;font-size:13px;font-family:Barlow,sans-serif;color:var(--txt);outline:none;resize:none;min-height:38px;}
.comment-input:focus{border-color:var(--terra);}
.comment-send{padding:8px 16px;background:var(--terra);color:#f2e8d9;border:none;border-radius:var(--r2);font-size:12px;font-weight:700;cursor:pointer;font-family:Barlow,sans-serif;align-self:flex-end;}
.comment-send:hover{background:var(--terra2);}
.comment-item{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--brd);}
.comment-item:last-child{border-bottom:none;}
.comment-body{flex:1;}
.comment-meta{display:flex;align-items:center;gap:8px;margin-bottom:5px;}
.comment-name{font-size:12.5px;font-weight:600;}
.comment-date{font-size:11px;color:var(--txt3);}
.comment-txt{font-size:13px;line-height:1.5;color:var(--txt2);}

/* LOCKED MODULE CARD */
.mod-card-locked{opacity:.5;cursor:not-allowed!important;}
.mod-card-locked:hover{transform:none!important;box-shadow:none!important;background:#4a1f1f!important;border-color:rgba(193,81,58,.3)!important;}


/* old pac-tab */
.pac-tab{padding:6px 14px;border-radius:4px 4px 0 0;cursor:pointer;font-size:11.5px;font-weight:700;color:var(--txt3);border:none;border-bottom:3px solid transparent;background:none;font-family:Barlow,sans-serif;text-transform:uppercase;letter-spacing:.3px;transition:all .12s;white-space:nowrap;}
.pac-tab:hover{color:var(--terra2);background:rgba(193,81,58,.07);}
.pac-tab.active{color:var(--terra2);background:rgba(193,81,58,.08);}


/* ═══ BOARD / KANBAN SYSTEM ═══ */
.proj-view-toggle{display:flex;gap:2px;background:var(--s2);border-radius:var(--r2);padding:3px;}
.pvt-btn{padding:5px 12px;border-radius:4px;cursor:pointer;font-size:11.5px;font-weight:700;color:var(--txt3);border:none;background:none;font-family:Barlow,sans-serif;transition:all .12s;}
.pvt-btn.active{background:var(--s3);color:var(--txt);}

/* Board layout */
.board-wrap{display:flex;gap:14px;padding:4px 0 24px;overflow-x:auto;align-items:flex-start;min-height:400px;}
.board-wrap::-webkit-scrollbar{height:5px;}
.board-wrap::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:3px;}

/* Column */
.board-col{background:var(--s2);border-radius:var(--r);border:1px solid var(--brd);min-width:270px;max-width:270px;display:flex;flex-direction:column;max-height:calc(100vh - 220px);}
.board-col-hdr{padding:12px 14px 10px;border-bottom:1px solid var(--brd);flex-shrink:0;}
.board-col-title{display:flex;align-items:center;gap:8px;}
.semaforo{width:11px;height:11px;border-radius:50%;flex-shrink:0;transition:background .3s;}
.semaforo.red{background:#ef5350;}
.semaforo.yellow{background:#ffb300;}
.semaforo.green{background:#43a047;}
.col-name{font-family:"Barlow Condensed",sans-serif;font-size:14px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.col-count{font-size:11px;color:var(--txt3);font-weight:600;font-family:"Barlow Condensed",sans-serif;}
.col-type-badge{font-size:9px;padding:2px 7px;border-radius:20px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;}
.col-type-d{background:rgba(59,111,212,.12);color:#2d58b0;}
.col-type-r{background:rgba(139,74,138,.12);color:#6a1b9a;}
.col-type-b{background:rgba(193,81,58,.12);color:#a83e2a;}
.col-actions{display:flex;gap:4px;margin-top:6px;}
.col-act-btn{background:none;border:1px solid var(--brd);border-radius:4px;padding:3px 8px;font-size:10px;color:var(--txt3);cursor:pointer;font-family:Barlow,sans-serif;}
.col-act-btn:hover{border-color:var(--terra);color:var(--terra2);}

/* Cards */
.board-cards{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:8px;}
.board-cards::-webkit-scrollbar{width:3px;}
.board-cards::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:2px;}
.board-card{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r2);padding:12px 14px;cursor:pointer;transition:all .15s;position:relative;}
.board-card:hover{box-shadow:0 3px 12px rgba(61,26,26,.1);transform:translateY(-1px);border-color:var(--brd2);}
.board-card.done{opacity:.6;}
.board-card.done .bc-name{text-decoration:line-through;color:var(--txt3);}
.bc-name{font-size:13px;font-weight:600;color:var(--txt);margin-bottom:8px;line-height:1.3;}
.bc-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.bc-avatar{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;font-family:"Barlow Condensed",sans-serif;flex-shrink:0;}
.bc-date{font-size:11px;color:var(--txt3);font-family:"Barlow Condensed",sans-serif;font-weight:600;}
.bc-date.overdue{color:#a83e2a;font-weight:700;}
.bc-check{position:absolute;top:10px;right:10px;width:16px;height:16px;border-radius:50%;border:2px solid var(--brd2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s;flex-shrink:0;}
.bc-check.done{background:var(--green);border-color:var(--green);}
.bc-check.done::after{content:"✓";color:#fff;font-size:9px;font-weight:700;}
.bc-checklist-bar{margin-top:8px;}
.bc-cl-track{height:3px;background:var(--s3);border-radius:2px;overflow:hidden;}
.bc-cl-fill{height:100%;border-radius:2px;background:var(--green);transition:width .3s;}
.bc-cl-label{font-size:10px;color:var(--txt3);margin-top:2px;}
.bc-add-btn{display:flex;align-items:center;gap:6px;padding:8px;color:var(--txt3);cursor:pointer;font-size:12px;border-radius:var(--r2);transition:all .12s;margin:0 8px 8px;}
.bc-add-btn:hover{background:rgba(193,81,58,.08);color:var(--terra2);}

/* Add column button */
.board-add-col{min-width:220px;background:rgba(193,81,58,.06);border:2px dashed var(--brd2);border-radius:var(--r);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:20px;transition:all .15s;align-self:flex-start;margin-top:0;}
.board-add-col:hover{border-color:var(--terra);background:rgba(193,81,58,.1);color:var(--terra2);}

/* LIST VIEW */
.list-view{background:var(--s1);border:1px solid var(--brd);border-radius:var(--r);overflow:hidden;}
.list-col-section{border-bottom:2px solid var(--brd);}
.list-col-hdr{display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--s2);cursor:pointer;border-bottom:1px solid var(--brd);}
.list-col-hdr:hover{background:var(--s3);}
.list-row{display:flex;align-items:center;gap:10px;padding:9px 16px 9px 36px;border-bottom:1px solid var(--brd);cursor:pointer;transition:background .1s;}
.list-row:hover{background:var(--s2);}
.list-row.done .lr-name{text-decoration:line-through;color:var(--txt3);}
.lr-name{flex:1;font-size:13px;color:var(--txt);}
.lr-assign{display:flex;align-items:center;gap:5px;min-width:110px;font-size:12px;color:var(--txt2);}
.lr-date{font-size:11.5px;min-width:90px;font-family:"Barlow Condensed",sans-serif;font-weight:600;color:var(--txt3);}
.lr-date.overdue{color:#a83e2a;}

/* TASK DETAIL MODAL (full panel) */
.td-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:500;display:flex;align-items:stretch;justify-content:flex-end;}
.td-panel{background:var(--s1);width:560px;max-width:95vw;height:100vh;overflow-y:auto;display:flex;flex-direction:column;box-shadow:-8px 0 32px rgba(61,26,26,.18);}
.td-panel::-webkit-scrollbar{width:4px;}
.td-panel::-webkit-scrollbar-thumb{background:var(--brd2);border-radius:2px;}
.td-panel-hdr{padding:18px 20px 14px;border-bottom:1px solid var(--brd);display:flex;align-items:flex-start;gap:12px;flex-shrink:0;position:sticky;top:0;background:var(--s1);z-index:5;}
.td-panel-title{flex:1;font-family:"Barlow Condensed",sans-serif;font-size:20px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;line-height:1.2;outline:none;border:none;background:transparent;color:var(--txt);font-family:"Barlow Condensed",sans-serif;}
.td-panel-title:focus{border-bottom:2px solid var(--terra);}
.td-close{width:32px;height:32px;border-radius:50%;border:none;background:none;cursor:pointer;color:var(--txt3);font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.td-close:hover{background:var(--s2);color:var(--txt);}
.td-done-toggle{padding:7px 16px;border-radius:var(--r2);border:2px solid var(--brd2);background:none;cursor:pointer;font-size:12px;font-weight:700;font-family:Barlow,sans-serif;color:var(--txt2);transition:all .15s;white-space:nowrap;flex-shrink:0;}
.td-done-toggle.done{background:var(--green);border-color:var(--green);color:#fff;}
.td-done-toggle:hover:not(.done){border-color:var(--green);color:var(--green);}
.td-panel-body{padding:20px;flex:1;}
.td-field{display:grid;grid-template-columns:130px 1fr;align-items:start;padding:10px 0;border-bottom:1px solid var(--brd);}
.td-field:last-of-type{border-bottom:none;}
.td-flbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--txt3);padding-top:2px;}
.td-fval{font-size:13.5px;color:var(--txt);}
.td-finput{background:var(--s2);border:1px solid var(--brd2);border-radius:var(--r2);padding:8px 12px;font-size:13px;font-family:Barlow,sans-serif;color:var(--txt);outline:none;width:100%;}
.td-finput:focus{border-color:var(--terra);}
.td-finput::placeholder{color:var(--txt3);}
.td-section-lbl{font-family:"Barlow Condensed",sans-serif;font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--txt3);margin:18px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--brd);}
/* Checklist */
.cl-item{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid rgba(61,26,26,.06);}
.cl-cb{width:16px;height:16px;border-radius:3px;border:2px solid var(--brd2);cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .12s;}
.cl-cb.checked{background:var(--green);border-color:var(--green);}
.cl-cb.checked::after{content:"✓";color:#fff;font-size:9px;font-weight:700;}
.cl-text{flex:1;font-size:13px;color:var(--txt);}
.cl-text.checked{text-decoration:line-through;color:var(--txt3);}
.cl-add{display:flex;gap:8px;margin-top:8px;}
.cl-add-inp{flex:1;background:var(--s2);border:1px solid var(--brd2);border-radius:var(--r2);padding:7px 10px;font-size:12.5px;font-family:Barlow,sans-serif;color:var(--txt);outline:none;}
.cl-add-inp:focus{border-color:var(--terra);}
/* Comments */
.comment-thread{display:flex;flex-direction:column;gap:10px;margin-bottom:14px;}
.ct-item{display:flex;gap:10px;}
.ct-body{flex:1;background:var(--s2);border-radius:0 var(--r2) var(--r2) var(--r2);padding:10px 12px;}
.ct-meta{display:flex;align-items:center;gap:8px;margin-bottom:4px;}
.ct-name{font-size:12px;font-weight:700;color:var(--txt2);}
.ct-time{font-size:10.5px;color:var(--txt3);}
.ct-txt{font-size:13px;color:var(--txt);line-height:1.5;}
.ct-inp-wrap{display:flex;gap:8px;align-items:flex-end;}
.ct-inp{flex:1;background:var(--s2);border:1px solid var(--brd2);border-radius:var(--r2);padding:9px 12px;font-size:13px;font-family:Barlow,sans-serif;color:var(--txt);outline:none;resize:none;min-height:36px;}
.ct-inp:focus{border-color:var(--terra);}
.ct-send{padding:8px 14px;background:var(--terra);color:#f2e8d9;border:none;border-radius:var(--r2);font-size:12px;font-weight:700;cursor:pointer;font-family:Barlow,sans-serif;white-space:nowrap;}
.ct-send:hover{background:var(--terra2);}
/* File chips */
.td-files{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.td-file-chip{display:flex;align-items:center;gap:6px;background:var(--s2);border:1px solid var(--brd2);border-radius:6px;padding:6px 10px;font-size:12px;cursor:pointer;}
.td-file-chip:hover{border-color:var(--terra);}
.td-fc-img{width:36px;height:36px;object-fit:cover;border-radius:4px;}
.td-fc-rm{color:var(--txt3);cursor:pointer;margin-left:4px;font-size:11px;}
.td-fc-rm:hover{color:#a83e2a;}
.td-file-drop{border:2px dashed var(--brd2);border-radius:var(--r2);padding:16px;text-align:center;cursor:pointer;transition:all .15s;margin-top:8px;}
.td-file-drop:hover{border-color:var(--terra);background:rgba(193,81,58,.04);}
.td-file-drop-txt{font-size:12.5px;color:var(--txt3);}
.td-file-drop-txt strong{color:var(--terra);}

/* PAC sticky left column */
.pac-left-cell{border-left:none;}
#pac-left{box-shadow:2px 0 8px rgba(61,26,26,.1);}

/* PAC state selects */
.pac-sel{font-family:Barlow,sans-serif;cursor:pointer;outline:none;padding:2px 4px;border-radius:4px;}
.pac-sel:focus{outline:none;box-shadow:0 0 0 2px rgba(193,81,58,.3);}

/* Fix sticky column overlap */
#pac-left { position: sticky; left: 0; z-index: 25; }
#pac-left > div:first-child { position: sticky; top: 0; z-index: 26; }
.pac-left-cell { position: relative; z-index: 24; }
#pac-right { position: relative; }
#pac-body { position: relative; }

/* Indicator panel */
.ind-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(340px,1fr)); gap:12px; }

/* Planner */
.planner-inp{background:var(--s2);border:1px solid var(--brd2);border-radius:4px;padding:4px 8px;font-size:11.5px;font-family:Barlow,sans-serif;color:var(--txt);outline:none;width:100%;}
.planner-inp:focus{border-color:var(--terra);}
.planner-done-row td{opacity:.55;}
.planner-done-row td:first-child{opacity:1;}
