:root{--brand-blue: #18334C;--brand-yellow: #ffea00;--brand-gray: #a6a6a6;--font-main: "Rajdhani", sans-serif;--font-accent: "Orbitron", sans-serif}@page{size:A4;margin:0}.quotation-container{background-color:#0b1a27;padding:50px 20px;display:flex;flex-direction:column;align-items:center;overflow-y:auto}#quotation-full-content{width:210mm;margin:0 auto}.page{width:210mm;height:296.5mm;padding:0;position:relative;overflow:hidden;background:#fff;color:#000;margin:0 auto;box-shadow:0 10px 30px #00000080;display:flex;flex-direction:column;box-sizing:border-box}.preview-panel .page{margin-bottom:40px}#quotation-full-content.is-printing{margin:0!important;padding:0!important}#quotation-full-content.is-printing .page{margin-bottom:0!important;box-shadow:none!important;border:none!important}.page-content{padding:10mm 20mm 20mm;flex:1;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden}@media print{.page{margin:0;box-shadow:none;border:none}}.page:before{content:"";position:absolute;top:0;left:0;width:8px;height:100%;background:var(--brand-yellow);z-index:10}.header{display:flex;justify-content:space-between;align-items:flex-start;background:var(--brand-blue);padding:8mm 20mm;border-bottom:4px solid var(--brand-yellow);width:100%;box-sizing:border-box;margin-bottom:25px}.logo-box{width:auto;text-align:left}.logo-box img{height:110px;width:auto;display:block}.empresa-info{font-size:10px;color:#ffffffe6;margin-top:10px;padding-top:12px;border-top:1px solid rgba(255,234,0,.25);line-height:1.7;font-weight:600;letter-spacing:.5px;text-align:left}.meta-documento{text-align:right}.titulo-doc{font-family:var(--font-accent);font-size:26px;color:#fff;margin:0 0 15px;letter-spacing:2px;font-weight:900;white-space:nowrap;text-shadow:0 0 15px rgba(255,234,0,.2)}.caja-meta{display:inline-block;background:var(--brand-blue);color:var(--brand-yellow);padding:6px 14px;margin-bottom:8px;font-family:var(--font-accent);font-size:10px;letter-spacing:1.2px;border-radius:2px;border:1px solid rgba(255,234,0,.4)}.caja-meta span{color:#fff;margin-left:8px}.panel-cliente{border:1px solid #e0e0e0;background:#fafafa;padding:15px;margin-bottom:25px;position:relative;text-align:left}.panel-cliente:after{content:"";position:absolute;top:-1px;left:-1px;width:40px;height:4px;background:var(--brand-yellow)}.cliente-grid{display:grid;grid-template-columns:240px 1fr;row-gap:12px;font-size:11px}.label-cli{font-family:var(--font-accent);font-size:9px;color:#777;letter-spacing:1px;padding-top:3px;white-space:nowrap}.dato-cli{font-weight:700;color:#000;text-transform:uppercase;border-bottom:1px dashed #ddd;padding-bottom:2px}.tabla-cotizacion{width:100%;border-collapse:collapse;margin-bottom:25px;font-size:11px}.tabla-cotizacion th{background:var(--brand-blue);color:var(--brand-yellow);font-family:var(--font-accent);font-size:8.5px;letter-spacing:.5px;padding:12px 8px;text-align:left;border:1px solid #000;text-transform:uppercase}.tabla-cotizacion td{padding:15px 10px;border:1px solid #eee;border-bottom:1px solid #ddd;vertical-align:middle}.col-num{text-align:center;font-weight:700}.col-monto{text-align:right;font-weight:700;font-family:var(--font-accent);font-size:11px}.desc-principal{font-size:13px;font-weight:700;color:#000;display:block;margin-bottom:5px;text-transform:uppercase}.desc-presentacion{font-size:10px;color:#666;font-weight:600;display:block;margin-bottom:3px;text-transform:uppercase}.contenedor-totales{display:flex;justify-content:flex-end;margin-bottom:40px}.caja-totales{width:300px;border:1px solid #000}.fila-total{display:flex;justify-content:space-between;padding:10px 15px;border-bottom:1px solid #eee;font-size:12px}.fila-total.gran-total{background:var(--brand-blue);color:var(--brand-yellow);border-bottom:none;font-family:var(--font-accent);font-size:18px;padding:15px}.fila-total span:first-child{font-weight:600;color:#555}.gran-total span:first-child{color:#fff}.seccion-titulo{font-family:var(--font-accent);font-size:16px;color:#000;border-bottom:3px solid var(--brand-yellow);padding-bottom:8px;margin-bottom:25px;display:inline-block;font-weight:900;letter-spacing:1px;text-align:left}.bancos-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:45px}.tarjeta-banco{border:1px solid #ddd;border-radius:6px;overflow:hidden;box-shadow:0 4px 10px #00000008}.banco-bcp .banco-header{background:#002a8d;color:#ff7800;padding:12px 18px;font-family:var(--font-accent);font-size:14px;font-weight:900;letter-spacing:1px;display:flex;justify-content:space-between}.banco-bbva .banco-header{background:#072146;color:#49a5e6;padding:12px 18px;font-family:var(--font-accent);font-size:14px;font-weight:900;letter-spacing:1px;display:flex;justify-content:space-between}.banco-body{padding:18px;background:#fff;font-size:11px;text-align:left}.banco-body .cuenta-fila{display:flex;justify-content:space-between;margin-bottom:10px;padding-bottom:8px;border-bottom:1px dashed #eee}.banco-body .cuenta-fila strong{color:#000;font-family:var(--font-accent);font-size:10px}.terminos-lista{list-style:none;padding:0;margin:0;text-align:left}.terminos-lista li{margin-bottom:12px;display:flex;align-items:flex-start;gap:15px;font-size:11px;line-height:1.5;color:#444}.num-term{background:var(--brand-blue);color:var(--brand-yellow);font-family:var(--font-accent);font-size:9px;padding:4px 8px;border-radius:3px;flex-shrink:0;margin-top:3px;font-weight:900}.terminos-lista strong{color:#000;display:block;margin-bottom:4px;font-size:12px;font-family:var(--font-accent);letter-spacing:.5px}.watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:480px;opacity:.07;z-index:0;pointer-events:none;filter:grayscale(1) brightness(.8)}.watermark img{width:100%;height:auto}.footer-legal{position:absolute;bottom:10mm;left:20mm;right:20mm;text-align:center;font-size:10px;color:#888;border-top:1px solid #eee;padding-top:15px;font-family:var(--font-accent);letter-spacing:.5px}.login-container{height:100vh;width:100vw;display:flex;justify-content:center;align-items:center;background:radial-gradient(circle at center,#0a1118,#050505);position:relative;overflow:hidden;color:#fff;font-family:Rajdhani,sans-serif}.stars{position:absolute;top:0;left:0;width:200%;height:200%;background-image:radial-gradient(1px 1px at 20px 30px,#eee,#0000),radial-gradient(1px 1px at 50px 70px,#fff,#0000),radial-gradient(2px 2px at 90px 10px,#fff,#0000);background-size:200px 200px;animation:move-stars 100s linear infinite;opacity:.3}@keyframes move-stars{0%{transform:translate(0)}to{transform:translate(-50%,-50%)}}.login-card{background:#ffffff08;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,222,0,.2);padding:3rem;border-radius:15px;width:450px;box-shadow:0 0 50px #00000080;z-index:10;display:flex;flex-direction:column;align-items:center;animation:fade-in .8s ease-out}@keyframes fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-logo{width:180px;margin-bottom:1.5rem}.login-logo img{width:100%}.login-title{font-family:Orbitron,sans-serif;color:#ffde00;font-size:1.8rem;margin-bottom:.5rem;text-shadow:0 0 10px rgba(255,222,0,.3)}.login-subtitle{font-size:.9rem;color:#888;margin-bottom:2.5rem;letter-spacing:2px}.login-form{width:100%}.input-group{margin-bottom:1.5rem}.input-group label{display:block;font-size:.75rem;color:#ffde00;margin-bottom:.5rem;font-weight:700;letter-spacing:1px}.input-group input{width:100%;background:#00000080;border:1px solid rgba(255,222,0,.2);padding:.8rem 1rem;color:#fff;border-radius:5px;font-size:1rem;transition:all .3s ease;box-sizing:border-box}.input-group input:focus{outline:none;border-color:#ffde00;box-shadow:0 0 15px #ffde0033}.login-button{width:100%;padding:1rem;background:#ffde00;color:#000;border:none;border-radius:5px;font-family:Orbitron,sans-serif;font-weight:900;font-size:1rem;cursor:pointer;transition:all .3s ease;margin-top:1rem}.login-button:hover:not(:disabled){background:#fff;transform:translateY(-2px);box-shadow:0 5px 20px #ffde0066}.login-button:disabled{background:#444;cursor:not-allowed;color:#777}.login-footer{margin-top:2rem}.toggle-button{background:none;border:none;color:#aaa;font-size:.85rem;cursor:pointer;transition:color .3s}.toggle-button:hover{color:#ffde00}.auth-error{color:#ff4d4d;background:#ff4d4d1a;padding:.8rem;border-radius:5px;font-size:.85rem;margin-bottom:1.5rem;border-left:3px solid #ff4d4d}.auth-message{color:#4dff4d;background:#4dff4d1a;padding:.8rem;border-radius:5px;font-size:.85rem;margin-bottom:1.5rem;border-left:3px solid #4dff4d}body,html{margin:0;padding:0;background-color:#0b1a27;color:#fff;font-family:Rajdhani,sans-serif;overflow-x:hidden}.app-container{display:flex;height:100vh;width:100vw}.form-panel{width:40%;background:#18334c;padding:30px;overflow-y:auto;box-shadow:10px 0 30px #00000080;border-right:2px solid #ffea00;z-index:100}.form-panel::-webkit-scrollbar{width:8px}.form-panel::-webkit-scrollbar-track{background:#0b1a27}.form-panel::-webkit-scrollbar-thumb{background:#ffea00;border-radius:10px}.panel-title{font-family:Orbitron,sans-serif;color:#ffea00;font-size:20px;margin-bottom:30px;letter-spacing:2px;border-left:5px solid #ffea00;padding-left:15px}.form-section{background:#ffffff08;border:1px solid rgba(255,234,0,.1);padding:20px;border-radius:8px;margin-bottom:25px}.section-label{font-family:Orbitron,sans-serif;font-size:11px;color:#ffea00;margin-bottom:15px;display:block;letter-spacing:1px}.input-group{margin-bottom:15px}.input-group label{display:block;font-size:12px;color:#aaa;margin-bottom:5px}.input-group input,.input-group select,.input-group textarea{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);padding:10px;color:#fff;font-family:Rajdhani,sans-serif;font-size:14px;border-radius:4px;transition:all .3s}.input-group input:focus{outline:none;border-color:#ffea00;box-shadow:0 0 10px #ffea0033}.btn{font-family:Orbitron,sans-serif;padding:12px 20px;border:none;cursor:pointer;font-size:12px;font-weight:700;letter-spacing:1px;transition:all .3s;border-radius:4px}.btn-primary{background:#ffea00;color:#000;width:100%;margin-top:20px}.btn-primary:hover{background:#fff;transform:translateY(-2px);box-shadow:0 5px 20px #ffea0066}.btn-secondary{background:transparent;border:1px solid #ffea00;color:#ffea00;margin-bottom:10px}.btn-secondary:hover{background:#ffea001a}.preview-panel{flex:1;background:#0b1a27;position:relative;overflow:auto;display:flex;justify-content:center;padding:40px}.product-item{border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:15px;margin-bottom:15px}.controls-row{display:flex;justify-content:space-between;align-items:center}@media print{.form-panel{display:none}.preview-panel{padding:0;background:#fff;width:100%;height:100%;position:absolute;top:0;left:0}}
