/* V1.1: controles estables, listas adaptadas al móvil y cierre mensual. */
.month-status{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 22px;padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:#fff}.month-status>span{display:flex;align-items:center;gap:9px;font-size:13px}.month-status.is-closed{background:#edf3e8;border-color:#cbd9bd}.month-status svg{width:18px;height:18px}.filter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end;margin:10px 0 18px}.filter-grid label{display:grid;gap:7px;font-size:11px;color:#637461}.filter-grid select{width:100%;min-width:0;padding:11px;border:1px solid #dce3d9;border-radius:9px;background:#fff;color:#344b35;font-size:12px}.result-summary{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:20px 0;font-size:12px;color:#788473}.result-summary strong{font-size:23px;color:#426b43}.route-badge{white-space:normal;line-height:1.5}.desktop-results td{white-space:normal}.mobile-results{display:none}.mobile-nav{display:none}.wide{grid-column:1/-1}.balance-comparison{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:1px;background:#e8ede4;border:1px solid #e8ede4;border-radius:9px;overflow:hidden;font-size:12px}.balance-comparison>*{background:#fff;padding:12px}.balance-comparison strong{background:#f7faf3}.balance-comparison>*:nth-child(3n+2),.balance-comparison>*:nth-child(3n+3){text-align:right;font-variant-numeric:tabular-nums}.transfer-highlight{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:18px;background:#edf3e7;border:1px solid #dbe6d1;border-radius:10px;color:#47633a}.transfer-highlight strong{font-size:26px}.quick-fab{position:fixed;bottom:25px;right:30px;z-index:4;background:var(--green);color:white;border:1px solid #43664d;box-shadow:0 5px 20px #193b3633;display:flex;align-items:center;gap:8px;padding:14px 20px;border-radius:30px;font-weight:600;font-size:13px}.quick-options{display:grid;gap:12px}.quick-options button{justify-content:flex-start;min-height:48px}.form-details{margin:8px 0 18px;border:1px solid var(--line);border-radius:9px;padding:14px}.form-details summary{font-size:12px;cursor:pointer;color:#607652;padding:4px}.form-details[open] summary{margin-bottom:20px}.form-details .field:last-child{margin-bottom:0}.check-field{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5}.check-field input{width:20px;height:20px;flex-shrink:0;accent-color:#43693d}.dialog-actions{position:sticky;bottom:-28px;padding:14px 0;background:#fff;z-index:2}dialog{max-height:90dvh;overflow-y:auto}button:disabled{cursor:not-allowed}.footer{padding-bottom:65px}.search{max-width:400px;flex:1}.search input{font-size:14px;min-height:24px}.field select{white-space:normal}.form-error{overflow-wrap:anywhere}
@media(max-width:1100px){.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-grid .secondary{min-height:41px}}
@media(max-width:700px){.shell{display:block}.sidebar{display:none}.workspace{display:block}.topbar{padding:0 17px;height:62px}.breadcrumb{display:none}.mobile-brand{display:flex;gap:8px;font-weight:800;font-size:18px}.content{padding:24px 16px 150px}.page-head{flex-wrap:wrap;gap:15px}.period{width:100%;justify-content:space-between}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{min-height:135px;padding:14px}.metric .amount{font-size:clamp(21px,6vw,27px)}.metric-top{font-size:11px}.metric p{font-size:10px}.dashboard-grid,.settings-grid{grid-template-columns:1fr}.panel{padding:19px}.flow-copy strong{font-size:12px}.flow-row .amount{font-size:16px}.route-icon{width:32px;height:34px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);background:#fffffffa;border-top:1px solid #dce5d7;z-index:5;padding:7px 6px max(9px,env(safe-area-inset-bottom))}.mobile-nav button{min-height:49px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:none;color:#7c8a73;font-size:10px;border-radius:9px}.mobile-nav button.active{background:#edf3e7;color:#2f5835}.mobile-nav svg{width:22px;height:22px}.quick-fab{bottom:calc(82px + env(safe-area-inset-bottom));right:16px;min-height:48px;padding:12px 18px;font-size:14px}.month-status{padding:10px 12px;margin-bottom:18px}.month-status .secondary{min-height:42px;padding:10px 13px}.toolbar{display:flex;flex-wrap:wrap}.toolbar .search{flex-basis:100%;max-width:none;min-height:49px}.toolbar .actions{width:100%;display:flex;gap:10px}.toolbar .actions button{flex:1;min-height:46px}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.filter-grid label{font-size:12px}.filter-grid select{font-size:16px;min-height:47px;padding:9px;max-width:100%}.filter-grid button{min-height:47px}.search input{font-size:16px}.desktop-results{display:none}.mobile-results{display:grid;gap:12px}.movement-card{background:#fff;border:1px solid #e0e7db;border-radius:12px;padding:17px;overflow-wrap:anywhere}.movement-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.movement-top h2{font-size:16px;line-height:1.4;font-weight:650}.movement-top>strong{font-size:20px;white-space:nowrap}.movement-card p{font-size:12px;color:#839079;margin:9px 0}.movement-card .badge{font-size:12px;padding:8px 10px}.movement-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #edf1e9;margin-top:12px;padding-top:9px}.movement-actions .icon-btn{min-height:44px;min-width:48px;background:#f5f8f0}.movement-actions .icon-btn svg{height:20px;width:20px}.form-grid{grid-template-columns:1fr;gap:0}.field input,.field select,.field textarea{font-size:16px;min-height:48px}.field{font-size:13px;margin-bottom:16px}.form-details{padding:12px}.form-details summary{font-size:13px;min-height:32px}.dialog-actions{bottom:-23px;padding:14px 0 8px;gap:12px}.dialog-actions button{min-height:48px;flex:1}.dialog-head{margin-bottom:22px}.dialog-head .icon-btn{min-height:44px;min-width:44px}dialog{max-height:92dvh;width:calc(100% - 20px);padding:23px 20px}.balance-comparison{font-size:11px;grid-template-columns:1.25fr 1fr 1fr}.balance-comparison>*{padding:10px 7px}.transfer-highlight{padding:15px;font-size:12px}.transfer-highlight strong{font-size:23px}.savings-box{padding:13px}.savings-box .amount{font-size:23px}.account .amount{font-size:19px}.flow-row{gap:9px}.panel-title{flex-wrap:wrap}.footer{padding-bottom:0}.demo-banner{font-size:11px}.info{font-size:13px}.hint{font-size:11px}.result-summary{font-size:11px}.result-summary strong{font-size:21px}}
