*,*:before,*:after{box-sizing:border-box}html{height:100dvh}body,#root{height:100%}html,body,#root{margin:0}html,body{overflow-x:hidden;background:#14181d}.app-root{background:#14181d;color:#e8e6e1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;width:100%;min-height:100%;padding:24px;padding-top:calc(24px + env(safe-area-inset-top));padding-bottom:calc(24px + env(safe-area-inset-bottom))}h1,h2,h3{margin:0 0 8px;font-weight:600}.brand-g{background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.brand-g-amber{background-image:linear-gradient(180deg,#f5c687,#e8a855,#b8792f)}.brand-g-teal{background-image:linear-gradient(180deg,#7eebc4,#35d0a0,#1f8c6b)}.app-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.view-toggle-btn{display:flex;align-items:center;gap:6px;background:#1d232b;border:1px solid #2A313B;color:#8b93a1;padding:6px 12px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:600;white-space:nowrap}.view-toggle-btn:hover{border-color:#5b9be8;color:#e8e6e1}.app-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.user-menu{position:relative}.user-menu-btn{font-size:18px;line-height:1;padding:4px 14px;min-height:34px;justify-content:center}.user-menu-list{position:absolute;right:0;top:calc(100% + 6px);z-index:90;min-width:230px;max-width:calc(100vw - 32px);background:#1d232b;border:1px solid #2A313B;border-radius:10px;padding:6px 0;box-shadow:0 8px 24px #00000073}.user-menu-email{padding:8px 14px 10px;font-size:12px;color:#8b93a1;border-bottom:1px solid #2A313B;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-item{display:flex;align-items:center;gap:10px;width:100%;min-height:40px;padding:0 14px;background:none;border:none;color:#e8e6e1;font-size:14px;text-align:left;cursor:pointer;font-family:inherit}.user-menu-item:hover{background:#252c35}.user-menu-item.danger{color:#e85d5d}.user-menu-sep{height:1px;background:#2a313b;margin:6px 0}.help-tip-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:4px;padding:0;vertical-align:middle;border:1px solid #5F6773;border-radius:50%;background:none;color:#8b93a1;font-size:10px;font-weight:700;line-height:1;cursor:pointer;font-family:inherit;text-transform:none}.help-tip-btn:after{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px}.help-tip-btn:hover,.help-tip-btn[aria-expanded=true]{border-color:#5b9be8;color:#5b9be8}.help-pop{position:fixed;z-index:120;background:#1d232b;border:1px solid #2A313B;border-radius:8px;padding:10px 12px;box-shadow:0 8px 24px #00000073;color:#e8e6e1;font-size:13px;line-height:1.45;font-weight:400;text-align:left;white-space:normal;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.help-pop p{margin:0 0 6px}.dato-viejo{position:relative;display:inline-block;flex:none;width:9px;height:9px;margin-left:4px;padding:0;border:none;border-radius:50%;background:#e8a855;vertical-align:middle;box-shadow:0 0 0 3px #e8a85538;cursor:pointer}.dato-viejo:after{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px}.cell-con-extra{display:flex;align-items:center;gap:4px}.cell-con-extra .cell-input{flex:1;min-width:0}.help-pop .login-resend{margin:0;padding:4px 0;font-size:13px}.ayuda-seccion h4{margin:14px 0 2px;font-size:11px;color:#8b93a1;text-transform:uppercase;letter-spacing:.04em}.ayuda-seccion:first-child h4{margin-top:4px}.ayuda-item{border-bottom:1px solid #2A313B;scroll-margin-top:8px}.ayuda-q{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;padding:10px 0;background:none;border:none;color:#e8e6e1;font-size:14px;text-align:left;cursor:pointer;font-family:inherit}.ayuda-chevron{color:#8b93a1;font-size:18px;transition:transform .15s;flex:none}.ayuda-chevron.open{transform:rotate(90deg);color:#5b9be8}.ayuda-a{margin:0 0 12px;font-size:13px;color:#c9cdd3;line-height:1.5}.login-root{display:flex;align-items:center;justify-content:center;min-height:100dvh}.login-box{background:#1d232b;border:1px solid #2A313B;border-radius:12px;padding:32px;max-width:380px;width:100%;text-align:center}.login-box h1{font-size:20px}.login-form{display:flex;flex-direction:column;gap:12px;margin-top:18px}.login-turnstile{align-self:center}.login-form input{background:#12161b;border:1px solid #2A313B;color:#e8e6e1;padding:10px 12px;border-radius:8px;font-size:14px;text-align:center}.login-sent{margin-top:0;margin-bottom:4px;font-size:14px;color:#e8e6e1;background:#12161b;border:1px solid #35D0A0;border-radius:8px;padding:14px}.login-resend{background:none;border:none;color:#5b9be8;font-size:13px;margin-top:14px;cursor:pointer;text-decoration:underline;padding:4px}.login-resend:hover{color:#8dc0ff}.tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:1px solid #2A313B;padding-bottom:0}.tab-btn{background:none;border:none;color:#8b93a1;font-size:15px;font-weight:600;padding:10px 4px;cursor:pointer;border-bottom:2px solid transparent;margin-right:20px}.tab-btn.active{color:#e8e6e1;border-bottom-color:#35d0a0}.tab-btn:disabled{opacity:.4;cursor:not-allowed}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(440px,100%),1fr));gap:20px;min-width:0}.app-root.force-mobile .grid-2{grid-template-columns:minmax(0,1fr)}.card-panel,.asset-block{background:#1d232b;border-top:3px solid #5B9BE8;border-radius:10px;padding:18px;margin-bottom:20px;min-width:0}.card-head{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;margin-bottom:12px}.head-inputs{display:flex;gap:14px;flex-wrap:wrap}.head-inputs label,.cotiz-input{display:flex;flex-direction:column;font-size:11px;color:#8b93a1;gap:4px}.head-inputs input,.cotiz-input input{background:#12161b;border:1px solid #2A313B;color:#e8e6e1;padding:6px 8px;border-radius:6px;font-size:13px;width:120px;max-width:100%}.stat-row{display:flex;gap:24px;margin:10px 0 16px;flex-wrap:wrap}@media (max-width: 480px){.cotiz-input{flex:1 1 130px;min-width:0}.cotiz-input input{width:100%}}.stat{display:flex;flex-direction:column}.salario-strip{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 18px;margin:0 0 16px;background:#1d232b;border:1px solid #2A313B;border-radius:10px;padding:10px 14px}.salario-input{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#8b93a1}.salario-input input{background:#12161b;border:1px solid #2A313B;color:#e8e6e1;padding:6px 8px;border-radius:6px;font-size:14px;width:150px;font-family:inherit}.salario-datos{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;font-size:13px;color:#8b93a1;padding-bottom:6px}.salario-datos strong{color:#e8e6e1;font-size:15px}.stat-label{font-size:11px;color:#8b93a1}.stat-value{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.subhead{font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#8b93a1;margin:10px 0 8px;font-weight:700}.tbl-wrap{overflow-x:auto;max-width:100%}.tbl{width:100%;border-collapse:collapse;font-size:13px}.tbl th{text-align:center;color:#8b93a1;font-weight:600;font-size:11px;text-transform:uppercase;padding:6px;border-bottom:1px solid #2A313B;white-space:nowrap}.tbl td{padding:5px 6px;border-bottom:1px solid #21262E;font-variant-numeric:tabular-nums;white-space:nowrap}.cell-input{background:#12161b;border:1px solid #2A313B;color:#5b9be8;padding:4px 6px;border-radius:5px;width:100%;min-width:70px;font-size:13px;height:26px;line-height:1.2;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.cell-input[type=date]{width:130px;min-width:130px;max-width:130px;flex:none}.tbl-dense{font-size:12px}.tbl-dense th{padding:6px 4px;font-size:10px}.tbl-dense td{padding:4px}.tbl-dense .cell-input{padding:3px 4px;min-width:56px;font-size:12px;height:24px}.tbl-dense .cell-input[type=date]{width:112px;min-width:112px;max-width:112px}.cell-computed{color:#e8e6e1}.tbl-total td{font-weight:700;border-top:1px solid #2A313B;border-bottom:none;padding-top:8px}.tbl-comprometido-titulo td{color:#8b93a1;font-style:italic;font-size:11px;padding-top:10px;border-bottom:1px solid #2A313B;text-transform:none}.tbl-comprometido td{color:#8b93a1;font-style:italic}.tbl-subtotal td{font-weight:600;color:#8b93a1;border-bottom:1px solid #2A313B;padding-bottom:10px}.btn-del{background:none;border:none;color:#e85d5d;cursor:pointer;font-size:16px;line-height:1}.btn-add{background:none;border:1px dashed #2A313B;color:#8b93a1;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px;margin-top:8px}.btn-add:hover{border-color:#5b9be8;color:#5b9be8}.btn-register{display:block;margin-top:16px;border:none;color:#12161b;font-weight:700;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:13px}.btn-register:disabled{opacity:.6;cursor:not-allowed}.empty{color:#8b93a1;font-size:13px}.error-banner{background:#3a1e1e;border:1px solid #E85D5D;color:#ffd6d6;padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:16px}.offline-banner{background:#2b2410;border:1px solid #E8A855;color:#ffe7bd;padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.loading{color:#8b93a1;font-size:13px;padding:20px 0}.manage-cards{margin-top:8px;margin-bottom:20px}.manage-cards-panel{background:#1d232b;border:1px solid #2A313B;border-radius:10px;padding:16px;margin-top:10px}.manage-cards-list{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:8px}.manage-cards-list li{display:flex;align-items:center;gap:8px;font-size:13px;flex-wrap:wrap}.manage-cards-dot{width:10px;height:10px;border-radius:50%;flex:none}.manage-cards-name{flex:1}.manage-cards-tipo{font-size:11px;color:#8b93a1;text-transform:uppercase;letter-spacing:.03em}.manage-cards-add{display:flex;flex-wrap:wrap;align-items:center;gap:10px;border-top:1px solid #2A313B;padding-top:14px}.manage-cards-add input[type=text]{background:#12161b;border:1px solid #2A313B;color:#e8e6e1;padding:6px 8px;border-radius:6px;font-size:13px;flex:1 1 180px;min-width:0}.manage-cards-add select{background:#12161b;border:1px solid #2A313B;color:#e8e6e1;padding:6px 8px;border-radius:6px;font-size:13px;flex:0 1 auto;min-width:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.modal-box{background:#1d232b;border:1px solid #2A313B;border-radius:12px;padding:24px;max-width:420px;width:100%}.modal-box-wide{max-width:720px;max-height:88vh;overflow-y:auto}.chart-tooltip{background:#1d232b;border:1px solid #2A313B;color:#e8e6e1;padding:8px 10px;font-size:12px;line-height:1.5;max-width:240px}.chart-tooltip-title{color:#8b93a1;margin-bottom:2px}.chart-tooltip-strong{font-weight:600}.sheet-overlay{position:fixed;left:0;right:0;top:0;height:100dvh;z-index:100;background:#0000008c;display:flex;align-items:flex-end}.sheet-box{width:100%;max-height:calc(100% - 24px);display:flex;flex-direction:column;background:#1d232b;border:1px solid #2A313B;border-top:3px solid;border-radius:12px 12px 0 0;color:#e8e6e1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.sheet-title{margin:0;padding:16px 16px 8px;font-size:16px}.sheet-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:4px 16px 12px}.sheet-field{display:flex;flex-direction:column;gap:5px;margin-bottom:12px;font-size:12px;color:#8b93a1}.sheet-optional{color:#5f6773}.sheet-input-row{display:flex;gap:6px}.sheet-input-row input{flex:1;min-width:0;height:42px;background:#12161b;border:1px solid #2A313B;color:#e8e6e1;padding:8px 10px;border-radius:8px;font-size:16px;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.sheet-input-row input:focus{outline:none;border-color:#5b9be8}.sheet-input-row input[aria-invalid=true]{border-color:#e85d5d}.sheet-sign{width:42px;height:42px;flex:0 0 auto;background:#12161b;border:1px solid #2A313B;color:#e8e6e1;border-radius:8px;font-size:18px;cursor:pointer;padding:0}.sheet-error{color:#e85d5d;font-size:11px}.sheet-actions{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom)) 16px;border-top:1px solid #2A313B}.sheet-actions .btn-register{padding:11px 22px;font-size:14px}.sheet-overlay-encima{z-index:110}@media (min-width: 641px){.sheet-overlay{align-items:center;justify-content:center;padding:20px}.sheet-box{max-width:480px;max-height:calc(100% - 40px);border-radius:12px}}.calc-row{display:flex;gap:10px}.calc-row>.sheet-field{flex:1;min-width:0}.sheet-input-row input.calc-derivado{color:#8b93a1}.calc-hint{font-size:11px;color:#5f6773}.calc-principal{background:#12161b;border:1px solid #2A313B;border-radius:10px;padding:12px 14px;margin:4px 0 14px}.calc-principal-texto{font-size:17px;font-weight:600;line-height:1.35}.calc-guia{font-size:12px;color:#8b93a1;margin-top:6px;line-height:1.4}.calc-subtitulo{font-size:12px;color:#8b93a1;margin-bottom:6px}.calc-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.calc-preset{background:#12161b;border:1px solid #2A313B;color:#e8e6e1;border-radius:999px;padding:7px 12px;font-size:13px;cursor:pointer;font-family:inherit}.calc-resultado{font-size:15px;font-weight:600;margin:4px 0 8px}.calc-detalle{margin-bottom:12px;font-size:12px}.calc-detalle summary{color:#5b9be8;cursor:pointer;padding:4px 0}.calc-pie{font-size:11px;color:#8b93a1;line-height:1.45;border-top:1px solid #2A313B;padding-top:10px;margin-top:4px}.calc-acciones{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 6px}.calc-acciones .btn-register{margin-top:0}.calc-btn-secundario{background:none;border:1px solid #2A313B;color:#e8e6e1;border-radius:8px;padding:10px 16px;font-size:13px;cursor:pointer;font-family:inherit}.calc-tarjetas{display:flex;flex-direction:column;gap:8px;margin-top:8px}.calc-tarjeta{display:flex;align-items:center;gap:10px;background:#12161b;border:1px solid #2A313B;color:#e8e6e1;border-radius:8px;padding:12px;font-size:14px;cursor:pointer;font-family:inherit;text-align:left}.btn-import{background:none;border:1px dashed #5B9BE8;color:#5b9be8;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px;margin-top:8px;margin-left:8px}.btn-import:hover{background:#5b9be81f}.btn-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.btn-row>button{margin:0}.asset-block .btn-row{margin-top:8px}.import-steps{font-size:13px;color:#e8e6e1;padding-left:20px;margin:0 0 14px}.import-steps li{margin-bottom:4px}.import-cierre{margin-bottom:14px}.import-cierre label{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;color:#e8e6e1}.import-cierre input{width:auto;min-width:150px}.import-cierre input[aria-invalid=true]{border-color:#e85d5d}.import-aviso{background:#2b2410;border:1px solid #E8A855;color:#ffe7bd;padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:14px}.import-mover{background:none;border:1px dashed #2A313B;color:#8b93a1;border-radius:6px;padding:4px 10px;font-size:11px;cursor:pointer;white-space:nowrap;font-family:inherit;margin-bottom:8px}.import-mover:hover{border-color:#5b9be8;color:#5b9be8}.import-prompt{background:#12161b;border:1px solid #2A313B;border-radius:8px;padding:12px;font-size:12px;color:#b9c0cb;white-space:pre-wrap;max-height:260px;overflow-y:auto;margin:14px 0 0}.import-textarea{width:100%;background:#12161b;border:1px solid #2A313B;color:#e8e6e1;border-radius:8px;padding:10px;font-size:13px;resize:vertical;box-sizing:border-box}.import-row-yellow td{background:#e8a8551a}.import-row-red td{background:#e85d5d1a}.import-note{font-size:11px;padding-top:0;padding-bottom:8px}.import-note-yellow{color:#e8a855}.import-note-red{color:#ff8a8a}.import-note-info{color:#8b93a1}.success-banner{background:#1c3324;border:1px solid #35D0A0;color:#c6f6d9;padding:10px 14px;border-radius:8px;font-size:13px;margin-bottom:16px}.update-toast{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:fixed;left:16px;right:16px;z-index:200;bottom:calc(92px + env(safe-area-inset-bottom));max-width:420px;margin:0 auto;display:flex;align-items:center;gap:10px;background:#1d232b;border:1px solid #5B9BE8;border-radius:10px;padding:12px 14px;box-shadow:0 8px 24px #0006;color:#e8e6e1;font-size:13px}.update-toast span{flex:1}.update-toast-btn{flex:none;background:#5b9be8;border:none;color:#12161b;font-weight:700;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px}.update-toast-close{flex:none;background:none;border:none;color:#8b93a1;cursor:pointer;font-size:16px;line-height:1;padding:0 2px}.manage-cards-edit{display:flex;flex-wrap:wrap;align-items:center;gap:8px;flex:1}.manage-cards-edit input[type=text]{background:#12161b;border:1px solid #2A313B;color:#e8e6e1;padding:5px 8px;border-radius:6px;font-size:13px;min-width:140px;flex:1}.color-palette{display:flex;gap:6px}.color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.color-swatch.selected{border-color:#e8e6e1}@media (max-width: 640px){.tabs{margin-bottom:16px}.tab-btn{font-size:13px;padding:7px 4px;margin-right:14px}.card-panel,.asset-block{padding:14px;margin-bottom:14px}.card-head{margin-bottom:8px}.head-inputs{gap:10px}.head-inputs label,.cotiz-input{font-size:10px}.head-inputs input,.cotiz-input input{padding:5px 6px;font-size:12px}.stat-row{gap:16px;margin:8px 0 12px}.salario-strip{padding:8px 12px;margin-bottom:14px;gap:6px 14px}.salario-input{flex-direction:row;align-items:center;gap:8px;font-size:12px}.salario-input input{font-size:16px;width:140px;padding:4px 8px}.salario-datos{font-size:12px;padding-bottom:0}.salario-datos strong{font-size:14px}.stat-label{font-size:10px}.stat-value{font-size:17px}.subhead{font-size:10px;margin:6px 0 5px}.tbl,.tbl td{font-size:11px}.tbl th{font-size:10px;padding:4px 5px}.tbl td{padding:4px 5px}.tbl-dense{font-size:10px}.tbl-dense th{padding:4px 3px}.tbl-dense td{padding:3px}.btn-add{padding:5px 10px;font-size:11px;margin-top:6px}.btn-register{padding:8px 12px;font-size:12px;margin-top:10px}.manage-cards-panel{padding:12px;margin-top:8px}.modal-box{padding:16px}.modal-box-wide{max-height:92vh}.import-prompt{font-size:11px;max-height:180px}.btn-import{margin-left:0;margin-top:6px}.asset-block .btn-row{margin-top:6px}.user-menu-item{min-height:44px}.user-menu-btn{min-height:40px;min-width:44px}.update-toast{left:10px;right:10px;bottom:calc(86px + env(safe-area-inset-bottom));padding:10px 12px;font-size:12px}}
