
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');
:root{--brand:#098990;--dark:#17363b;--coral:#ea4954;--bg:#f5f7f6;--line:#e0e7e5;--muted:#647773}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--dark);font:14px Poppins,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #ea4954;outline-offset:3px}button{border:1px solid var(--line);background:white;color:var(--dark);border-radius:8px;padding:10px 15px}button:hover{border-color:var(--brand)}.primary{background:var(--brand);color:white;border-color:var(--brand)}.subtle{color:var(--muted);background:transparent}.shell{display:grid;grid-template-columns:235px 1fr;min-height:100vh}aside{background:white;border-right:1px solid var(--line);padding:32px 23px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.logo{width:172px;height:auto}.brand-note{font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:var(--muted);margin:12px 0 40px}.nav-label,.eyebrow{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:var(--muted);font-weight:600}.nav-label{margin:0 12px 10px}nav{display:grid;gap:7px}nav button{border:0;text-align:left;padding:12px;display:flex;justify-content:space-between;background:transparent}nav button.active{background:#e9f4f3;color:#08757b;font-weight:600}nav button span{font-size:11px;background:#eef2f1;border-radius:5px;padding:1px 6px}.aside-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:20px}.avatar{width:34px;height:34px;border-radius:50%;background:#fcebed;color:#ad3540;display:grid;place-items:center;font-weight:600}.profile{display:flex;gap:10px;align-items:center}.profile small{display:block;color:var(--muted);font-size:10px}.topbar{height:77px;background:white;border-bottom:1px solid var(--line);padding:0 42px;display:flex;align-items:center;justify-content:space-between}.topbar p{font-size:12px;color:var(--muted)}.demo{font-size:11px;color:#6b5c40;background:#fbf5e9;border:1px solid #eadfc5;border-radius:6px;padding:5px 9px}.content{padding:34px 42px;max-width:1650px;margin:auto}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}h1{font-size:29px;font-weight:600;letter-spacing:-1px;margin:5px 0 7px}p{margin:0}h2{font-weight:600}small,.muted{color:var(--muted)}.subtitle{color:var(--muted);font-size:12px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:30px}.metric{background:white;border:1px solid var(--line);padding:19px 22px;border-radius:10px}.metric strong{display:block;font-size:27px;line-height:1.6;font-weight:500}.metric small{font-size:11px}.metric.alert{border-top:3px solid var(--coral)}.metric.alert strong{color:#c43b47}.toolbar{display:flex;gap:10px;margin-bottom:18px;align-items:center}.toolbar input{flex:1;min-width:150px}.toolbar select{width:205px}input,select,textarea{border:1px solid #d4dfdc;background:white;border-radius:7px;padding:10px 12px;color:var(--dark)}input:focus,select:focus,textarea:focus{outline:2px solid #88c9c9;outline-offset:1px}.list{background:white;border:1px solid var(--line);border-radius:11px;overflow:hidden}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:710px}th{font-size:10px;letter-spacing:.7px;text-transform:uppercase;background:#fafbfa;color:var(--muted);font-weight:500;padding:15px 20px;border-bottom:1px solid var(--line)}td{padding:20px;border-bottom:1px solid #edf1ef;font-size:12px}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafdfc}.project-btn{border:0;padding:0;text-align:left;font-weight:600;background:transparent;font-size:12px}.project-btn small{display:block;font-weight:400;font-size:10px;margin-top:5px}.badge{display:inline-block;font-size:10px;border-radius:5px;padding:5px 8px;white-space:nowrap}.CONTACTO{background:#edf2fa;color:#516783}.PRODUCCION{background:#fbf1df;color:#916b27}.ENTREGA{background:#e8f3ee;color:#397459}.FINALIZADO{background:#edf0ef;color:#697974}.late{color:#bf3643}.progress{width:68px;height:4px;background:#eaf0ed;border-radius:5px;margin-top:6px}.progress i{display:block;height:100%;background:var(--brand);border-radius:5px}.list-foot{padding:13px 20px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);display:flex;justify-content:space-between}.bottom-note{font-size:10px;color:var(--muted);margin-top:20px}.empty{padding:45px;text-align:center;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:15px;padding:0;width:780px;max-width:calc(100vw - 28px);max-height:90vh;color:var(--dark);box-shadow:0 25px 100px #17363b30}dialog::backdrop{background:#17363b66;backdrop-filter:blur(3px)}.dialog-head{padding:25px 28px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:start}.dialog-head h2{margin:7px 0 4px;font-size:21px}.dialog-body{padding:25px 28px}.dialog-close{padding:4px 10px;font-size:20px}.phase-track{display:flex;gap:8px;margin-bottom:24px}.phase-track span{flex:1;border-top:3px solid #e1e8e5;padding-top:9px;font-size:10px;color:var(--muted)}.phase-track span.current{border-color:var(--brand);color:var(--brand);font-weight:600}.task{display:flex;align-items:start;gap:12px;padding:13px 0;border-bottom:1px solid #edf1ef}.task input[type=checkbox]{accent-color:var(--brand);width:18px;height:18px;margin:3px 0}.task .task-info{flex:1}.task label{display:block;font-size:12px;font-weight:500}.task small{display:block;font-size:10px;margin-top:4px}.task input[type=text],.task input[type=date]{padding:6px 8px;margin-top:8px;font-size:11px;max-width:100%}.done label{text-decoration:line-through;color:var(--muted)}.section-title{font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;margin:26px 0 10px}.comment{padding:10px 12px;background:#f5f8f7;border-radius:7px;margin:9px 0;font-size:11px}.comment small{display:block;font-size:9px;margin-bottom:5px}.comment-form{display:flex;gap:8px;margin-top:14px}.comment-form input{flex:1;min-width:0;font-size:12px}.actions{display:flex;gap:8px;justify-content:space-between;padding:20px 28px;background:#fafbfa;border-top:1px solid var(--line)}.new-form{display:grid;grid-template-columns:1fr 1fr;gap:17px}.new-form label{font-size:11px;display:grid;gap:7px}.full{grid-column:1/-1}.message{font-size:12px;color:#b03744;padding:0 28px 15px}.access{text-align:center;padding:50px 30px}.access img{width:190px}.access h2{margin-top:35px}.access p{font-size:12px;color:var(--muted);margin:15px auto;max-width:350px;line-height:1.8}.google{width:280px;max-width:100%;display:block;margin:25px auto 12px}.google b{font-size:18px;margin-right:15px;color:#4285f4}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--dark);color:white;border-radius:8px;padding:12px 20px;font-size:12px;z-index:5;box-shadow:0 5px 20px #17363b30}.hidden{display:none!important}@media(max-width:1050px){.shell{grid-template-columns:185px 1fr}aside{padding:25px 15px}.logo{width:150px}.content{padding:25px}.topbar{padding:0 25px}.metrics{gap:9px}.metric{padding:14px}.metric small{font-size:10px}}@media(max-width:720px){.shell{display:block}aside{position:static;height:auto;padding:20px;border-bottom:1px solid var(--line);border-right:0}.brand-note,.nav-label,.aside-bottom{display:none}nav{display:flex;overflow:auto;margin-top:18px;gap:2px}nav button{white-space:nowrap;padding:8px;font-size:11px;gap:7px}.topbar{height:52px;padding:0 20px}.topbar p{font-size:10px}.topbar .subtle{font-size:10px;padding:5px}.content{padding:24px 16px}h1{font-size:25px}.heading{align-items:start}.heading .primary{font-size:11px;padding:10px}.metrics{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.toolbar{flex-wrap:wrap}.toolbar input{width:100%;flex:auto}.toolbar select{flex:1}.dialog-head,.dialog-body{padding:20px}.actions{padding:16px;flex-wrap:wrap}.new-form{grid-template-columns:1fr}.full{grid-column:auto}.demo{font-size:9px}.subtitle{font-size:11px}}
