:root{--ink:#15203b;--muted:#5c677e;--line:#dce3f0;--canvas:#f5f7fc;--surface:#fff;--forest:#1837c7;--forest-deep:#101d6c;--mint:#e8edff;--blue:#2349de;--amber:#ff6c2e;--red:#c94343;--shadow:0 14px 40px #14265e1a}*{box-sizing:border-box}html{background:var(--canvas)}body{color:var(--ink);background:var(--canvas);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em}.eyebrow{color:var(--forest);letter-spacing:.13em;margin-bottom:.5rem;font-size:.69rem;font-weight:800}.muted{color:var(--muted)}.button{border:1px solid #0000;border-radius:.68rem;justify-content:center;align-items:center;min-height:2.55rem;padding:.6rem .95rem;font-size:.86rem;font-weight:750;transition:transform .15s,background .15s,border .15s;display:inline-flex}.button:not(:disabled):hover{transform:translateY(-1px)}.button--primary{color:#fff;background:var(--forest);box-shadow:0 6px 16px #1837c733}.button--primary:hover{background:var(--forest-deep)}.button--secondary{color:var(--forest-deep);background:#f0f3ff;border-color:#bcc9f2}.button--secondary:hover{background:var(--mint)}.button--danger{color:#a83636;background:#fff4f4;border-color:#f0c5c5}.button--wide{width:100%}.link-button{color:#c8d2ff;text-align:left;background:0 0;border:0;padding:0;font-size:.8rem}.login-page{grid-template-columns:minmax(18rem,1fr) minmax(22rem,.8fr);min-height:100vh;display:grid}.login-intro{color:#fff;background:radial-gradient(circle at 78% 18%,#ff6c2e47,#0000 24rem),radial-gradient(circle at 10% 88%,#486bff75,#0000 25rem),linear-gradient(145deg,#172dba,#101b6d);flex-direction:column;justify-content:center;min-height:34rem;padding:clamp(2.5rem,9vw,9rem);display:flex}.login-intro .eyebrow{color:#ffb08b}.login-intro h1{max-width:34rem;margin-bottom:1.2rem;font-size:clamp(2.6rem,5vw,4.75rem);line-height:.99}.login-intro>p:not(.eyebrow){color:#e5e9ff;max-width:31rem;font-size:1.08rem;line-height:1.65}.login-intro__detail{background:#fff;border:1px solid #ffffff94;border-radius:.75rem;align-items:center;width:fit-content;margin-top:2.2rem;padding:.38rem .58rem;display:inline-flex;box-shadow:0 9px 22px #050f4d3d}.cnfl-logo{width:clamp(8.4rem,21vw,11.2rem);height:auto;display:block}.login-panel{background:#fbfcff;justify-content:center;align-items:center;padding:2rem;display:flex}.login-card{width:min(100%,26rem)}.login-card h2{margin-bottom:.35rem;font-size:2rem}.form-stack{gap:1rem;margin-top:2.15rem;display:grid}.form-stack label,.form-grid label{color:#293452;gap:.45rem;font-size:.8rem;font-weight:700;display:grid}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #d7dfed;border-radius:.58rem;outline:none;padding:.7rem .75rem;transition:border .12s,box-shadow .12s}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:#4869e6;box-shadow:0 0 0 3px #4869e624}input:disabled,select:disabled,textarea:disabled{color:#647087;background:#f6f7fb}.currency-input{display:block;position:relative}.currency-input>span{z-index:1;color:var(--forest);pointer-events:none;font-size:.95rem;font-weight:800;line-height:1;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.currency-input input{padding-left:2rem}.form-error{color:#ab3737;margin:0;font-size:.82rem}.app-shell{min-height:100vh;display:flex}.sidebar{color:#eef1ff;background:#101d6c;flex-direction:column;flex:0 0 15.75rem;min-height:100vh;padding:1.5rem 1rem;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.7rem;padding:.25rem .55rem 2rem;font-size:.96rem;font-weight:800;display:flex}.brand small,.profile-chip small{color:#c6d0ff;margin-top:.17rem;font-size:.68rem;font-weight:600;display:block}.brand-mark{color:#101d6c;background:#ffb28c;border-radius:.65rem;place-items:center;width:2.2rem;height:2.2rem;font-size:.75rem;display:grid}.sidebar nav{gap:.35rem;display:grid}.nav-item{color:#c3cdf9;text-align:left;background:0 0;border:0;border-radius:.55rem;align-items:center;gap:.75rem;width:100%;padding:.75rem .7rem;font-size:.88rem;font-weight:700;display:flex}.nav-item span{color:#aabaff;width:1rem}.nav-item:hover,.nav-item--active{color:#fff;background:#8097ff40}.nav-item--active span{color:#ffbd9e}.nav-item--mobile-signout{display:none}.sidebar-bottom{border-top:1px solid #ced8ff38;gap:.95rem;margin-top:auto;padding:1.2rem .55rem .2rem;display:grid}.profile-chip{text-overflow:ellipsis;align-items:center;gap:.65rem;font-size:.82rem;font-weight:750;display:flex;overflow:hidden}.avatar{color:#162b91;background:#cfd8ff;border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;display:grid}.workspace{width:calc(100% - 15.75rem);padding:clamp(1.2rem,3vw,2.8rem)}.topbar{justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:1.65rem;display:flex}.topbar h1{margin-bottom:0;font-size:clamp(2rem,3.5vw,2.8rem)}.notice{border:1px solid;border-radius:.7rem;margin-bottom:1rem;padding:.78rem .9rem;font-size:.88rem;font-weight:650}.notice--success{color:#1f3fc5;background:#f0f3ff;border-color:#c6d1ff}.notice--error{color:#963b3b;background:#fff1f1;border-color:#efc1c1}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.2rem;display:grid}.metric-card{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;align-items:center;gap:.9rem;min-width:0;padding:1.1rem;display:flex}.metric-card p{color:var(--muted);margin-bottom:.18rem;font-size:.76rem;font-weight:650}.metric-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.25rem,2vw,1.65rem);display:block;overflow:hidden}.metric-card small{color:#747d90;font-size:.69rem}.metric-icon{border-radius:.65rem;flex:none;place-items:center;width:2.45rem;height:2.45rem;font-size:1.15rem;font-weight:800;display:grid}.metric-icon--blue{color:#2d5dc4;background:#e8efff}.metric-icon--amber{color:#ac6a08;background:#fff1d9}.metric-icon--green{color:#2445cc;background:#e6ebff}.economic-dashboard{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:1rem;margin-bottom:1.2rem;overflow:hidden}.economic-dashboard__header{justify-content:space-between;align-items:end;gap:1rem;padding:1.35rem 1.4rem 1.1rem;display:flex}.economic-dashboard__header h2{margin-bottom:.3rem;font-size:clamp(1.25rem,2vw,1.6rem)}.economic-dashboard__header p:not(.eyebrow){color:var(--muted);margin:0;font-size:.83rem}.dashboard-selector{min-width:min(100%,19rem);color:var(--muted);letter-spacing:.05em;text-transform:uppercase;gap:.35rem;font-size:.68rem;font-weight:800;display:grid}.dashboard-selector select{max-width:100%;color:var(--forest-deep);text-transform:none;background:#f6f8ff;border:1px solid #bcc9f2;border-radius:.6rem;padding:.62rem .7rem;font-size:.78rem;font-weight:700}.dashboard-hero{color:#fff;background:radial-gradient(circle at 88% 16%,#ff703452,#0000 28%),radial-gradient(circle at 13% 108%,#5170ff7a,#0000 38%),linear-gradient(135deg,#1a35c6,#101b6d);border-radius:.85rem;grid-template-columns:minmax(0,1fr) auto;gap:1.25rem;margin:0 1.4rem;padding:1.35rem;display:grid}.dashboard-hero__main{align-content:start;gap:.28rem;display:grid}.dashboard-hero__eyebrow{color:#ffba99;letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:800}.dashboard-hero__main>strong{letter-spacing:-.055em;font-size:clamp(1.8rem,4vw,2.7rem)}.dashboard-hero__main p{color:#e0e6ff;margin:0;font-size:.82rem}.dashboard-hero__main small{color:#c8d3ff;margin-top:.35rem;font-size:.72rem}.dashboard-hero__status{grid-auto-flow:column;align-content:start;gap:.8rem;display:grid}.dashboard-hero__status span{color:#c8d3ff;text-align:left;border-left:1px solid #dae2ff59;gap:.2rem;min-width:3.7rem;padding-left:.8rem;font-size:.68rem;display:grid}.dashboard-hero__status b{color:#fff;font-size:1.15rem}.dashboard-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;padding:1rem 1.4rem;display:grid}.dashboard-kpis article{background:#fcfcff;border:1px solid #e8ecf5;border-radius:.7rem;gap:.62rem;min-width:0;padding:.85rem .75rem;display:flex}.dashboard-kpis article>div{min-width:0}.dashboard-kpis p{color:var(--muted);margin:0 0 .15rem;font-size:.7rem;font-weight:700}.dashboard-kpis strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;display:block;overflow:hidden}.dashboard-kpis small{color:#737c90;text-overflow:ellipsis;white-space:nowrap;margin-top:.14rem;font-size:.62rem;display:block;overflow:hidden}.dashboard-kpi__icon{border-radius:.55rem;flex:none;place-items:center;width:2rem;height:2rem;font-size:.9rem;font-weight:900;display:grid}.dashboard-kpi__icon--hours{color:#2c50d0;background:#e8edff}.dashboard-kpi__icon--people{color:#3459aa;background:#e7eeff}.dashboard-kpi__icon--materials{color:#98620d;background:#fff0d6}.dashboard-kpi__icon--pending{color:#a33d31;background:#fde5e1}.dashboard-grid{grid-template-columns:minmax(0,1.15fr) minmax(16rem,.85fr);gap:.75rem;padding:0 1.4rem 1.35rem;display:grid}.dashboard-card{background:#fff;border:1px solid #e6eaf3;border-radius:.75rem;min-width:0;padding:1rem}.dashboard-card__title{justify-content:space-between;align-items:start;gap:.8rem;margin-bottom:1rem;display:flex}.dashboard-card__title h3{margin:0 0 .22rem;font-size:.92rem}.dashboard-card__title p{color:var(--muted);margin:0;font-size:.73rem}.dashboard-card__title>strong{color:var(--forest);white-space:nowrap;font-size:.9rem}.role-bars{gap:.75rem;display:grid}.role-bar{gap:.32rem;display:grid}.role-bar__caption{color:#48536c;justify-content:space-between;gap:.8rem;font-size:.74rem;display:flex}.role-bar__caption strong{color:var(--ink)}.role-bar__track{background:#ebf0fa;border-radius:999px;height:.5rem;overflow:hidden}.role-bar__fill{border-radius:inherit;height:100%;transition:width .42s;display:block}.role-bar__fill--social{background:linear-gradient(90deg,#244be0,#6785ef)}.role-bar__fill--technical{background:linear-gradient(90deg,#f26a31,#ffad74)}.role-bar__fill--engineering{background:linear-gradient(90deg,#172dba,#6b83ef)}.cost-stack{gap:.64rem;display:grid}.cost-stack>span{color:#4f5970;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;font-size:.77rem;display:grid}.cost-stack strong{color:var(--ink);white-space:nowrap;font-size:.8rem}.cost-dot{border-radius:50%;width:.55rem;height:.55rem}.cost-dot--personnel{background:#3654cb}.cost-dot--materials{background:#ff792f}.cost-dot--other{background:#5c82d9}.cost-stack__total{color:var(--forest-deep);border-top:1px solid #e7ebf4;justify-content:space-between;gap:1rem;margin-top:.25rem;padding-top:.78rem;font-size:.76rem;font-weight:800;display:flex}.cost-stack__total strong{color:var(--forest-deep);font-size:1rem}.activity-summary{gap:.26rem;padding-top:.3rem;display:grid}.activity-summary strong{color:var(--forest);font-size:2rem}.activity-summary span{color:#48536c;font-size:.8rem;line-height:1.4}.activity-summary small{color:var(--muted);margin-top:.5rem;font-size:.68rem}.project-layout{grid-template-columns:minmax(17rem,.7fr) minmax(29rem,1.3fr);align-items:start;gap:1.15rem;display:grid}.project-management-list{gap:.75rem;display:grid}.button--project-new{width:100%;box-shadow:0 6px 16px #1837c72e}.project-list-panel,.detail-panel,.team-panel{border:1px solid var(--line);background:var(--surface);border-radius:.9rem;overflow:hidden;box-shadow:0 4px 18px #14265e0a}.panel-heading{border-bottom:1px solid #edf0f6;justify-content:space-between;align-items:flex-start;gap:.7rem;padding:1.1rem 1.1rem .9rem;display:flex}.panel-heading h2{margin-bottom:.2rem;font-size:1.1rem}.panel-heading p{color:var(--muted);margin-bottom:0;font-size:.76rem}.filter-label{color:var(--muted);gap:.18rem;font-size:.64rem;font-weight:750;display:grid}.filter-label select{min-width:6.7rem;padding:.36rem 1.7rem .36rem .45rem;font-size:.72rem}.project-list{max-height:calc(100vh - 21rem);display:grid;overflow:auto}.project-row{text-align:left;background:0 0;border:0;border-bottom:1px solid #edf0f6;align-items:center;gap:.65rem;width:100%;padding:.92rem 1.1rem;display:flex}.project-row:hover{background:#f5f7ff}.project-row--selected{background:#eaf0ff}.project-row__copy{gap:.2rem;min-width:0;display:grid}.project-row__copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;overflow:hidden}.project-row__copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.status-dot{border-radius:50%;flex:none;width:.5rem;height:.5rem}.status-dot--planificacion,.status-badge--planificacion{color:#8c6817;background:#fff0c5}.status-dot--en_curso,.status-badge--en_curso{color:#1c5db7;background:#dceaff}.status-dot--pausado,.status-badge--pausado{color:#735289;background:#efe3f6}.status-dot--completado,.status-badge--completado{color:#1849ad;background:#e2ecff}.status-badge{white-space:nowrap;border-radius:99px;margin-left:auto;padding:.25rem .45rem;font-size:.61rem;font-weight:750}.empty-state{color:var(--muted);gap:.35rem;padding:2rem 1.1rem;font-size:.8rem;display:grid}.empty-state strong{color:var(--ink)}.detail-panel{min-height:37rem}.detail-panel--empty{min-height:28rem;color:var(--muted);text-align:center;place-content:center;justify-items:center;padding:2rem;display:grid}.detail-panel--empty h2{color:var(--ink);margin:.9rem 0 .3rem}.detail-panel--empty p{margin-bottom:0}.empty-illustration{width:3.5rem;height:3.5rem;color:var(--forest);background:var(--mint);border-radius:1rem;place-items:center;font-size:1.4rem;display:grid}.project-form{padding:1.35rem}.detail-header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1.3rem;display:flex}.detail-header h2{max-width:31rem;margin-bottom:0;font-size:1.45rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.field-wide{grid-column:1/-1}.form-actions{justify-content:flex-end;margin-top:1rem;display:flex}.permission-note{color:#727c8f;margin:1rem 0 0;font-size:.77rem}.resource-section{border-top:1px solid var(--line)}.resource-summary{color:var(--muted);background:#f7f8fc;gap:1.1rem;padding:.9rem 1.35rem;font-size:.78rem;display:flex}.resource-summary strong{color:var(--ink)}.resource-grid{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.resource-list{min-width:0;padding:1.15rem 1.35rem}.resource-list+.resource-list{border-left:1px solid var(--line)}.resource-list h3,.compact-form h3{margin-bottom:.75rem;font-size:.9rem}.resource-list ul{gap:.5rem;max-height:10rem;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.resource-list li{border-bottom:1px solid #eff1f6;gap:.2rem;padding-bottom:.5rem;font-size:.75rem;display:grid}.resource-list li span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.resource-list .muted{margin-bottom:0;font-size:.75rem}.work-forms{grid-template-columns:1fr 1fr;display:grid}.compact-form{padding:1.15rem 1.35rem}.compact-form+.compact-form{border-left:1px solid var(--line)}.compact-grid{grid-template-columns:1.5fr .8fr .8fr 1.1fr;gap:.42rem;margin-bottom:.7rem;display:grid}.compact-grid input{min-width:0;padding:.55rem;font-size:.74rem}.compact-grid input:last-child{grid-column:1/-1}.compact-grid--hours{grid-template-columns:1fr .7fr 1.6fr}.compact-grid--hours input:last-child{grid-column:auto}.compact-form .button{min-height:2.2rem;padding:.45rem .7rem;font-size:.73rem}.team-panel{max-width:62rem}.team-create{background:linear-gradient(135deg,#f3f6ff 0%,#fff8f3 100%);grid-template-columns:minmax(13rem,.75fr) minmax(22rem,1.25fr);gap:1.2rem;padding:1.25rem;display:grid}.team-create__heading .eyebrow{margin-bottom:.3rem}.team-create__heading h2{margin:0;font-size:1.18rem}.team-create__heading p:last-child{color:var(--muted);margin:.4rem 0 0;font-size:.78rem;line-height:1.45}.team-create__form{grid-template-columns:repeat(2,minmax(0,1fr));gap:.72rem;display:grid}.team-create__form label{color:#3f4960;gap:.32rem;font-size:.72rem;font-weight:750;display:grid}.team-create__form input,.team-create__form select{min-width:0;padding:.6rem .68rem;font-size:.78rem}.team-create__actions{grid-column:1/-1;justify-content:space-between;align-items:center;gap:.75rem;padding-top:.15rem;display:flex}.team-create__actions small{color:var(--muted);font-size:.68rem}.team-table{display:grid}.team-table__head,.team-row{grid-template-columns:minmax(12rem,1.4fr) minmax(10rem,.8fr) auto;align-items:center;gap:1rem;padding:.9rem 1.2rem;display:grid}.team-table__head{color:#6f7890;letter-spacing:.06em;text-transform:uppercase;background:#f7f8fc;font-size:.68rem;font-weight:800}.team-row{border-top:1px solid #eff1f6}.team-row span{gap:.2rem;min-width:0;display:grid}.team-row strong,.team-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.team-row strong{font-size:.82rem}.team-row small{color:var(--muted);font-size:.65rem}.team-row select{padding:.5rem;font-size:.76rem}.team-row .button{min-height:2.25rem;font-size:.75rem}.status-page{background:var(--canvas);place-items:center;min-height:100vh;padding:1.5rem;display:grid}.status-card{border:1px solid var(--line);max-width:33rem;box-shadow:var(--shadow);background:#fff;border-radius:1rem;padding:2.5rem}.status-card h1{font-size:2rem}.status-card p:last-child{color:var(--muted);margin-bottom:0;line-height:1.6}@media (max-width:1060px){.project-layout{grid-template-columns:1fr}.project-list{max-height:18rem}}@media (max-width:760px){.login-page{grid-template-columns:1fr}.login-intro{min-height:auto;padding:3rem 1.75rem}.login-intro h1{font-size:2.9rem}.sidebar{z-index:10;flex-direction:row;flex:0 0 4.25rem;align-items:center;width:auto;height:4.25rem;min-height:4.25rem;padding:.55rem .8rem;position:fixed;inset:auto 0 0}.brand,.sidebar-bottom{display:none}.sidebar nav{justify-content:center;width:100%;display:flex}.nav-item{gap:.28rem;width:auto;padding:.58rem .46rem;font-size:.69rem}.nav-item--mobile-signout{display:flex}.workspace{width:100%;padding:1.2rem 1rem 5.3rem}.topbar{align-items:flex-start}.metrics,.form-grid,.resource-grid,.work-forms{grid-template-columns:1fr}.resource-list+.resource-list,.compact-form+.compact-form{border-top:1px solid var(--line);border-left:0}.compact-grid,.compact-grid--hours{grid-template-columns:1fr 1fr}.compact-grid input:last-child{grid-column:1/-1}.team-table__head{display:none}.team-row{grid-template-columns:1fr;gap:.55rem}.team-create,.team-create__form{grid-template-columns:1fr}.team-create__actions{flex-direction:column;align-items:stretch}.team-create__actions .button{width:100%}}@media (max-width:430px){.topbar{flex-direction:column}.topbar .button{width:100%}.project-form,.resource-list,.compact-form{padding-left:1rem;padding-right:1rem}.resource-summary{flex-direction:column;gap:.25rem;padding-left:1rem;padding-right:1rem}}.detail-header--project{justify-content:space-between;align-items:center;gap:1rem;padding:1.35rem 1.4rem 0;display:flex}.project-tabs{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fbfcff;gap:.35rem;margin-top:1.2rem;padding:.65rem 1.4rem;display:flex;overflow-x:auto}.project-tab{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:.5rem;flex:none;padding:.55rem .7rem;font-size:.76rem;font-weight:700}.project-tab:hover:not(:disabled),.project-tab--active{color:var(--forest-deep);background:#e9eeff}.project-tab:disabled{cursor:not-allowed;opacity:.48}.tab-section{padding:1.4rem}.tab-section>*+*{margin-top:1rem}.section-heading h3{margin:0;font-size:1.05rem}.section-heading p{color:var(--muted);margin:.35rem 0 0;font-size:.84rem;line-height:1.5}.economic-strip,.movement-summary,.profit-card,.comparison-grid,.financial-breakdown{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.economic-strip{margin-bottom:1.2rem}.economic-strip span,.movement-summary span,.profit-card span,.comparison-grid>div,.financial-breakdown>div{background:#f9faff;border:1px solid #e6eaf2;border-radius:.65rem;gap:.25rem;min-width:0;padding:.8rem;display:grid}.economic-strip small,.movement-summary small,.profit-card small,.comparison-grid small{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:700}.economic-strip strong,.movement-summary strong,.profit-card strong,.comparison-grid strong{text-overflow:ellipsis;font-size:1rem;overflow:hidden}.compact-form--wide{margin-top:1.25rem}.compact-form--wide h3{margin:0 0 .85rem;font-size:.95rem}.compact-grid--time-entry{grid-template-columns:.75fr 1fr .72fr .72fr 1.45fr}.compact-grid--materials{grid-template-columns:1.35fr .9fr .65fr .85fr 1fr 1fr}.compact-grid--costs{grid-template-columns:.95fr 1.35fr .75fr .85fr 1fr}.compact-grid--income{grid-template-columns:1.2fr .75fr .9fr .9fr .9fr 1fr}.form-help{color:var(--muted);margin:.7rem 0;font-size:.76rem}.record-list{gap:.65rem;display:grid}.record-row{background:#fff;border:1px solid #e6eaf2;border-radius:.7rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding:.9rem;display:grid}.record-row__heading{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.record-row__main{gap:.22rem;min-width:0;display:grid}.record-row__main p,.record-row__main span{color:var(--muted);margin:0;font-size:.76rem}.record-row__numbers{text-align:right;white-space:nowrap;justify-items:end;gap:.22rem;display:grid}.record-row__numbers span,.record-row__numbers small{color:var(--muted);font-size:.72rem}.movement-chip,.validation-badge,.role-chip{white-space:nowrap;border-radius:999px;padding:.22rem .48rem;font-size:.65rem;font-weight:800}.movement-chip--presupuestado{color:#695b13;background:#f9f1cc}.movement-chip--entrega{color:#174b72;background:#e0effa}.movement-chip--devolucion{color:#78541b;background:#fff0db}.movement-chip--utilizado{color:#2044c3;background:#e5ebff}.validation-badge--pendiente{color:#73500c;background:#fff1ca}.validation-badge--aprobado{color:#2044c3;background:#e5ebff}.validation-badge--devuelto{color:#a33939;background:#fde1e1}.role-chip{color:#45506a;background:#eef1f8}.review-form{border-top:1px solid #eff1f6;grid-column:1/-1;grid-template-columns:minmax(8rem,.8fr) minmax(12rem,1.5fr) auto;align-items:center;gap:.55rem;padding-top:.75rem;display:grid}.review-form input,.review-form select{min-width:0}.financial-breakdown{grid-template-columns:repeat(2,minmax(0,1fr))}.financial-breakdown>div{grid-template-columns:minmax(0,1fr) auto;align-items:center}.financial-breakdown span{color:var(--muted);font-size:.8rem}.financial-breakdown__total{background:#eff2ff!important;border-color:#c6d0f7!important}.comparison-grid{margin-top:.8rem}.comparison-grid--hours{margin-top:.65rem}.profit-card{margin-bottom:1.1rem}.amount-positive{color:#2044c3}.amount-negative{color:#b33d3d}.pending-note,.permission-note{color:var(--muted);margin:.85rem 0;font-size:.82rem;line-height:1.5}.catalog-warning{color:#3d4964;background:#f6f8ff;border:1px dashed #b9c7ec;border-radius:.7rem;gap:.3rem;padding:1rem;font-size:.84rem;display:grid}.catalog-warning span{color:var(--muted)}.team-table__head--rates,.team-row--rates{grid-template-columns:minmax(12rem,1.4fr) minmax(9rem,.85fr) minmax(8rem,.75fr) auto}@media (max-width:960px){.compact-grid--time-entry,.compact-grid--materials,.compact-grid--costs,.compact-grid--income{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.detail-header--project{align-items:flex-start;padding:1.1rem 1rem 0}.project-tabs{margin-top:.9rem;padding:.55rem 1rem}.tab-section{padding:1rem}.economic-strip,.movement-summary,.profit-card,.comparison-grid,.financial-breakdown,.compact-grid--time-entry,.compact-grid--materials,.compact-grid--costs,.compact-grid--income,.review-form{grid-template-columns:1fr}.record-row{grid-template-columns:1fr;gap:.6rem}.record-row__numbers{text-align:left;justify-items:start}.team-row--rates{grid-template-columns:1fr}}@media (max-width:900px){.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}}@media (max-width:620px){.economic-dashboard__header{flex-direction:column;align-items:stretch;padding:1.1rem 1rem .95rem}.dashboard-selector{width:100%}.dashboard-hero{grid-template-columns:1fr;margin:0 1rem;padding:1.05rem}.dashboard-hero__status{grid-auto-flow:initial;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.dashboard-hero__status span{min-width:0;padding-left:.5rem}.dashboard-kpis{grid-template-columns:1fr;padding:.8rem 1rem}.dashboard-grid{padding:0 1rem 1rem}}
