.budget-app[hidden],#budgetRoot[hidden],.budget-loading[hidden]{display:none!important}.budget-app{--budget-navy:#073b8f;--budget-blue:#0c65bd;--budget-sky:#69b9e8;--budget-lime:#82bd28;--budget-ink:#0b3475;--budget-muted:#647a96;--budget-bg:#edf6fc;--budget-panel:#fff;--budget-line:#d9e6ef;--budget-soft:#eaf5fb;min-height:calc(100dvh - 76px);padding:clamp(18px,2.5vw,34px);background:radial-gradient(circle at 94% 0,rgba(105,185,232,.22),transparent 30%),var(--budget-bg);color:var(--budget-ink);font-size:15px}.budget-app *{box-sizing:border-box}.budget-app button,.budget-app input,.budget-app select,.budget-app textarea{font:inherit}.budget-loading{display:grid;place-content:center;justify-items:center;min-height:420px;color:var(--budget-muted);text-align:center}.budget-loading strong{margin-top:16px;color:var(--budget-navy);font-size:18px}.budget-loading small{margin-top:6px;font-size:12px}.budget-commandbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-10px -10px 22px;padding:12px 14px;border-radius:16px;color:#fff;background:linear-gradient(105deg,var(--budget-navy),#0a4aa2 62%,var(--budget-blue));box-shadow:0 14px 34px #00359529}.budget-commandbar-brand{display:flex;align-items:center;gap:10px;min-width:185px}.budget-commandbar-brand>span{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.28);border-radius:11px;background:#ffffff1f;font-size:19px;font-weight:900}.budget-commandbar-brand strong,.budget-commandbar-brand small{display:block}.budget-commandbar-brand strong{font-size:12px}.budget-commandbar-brand small{margin-top:2px;color:#cde8f8;font-size:9px;font-weight:700}.budget-commandbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.budget-command{min-height:38px;padding:9px 11px;border:1px solid rgba(255,255,255,.25);border-radius:10px;color:#fff;background:#ffffff1a;font-size:10px;font-weight:850;cursor:pointer}.budget-command:hover{border-color:#ffffff7a;background:#ffffff2e}.budget-command.is-primary{border-color:transparent;background:var(--budget-green,var(--budget-lime));color:#123f16}.budget-save-indicator{margin-right:3px;color:var(--budget-lime);font-size:10px;font-weight:850;white-space:nowrap}.budget-save-indicator[data-save-status=saving]{color:#ffe394}.budget-save-indicator[data-save-status=error]{color:#ffd2d2}.budget-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.budget-kicker{margin:0 0 5px;color:var(--budget-blue);font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.budget-heading h1{margin:0;color:var(--budget-navy);font-size:clamp(30px,3vw,42px);letter-spacing:-.04em}.budget-heading>div>p:last-child{margin:7px 0 0;color:var(--budget-muted);font-size:15px}.budget-year,.budget-month{display:grid;gap:3px;color:#d6ecf9;font-size:9px;font-weight:850}.budget-year select,.budget-month select{height:38px;min-width:86px;padding:0 10px;border:1px solid rgba(255,255,255,.32);border-radius:10px;color:var(--budget-ink);background:#fff;font-weight:800}.budget-month select{min-width:118px}.budget-primary,.budget-secondary,.budget-mini-button,.budget-danger-button{border-radius:10px;font-weight:850;cursor:pointer}.budget-primary{min-height:42px;padding:10px 15px;border:0;color:#fff;background:linear-gradient(100deg,var(--budget-navy),var(--budget-blue));box-shadow:0 9px 22px #044ba033}.budget-primary:disabled{opacity:.55;cursor:wait}.budget-secondary{min-height:40px;padding:9px 13px;border:1px solid #c5d7e4;color:var(--budget-navy);background:#fff}.budget-mini-button{padding:8px 10px;border:1px solid #cbdde9;color:var(--budget-blue);background:#fff;font-size:11px}.budget-mini-button+.budget-mini-button{margin-left:5px}.budget-mini-button.is-danger,.budget-danger-button{color:#b6332d;border-color:#f0b5b1}.budget-danger-button{min-height:40px;padding:9px 13px;border:1px solid #f0b5b1;background:#fff}.budget-notice{margin:12px 0;padding:12px 14px;border-radius:11px;color:#245879;background:#eaf6fd;font-size:12px;font-weight:750}.budget-notice[data-type=success]{color:#3f6c18;background:#eef8dc}.budget-notice[data-type=error]{color:#a33a2f;background:#fff0ef}.budget-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.budget-summary article{display:flex;align-items:center;gap:13px;min-height:112px;padding:16px;border:1px solid var(--budget-line);border-radius:15px;background:#fff;box-shadow:0 12px 30px #052f6714}.budget-summary-icon{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:50%;color:var(--budget-blue);background:var(--budget-soft);font-size:22px;font-weight:950}.budget-summary .is-total .budget-summary-icon{color:#4d8e22;background:#eaf5d2}.budget-summary small{display:block;color:var(--budget-muted);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.025em}.budget-summary strong{display:block;margin-top:5px;color:var(--budget-navy);font-size:clamp(18px,1.6vw,25px);letter-spacing:-.025em;white-space:nowrap}.budget-summary p{margin:4px 0 0;color:var(--budget-muted);font-size:12px}.budget-progress-panel{margin-top:11px;padding:15px 17px;border:1px solid var(--budget-line);border-radius:15px;background:#fff;box-shadow:0 12px 30px #052f6712}.budget-progress-head{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:10px}.budget-progress-head>strong{font-size:16px}.budget-progress-head span{color:var(--budget-muted);font-size:11px;text-align:right}.budget-progress-head b{color:var(--budget-ink);font-size:15px}.budget-progress{display:flex;height:18px;overflow:hidden;border-radius:999px;background:#d7eaf7}.budget-progress i{background:linear-gradient(90deg,#003b83,#0c55bd)}.budget-progress b{background:linear-gradient(90deg,#51a9e7,#76bce9)}.budget-legend{display:flex;gap:20px;flex-wrap:wrap;margin-top:10px;color:var(--budget-muted);font-size:11px}.budget-legend span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%}.budget-legend .executed:before{background:#0756bd}.budget-legend .planned:before{background:#65b6ed}.budget-legend .available:before{background:#cfe8f8}.budget-month-overview{margin-top:14px;padding:17px;border:1px solid #beddf0;border-radius:16px;background:linear-gradient(115deg,#f5fbff,#eef8df);box-shadow:0 12px 30px #052f6712}.budget-month-overview-head{display:flex;align-items:end;justify-content:space-between;gap:16px}.budget-month-overview-head span{color:var(--budget-blue);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.budget-month-overview-head h2{margin:3px 0 0;color:var(--budget-navy);font-size:22px}.budget-month-overview-head p{max-width:480px;margin:0;color:var(--budget-muted);font-size:11px;text-align:right}.budget-month-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:13px}.budget-month-kpis article{padding:14px;border:1px solid rgba(12,101,189,.12);border-radius:12px;background:#ffffffd9}.budget-month-kpis small{display:block;color:var(--budget-muted);font-size:10px;font-weight:900;text-transform:uppercase}.budget-month-kpis strong{display:block;margin-top:5px;color:var(--budget-navy);font-size:22px}.budget-month-kpis p{margin:4px 0 0;color:var(--budget-muted);font-size:11px}.budget-month-kpis .is-spent{border-color:#b9dc92}.budget-month-kpis .is-spent strong{color:#3f7919}.budget-month-kpis .is-committed strong{color:var(--budget-blue)}.budget-month-breakdown{margin-top:13px;padding:14px;border:1px solid rgba(12,101,189,.14);border-radius:13px;background:#ffffffb8}.budget-month-breakdown-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.budget-month-breakdown-title>div{display:grid;gap:2px}.budget-month-breakdown-title strong{color:var(--budget-navy);font-size:14px}.budget-month-breakdown-title span{color:var(--budget-muted);font-size:10px}.budget-month-breakdown-title>small{padding:5px 8px;border-radius:999px;color:#477b20;background:#eaf5d2;font-size:9px;font-weight:900;text-transform:uppercase}.budget-month-breakdown-table{overflow:hidden;border:1px solid var(--budget-line);border-radius:10px;background:#fff}.budget-month-breakdown-header,.budget-month-breakdown-row{display:grid;grid-template-columns:minmax(190px,1.5fr) repeat(3,minmax(105px,.75fr)) 100px;gap:10px;align-items:center;padding:10px 12px}.budget-month-breakdown-header{color:var(--budget-muted);background:var(--budget-soft);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.budget-month-breakdown-row{width:100%;border:0;border-top:1px solid var(--budget-line);color:var(--budget-ink);background:#fff;text-align:left;cursor:pointer}.budget-month-breakdown-row:hover{background:#f7fbfe}.budget-month-breakdown-row strong{font-size:12px}.budget-month-breakdown-row span{font-size:11px}.budget-month-breakdown-row .is-spent{color:#3f7919;font-weight:900}.budget-month-breakdown-row b{color:var(--budget-blue);font-size:10px;text-align:right}.budget-month-breakdown-empty{padding:16px;border-radius:9px;color:var(--budget-muted);background:#fff;text-align:center;font-size:11px}.budget-rubric-section{margin-top:18px}.budget-rubric-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:11px}.budget-rubric-heading h2{margin:0;color:var(--budget-navy);font-size:22px}.budget-rubric-heading p{margin:5px 0 0;color:var(--budget-muted);font-size:14px}.budget-rubric-heading-actions{display:flex;align-items:center;gap:8px}.budget-auto{padding:8px 11px;border-radius:999px;color:#477b20;background:#eaf5d2;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.budget-rubric-columns,.budget-rubric-summary{display:grid;grid-template-columns:minmax(230px,1.5fr) repeat(4,minmax(112px,.75fr)) 150px 32px;gap:12px}.budget-rubric-columns{padding:0 16px 9px;color:var(--budget-muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.budget-rubric-list{display:grid;gap:9px}.budget-rubric{overflow:hidden;border:1px solid var(--budget-line);border-radius:15px;background:#fff;box-shadow:0 12px 30px #052f6714}.budget-rubric-summary{width:100%;align-items:center;padding:17px 16px;border:0;color:var(--budget-ink);background:#fff;text-align:left;cursor:pointer}.budget-rubric-summary:hover{background:#f9fcfe}.budget-rubric-name{display:flex;align-items:center;gap:11px;min-width:0}.budget-rubric-name i{display:grid;place-items:center;width:31px;height:31px;flex:0 0 31px;border-radius:8px;color:var(--budget-blue);background:var(--budget-soft);font-size:12px;font-style:normal;font-weight:900}.budget-rubric-name b{font-size:14px;line-height:1.25}.budget-rubric-kpi small{display:block;color:var(--budget-muted);font-size:10px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.budget-rubric-kpi strong{display:block;margin-top:5px;font-size:13px;white-space:nowrap}.budget-percent{display:flex;align-items:center;gap:10px}.budget-percent>i{--budget-percent:0;position:relative;width:49px;height:49px;flex:0 0 49px;border-radius:50%;background:conic-gradient(var(--budget-lime) calc(var(--budget-percent)*1%),var(--budget-soft) 0)}.budget-percent>i:after{content:"";position:absolute;inset:7px;border-radius:50%;background:#fff}.budget-percent strong{min-width:52px;font-size:20px}.budget-chevron{color:var(--budget-muted);font-size:18px;transition:transform .2s}.budget-rubric.open .budget-chevron{transform:rotate(180deg)}.is-positive{color:#47801d!important}.is-negative{color:#d63f34!important}.budget-rubric-detail{display:none;padding:0 16px 16px;border-top:1px solid var(--budget-line);color:#0b3475;background:#fff}.budget-rubric.open .budget-rubric-detail{display:block}.budget-rubric-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0}.budget-rubric-tools>span{color:#647a96;font-size:12px}.budget-rubric-empty{padding:18px;border-radius:10px;color:#647a96;background:#eaf5fb;text-align:center;font-size:12px}.budget-table-wrap{overflow:auto}.budget-detail-table{width:100%;min-width:920px;border-collapse:collapse;font-size:12px}.budget-detail-table th{padding:11px;background:#eaf5fb;color:#54708f;text-align:left;text-transform:uppercase;letter-spacing:.03em;font-size:10px}.budget-detail-table td{padding:11px;border-top:1px solid #d9e6ef;white-space:nowrap}.budget-item-status{min-width:120px;height:35px;padding:0 9px;border:1px solid #c9dae8;border-radius:8px;color:#0b3475;background:#fff;font-size:12px;font-weight:850}.budget-status{display:inline-block;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900}.budget-status.is-ejecutado{color:#256313;background:#e8f6d8}.budget-status.is-planificado{color:#0b5f94;background:#e5f4fd}.budget-dialog{width:min(780px,calc(100% - 24px));padding:0;border:0;border-radius:20px;color:var(--budget-ink);background:#fff;box-shadow:0 28px 80px #00266f40}.budget-dialog::backdrop{background:#0b233e80}.budget-rubric-dialog{width:min(610px,calc(100% - 24px))}.budget-dialog-card{padding:23px}.budget-dialog-head{display:flex;align-items:start;justify-content:space-between}.budget-dialog-head span{color:var(--budget-blue);font-size:10px;font-weight:900;text-transform:uppercase}.budget-dialog-head h2{margin:4px 0 0;color:var(--budget-navy);font-size:24px}.budget-dialog-head p{margin:6px 0 0;color:var(--budget-muted);font-size:12px}.budget-dialog-head>button{border:0;color:#71879a;background:transparent;font-size:26px;cursor:pointer}.budget-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:19px}.budget-form-grid label{display:grid;gap:7px;color:#3c5873;font-size:11px;font-weight:850}.budget-form-grid input,.budget-form-grid select,.budget-form-grid textarea{width:100%;padding:11px;border:1px solid #c8d8e5;border-radius:9px;color:#0b3475;background:#fff;font-size:12px;font-weight:700}.budget-form-grid textarea{min-height:84px;resize:vertical}.budget-form-wide{grid-column:1/-1}.budget-dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:19px}.budget-dialog-actions>span{margin-right:auto;color:#587086;font-size:10px}.budget-dialog-actions>span[data-type=error]{color:#b13b32}.budget-error{display:grid;place-content:center;min-height:420px;text-align:center}.budget-error strong{color:var(--budget-navy);font-size:21px}.budget-error p{color:var(--budget-muted);font-size:12px}.budget-form-grid [hidden]{display:none!important}.budget-rubric-move-help{padding:8px 9px;border-radius:7px;color:#0b5f2f;background:#eaf7d5;font-size:10px;font-weight:800;line-height:1.35}.budget-move-dialog{width:min(720px,calc(100% - 24px))}.budget-move-source{display:flex;align-items:center;gap:10px;margin-top:18px;padding:12px 14px;border-radius:10px;color:var(--budget-muted);background:var(--budget-soft)}.budget-move-source span{font-size:10px;font-weight:900;text-transform:uppercase}.budget-move-source strong{color:var(--budget-navy);font-size:14px}.budget-move-source small{margin-left:auto}.budget-move-all{display:flex;align-items:center;gap:8px;margin:15px 0 9px;color:var(--budget-navy);font-size:12px;font-weight:900}.budget-move-list{display:grid;max-height:290px;overflow:auto;border:1px solid var(--budget-line);border-radius:11px}.budget-move-list>label{display:flex;align-items:center;gap:11px;padding:12px 14px;cursor:pointer}.budget-move-list>label+label{border-top:1px solid var(--budget-line)}.budget-move-list input,.budget-move-all input{width:17px;height:17px;accent-color:var(--budget-blue)}.budget-move-list span{display:grid;gap:3px}.budget-move-list strong{color:var(--budget-navy);font-size:12px}.budget-move-list small{color:var(--budget-muted);font-size:10px}.budget-move-destination{margin-top:15px}@media(max-width:1180px){.budget-summary{grid-template-columns:repeat(2,1fr)}.budget-rubric-columns,.budget-rubric-summary{grid-template-columns:minmax(190px,1.35fr) repeat(4,minmax(88px,.7fr)) 125px 24px;gap:7px;padding-inline:11px}.budget-rubric-kpi strong{font-size:12px}.budget-percent{gap:6px}.budget-percent>i{width:43px;height:43px;flex-basis:43px}.budget-percent strong{font-size:17px}}@media(max-width:850px){.budget-rubric-columns,.budget-rubric-summary{min-width:760px}.budget-rubric-list,.budget-rubric-columns{overflow-x:auto}.budget-rubric-heading,.budget-commandbar{align-items:flex-start;flex-direction:column}.budget-commandbar-actions{justify-content:flex-start}.budget-heading{flex-direction:column}.budget-month-breakdown-table{overflow-x:auto}.budget-month-breakdown-header,.budget-month-breakdown-row{min-width:700px}}@media(max-width:620px){.budget-app{padding:16px 10px 28px}.budget-summary,.budget-month-kpis{grid-template-columns:1fr}.budget-progress-head,.budget-month-overview-head{align-items:flex-start;flex-direction:column}.budget-progress-head span,.budget-month-overview-head p{text-align:left}.budget-rubric-heading-actions{align-items:flex-start;flex-direction:column}.budget-form-grid{grid-template-columns:1fr}.budget-form-wide{grid-column:auto}.budget-dialog-actions{align-items:stretch;flex-direction:column}.budget-dialog-actions>span{margin:0}.budget-dialog-actions button{width:100%}}@page{size:A4;margin:0}@media print{body.budget-print-mode{padding:12mm}body.budget-print-mode:before{content:"Informe Ejecutivo de Marketing 2026 | Salum & Wenz";display:block;margin:0 0 8mm;color:#17324d;font-size:10pt;font-weight:800;letter-spacing:.01em}body.budget-print-mode .portal-header,body.budget-print-mode #portalSidebar,body.budget-print-mode .budget-commandbar,body.budget-print-mode .budget-dialog,body.budget-print-mode .budget-rubric-heading-actions,body.budget-print-mode .budget-rubric-tools button{display:none!important}body.budget-print-mode .portal-workspace{display:block;width:100%;margin:0}body.budget-print-mode .budget-app{padding:0;background:#fff}body.budget-print-mode .budget-rubric{break-inside:avoid;box-shadow:none}body.budget-print-mode .budget-summary article,body.budget-print-mode .budget-progress-panel{box-shadow:none}}
