.nav-badge{min-width:20px;height:20px;padding:0 6px;border-radius:20px;background:var(--danger);color:#fff;display:inline-grid;place-items:center;font-size:10px;margin-left:5px}.control-section{padding:54px 5vw 70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.18)}.control-heading{margin-bottom:25px}.control-actions{display:flex;gap:10px}.control-tabs{display:flex;gap:7px;overflow:auto;padding-bottom:14px;border-bottom:1px solid var(--line)}.control-tabs button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:12px 17px;border-radius:24px;font-weight:700;white-space:nowrap;cursor:pointer}.control-tabs button.selected{background:var(--ink);color:#fff;border-color:var(--ink)}.advanced-panel{min-height:300px;padding-top:25px}.advanced-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.control-card{grid-column:span 4;background:rgba(255,255,255,.52);border:1px solid var(--line);padding:24px;min-width:0}.control-card.wide{grid-column:span 8}.control-card.full{grid-column:1/-1}.control-card.half{grid-column:span 6}.card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:18px}.card-top h3{margin:3px 0 0;font-size:22px;letter-spacing:-.04em}.card-top p,.control-card>p{margin:4px 0;color:var(--muted);font-size:13px}.card-top button,.mini-action{border:1px solid var(--line);background:transparent;padding:8px 11px;font-weight:700;cursor:pointer}.big-number{font-size:54px;line-height:1;font-weight:800;letter-spacing:-.07em}.big-number small{font-size:18px}.kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);grid-column:1/-1}.kpi-strip article{background:var(--paper);padding:22px}.kpi-strip b{display:block;font-size:33px;letter-spacing:-.05em}.kpi-strip span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.workload-list,.alert-list,.simple-list,.backup-list{display:grid;gap:9px}.workload-row{display:grid;grid-template-columns:minmax(110px,1.1fr) 2fr auto;gap:14px;align-items:center}.workload-row strong{font-size:13px}.workload-bar,.trend-bar{height:7px;background:rgba(21,53,82,.12);position:relative;overflow:hidden}.workload-bar i,.trend-bar i{position:absolute;inset:0 auto 0 0;background:var(--blue)}.capacity-sobrecarga .workload-bar i{background:var(--danger)}.capacity-alta .workload-bar i{background:#e0972f}.workload-row small{font-size:11px;color:var(--muted)}.trend{height:130px;display:flex;align-items:end;gap:7px;border-bottom:1px solid var(--line);padding-top:12px}.trend-column{flex:1;height:100%;display:flex;align-items:end;justify-content:center;position:relative}.trend-column i{display:block;width:70%;min-height:2px;background:var(--blue)}.trend-column span{position:absolute;bottom:-20px;font-size:9px;color:var(--muted)}.alert-row{border-left:3px solid var(--blue);padding:11px 12px;background:rgba(255,255,255,.48);display:flex;justify-content:space-between;gap:15px}.alert-row.severity-alta{border-left-color:var(--danger)}.alert-row b{display:block;font-size:13px}.alert-row p{margin:3px 0 0;font-size:12px;color:var(--muted)}.alert-row time{font-size:10px;white-space:nowrap;color:var(--muted)}.calendar-shell{grid-column:1/-1}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.calendar-toolbar>div{display:flex;gap:6px}.calendar-toolbar button{border:1px solid var(--line);background:transparent;padding:8px 12px;cursor:pointer}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.calendar-day{min-height:115px;padding:9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.32)}.calendar-day.outside{opacity:.42}.calendar-day.today{box-shadow:inset 0 0 0 2px var(--blue)}.calendar-day>span{font-size:11px;font-weight:800}.calendar-event{display:block;width:100%;text-align:left;border:0;border-left:3px solid var(--blue);background:#fff;padding:5px 6px;margin-top:5px;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.calendar-event.blocked{border-color:var(--danger)}.gantt{display:grid;gap:10px}.gantt-row{display:grid;grid-template-columns:180px 1fr;gap:15px;align-items:center}.gantt-row>span{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-track{height:20px;background:rgba(21,53,82,.08);position:relative}.gantt-track button{position:absolute;top:3px;height:14px;min-width:5px;border:0;background:var(--blue);cursor:pointer}.gantt-track button.blocked{background:var(--danger)}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.project-card,.client-card,.request-card{padding:17px;border:1px solid var(--line);background:rgba(255,255,255,.45)}.project-color{width:32px;height:4px;display:block;margin-bottom:13px}.project-card h4,.client-card h4,.request-card h4{margin:0 0 5px;font-size:17px}.project-card p,.client-card p,.request-card p{margin:3px 0;color:var(--muted);font-size:12px}.project-card footer,.request-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:15px}.chip{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid var(--line);border-radius:20px;font-size:10px;font-weight:800;text-transform:uppercase}.simple-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.simple-row:last-child{border:0}.simple-row div{min-width:0}.simple-row b{display:block;font-size:13px}.simple-row small{display:block;color:var(--muted);margin-top:3px}.simple-row button{border:1px solid var(--line);background:transparent;padding:7px 10px;font-weight:700;cursor:pointer}.simple-row button.primary-mini{background:var(--ink);color:#fff}.data-actions{display:flex;flex-wrap:wrap;gap:9px}.data-actions a,.data-actions button{display:inline-flex;text-decoration:none;border:1px solid var(--ink);color:var(--ink);background:transparent;padding:11px 14px;font-weight:800;cursor:pointer}.danger-zone{border-color:rgba(192,55,46,.35)}.task-planning{display:flex;align-items:center;gap:6px;margin:4px 0}.task-planning b,.task-planning i{font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-style:normal;color:var(--muted)}.priority-dot{width:7px;height:7px;border-radius:50%;background:#7b8790}.priority-dot.priority-alta{background:#e0972f}.priority-dot.priority-urgente{background:var(--danger)}.priority-dot.priority-baja{background:#58a27a}.detail-button{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)!important}.role-employee .admin-only{display:none!important}.task-center-dialog{width:min(1120px,94vw);max-width:none}.task-center-body{padding:0 28px 30px;display:grid;grid-template-columns:1.1fr .9fr;gap:16px;max-height:72vh;overflow:auto}.detail-card{border:1px solid var(--line);padding:18px;background:rgba(255,255,255,.38)}.detail-card.full{grid-column:1/-1}.detail-card h3{margin:0 0 14px;font-size:17px}.inline-form{display:flex;gap:7px}.inline-form input,.inline-form select{min-width:0;flex:1;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:9px}.inline-form button{border:0;background:var(--ink);color:#fff;font-weight:800;padding:9px 12px}.check-row{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line)}.check-row input{margin-top:3px}.check-row.done span{text-decoration:line-through;color:var(--muted)}.comment{padding:11px 0;border-bottom:1px solid var(--line)}.comment header{display:flex;justify-content:space-between;font-size:11px}.comment p{margin:6px 0 0;font-size:13px}.metadata-form{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.metadata-form label{display:grid;gap:5px;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.metadata-form input,.metadata-form select{border:1px solid var(--line);background:transparent;padding:9px}.metadata-form .full{grid-column:1/-1}.metadata-form button{grid-column:1/-1;background:var(--ink);color:#fff;border:0;padding:11px;font-weight:800}.timer-running{padding:12px;background:var(--acid);display:flex;justify-content:space-between;align-items:center}.timer-running b{display:block}.timer-running small{font-size:11px}.timer-running button{background:var(--ink);color:#fff;border:0;padding:8px 10px}.quick-dialog{width:min(560px,92vw)}.quick-form{padding:0 26px 25px;display:grid;gap:12px}.quick-form label{display:grid;gap:6px;font-size:11px;font-weight:800}.quick-form input,.quick-form select,.quick-form textarea{padding:11px;border:1px solid var(--line);background:transparent}.quick-form footer{display:flex;justify-content:flex-end;gap:9px;margin-top:8px}.empty-compact{padding:20px;text-align:center;color:var(--muted);border:1px dashed var(--line)}.request-page{min-height:100vh;display:grid;place-items:center;padding:24px}.request-shell{width:min(720px,100%);background:rgba(255,255,255,.45);border:1px solid var(--line);padding:clamp(25px,5vw,55px)}.request-shell h1{font-size:clamp(42px,8vw,76px);line-height:.9;letter-spacing:-.07em;margin:15px 0 22px}.request-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.request-form .full{grid-column:1/-1}.request-form label{display:grid;gap:6px;font-size:11px;font-weight:800}.request-form input,.request-form textarea{padding:12px;border:1px solid var(--line);background:rgba(255,255,255,.45)}.request-form button{grid-column:1/-1;background:var(--ink);color:#fff;border:0;padding:14px;font-weight:800}.request-success{padding:18px;border-left:4px solid var(--acid);background:#fff}
@media(max-width:980px){.control-card,.control-card.wide,.control-card.half{grid-column:span 6}.kpi-strip{grid-template-columns:repeat(2,1fr)}.task-center-body{grid-template-columns:1fr}.detail-card.full{grid-column:auto}.gantt-row{grid-template-columns:120px 1fr}}
@media(max-width:700px){.control-section{padding:38px 20px}.control-actions{display:none}.control-card,.control-card.wide,.control-card.half{grid-column:1/-1}.calendar-day{min-height:80px;padding:5px}.calendar-event{font-size:0;height:8px;padding:0}.kpi-strip{grid-template-columns:1fr 1fr}.workload-row{grid-template-columns:1fr}.gantt-row{grid-template-columns:1fr}.task-center-body{padding:0 16px 20px}.metadata-form{grid-template-columns:1fr}.metadata-form .full,.metadata-form button{grid-column:auto}.request-form{grid-template-columns:1fr}.request-form .full,.request-form button{grid-column:auto}}
.role-employee #newEmployeeButton,.role-employee [data-action="create"],.role-employee .employee-actions{display:none!important}
