:root{--fn-navy:#111a2e;--fn-navy2:#1d2d50;--fn-blue:#2f6fed;--fn-paper:#f4f6f9;--fn-line:#e5e9f0;--fn-ink:#172033;--fn-muted:#7c8798;--fn-green:#26a47a;--fn-amber:#e6a11f}*{box-sizing:border-box}html{background:var(--fn-paper)}body{margin:0!important;padding:28px 32px 50px 264px!important;background:var(--fn-paper)!important;color:var(--fn-ink)!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;min-height:100vh}.fn-sidebar{position:fixed;inset:0 auto 0 0;width:232px;background:var(--fn-navy);color:#fff;padding:27px 17px;display:flex;flex-direction:column;z-index:9999;box-shadow:10px 0 35px rgba(11,19,35,.08)}.fn-brand{display:flex;align-items:center;gap:11px;padding:0 8px 25px;border-bottom:1px solid rgba(255,255,255,.09);text-decoration:none!important;color:#fff!important}.fn-mark{width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,#397cf6,#7047d7);font-weight:800;font-size:13px}.fn-brand strong,.fn-brand small{display:block}.fn-brand strong{font-size:14px}.fn-brand small{color:#8995ad;font-size:10px;margin-top:2px}.fn-nav{display:flex;flex-direction:column;gap:4px;margin-top:23px}.fn-nav a{display:flex;align-items:center;gap:11px;padding:11px 12px;color:#aab4c7!important;text-decoration:none!important;border-radius:10px;font-size:12px;font-weight:700;transition:.18s}.fn-nav a:hover,.fn-nav a.is-active{color:#fff!important;background:var(--fn-blue);box-shadow:0 8px 20px rgba(5,18,49,.35)}.fn-nav i{width:20px;text-align:center;font-style:normal}.fn-user{margin-top:auto;padding:17px 8px 0;border-top:1px solid rgba(255,255,255,.09);font-size:10px;color:#7e8aa2}.fn-user strong{display:block;color:#fff;font-size:11px;margin-bottom:2px}h1,h2,h3,h4{color:var(--fn-ink)!important;letter-spacing:-.025em}a{color:var(--fn-blue)}button,input,select,textarea{font-family:inherit!important}.layout-principal{display:grid!important;grid-template-columns:minmax(280px,340px) minmax(0,1fr)!important;gap:18px!important;align-items:start!important;max-width:1480px;margin:0 auto!important}.col-izq{width:auto!important;min-width:0!important;max-width:none!important;resize:none!important;position:static!important;max-height:none!important;overflow:visible!important;padding:0!important;border:0!important;gap:14px!important}.col-der{gap:14px!important}.panel-mando{background:linear-gradient(135deg,var(--fn-navy),#294778)!important;border-radius:16px!important;padding:24px!important;box-shadow:0 12px 32px rgba(13,29,57,.18)!important;text-align:left!important}.reloj-hora{font-size:2.3rem!important;letter-spacing:-.04em!important}.reloj-fecha{font-size:.8rem!important;color:#b8c5db!important;margin-top:4px}.modulos-grid{display:none!important}.panel-proyectos-izq,.panel-inbox,.tabs-container,.task-card,.proyecto-card,.card,.container,.panel,.modal-content,form{border-radius:14px!important}.panel-proyectos-izq{background:#fff!important;border:1px solid var(--fn-line)!important;padding:18px!important;box-shadow:0 2px 9px rgba(23,32,51,.04)!important}.titulo-izq{color:var(--fn-ink)!important;border-color:var(--fn-line)!important}.item-proyecto{background:#f8fafc!important;border:1px solid var(--fn-line)!important;border-radius:9px!important;padding:12px!important}.item-proyecto:hover{border-color:#b9cdf7!important;background:#f2f6ff!important;transform:translateY(-1px)}.panel-inbox{background:linear-gradient(145deg,#17233c,#223969)!important;border-radius:14px!important;padding:18px!important}.input-rapido,input[type=text],input[type=date],input[type=number],input[type=email],input[type=password],select,textarea{border:1px solid #dce2ea!important;border-radius:9px!important;padding:10px 12px!important;background:#fff!important;color:#28344a!important;outline:none!important}.input-rapido:focus,input:focus,select:focus,textarea:focus{border-color:var(--fn-blue)!important;box-shadow:0 0 0 3px rgba(47,111,237,.12)!important}.tabs-container{background:#fff!important;border:1px solid var(--fn-line)!important;box-shadow:0 3px 14px rgba(23,32,51,.05)!important}.tabs-header{background:#f7f9fc!important;border-color:var(--fn-line)!important;padding:4px!important;gap:4px}.tab-btn{border-radius:8px!important;border:0!important;color:#738097!important;font-size:11px!important;padding:11px 12px!important}.tab-btn.active{background:#fff!important;color:var(--fn-blue)!important;box-shadow:0 2px 8px rgba(23,32,51,.08)!important}.tab-content{padding:24px!important}.header-trabajo h2{font-size:1.35rem!important}.task-card{border:1px solid var(--fn-line)!important;border-left-width:4px!important;padding:14px!important;background:#fff!important;box-shadow:0 1px 4px rgba(23,32,51,.03)}.task-card:hover{box-shadow:0 6px 18px rgba(23,32,51,.08)!important;transform:translateY(-1px)}.btn-modulo,.btn-completar,.btn-posponer,.btn-eliminar-tarea,.btn,.button,button[type=submit],input[type=submit]{border:0!important;border-radius:9px!important;font-weight:750!important;text-decoration:none!important;transition:.18s}.btn-modulo,button[type=submit],input[type=submit]{background:var(--fn-blue)!important;color:#fff!important;padding:10px 15px!important;box-shadow:0 7px 17px rgba(47,111,237,.2)}.btn-modulo:hover,button[type=submit]:hover,input[type=submit]:hover{filter:brightness(.96);transform:translateY(-1px)}table{width:100%;border-collapse:separate!important;border-spacing:0!important;background:#fff!important;border:1px solid var(--fn-line)!important;border-radius:12px!important;overflow:hidden}th{background:#f7f9fc!important;color:#738097!important;text-transform:uppercase;font-size:10px!important;letter-spacing:.05em;padding:12px!important}td{border-color:#edf0f4!important;padding:12px!important}.fn-edit-hint{display:inline-flex;margin-left:8px;color:var(--fn-blue)!important;background:#edf3ff;padding:3px 7px;border-radius:12px;font-size:9px!important;font-weight:800;text-decoration:none!important}.modal-content{border:1px solid var(--fn-line)!important;box-shadow:0 24px 70px rgba(7,16,31,.3)!important}.empty-state{color:var(--fn-muted)!important}.p-Alta{background:#db4b5e!important}.p-Media{background:#e6a11f!important}.p-Baja{background:#26a47a!important}@media(max-width:980px){body{padding:92px 18px 36px!important}.fn-sidebar{inset:0 0 auto 0;width:auto;height:72px;padding:10px 15px;flex-direction:row;align-items:center;overflow-x:auto}.fn-brand{border:0;padding:0 16px 0 0;flex:0 0 auto}.fn-brand small,.fn-user{display:none}.fn-nav{margin:0;flex-direction:row;gap:4px}.fn-nav a{white-space:nowrap;padding:9px 10px}.layout-principal{grid-template-columns:1fr!important}.col-izq{position:static!important}.panel-mando{display:none}.panel-proyectos-izq{order:1}.panel-inbox{order:2}}@media(max-width:620px){body{padding-left:12px!important;padding-right:12px!important}.fn-sidebar{height:68px}.fn-brand strong{display:none}.fn-brand{padding-right:5px}.fn-nav a{font-size:0;padding:9px}.fn-nav i{font-size:15px}.tabs-header{overflow-x:auto}.tab-btn{min-width:125px}.tab-content{padding:16px!important}.task-card{display:block!important}.acciones-right{margin-top:10px!important}.layout-principal{gap:12px!important}}

/* KMS + resumen ejecutivo */
.kms-page{max-width:1440px;margin:0 auto;padding:34px 38px 60px;color:#1f2937}.kms-page.narrow{max-width:820px}.kms-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.kms-hero h1{font-size:42px;line-height:1;margin:7px 0 8px;color:#132238}.kms-hero p{margin:0;color:#697586}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.14em;color:#df6c35}.month-filter{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;color:#697586}.month-filter input,.kms-form input,.kms-form select,.kms-form textarea{border:1px solid #dbe2ea;border-radius:9px;padding:10px 11px;background:#fff;color:#1f2937;font:inherit;box-sizing:border-box;width:100%}.kms-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:22px}.kms-kpis.four{grid-template-columns:repeat(4,minmax(0,1fr))}.kms-kpis article{background:#fff;border:1px solid #e4e9ef;border-radius:14px;padding:18px;box-shadow:0 8px 22px rgba(30,50,70,.04)}.kms-kpis article.accent{background:#152941;color:#fff;border-color:#152941}.kms-kpis span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#7a8795;margin-bottom:8px}.kms-kpis .accent span{color:#b9c6d4}.kms-kpis strong{font-size:23px;white-space:nowrap}.kms-actions{display:grid;grid-template-columns:2fr 1fr 1fr;gap:13px;margin-bottom:22px}.kms-actions details,.kms-panel{background:#fff;border:1px solid #e4e9ef;border-radius:14px;box-shadow:0 8px 22px rgba(30,50,70,.04)}.kms-actions summary{padding:16px 18px;font-weight:750;cursor:pointer;color:#24364a}.kms-form{padding:5px 18px 18px}.grid-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.kms-form label{font-size:12px;font-weight:700;color:#5d6978;display:flex;flex-direction:column;gap:6px}.kms-form label.wide{grid-column:1/-1}.kms-form textarea{min-height:74px;resize:vertical}.inline-form{display:flex;gap:8px}.kms-primary{border:0;border-radius:9px;padding:11px 15px;background:#e66f38;color:#fff;font-weight:750;cursor:pointer;align-self:end}.kms-primary:hover{background:#cb5926}.kms-panel{padding:22px;margin-bottom:20px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:17px}.section-title h1,.section-title h2{margin:3px 0;color:#1b2f46}.section-title h2{font-size:20px}.table-wrap{overflow:auto}.kms-table{width:100%;border-collapse:collapse;font-size:13px}.kms-table th{text-align:left;color:#788493;font-size:10px;text-transform:uppercase;letter-spacing:.07em;padding:10px;border-bottom:1px solid #e8edf2}.kms-table td{padding:13px 10px;border-bottom:1px solid #eef1f4}.kms-table a{color:#173f65;text-decoration:none}.kms-table a:hover{text-decoration:underline}.status{display:inline-block;background:#eef2f6;color:#4d5b69;border-radius:99px;padding:5px 9px;font-size:11px;font-weight:700}.status.activo{background:#e8f5ee;color:#17704b}.status.en-pausa{background:#fff5df;color:#9b6410}.empty{text-align:center;color:#8a96a3;padding:25px!important}.kms-two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:20px}.task-list{padding:0 18px 18px}.kms-task{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border-top:1px solid #edf1f4;padding:12px 0}.kms-task button{border:0;background:transparent;font-size:20px;color:#e66f38;cursor:pointer}.kms-task small{display:block;color:#82909e;margin-top:3px}.kms-task>span{font-size:11px;font-weight:700;color:#778594}.kms-task.done{opacity:.55}.kms-task.done strong{text-decoration:line-through}.movement-form{display:grid;grid-template-columns:1fr 1.2fr 1.3fr 2fr 1fr 1.1fr auto;gap:10px;align-items:end;padding:0 0 22px}.back-link{display:inline-block;color:#5c6b7a;text-decoration:none;margin-bottom:18px;font-weight:650}.fn-exec-summary{max-width:1440px;margin:30px auto 0;padding:0 38px}.fn-exec-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:13px}.fn-exec-head h1{margin:5px 0 0;font-size:28px;color:#14283f}.fn-exec-head a{color:#d85f2b;text-decoration:none;font-weight:700}.fn-exec-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.fn-exec-card{background:#fff;border:1px solid #e4e9ef;border-radius:13px;padding:15px;box-shadow:0 7px 18px rgba(30,50,70,.035)}.fn-exec-card span{display:block;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#7a8795;margin-bottom:7px}.fn-exec-card strong{font-size:19px;color:#1a2e45}.fn-exec-card.primary{background:#14283f;border-color:#14283f}.fn-exec-card.primary span{color:#b8c5d1}.fn-exec-card.primary strong{color:#fff}@media(max-width:1100px){.kms-kpis,.fn-exec-grid{grid-template-columns:repeat(2,1fr)}.kms-actions,.kms-two-col{grid-template-columns:1fr}.movement-form{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.kms-page,.fn-exec-summary{padding-left:16px;padding-right:16px}.kms-hero{align-items:flex-start;flex-direction:column}.kms-kpis,.kms-kpis.four,.fn-exec-grid,.grid-form,.movement-form{grid-template-columns:1fr}.kms-actions{grid-template-columns:1fr}}

/* Dashboard ejecutivo v2 */
.fn-exec-head p{margin:5px 0 0;color:#7a8795}.fn-head-actions{display:flex;align-items:center;gap:9px}.fn-head-actions a{border:1px solid #dfe5eb;border-radius:9px;padding:9px 12px;background:#fff}.fn-live-clock{display:flex;align-items:baseline;gap:7px;border-right:1px solid #dce3e9;padding-right:14px;margin-right:4px}.fn-live-clock strong{font-size:18px;color:#17314c}.fn-live-clock span{font-size:10px;text-transform:capitalize;color:#84909d}.fn-exec-card small{display:block;color:#8793a0;font-size:10px;margin-top:6px}.fn-exec-card.primary small{color:#b8c5d1}.fn-capture-bar{display:grid;grid-template-columns:auto minmax(320px,1fr) auto;gap:18px;align-items:center;background:#162b43;border-radius:13px;padding:12px 15px;margin-top:13px;color:#fff}.fn-capture-bar>div:first-child{display:flex;flex-direction:column;gap:3px}.fn-capture-bar>div:first-child strong{font-size:12px}.fn-capture-bar form{display:flex;gap:8px}.fn-capture-bar input{width:100%;border:0;border-radius:8px;padding:11px 13px;background:#fff;color:#20354b}.fn-capture-bar form button{border:0;border-radius:8px;background:#f2763f;color:#fff;font-weight:750;padding:0 15px;white-space:nowrap;cursor:pointer}.fn-inbox-preview{display:flex;align-items:center;gap:6px;max-width:330px}.fn-inbox-preview>span{font-size:10px;color:#b9c7d4;white-space:nowrap}.fn-inbox-preview button{max-width:115px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid #3a5068;background:#223b55;color:#dce6ef;border-radius:7px;padding:7px;font-size:10px;cursor:pointer}.fn-insight-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:13px}.fn-insight-card{background:#fff;border:1px solid #e4e9ef;border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(30,50,70,.04);min-width:0}.fn-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.fn-card-title h2{font-size:17px;margin:4px 0;color:#1a2e45}.fn-card-title a{font-size:10px;color:#d85f2b;text-decoration:none;font-weight:750}.fn-list-row{display:grid;grid-template-columns:38px 1fr auto;gap:9px;align-items:center;padding:9px 0;border-top:1px solid #eef1f4;text-decoration:none;color:inherit}.fn-list-row time{display:grid;place-items:center;background:#f1f4f7;border-radius:8px;padding:7px 3px;font-size:10px;font-weight:800;color:#526170}.fn-list-row strong{display:block;font-size:12px;color:#24364a;line-height:1.25}.fn-list-row small{display:block;font-size:10px;color:#84909d;margin-top:2px}.fn-list-row em{font-size:9px;font-style:normal;color:#687787;background:#eef2f5;border-radius:99px;padding:4px 7px}.fn-list-row.linked:hover{background:#fafbfc}.fn-priority{width:9px;height:9px;border-radius:50%;background:#f1b44c;margin-left:10px}.fn-priority.alta{background:#df4f52}.fn-priority.baja{background:#4d9d79}.fn-kms-mark,.fn-project-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;font-size:11px;font-weight:900;margin-left:2px}.fn-kms-mark{background:#fff0e9;color:#d65e29}.fn-project-mark{background:#eaf2ff;color:#2f6edb}.fn-empty{color:#8a96a3;font-size:11px;padding:14px 0;margin:0}.fn-habit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.fn-habit-grid div{background:#f6f8fa;border-radius:9px;padding:12px 9px}.fn-habit-grid strong{display:block;font-size:18px;color:#18324c}.fn-habit-grid span{display:block;font-size:9px;color:#7e8b98;margin-top:3px}.layout-principal{display:block!important;max-width:1440px!important;margin:14px auto 60px!important;padding:0 38px!important;box-sizing:border-box}.layout-principal>.col-izq{display:none!important}.layout-principal>.col-der{width:100%!important;min-width:0}.layout-principal .tabs-container{border-radius:14px!important;border:1px solid #e3e9ef!important;box-shadow:0 8px 22px rgba(30,50,70,.04)!important;overflow:hidden}.layout-principal .tabs-header .tab-btn:nth-child(3),.layout-principal #tab-finanzas{display:none!important}.layout-principal .tabs-header .tab-btn{flex:1!important}.layout-principal .tab-content{padding:24px!important}@media(max-width:1200px){.fn-insight-grid{grid-template-columns:repeat(2,1fr)}.fn-capture-bar{grid-template-columns:1fr 2fr}.fn-inbox-preview{display:none}}@media(max-width:900px){.fn-insight-grid{grid-template-columns:1fr}.fn-head-actions{display:none}.fn-capture-bar{grid-template-columns:1fr}.fn-capture-bar>div:first-child{display:none}.layout-principal{padding-left:16px!important;padding-right:16px!important}}@media(max-width:600px){.fn-habit-grid{grid-template-columns:repeat(2,1fr)}.fn-capture-bar form{flex-direction:column}.fn-capture-bar form button{padding:10px}}

/* Centro financiero consolidado */
.fin-page{max-width:1440px;margin:0 auto;padding:34px 38px 60px;color:#1f2937}.fin-hero{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.fin-hero h1{font-size:34px;margin:6px 0;color:#152b43}.fin-hero p{margin:0;color:#72808e}.fin-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.fin-card{background:#fff;border:1px solid #e3e9ef;border-radius:14px;padding:17px;box-shadow:0 7px 20px rgba(30,50,70,.04)}.fin-card.primary{background:#152b43;border-color:#152b43;color:#fff}.fin-card span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#7e8b98;margin-bottom:7px}.fin-card.primary span{color:#b8c6d3}.fin-card strong{font-size:22px}.fin-card small{display:block;margin-top:6px;color:#8794a1;font-size:10px}.fin-card.primary small{color:#b8c6d3}.fin-sections{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}.fin-panel{background:#fff;border:1px solid #e3e9ef;border-radius:14px;padding:20px;box-shadow:0 7px 20px rgba(30,50,70,.04)}.fin-panel h2{font-size:19px;margin:4px 0 15px;color:#1c334c}.fin-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.fin-metric{background:#f6f8fa;border-radius:10px;padding:13px}.fin-metric span{display:block;font-size:10px;color:#7d8997;margin-bottom:4px}.fin-metric strong{font-size:17px;color:#213b55}.fin-tabs{display:flex;gap:6px;margin-bottom:14px}.fin-tab{border:1px solid #dde4eb;background:#fff;color:#607080;border-radius:8px;padding:8px 12px;font-weight:700;cursor:pointer}.fin-tab.active{background:#17324d;color:#fff;border-color:#17324d}.fin-table-panel{display:none}.fin-table-panel.active{display:block}.fin-table{width:100%;border-collapse:collapse;font-size:12px}.fin-table th{text-align:left;text-transform:uppercase;font-size:9px;letter-spacing:.07em;color:#80909f;border-bottom:1px solid #e5ebf0;padding:9px}.fin-table td{padding:11px 9px;border-bottom:1px solid #edf1f4}.fin-positive{color:#18805a;font-weight:750}.fin-negative{color:#c54c4f;font-weight:750}.fin-note{font-size:11px;color:#7e8b98;margin-top:12px}.fin-link{color:#d7602b;text-decoration:none;font-weight:750}@media(max-width:950px){.fin-summary,.fin-sections{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.fin-page{padding-left:16px;padding-right:16px}.fin-summary,.fin-sections{grid-template-columns:1fr}.fin-hero{align-items:flex-start;flex-direction:column}}

/* Inicio v4: captura / Tasks / contexto */
.layout-principal{display:grid!important;grid-template-columns:minmax(215px,250px) minmax(0,1fr) minmax(220px,265px)!important;gap:14px!important;align-items:start!important;max-width:1440px!important;margin:14px auto 60px!important;padding:0 38px!important;box-sizing:border-box}.layout-principal>.col-izq{display:block!important;width:auto!important;min-width:0}.layout-principal>.col-izq>.panel-mando,.layout-principal>.col-izq>.modulos-grid,.layout-principal>.col-izq>.panel-proyectos-izq{display:none!important}.layout-principal>.col-der{width:auto!important;min-width:0;grid-column:2}.layout-principal .tabs-container{border-radius:14px!important;border:1px solid #e3e9ef!important;box-shadow:0 8px 22px rgba(30,50,70,.04)!important;overflow:hidden;background:#fff}.layout-principal .tab-content{padding:22px!important}.layout-principal .tabs-header .tab-btn:nth-child(3),.layout-principal #tab-finanzas{display:none!important}.layout-principal .tabs-header .tab-btn{flex:1!important}.col-izq .panel-inbox{position:sticky;top:18px;background:#fff!important;border:1px solid #e3e9ef;border-radius:14px!important;padding:16px!important;box-shadow:0 8px 22px rgba(30,50,70,.04)!important;color:#20364d!important}.col-izq .panel-inbox>div:first-child{color:#ed6b32!important;font-size:10px!important;letter-spacing:.09em;margin-bottom:12px!important}.col-izq .panel-inbox .input-rapido{width:100%!important;box-sizing:border-box;border:1px solid #dce3e9!important;border-radius:9px!important;padding:11px!important;background:#f8fafb!important;color:#24374b!important;margin-bottom:10px}.col-izq .panel-inbox>div:last-child{max-height:none!important;overflow:visible!important}.col-izq .inbox-item{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:8px!important;padding:10px 0!important;border-bottom:1px solid #edf1f4!important;color:#293e54!important;font-size:11px!important}.col-izq .inbox-item>span{line-height:1.35;flex:1}.col-izq .btn-modal-inbox{border:0!important;border-radius:7px!important;background:#17334e!important;color:#fff!important;padding:6px 8px!important;font-size:9px!important;cursor:pointer}.fn-right-rail{grid-column:3;display:flex;flex-direction:column;gap:14px;position:sticky;top:18px;min-width:0}.fn-rail-card{background:#fff;border:1px solid #e3e9ef;border-radius:14px;padding:16px;box-shadow:0 8px 22px rgba(30,50,70,.04);min-width:0}.fn-rail-card .fn-list-row{grid-template-columns:34px 1fr;padding:9px 0}.fn-rail-card .fn-card-title h2{font-size:16px}.fn-rail-card .fn-habit-grid{grid-template-columns:repeat(2,1fr)}.fn-rail-card .fn-habit-grid div{padding:11px 8px}.fn-rail-card .fn-habit-grid strong{font-size:17px}.tabs-container .header-trabajo h2{font-size:24px!important;color:#172d45!important}.tabs-container .task-card{padding:15px 12px!important}.tabs-container .task-title{font-size:14px!important}.tabs-container .task-desc{font-size:12px!important;line-height:1.45!important;max-width:none!important}.tabs-container .seccion-tareas{margin-top:22px!important}.tabs-container .titulo-seccion{font-size:11px!important;letter-spacing:.07em!important}@media(max-width:1180px){.layout-principal{grid-template-columns:220px minmax(0,1fr)!important}.fn-right-rail{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;position:static}.col-izq .panel-inbox{position:static}}@media(max-width:780px){.layout-principal{grid-template-columns:1fr!important;padding-left:16px!important;padding-right:16px!important}.layout-principal>.col-izq,.layout-principal>.col-der,.fn-right-rail{grid-column:1!important}.fn-right-rail{display:flex}.col-izq .panel-inbox{max-height:none}.fn-exec-summary{padding-left:16px!important;padding-right:16px!important}}

/* Tasks v6: inbox editable + lista única con scroll */
.layout-principal .tabs-header{display:none!important}.layout-principal>.col-der .tabs-container{height:calc(100vh - 292px)!important;min-height:560px!important;max-height:900px!important;overflow:hidden!important}.layout-principal #tab-tareas{display:block!important;height:100%!important;overflow-y:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable;box-sizing:border-box;padding-right:20px!important}.layout-principal #tab-tareas::-webkit-scrollbar{width:9px}.layout-principal #tab-tareas::-webkit-scrollbar-track{background:#f3f6f8;border-radius:9px}.layout-principal #tab-tareas::-webkit-scrollbar-thumb{background:#c9d3dd;border-radius:9px;border:2px solid #f3f6f8}.layout-principal #tab-tareas::-webkit-scrollbar-thumb:hover{background:#9cabb9}.col-izq .inbox-item{border-left:0!important;padding:11px 3px!important;margin:0!important;border-radius:0!important;background:transparent!important}.col-izq .inbox-item>div{display:flex!important;align-items:center!important;gap:5px!important;flex-shrink:0}.col-izq .btn-edit-inbox{border:1px solid #dbe3ea!important;border-radius:7px!important;background:#fff!important;color:#52677b!important;padding:5px 7px!important;font-size:11px!important;line-height:1!important;cursor:pointer}.col-izq .btn-edit-inbox:hover{border-color:#8fa2b4!important;color:#17334e!important}.col-izq .btn-modal-inbox{margin:0!important}.col-izq .inbox-item a{margin-left:0!important}@media(max-width:1180px){.layout-principal>.col-der .tabs-container{height:calc(100vh - 292px)!important}}@media(max-width:780px){.layout-principal>.col-der .tabs-container{height:70vh!important;min-height:520px!important}}

/* Tasks v7: encabezado fijo */
.layout-principal #tab-tareas>.header-trabajo{position:sticky!important;top:-22px!important;z-index:25;background:#fff!important;padding:22px 0 14px!important;margin:0 0 18px!important;border-bottom:1px solid #e5ebf0!important;box-shadow:0 8px 14px -14px rgba(22,43,67,.45)}
.layout-principal #tab-tareas>.header-trabajo .btn-modulo{position:relative;z-index:26}
/* Registro rápido flotante */
.qe-fab{position:fixed;right:28px;bottom:28px;z-index:90;display:flex;align-items:center;gap:10px;border:0;border-radius:15px;padding:13px 19px;background:#f26522;color:#fff;font:700 15px/1 inherit;box-shadow:0 12px 30px rgba(15,35,59,.25);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.qe-fab:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(15,35,59,.3)}.qe-fab-plus{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:rgba(255,255,255,.18);font-size:21px}.qe-overlay[hidden]{display:none}.qe-overlay{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:rgba(9,23,43,.58);backdrop-filter:blur(5px)}.qe-lock{overflow:hidden}.qe-modal{width:min(760px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid #dfe5ec;border-radius:22px;background:#fff;box-shadow:0 30px 80px rgba(7,23,43,.28)}.qe-header{display:flex;justify-content:space-between;gap:20px;padding:25px 28px 18px}.qe-header h2{margin:3px 0 4px;color:#0f233b;font-size:25px}.qe-header p{margin:0;color:#8492a6;font-size:14px}.qe-kicker{color:#ed5a24;font-size:11px;font-weight:800;letter-spacing:1.4px}.qe-close{width:38px;height:38px;border:1px solid #dfe5ec;border-radius:11px;background:#f7f9fb;color:#6f7f91;font-size:25px;line-height:1;cursor:pointer}.qe-types{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:0 28px 20px;border-bottom:1px solid #e8edf2}.qe-type{display:flex;flex-direction:column;gap:2px;min-height:62px;padding:11px 13px;border:1px solid #dfe5ec;border-radius:12px;background:#f8fafc;color:#4b5d70;text-align:left;cursor:pointer}.qe-type b{color:#1a2d44;font-size:14px}.qe-type span{font-size:11px}.qe-type.active{border-color:#2f6fec;background:#edf4ff;box-shadow:inset 0 0 0 1px #2f6fec}.qe-type.active b{color:#245fda}.qe-panel{display:none;padding:24px 28px 28px}.qe-panel.active{display:block}.qe-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.qe-field{display:flex;flex-direction:column;gap:7px}.qe-span-2{grid-column:span 2}.qe-field label{color:#4d6073;font-size:12px;font-weight:750}.qe-field input,.qe-field select{width:100%;height:44px;box-sizing:border-box;border:1px solid #d8e0e9;border-radius:10px;padding:0 12px;background:#fff;color:#162b43;font:inherit;outline:none}.qe-field input:focus,.qe-field select:focus{border-color:#2f6fec;box-shadow:0 0 0 3px rgba(47,111,236,.12)}.qe-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:5px;padding-top:18px;border-top:1px solid #e8edf2}.qe-cancel,.qe-save{height:42px;border-radius:10px;padding:0 18px;font-weight:750;cursor:pointer}.qe-cancel{border:1px solid #d8e0e9;background:#fff;color:#5c6d7f}.qe-save{border:0;background:#2f6fec;color:#fff;box-shadow:0 7px 16px rgba(47,111,236,.2)}
@media(max-width:720px){.qe-overlay{padding:10px;align-items:end}.qe-modal{max-height:92vh;border-radius:20px 20px 10px 10px}.qe-header{padding:20px 18px 14px}.qe-types{grid-template-columns:1fr 1fr;padding:0 18px 16px}.qe-panel{padding:20px 18px}.qe-form{grid-template-columns:1fr}.qe-span-2{grid-column:span 1}.qe-fab{right:16px;bottom:16px}.qe-fab span:last-child{display:none}}
/* Servicio personalizado en registro rápido */
.qe-custom-service{margin-top:-4px;padding:13px 14px;border:1px dashed #9bb9ef;border-radius:11px;background:#f5f8ff}.qe-custom-service[hidden]{display:none}.qe-custom-service small{color:#75869a;font-size:11px}
/* Indicador de subtareas en Tasks */
.task-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.task-subtask-badge{display:inline-flex;align-items:center;white-space:nowrap;padding:3px 7px;border:1px solid #cbd9ee;border-radius:999px;background:#f2f6fc;color:#48637f;font-size:10px;font-weight:800;line-height:1.2;letter-spacing:.1px}.task-subtask-badge.is-done{border-color:#bde5d0;background:#eefaf3;color:#27865a}@media(max-width:700px){.task-subtask-badge span{display:none}}

/* Fase 1: sistema visual y acciones seguras */
:root{--fn-bg:#f3f6fa;--fn-surface:#fff;--fn-surface-soft:#f7f9fc;--fn-navy:#10243c;--fn-navy-2:#183653;--fn-text:#172b43;--fn-muted:#78889b;--fn-border:#dfe6ee;--fn-accent:#eb5d27;--fn-action:#2f6fed;--fn-success:#23845a;--fn-danger:#bd4556;--fn-warning:#b87813;--fn-radius-sm:9px;--fn-radius:14px;--fn-radius-lg:20px;--fn-shadow:0 8px 24px rgba(20,42,70,.07);--fn-focus:0 0 0 3px rgba(47,111,237,.16)}
body:not(.auth-page){background-color:var(--fn-bg);color:var(--fn-text)}
body,button,input,select,textarea{font-family:Inter,"Segoe UI",Arial,sans-serif}
button,input,select,textarea{box-sizing:border-box}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--fn-action);outline-offset:2px}
.fn-sidebar{background:var(--fn-navy)}.fn-nav a.is-active{background:var(--fn-action)}
.fn-inline-form{display:inline-flex;align-items:center;margin:0;padding:0}.fn-inline-form>button{appearance:none;font:inherit;line-height:inherit;cursor:pointer}.fn-inline-form>button.btn-completar,.fn-inline-form>button.btn-eliminar-tarea{border:0;background:transparent}.fn-inline-form>button.btn-posponer{border:0}.fn-inline-form>button[style*="text-decoration"]{border:0;background:transparent}
::selection{background:rgba(47,111,237,.18)}
/* Fase 2: Hábitos compactos y análisis útil */
.fn-habits-page{margin:0!important;background:var(--fn-bg)!important;color:var(--fn-text)!important}.hab-page{width:min(1280px,calc(100% - 64px));margin:0 auto;padding:34px 0 60px}.hab-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.hab-eyebrow,.hab-section-label{display:block;color:var(--fn-accent);font-size:11px;font-weight:850;letter-spacing:1.35px}.hab-header h1{margin:5px 0 3px;color:var(--fn-navy);font-size:30px}.hab-header p,.hab-card-head p,.hab-analysis-head p{margin:0;color:var(--fn-muted);font-size:13px}.hab-btn-secondary,.hab-btn-primary,.hab-week-actions button{border:1px solid var(--fn-border);border-radius:10px;padding:10px 14px;background:var(--fn-surface);color:#52667b;font-weight:750;cursor:pointer}.hab-btn-primary{border-color:var(--fn-action)!important;background:var(--fn-action)!important;color:#fff!important}.hab-streak-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.hab-stat,.hab-card{border:1px solid var(--fn-border);border-radius:var(--fn-radius);background:var(--fn-surface);box-shadow:var(--fn-shadow)}.hab-stat{display:grid;gap:2px;padding:14px 16px}.hab-stat span{color:var(--fn-muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.6px}.hab-stat strong{color:var(--fn-navy);font-size:20px}.hab-stat small{color:#9aa7b6;font-size:10px}.hab-card{padding:20px}.hab-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.hab-card-head h2,.hab-card-head h3,.hab-analysis-head h2{margin:3px 0;color:var(--fn-navy)}.hab-card-head h2{font-size:19px}.hab-card-head h3{font-size:17px}.hab-save-state{border-radius:999px;padding:5px 9px;background:var(--fn-surface-soft);color:var(--fn-muted);font-size:10px;font-weight:750}.hab-save-state[data-state="saving"]{color:var(--fn-warning)}.hab-save-state[data-state="saved"]{background:#eef9f3;color:var(--fn-success)}.hab-save-state[data-state="error"]{background:#fff0f2;color:var(--fn-danger)}.hab-table-wrap{overflow:auto;border:1px solid var(--fn-border);border-radius:11px}.hab-week-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:12px}.hab-week-table th,.hab-week-table td{height:34px;border-right:1px solid #e9eef3;border-bottom:1px solid #e9eef3;padding:0;text-align:center}.hab-week-table th:last-child,.hab-week-table td:last-child{border-right:0}.hab-week-table thead th{height:36px;background:#f4f7fa;color:#647589;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.3px;position:sticky;top:0;z-index:1}.hab-week-table thead small{font-size:8px}.hab-week-table tbody th{width:124px;padding:0 11px;background:#fafbfd;text-align:left}.hab-week-table tbody th strong{display:block;color:#31465d;font-size:11px}.hab-week-table tbody th small{color:#9aa7b5;font-size:9px}.hab-week-table input{width:100%;height:33px;border:0!important;border-radius:0!important;padding:0 5px;background:transparent!important;color:#21364d;text-align:center;font-size:12px;font-weight:750;box-shadow:none!important}.hab-week-table input:hover{background:#f7f9fc!important}.hab-week-table input:focus{background:#eef4ff!important;outline:2px solid var(--fn-action);outline-offset:-2px}.hab-week-table input::placeholder{color:#c1c9d2}.hab-week-table tfoot th,.hab-week-table tfoot td{height:34px;border-bottom:0;background:var(--fn-navy);color:#fff;font-size:10px;font-weight:750}.hab-week-actions{display:flex;align-items:center;justify-content:space-between;margin-top:14px}.hab-week-actions>div{display:flex;gap:7px}.hab-week-actions button{padding:8px 11px;font-size:11px}.hab-analysis-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:28px 2px 12px}.hab-analysis-head h2{font-size:21px}.hab-analysis-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:14px}.hab-chart-box{height:265px}.hab-heatmap{display:grid;grid-template-columns:repeat(10,1fr);gap:7px;margin-top:20px}.hab-heat-cell{aspect-ratio:1;border-radius:6px;display:grid;place-items:center;background:#edf1f5;color:#8c99a8;font-size:8px;font-weight:800;cursor:help}.hab-heat-cell.level-1{background:#dce8fb;color:#41658f}.hab-heat-cell.level-2{background:#91b7ee;color:#183e6c}.hab-heat-cell.level-3{background:#2f6fed;color:#fff}.hab-heat-legend{display:flex;flex-wrap:wrap;gap:11px;margin-top:14px;color:var(--fn-muted);font-size:9px}.hab-heat-legend span{display:flex;align-items:center;gap:5px}.hab-heat-legend i{width:10px;height:10px;border-radius:3px;background:#edf1f5}.hab-heat-legend .l1{background:#dce8fb}.hab-heat-legend .l2{background:#91b7ee}.hab-heat-legend .l3{background:#2f6fed}.hab-comparison-card{margin-top:14px}.hab-comparison-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px}.hab-comparison-grid article{display:grid;gap:3px;padding:11px 12px;border-radius:10px;background:var(--fn-surface-soft)}.hab-comparison-grid span{color:var(--fn-muted);font-size:9px;font-weight:800;text-transform:uppercase}.hab-comparison-grid strong{color:var(--fn-navy);font-size:16px}.hab-comparison-grid small{font-size:9px}.hab-comparison-grid .up{color:var(--fn-success)}.hab-comparison-grid .down{color:var(--fn-danger)}.hab-comparison-grid .same{color:var(--fn-muted)}.hab-modal[hidden]{display:none}.hab-modal{position:fixed;inset:0;z-index:220;display:grid;place-items:center;padding:24px;background:rgba(10,26,44,.58);backdrop-filter:blur(5px)}.hab-modal-panel{width:min(1120px,100%);max-height:88vh;overflow:auto;border-radius:var(--fn-radius-lg);background:#fff;padding:24px;box-shadow:0 30px 80px rgba(7,23,43,.28)}.hab-modal-panel>header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.hab-modal-panel h2{margin:4px 0;color:var(--fn-navy)}.hab-modal-panel>header button{width:38px;height:38px;border:1px solid var(--fn-border);border-radius:10px;background:#f7f9fb;color:#647589;font-size:23px}.hab-history-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.hab-history-grid h3{color:var(--fn-navy);font-size:15px}.hab-history-table{max-height:58vh;overflow:auto;border:1px solid var(--fn-border);border-radius:10px}.hab-history-table table{width:100%;border-collapse:collapse;font-size:10px}.hab-history-table th,.hab-history-table td{padding:9px;border-bottom:1px solid #edf1f5;text-align:right}.hab-history-table th:first-child{text-align:left}.hab-history-table thead th{position:sticky;top:0;background:var(--fn-navy);color:#fff}
@media(max-width:980px){.hab-analysis-grid{grid-template-columns:1fr}.hab-comparison-grid{grid-template-columns:repeat(3,1fr)}.hab-history-grid{grid-template-columns:1fr}.hab-streak-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.hab-page{width:calc(100% - 24px);padding-top:20px}.hab-header,.hab-analysis-head{align-items:flex-start;flex-direction:column}.hab-card{padding:14px}.hab-week-table{min-width:720px}.hab-week-actions{align-items:stretch;flex-direction:column;gap:9px}.hab-week-actions>div{justify-content:space-between}.hab-comparison-grid{grid-template-columns:repeat(2,1fr)}}

/* Fase 3: Clases rápidas, filtradas y paginadas */
.fn-page{width:min(1380px,calc(100% - 64px));margin:0 auto;padding:34px 0 60px}.fn-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.fn-page-header h1{margin:5px 0 4px;font-size:30px;color:var(--fn-navy)}.fn-page-header p{margin:0;color:var(--fn-muted);font-size:13px}.fn-eyebrow{display:block;color:var(--fn-accent);font-size:11px;font-weight:850;letter-spacing:1.35px}.fn-page-actions,.fn-filter-actions{display:flex;align-items:center;gap:8px}.fn-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid var(--fn-border);border-radius:10px;padding:9px 14px;text-decoration:none!important;font-size:12px;font-weight:800;cursor:pointer}.fn-btn-primary{border-color:var(--fn-action)!important;background:var(--fn-action)!important;color:#fff!important;box-shadow:0 7px 17px rgba(47,111,237,.16)}.fn-btn-secondary,.fn-btn-ghost{background:#fff!important;color:#42566b!important}.fn-btn-ghost{box-shadow:none!important}.fn-panel{border:1px solid var(--fn-border);border-radius:var(--fn-radius);background:var(--fn-surface);box-shadow:var(--fn-shadow)}.fn-period-tabs{display:flex;gap:5px;margin-bottom:13px;padding:4px;border:1px solid var(--fn-border);border-radius:11px;background:#eaf0f6;width:max-content}.fn-period-tabs a{min-width:105px;padding:8px 12px;border-radius:8px;color:#647589;text-align:center;text-decoration:none;font-size:11px;font-weight:800}.fn-period-tabs a.is-active{background:#fff;color:var(--fn-action);box-shadow:0 2px 8px rgba(22,43,67,.09)}.fn-class-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.fn-metric-card{display:grid;gap:3px;border:1px solid var(--fn-border);border-radius:var(--fn-radius);padding:16px 18px;background:#fff;box-shadow:var(--fn-shadow)}.fn-metric-card span{color:var(--fn-muted);font-size:10px;font-weight:850;letter-spacing:.6px}.fn-metric-card strong{color:var(--fn-navy);font-size:22px}.fn-metric-card small{color:#94a1af;font-size:10px}.fn-metric-attention{border-left:3px solid var(--fn-accent)}.fn-class-list{padding:18px}.fn-class-filters{display:grid;grid-template-columns:minmax(210px,1.45fr) repeat(3,minmax(130px,1fr));gap:10px;padding:14px!important;border:1px solid #e6ebf1;border-radius:11px!important;background:var(--fn-surface-soft)}.fn-class-filters label{display:flex;flex-direction:column;gap:5px;min-width:0}.fn-class-filters label>span{color:#607286;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.45px}.fn-class-filters input,.fn-class-filters select{width:100%;height:38px;margin:0!important;padding:7px 10px!important;font-size:11px}.fn-filter-actions{align-self:end}.fn-filter-actions .fn-btn{min-height:38px}.fn-list-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:20px 2px 12px}.fn-list-heading h2{margin:0 0 3px;font-size:18px}.fn-list-heading p,.fn-list-heading>span{margin:0;color:var(--fn-muted);font-size:10px}.fn-class-table-wrap{overflow:auto;border:1px solid var(--fn-border);border-radius:11px}.fn-class-table{border:0!important;border-radius:0!important;font-size:11px}.fn-class-table thead th{position:sticky;top:0;z-index:2;height:38px;background:#f4f7fa!important;color:#607286!important}.fn-class-table td{padding:11px 12px!important;vertical-align:middle}.fn-class-table tbody tr:hover{background:#fafcff}.fn-class-table td small{display:block;margin-top:3px;color:#92a0ae;font-size:9px}.fn-cell-link{color:#243a52!important;text-decoration:none!important;font-weight:800}.fn-cell-link:hover{color:var(--fn-action)!important}.fn-service-label{display:inline-flex;border-radius:999px;padding:5px 8px;background:#edf3fb;color:#425f7e;font-size:9px;font-weight:800}.fn-status{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:850}.fn-status.is-paid{background:#eaf7f1;color:var(--fn-success)}.fn-status.is-pending{background:#fff3e5;color:#a86610}.fn-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;white-space:nowrap}.fn-icon-btn,.fn-row-actions button.fn-icon-btn{display:inline-grid!important;place-items:center;width:28px;height:28px;min-width:28px;padding:0!important;border:1px solid var(--fn-border)!important;border-radius:8px!important;background:#fff!important;color:#607286!important;text-decoration:none!important;font-size:13px!important;box-shadow:none!important}.fn-icon-btn:hover{border-color:#9fb0c1!important;color:var(--fn-navy)!important}.fn-icon-success,.fn-row-actions button.fn-icon-success{color:var(--fn-success)!important}.fn-icon-danger,.fn-row-actions button.fn-icon-danger{color:var(--fn-danger)!important}.fn-empty-state{padding:28px!important;color:var(--fn-muted);text-align:center}.fn-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 2px 0}.fn-pagination>a,.fn-pagination>span,.fn-pagination div a,.fn-pagination div span{display:inline-grid;place-items:center;min-height:31px;padding:6px 9px;border-radius:8px;color:#607286;text-decoration:none;font-size:10px;font-weight:800}.fn-pagination>span{opacity:.4}.fn-pagination div{display:flex;align-items:center;gap:3px}.fn-pagination div a{min-width:31px;border:1px solid var(--fn-border);background:#fff}.fn-pagination div a.is-current{border-color:var(--fn-action);background:var(--fn-action);color:#fff}.fn-page-gap{padding:3px!important}.fn-monthly-detail{margin-top:14px;padding:0 18px}.fn-monthly-detail summary{padding:16px 0;color:#40566d;font-size:12px;font-weight:850;cursor:pointer}.fn-monthly-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:0 0 18px}.fn-monthly-grid article{display:grid;gap:3px;padding:12px;border-radius:10px;background:var(--fn-surface-soft)}.fn-monthly-grid article>span{color:var(--fn-muted);font-size:9px;font-weight:850}.fn-monthly-grid strong{color:var(--fn-navy);font-size:15px}.fn-monthly-grid small{color:#8997a6;font-size:9px}.fn-monthly-grid .fn-monthly-paid{color:var(--fn-success)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.fn-class-filters{grid-template-columns:repeat(3,1fr)}.fn-filter-search{grid-column:span 2}.fn-monthly-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:800px){.fn-page{width:calc(100% - 24px);padding-top:20px}.fn-page-header{align-items:flex-start;flex-direction:column}.fn-class-kpis{grid-template-columns:repeat(2,1fr)}.fn-class-filters{grid-template-columns:repeat(2,1fr)}.fn-filter-search{grid-column:span 2}.fn-period-tabs{width:100%;overflow:auto}.fn-period-tabs a{min-width:100px}.fn-monthly-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.fn-page-actions{width:100%}.fn-page-actions .fn-btn{flex:1}.fn-class-kpis{grid-template-columns:1fr 1fr;gap:8px}.fn-metric-card{padding:13px}.fn-metric-card strong{font-size:18px}.fn-class-filters{grid-template-columns:1fr}.fn-filter-search{grid-column:auto}.fn-filter-actions{width:100%}.fn-filter-actions .fn-btn{flex:1}.fn-class-list{padding:12px}.fn-class-table thead{display:none}.fn-class-table,.fn-class-table tbody,.fn-class-table tr,.fn-class-table td{display:block;width:100%}.fn-class-table tr{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:13px;border-bottom:1px solid var(--fn-border)}.fn-class-table td{border:0!important;padding:2px!important}.fn-class-table td:before{content:attr(data-label);display:block;margin-bottom:2px;color:#98a4b1;font-size:8px;font-weight:800;text-transform:uppercase}.fn-class-table .fn-row-actions{grid-column:1/-1;justify-content:flex-start;padding-top:5px!important}.fn-pagination{align-items:stretch;flex-direction:column}.fn-pagination>div{justify-content:center}.fn-pagination>a,.fn-pagination>span{text-align:center}.fn-monthly-grid{grid-template-columns:1fr}}

.fn-form-page{width:min(760px,calc(100% - 48px));margin:0 auto;padding:34px 0 60px}.fn-back-link{display:inline-block;margin-bottom:22px;color:#607286!important;text-decoration:none!important;font-size:11px;font-weight:800}.fn-form-page>header{margin-bottom:18px}.fn-form-page h1{margin:5px 0 4px;font-size:28px}.fn-form-page>header p{margin:0;color:var(--fn-muted);font-size:12px}.fn-record-form{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:22px!important;border:1px solid var(--fn-border);border-radius:var(--fn-radius)!important;background:#fff;box-shadow:var(--fn-shadow)}.fn-record-form>label{display:flex;flex-direction:column;gap:6px;min-width:0}.fn-record-form>label>span{color:#52667b;font-size:10px;font-weight:850}.fn-record-form input,.fn-record-form select{width:100%;height:42px;margin:0!important}.fn-record-form small{color:#94a1af;font-size:9px}.fn-field-wide{grid-column:1/-1}.fn-category-control{display:grid;grid-template-columns:minmax(0,1fr) 42px 42px;gap:7px}.fn-category-btn{height:42px;padding:0!important;border:1px solid var(--fn-border)!important;border-radius:9px!important;background:#f5f8fb!important;color:var(--fn-action)!important;font-size:18px!important;box-shadow:none!important}.fn-category-btn.is-danger{color:var(--fn-danger)!important}.fn-form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px;padding-top:16px;border-top:1px solid var(--fn-border)}@media(max-width:620px){.fn-form-page{width:calc(100% - 24px);padding-top:20px}.fn-record-form{grid-template-columns:1fr;padding:16px!important}.fn-field-wide{grid-column:auto}.fn-form-actions .fn-btn{flex:1}}

/* Fase 3.1: clientes archivables y resumen mensual vertical */
.fn-monthly-list{overflow:auto;padding-bottom:18px}.fn-monthly-list table{border:0!important;border-radius:10px!important;font-size:11px}.fn-monthly-list th{background:#f4f7fa!important;color:#607286!important}.fn-monthly-list td{padding:10px 12px!important}.fn-monthly-list .fn-monthly-paid{color:var(--fn-success);font-weight:750}.fn-monthly-list .fn-monthly-pending{color:var(--fn-warning);font-weight:750}.fn-client-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.fn-client-summary article{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--fn-border);border-radius:12px;padding:13px 16px;background:#fff;box-shadow:var(--fn-shadow)}.fn-client-summary span{color:var(--fn-muted);font-size:9px;font-weight:850;letter-spacing:.55px}.fn-client-summary strong{color:var(--fn-navy);font-size:19px}.fn-client-panel{padding:18px}.fn-client-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.fn-client-toolbar .fn-period-tabs{margin:0}.fn-client-search{display:flex;align-items:center;gap:7px;padding:0!important}.fn-client-search input{width:250px;height:39px;margin:0!important;font-size:11px}.fn-client-search .fn-btn{min-height:39px}.fn-client-table tr.is-archived{background:#fafbfc;color:#8492a0}.fn-status.is-archived{background:#eef1f4;color:#6f7e8d}.fn-client-state-btn{min-width:68px;height:28px;padding:0 8px!important;border:1px solid #f0d6d9!important;border-radius:8px!important;background:#fff6f7!important;color:var(--fn-danger)!important;font-size:9px!important;box-shadow:none!important}.fn-client-state-btn.is-restore{border-color:#cce7db!important;background:#f0faf5!important;color:var(--fn-success)!important}@media(max-width:900px){.fn-client-toolbar{align-items:stretch;flex-direction:column}.fn-client-search{width:100%}.fn-client-search input{width:auto;flex:1}}@media(max-width:620px){.fn-client-summary{grid-template-columns:1fr}.fn-client-search{flex-wrap:wrap}.fn-client-search input{flex:1 1 100%}.fn-client-table thead{display:none}.fn-client-table,.fn-client-table tbody,.fn-client-table tr,.fn-client-table td{display:block;width:100%}.fn-client-table tr{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:13px;border-bottom:1px solid var(--fn-border)}.fn-client-table td{border:0!important;padding:2px!important}.fn-client-table td:before{content:attr(data-label);display:block;margin-bottom:2px;color:#98a4b1;font-size:8px;font-weight:800;text-transform:uppercase}.fn-client-table .fn-row-actions{grid-column:1/-1;justify-content:flex-start}.fn-monthly-list table{min-width:620px}}

/* Fase 3.2: tablero temporal de tareas + editor flotante */
.layout-principal #tab-tareas{display:flex!important;flex-direction:column;height:100%!important;min-height:0;overflow:hidden!important;padding:18px!important}.layout-principal #tab-tareas>.fn-board-header{position:static!important;top:auto!important;flex:0 0 auto;margin:0 0 12px!important;padding:2px 2px 13px!important;box-shadow:none!important}.fn-board-header>div h2{margin:0!important;font-size:22px!important}.fn-board-header>div p{margin:3px 0 0;color:var(--fn-muted);font-size:10px}.fn-board-header .btn-modulo{padding:9px 13px!important;font-size:11px!important}.fn-task-board{display:grid;grid-template-columns:repeat(3,minmax(245px,1fr));gap:10px;flex:1;min-height:0;overflow-x:auto;overscroll-behavior:contain}.fn-task-lane{display:flex;flex-direction:column;min-width:245px;min-height:0;border:1px solid var(--fn-border);border-radius:12px;background:#f7f9fb;overflow:hidden}.fn-task-lane>header{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:0 0 auto;padding:12px 13px;border-bottom:1px solid var(--fn-border);background:#fff}.fn-task-lane>header span{display:block;color:#8b98a6;font-size:8px;font-weight:850;letter-spacing:.7px}.fn-task-lane>header h3{margin:2px 0 0!important;color:var(--fn-navy)!important;font-size:14px!important}.fn-task-lane>header>strong{display:grid;place-items:center;min-width:25px;height:25px;border-radius:8px;background:#eef2f6;color:#607286;font-size:10px}.fn-lane-overdue>header{border-top:3px solid var(--fn-danger)}.fn-lane-now>header{border-top:3px solid var(--fn-action)}.fn-lane-future>header{border-top:3px solid #8292a4}.fn-task-lane-body{flex:1;min-height:0;overflow-y:auto;padding:9px;scrollbar-gutter:stable}.fn-task-lane-body::-webkit-scrollbar{width:7px}.fn-task-lane-body::-webkit-scrollbar-track{background:transparent}.fn-task-lane-body::-webkit-scrollbar-thumb{border-radius:9px;background:#ccd5df}.fn-task-lane-body>h4{margin:6px 2px 8px;color:#758598!important;font-size:9px!important;letter-spacing:.65px;text-transform:uppercase}.fn-task-lane-body>h4:not(:first-child){margin-top:17px;padding-top:11px;border-top:1px solid var(--fn-border)}.fn-lane-empty{margin:8px 3px 14px;color:#9aa7b5;font-size:10px;font-style:italic}.fn-board-task{margin-bottom:8px;border:1px solid #e1e7ee;border-left:3px solid #aeb9c5;border-radius:10px;background:#fff;box-shadow:0 2px 7px rgba(22,43,67,.035);overflow:hidden;transition:.16s}.fn-board-task:hover{border-color:#c2ccd7;box-shadow:0 7px 16px rgba(22,43,67,.08);transform:translateY(-1px)}.fn-board-task-overdue{border-left-color:var(--fn-danger)}.fn-board-task-today{border-left-color:var(--fn-action)}.fn-board-task-tomorrow{border-left-color:var(--fn-warning)}.fn-task-open{display:flex!important;align-items:flex-start;width:100%;padding:11px 11px 8px!important;border:0!important;border-radius:0!important;background:#fff!important;color:inherit!important;text-align:left;box-shadow:none!important;cursor:pointer}.fn-task-open:hover{transform:none!important;filter:none!important}.fn-task-open .priority-dot{width:8px;height:8px;margin:4px 8px 0 0}.fn-task-copy{display:block;min-width:0;flex:1}.fn-task-title-line{display:flex;align-items:flex-start;justify-content:space-between;gap:5px}.fn-task-title-line strong{color:#263b51;font-size:11px;line-height:1.35}.fn-task-title-line .task-subtask-badge{flex:0 0 auto;padding:2px 5px;font-size:8px}.fn-task-description{display:-webkit-box;margin-top:4px;overflow:hidden;color:#7c8b9a;font-size:9px;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:2}.fn-task-meta{display:flex;align-items:center;justify-content:space-between;gap:7px;margin-top:7px;color:#8795a4;font-size:8px}.fn-task-meta em,.fn-task-meta i{font-style:normal}.fn-task-meta i{border-radius:99px;padding:3px 5px;background:#f1f4f7;font-weight:800}.fn-board-task-overdue .fn-task-meta em{color:var(--fn-danger)}.fn-board-actions{display:flex;align-items:center;justify-content:flex-end;gap:3px;padding:0 8px 8px}.fn-board-actions form{border-radius:0!important}.fn-board-actions button{display:grid!important;place-items:center;min-width:25px;height:25px;padding:0 6px!important;border:1px solid #e1e7ee!important;border-radius:7px!important;background:#fff!important;color:#6f8193!important;font-size:9px!important;box-shadow:none!important}.fn-board-actions button:hover{border-color:#aebdcb!important;transform:none!important}.fn-board-actions .is-complete{color:var(--fn-success)!important;font-size:13px!important}.fn-board-actions .is-delete{color:var(--fn-danger)!important;font-size:14px!important}.fn-modal-lock{overflow:hidden}.fn-task-modal[hidden]{display:none}.fn-task-modal{position:fixed;inset:0;z-index:250;display:grid;place-items:center;padding:22px;background:rgba(9,24,43,.62);backdrop-filter:blur(5px)}.fn-task-modal-panel{width:min(700px,100%);max-height:calc(100vh - 44px);overflow:auto;border:1px solid var(--fn-border);border-radius:20px;background:#fff;padding:22px;box-shadow:0 30px 80px rgba(7,23,43,.3)}.fn-task-modal-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:17px}.fn-task-modal-panel h2{margin:4px 0 0!important;font-size:22px!important}.fn-task-modal-close{display:grid!important;place-items:center;width:36px;height:36px;padding:0!important;border:1px solid var(--fn-border)!important;border-radius:10px!important;background:#f7f9fb!important;color:#66788a!important;font-size:22px!important;box-shadow:none!important}.fn-task-editor-form{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:0!important}.fn-task-editor-form label{display:flex;flex-direction:column;gap:5px}.fn-task-editor-form label>span,.fn-modal-subtasks>span{color:#607286;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.45px}.fn-task-editor-form .wide{grid-column:1/-1}.fn-task-editor-form input,.fn-task-editor-form select,.fn-task-editor-form textarea{width:100%;margin:0!important}.fn-task-editor-form textarea{resize:vertical;min-height:88px}.fn-modal-subtasks{padding:12px;border-radius:10px;background:#f6f8fa}.fn-modal-subtasks[hidden]{display:none}.fn-modal-subtasks p{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin:7px 0 0;color:#40566c;font-size:10px}.fn-modal-subtasks p i{color:var(--fn-warning);font-style:normal}.fn-modal-subtasks p small{color:#8c99a6;font-size:8px}.fn-modal-subtasks p.is-done{opacity:.55}.fn-modal-subtasks p.is-done span{text-decoration:line-through}.fn-modal-subtasks p.is-done i{color:var(--fn-success)}.fn-task-editor-form footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:3px;padding-top:15px;border-top:1px solid var(--fn-border)}.fn-task-editor-form footer>div{display:flex;gap:8px}.fn-task-editor-form footer>span{color:var(--fn-muted);font-size:10px}.fn-task-editor-form footer>span.is-success{color:var(--fn-success)}.fn-task-editor-form footer>span.is-error{color:var(--fn-danger)}
@media(max-width:1180px){.fn-task-board{grid-template-columns:repeat(3,minmax(260px,1fr))}}@media(max-width:780px){.layout-principal>.col-der .tabs-container{height:72vh!important}.fn-task-board{grid-template-columns:repeat(3,280px)}.fn-task-editor-form{grid-template-columns:1fr}.fn-task-editor-form .wide{grid-column:auto}.fn-task-editor-form footer{align-items:stretch;flex-direction:column}.fn-task-editor-form footer>div .fn-btn{flex:1}}

/* Fase 3.2.1: gestión completa de subtareas en el modal */
.fn-task-parent-back{display:block;margin-top:5px;padding:0!important;border:0!important;background:transparent!important;color:var(--fn-action)!important;font-size:9px!important;font-weight:800!important;box-shadow:none!important}.fn-task-parent-back[hidden]{display:none!important}.fn-subtask-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.fn-subtask-heading strong{color:#8593a1;font-size:8px}.fn-modal-subtasks>div:nth-child(2){margin-top:7px}.fn-modal-subtasks p{grid-template-columns:auto minmax(0,1fr) auto}.fn-modal-subtasks button{box-shadow:none!important}.fn-subtask-toggle,.fn-subtask-delete{display:grid!important;place-items:center;width:25px;height:25px;padding:0!important;border:1px solid var(--fn-border)!important;border-radius:7px!important;background:#fff!important;color:var(--fn-warning)!important;font-size:13px!important}.fn-subtask-delete{color:var(--fn-danger)!important}.fn-subtask-edit{display:grid!important;gap:2px;width:100%;padding:3px 5px!important;border:0!important;background:transparent!important;color:#40566c!important;text-align:left;box-shadow:none!important}.fn-subtask-edit span{font-size:10px;font-weight:750}.fn-subtask-edit small{color:#8c99a6;font-size:8px}.fn-modal-subtasks p.is-done .fn-subtask-toggle{color:var(--fn-success)!important}.fn-subtask-empty{display:block!important;color:#98a5b2!important;font-style:italic}.fn-subtask-create{display:grid;grid-template-columns:minmax(150px,1fr) 128px 88px auto;gap:7px;margin-top:11px;padding-top:11px;border-top:1px solid var(--fn-border)}.fn-subtask-create input,.fn-subtask-create select{height:36px!important;margin:0!important;padding:6px 8px!important;font-size:9px!important}.fn-subtask-create .fn-btn{min-height:36px;padding:7px 11px!important;font-size:9px!important}@media(max-width:620px){.fn-subtask-create{grid-template-columns:1fr 1fr}.fn-subtask-create>input:first-child{grid-column:1/-1}}

/* Fase 4.1.1: Bandeja de pendientes + Plan de hoy */
.fn-task-board{grid-template-columns:minmax(0,3fr) minmax(270px,2fr)!important;gap:12px!important;overflow:hidden!important}.fn-task-lane{min-width:0!important}.fn-lane-backlog>header{border-top:3px solid #7d8da0}.fn-lane-today>header{border-top:3px solid var(--fn-action)}.fn-backlog-tools{display:grid;gap:8px;padding:9px 10px;border-bottom:1px solid var(--fn-border);background:#fff}.fn-backlog-tools input{width:100%;height:34px!important;margin:0!important;padding:7px 10px!important;font-size:10px!important}.fn-backlog-filters{display:flex;gap:4px;overflow-x:auto}.fn-backlog-filters button,.fn-board-mobile-tabs button{border:1px solid var(--fn-border)!important;border-radius:7px!important;padding:6px 8px!important;background:#fff!important;color:#718194!important;font-size:8px!important;font-weight:800!important;white-space:nowrap;box-shadow:none!important}.fn-backlog-filters button.is-active,.fn-board-mobile-tabs button.is-active{border-color:#c4d6f8!important;background:#edf3ff!important;color:var(--fn-action)!important}.fn-task-group>h4{margin:7px 2px 8px;color:#758598!important;font-size:9px!important;letter-spacing:.65px;text-transform:uppercase}.fn-task-group:not(:first-child)>h4{margin-top:18px;padding-top:12px;border-top:1px solid var(--fn-border)}.fn-task-group[hidden],.fn-board-task[hidden]{display:none!important}.fn-board-task{cursor:grab}.fn-board-task:active{cursor:grabbing}.fn-board-task.is-dragging{opacity:.42;box-shadow:none!important}.fn-drop-zone.is-drag-over{outline:2px dashed rgba(47,111,237,.42);outline-offset:-5px;background:#f1f6ff}.fn-board-task.is-overdue{border-color:#efcdd2!important;border-left-color:var(--fn-danger)!important;background:#fff6f7!important}.fn-board-task.is-overdue .fn-task-open{background:#fff6f7!important}.fn-board-task.is-overdue:hover{border-color:#e8b7bf!important;background:#fff2f4!important}.fn-board-task.is-overdue:hover .fn-task-open{background:#fff2f4!important}.fn-board-task.is-planned:not(.is-overdue){border-left-color:var(--fn-action)}.fn-task-grip{flex:0 0 auto;margin:-1px 6px 0 -4px;color:#bdc6cf;font-size:12px;letter-spacing:-3px}.fn-task-open .priority-dot{margin-left:0}.fn-task-title-line strong{font-size:12px!important}.fn-task-description{font-size:10px!important}.fn-task-meta{align-items:flex-start;font-size:9px!important}.fn-task-meta>span{display:flex;flex-wrap:wrap;align-items:center;gap:5px}.fn-board-task.is-overdue .fn-task-meta em{color:#c94255}.fn-carried-badge{border-radius:99px;padding:3px 6px;background:#fff0d9;color:#9c6519;font-size:7px;font-weight:850}.fn-task-context{display:block;margin-top:5px;color:#91a0ae;font-size:8px}.fn-board-actions{justify-content:space-between}.fn-board-actions .fn-plan-toggle{display:inline-flex!important;width:auto;min-width:58px;padding:0 7px!important;color:#5f7184!important}.fn-board-actions .fn-plan-toggle.is-add{border-color:#cadaf8!important;background:#f2f6ff!important;color:var(--fn-action)!important}.fn-plan-capacity{margin:0;padding:8px 11px;border-bottom:1px solid #f1dfbf;background:#fff8ea;color:#946322;font-size:8px;font-weight:750}.fn-board-mobile-tabs{display:none}
@media(max-width:780px){.layout-principal>.col-der .tabs-container{height:76vh!important}.fn-board-mobile-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:9px;padding:4px;border-radius:9px;background:#eef2f6}.fn-board-mobile-tabs button{font-size:10px!important}.fn-task-board{display:block!important;overflow:hidden!important}.fn-task-lane{display:none;height:100%}.fn-task-lane.is-mobile-active{display:flex}.fn-lane-backlog,.fn-lane-today{min-width:0!important}.fn-task-editor-form{grid-template-columns:1fr}.fn-task-editor-form .wide{grid-column:auto}.fn-task-editor-form footer{align-items:stretch;flex-direction:column}.fn-task-editor-form footer>div .fn-btn{flex:1}}

/* Fase 4.1.2: inventario completo de tareas */
.fn-tasks-page{max-width:1450px}.fn-task-list-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.fn-task-list-kpis article{display:grid;gap:3px;border:1px solid var(--fn-border);border-radius:13px;padding:15px 17px;background:#fff;box-shadow:var(--fn-shadow)}.fn-task-list-kpis article.is-alert{border-left:3px solid var(--fn-danger)}.fn-task-list-kpis article.is-focus{border-left:3px solid var(--fn-action)}.fn-task-list-kpis span{color:var(--fn-muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.55px}.fn-task-list-kpis strong{color:var(--fn-navy);font-size:23px}.fn-task-list-kpis small{color:#95a2af;font-size:9px}.fn-task-state-tabs{display:flex;width:max-content;margin-bottom:13px;padding:4px;border:1px solid var(--fn-border);border-radius:11px;background:#eaf0f6}.fn-task-state-tabs a{min-width:112px;padding:8px 13px;border-radius:8px;color:#66778a;text-align:center;text-decoration:none;font-size:10px;font-weight:800}.fn-task-state-tabs a.is-active{background:#fff;color:var(--fn-action);box-shadow:0 2px 8px rgba(22,43,67,.09)}.fn-task-list-panel{padding:18px}.fn-task-list-filters{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(120px,1fr));gap:9px;padding:13px!important;border:1px solid #e5eaf0;border-radius:11px!important;background:#f7f9fb!important;box-shadow:none!important}.fn-task-list-filters label{display:flex;flex-direction:column;gap:5px;min-width:0}.fn-task-list-filters label>span{color:#607286;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.45px}.fn-task-list-filters input,.fn-task-list-filters select{width:100%;height:37px;margin:0!important;padding:7px 9px!important;font-size:10px}.fn-task-filter-actions{display:flex;align-items:end;gap:6px}.fn-task-filter-actions .fn-btn{min-height:37px;padding:7px 11px;font-size:10px}.fn-task-table-wrap{overflow:auto;border:1px solid var(--fn-border);border-radius:11px}.fn-task-list-table{border:0!important;border-radius:0!important;font-size:11px}.fn-task-list-table th{position:sticky;top:0;z-index:2;height:38px;background:#f4f7fa!important;color:#607286!important}.fn-task-list-table td{padding:11px 12px!important;vertical-align:middle}.fn-task-list-table tbody tr{transition:.14s}.fn-task-list-table tbody tr:hover{background:#f9fbfd}.fn-task-list-table tbody tr.is-overdue{background:#fff7f8}.fn-task-list-table tbody tr.is-overdue:hover{background:#fff2f4}.fn-task-list-table tbody tr.is-archived{background:#fafbfc;color:#8492a0}.fn-task-name-button{display:grid!important;gap:3px;width:100%;min-width:220px;padding:0!important;border:0!important;background:transparent!important;color:inherit!important;text-align:left;box-shadow:none!important}.fn-task-name-button strong{color:#263b51;font-size:12px;line-height:1.35}.fn-task-name-button span{display:-webkit-box;max-width:390px;overflow:hidden;color:#7b8a99;font-size:9px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.fn-task-name-button small{color:#7b8a99;font-size:8px;font-weight:750}.fn-task-list-table td>strong{display:block;color:#3b5066;font-size:10px}.fn-task-list-table td>small{display:block;margin-top:3px;color:#92a0ae;font-size:8px}.fn-task-list-table time{white-space:nowrap;color:#445a70;font-size:10px;font-weight:750}.fn-muted{color:#9aa6b2}.fn-overdue-label{color:var(--fn-danger)!important;font-weight:850}.fn-priority-label{display:inline-flex;align-items:center;gap:6px;border-radius:99px;padding:5px 8px;background:#f2f5f8;color:#586a7d;font-size:9px;font-weight:800}.fn-priority-label .priority-dot{width:7px;height:7px;margin:0}.fn-task-status{display:inline-flex;border-radius:99px;padding:5px 8px;background:#eef1f4;color:#677789;font-size:8px;font-weight:850}.fn-task-status.is-pendiente{background:#fff4e5;color:#9c6519}.fn-task-status.is-completada{background:#eaf7f1;color:var(--fn-success)}.fn-task-status.is-archivada{background:#eef1f4;color:#6f7e8d}.fn-today-label{width:max-content;margin-top:5px!important;border-radius:99px;padding:3px 6px;background:#edf3ff;color:var(--fn-action)!important;font-weight:800}.fn-task-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;white-space:nowrap}.fn-task-row-actions button{box-shadow:none!important}.fn-plan-list-btn,.fn-list-action{height:28px;padding:0 8px!important;border:1px solid #cadaf8!important;border-radius:8px!important;background:#f2f6ff!important;color:var(--fn-action)!important;font-size:8px!important;font-weight:800!important}.fn-plan-list-btn.is-active{border-color:#e4d3ae!important;background:#fff8e9!important;color:#96631e!important}.fn-list-action{border-color:var(--fn-border)!important;background:#fff!important;color:#5e7184!important}
@media(max-width:1050px){.fn-task-list-filters{grid-template-columns:repeat(3,1fr)}.fn-task-search{grid-column:span 2}.fn-task-filter-actions{grid-column:span 2}.fn-task-list-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.fn-task-state-tabs{width:100%;overflow-x:auto}.fn-task-state-tabs a{min-width:100px}.fn-task-list-panel{padding:12px}.fn-task-list-filters{grid-template-columns:1fr 1fr}.fn-task-search{grid-column:1/-1}.fn-task-filter-actions{grid-column:1/-1}.fn-task-table-wrap{border:0;overflow:visible}.fn-task-list-table,.fn-task-list-table tbody,.fn-task-list-table tr,.fn-task-list-table td{display:block;width:100%}.fn-task-list-table thead{display:none}.fn-task-list-table tr{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;padding:13px;border:1px solid var(--fn-border);border-radius:11px;background:#fff}.fn-task-list-table td{border:0!important;padding:2px!important}.fn-task-list-table td:before{content:attr(data-label);display:block;margin-bottom:3px;color:#98a4b1;font-size:7px;font-weight:800;text-transform:uppercase}.fn-task-list-table td:first-child,.fn-task-list-table td:last-child{grid-column:1/-1}.fn-task-name-button{min-width:0}.fn-task-row-actions{justify-content:flex-start;margin-top:5px}.fn-task-list-table .fn-empty-state{display:block!important}.fn-task-list-kpis{gap:8px}.fn-task-list-kpis article{padding:12px}.fn-task-list-kpis strong{font-size:19px}}
@media(max-width:500px){.fn-task-list-filters{grid-template-columns:1fr}.fn-task-search,.fn-task-filter-actions{grid-column:auto}.fn-task-filter-actions .fn-btn{flex:1}.fn-task-list-kpis{grid-template-columns:1fr 1fr}.fn-task-state-tabs a{min-width:94px}}

/* Fase 4.1.3: jerarquía visible de tareas y subtareas */
.fn-task-name-cell{display:flex;align-items:flex-start;gap:7px;min-width:220px}.fn-subtask-expander,.fn-subtask-expander-spacer{flex:0 0 24px;width:24px;height:24px;margin-top:1px}.fn-subtask-expander{display:grid!important;place-items:center;padding:0!important;border:1px solid #dce4ec!important;border-radius:7px!important;background:#f7f9fb!important;color:#667a8e!important;font-size:12px!important;line-height:1!important;box-shadow:none!important;cursor:pointer}.fn-subtask-expander:hover{border-color:#b8c6d4!important;background:#eef3f7!important;color:var(--fn-navy)!important}.fn-parent-task-row{border-top:1px solid #e7ecf1}.fn-child-task-row[hidden]{display:none}.fn-child-task-row{background:#fbfcfd;color:#53667a}.fn-child-task-row:hover{background:#f4f7fa!important}.fn-child-task-row td{border-bottom-color:#edf1f5!important}.fn-child-task-row td:first-child{box-shadow:inset 3px 0 0 #c7d4e2}.fn-child-name-cell{padding-left:21px}.fn-child-connector{flex:0 0 18px;margin-top:5px;color:#9aabba;font-size:15px;line-height:1}.fn-child-task-row .fn-task-name-button{min-width:170px}.fn-child-task-row .fn-task-name-button strong{font-size:11px;color:#455a70}.fn-child-task-row .fn-task-name-button small{width:max-content;border-radius:99px;padding:2px 6px;background:#edf2f7;color:#708397;font-size:7px;letter-spacing:.35px;text-transform:uppercase}.fn-child-task-row .fn-task-name-button span{font-size:8px}.fn-child-parent-label{margin:0 0 3px!important;color:#7f90a1!important;font-weight:750}.fn-subtask-progress{width:max-content;border-radius:99px;padding:3px 7px;background:#edf4ff;color:#3e6fa9!important;font-weight:800}.fn-subtask-warning{color:var(--fn-danger)!important;font-weight:800}.fn-child-task-row.is-overdue{background:#fff8f8!important}.fn-child-task-row.is-overdue:hover{background:#fff3f4!important}.fn-child-task-row.is-archived{background:#fafbfc!important;opacity:.78}
@media(max-width:720px){.fn-task-name-cell{min-width:0}.fn-parent-task-row{position:relative}.fn-child-task-row{width:calc(100% - 22px)!important;margin-left:22px!important;border-left:2px solid #c7d4e2!important}.fn-child-task-row td:first-child{box-shadow:none}.fn-child-name-cell{padding-left:0}.fn-child-connector{display:none}.fn-subtask-expander,.fn-subtask-expander-spacer{flex-basis:28px;width:28px;height:28px}.fn-child-task-row .fn-task-name-button{min-width:0}}
